From 54b2a4a95e82ed4673dce72268451b698f102493 Mon Sep 17 00:00:00 2001 From: Stefano Colombo Date: Wed, 18 Jan 2023 12:12:43 +0100 Subject: [PATCH 01/15] update with master --- Solver/src/libs/mesh/IBMClass.f90 | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/Solver/src/libs/mesh/IBMClass.f90 b/Solver/src/libs/mesh/IBMClass.f90 index 13af19e02..724774fb8 100644 --- a/Solver/src/libs/mesh/IBMClass.f90 +++ b/Solver/src/libs/mesh/IBMClass.f90 @@ -132,9 +132,7 @@ end subroutine IBM_read_info subroutine IBM_GetInfo( this, controlVariables ) use FileReadingUtilities -#if defined(NAVIERSTOKES) - use WallFunctionDefinitions -#endif + use WallFunctionDefinitions implicit none !-arguments---------------------------------------------------------------- class(IBM_type), intent(inout) :: this @@ -1316,9 +1314,9 @@ subroutine IBM_GetForcingPointsGeom( this, elements ) type(element), intent(inout) :: elements(:) !-local-variables---------------------------------- real(kind=RP) :: dx, dy, dz, d, d_min, Dist - integer :: eID, i, j, k, n + integer :: eID, i, j, k, n, Total #ifdef _HAS_MPI_ - integer :: ierr, Total + integer :: ierr #endif this% NumOfForcingPoints = 0 d = huge(1.0_RP) From 0fb68931e27b737aba6908b8e931f69a86a3b9bc Mon Sep 17 00:00:00 2001 From: Stefano Colombo Date: Tue, 31 Jan 2023 17:40:11 +0100 Subject: [PATCH 02/15] IBM + vWall --- Solver/Makefile.in | 2 +- Solver/src/CahnHilliardSolver/Makefile | 2 +- .../SpatialDiscretization.f90 | 4 +- Solver/src/CahnHilliardSolver/main.f90 | 2 +- Solver/src/IncompressibleNSSolver/Makefile | 2 +- .../SpatialDiscretization.f90 | 2 +- Solver/src/IncompressibleNSSolver/main.f90 | 3 +- Solver/src/MultiphaseSolver/Makefile | 2 +- .../SpatialDiscretization.f90 | 2 +- Solver/src/MultiphaseSolver/main.f90 | 2 +- Solver/src/NavierStokesSolver/Makefile | 2 +- .../SpatialDiscretization.f90 | 7 +- Solver/src/NavierStokesSolver/main.f90 | 2 +- Solver/src/NavierStokesSolverRANS/Makefile | 2 +- .../SpatialDiscretization.f90 | 6 +- Solver/src/NavierStokesSolverRANS/main.f90 | 2 +- .../ConstructMeshAndSpectralBasis.f90 | 2 +- .../addons/extractgeometry/GeometryClass.f90 | 4 +- Solver/src/addons/extractgeometry/Makefile | 2 +- .../addons/extractgeometry/getInputData.f90 | 2 +- Solver/src/addons/extractgeometry/main.f90 | 2 +- Solver/src/addons/horses2tecplot/Makefile | 2 +- Solver/src/addons/horses2tecplot/Mesh2Plt.f90 | 2 +- .../addons/horses2tecplot/OutputVariables.f90 | 2 +- .../horses2tecplot/ProlongMeshAndSolution.f90 | 2 +- .../addons/horses2tecplot/Solution2Plt.f90 | 16 +- .../addons/horses2tecplot/Solution2VtkHdf.f90 | 2 +- .../src/addons/horses2tecplot/Stats2Plt.f90 | 10 +- Solver/src/addons/horses2tecplot/Storage.f90 | 10 +- Solver/src/addons/horses2tecplot/getTask.f90 | 3 +- Solver/src/addons/horses2tecplot/main.f90 | 2 +- .../horses2tecplot/sharedSpectralBasis.f90 | 2 +- Solver/src/addons/mergeStatistics/Makefile | 2 +- .../mergeStatistics/StatsAveragingModule.f90 | 3 +- .../addons/mergeStatistics/getTaskModule.f90 | 2 +- Solver/src/addons/mergeStatistics/main.f90 | 6 +- Solver/src/addons/tools/ConverStats.f90 | 2 +- Solver/src/addons/tools/FWHPostProc.f90 | 2 +- Solver/src/addons/tools/FWHPreSurface.f90 | 4 +- Solver/src/addons/tools/FWHTools.f90 | 2 +- .../addons/tools/LocalIBMRefinementTool.f90 | 16 +- .../src/addons/tools/LocalRefinementClass.f90 | 2 +- .../src/addons/tools/LocalRefinementTool.f90 | 4 +- Solver/src/addons/tools/Makefile | 2 +- Solver/src/addons/tools/SurfaceClass.f90 | 2 +- Solver/src/addons/tools/readHDF5.f90 | 15 +- Solver/src/libs/discretization/Clustering.f90 | 2 +- .../src/libs/discretization/DGIntegrals.f90 | 2 +- Solver/src/libs/discretization/DGSEMClass.f90 | 18 +- .../src/libs/discretization/EllipticBR2.f90 | 2 +- .../EllipticDiscretizations.f90 | 2 +- Solver/src/libs/discretization/EllipticIP.f90 | 4 +- .../discretization/GradientsStabilization.f90 | 2 +- .../HyperbolicDiscretizationClass.f90 | 2 +- .../HyperbolicDiscretizations.f90 | 2 +- .../discretization/HyperbolicSplitForm.f90 | 2 +- .../discretization/HyperbolicStandard.f90 | 2 +- Solver/src/libs/discretization/Makefile | 2 +- .../src/libs/discretization/SCsensorClass.f90 | 2 +- Solver/src/libs/discretization/SVV.f90 | 2 +- .../libs/discretization/ShockCapturing.f90 | 9 +- .../discretization/ShockCapturingKeywords.f90 | 2 +- .../WallFunctionConnectivity.f90 | 2 +- .../src/libs/foundation/DenseMatUtilities.f90 | 2 +- .../IntegerArrayLinkedListTable.f90 | 2 +- .../libs/foundation/IntegerDataLinkedList.f90 | 2 +- Solver/src/libs/foundation/Makefile | 2 +- .../libs/foundation/RealDataLinkedList.f90 | 2 +- Solver/src/libs/foundation/SMConstants.f90 | 2 +- Solver/src/libs/foundation/Setup.f90 | 2 +- .../libs/foundation/SharedDictionaries.f90 | 2 +- Solver/src/libs/foundation/Stopwatch.f90 | 2 +- Solver/src/libs/foundation/Utilities.f90 | 13 +- Solver/src/libs/ftobject/Assert.f90 | 7 +- Solver/src/libs/ftobject/Comparisons.f90 | 11 +- Solver/src/libs/ftobject/FTDataClass.f90 | 7 +- .../src/libs/ftobject/FTDictionaryClass.f90 | 11 +- Solver/src/libs/ftobject/FTExceptionClass.f90 | 8 +- .../src/libs/ftobject/FTLinkedListClass.f90 | 13 +- .../src/libs/ftobject/FTMultiIndexTable.f90 | 12 +- Solver/src/libs/ftobject/FTOLConstants.f90 | 11 +- .../src/libs/ftobject/FTObjectArrayClass.f90 | 9 +- Solver/src/libs/ftobject/FTObjectClass.f90 | 8 +- Solver/src/libs/ftobject/FTObjectLibrary.f90 | 11 +- .../src/libs/ftobject/FTSparseMatrixClass.f90 | 12 +- Solver/src/libs/ftobject/FTStackClass.f90 | 7 +- Solver/src/libs/ftobject/FTValueClass.f90 | 8 +- .../libs/ftobject/FTValueDictionaryClass.f90 | 7 +- Solver/src/libs/ftobject/Hash.f90 | 6 +- Solver/src/libs/ftobject/Makefile | 2 +- .../libs/ftobject/TestSuiteManagerClass.f90 | 14 +- Solver/src/libs/io/FileReading.f90 | 2 +- Solver/src/libs/io/Headers.f90 | 1 - Solver/src/libs/io/Makefile | 2 +- Solver/src/libs/io/ParamfileRegions.f90 | 2 +- Solver/src/libs/io/ProgressBar.f90 | 2 +- Solver/src/libs/io/ReadInputFile.f90 | 2 +- Solver/src/libs/io/SolutionFile.f90 | 11 +- Solver/src/libs/io/autosave.f90 | 2 +- Solver/src/libs/jacobian/CSRMatrixClass.f90 | 326 ++++++------- Solver/src/libs/jacobian/ColorsClass.f90 | 85 ++-- .../DenseBlockDiagonalMatrixClass.f90 | 165 ++++--- .../src/libs/jacobian/GenericMatrixClass.f90 | 2 +- .../libs/jacobian/JacobianComputerClass.f90 | 149 +++--- .../src/libs/jacobian/JacobianDefinitions.f90 | 3 +- .../libs/jacobian/LinkedListMatrixClass.f90 | 123 +++-- Solver/src/libs/jacobian/Makefile | 2 +- Solver/src/libs/jacobian/MatrixClass.f90 | 4 +- Solver/src/libs/jacobian/MatrixFreeClass.f90 | 34 +- .../src/libs/jacobian/NumericalJacobian.f90 | 198 ++++---- Solver/src/libs/jacobian/PETScMatrixClass.f90 | 214 ++++----- .../SparseBlockDiagonalMatrixClass.f90 | 121 +++-- .../jacobian/StaticCondensedMatrixClass.f90 | 192 ++++---- Solver/src/libs/jacobian/mkl_spblas.f90 | 8 +- Solver/src/libs/mesh/ConnectivityClass.f90 | 17 +- Solver/src/libs/mesh/FaceClass.f90 | 2 +- Solver/src/libs/mesh/FacePatchClass.f90 | 2 +- Solver/src/libs/mesh/HexElementClass.f90 | 27 +- .../HexElementConnectivityDefinitions.f90 | 2 +- Solver/src/libs/mesh/HexMesh.f90 | 37 +- Solver/src/libs/mesh/IBMClass.f90 | 104 +++-- Solver/src/libs/mesh/METISPartitioning.f90 | 2 +- Solver/src/libs/mesh/Makefile | 2 +- Solver/src/libs/mesh/MappedGeometry.f90 | 6 +- Solver/src/libs/mesh/MeshPartitioning.f90 | 2 +- Solver/src/libs/mesh/MeshTypes.f90 | 2 +- Solver/src/libs/mesh/NodeClass.f90 | 2 +- Solver/src/libs/mesh/ReadMeshFile.f90 | 2 +- Solver/src/libs/mesh/Read_GMSH.f90 | 19 +- Solver/src/libs/mesh/Read_HDF5Mesh_HOPR.f90 | 4 +- Solver/src/libs/mesh/Read_SpecMesh.f90 | 2 +- Solver/src/libs/mesh/StorageClass.f90 | 14 +- Solver/src/libs/mesh/SurfaceMesh.f90 | 2 +- Solver/src/libs/mesh/TransfiniteMaps3D.f90 | 2 +- Solver/src/libs/mesh/WallDistance.f90 | 1 - Solver/src/libs/mesh/ZoneClass.f90 | 2 +- Solver/src/libs/monitors/FWHDefinitions.f90 | 7 +- Solver/src/libs/monitors/FWHGeneralClass.f90 | 29 +- Solver/src/libs/monitors/FWHObseverClass.f90 | 106 +++-- Solver/src/libs/monitors/Makefile | 3 +- .../src/libs/monitors/MonitorDefinitions.f90 | 2 +- Solver/src/libs/monitors/Monitors.f90 | 82 ++-- Solver/src/libs/monitors/Probe.f90 | 2 +- Solver/src/libs/monitors/ResidualsMonitor.f90 | 2 +- .../src/libs/monitors/StatisticsMonitor.f90 | 2 +- Solver/src/libs/monitors/SurfaceIntegrals.f90 | 3 +- Solver/src/libs/monitors/SurfaceMonitor.f90 | 30 +- Solver/src/libs/monitors/VolumeIntegrals.f90 | 4 +- Solver/src/libs/monitors/VolumeMonitor.f90 | 9 +- Solver/src/libs/mpiutils/MPI_Face.f90 | 2 +- Solver/src/libs/mpiutils/MPI_Utilities.f90 | 2 +- Solver/src/libs/mpiutils/Makefile | 2 +- Solver/src/libs/mpiutils/partitioned_mesh.f90 | 44 +- Solver/src/libs/mpiutils/process_info.f90 | 8 +- Solver/src/libs/particles/Makefile | 2 +- Solver/src/libs/particles/Particle.f90 | 428 +++++++++++------- Solver/src/libs/particles/Particles.f90 | 248 +++++----- .../physics/cahnhilliard/FluidData_CH.f90 | 2 +- Solver/src/libs/physics/cahnhilliard/Makefile | 2 +- .../cahnhilliard/PhysicsStorage_CH.f90 | 1 - .../libs/physics/cahnhilliard/Physics_CH.f90 | 2 +- .../cahnhilliard/VariableConversion_CH.f90 | 2 +- .../physics/common/BoundaryConditions.f90 | 2 +- Solver/src/libs/physics/common/FluidData.f90 | 2 +- .../libs/physics/common/FreeSlipWallBC.f90 | 4 +- .../common/GenericBoundaryConditionClass.f90 | 2 +- Solver/src/libs/physics/common/InflowBC.f90 | 2 +- Solver/src/libs/physics/common/Makefile | 8 +- .../src/libs/physics/common/NoSlipWallBC.f90 | 7 +- Solver/src/libs/physics/common/OutflowBC.f90 | 6 +- Solver/src/libs/physics/common/PeriodicBC.f90 | 2 +- Solver/src/libs/physics/common/Physics.f90 | 4 +- .../libs/physics/common/PhysicsStorage.f90 | 2 +- .../src/libs/physics/common/UserDefinedBC.f90 | 2 +- .../physics/common/VariableConversion.f90 | 2 +- .../libs/physics/common/WallFunctionBC.f90 | 62 ++- .../common/WallFunctionDefinitions.f90 | 7 +- .../src/libs/physics/incns/FluidData_iNS.f90 | 2 +- Solver/src/libs/physics/incns/Makefile | 2 +- .../libs/physics/incns/PhysicsStorage_iNS.f90 | 29 +- Solver/src/libs/physics/incns/Physics_iNS.f90 | 2 +- .../libs/physics/incns/RiemannSolvers_iNS.f90 | 107 ++++- .../physics/incns/VariableConversion_iNS.f90 | 2 +- .../libs/physics/multiphase/FluidData_MU.f90 | 2 +- Solver/src/libs/physics/multiphase/Makefile | 2 +- .../physics/multiphase/PhysicsStorage_MU.f90 | 30 +- .../libs/physics/multiphase/Physics_MU.f90 | 13 +- .../physics/multiphase/RiemannSolvers_MU.f90 | 2 +- .../multiphase/VariableConversion_MU.f90 | 2 +- .../navierstokes/ArtificialViscosity.f90 | 2 +- .../physics/navierstokes/FluidData_NS.f90 | 2 +- .../libs/physics/navierstokes/LESModels.f90 | 51 ++- Solver/src/libs/physics/navierstokes/Makefile | 2 +- .../navierstokes/ManufacturedSolutions.f90 | 9 +- .../navierstokes/PhysicsStorage_NS.f90 | 2 +- .../libs/physics/navierstokes/Physics_NS.f90 | 8 +- .../navierstokes/RiemannSolvers_NS.f90 | 2 +- .../navierstokes/VariableConversion_NS.f90 | 2 +- .../spallartalmaras/ArtificialViscosity.f90 | 2 +- .../spallartalmaras/FluidData_NSSA.f90 | 2 +- .../src/libs/physics/spallartalmaras/Makefile | 4 +- .../spallartalmaras/PhysicsStorage_NSSA.f90 | 1 - .../physics/spallartalmaras/Physics_NSSA.f90 | 8 +- .../spallartalmaras/RiemannSolvers_NSSA.f90 | 2 +- .../physics/spallartalmaras/Turbulence.f90 | 4 +- .../VariableConversion_NSSA.f90 | 2 +- Solver/src/libs/problemfile/Makefile | 2 +- Solver/src/libs/problemfile/ProblemFile.f90 | 90 ++-- Solver/src/libs/sources/ActuatorLine.f90 | 135 +++--- Solver/src/libs/sources/Makefile | 2 +- Solver/src/libs/sources/TripForceClass.f90 | 62 +-- Solver/src/libs/sources/mkl_dfti.f90 | 3 +- .../spectral/InterpolationAndDerivatives.f90 | 368 +++++++-------- .../libs/spectral/InterpolationMatrices.f90 | 2 +- .../src/libs/spectral/LegendreAlgorithms.f90 | 35 +- Solver/src/libs/spectral/Makefile | 2 +- .../src/libs/spectral/NodalStorageClass.f90 | 2 +- .../timeintegrator/AnalyticalJacobian.f90 | 80 ++-- .../timeintegrator/AnisFASMultigridClass.f90 | 27 +- .../libs/timeintegrator/BDFTimeIntegrator.f90 | 4 +- .../libs/timeintegrator/ExplicitMethods.f90 | 204 ++++++++- .../libs/timeintegrator/FASMultigridClass.f90 | 2 +- .../src/libs/timeintegrator/IMEXMethods.f90 | 5 +- .../LinearSolvers/GenericLinSolverClass.f90 | 6 +- .../LinearSolvers/IterativeSolverClass.f90 | 2 +- .../LinearMultigridSolverClass.f90 | 16 +- .../LinearSolvers/LinearSolverClass.f90 | 2 +- .../LinearSolvers/MKLPardisoSolverClass.f90 | 3 +- .../LinearSolvers/MatrixFreeGMRESClass.f90 | 14 +- .../LinearSolvers/MatrixFreeSmootherClass.f90 | 2 +- .../LinearSolvers/MultigridSolverClass.f90 | 6 +- .../LinearSolvers/PetscSolverClass.f90 | 5 +- .../StaticCondensationSolverClass.f90 | 4 +- Solver/src/libs/timeintegrator/Makefile | 2 +- .../MultiTauEstimationClass.f90 | 2 +- .../libs/timeintegrator/MultigridTypes.f90 | 2 +- .../RosenbrockTimeIntegrator.f90 | 2 +- .../libs/timeintegrator/TimeIntegrator.f90 | 10 +- .../TimeIntegratorDefinitions.f90 | 2 +- .../timeintegrator/TruncationErrorClass.f90 | 2 +- .../libs/timeintegrator/pAdaptationClass.f90 | 6 +- 241 files changed, 2822 insertions(+), 2063 deletions(-) diff --git a/Solver/Makefile.in b/Solver/Makefile.in index 9fcafb010..d2cdbed84 100755 --- a/Solver/Makefile.in +++ b/Solver/Makefile.in @@ -432,4 +432,4 @@ header: FORCE @echo ## Dummy target to make sure a rule is executed -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/CahnHilliardSolver/Makefile b/Solver/src/CahnHilliardSolver/Makefile index df1d0ea9f..afb568609 100644 --- a/Solver/src/CahnHilliardSolver/Makefile +++ b/Solver/src/CahnHilliardSolver/Makefile @@ -90,4 +90,4 @@ header: FORCE @echo ## Dummy target to make sure a rule is executed -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/CahnHilliardSolver/SpatialDiscretization.f90 b/Solver/src/CahnHilliardSolver/SpatialDiscretization.f90 index 8a0ecc1cd..ce33916bf 100644 --- a/Solver/src/CahnHilliardSolver/SpatialDiscretization.f90 +++ b/Solver/src/CahnHilliardSolver/SpatialDiscretization.f90 @@ -941,7 +941,7 @@ subroutine GetPoiseuilleFlow_Face(f) shown = .true. end if ! -! Compute the velocity +! Compute the velocity TODO: compute it in Chebyshev points first ! -------------------- do j = 0, f % Nf(2) ; do i = 0, f % Nf(1) call PoiseuilleFlow(f % geom % x(:,i,j), f % storage(1) % v(:,i,j)) @@ -950,4 +950,4 @@ subroutine GetPoiseuilleFlow_Face(f) end subroutine GetPoiseuilleFlow_Face -end module SpatialDiscretization +end module SpatialDiscretization \ No newline at end of file diff --git a/Solver/src/CahnHilliardSolver/main.f90 b/Solver/src/CahnHilliardSolver/main.f90 index e0c5df67f..c375b8761 100644 --- a/Solver/src/CahnHilliardSolver/main.f90 +++ b/Solver/src/CahnHilliardSolver/main.f90 @@ -380,4 +380,4 @@ subroutine CheckIfTheVersionIsRequested end if end do - end subroutine CheckIfTheVersionIsRequested + end subroutine CheckIfTheVersionIsRequested \ No newline at end of file diff --git a/Solver/src/IncompressibleNSSolver/Makefile b/Solver/src/IncompressibleNSSolver/Makefile index 2c66f5224..960e80988 100644 --- a/Solver/src/IncompressibleNSSolver/Makefile +++ b/Solver/src/IncompressibleNSSolver/Makefile @@ -90,4 +90,4 @@ header: FORCE @echo ## Dummy target to make sure a rule is executed -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/IncompressibleNSSolver/SpatialDiscretization.f90 b/Solver/src/IncompressibleNSSolver/SpatialDiscretization.f90 index 9b8ef25b5..0f36a8cdd 100644 --- a/Solver/src/IncompressibleNSSolver/SpatialDiscretization.f90 +++ b/Solver/src/IncompressibleNSSolver/SpatialDiscretization.f90 @@ -950,4 +950,4 @@ end subroutine DensityLimiter ! !//////////////////////////////////////////////////////////////////////////////////////// ! -end module SpatialDiscretization +end module SpatialDiscretization \ No newline at end of file diff --git a/Solver/src/IncompressibleNSSolver/main.f90 b/Solver/src/IncompressibleNSSolver/main.f90 index b60d5cc9c..2547745db 100644 --- a/Solver/src/IncompressibleNSSolver/main.f90 +++ b/Solver/src/IncompressibleNSSolver/main.f90 @@ -120,6 +120,7 @@ PROGRAM HORSES3DMainiNS ! ---------------------------------- ! Export particles to VTK (temporal) ! ---------------------------------- +!TODO ! call sem % particles % ExportToVTK() ! ! ------------------------------------------ @@ -379,4 +380,4 @@ subroutine CheckIfTheVersionIsRequested end if end do - end subroutine CheckIfTheVersionIsRequested + end subroutine CheckIfTheVersionIsRequested \ No newline at end of file diff --git a/Solver/src/MultiphaseSolver/Makefile b/Solver/src/MultiphaseSolver/Makefile index 384675072..d3c635866 100644 --- a/Solver/src/MultiphaseSolver/Makefile +++ b/Solver/src/MultiphaseSolver/Makefile @@ -90,4 +90,4 @@ header: FORCE @echo ## Dummy target to make sure a rule is executed -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/MultiphaseSolver/SpatialDiscretization.f90 b/Solver/src/MultiphaseSolver/SpatialDiscretization.f90 index f46211d06..1ce43ecaf 100644 --- a/Solver/src/MultiphaseSolver/SpatialDiscretization.f90 +++ b/Solver/src/MultiphaseSolver/SpatialDiscretization.f90 @@ -1509,4 +1509,4 @@ SUBROUTINE ComputeTimeDerivativeIsolated( mesh, particles, time, mode) end subroutine ComputeTimeDerivativeIsolated -end module SpatialDiscretization +end module SpatialDiscretization \ No newline at end of file diff --git a/Solver/src/MultiphaseSolver/main.f90 b/Solver/src/MultiphaseSolver/main.f90 index 563e4ec29..43e8e1ca6 100644 --- a/Solver/src/MultiphaseSolver/main.f90 +++ b/Solver/src/MultiphaseSolver/main.f90 @@ -380,4 +380,4 @@ subroutine CheckIfTheVersionIsRequested end if end do - end subroutine CheckIfTheVersionIsRequested + end subroutine CheckIfTheVersionIsRequested \ No newline at end of file diff --git a/Solver/src/NavierStokesSolver/Makefile b/Solver/src/NavierStokesSolver/Makefile index 66bcfc2f6..65a167eba 100644 --- a/Solver/src/NavierStokesSolver/Makefile +++ b/Solver/src/NavierStokesSolver/Makefile @@ -89,4 +89,4 @@ header: FORCE @echo ## Dummy target to make sure a rule is executed -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/NavierStokesSolver/SpatialDiscretization.f90 b/Solver/src/NavierStokesSolver/SpatialDiscretization.f90 index 1b436118c..9dea801da 100644 --- a/Solver/src/NavierStokesSolver/SpatialDiscretization.f90 +++ b/Solver/src/NavierStokesSolver/SpatialDiscretization.f90 @@ -611,7 +611,7 @@ subroutine TimeDerivative_ComputeQDot( mesh , particles, t) associate ( e => mesh % elements(eID) ) do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) if( e% isInsideBody(i,j,k) ) then - call mesh% IBM% SourceTerm( eID = eID, Q = e % storage % Q(:,i,j,k), Source = Source ) + call mesh% IBM% SourceTerm( eID = eID, Q = e % storage % Q(:,i,j,k), Source = Source, wallfunction = .false. ) e % storage % QDot(:,i,j,k) = e % storage % QDot(:,i,j,k) + Source end if end do ; end do ; end do @@ -694,6 +694,7 @@ subroutine compute_viscosity_at_faces(no_of_faces, no_of_sides, face_ids, mesh) + end subroutine compute_viscosity_at_faces ! !//////////////////////////////////////////////////////////////////////// @@ -784,7 +785,7 @@ subroutine TimeDerivative_ComputeQDotIsolated( mesh , t ) associate ( e => mesh % elements(eID) ) do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) if( e% isInsideBody(i,j,k) ) then - call mesh% IBM% SourceTerm( eID = eID, Q = e % storage % Q(:,i,j,k), Source = Source ) + call mesh% IBM% SourceTerm( eID = eID, Q = e % storage % Q(:,i,j,k), Source = Source, wallfunction = .false. ) e % storage % QDot(:,i,j,k) = e % storage % QDot(:,i,j,k) + Source end if end do ; end do ; end do @@ -1328,4 +1329,4 @@ SUBROUTINE computeBoundaryFlux(f, time, mesh) end subroutine computeBoundaryFlux -end module SpatialDiscretization +end module SpatialDiscretization \ No newline at end of file diff --git a/Solver/src/NavierStokesSolver/main.f90 b/Solver/src/NavierStokesSolver/main.f90 index 9eaa1bc3c..33dc4af88 100644 --- a/Solver/src/NavierStokesSolver/main.f90 +++ b/Solver/src/NavierStokesSolver/main.f90 @@ -395,4 +395,4 @@ subroutine CheckIfTheVersionIsRequested end if end do - end subroutine CheckIfTheVersionIsRequested + end subroutine CheckIfTheVersionIsRequested \ No newline at end of file diff --git a/Solver/src/NavierStokesSolverRANS/Makefile b/Solver/src/NavierStokesSolverRANS/Makefile index 5dff21a20..39f3e36d1 100644 --- a/Solver/src/NavierStokesSolverRANS/Makefile +++ b/Solver/src/NavierStokesSolverRANS/Makefile @@ -89,4 +89,4 @@ header: FORCE @echo ## Dummy target to make sure a rule is executed -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/NavierStokesSolverRANS/SpatialDiscretization.f90 b/Solver/src/NavierStokesSolverRANS/SpatialDiscretization.f90 index b7f84cf64..7658f349e 100644 --- a/Solver/src/NavierStokesSolverRANS/SpatialDiscretization.f90 +++ b/Solver/src/NavierStokesSolverRANS/SpatialDiscretization.f90 @@ -655,7 +655,7 @@ subroutine TimeDerivative_ComputeQDot( mesh , particles, t) associate ( e => mesh % elements(eID) ) do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) if( e% isInsideBody(i,j,k) ) then - call mesh% IBM% SourceTerm( eID = eID, Q = e % storage % Q(:,i,j,k), Source = Source ) + call mesh% IBM% SourceTerm( eID = eID, Q = e % storage % Q(:,i,j,k), Source = Source, wallfunction = .false. ) e % storage % QDot(:,i,j,k) = e % storage % QDot(:,i,j,k) + Source end if end do ; end do ; end do @@ -819,7 +819,7 @@ subroutine TimeDerivative_ComputeQDotIsolated( mesh , t ) associate ( e => mesh % elements(eID) ) do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) if( e% isInsideBody(i,j,k) ) then - call mesh% IBM% SourceTerm( eID = eID, Q = e % storage % Q(:,i,j,k), Source = Source ) + call mesh% IBM% SourceTerm( eID = eID, Q = e % storage % Q(:,i,j,k), Source = Source, wallfunction = .false. ) e % storage % QDot(:,i,j,k) = e % storage % QDot(:,i,j,k) + Source end if end do ; end do ; end do @@ -1382,4 +1382,4 @@ SUBROUTINE computeBoundaryFlux_NSSA(f, time, mesh) END SUBROUTINE computeBoundaryFlux_NSSA -end module SpatialDiscretization +end module SpatialDiscretization \ No newline at end of file diff --git a/Solver/src/NavierStokesSolverRANS/main.f90 b/Solver/src/NavierStokesSolverRANS/main.f90 index 71333a762..107d11f88 100644 --- a/Solver/src/NavierStokesSolverRANS/main.f90 +++ b/Solver/src/NavierStokesSolverRANS/main.f90 @@ -395,4 +395,4 @@ subroutine CheckIfTheVersionIsRequested end if end do - end subroutine CheckIfTheVersionIsRequested + end subroutine CheckIfTheVersionIsRequested \ No newline at end of file diff --git a/Solver/src/addons/extractgeometry/ConstructMeshAndSpectralBasis.f90 b/Solver/src/addons/extractgeometry/ConstructMeshAndSpectralBasis.f90 index dcefe9c65..79d813db6 100644 --- a/Solver/src/addons/extractgeometry/ConstructMeshAndSpectralBasis.f90 +++ b/Solver/src/addons/extractgeometry/ConstructMeshAndSpectralBasis.f90 @@ -133,4 +133,4 @@ subroutine ConstructMeshAndSpectralBasis(meshFile, solutionFile, ControlFile, me end subroutine ConstructMeshAndSpectralBasis -end module ConstructMeshAndSpectralBasis_MOD +end module ConstructMeshAndSpectralBasis_MOD \ No newline at end of file diff --git a/Solver/src/addons/extractgeometry/GeometryClass.f90 b/Solver/src/addons/extractgeometry/GeometryClass.f90 index 959efcd3b..e0e44bea4 100644 --- a/Solver/src/addons/extractgeometry/GeometryClass.f90 +++ b/Solver/src/addons/extractgeometry/GeometryClass.f90 @@ -257,7 +257,7 @@ subroutine Cube_Compute(self, mesh, spA) neighs(1) = lastelement do n = 1, 6 if ( mesh % elements(lastelement) % NumberOfConnections(n) .ne. 0 ) then - neighs(n+1) = mesh % elements(lastelement) % Connection(n) % globID + neighs(n+1) = mesh % elements(lastelement) % Connection(n) % globID ! TODO: Careful if you are using MPI else neighs(n+1) = -1 end if @@ -313,4 +313,4 @@ subroutine Cube_Describe(self) end subroutine Cube_Describe -end module GeometryClass +end module GeometryClass \ No newline at end of file diff --git a/Solver/src/addons/extractgeometry/Makefile b/Solver/src/addons/extractgeometry/Makefile index dce322e15..dffc97c42 100644 --- a/Solver/src/addons/extractgeometry/Makefile +++ b/Solver/src/addons/extractgeometry/Makefile @@ -86,4 +86,4 @@ header: FORCE @echo ## Dummy target to make sure a rule is executed -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/addons/extractgeometry/getInputData.f90 b/Solver/src/addons/extractgeometry/getInputData.f90 index 84b958398..97e1e0a31 100644 --- a/Solver/src/addons/extractgeometry/getInputData.f90 +++ b/Solver/src/addons/extractgeometry/getInputData.f90 @@ -118,4 +118,4 @@ subroutine getInputData(controlVariables) end subroutine getInputData -end module getInputData_MOD +end module getInputData_MOD \ No newline at end of file diff --git a/Solver/src/addons/extractgeometry/main.f90 b/Solver/src/addons/extractgeometry/main.f90 index c1bf26dde..34ca7be8b 100644 --- a/Solver/src/addons/extractgeometry/main.f90 +++ b/Solver/src/addons/extractgeometry/main.f90 @@ -48,4 +48,4 @@ program ExtractGeometry call MPI_Process % Close -end program ExtractGeometry +end program ExtractGeometry \ No newline at end of file diff --git a/Solver/src/addons/horses2tecplot/Makefile b/Solver/src/addons/horses2tecplot/Makefile index 5662a6934..138dec9a4 100644 --- a/Solver/src/addons/horses2tecplot/Makefile +++ b/Solver/src/addons/horses2tecplot/Makefile @@ -92,4 +92,4 @@ header: FORCE @echo ## Dummy target to make sure a rule is executed -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/addons/horses2tecplot/Mesh2Plt.f90 b/Solver/src/addons/horses2tecplot/Mesh2Plt.f90 index 56d84e56a..7ea22e79e 100644 --- a/Solver/src/addons/horses2tecplot/Mesh2Plt.f90 +++ b/Solver/src/addons/horses2tecplot/Mesh2Plt.f90 @@ -56,4 +56,4 @@ subroutine Mesh2Plt(meshFile) end subroutine Mesh2Plt -end module Mesh2PltModule +end module Mesh2PltModule \ No newline at end of file diff --git a/Solver/src/addons/horses2tecplot/OutputVariables.f90 b/Solver/src/addons/horses2tecplot/OutputVariables.f90 index bdf4569ea..00269b5f6 100644 --- a/Solver/src/addons/horses2tecplot/OutputVariables.f90 +++ b/Solver/src/addons/horses2tecplot/OutputVariables.f90 @@ -934,4 +934,4 @@ integer function getNoOfCommas(input_line) end do end function getNoOfCommas -end module OutputVariables +end module OutputVariables \ No newline at end of file diff --git a/Solver/src/addons/horses2tecplot/ProlongMeshAndSolution.f90 b/Solver/src/addons/horses2tecplot/ProlongMeshAndSolution.f90 index d51371998..077888287 100644 --- a/Solver/src/addons/horses2tecplot/ProlongMeshAndSolution.f90 +++ b/Solver/src/addons/horses2tecplot/ProlongMeshAndSolution.f90 @@ -255,4 +255,4 @@ subroutine InterpolateFaces(N,spAxi,spAeta,spAzeta,x,face1,face2,face3,face4,fac end subroutine InterpolateFaces -end module ProlongMeshAndSolution +end module ProlongMeshAndSolution \ No newline at end of file diff --git a/Solver/src/addons/horses2tecplot/Solution2Plt.f90 b/Solver/src/addons/horses2tecplot/Solution2Plt.f90 index 8574c0e35..c1f9dac36 100644 --- a/Solver/src/addons/horses2tecplot/Solution2Plt.f90 +++ b/Solver/src/addons/horses2tecplot/Solution2Plt.f90 @@ -260,9 +260,9 @@ subroutine Solution2Plt_GaussPoints_FixedOrder(meshName, solutionName, Nout, mod associate( spAoutXi => spA(Nout(1)), & spAoutEta => spA(Nout(2)), & spAoutZeta => spA(Nout(3)) ) - call addNewInterpolationMatrix(Tset, e % Nsol(1), spA(e % Nsol(1)), e % Nout(1), spAoutXi % x) - call addNewInterpolationMatrix(Tset, e % Nsol(2), spA(e % Nsol(2)), e % Nout(2), spAoutEta % x) - call addNewInterpolationMatrix(Tset, e % Nsol(3), spA(e % Nsol(3)), e % Nout(3), spAoutZeta % x) + call addNewInterpolationMatrix(Tset, e % Nsol(1), spA(e % Nsol(1)), e % Nout(1), spAoutXi % x) ! TODO: check why it was Nsol(1) + call addNewInterpolationMatrix(Tset, e % Nsol(2), spA(e % Nsol(2)), e % Nout(2), spAoutEta % x) ! TODO: check why it was Nsol(1) + call addNewInterpolationMatrix(Tset, e % Nsol(3), spA(e % Nsol(3)), e % Nout(3), spAoutZeta % x) ! TODO: check why it was Nsol(1) end associate ! ! Perform interpolation @@ -466,15 +466,15 @@ subroutine Solution2Plt_Homogeneous(meshName, solutionName, Nout, mode) ! Construct interpolation matrices for the mesh ! --------------------------------------------- call addNewInterpolationMatrix(Tset, e % Nmesh(1), spA(e % Nmesh(1)), e % Nout(1), xi) - call addNewInterpolationMatrix(Tset, e % Nmesh(2), spA(e % Nmesh(2)), e % Nout(2), eta) - call addNewInterpolationMatrix(Tset, e % Nmesh(3), spA(e % Nmesh(3)), e % Nout(3), zeta) + call addNewInterpolationMatrix(Tset, e % Nmesh(2), spA(e % Nmesh(2)), e % Nout(2), eta) ! TODO: check why it was Nmesh(1) + call addNewInterpolationMatrix(Tset, e % Nmesh(3), spA(e % Nmesh(3)), e % Nout(3), zeta) ! TODO: check why it was Nmesh(1) ! ! Construct interpolation matrices for the solution ! ------------------------------------------------- call addNewInterpolationMatrix(Tset, e % Nsol(1), spA(e % Nsol(1)), e % Nout(1), xi) - call addNewInterpolationMatrix(Tset, e % Nsol(2), spA(e % Nsol(2)), e % Nout(2), eta) - call addNewInterpolationMatrix(Tset, e % Nsol(3), spA(e % Nsol(3)), e % Nout(3), zeta) + call addNewInterpolationMatrix(Tset, e % Nsol(2), spA(e % Nsol(2)), e % Nout(2), eta) ! TODO: check why it was Nout(1) + call addNewInterpolationMatrix(Tset, e % Nsol(3), spA(e % Nsol(3)), e % Nout(3), zeta) ! TODO: check why it was Nout(1) ! ! Perform interpolation ! --------------------- @@ -1051,4 +1051,4 @@ character(len=LINE_LENGTH) function getFormat() end function getFormat -end module Solution2PltModule +end module Solution2PltModule \ No newline at end of file diff --git a/Solver/src/addons/horses2tecplot/Solution2VtkHdf.f90 b/Solver/src/addons/horses2tecplot/Solution2VtkHdf.f90 index 8547a714a..2a0d415a8 100644 --- a/Solver/src/addons/horses2tecplot/Solution2VtkHdf.f90 +++ b/Solver/src/addons/horses2tecplot/Solution2VtkHdf.f90 @@ -486,4 +486,4 @@ function get_connectivities(elemType, Nout) result(conn) end function get_connectivities -end module Solution2VtkHdfModule +end module Solution2VtkHdfModule \ No newline at end of file diff --git a/Solver/src/addons/horses2tecplot/Stats2Plt.f90 b/Solver/src/addons/horses2tecplot/Stats2Plt.f90 index 425743561..6d86253b3 100644 --- a/Solver/src/addons/horses2tecplot/Stats2Plt.f90 +++ b/Solver/src/addons/horses2tecplot/Stats2Plt.f90 @@ -375,15 +375,15 @@ subroutine Stats2Plt_Homogeneous(meshName, solutionName, Nout) ! Construct interpolation matrices for the mesh ! --------------------------------------------- call addNewInterpolationMatrix(Tset, e % Nmesh(1), spA(e % Nmesh(1)), e % Nout(1), xi) - call addNewInterpolationMatrix(Tset, e % Nmesh(2), spA(e % Nmesh(2)), e % Nout(2), eta) - call addNewInterpolationMatrix(Tset, e % Nmesh(3), spA(e % Nmesh(3)), e % Nout(3), zeta) + call addNewInterpolationMatrix(Tset, e % Nmesh(2), spA(e % Nmesh(2)), e % Nout(2), eta) ! TODO: check why it was Nmesh(1) + call addNewInterpolationMatrix(Tset, e % Nmesh(3), spA(e % Nmesh(3)), e % Nout(3), zeta) ! TODO: check why it was Nmesh(1) ! ! Construct interpolation matrices for the solution ! ------------------------------------------------- call addNewInterpolationMatrix(Tset, e % Nsol(1), spA(e % Nsol(1)), e % Nout(1), xi) - call addNewInterpolationMatrix(Tset, e % Nsol(2), spA(e % Nsol(2)), e % Nout(2), eta) - call addNewInterpolationMatrix(Tset, e % Nsol(3), spA(e % Nsol(3)), e % Nout(3), zeta) + call addNewInterpolationMatrix(Tset, e % Nsol(2), spA(e % Nsol(2)), e % Nout(2), eta) ! TODO: check why it was Nsol(1) + call addNewInterpolationMatrix(Tset, e % Nsol(3), spA(e % Nsol(3)), e % Nout(3), zeta) ! TODO: check why it was Nsol(1) ! ! Perform interpolation ! --------------------- @@ -544,4 +544,4 @@ character(len=LINE_LENGTH) function getFormat() end function getFormat -end module Stats2PltModule +end module Stats2PltModule \ No newline at end of file diff --git a/Solver/src/addons/horses2tecplot/Storage.f90 b/Solver/src/addons/horses2tecplot/Storage.f90 index 93b0bfc54..67f95b6c7 100644 --- a/Solver/src/addons/horses2tecplot/Storage.f90 +++ b/Solver/src/addons/horses2tecplot/Storage.f90 @@ -249,6 +249,9 @@ subroutine Mesh_ReadSolution(self,solutionName) self % hasSensor = .false. self % hasTimeDeriv = .true. + ! TODO? + case (IBM_MESH) + case (SOLUTION_AND_SENSOR_FILE) dimensionsSize = 4 self % hasGradients = .false. @@ -344,7 +347,7 @@ subroutine Mesh_ReadSolution(self,solutionName) ! ! Allocate memory for the gradients ! --------------------------------- - allocate( e % Q_x(1:NVARS,0:e % Nsol(1),0:e % Nsol(2),0:e % Nsol(3)) ) + allocate( e % Q_x(1:NVARS,0:e % Nsol(1),0:e % Nsol(2),0:e % Nsol(3)) ) ! TODO: Allocate depending on physics allocate( e % Q_y(1:NVARS,0:e % Nsol(1),0:e % Nsol(2),0:e % Nsol(3)) ) allocate( e % Q_z(1:NVARS,0:e % Nsol(1),0:e % Nsol(2),0:e % Nsol(3)) ) @@ -359,7 +362,7 @@ subroutine Mesh_ReadSolution(self,solutionName) read(fid) e % Q_z ! Call set_getVelocityGradients to make the pointer to the actual subroutine, is needed only for the NS -! Set state as is the default option T +! Set state as is the default option TODO point to the correct one if its possible (oscar note) ! --------------------------- call set_getVelocityGradients(GRADVARS_STATE) @@ -522,6 +525,7 @@ Subroutine getNVARS(originalDim, useFlowEq) NVARS = originalDim ! use simple hardcoded values taken from physics. + ! todo: link from horses3d code if (useFlowEq) then select case (trim(flowEq)) case ("ns") @@ -547,4 +551,4 @@ Subroutine getNVARS(originalDim, useFlowEq) end select End Subroutine getNVARS -end module Storage +end module Storage \ No newline at end of file diff --git a/Solver/src/addons/horses2tecplot/getTask.f90 b/Solver/src/addons/horses2tecplot/getTask.f90 index 94f758c97..03cdce1fb 100644 --- a/Solver/src/addons/horses2tecplot/getTask.f90 +++ b/Solver/src/addons/horses2tecplot/getTask.f90 @@ -83,6 +83,7 @@ subroutine getTaskType(taskType, meshName, no_of_solutions, solutionNames, solut ! If the control file is used, there is only 1 argument ! ----------------------------------------------------- if (no_of_arguments .eq. 1) then + !todo: check that it is actually a control file useCommandArgs = .false. call getTaskTypeControl(taskType, meshName, no_of_solutions, solutionNames, solutionTypes, fixedOrder, Nout, basis, mode, oldStats) else @@ -602,4 +603,4 @@ Subroutine getBasis(basisPresent, basisName, fixedOrder, basis) ! End Subroutine getBasis ! -end module getTask +end module getTask \ No newline at end of file diff --git a/Solver/src/addons/horses2tecplot/main.f90 b/Solver/src/addons/horses2tecplot/main.f90 index b74585cb7..546b28a6f 100644 --- a/Solver/src/addons/horses2tecplot/main.f90 +++ b/Solver/src/addons/horses2tecplot/main.f90 @@ -113,4 +113,4 @@ program horses2plt call MPI_Process % Close -end program horses2plt +end program horses2plt \ No newline at end of file diff --git a/Solver/src/addons/horses2tecplot/sharedSpectralBasis.f90 b/Solver/src/addons/horses2tecplot/sharedSpectralBasis.f90 index 1cd6a5767..0490d1400 100644 --- a/Solver/src/addons/horses2tecplot/sharedSpectralBasis.f90 +++ b/Solver/src/addons/horses2tecplot/sharedSpectralBasis.f90 @@ -74,4 +74,4 @@ subroutine addNewInterpolationMatrix( Tset_, Nold, spAold, Nnew, xiNew) end subroutine addNewInterpolationMatrix -end module SharedSpectralBasis +end module SharedSpectralBasis \ No newline at end of file diff --git a/Solver/src/addons/mergeStatistics/Makefile b/Solver/src/addons/mergeStatistics/Makefile index ee2e30b0d..3e46709f6 100644 --- a/Solver/src/addons/mergeStatistics/Makefile +++ b/Solver/src/addons/mergeStatistics/Makefile @@ -86,4 +86,4 @@ header: FORCE @echo ## Dummy target to make sure a rule is executed -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/addons/mergeStatistics/StatsAveragingModule.f90 b/Solver/src/addons/mergeStatistics/StatsAveragingModule.f90 index 1d08edef9..c72e9c1c1 100644 --- a/Solver/src/addons/mergeStatistics/StatsAveragingModule.f90 +++ b/Solver/src/addons/mergeStatistics/StatsAveragingModule.f90 @@ -198,6 +198,7 @@ subroutine Mesh_ReadStatistics(self,solutionName) integer :: fid, eID !------------------------------------------------------------- +!~ self % solutionName = trim(solutionName) ! ! Read coordinates ! ---------------- @@ -247,4 +248,4 @@ subroutine Mesh_SaveStatistics(self, name) call SealSolutionFile(trim(name)) end subroutine Mesh_SaveStatistics -end module StatsAveragingModule +end module StatsAveragingModule \ No newline at end of file diff --git a/Solver/src/addons/mergeStatistics/getTaskModule.f90 b/Solver/src/addons/mergeStatistics/getTaskModule.f90 index 7e494d806..293ab02d2 100644 --- a/Solver/src/addons/mergeStatistics/getTaskModule.f90 +++ b/Solver/src/addons/mergeStatistics/getTaskModule.f90 @@ -153,4 +153,4 @@ subroutine getTask(num_of_statFiles, fileNames, weights, initial_iteration, file end do end subroutine getTask -end module getTaskModule +end module getTaskModule \ No newline at end of file diff --git a/Solver/src/addons/mergeStatistics/main.f90 b/Solver/src/addons/mergeStatistics/main.f90 index 601b79605..0e9ff3872 100644 --- a/Solver/src/addons/mergeStatistics/main.f90 +++ b/Solver/src/addons/mergeStatistics/main.f90 @@ -10,12 +10,12 @@ ! * Only usable with statistics files that are obtained with the "reset interval" keyword ! and/or with individual consecutive simulations ! * Only constant time-stepping is supported -! * Dynamic p-adaptation is currently not supported (but static p-adaption works) +! * Dynamic p-adaptation is currently not supported ! program MergeStatistics use SMConstants use getTaskModule , only: getTask - use Headers + use Headers ! , only: Main_Header, Section_Header use StatsAveragingModule, only: Initialize_StatsAveragingModule, Finalize_StatsAveragingModule, PerformAveraging use MPI_Process_Info , only: MPI_Process implicit none @@ -60,4 +60,4 @@ program MergeStatistics call MPI_Process % Close -end program MergeStatistics +end program MergeStatistics \ No newline at end of file diff --git a/Solver/src/addons/tools/ConverStats.f90 b/Solver/src/addons/tools/ConverStats.f90 index 31e2fa74f..4aaef9cab 100644 --- a/Solver/src/addons/tools/ConverStats.f90 +++ b/Solver/src/addons/tools/ConverStats.f90 @@ -102,4 +102,4 @@ Subroutine ConvertStatsForRestart(controlVariables) call SealSolutionFile(trim(restartFileName)) End Subroutine ConvertStatsForRestart -End Module ConverStats +End Module ConverStats \ No newline at end of file diff --git a/Solver/src/addons/tools/FWHPostProc.f90 b/Solver/src/addons/tools/FWHPostProc.f90 index 2f7e2dd10..70217e56b 100644 --- a/Solver/src/addons/tools/FWHPostProc.f90 +++ b/Solver/src/addons/tools/FWHPostProc.f90 @@ -179,4 +179,4 @@ Subroutine LoadSingleFile(fileName, mesh, fwh, actualIter, hasGradients) ! End Subroutine LoadSingleFile -End Module FWHPostProc +End Module FWHPostProc \ No newline at end of file diff --git a/Solver/src/addons/tools/FWHPreSurface.f90 b/Solver/src/addons/tools/FWHPreSurface.f90 index 7f6dfb30e..d6f5dfe80 100644 --- a/Solver/src/addons/tools/FWHPreSurface.f90 +++ b/Solver/src/addons/tools/FWHPreSurface.f90 @@ -581,6 +581,7 @@ Subroutine getAllInteriorElements(mesh, isInGeometry, radii, ratio, centerPositi y => xx(2,:) z => xx(3,:) + ! todo: configure to call x,z or y,z too if (isInGeometry(radii, ratio, centerPosition, x, y, NODES_PER_ELEMENT, lengthAspect, filter=useFilter)) then allElements(k,1) = e % eID allElements(k,2) = e % globID @@ -753,6 +754,7 @@ Subroutine getAdditionalElements(mesh, BCeID, numberOfElements, zoneMarkers, zN, e => mesh % elements(neID) end do + !todo check that new bc have been reached allocate(newEIDs(realNumberOfElements)) newEIDs = nEs(1:realNumberOfElements) @@ -974,4 +976,4 @@ End Function getElementSize ! !//////////////////////////////////////////////////////////////////////// ! -End Module FWHPreSurface +End Module FWHPreSurface \ No newline at end of file diff --git a/Solver/src/addons/tools/FWHTools.f90 b/Solver/src/addons/tools/FWHTools.f90 index f47624204..2179221ab 100644 --- a/Solver/src/addons/tools/FWHTools.f90 +++ b/Solver/src/addons/tools/FWHTools.f90 @@ -187,4 +187,4 @@ subroutine DisplaySimulationStatistics(iter,mesh) end subroutine DisplaySimulationStatistics -End Module FWHTools +End Module FWHTools \ No newline at end of file diff --git a/Solver/src/addons/tools/LocalIBMRefinementTool.f90 b/Solver/src/addons/tools/LocalIBMRefinementTool.f90 index 9c23b5c54..e9b2d0684 100644 --- a/Solver/src/addons/tools/LocalIBMRefinementTool.f90 +++ b/Solver/src/addons/tools/LocalIBMRefinementTool.f90 @@ -194,10 +194,9 @@ subroutine CheckInputIntegrityIBM( controlVariables, success ) write(in_label , '(A)') "#define ibm" call get_command_argument(1, paramFile) - call readValueInRegion( trim( paramFile ), "nx", Nx_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "ny", Ny_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "nz", Nz_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "band region coeff", BandRegionCoeff_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "nx", Nx_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "ny", Ny_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "nz", Nz_in, in_label, "#end" ) if( .not. allocated(Nx_in) ) then print*, "Missing keyword 'nx' in input file" @@ -217,15 +216,8 @@ subroutine CheckInputIntegrityIBM( controlVariables, success ) return end if - if( .not. allocated(BandRegionCoeff_in) ) then - print*, "Missing keyword 'band region coeff' in input file" - success = .false. - return - end if - success = .true. end subroutine CheckInputIntegrityIBM - -end module LocalIBMRefinementTool +end module LocalIBMRefinementTool \ No newline at end of file diff --git a/Solver/src/addons/tools/LocalRefinementClass.f90 b/Solver/src/addons/tools/LocalRefinementClass.f90 index 84ce4d504..a3ce41cd9 100644 --- a/Solver/src/addons/tools/LocalRefinementClass.f90 +++ b/Solver/src/addons/tools/LocalRefinementClass.f90 @@ -166,4 +166,4 @@ Subroutine getOrderOfPosition(self, coordinates, Nx, Ny, Nz) End Subroutine getOrderOfPosition -End Module LocalRefinement +End Module LocalRefinement \ No newline at end of file diff --git a/Solver/src/addons/tools/LocalRefinementTool.f90 b/Solver/src/addons/tools/LocalRefinementTool.f90 index 997f98317..0f0832355 100644 --- a/Solver/src/addons/tools/LocalRefinementTool.f90 +++ b/Solver/src/addons/tools/LocalRefinementTool.f90 @@ -204,10 +204,12 @@ Subroutine ConstructSimpleMesh(mesh, meshFileName, locR_) call ConstructSimpleMesh_FromHDF5File_(mesh, meshFileName, locR=locR_) elseif (trim(ext)=='mesh') then call ConstructSimpleMesh_FromSpecFile_(mesh, meshFileName, locR=locR_) + ! elseif (trim(ext)=='msh') then + ! call ConstructSimpleMesh_FromGmshFile_(mesh, meshFileName, locR else ERROR STOP 'Mesh file extension not recognized.' end if End Subroutine ConstructSimpleMesh ! -End Module LocalRefinementTool +End Module LocalRefinementTool \ No newline at end of file diff --git a/Solver/src/addons/tools/Makefile b/Solver/src/addons/tools/Makefile index 62e565999..87db087ff 100644 --- a/Solver/src/addons/tools/Makefile +++ b/Solver/src/addons/tools/Makefile @@ -95,4 +95,4 @@ header: FORCE @echo ## Dummy target to make sure a rule is executed -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/addons/tools/SurfaceClass.f90 b/Solver/src/addons/tools/SurfaceClass.f90 index 9cd9bf59c..2a466ccc4 100644 --- a/Solver/src/addons/tools/SurfaceClass.f90 +++ b/Solver/src/addons/tools/SurfaceClass.f90 @@ -1036,4 +1036,4 @@ End Function testEqualCorners !//////////////////////////////////////////////////////////////////////// ! -End Module SurfaceClass +End Module SurfaceClass \ No newline at end of file diff --git a/Solver/src/addons/tools/readHDF5.f90 b/Solver/src/addons/tools/readHDF5.f90 index 95b522feb..13f3e7c2a 100644 --- a/Solver/src/addons/tools/readHDF5.f90 +++ b/Solver/src/addons/tools/readHDF5.f90 @@ -182,25 +182,24 @@ subroutine ConstructSimpleMesh_FromHDF5File_( self, fileName, Nx, Ny, Nz, locR) ! Now we construct the elements ! --------------------------------------- - ! set dummy values - falseNodeID = 0 - do l = 1, numberOfElements DO k = 1, NODES_PER_ELEMENT - HOPRNodeID = ElemInfo(ELEM_FirstNodeInd,l) + HCornerMap(k) - - corners(:,k) = NodeCoords(:,HOPRNodeID) / Lref + HOPRNodeID = ElemInfo(ELEM_FirstNodeInd,l) + HCornerMap(k) + falseNodeID(k) = HOPRNodeID + corners(:,k) = NodeCoords(:,HOPRNodeID) / Lref END DO self % elements(l) % SurfInfo % corners = corners if( present(locR) ) then + ! set dummy values + falseNodeID = 0 call locR% getOrderOfPosition(corners, Nx_, Ny_, Nz_) call self % elements(l) % Construct (Nx_, Ny_, Nz_, falseNodeID , l, l) else - call self % elements(l) % Construct (Nx(l), Ny(l), Nz(l), corners , l, l) + call self % elements(l) % Construct (Nx(l), Ny(l), Nz(l), falseNodeID , l, l) end if @@ -458,4 +457,4 @@ end function HOPR2HORSESCornerMap #endif !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! -End Module readHDF5 +End Module readHDF5 \ No newline at end of file diff --git a/Solver/src/libs/discretization/Clustering.f90 b/Solver/src/libs/discretization/Clustering.f90 index cd5a1694f..3e2ba2a28 100755 --- a/Solver/src/libs/discretization/Clustering.f90 +++ b/Solver/src/libs/discretization/Clustering.f90 @@ -1067,4 +1067,4 @@ pure subroutine matinv(n, A, Ainv, tol, info) end subroutine matinv -end module Clustering +end module Clustering \ No newline at end of file diff --git a/Solver/src/libs/discretization/DGIntegrals.f90 b/Solver/src/libs/discretization/DGIntegrals.f90 index 7ce09ddcd..b9b946f40 100644 --- a/Solver/src/libs/discretization/DGIntegrals.f90 +++ b/Solver/src/libs/discretization/DGIntegrals.f90 @@ -591,4 +591,4 @@ function ScalarStrongIntegrals_TelescopicVolumeDivergence(e, Fx, Fy, Fz, Fv) res end function ScalarStrongIntegrals_TelescopicVolumeDivergence #endif -end module DGIntegrals +end module DGIntegrals \ No newline at end of file diff --git a/Solver/src/libs/discretization/DGSEMClass.f90 b/Solver/src/libs/discretization/DGSEMClass.f90 index adffc237c..e80b26920 100644 --- a/Solver/src/libs/discretization/DGSEMClass.f90 +++ b/Solver/src/libs/discretization/DGSEMClass.f90 @@ -102,7 +102,7 @@ SUBROUTINE ConstructDGSem( self, meshFileName_, controlVariables, & use IBMClass use SurfaceMesh, only: surfacesMesh - IMPLICIT NONE + IMPLICIT NONE ! ! -------------------------- ! Constructor for the class. @@ -234,8 +234,7 @@ SUBROUTINE ConstructDGSem( self, meshFileName_, controlVariables, & end if - useRelaxPeriodic = controlVariables % logicalValueForKey("periodic relative tolerance") - + useRelaxPeriodic = controlVariables % logicalValueForKey("periodic relative tolerance") ! ! ********************************************************** ! * MPI PREPROCESSING * @@ -282,9 +281,7 @@ SUBROUTINE ConstructDGSem( self, meshFileName_, controlVariables, & ! if (MPI_Process % isRoot) write(STD_OUT,'(/,5X,A)') "Reading mesh..." CALL constructMeshFromFile( self % mesh, self % mesh % meshFileName, CurrentNodes, Nx, Ny, Nz, MeshInnerCurves , dir2D, useRelaxPeriodic, success ) - if (.not. self % mesh % child) call mpi_partition % ConstructGeneralInfo (self % mesh % no_of_allElements) - - + if (.not. self % mesh % child) call mpi_partition % ConstructGeneralInfo (self % mesh % no_of_allElements) ! ! Immersed boundary method parameter ! ----------------------------------- @@ -340,6 +337,7 @@ SUBROUTINE ConstructDGSem( self, meshFileName_, controlVariables, & ! ------------------------------------------------ ! call self% mesh% IBM% build( self% mesh% elements, self% mesh% no_of_elements, self% mesh% NDOF, self% mesh% child ) + end if ! @@ -348,7 +346,6 @@ SUBROUTINE ConstructDGSem( self, meshFileName_, controlVariables, & ! ------------------------ ! call self % mesh % AllocateStorage(self % NDOF, controlVariables,computeGradients) - ! ! ---------------------------------------------------- ! Get manufactured solution source term (if requested) @@ -398,14 +395,12 @@ SUBROUTINE ConstructDGSem( self, meshFileName_, controlVariables, & END DO END IF #endif - ! ! ------------------ ! Build the monitors ! ------------------ ! call self % monitors % construct (self % mesh, controlVariables) - ! ! ------------------ ! Build the FWH general class @@ -509,8 +504,9 @@ subroutine DGSEM_SetInitialCondition( self, controlVariables, initial_iteration, ! -------------------------- saveGradients = controlVariables % logicalValueForKey(saveGradientsToSolutionKey) write(solutionName,'(A,A,I10.10,A)') trim(solutionName), "_", initial_iteration, ".hsol" - call self % mesh % SaveSolution(initial_iteration, initial_time, solutionName, saveGradients) - + call self % mesh % SaveSolution(initial_iteration, initial_time, solutionName, saveGradients, withSensor) + !TDG: ADD PARTICLES WRITE WITH IFDEF + END IF write(solutionName,'(A,A,I10.10)') trim(solutionName), "_", initial_iteration diff --git a/Solver/src/libs/discretization/EllipticBR2.f90 b/Solver/src/libs/discretization/EllipticBR2.f90 index a2c21c285..b9a0fa02a 100644 --- a/Solver/src/libs/discretization/EllipticBR2.f90 +++ b/Solver/src/libs/discretization/EllipticBR2.f90 @@ -663,4 +663,4 @@ subroutine BR2_RiemannSolver ( self , nEqn, nGradEqn, EllipticFlux, f, QLeft , Q #endif end subroutine BR2_RiemannSolver -end module EllipticBR2 +end module EllipticBR2 \ No newline at end of file diff --git a/Solver/src/libs/discretization/EllipticDiscretizations.f90 b/Solver/src/libs/discretization/EllipticDiscretizations.f90 index a7d841c7e..64a703606 100644 --- a/Solver/src/libs/discretization/EllipticDiscretizations.f90 +++ b/Solver/src/libs/discretization/EllipticDiscretizations.f90 @@ -26,4 +26,4 @@ module EllipticDiscretizations class(EllipticDiscretization_t), allocatable :: CHDiscretization #endif -end module EllipticDiscretizations +end module EllipticDiscretizations \ No newline at end of file diff --git a/Solver/src/libs/discretization/EllipticIP.f90 b/Solver/src/libs/discretization/EllipticIP.f90 index 534db0d19..b4ad79f2b 100644 --- a/Solver/src/libs/discretization/EllipticIP.f90 +++ b/Solver/src/libs/discretization/EllipticIP.f90 @@ -726,7 +726,7 @@ subroutine IP_RiemannSolver_Jacobians( self, f) ! ! Initializations ! --------------- - mu = dimensionless % mu + mu = dimensionless % mu ! TODO: change for Cahn-Hilliard sigma = self % PenaltyParameter(f) sigma = sigma * mu @@ -791,4 +791,4 @@ end subroutine IP_RiemannSolver_Jacobians ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! -end module EllipticIP +end module EllipticIP \ No newline at end of file diff --git a/Solver/src/libs/discretization/GradientsStabilization.f90 b/Solver/src/libs/discretization/GradientsStabilization.f90 index 616bc2cf8..cbbc44aac 100644 --- a/Solver/src/libs/discretization/GradientsStabilization.f90 +++ b/Solver/src/libs/discretization/GradientsStabilization.f90 @@ -291,4 +291,4 @@ subroutine PerformSurfaceIntegrals( e, mesh ) end subroutine PerformSurfaceIntegrals #endif -end module GradientsStabilization +end module GradientsStabilization \ No newline at end of file diff --git a/Solver/src/libs/discretization/HyperbolicDiscretizationClass.f90 b/Solver/src/libs/discretization/HyperbolicDiscretizationClass.f90 index ec2a8e7e9..3d966bd04 100644 --- a/Solver/src/libs/discretization/HyperbolicDiscretizationClass.f90 +++ b/Solver/src/libs/discretization/HyperbolicDiscretizationClass.f90 @@ -286,4 +286,4 @@ subroutine BaseClass_ComputeSplitFormFluxes(self, e, contravariantFlux, fSharp, end subroutine BaseClass_ComputeSplitFormFluxes end module HyperbolicDiscretizationClass -#endif +#endif \ No newline at end of file diff --git a/Solver/src/libs/discretization/HyperbolicDiscretizations.f90 b/Solver/src/libs/discretization/HyperbolicDiscretizations.f90 index 22c79ceca..dd2a04d4a 100644 --- a/Solver/src/libs/discretization/HyperbolicDiscretizations.f90 +++ b/Solver/src/libs/discretization/HyperbolicDiscretizations.f90 @@ -22,4 +22,4 @@ module HyperbolicDiscretizations class(HyperbolicDiscretization_t), allocatable :: HyperbolicDiscretization end module HyperbolicDiscretizations -#endif +#endif \ No newline at end of file diff --git a/Solver/src/libs/discretization/HyperbolicSplitForm.f90 b/Solver/src/libs/discretization/HyperbolicSplitForm.f90 index ff9c9991e..a6f9d0a90 100644 --- a/Solver/src/libs/discretization/HyperbolicSplitForm.f90 +++ b/Solver/src/libs/discretization/HyperbolicSplitForm.f90 @@ -1101,4 +1101,4 @@ subroutine SkewSymmetric2DG_VolumetricSharpFlux(QL,QR,JaL,JaR, fSharp) end subroutine SkewSymmetric2DG_VolumetricSharpFlux #endif end module HyperbolicSplitForm -#endif +#endif \ No newline at end of file diff --git a/Solver/src/libs/discretization/HyperbolicStandard.f90 b/Solver/src/libs/discretization/HyperbolicStandard.f90 index a9e29fd4f..d0db99a8c 100644 --- a/Solver/src/libs/discretization/HyperbolicStandard.f90 +++ b/Solver/src/libs/discretization/HyperbolicStandard.f90 @@ -12,4 +12,4 @@ module HyperbolicStandard end type StandardDG_t end module HyperbolicStandard -#endif +#endif \ No newline at end of file diff --git a/Solver/src/libs/discretization/Makefile b/Solver/src/libs/discretization/Makefile index 8758cec2b..b1d063038 100644 --- a/Solver/src/libs/discretization/Makefile +++ b/Solver/src/libs/discretization/Makefile @@ -218,4 +218,4 @@ clean: FORCE ############################################# # Dummy procedure to force a rule # ############################################# -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/libs/discretization/SCsensorClass.f90 b/Solver/src/libs/discretization/SCsensorClass.f90 index f5cf4f465..c8c8cde8b 100644 --- a/Solver/src/libs/discretization/SCsensorClass.f90 +++ b/Solver/src/libs/discretization/SCsensorClass.f90 @@ -1305,4 +1305,4 @@ subroutine RescaleClusterVariables(ndims, x) end subroutine RescaleClusterVariables -end module SCsensorClass +end module SCsensorClass \ No newline at end of file diff --git a/Solver/src/libs/discretization/SVV.f90 b/Solver/src/libs/discretization/SVV.f90 index d1a1baf03..bb023fba7 100644 --- a/Solver/src/libs/discretization/SVV.f90 +++ b/Solver/src/libs/discretization/SVV.f90 @@ -986,4 +986,4 @@ subroutine FilterMatrices_Recompute(self,Psvv, type_, Q) end subroutine FilterMatrices_Recompute end module SpectralVanishingViscosity -#endif +#endif \ No newline at end of file diff --git a/Solver/src/libs/discretization/ShockCapturing.f90 b/Solver/src/libs/discretization/ShockCapturing.f90 index 0ca836be9..bc7c8410e 100644 --- a/Solver/src/libs/discretization/ShockCapturing.f90 +++ b/Solver/src/libs/discretization/ShockCapturing.f90 @@ -480,6 +480,7 @@ subroutine AV_initialize(self, controlVariables, mesh, region) stop end if + ! TODO: Use the default constructor self % Smagorinsky % active = .true. self % Smagorinsky % requiresWallDistances = .false. self % Smagorinsky % WallModel = 0 ! No wall model @@ -631,6 +632,11 @@ end subroutine NoSVV_initialize ! subroutine NoSVV_viscosity(self, mesh, e, switch, SCflux) ! +! -------------------------------------------------------------------------- +! TODO: Introduce alpha viscosity, which probably means reimplementing here +! all the viscous fluxes of `Physics_NS`... +! -------------------------------------------------------------------------- +! ! --------- ! Interface ! --------- @@ -827,6 +833,7 @@ subroutine SVV_initialize(self, controlVariables, mesh, region) integer, intent(in) :: region + ! TODO: Implement it also for region 2, but SVV does not seem very useful there... if (region == 2) then write(STD_OUT,*) "ERROR. SVV viscosity can be used only in the first region of the sensor." stop @@ -998,4 +1005,4 @@ subroutine SVV_describe(self) end subroutine SVV_describe -end module ShockCapturing +end module ShockCapturing \ No newline at end of file diff --git a/Solver/src/libs/discretization/ShockCapturingKeywords.f90 b/Solver/src/libs/discretization/ShockCapturingKeywords.f90 index 7fab173ac..59a919296 100644 --- a/Solver/src/libs/discretization/ShockCapturingKeywords.f90 +++ b/Solver/src/libs/discretization/ShockCapturingKeywords.f90 @@ -102,4 +102,4 @@ module ShockCapturingKeywords character(len=*), parameter :: SC_ISOLATED_KEY = "isolated" character(len=*), parameter :: SC_NON_ISOLATED_KEY = "non-isolated" -end module ShockCapturingKeywords +end module ShockCapturingKeywords \ No newline at end of file diff --git a/Solver/src/libs/discretization/WallFunctionConnectivity.f90 b/Solver/src/libs/discretization/WallFunctionConnectivity.f90 index 93c5df526..e12813801 100644 --- a/Solver/src/libs/discretization/WallFunctionConnectivity.f90 +++ b/Solver/src/libs/discretization/WallFunctionConnectivity.f90 @@ -440,4 +440,4 @@ integer Function getElementID(mesh, globeID) End Function getElementID End Module WallFunctionConnectivity -#endif +#endif \ No newline at end of file diff --git a/Solver/src/libs/foundation/DenseMatUtilities.f90 b/Solver/src/libs/foundation/DenseMatUtilities.f90 index ddad31cc4..8b30474b5 100644 --- a/Solver/src/libs/foundation/DenseMatUtilities.f90 +++ b/Solver/src/libs/foundation/DenseMatUtilities.f90 @@ -473,4 +473,4 @@ subroutine LUFSolve(A,p,b) ! -------------- end subroutine LUFsolve ! -------------- -END MODULE DenseMatUtilities +END MODULE DenseMatUtilities \ No newline at end of file diff --git a/Solver/src/libs/foundation/IntegerArrayLinkedListTable.f90 b/Solver/src/libs/foundation/IntegerArrayLinkedListTable.f90 index 3b64ec773..7726a5189 100644 --- a/Solver/src/libs/foundation/IntegerArrayLinkedListTable.f90 +++ b/Solver/src/libs/foundation/IntegerArrayLinkedListTable.f90 @@ -300,4 +300,4 @@ subroutine LinkedList_Describe(self) end subroutine LinkedList_Describe -end module IntegerArrayLinkedListTable +end module IntegerArrayLinkedListTable \ No newline at end of file diff --git a/Solver/src/libs/foundation/IntegerDataLinkedList.f90 b/Solver/src/libs/foundation/IntegerDataLinkedList.f90 index 730d5f858..93faaa490 100644 --- a/Solver/src/libs/foundation/IntegerDataLinkedList.f90 +++ b/Solver/src/libs/foundation/IntegerDataLinkedList.f90 @@ -155,4 +155,4 @@ elemental subroutine IntegerDataLinkedList_Destruct(self) end subroutine IntegerDataLinkedList_Destruct -end module IntegerDataLinkedList +end module IntegerDataLinkedList \ No newline at end of file diff --git a/Solver/src/libs/foundation/Makefile b/Solver/src/libs/foundation/Makefile index 0dd7a0b1b..49c0af774 100644 --- a/Solver/src/libs/foundation/Makefile +++ b/Solver/src/libs/foundation/Makefile @@ -66,4 +66,4 @@ clean: FORCE ############################################# # Dummy procedure to force a rule # ############################################# -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/libs/foundation/RealDataLinkedList.f90 b/Solver/src/libs/foundation/RealDataLinkedList.f90 index 2fd1b1140..4930c6300 100644 --- a/Solver/src/libs/foundation/RealDataLinkedList.f90 +++ b/Solver/src/libs/foundation/RealDataLinkedList.f90 @@ -142,4 +142,4 @@ elemental subroutine RealDataLinkedList_Destruct( self ) end subroutine RealDataLinkedList_Destruct -end module RealDataLinkedList +end module RealDataLinkedList \ No newline at end of file diff --git a/Solver/src/libs/foundation/SMConstants.f90 b/Solver/src/libs/foundation/SMConstants.f90 index 1ae25cfc5..bb32546ec 100644 --- a/Solver/src/libs/foundation/SMConstants.f90 +++ b/Solver/src/libs/foundation/SMConstants.f90 @@ -73,4 +73,4 @@ subroutine SetSolver(which) end subroutine SetSolver - END MODULE SMConstants + END MODULE SMConstants \ No newline at end of file diff --git a/Solver/src/libs/foundation/Setup.f90 b/Solver/src/libs/foundation/Setup.f90 index 9e8d5082a..df6520f33 100644 --- a/Solver/src/libs/foundation/Setup.f90 +++ b/Solver/src/libs/foundation/Setup.f90 @@ -29,4 +29,4 @@ Module mainKeywordsModule convergenceToleranceKey ] END MODULE mainKeywordsModule ! -!//////////////////////////////////////////////////////////////////////// +!//////////////////////////////////////////////////////////////////////// \ No newline at end of file diff --git a/Solver/src/libs/foundation/SharedDictionaries.f90 b/Solver/src/libs/foundation/SharedDictionaries.f90 index 1586413d7..4509a6649 100644 --- a/Solver/src/libs/foundation/SharedDictionaries.f90 +++ b/Solver/src/libs/foundation/SharedDictionaries.f90 @@ -24,4 +24,4 @@ SUBROUTINE destructSharedBCModule call zoneNameDictionary % destruct() END SUBROUTINE destructSharedBCModule - END Module SharedBCModule + END Module SharedBCModule \ No newline at end of file diff --git a/Solver/src/libs/foundation/Stopwatch.f90 b/Solver/src/libs/foundation/Stopwatch.f90 index ec94bd14a..032156543 100644 --- a/Solver/src/libs/foundation/Stopwatch.f90 +++ b/Solver/src/libs/foundation/Stopwatch.f90 @@ -743,4 +743,4 @@ function checkIfLeapYear(year) result (leap) end function checkIfLeapYear -end module StopwatchClass +end module StopwatchClass \ No newline at end of file diff --git a/Solver/src/libs/foundation/Utilities.f90 b/Solver/src/libs/foundation/Utilities.f90 index 9ec176552..e2246c663 100644 --- a/Solver/src/libs/foundation/Utilities.f90 +++ b/Solver/src/libs/foundation/Utilities.f90 @@ -333,10 +333,14 @@ pure subroutine LeastSquaresLinRegression(N,x,y,C,eta,r) end subroutine LeastSquaresLinRegression ! !//////////////////////////////////////////////////////////////////////// -! Recursive Fortran 95 quicksort rOUTINe -! sorts INTEGER numbers INto ascENDing numerical order -! Based on algorithm from Cormen et al., Introduction to Algorithms, -! 1997 prINting +! +! Qsort.f90 +! Created: 2016-08-25 14:30 (GMT+0) +! By: Juli Rew (juliana@ucar.edu) +! Recursive Fortran 95 quicksort rOUTINe +! sorts INTEGER numbers INto ascENDing numerical order +! Based on algorithm from Cormen et al., Introduction to Algorithms, +! 1997 prINting ! !//////////////////////////////////////////////////////////////////////////////////////// ! @@ -513,4 +517,3 @@ end function my_findloc !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! end module Utilities - diff --git a/Solver/src/libs/ftobject/Assert.f90 b/Solver/src/libs/ftobject/Assert.f90 index 74659742f..0b75e3008 100644 --- a/Solver/src/libs/ftobject/Assert.f90 +++ b/Solver/src/libs/ftobject/Assert.f90 @@ -1,5 +1,10 @@ ! !//////////////////////////////////////////////////////////////////////// +! +! Assert.f90 +! Created: February 21, 2013 2:34 PM +! By: David Kopriva +! !> Assertions are functions that return true or false !> that can be placed in a program to test whether !> a predicate is true. @@ -592,4 +597,4 @@ SUBROUTINE assertEqualTwoLogicals(expectedValue,actualValue,msg) END SUBROUTINE assertEqualTwoLogicals - END Module FTAssertions + END Module FTAssertions \ No newline at end of file diff --git a/Solver/src/libs/ftobject/Comparisons.f90 b/Solver/src/libs/ftobject/Comparisons.f90 index 4d7463b32..32fc109a1 100644 --- a/Solver/src/libs/ftobject/Comparisons.f90 +++ b/Solver/src/libs/ftobject/Comparisons.f90 @@ -1,3 +1,12 @@ +! +!//////////////////////////////////////////////////////////////////////// +! +! Assert.f90 +! Created: February 21, 2013 10:02 AM +! By: David Kopriva +! +!//////////////////////////////////////////////////////////////////////// +! !> Defines procedures that test equality of different kinds of arguments. !> Procedures defined here are USEd by the FTAssertions Module. ! @@ -325,4 +334,4 @@ LOGICAL FUNCTION isEqualString(s1,s2) END FUNCTION isEqualString - END Module ComparisonsModule + END Module ComparisonsModule \ No newline at end of file diff --git a/Solver/src/libs/ftobject/FTDataClass.f90 b/Solver/src/libs/ftobject/FTDataClass.f90 index 6453bbf42..2259d45db 100644 --- a/Solver/src/libs/ftobject/FTDataClass.f90 +++ b/Solver/src/libs/ftobject/FTDataClass.f90 @@ -1,5 +1,10 @@ ! !//////////////////////////////////////////////////////////////////////// +! +! FTDataClass.f90 +! Created: July 11, 2013 2:00 PM +! By: David Kopriva +! !>FTData defines a subclass of FTObject to contain immutable !>generic data, including derived types. !> @@ -133,4 +138,4 @@ FUNCTION dataIsOfType(self, dataType) RESULT(t) END IF END FUNCTION dataIsOfType - END Module FTDataClass + END Module FTDataClass \ No newline at end of file diff --git a/Solver/src/libs/ftobject/FTDictionaryClass.f90 b/Solver/src/libs/ftobject/FTDictionaryClass.f90 index 5d09f88b7..a20a6510d 100644 --- a/Solver/src/libs/ftobject/FTDictionaryClass.f90 +++ b/Solver/src/libs/ftobject/FTDictionaryClass.f90 @@ -1,3 +1,12 @@ +! +!//////////////////////////////////////////////////////////////////////// +! +! FTDictionary.f90 +! Created: January 28, 2013 2:00 PM +! By: David Kopriva +! +!//////////////////////////////////////////////////////////////////////// +! !>The FTKeyObjectPairClass is for use by the FTDictionary Class and will !>generally not be interacted with by the user. !> @@ -701,4 +710,4 @@ FUNCTION dictionaryClassName(self) RESULT(s) END FUNCTION dictionaryClassName END Module FTDictionaryClass - + \ No newline at end of file diff --git a/Solver/src/libs/ftobject/FTExceptionClass.f90 b/Solver/src/libs/ftobject/FTExceptionClass.f90 index feeb9697a..45ee9c746 100644 --- a/Solver/src/libs/ftobject/FTExceptionClass.f90 +++ b/Solver/src/libs/ftobject/FTExceptionClass.f90 @@ -1,5 +1,11 @@ ! !//////////////////////////////////////////////////////////////////////// +! +! FTExceptionClass.f90 +! Created: January 29, 2013 5:06 PM +! By: David Kopriva +! +! !>An FTException object gives a way to pass generic !>information about an exceptional situation. !> @@ -820,4 +826,4 @@ SUBROUTINE releaseCurrentError END SUBROUTINE releaseCurrentError END MODULE SharedExceptionManagerModule - + \ No newline at end of file diff --git a/Solver/src/libs/ftobject/FTLinkedListClass.f90 b/Solver/src/libs/ftobject/FTLinkedListClass.f90 index 342c2117c..76b89aff2 100644 --- a/Solver/src/libs/ftobject/FTLinkedListClass.f90 +++ b/Solver/src/libs/ftobject/FTLinkedListClass.f90 @@ -1,3 +1,14 @@ +! +!//////////////////////////////////////////////////////////////////////// +! +! FTLinkedListClass.f90 +! Created: January 7, 2013 2:56 PM +! By: David Kopriva +! +! +! +!//////////////////////////////////////////////////////////////////////// +! !@mark - ! !>FTLinkedListRecord is the record type (object and next) for the @@ -1163,4 +1174,4 @@ FUNCTION linkedListIteratorClassName(self) RESULT(s) END FUNCTION linkedListIteratorClassName - END MODULE FTLinkedListIteratorClass + END MODULE FTLinkedListIteratorClass \ No newline at end of file diff --git a/Solver/src/libs/ftobject/FTMultiIndexTable.f90 b/Solver/src/libs/ftobject/FTMultiIndexTable.f90 index 160ddf44a..6afb31890 100644 --- a/Solver/src/libs/ftobject/FTMultiIndexTable.f90 +++ b/Solver/src/libs/ftobject/FTMultiIndexTable.f90 @@ -1,3 +1,13 @@ +! +!//////////////////////////////////////////////////////////////////////// +! +! MultiIndexTableClass.f90 +! Created: July 29, 2013 10:59 AM +! By: David Kopriva +! +! +!//////////////////////////////////////////////////////////////////////// +! Module FTMultiIndexTableData USE FTObjectClass IMPLICIT NONE @@ -513,4 +523,4 @@ SUBROUTINE printMultiIndexTableDescription(self, iUnit) END SUBROUTINE printMultiIndexTableDescription - END Module FTMultiIndexTableClass + END Module FTMultiIndexTableClass \ No newline at end of file diff --git a/Solver/src/libs/ftobject/FTOLConstants.f90 b/Solver/src/libs/ftobject/FTOLConstants.f90 index bd6279f05..d2645fbaf 100644 --- a/Solver/src/libs/ftobject/FTOLConstants.f90 +++ b/Solver/src/libs/ftobject/FTOLConstants.f90 @@ -1,3 +1,12 @@ +! +!//////////////////////////////////////////////////////////////////////// +! +! Constants.f90 +! Created: June 12, 2013 2:54 PM +! By: David Kopriva +! +!//////////////////////////////////////////////////////////////////////// +! !> Defines constants to be used by the library ! @@ -5,4 +14,4 @@ Module FTOLConstants IMPLICIT NONE INTEGER, PARAMETER :: FT_ORDERED_ASCENDING = 1, FT_ORDERED_DESCENDING = -1, FT_ORDERED_SAME = 0 INTEGER, PARAMETER :: QUAD_DIGITS = 30 - END Module FTOLConstants + END Module FTOLConstants \ No newline at end of file diff --git a/Solver/src/libs/ftobject/FTObjectArrayClass.f90 b/Solver/src/libs/ftobject/FTObjectArrayClass.f90 index 744ee99b2..a6c83bebe 100644 --- a/Solver/src/libs/ftobject/FTObjectArrayClass.f90 +++ b/Solver/src/libs/ftobject/FTObjectArrayClass.f90 @@ -1,3 +1,10 @@ +! +!//////////////////////////////////////////////////////////////////////// +! +! FTMutableObjectArray.f90 +! Created: February 7, 2013 3:24 PM +! By: David Kopriva +! !>FTMutableObjectArray is a mutable array class to which objects !>can be added, removed, replaced and accessed according to their !>index in the array. @@ -497,4 +504,4 @@ FUNCTION arrayClassName(self) RESULT(s) END FUNCTION arrayClassName - END Module FTMutableObjectArrayClass + END Module FTMutableObjectArrayClass \ No newline at end of file diff --git a/Solver/src/libs/ftobject/FTObjectClass.f90 b/Solver/src/libs/ftobject/FTObjectClass.f90 index 04bd3a11b..035e63668 100644 --- a/Solver/src/libs/ftobject/FTObjectClass.f90 +++ b/Solver/src/libs/ftobject/FTObjectClass.f90 @@ -151,6 +151,12 @@ !>The className() procedure returns the name of the class. !> !>Subclasses should override className() !> +!> +!>Created: January 7, 2013 11:30 AM + +!>@author +!>David A. Kopriva +! Module FTObjectClass IMPLICIT NONE ! @@ -396,4 +402,4 @@ FUNCTION copyFTObject(self) RESULT(copy) CALL initFTObject(self = copy) END FUNCTION copyFTObject - END MODULE FTObjectClass + END MODULE FTObjectClass \ No newline at end of file diff --git a/Solver/src/libs/ftobject/FTObjectLibrary.f90 b/Solver/src/libs/ftobject/FTObjectLibrary.f90 index a947f124a..84fbacb0e 100644 --- a/Solver/src/libs/ftobject/FTObjectLibrary.f90 +++ b/Solver/src/libs/ftobject/FTObjectLibrary.f90 @@ -1,3 +1,12 @@ +! +!//////////////////////////////////////////////////////////////////////// +! +! FTObjectLibrary.f90 +! Created: May 8, 2014 at 2:49 PM +! By: David Kopriva +! +!//////////////////////////////////////////////////////////////////////// +! !>A module that simply USEs the entire library modules. !> Module FTObjectLibrary @@ -17,4 +26,4 @@ Module FTObjectLibrary USE FTExceptionClass IMPLICIT NONE - END MODULE FTObjectLibrary + END MODULE FTObjectLibrary \ No newline at end of file diff --git a/Solver/src/libs/ftobject/FTSparseMatrixClass.f90 b/Solver/src/libs/ftobject/FTSparseMatrixClass.f90 index 74f5ff7f9..f6b148207 100644 --- a/Solver/src/libs/ftobject/FTSparseMatrixClass.f90 +++ b/Solver/src/libs/ftobject/FTSparseMatrixClass.f90 @@ -1,3 +1,13 @@ +! +!//////////////////////////////////////////////////////////////////////// +! +! SparseMatrixClass.f90 +! Created: July 29, 2013 10:59 AM +! By: David Kopriva +! +! +!//////////////////////////////////////////////////////////////////////// +! !>FTSparseMatrixData is used by the FTSparseMatrix Class. Users will !>usually not interact with or use this class directly. !> @@ -509,4 +519,4 @@ INTEGER FUNCTION Hash2( idPair ) Hash2 = MINVAL(idPair) END FUNCTION Hash2 - END Module FTSparseMatrixClass + END Module FTSparseMatrixClass \ No newline at end of file diff --git a/Solver/src/libs/ftobject/FTStackClass.f90 b/Solver/src/libs/ftobject/FTStackClass.f90 index 86c412286..e0704db5a 100644 --- a/Solver/src/libs/ftobject/FTStackClass.f90 +++ b/Solver/src/libs/ftobject/FTStackClass.f90 @@ -1,5 +1,10 @@ ! !//////////////////////////////////////////////////////////////////////// +! +! FTStackClass.f90 +! Created: January 25, 2013 12:56 PM +! By: David Kopriva +! !>Inherits from FTLinkedListClass : FTObjectClass !> !>##Definition (Subclass of FTLinkedListClass): @@ -265,4 +270,4 @@ FUNCTION stackClassName(self) RESULT(s) END FUNCTION stackClassName - END Module FTStackClass + END Module FTStackClass \ No newline at end of file diff --git a/Solver/src/libs/ftobject/FTValueClass.f90 b/Solver/src/libs/ftobject/FTValueClass.f90 index b4b4ca61c..1f60ac353 100644 --- a/Solver/src/libs/ftobject/FTValueClass.f90 +++ b/Solver/src/libs/ftobject/FTValueClass.f90 @@ -59,6 +59,12 @@ !> !> String values can be converted to numeric types. If the string is !> not a numeric, Huge(1) will be returned, for integers and NaN for reals. +!> +!< +! FTValueClass.f90 +! Created: January 9, 2013 12:20 PM +!> @author David Kopriva +!< ! !//////////////////////////////////////////////////////////////////////// ! @@ -748,4 +754,4 @@ FUNCTION valueClassName(self) RESULT(s) END FUNCTION valueClassName - END MODULE FTValueClass + END MODULE FTValueClass \ No newline at end of file diff --git a/Solver/src/libs/ftobject/FTValueDictionaryClass.f90 b/Solver/src/libs/ftobject/FTValueDictionaryClass.f90 index 6d21f8db0..79d7817c9 100644 --- a/Solver/src/libs/ftobject/FTValueDictionaryClass.f90 +++ b/Solver/src/libs/ftobject/FTValueDictionaryClass.f90 @@ -1,5 +1,10 @@ ! !//////////////////////////////////////////////////////////////////////// +! +! FTValueDictionary.f90 +! Created: February 6, 2013 8:54 AM +! By: David Kopriva +! !> !> The FTValueDictionary subclass of FTDictionary adds convenient methods !> to easily add fundamental (Real, integer,…) values to a dictionary. @@ -553,4 +558,4 @@ End Function getLogicalValueOrDefault ! !//////////////////////////////////////////////////////////////////////// ! - END Module FTValueDictionaryClass + END Module FTValueDictionaryClass \ No newline at end of file diff --git a/Solver/src/libs/ftobject/Hash.f90 b/Solver/src/libs/ftobject/Hash.f90 index 64ad3e421..735884e2d 100644 --- a/Solver/src/libs/ftobject/Hash.f90 +++ b/Solver/src/libs/ftobject/Hash.f90 @@ -1,6 +1,10 @@ ! !//////////////////////////////////////////////////////////////////////// ! +! hash +! Created: January 28, 2013 12:39 PM +! By: David Kopriva +! ! Code by Rich Townsend, 2005 ! See: https://groups.google.com/forum/#!topic/comp.lang.fortran/RWoHZFt39ng ! @@ -144,4 +148,4 @@ subroutine b3hs_hash_key_jenkins_mix_ end subroutine b3hs_hash_key_jenkins_mix_ -end function b3hs_hash_key_jenkins +end function b3hs_hash_key_jenkins \ No newline at end of file diff --git a/Solver/src/libs/ftobject/Makefile b/Solver/src/libs/ftobject/Makefile index ec160ea85..2ba8ace6a 100644 --- a/Solver/src/libs/ftobject/Makefile +++ b/Solver/src/libs/ftobject/Makefile @@ -78,4 +78,4 @@ clean: FORCE ############################################# # Dummy procedure to force a rule # ############################################# -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/libs/ftobject/TestSuiteManagerClass.f90 b/Solver/src/libs/ftobject/TestSuiteManagerClass.f90 index b9557b01c..55898a5e7 100644 --- a/Solver/src/libs/ftobject/TestSuiteManagerClass.f90 +++ b/Solver/src/libs/ftobject/TestSuiteManagerClass.f90 @@ -1,3 +1,15 @@ +! +!//////////////////////////////////////////////////////////////////////// +! +! @File: TestSuiteModule.f90 +! @Author: David Kopriva +! @Created: February 21, 2013 11:21 AM +! @Last revision date: Tue Sep 28 11:34:35 2021 +! @Last revision author: Wojciech Laskowski (wj.laskowski@upm.es) +! @Last revision commit: 0b8b49ef742bce3e02d3138ef5e95597b5d3a726 +! +!//////////////////////////////////////////////////////////////////////// +! !> The TestSuiteManager class defines methods to easily !> put together and run a suite of unit tests. !> @@ -262,4 +274,4 @@ SUBROUTINE performTests(self, numberOfFailedTestsRet) END SUBROUTINE performTests - END Module TestSuiteManagerClass + END Module TestSuiteManagerClass \ No newline at end of file diff --git a/Solver/src/libs/io/FileReading.f90 b/Solver/src/libs/io/FileReading.f90 index 721ef6df7..b3dc517a3 100644 --- a/Solver/src/libs/io/FileReading.f90 +++ b/Solver/src/libs/io/FileReading.f90 @@ -626,4 +626,4 @@ subroutine getRealArrayFromStringNoCommasMulitpleSpaces( line, array ) deallocate(auxline) end subroutine getRealArrayFromStringNoCommasMulitpleSpaces -end module FileReadingUtilities +end module FileReadingUtilities \ No newline at end of file diff --git a/Solver/src/libs/io/Headers.f90 b/Solver/src/libs/io/Headers.f90 index 907c11e1e..6c9dd79cd 100644 --- a/Solver/src/libs/io/Headers.f90 +++ b/Solver/src/libs/io/Headers.f90 @@ -160,4 +160,3 @@ END SUBROUTINE Ruler_Update END MODULE Headers - diff --git a/Solver/src/libs/io/Makefile b/Solver/src/libs/io/Makefile index 7d0b6f2fb..d1dffd8d5 100644 --- a/Solver/src/libs/io/Makefile +++ b/Solver/src/libs/io/Makefile @@ -65,4 +65,4 @@ clean: FORCE ############################################# # Dummy procedure to force a rule # ############################################# -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/libs/io/ParamfileRegions.f90 b/Solver/src/libs/io/ParamfileRegions.f90 index 3dd1be3d5..cbe966cfa 100644 --- a/Solver/src/libs/io/ParamfileRegions.f90 +++ b/Solver/src/libs/io/ParamfileRegions.f90 @@ -225,4 +225,4 @@ function getSquashedLine(line) result (squashed) end function getSquashedLine -end module ParamfileRegions +end module ParamfileRegions \ No newline at end of file diff --git a/Solver/src/libs/io/ProgressBar.f90 b/Solver/src/libs/io/ProgressBar.f90 index a8a403cdb..dde426e2b 100644 --- a/Solver/src/libs/io/ProgressBar.f90 +++ b/Solver/src/libs/io/ProgressBar.f90 @@ -149,4 +149,4 @@ subroutine printbar(this) end subroutine printbar -end module progressbarsmodule +end module progressbarsmodule \ No newline at end of file diff --git a/Solver/src/libs/io/ReadInputFile.f90 b/Solver/src/libs/io/ReadInputFile.f90 index ce4d8cf37..b04011947 100644 --- a/Solver/src/libs/io/ReadInputFile.f90 +++ b/Solver/src/libs/io/ReadInputFile.f90 @@ -276,4 +276,4 @@ subroutine WriteDefaultControlFile write(fid,'(A,A)') "!", "@dump" write(fid,'(A,A)') "!", "#end" - end subroutine WriteDefaultControlFile + end subroutine WriteDefaultControlFile \ No newline at end of file diff --git a/Solver/src/libs/io/SolutionFile.f90 b/Solver/src/libs/io/SolutionFile.f90 index 514c1d4c4..fad8701e1 100644 --- a/Solver/src/libs/io/SolutionFile.f90 +++ b/Solver/src/libs/io/SolutionFile.f90 @@ -39,7 +39,6 @@ module SolutionFile #endif private - public :: MESH_FILE, SOLUTION_FILE, SOLUTION_AND_GRADIENTS_FILE, STATS_FILE, ZONE_MESH_FILE public :: ZONE_SOLUTION_FILE, ZONE_SOLUTION_AND_DOT_FILE public :: SOLUTION_AND_SENSOR_FILE, SOLUTION_AND_GRADIENTS_AND_SENSOR_FILE @@ -65,9 +64,8 @@ module SolutionFile integer, parameter :: ZONE_MESH_FILE = 5 integer, parameter :: ZONE_SOLUTION_FILE = 6 integer, parameter :: ZONE_SOLUTION_AND_DOT_FILE = 7 - integer, parameter :: IBM_MESH = 8 - integer, parameter :: SOLUTION_AND_SENSOR_FILE = 9 - integer, parameter :: SOLUTION_AND_GRADIENTS_AND_SENSOR_FILE = 10 + integer, parameter :: SOLUTION_AND_SENSOR_FILE = 8 + integer, parameter :: SOLUTION_AND_GRADIENTS_AND_SENSOR_FILE = 9 integer, parameter :: SOLFILE_STR_LEN = 128 integer, parameter :: END_OF_FILE = 99 @@ -138,7 +136,6 @@ subroutine CreateNewSolutionFile(name, type_, nodes, no_of_elements, iter, time, case(ZONE_MESH_FILE) case(ZONE_SOLUTION_FILE) case(ZONE_SOLUTION_AND_DOT_FILE) - case(IBM_MESH) case(SOLUTION_AND_SENSOR_FILE) case(SOLUTION_AND_GRADIENTS_AND_SENSOR_FILE) case default @@ -179,7 +176,7 @@ subroutine CreateNewSolutionFile(name, type_, nodes, no_of_elements, iter, time, write(fID, POS=POS_REFS) refs ! ! Introduce the terminator indicator -! ---------------------------------- +! ---------------------------------- ! TODO: Write which physics are being used write(fID, POS=POS_TERMINATOR) BEGINNING_DATA ! ! Close the file @@ -626,4 +623,4 @@ subroutine getSolutionFileArrayDimensions(fid,N,pos) end subroutine getSolutionFileArrayDimensions -end module SolutionFile +end module SolutionFile \ No newline at end of file diff --git a/Solver/src/libs/io/autosave.f90 b/Solver/src/libs/io/autosave.f90 index ee0f8df4b..f1aebb0e9 100644 --- a/Solver/src/libs/io/autosave.f90 +++ b/Solver/src/libs/io/autosave.f90 @@ -163,4 +163,4 @@ logical function Autosave_Autosave(self,iter) end select end function Autosave_Autosave -end module AutosaveClass +end module AutosaveClass \ No newline at end of file diff --git a/Solver/src/libs/jacobian/CSRMatrixClass.f90 b/Solver/src/libs/jacobian/CSRMatrixClass.f90 index 1e67c2777..94bdce26f 100644 --- a/Solver/src/libs/jacobian/CSRMatrixClass.f90 +++ b/Solver/src/libs/jacobian/CSRMatrixClass.f90 @@ -1,27 +1,27 @@ MODULE CSRMatrixClass - USE SMConstants , only: RP, STD_OUT + USE SMConstants , only: RP, STD_OUT use GenericMatrixClass , only: Matrix_t, DenseBlock_t use LinkedListMatrixClass, only: LinkedListMatrix_t use JacobianDefinitions , only: JACEPS - use PartitionedMeshClass, only: mpi_partition + use PartitionedMeshClass, only: mpi_partition ! for MPI use MPI_Process_Info , only: MPI_Process use mkl_spblas #include "Includes.h" IMPLICIT NONE - + !----------------------------------------------------------------------------- TYPE, extends(Matrix_t) :: csrMat_t real(kind=RP), allocatable :: Values(:) ! Values of nonzero entries of matrix integer , allocatable :: Cols(:) ! Column indices that correspond to each value integer , allocatable :: Rows(:) ! Row indices (index of first value of each row) integer , allocatable :: Diag(:) ! Array containing position of the diagonal entry (handy for some calculations) - + integer, allocatable :: firstIdx(:,:) ! For each row, specifies the position of the beginning of each element column type(LinkedListMatrix_t) :: ListMatrix logical :: usingListMat =.FALSE. type(MKL_Global) :: mkl_options contains - + procedure :: construct => CSR_Construct procedure :: constructWithCSRArrays => CSR_constructWithCSRArrays procedure :: PreAllocate => CSR_PreAllocate @@ -29,7 +29,7 @@ MODULE CSRMatrixClass procedure :: ResetBlock => CSR_ResetBlock procedure :: assigndiag => CSR_AssignDiag procedure :: Visualize => CSR2Visualize - procedure :: destruct + procedure :: destruct procedure :: Shift => SetMatShift procedure :: SetColumn procedure :: AddToColumn => CSR_AddToColumn @@ -55,11 +55,11 @@ MODULE CSRMatrixClass procedure :: CreateMKL => CSR_CreateMKLMat procedure :: ILU0Factorization => CSR_ILU0Factorization END TYPE - !----------------------------------------------------------------------------- - + !----------------------------------------------------------------------------- + PRIVATE public :: csrMat_t, CSR_MatVecMul, CSR_MatMatMul, CSR_MatAdd, Matrix_t - + interface subroutine mkl_dcsrgemv(transa, m, a, ia, ja, x, y) use SMConstants @@ -70,7 +70,7 @@ subroutine mkl_dcsrgemv(transa, m, a, ia, ja, x, y) real(kind=RP) :: x(*), y(*) end subroutine mkl_dcsrgemv end interface - + ! !======== CONTAINS @@ -94,7 +94,7 @@ subroutine CSR_Construct(this,num_of_Rows,num_of_Cols,num_of_Blocks,num_of_Total integer :: istat integer :: NumCols !--------------------------------------------- - + if ( .not. present(num_of_Rows) ) then ERROR stop 'csrMat_t needs num_of_Rows' end if @@ -103,16 +103,16 @@ subroutine CSR_Construct(this,num_of_Rows,num_of_Cols,num_of_Blocks,num_of_Total else NumCols = num_of_Rows end if - + allocate( this % Rows(num_of_Rows+1),stat=istat ) if ( istat .NE. 0 ) write(*,*) 'CSR_construct: Memory allocation error' - + allocate( this % Diag(num_of_Rows), stat=istat ) if ( istat .NE. 0 ) write(*,*) 'CSR_construct: Memory allocation error' - + this % num_of_Rows = num_of_Rows this % num_of_Cols = NumCols !The matrix can be a rectangular matrix - + end subroutine CSR_Construct ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -130,41 +130,41 @@ subroutine CSR_constructWithCSRArrays(this,Rows,Cols,Values,num_of_Cols) !-local-variables----------------------------- integer :: istat !--------------------------------------------- - + this % num_of_Rows = size(Rows) - 1 - + if ( present(num_of_Cols) ) then this % num_of_Cols = num_of_Cols else this % num_of_Cols = this % num_of_Rows end if - + if ( maxval(Cols) > this % num_of_Cols) then print*, 'CSR_constructWithCSRArrays :: WARNING: Increasing num_of_Cols' this % num_of_Cols = maxval(Cols) end if - + ! Memory allocation ! ----------------- - + safedeallocate(this % Rows) ; allocate( this % Rows ( size(Rows) ), stat=istat ) if ( istat .NE. 0 ) write(*,*) 'CSR_construct: Memory allocation error' - + safedeallocate(this % Diag) ; allocate( this % Diag (this % num_of_Rows), stat=istat ) if ( istat .NE. 0 ) write(*,*) 'CSR_construct: Memory allocation error' - + safedeallocate(this % Cols) ; allocate( this % Cols ( size(Cols) ), stat=istat ) if ( istat .NE. 0 ) write(*,*) 'CSR_construct: Memory allocation error' - + safedeallocate(this % Values) ; allocate( this % Values( size(Values) ), stat=istat ) if ( istat .NE. 0 ) write(*,*) 'CSR_construct: Memory allocation error' - + this % Rows = Rows this % Cols = Cols this % Values = Values - + call this % assigndiag() - + end subroutine CSR_constructWithCSRArrays ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -174,23 +174,23 @@ subroutine CSR_PreAllocate(this,nnz,nnzs) !----------------------------------- CLASS(csrMat_t), INTENT(INOUT) :: this !<> Matrix to be preallocated integer, optional, intent(in) :: nnz !< Num of nonzero entries all rows - integer, optional, intent(in) :: nnzs(:) !< Num of nonzero entries in every row + integer, optional, intent(in) :: nnzs(:) !< Num of nonzero entries in every row !----------------------------------- integer :: i,k,istat integer :: total_nnz !----------------------------------- - + if (present(nnz)) then ! ! Constant number of non-zeros per row ! ------------------------------------ - + total_nnz = this % num_of_Rows * nnz elseif (present(nnzs)) then ! ! Number of non-zeros different in every row ! ------------------------------------------ - + if (size(nnzs) /= this % num_of_Rows) ERROR stop ':: CSRMatrix: Not consistent nnzs' total_nnz = sum(nnzs) else @@ -198,21 +198,21 @@ subroutine CSR_PreAllocate(this,nnz,nnzs) ! Unknown number of nonzeros per row ! -> Preallocating with LinkedListMatrix ! -------------------------------------- - + this % usingListMat = .TRUE. call this % ListMatrix % construct(num_of_Rows = this % num_of_Rows) - + return end if - - IF(total_nnz < 1) STOP ':: Invalid nnz' - + + IF(total_nnz < 1) STOP ':: Invalid nnz' + safedeallocate(this % Cols) ; ALLOCATE( this % Cols(total_nnz),STAT=istat ) IF ( istat .NE. 0 ) WRITE(*,*) 'CSR_construct: Memory allocation error' - + safedeallocate(this % Values) ; ALLOCATE( this % Values(total_nnz), STAT=istat ) IF ( istat .NE. 0 ) WRITE(*,*) 'CSR_construct: Memory allocation error' - + this % Rows(1) = 1 if (present(nnz)) then DO i=2, this % num_of_Rows + 1 @@ -223,7 +223,7 @@ subroutine CSR_PreAllocate(this,nnz,nnzs) this % Rows(i) = this % Rows(i-1) + nnzs(i-1) END DO end if - + end subroutine CSR_PreAllocate subroutine CSR_PreAllocateWithStructure(self, nnz, rows, cols, diag) @@ -237,7 +237,7 @@ subroutine CSR_PreAllocateWithStructure(self, nnz, rows, cols, diag) ! Local variables ! --------------- ! - safedeallocate(self % Cols) ; allocate(self % Cols(nnz)) + safedeallocate(self % Cols) ; allocate(self % Cols(nnz)) safedeallocate(self % Values) ; allocate(self % Values(nnz)) self % Rows = rows @@ -257,13 +257,13 @@ subroutine CSR_Reset(this, ForceDiagonal) !----------------------------------- logical :: mustForceDiagonal !----------------------------------- - + if ( present(ForceDiagonal) ) then mustForceDiagonal = ForceDiagonal else mustForceDiagonal = .FALSE. end if - + if (this % usingListMat) then call this % ListMatrix % Reset(ForceDiagonal = mustForceDiagonal) else @@ -285,13 +285,13 @@ subroutine CSR_ResetBlock(this, iBlock, jBlock ) !--------------------------------------------- integer :: row, col, pos !--------------------------------------------- - + if ( (.not. allocated(this % BlockIdx)) .or. (.not. allocated(this % BlockSizes)) ) then write(STD_OUT,*) 'CSRMatrixClass :: Error ' write(STD_OUT,*) ' :: CSR_SetBlockEntry only available after CSR_SpecifyBlockInfo has been called' stop 99 end if - + if (this % usingListMat) then do row = this % BlockIdx(iBlock), this % BlockIdx(iBlock) + this % BlockSizes(iBlock) - 1 do col = this % BlockIdx(jBlock), this % BlockIdx(jBlock) + this % BlockSizes(jBlock) - 1 @@ -299,19 +299,29 @@ subroutine CSR_ResetBlock(this, iBlock, jBlock ) end do end do else + ! TODO: This can be improved. do row = this % BlockIdx(iBlock), this % BlockIdx(iBlock) + this % BlockSizes(iBlock) - 1 do col = this % BlockIdx(jBlock), this % BlockIdx(jBlock) + this % BlockSizes(jBlock) - 1 - + pos = CSR_Search (this,row,col) if (pos == 0) cycle - + this % Values(pos) = 0._RP - + end do end do end if - - end subroutine CSR_ResetBlock + + ! TODO: Do thisssss!!! +!~ if (this % usingListMat) then +!~ call this % ListMatrix % Reset() +!~ else +!~ this % Cols = 0 +!~ this % Diag = 0 +!~ this % Values = 0._RP +!~ end if + + end subroutine CSR_ResetBlock ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! @@ -335,42 +345,42 @@ SUBROUTINE CSR_AssignDiag(A) end if end do end do - + !---------------------------------------------------------------------------------- END SUBROUTINE CSR_AssignDiag !---------------------------------------------------------------------------------- - + !------------------------------------------------------------------------------ SUBROUTINE SetColumn(this, nvalues, irow, icol, values ) ! Adds values to (part of) a column of a csr matrix !------------------------------------------------------------------------------ IMPLICIT NONE - !------------------------------------------------------------------------------ + !------------------------------------------------------------------------------ CLASS(csrMat_t), INTENT(INOUT) :: this !<> Global matrix integer , INTENT(IN) :: nvalues integer , INTENT(IN) :: irow(1:) !< Different positions of Column integer , INTENT(IN) :: icol !< Number of Row/Column REAL(KIND=RP) , INTENT(IN) :: values(:) !< Values to be added to global matrivx¿x + !------------------------------------------------------------------------------ + integer :: i !,k,l,c, !------------------------------------------------------------------------------ - integer :: i - !------------------------------------------------------------------------------ - + IF (nvalues .NE. SIZE(Values)) THEN WRITE (*,*) 'CSR_AddToCol: Dimension error (Values-RowIndexes)' STOP END IF - + IF ( icol <= 0 ) THEN WRITE (*,*) 'CSR_AddToCol: icol error' STOP END IF - + if (this % usingListMat) then call this % ListMatrix % SetColumn ( nvalues, irow, icol, values ) else DO i=1,nvalues IF ( irow(i) <= 0 ) CYCLE - + CALL this % SetEntry(irow(i),icol,values(i)) END DO end if @@ -384,36 +394,36 @@ END SUBROUTINE SetColumn ! ------------------------------------------------- SUBROUTINE CSR_AddToColumn(this, nvalues, irow, icol, values ) IMPLICIT NONE - !------------------------------------------------------------------------------ + !------------------------------------------------------------------------------ CLASS(csrMat_t), INTENT(INOUT) :: this !<> Global matrix integer , INTENT(IN) :: nvalues integer , INTENT(IN) :: irow(1:) !< Different positions of Column integer , INTENT(IN) :: icol !< Number of Row/Column REAL(KIND=RP) , INTENT(IN) :: values(:) !< Values to be added to global matrivx¿x + !------------------------------------------------------------------------------ + integer :: i !,k,l,c, !------------------------------------------------------------------------------ - integer :: i - !------------------------------------------------------------------------------ - + IF (nvalues .NE. SIZE(Values)) THEN WRITE (*,*) 'CSR_AddToCol: Dimension error (Values-RowIndexes)' STOP END IF - + IF ( icol <= 0 ) THEN WRITE (*,*) 'CSR_AddToCol: icol error' STOP END IF - + if (this % usingListMat) then call this % ListMatrix % AddToColumn ( nvalues, irow, icol, values ) else DO i=1,nvalues IF ( irow(i) <= 0 ) CYCLE - + CALL this % SetEntry(irow(i),icol,values(i)) END DO end if - + END SUBROUTINE CSR_AddToColumn ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -431,21 +441,21 @@ subroutine CSR_SetEntry(this, row, col, value ) !-local-variables----------------------------- integer :: k !--------------------------------------------- - + if ( (row > this % num_of_Rows) .or. (col > this % num_of_Cols) ) then write (*,*) 'CSR_SetEntry: Dimension error. [row,col]=', row, col stop end if - + if (abs(value) < JACEPS) return - + if (this % usingListMat) then call this % ListMatrix % SetEntry(row,col,value) else k = CSR_Search(this,row,col) this % Values(k) = value end if - + end subroutine CSR_SetEntry ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -463,21 +473,21 @@ subroutine CSR_AddToEntry(this, row, col, value ) !-local-variables----------------------------- integer :: k !--------------------------------------------- - + if ( (row > this % num_of_Rows) .or. (col > this % num_of_Cols) ) then write (*,*) 'CSR_SetEntry: Dimension error' stop end if - + if (abs(value) < JACEPS) return - + if (this % usingListMat) then call this % ListMatrix % AddToEntry(row,col,value) else k = CSR_Search(this,row,col) this % Values(k) = this % Values(k) + value end if - + end subroutine CSR_AddToEntry ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -495,19 +505,19 @@ subroutine CSR_ForceAddToEntry(this, row, col, value ) !-local-variables----------------------------- integer :: k !--------------------------------------------- - + if ( (row > this % num_of_Rows) .or. (col > this % num_of_Cols) ) then write (*,*) 'CSR_SetEntry: Dimension error' stop end if - + if (this % usingListMat) then call this % ListMatrix % ForceAddToEntry(row,col,value) else k = CSR_Search(this,row,col) this % Values(k) = this % Values(k) + value end if - + end subroutine CSR_ForceAddToEntry ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -518,12 +528,12 @@ FUNCTION CSR_Search (A,i,j) RESULT(k) ! (supposing that A is ordered) !------------------------------------------------------------------------------ IMPLICIT NONE - !------------------------------------------------------------------------------ + !------------------------------------------------------------------------------ TYPE(csrMat_t), INTENT(IN) :: A !< Matrix to be searched integer , INTENT(IN) :: i, j !< Position to bi searched integer :: k !> Position in A%Values of A(i,j) !------------------------------------------------------------ - + IF(i .GT. A % num_of_Rows .OR. j .GT. A % num_of_Cols ) THEN WRITE (*,*) 'CSR_Search: Dimension error' STOP @@ -539,7 +549,7 @@ FUNCTION CSR_Search (A,i,j) RESULT(k) !------------------------------------------------------------------------------ END FUNCTION CSR_Search !------------------------------------------------------------------------------ - + !---------------------------------------------------------------------------------- SUBROUTINE CSR2Visualize(this,FileName,FirstRow) ! Creates a file <> with the entries of the csr matrix @@ -554,33 +564,33 @@ SUBROUTINE CSR2Visualize(this,FileName,FirstRow) integer :: n, nnz, i, fd LOGICAL :: First !------------------------------------------ - + IF (.NOT. PRESENT(FirstRow)) First = .TRUE. - + n = this % num_of_Rows nnz = SIZE(this % Values) - + OPEN(newunit=fd,file=FileName) IF (First) WRITE(fd,'(I0,X,I0)') n, nnz - + DO i=1, n + 1 WRITE(fd,'(I0)') this % Rows(i) END DO - + DO i=1, nnz WRITE(fd,'(I0)') this % Cols(i) END DO - + DO i=1, nnz WRITE(fd,*) this % Values(i) END DO - + ClOSE(fd) - + !---------------------------------------------------------------------------------- END SUBROUTINE CSR2Visualize !---------------------------------------------------------------------------------- - + !---------------------------------------------------------------------------------- SUBROUTINE destruct(this) !---------------------------------------------------------------------------------- @@ -598,7 +608,7 @@ SUBROUTINE destruct(this) !---------------------------------------------------------------------------------- END SUBROUTINE destruct !---------------------------------------------------------------------------------- - + !---------------------------------------------------------------------------------- SUBROUTINE SetMatShift(this,shiftval) !---------------------------------------------------------------------------------- @@ -609,13 +619,13 @@ SUBROUTINE SetMatShift(this,shiftval) !------------------------------------------ integer :: i !------------------------------------------ - + if ( this % usingListMat ) then call this % ListMatrix % shift(shiftval) else DO i=1, this % num_of_Rows this % Values(this % Diag(i)) = this % Values(this % Diag(i)) + shiftval - END DO + END DO end if !---------------------------------------------------------------------------------- END SUBROUTINE SetMatShift @@ -647,23 +657,23 @@ subroutine CSR_MatAdd(A,B,Cmat,Factor) ! Perform MatAdd ! -------------- allocate( ic(A % num_of_Rows+1), jc(A % num_of_Rows+1), c(A % num_of_Rows+1) ) ! For some reason, mkl_dcsradd needs jc and c to be allocated, even with request 1 - 2 - + call mkl_dcsradd ('n', 1, 4, A % num_of_Rows, A % num_of_Cols, & A % Values, A % Cols, A % Rows, Factor, & B % Values, B % Cols, B % Rows, c, jc, ic, 0, info) - + deallocate(jc,c) allocate( c(ic(A % num_of_Rows+1) - 1), jc(ic(A % num_of_Rows+1) - 1) ) - + call mkl_dcsradd ('n', 2, 4, A % num_of_Rows, A % num_of_Cols, & A % Values, A % Cols, A % Rows, Factor, & B % Values, B % Cols, B % Rows, c, jc, ic, 0, info) - + if (info /= 0) then print*, 'ERROR :: CSR_MatAdd stopped at line', info stop end if - + call Cmat % constructWithCSRArrays (ic,jc,c, A % num_of_Cols) ! ! Finish extra check @@ -707,7 +717,7 @@ subroutine CSR_MatMatMul(A,B,Cmat,trans) write(STD_OUT,'(A,I0,A,I0,A,I0,A,I0,A)') 'CSR_MatMatMul :: ERROR: Matrix dimensions mismatch: A(', A % num_of_Rows,',', A % num_Of_Cols, ') ; B(', B % num_Of_Rows, ',', B % num_Of_Cols,')' stop end if - + if ( present(trans) ) then if (trans) then transInfo = 't' @@ -717,27 +727,27 @@ subroutine CSR_MatMatMul(A,B,Cmat,trans) else transInfo = 'n' end if - + allocate( ic(A % num_of_Rows+1), jc(A % num_of_Rows+1), c(A % num_of_Rows+1) ) ! For some reason, mkl_dcsrmultcsr needs jc and c to be allocated, even with request 1 - 2 - + call mkl_dcsrmultcsr (transInfo, 1, 8, A % num_of_Rows, A % num_of_Cols, B % num_of_Cols, & A % Values, A % Cols, A % Rows, & B % Values, B % Cols, B % Rows, & c, jc, ic, 0, info) - + deallocate(jc,c) allocate( c(ic(A % num_of_Rows+1) - 1), jc(ic(A % num_of_Rows+1) - 1) ) - + call mkl_dcsrmultcsr (transInfo, 2, 8, A % num_of_Rows, A % num_of_Cols, B % num_of_Cols, & A % Values, A % Cols, A % Rows, & B % Values, B % Cols, B % Rows, & c, jc, ic, 0, info) - + if (info /= 0) then print*, 'ERROR :: mkl_dcsrmultcsr stopped at line', info stop end if - + call Cmat % constructWithCSRArrays (ic,jc,c, B % num_of_Cols) ! ! Finish extra check @@ -763,17 +773,17 @@ function CSR_MatVecMul( A,u, trans) result(v) class(csrMat_t) , intent(inout) :: A !< Structure holding matrix real(kind=RP) , intent(in) :: u(A % num_of_Cols) !< Vector to be multiplied logical, optional, intent(in) :: trans !< A matrix is transposed? - real(kind=RP) :: v(A % num_of_Rows) !> Result vector + real(kind=RP) :: v(A % num_of_Rows) !> Result vector !------------------------------------------------------------------------------ integer :: i,j REAL(KIND=RP) :: rsum character(len=1) :: transInfo !------------------------------------------------------------------------------ - + IF (A % num_of_Cols .NE. SIZE(U) .OR. A % num_of_Rows .NE. SIZE(v)) THEN STOP 'CSR_MatVecMul: Error - u dimensions mismatch' END IF - + if ( present(trans) ) then if (trans) then transInfo = 't' @@ -783,7 +793,7 @@ function CSR_MatVecMul( A,u, trans) result(v) else transInfo = 'n' end if - + #ifdef HAS_MKL CALL mkl_dcsrgemv(transInfo, A % num_of_Rows, A % Values, A % Rows, A % Cols, u, v) #else @@ -801,9 +811,9 @@ function CSR_MatVecMul( A,u, trans) result(v) !------------------------------------------------------------------------------ END FUNCTION !------------------------------------------------------------------------------ - + !---------------------------------------------------------------------------------- - SUBROUTINE CSR2Dense(A,Mat) + SUBROUTINE CSR2Dense(A,Mat) ! Transforms a matrix of type Matrix_t into a common real(dp) matrix !---------------------------------------------------------------------------------- CLASS(csrMat_t) , INTENT(IN) :: A !< CSR matric @@ -811,10 +821,10 @@ SUBROUTINE CSR2Dense(A,Mat) !------------------------------------------------ integer :: i, k ! Counters !------------------------------------------------ - + IF (ALLOCATED(Mat)) DEALLOCATE(Mat) ALLOCATE(Mat(A%num_of_Rows,A%num_of_Cols)) - + Mat = 0.d0 DO i=1, A % num_of_Rows DO k=A % Rows(i), A % Rows(i+1)-1 @@ -824,37 +834,37 @@ SUBROUTINE CSR2Dense(A,Mat) !---------------------------------------------------------------------------------- END SUBROUTINE CSR2Dense !---------------------------------------------------------------------------------- - + !------------------------------------------------------------------------------ FUNCTION CSR_GetBlock( A,Num,N) RESULT(Mat) ! Get a block of the diagonal of matrix A and store it as a dense matrix ! IMPORTANT: The CSR !------------------------------------------------------------------------------ IMPLICIT NONE - !------------------------------------------------------------------------------ + !------------------------------------------------------------------------------ CLASS(csrMat_t) :: A !< Matrix to be read integer, INTENT(IN) :: Num !< Number of diagonal element integer, INTENT(IN) :: N !< Size of block REAL(KIND=RP) :: Mat(N,N) !> Value of the matrix element - !------------------------------------------------------------------------------ + !------------------------------------------------------------------------------ integer :: RC0 ! Index of first row/column of block in global sparse matrix integer :: RCf ! Index of last row/column of block in global sparse matrix integer :: i, j ! Row/Column index of output matrix integer :: ii, jj ! Row/Column index in global sparse matrix integer :: k, l ! Variables containing positions in sparse matrix arrays !------------------------------------------------------------------------------ - - RC0 = A % BlockIdx(Num) + + RC0 = A % BlockIdx(Num) RCf = RC0 + N - 1 - + i=0 - + Mat = 0._RP - + ! Loop over the rows where the desired block is contained DO ii = RC0, RCf i = i+1 - + ! Search first nonzero of this row in block k = 0 DO jj = RC0, RCf @@ -862,16 +872,16 @@ FUNCTION CSR_GetBlock( A,Num,N) RESULT(Mat) IF (k /= 0) EXIT END DO IF (k == 0) CYCLE - + ! Loop over the nonzeros following the first of the row to get all the columns DO l = k, A % Rows(ii+1) - 1 IF (A % Cols(l) > RCf) EXIT - + j = A % Cols(l) - RC0 + 1 Mat(i,j) = A % Values(l) END DO END DO - + !------------------------------------------------------------------------------ END FUNCTION CSR_GetBlock ! @@ -882,7 +892,7 @@ subroutine CSR_Assembly(this) !-arguments----------------------------------- class(csrMat_t), intent(inout) :: this !--------------------------------------------- - + if ( this % usingListMat ) then call this % ListMatrix % getCSRarrays(this % Values, this % Cols, this % Rows) call this % AssignDiag() @@ -900,7 +910,7 @@ subroutine CSR_SpecifyBlockInfo(this,BlockIdx,BlockSize) integer , intent(in) :: BlockIdx(:) integer , intent(in) :: BlockSize(:) !--------------------------------------------- - + safedeallocate(this % BlockIdx) ; allocate (this % BlockIdx (size(BlockIdx )) ) safedeallocate(this % BlockSizes) ; allocate (this % BlockSizes(size(BlockSize)) ) this % BlockIdx = BlockIdx @@ -922,18 +932,18 @@ subroutine CSR_SetBlockEntry(this, iBlock, jBlock, i, j, value ) !-local-variables----------------------------- integer :: row, col !--------------------------------------------- - + if (.not. allocated(this % BlockIdx)) then write(STD_OUT,*) 'CSRMatrixClass :: Error ' write(STD_OUT,*) ' :: CSR_SetBlockEntry only available after CSR_SpecifyBlockInfo has been called' stop 99 end if - + row = this % BlockIdx(iBlock) + i - 1 col = this % BlockIdx(jBlock) + j - 1 - + call this % SetEntry(row, col, value) - + end subroutine CSR_SetBlockEntry ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -953,13 +963,13 @@ subroutine CSR_AddToBlockEntry(this, iBlock, jBlock, i, j, value ) integer :: row, col ! integer :: process_Rank, ierr !--------------------------------------------- - + if (.not. allocated(this % BlockIdx)) then write(STD_OUT,*) 'CSRMatrixClass :: Error ' write(STD_OUT,*) ' :: CSR_AddToBlockEntry only available after CSR_SpecifyBlockInfo has been called' stop 99 end if - + ! row = this % BlockIdx(iBlock) + i - 1 ! col = this % BlockIdx(jBlock) + j - 1 row = this % BlockIdx(mpi_partition % global2localeID(iBlock)) + i - 1 @@ -968,9 +978,9 @@ subroutine CSR_AddToBlockEntry(this, iBlock, jBlock, i, j, value ) ! call MPI_COMM_RANK(MPI_COMM_WORLD, process_Rank, ierr) ! print *, process_Rank, "row = ", row, "/" ,this % num_of_Rows ! print *, process_Rank, "col = ", col, "/" ,this % num_of_Cols - + call this % AddToEntry(row, col, value) - + end subroutine CSR_AddToBlockEntry ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -988,18 +998,18 @@ subroutine CSR_ForceAddToBlockEntry(this, iBlock, jBlock, i, j, value ) !-local-variables----------------------------- integer :: row, col !--------------------------------------------- - + if (.not. allocated(this % BlockIdx)) then write(STD_OUT,*) 'CSRMatrixClass :: Error ' write(STD_OUT,*) ' :: CSR_AddToBlockEntry only available after CSR_SpecifyBlockInfo has been called' stop 99 end if - + row = this % BlockIdx(iBlock) + i - 1 col = this % BlockIdx(jBlock) + j - 1 - + call this % ForceAddToEntry(row, col, value) - + end subroutine CSR_ForceAddToBlockEntry ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -1030,7 +1040,7 @@ subroutine CSR_ConstructFromDiagBlocks(this, num_of_Blocks, Blocks, BlockIdx, Bl ! ---------------- num_of_Rows = sum(BlockSizes) nnz_0 = sum(BlockSizes**2) - + ! ! Allocations ! ----------- @@ -1040,15 +1050,15 @@ subroutine CSR_ConstructFromDiagBlocks(this, num_of_Blocks, Blocks, BlockIdx, Bl else differentBlockSizes = .TRUE. end if - + allocate ( Rows(num_of_Rows+1) ) allocate ( Cols(nnz_0), Vals(nnz_0) ) - + ! ! Fill CSR matrix ! --------------- Rows(1) = 1 - + i=1 k=1 j_offset = 0 @@ -1056,12 +1066,12 @@ subroutine CSR_ConstructFromDiagBlocks(this, num_of_Blocks, Blocks, BlockIdx, Bl do bID = 1, num_of_Blocks if (differentBlockSizes) allocate ( BlockTrans ( BlockSizes(bID),BlockSizes(bID) ) ) BlockTrans = transpose(Blocks(bID) % Matrix) - + do jj = 1, BlockSizes(bID) rowsize = 0 - do ii = 1, BlockSizes(bID) + do ii = 1, BlockSizes(bID) if (abs(BlockTrans(ii,jj)) < JACEPS) cycle - + Vals(k) = BlockTrans(ii,jj) Cols(k) = ii + j_offset k = k + 1 @@ -1071,14 +1081,14 @@ subroutine CSR_ConstructFromDiagBlocks(this, num_of_Blocks, Blocks, BlockIdx, Bl Rows(i+1) = Rows(i) + rowsize i = i + 1 end do - + j_offset = j_offset + BlockSizes(bID) - + if (differentBlockSizes) deallocate(BlockTrans) end do - + call this % constructWithCSRArrays( Rows, Cols(1:nnz), Vals(1:nnz), this % num_of_Rows ) - + end subroutine CSR_ConstructFromDiagBlocks ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -1174,7 +1184,7 @@ subroutine CSR_BackwardSubstitution(this, y, x, n, alpha) j = j + 1 if ( rows(i+1)-j .lt. 1) then exit - end if + end if end do x(i) = s / vals(rows(i+1)-j+1) end do @@ -1198,15 +1208,15 @@ function CSR_LowerTriangularMatVecMul( A,u, trans, tri_shift) result(v) class(csrMat_t) , intent(inout) :: A !< Structure holding matrix real(kind=RP) , intent(in) :: u(A % num_of_Cols) !< Vector to be multiplied logical, optional, intent(in) :: trans !< A matrix is transposed? - real(kind=RP) :: v(A % num_of_Rows) !> Result vector + real(kind=RP) :: v(A % num_of_Rows) !> Result vector integer , intent(in) :: tri_shift !------------------------------------------------------------------------------ integer :: i,j REAL(KIND=RP) :: rsum !------------------------------------------------------------------------------ - + if (trans) ERROR stop "CSR_LowerTriangularMatVecMul :: A^T x not implemented." - + !$omp parallel do private(j,rsum) DO i=1,A % num_of_Rows rsum = 0.0d0 @@ -1232,16 +1242,16 @@ function CSR_UpperTriangularMatVecMul( A,u, trans, tri_shift) result(v) class(csrMat_t) , intent(inout) :: A !< Structure holding matrix real(kind=RP) , intent(in) :: u(A % num_of_Cols) !< Vector to be multiplied logical, optional, intent(in) :: trans !< A matrix is transposed? - real(kind=RP) :: v(A % num_of_Rows) !> Result vector + real(kind=RP) :: v(A % num_of_Rows) !> Result vector integer , intent(in) :: tri_shift !------------------------------------------------------------------------------ integer :: i,j REAL(KIND=RP) :: rsum character(len=1) :: transInfo !------------------------------------------------------------------------------ - + if (trans) ERROR stop "CSR_UpperTriangularMatVecMul :: A^T x not implemented." - + !$omp parallel do private(j,rsum) DO i=1,A % num_of_Rows rsum = 0.0d0 @@ -1291,8 +1301,8 @@ subroutine CSR_ILU0Factorization( A ) !------------------------------------------------------------------------------ real(kind=rp), allocatable :: bilu0(:) ! tmparray containing factorised matrix real(kind=rp) :: dpar(128) - integer :: ipar(128) - integer :: ierr + integer :: ipar(128) + integer :: ierr !------------------------------------------------------------------------------ #ifdef HAS_MKL @@ -1320,4 +1330,4 @@ end subroutine CSR_ILU0Factorization ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! -END MODULE CSRMatrixClass +END MODULE CSRMatrixClass \ No newline at end of file diff --git a/Solver/src/libs/jacobian/ColorsClass.f90 b/Solver/src/libs/jacobian/ColorsClass.f90 index ba82923e3..318d8777b 100644 --- a/Solver/src/libs/jacobian/ColorsClass.f90 +++ b/Solver/src/libs/jacobian/ColorsClass.f90 @@ -1,17 +1,15 @@ -! !////////////////////////////////////////////////////// ! ! Module for computing element colorings in order to generate the numerical Jacobian ! !//////////////////////////////////////////////////////////////////////// -! MODULE ColorsClass use HexMeshClass, only: HexMesh, Neighbor_t, NUM_OF_NEIGHBORS implicit none - + private public Colors_t - + type Colors_t integer :: num_of_colors ! number of colors integer, allocatable :: elmnts(:) ! color ordered elements @@ -20,10 +18,10 @@ MODULE ColorsClass contains procedure :: construct => Colors_Contruct !construct(nbr) procedure :: destruct => Colors_Destruct - procedure :: info => getcolorsinfo ! prints coloring info + procedure :: info => getcolorsinfo ! prints coloring info procedure :: export2Tec => ExportColors2Tec end type Colors_t - + contains subroutine Colors_Contruct(this, nbr,depth) implicit none @@ -49,38 +47,39 @@ subroutine Colors_Contruct(this, nbr,depth) allcolored = .FALSE. maxcolor = 0 ncolored = 0 - + ! Create colors and assign elements ! ********************************* - + do while (.NOT. allcolored) used = .FALSE. maxcolor = maxcolor + 1 do i = 1, ntotal - + ! Check if current element is colored ! ----------------------------------- if ( colored(i) ) cycle - -! Check if its neighbors(...depth times) were used in this color + +! Check if its neighbors(...depth times) were used in this color +! -------------------------------------------------------------- used(0) = .FALSE. !boundary neighbour is empty if (neighbors_were_used(used,nbr,i,depth)) cycle - + ! Mark neighbors as used ! ---------------------- call mark_neighbors_as_used(used,nbr,i,depth) - + ! Color this element ! ------------------ colored(i) = .TRUE. colors(i) = maxcolor ncolored = ncolored + 1 if (ncolored == ntotal) allcolored = .TRUE. - + end do end do - - + + this % num_of_colors = maxcolor ALLOCATE(this%elmnts(ntotal)) ALLOCATE(this%bounds(this % num_of_colors + 1)) @@ -96,11 +95,11 @@ subroutine Colors_Contruct(this, nbr,depth) this%elmnts(idx) = j counter = counter + 1 idx = idx + 1 - end if + end if end do end do this%bounds(i)= idx - + end subroutine Colors_Contruct ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -108,13 +107,13 @@ end subroutine Colors_Contruct subroutine Colors_Destruct(this) implicit none class(Colors_t), intent(out) :: this - + this % num_of_colors = 0 this % ntotal = 0 - + deallocate (this % elmnts) deallocate (this % bounds) - + end subroutine Colors_Destruct ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -122,9 +121,9 @@ end subroutine Colors_Destruct SUBROUTINE getcolorsinfo(this) CLASS(Colors_t) :: this integer :: i - + WRITE(*,'(A13,I2)') "# of colors: ", this % num_of_colors - WRITE(*,*) "Element list:" + WRITE(*,*) "Element list:" WRITE(*,'(*(I5,1X))') (this%elmnts(i), i = 1,this%ntotal) WRITE(*,*) "New color indexes" WRITE(*,'(*(I5,1X))') (this%bounds(i), i= 1,this % num_of_colors + 1) @@ -138,31 +137,31 @@ SUBROUTINE ExportColors2Tec(this,mesh,filename) CLASS(Colors_t) :: this TYPE(HexMesh) :: mesh character(len=*), intent(in) :: filename - + !------------------------------------------------------- integer :: fd, Nelem, id, N(3), i, j, k integer, DIMENSION(:), allocatable :: colors !------------------------------------------------------- open(newunit = fd, file=trim(filename), action='WRITE') - + Nelem = SIZE(mesh % elements) - + !! Create colors array ALLOCATE(colors(Nelem)) - + DO i=1, this % num_of_colors DO j=this % bounds(i), this % bounds(i+1)-1 colors(this % elmnts(j)) = i end do end do - + write(fd,*) 'TITLE = "Colors of mesh NSLITE3D"' write(fd,*) 'VARIABLES = "X","Y","Z","Color" ' - + DO id = 1, Nelem N = mesh % elements(id) % Nxyz WRITE(fd,*) 'ZONE I=', N(1)+1, ",J=",N(2)+1, ",K=",N(3)+1,", F=POINT" - + DO k = 0, N(3) DO j= 0, N(2) DO i = 0, N(1) @@ -174,9 +173,9 @@ SUBROUTINE ExportColors2Tec(this,mesh,filename) end do end do end do - + close(fd) - + END SUBROUTINE ExportColors2Tec ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -186,7 +185,7 @@ END SUBROUTINE ExportColors2Tec !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! ! ------------------------------------------------------------------- -! Check if any of the neighbors [(depth-1) * "of neighbors"] was used +! Check if any of the neighbors [(depth-1) * "of neighbors"] was used ! ------------------------------------------------------------------- recursive function neighbors_were_used(used,nbr,eID,depth) result (were_used) implicit none @@ -199,28 +198,28 @@ recursive function neighbors_were_used(used,nbr,eID,depth) result (were_used) !-local-variables------------------------------------------- integer :: n_eID !----------------------------------------------------------- - + if (eID == 0) then were_used = .FALSE. return end if - + were_used = any ( used(nbr(eID) % elmnt) ) if (were_used) return - + if (depth > 1) then do n_eID = 1, NUM_OF_NEIGHBORS were_used = neighbors_were_used(used, nbr, nbr(eID) % elmnt(n_eID), depth-1) if (were_used) return end do end if - + end function neighbors_were_used ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! ! ----------------------------------------------------------- -! Mark all the neighbors [(depth-1) * "of neighbors"] as used +! Mark all the neighbors [(depth-1) * "of neighbors"] as used ! ----------------------------------------------------------- recursive subroutine mark_neighbors_as_used(used,nbr,eID,depth) implicit none @@ -232,16 +231,16 @@ recursive subroutine mark_neighbors_as_used(used,nbr,eID,depth) !-local-variables------------------------------------------- integer :: n_eID !----------------------------------------------------------- - + if (eID == 0) return used (nbr(eID)%elmnt) = .TRUE. - + if (depth > 1) then do n_eID = 1, NUM_OF_NEIGHBORS call mark_neighbors_as_used (used, nbr, nbr(eID)%elmnt(n_eID), depth-1) end do end if - + end subroutine mark_neighbors_as_used - -END MODULE ColorsClass + +END MODULE ColorsClass \ No newline at end of file diff --git a/Solver/src/libs/jacobian/DenseBlockDiagonalMatrixClass.f90 b/Solver/src/libs/jacobian/DenseBlockDiagonalMatrixClass.f90 index e3746d01c..bfed31742 100644 --- a/Solver/src/libs/jacobian/DenseBlockDiagonalMatrixClass.f90 +++ b/Solver/src/libs/jacobian/DenseBlockDiagonalMatrixClass.f90 @@ -5,20 +5,19 @@ ! -> The matrix is not dense, the block is! ! !//////////////////////////////////////////////////////////////////////// -! module DenseBlockDiagonalMatrixClass use SMConstants use GenericMatrixClass , only: Matrix_t, DenseBlock_t use CSRMatrixClass , only: csrMat_t use JacobianDefinitions , only: JACEPS - use PartitionedMeshClass, only: mpi_partition + use PartitionedMeshClass, only: mpi_partition ! for MPI use MPI_Process_Info , only: MPI_Process #include "Includes.h" implicit none - + private public DenseBlockDiagMatrix_t, Matrix_t - + type, extends(Matrix_t) :: DenseBlockDiagMatrix_t type(DenseBlock_t), allocatable :: Blocks(:) ! Array containing each block in a dense matrix contains @@ -56,16 +55,16 @@ subroutine construct(this,num_of_Rows,num_of_Cols,num_of_Blocks,num_of_TotalRows integer, optional, intent(in) :: num_of_TotalRows logical, optional, intent(in) :: WithMPI !--------------------------------------------- - + if ( .not. present(num_of_Blocks) ) then ERROR stop 'DenseBlockDiagMatrix_t needs num_of_Blocks' end if - + allocate ( this % Blocks(num_of_Blocks) ) this % num_of_Blocks = num_of_Blocks allocate ( this % BlockSizes(num_of_Blocks) ) allocate ( this % BlockIdx(num_of_Blocks+1) ) - + end subroutine construct ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -79,27 +78,27 @@ subroutine Preallocate(this, nnz, nnzs) !--------------------------------------------- integer :: i, k ! counters !--------------------------------------------- - + if (.not. present(nnzs) ) ERROR stop ':: DenseBlockDiagMatrix needs the block sizes' if ( size(nnzs) /= this % num_of_Blocks) ERROR stop ':: DenseBlockDiagMatrix: wrong dimension for the block sizes' - + this % BlockSizes = nnzs this % num_of_Rows = sum(nnzs) - + this % BlockIdx(1) = 1 do i=2, this % num_of_Blocks + 1 this % BlockIdx(i) = this % BlockIdx(i-1) + nnzs(i-1) end do - + !$omp parallel do private(k) schedule(runtime) do i=1, this % num_of_Blocks safedeallocate (this % Blocks(i) % Matrix ) ; allocate ( this % Blocks(i) % Matrix(nnzs(i),nnzs(i)) ) safedeallocate (this % Blocks(i) % Indexes) ; allocate ( this % Blocks(i) % Indexes(nnzs(i)) ) - + this % Blocks(i) % Indexes = (/ (k, k=this % BlockIdx(i),this % BlockIdx(i+1) - 1 ) /) - + end do -!$omp end parallel do +!$omp end parallel do end subroutine Preallocate ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -112,11 +111,11 @@ subroutine Reset(this, ForceDiagonal) !--------------------------------------------- integer :: i !--------------------------------------------- - + do i=1, this % num_of_Blocks this % Blocks(i) % Matrix = 0._RP end do - + end subroutine Reset ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -134,25 +133,25 @@ subroutine DBD_SetColumn(this,nvalues, irow, icol, values ) integer :: i !~ integer, pointer :: indexes(:) !--------------------------------------------- - + if (MPI_Process % doMPIAction) ERROR stop 'DBD_SetColumn not ready for MPI' - + if ( (icol > this % num_of_Rows) .or. (icol < 1) ) ERROR stop ':: DenseBlockDiagMatrix: icol value is out of bounds' - + ! Search the corresponding block (they are ordered) do thisblock=1, this % num_of_Blocks if (icol <= this % BlockIdx(thisblock+1) -1) exit end do - + associate (indexes => this % Blocks(thisblock) % Indexes) firstIdx = this % BlockIdx(thisblock) lastIdx = this % BlockIdx(thisblock+1) - 1 - + ! Get relative position of column do thiscol=1, this % BlockSizes(thisblock) if (icol == indexes(thiscol)) exit end do - + ! Fill the column info do i=1, nvalues if ( irow(i) < firstIdx .or. irow(i) > lastIdx ) cycle @@ -161,11 +160,11 @@ subroutine DBD_SetColumn(this,nvalues, irow, icol, values ) if (irow(i) == indexes(thisrow)) exit end do this % Blocks(thisblock) % Matrix(thisrow,thiscol) = values(i) - + end do - + end associate - + end subroutine DBD_SetColumn ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -183,25 +182,25 @@ subroutine DBD_AddToColumn(this,nvalues, irow, icol, values ) integer :: i !~ integer, pointer :: indexes(:) !--------------------------------------------- - + if (MPI_Process % doMPIAction) ERROR stop 'DBD_AddToColumn not ready for MPI' - + if ( (icol > this % num_of_Rows) .or. (icol < 1) ) ERROR stop ':: DenseBlockDiagMatrix: icol value is out of bounds' - + ! Search the corresponding block (they are ordered) do thisblock=1, this % num_of_Blocks if (icol <= this % BlockIdx(thisblock+1) -1) exit end do - + associate (indexes => this % Blocks(thisblock) % Indexes) firstIdx = this % BlockIdx(thisblock) lastIdx = this % BlockIdx(thisblock+1) - 1 - + ! Get relative position of column do thiscol=1, this % BlockSizes(thisblock) if (icol == indexes(thiscol)) exit end do - + ! Fill the column info do i=1, nvalues if ( irow(i) < firstIdx .or. irow(i) > lastIdx ) cycle @@ -210,11 +209,11 @@ subroutine DBD_AddToColumn(this,nvalues, irow, icol, values ) if (irow(i) == indexes(thisrow)) exit end do this % Blocks(thisblock) % Matrix(thisrow,thiscol) = this % Blocks(thisblock) % Matrix(thisrow,thiscol) + values(i) - + end do - + end associate - + end subroutine DBD_AddToColumn ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -226,12 +225,12 @@ subroutine SetDiagonalBlock(this,BlockNum, values ) integer , intent(in) :: BlockNum real(kind=RP), dimension(:,:), intent(in) :: values !--------------------------------------------- - + if ( size(values,1) /= this % BlockSizes(BlockNum) .or. & size(values,2) /= this % BlockSizes(BlockNum) ) ERROR stop ':: DenseBlockDiagMatrix_t % DenseBlockDiagMatrix_t. Block size is not consistent' - + this % Blocks(BlockNum) % Matrix = values - + end subroutine SetDiagonalBlock ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -247,11 +246,11 @@ subroutine SetBlockEntry(this, iBlock, jBlock, i, j, value ) integer , intent(in) :: i, j real(kind=RP) , intent(in) :: value !--------------------------------------------- - + if (iBlock /= jBlock) return ! Only diagonal blocks here! - + this % Blocks( mpi_partition % global2localeID(iBlock) ) % Matrix(i,j) = value - + end subroutine SetBlockEntry ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -267,11 +266,11 @@ subroutine AddToBlockEntry(this, iBlock, jBlock, i, j, value ) integer , intent(in) :: i, j real(kind=RP) , intent(in) :: value !--------------------------------------------- - + if (iBlock /= jBlock) return ! Only diagonal blocks here! - + this % Blocks( mpi_partition % global2localeID(iBlock) ) % Matrix(i,j) = this % Blocks( mpi_partition % global2localeID(iBlock) ) % Matrix(i,j) + value - + end subroutine AddToBlockEntry ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -285,11 +284,11 @@ subroutine ResetBlock(this, iBlock, jBlock ) class(DenseBlockDiagMatrix_t), intent(inout) :: this integer , intent(in) :: iBlock, jBlock !--------------------------------------------- - + if (iBlock /= jBlock) return ! Only diagonal blocks here! - + this % Blocks( mpi_partition % global2localeID(iBlock) ) % Matrix = 0._RP - + end subroutine ResetBlock ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -299,9 +298,9 @@ subroutine Assembly(this) !--------------------------------------------- class(DenseBlockDiagMatrix_t), intent(inout) :: this !--------------------------------------------- - + ! Do nothing - + end subroutine Assembly ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -327,7 +326,7 @@ subroutine shift(this,shiftval) !------------------------------------------ INTEGER :: i, iBL !------------------------------------------ - + !$omp parallel do private(i) schedule(runtime) do iBL=1, this % num_of_Blocks do i=1, size(this % Blocks(iBL) % Matrix,1) @@ -335,7 +334,7 @@ subroutine shift(this,shiftval) end do end do !$omp end parallel do - + end subroutine shift ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -347,16 +346,16 @@ subroutine destruct(this) !--------------------------------------------- integer :: i !--------------------------------------------- - + do i = 1, this % num_of_Blocks deallocate (this % Blocks(i) % Matrix ) deallocate (this % Blocks(i) % Indexes) end do - + deallocate (this % Blocks) deallocate (this % BlockSizes) deallocate (this % BlockIdx) - + end subroutine destruct ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -375,7 +374,7 @@ subroutine FactorizeBlocks_LU(this,Factorized) !------------------------------------------------------------- integer :: k ! Counter !------------------------------------------------------------- - + select type (Factorized) class is(DenseBlockDiagMatrix_t) !$omp parallel do schedule(runtime) @@ -396,7 +395,7 @@ end subroutine FactorizeBlocks_LU ! -------------------------------------------------------- ! Solves a system of the for Ax=b using LU factorization in each block ! -> To be used with a matrix factorized using FactorizeBlocks_LU (Factorized) -! -> +! -> ! -------------------------------------------------------- subroutine SolveBlocks_LU(this,x,b) use DenseMatUtilities @@ -409,7 +408,7 @@ subroutine SolveBlocks_LU(this,x,b) integer :: k ! Counter real(kind=RP), allocatable :: x_loc(:) ! Local x !------------------------------------------------------------- - + !$omp parallel do private(x_loc) schedule(runtime) do k = 1, this % num_of_Blocks allocate( x_loc(this % BlockSizes(k)) ) @@ -423,7 +422,7 @@ subroutine SolveBlocks_LU(this,x,b) deallocate(x_loc) end do !$omp end parallel do - + end subroutine SolveBlocks_LU ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -440,7 +439,7 @@ subroutine InvertBlocks_LU(this,Inverted) !-local-variables--------------------------------------------- integer :: k ! Counter !------------------------------------------------------------- - + select type (Inverted) class is(DenseBlockDiagMatrix_t) !$omp parallel do schedule(runtime) @@ -468,37 +467,37 @@ subroutine getCSR(this,Acsr) integer :: ii, jj integer :: bID !------------------------------------------------------------- - + if (this % num_of_Rows /= Acsr % num_of_Rows) then print*, 'DBD_getCSR :: ERROR: Matrix dimensions mismatch:', this % num_of_Rows, Acsr % num_of_Rows stop end if - + call Acsr % PreAllocate() call Acsr % Reset - + call Acsr % SpecifyBlockInfo(this % BlockIdx, this % BlockSizes) - - + + ! Fill the Matrix ! --------------- - + !$omp parallel do private(ii,jj) do bID=1, this % num_of_Blocks - + do jj=1, this % BlockSizes(bID) do ii=1, this % BlockSizes(bID) call Acsr % SetBlockEntry(bID,bID,ii,jj, this % Blocks (bID) % Matrix(ii,jj)) end do end do - + end do !$omp end parallel do - + call Acsr % assembly() - + end subroutine getCSR - + ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! @@ -516,21 +515,21 @@ subroutine getTransCSR(this,Acsr) real(kind=RP), allocatable :: Vals(:) integer , allocatable :: Cols(:), Rows(:) !------------------------------------------------------------- - + if (this % num_of_Rows /= Acsr % num_of_Rows) then print*, 'DBD_getCSR :: ERROR: Matrix dimensions mismatch:', this % num_of_Rows, Acsr % num_of_Rows stop end if - + nnz_0 = sum(this % BlockSizes**2) - + allocate ( Rows(this % num_of_Rows+1) ) allocate ( Cols(nnz_0), Vals(nnz_0) ) - - - + + + Rows(1) = 1 - + i=1 k=1 j_offset = 0 @@ -538,9 +537,9 @@ subroutine getTransCSR(this,Acsr) do bID = 1, this % num_of_Blocks do jj = 1, this % BlockSizes(bID) rowsize = 0 - do ii = 1, this % BlockSizes(bID) + do ii = 1, this % BlockSizes(bID) if (abs(this % Blocks(bID) % Matrix(ii,jj)) < JACEPS) cycle - + Vals(k) = this % Blocks(bID) % Matrix(ii,jj) Cols(k) = ii + j_offset k = k + 1 @@ -550,19 +549,19 @@ subroutine getTransCSR(this,Acsr) Rows(i+1) = Rows(i) + rowsize i = i + 1 end do - + j_offset = j_offset + this % BlockSizes(bID) end do - + call Acsr % constructWithCSRArrays( Rows, Cols(1:nnz), Vals(1:nnz), this % num_of_Rows ) - + end subroutine getTransCSR ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! subroutine Visualize(this, filename, FirstRow) ! --------------------------------------------------------- -! Save Jacobian matrix in the ASCII file. +! Save Jacobian matrix in the ASCII file. ! --------------------------------------------------------- implicit none !-----Arguments----------------------------------------------------------- @@ -588,4 +587,4 @@ end subroutine Visualize ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! -end module DenseBlockDiagonalMatrixClass +end module DenseBlockDiagonalMatrixClass \ No newline at end of file diff --git a/Solver/src/libs/jacobian/GenericMatrixClass.f90 b/Solver/src/libs/jacobian/GenericMatrixClass.f90 index 8a80384f2..2eb3b6b26 100644 --- a/Solver/src/libs/jacobian/GenericMatrixClass.f90 +++ b/Solver/src/libs/jacobian/GenericMatrixClass.f90 @@ -428,4 +428,4 @@ end subroutine Visualize ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! -end module GenericMatrixClass +end module GenericMatrixClass \ No newline at end of file diff --git a/Solver/src/libs/jacobian/JacobianComputerClass.f90 b/Solver/src/libs/jacobian/JacobianComputerClass.f90 index adc9f79a1..84257f333 100644 --- a/Solver/src/libs/jacobian/JacobianComputerClass.f90 +++ b/Solver/src/libs/jacobian/JacobianComputerClass.f90 @@ -10,7 +10,7 @@ module JacobianComputerClass use SMConstants use HexMeshClass - use PhysicsStorage + use PhysicsStorage use MPI_Process_Info , only: MPI_Process use Utilities , only: QsortWithFriend use DGSEMClass , only: DGSem, ComputeTimeDerivative_f @@ -22,12 +22,12 @@ module JacobianComputerClass #ifdef _HAS_MPI_ use mpi #endif - implicit none + implicit none private public Look_for_neighbour, ijk2local, local2ijk public JacobianComputer_t, GetJacobianFlag - + ! ------------------ ! Main Jacobian type ! ------------------ @@ -46,7 +46,7 @@ module JacobianComputerClass procedure :: Destruct => Jacobian_Destruct procedure :: Compute => Jacobian_Compute end type JacobianComputer_t - + ! ======== contains ! ======== @@ -65,18 +65,18 @@ integer function GetJacobianFlag() character(len=LINE_LENGTH) :: in_label character(len=LINE_LENGTH) :: paramFile !-------------------------------------- - + write(in_label , '(A)') "#define jacobian" call get_command_argument(1, paramFile) call readValueInRegion ( trim ( paramFile ) , "type" , flag , in_label , "# end" ) - + if ( allocated(flag) ) then GetJacobianFlag = flag deallocate(flag) else GetJacobianFlag = 0 end if - + end function GetJacobianFlag ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -101,9 +101,9 @@ subroutine Jacobian_Construct(this, mesh, nEqn, controlVariables) character(len=LINE_LENGTH) :: in_label character(len=LINE_LENGTH) :: paramFile !--------------------------------------------------- - + this % nEqn = nEqn - + ! ! *************** ! Allocate memory @@ -139,25 +139,25 @@ subroutine Jacobian_Construct(this, mesh, nEqn, controlVariables) ! ------------------------------- call mpi_allgather(mesh % no_of_elements, 1, MPI_INT, no_of_elems, 1, MPI_INT, MPI_COMM_WORLD, ierr) - + displs(1) = 0 do eID = 1, MPI_Process % nProcs-1 displs(eID+1) = displs(eID) + no_of_elems(eID) end do - + call mpi_allgatherv(this % globIDs_l, mesh % no_of_elements, MPI_INT, all_globIDs, no_of_elems , displs, MPI_INT, MPI_COMM_WORLD, ierr) call mpi_allgatherv(this % ndofelm_l, mesh % no_of_elements, MPI_INT, all_ndofelm, no_of_elems , displs, MPI_INT, MPI_COMM_WORLD, ierr) ! ! Reorganize the ndofelm ! ---------------------- call QsortWithFriend(all_globIDs, all_ndofelm) - + this % ndofelm = all_ndofelm #endif else this % ndofelm = this % ndofelm_l end if - + ! ! ************ ! Get firstIdx @@ -167,24 +167,24 @@ subroutine Jacobian_Construct(this, mesh, nEqn, controlVariables) do eID=1, mesh % no_of_allElements this % firstIdx(eID+1) = this % firstIdx(eID) + this % ndofelm(eID) end do - + ! Read block ! ********** write(in_label , '(A)') "#define jacobian" call get_command_argument(1, paramFile) ! call readValueInRegion ( trim ( paramFile ) , "print info" , verbose_in , in_label , "# end" ) call readValueInRegion ( trim ( paramFile ) , "preallocate" , prealloc_in , in_label , "# end" ) - + if ( allocated(verbose_in) ) then this % verbose = MPI_Process % isRoot .and. verbose_in else this % verbose = MPI_Process % isRoot end if - + if ( allocated(prealloc_in) ) then this % preAllocate = prealloc_in end if - + end subroutine Jacobian_Construct ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -205,11 +205,11 @@ subroutine Jacobian_Configure(this, mesh, nEqn, Matrix) integer , allocatable :: rows(:), cols(:) real(kind=RP), allocatable :: vals(:) !--------------------------------------------------- - + ! Preallocate matrix if requested ! ------------------------------- if (this % preAllocate) then - + select type(Matrix_p => Matrix) ! ! If block-diagonal matrix, construct with size of blocks @@ -219,17 +219,17 @@ subroutine Jacobian_Configure(this, mesh, nEqn, Matrix) type is(SparseBlockDiagMatrix_t) call Matrix_p % Preallocate(nnzs=this % ndofelm_l) class default - call this % GetCSRAllocVectors (mesh, nEqn, rows, cols) + call this % GetCSRAllocVectors (mesh, nEqn, rows, cols) allocate ( vals(size(cols)) ) vals = 0._RP call Matrix_p % constructWithCSRArrays(rows,cols,vals) - + deallocate (rows,cols,vals) end select - + call Matrix % SpecifyBlockInfo(this % firstIdx,this % ndofelm) end if - + end subroutine Jacobian_Configure ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -242,10 +242,10 @@ subroutine Jacobian_Destruct(this) !-arguments----------------------------------------- class(JacobianComputer_t), intent(inout) :: this !--------------------------------------------------- - + deallocate (this % ndofelm) deallocate (this % firstIdx) - + end subroutine Jacobian_Destruct ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -258,18 +258,18 @@ subroutine Jacobian_Compute(this, sem, nEqn, time, Matrix, TimeDerivative, TimeD !-arguments---------------------------------- class(JacobianComputer_t) , intent(inout) :: this type(DGSem) , intent(inout) :: sem - integer, intent(in) :: nEqn + integer, intent(in) :: nEqn ! TODO: Deprecate real(kind=RP) , intent(in) :: time class(Matrix_t) , intent(inout) :: Matrix procedure(ComputeTimeDerivative_f), optional :: TimeDerivative - procedure(ComputeTimeDerivative_f), optional :: TimeDerivativeIsolated + procedure(ComputeTimeDerivative_f), optional :: TimeDerivativeIsolated real(kind=RP) , optional, intent(in) :: eps_in - logical , optional, intent(in) :: BlockDiagonalized + logical , optional, intent(in) :: BlockDiagonalized ! e % Connection(elSide), & f => mesh % faces(e % faceIDs(elSide) ) ) - + nXi_od = e_minus % Nxyz(1) + 1 nEta_od = e_minus % Nxyz(2) + 1 EtaSpa_od = nEqn * nXi_od ZetaSpa_od = nEqn * nXi_od * nEta_od side = e % faceSide(elSide) - + tanAx_plus = axisMap(:,f % elementSide( side ) ) tanAx_minus = axisMap(:,f % elementSide( other(side) ) ) NxyFace_minus = e_minus % Nxyz ( tanAx_minus ) - + normAx_minus = normalAxis ( f % elementSide( other(side) ) ) if (normAx_minus < 0) then normAxInd_minus = 0 @@ -403,7 +403,7 @@ subroutine Jacobian_GetCSRVectorsForAllocation(this, mesh, nEqn, rows, cols) normAxInd_minus = e_minus % Nxyz(abs(normAx_minus)) end if normAx_minus = abs(normAx_minus) - + normAx_plus = normalAxis ( elSide ) if (normAx_plus < 0) then normAxInd_plus = 0 @@ -411,14 +411,14 @@ subroutine Jacobian_GetCSRVectorsForAllocation(this, mesh, nEqn, rows, cols) normAxInd_plus = e % Nxyz(abs(normAx_plus)) end if normAx_plus = abs(normAx_plus) - + do k2 = 0, e_minus % Nxyz(3) ; do j2 = 0, e_minus % Nxyz(2) ; do i2 = 0, e_minus % Nxyz(1) - + elInd_plus = [i1, j1, k1] elInd_minus = [i2, j2, k2] - + ! Gauss-Lobatto cycling - + if (flowIsNavierStokes) then ! Elliptic terms if (mesh % nodeType == GAUSSLOBATTO) then if ( elInd_minus(normAx_minus) /= normAxInd_minus .and. & @@ -430,12 +430,12 @@ subroutine Jacobian_GetCSRVectorsForAllocation(this, mesh, nEqn, rows, cols) elInd_plus (normAx_plus) /= normAxInd_plus ) cycle end if end if - + faceInd_plus = elInd_plus ( tanAx_plus ) faceInd_minus = elInd_minus( tanAx_minus ) - + call indexesOnOtherFace(faceInd_minus(1),faceInd_minus(2), NxyFace_minus(1),NxyFace_minus(2), f % rotation, other(side), faceInd_minus2plus(1),faceInd_minus2plus(2)) - + ! Get number of deltas Deltas = 0 if ( faceInd_plus(1) == faceInd_minus2plus(1) ) then @@ -444,14 +444,14 @@ subroutine Jacobian_GetCSRVectorsForAllocation(this, mesh, nEqn, rows, cols) if ( faceInd_plus(2) == faceInd_minus2plus(2) ) then deltas = deltas + 1 end if - + ! Physics specific cycling if (flowIsNavierStokes) then ! Elliptic terms if (deltas < 1) cycle else ! Hyperbolic terms if (deltas < 2) cycle end if - + ! Add entries to linked list baseCol = (this % firstIdx(e_minus % globID) - 1) + i2*nEqn + j2*EtaSpa_od + k2*ZetaSpa_od do eq = 1, nEqn @@ -461,15 +461,15 @@ subroutine Jacobian_GetCSRVectorsForAllocation(this, mesh, nEqn, rows, cols) end associate end do end do ; end do ; end do + - - + end associate end do - + ! Gather info and create arrays ! ***************************** - + ! Get number of nonzeros and construct rows array nnz = 0 rows(1) = 1 @@ -484,23 +484,23 @@ subroutine Jacobian_GetCSRVectorsForAllocation(this, mesh, nEqn, rows, cols) end do end do nnz = nnz * nEqn - + ! Construct cols array allocate ( cols(nnz) ) counter = 1 ! first nonzero of row do thisdof=1, mesh % NDOF nnz_row = colList(thisdof) % no_of_entries call colList(thisdof) % ExportToArray (colArray,.TRUE.) - + ! One row for each equation of this DOF do eq=1, nEqn cols(counter:counter+nnz_row-1) = colArray counter = counter + nnz_row end do - + deallocate (colArray) end do - + ! Finish up ! ********* call colList % destruct @@ -513,7 +513,7 @@ end subroutine Jacobian_GetCSRVectorsForAllocation !//////////////////////////////////////////////////////////////////////// ! SUBROUTINE Look_for_neighbour(this, mesh) - IMPLICIT NONE + IMPLICIT NONE ! ! ----------------------------------------------------------------------------- ! This subroutine finds the neighbours of all elements (conforming meshes only) @@ -540,31 +540,31 @@ SUBROUTINE Look_for_neighbour(this, mesh) IF (mesh % elements(iEl) % NumberOfConnections(j) == 0) THEN this(iEl)%elmnt(j) = 0 ELSE - this(iEl)%elmnt(j) = mesh % elements(iEl) % Connection(j) % globID + this(iEl)%elmnt(j) = mesh % elements(iEl) % Connection(j) % globID ENDIF ENDDO ENDDO - END SUBROUTINE + END SUBROUTINE ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -! +! FUNCTION ijk2local(i,j,k,l,N_EQN,Nx,Ny,Nz) RESULT(idx) ! ----------------------------------------------------------------------------------------------------------------------------- -! Returns the local index relative to an element from the local coordinates: i(lagrange node x), j(lagrange node y), +! Returns the local index relative to an element from the local coordinates: i(lagrange node x), j(lagrange node y), ! k(lagrange node z), l(equation number) ! N are the polinomial orders in x, y and z directions, N_EQN is the number of equations ! ----------------------------------------------------------------------------------------------------------------------------- IMPLICIT NONE - + INTEGER, INTENT(IN) :: i, j, k, l, Nx, Ny, Nz, N_EQN INTEGER :: idx - + IF (l < 1 .OR. l > N_EQN) STOP 'error in ijk2local, l has a wrong value' IF (i < 0 .OR. i > Nx) STOP 'error in ijk2local, i has a wrong value' IF (j < 0 .OR. j > Ny) STOP 'error in ijk2local, j has a wrong value' IF (k < 0 .OR. k > Nz) STOP 'error in ijk2local, k has a wrong value' - + idx = k*(Nx+1)*(Ny+1)*N_EQN + j*(Nx+1)*N_EQN + i*N_EQN + l END FUNCTION ! @@ -573,15 +573,15 @@ FUNCTION ijk2local(i,j,k,l,N_EQN,Nx,Ny,Nz) RESULT(idx) FUNCTION local2ijk(idx,N_EQN,Nx,Ny,Nz) RESULT (indices) ! ----------------------------------------------------------------------------------------------------------------------------- ! Returns the coordinates relative to an element: l(equation number), i(lagrange node x), j(lagrange node y), k(lagrange node z) -! from the local index +! from the local index ! N are the polinomial orders in x, y and z directions, N_EQN is the number of equations ! ----------------------------------------------------------------------------------------------------------------------------- INTEGER, INTENT(IN) :: idx, Nx, Ny, Nz, N_EQN INTEGER :: indices(4) INTEGER :: tmp1, tmp2 - + IF (idx < 1 .OR. idx > (Nx+1)*(Ny+1)*(Nz+1)*N_EQN) STOP 'error in local2ijk, idx has wrong value' - + indices(4) = (idx-1) / ((Nx+1)*(Ny+1) * N_EQN) tmp1 = MOD((idx-1),((Nx+1)*(Ny+1) * N_EQN) ) indices(3) = tmp1 / ((Nx+1)*N_EQN) @@ -593,3 +593,4 @@ FUNCTION local2ijk(idx,N_EQN,Nx,Ny,Nz) RESULT (indices) !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! end module JacobianComputerClass + diff --git a/Solver/src/libs/jacobian/JacobianDefinitions.f90 b/Solver/src/libs/jacobian/JacobianDefinitions.f90 index 6cd194b18..2b7076c3a 100644 --- a/Solver/src/libs/jacobian/JacobianDefinitions.f90 +++ b/Solver/src/libs/jacobian/JacobianDefinitions.f90 @@ -14,5 +14,6 @@ module JacobianDefinitions ! ********** ! real(kind=RP), parameter :: JACEPS = 1.e-9_RP ! Minimum value of a Jacobian entry (smaller values are considered as 0._RP) - + end module JacobianDefinitions + \ No newline at end of file diff --git a/Solver/src/libs/jacobian/LinkedListMatrixClass.f90 b/Solver/src/libs/jacobian/LinkedListMatrixClass.f90 index d0603ec35..e92d47cda 100644 --- a/Solver/src/libs/jacobian/LinkedListMatrixClass.f90 +++ b/Solver/src/libs/jacobian/LinkedListMatrixClass.f90 @@ -4,17 +4,16 @@ ! Linked list matrix ! !//////////////////////////////////////////////////////////////////////// -! module LinkedListMatrixClass use SMConstants use GenericMatrixClass use JacobianDefinitions, only: JACEPS #include "Includes.h" implicit none - + private public LinkedListMatrix_t - + !----------------- ! Type for entries !----------------- @@ -23,7 +22,7 @@ module LinkedListMatrixClass integer :: col class(Entry_t), pointer :: next => NULL() end type Entry_t - + !-------------- ! Type for rows !-------------- @@ -31,7 +30,7 @@ module LinkedListMatrixClass type(Entry_t), pointer :: head => null() integer :: num_of_entries end type Row_t - + !------------------------------ ! Main type: Linked list matrix !------------------------------ @@ -52,7 +51,7 @@ module LinkedListMatrixClass procedure :: getCSRarrays procedure :: Shift end type LinkedListMatrix_t - + contains ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -72,19 +71,19 @@ subroutine construct(this,num_of_Rows,num_of_Cols,num_of_Blocks,num_of_TotalRows !-local-variables----------------------------- integer :: i !--------------------------------------------- - + if ( .not. present(num_of_Rows) ) then ERROR stop 'LinkedListMatrix_t needs num_of_Rows' end if - + this % num_of_Rows = num_of_Rows - + allocate ( this % rows(num_of_Rows) ) this % num_of_entries = 0 do i=1, num_of_Rows this % rows(i) % num_of_entries = 0 end do - + end subroutine construct ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -99,29 +98,29 @@ subroutine Reset(this, ForceDiagonal) integer :: i logical :: mustForceDiagonal !--------------------------------------------- - + do i=1, this % num_of_Rows - + CEntry => this % rows(i) % head do while( associated(CEntry) ) CEntry % value = 0._RP CEntry => CEntry % next end do - + end do - + if ( present(ForceDiagonal) ) then mustForceDiagonal = ForceDiagonal else mustForceDiagonal = .FALSE. end if - + if (mustForceDiagonal) then do i = 1, this % num_of_Rows call this % ForceAddToEntry(i,i,0._RP) end do end if - + end subroutine Reset !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! @@ -134,21 +133,21 @@ subroutine ResetEntry(this,iRow,iCol) type(Entry_t), pointer :: CEntry, Prev integer :: i !---------------------------------------------------------------- - + CEntry => this % rows(iRow) % head - + do while( associated(CEntry) ) if (CEntry % col == iCol) CEntry % value = 0._RP CEntry => CEntry % next end do - + end subroutine ResetEntry ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! ! ------------------------------- ! Set entry of linked-list matrix -! ------------------------------- +! ------------------------------- subroutine SetEntry(this, row, col, value ) implicit none !-arguments----------------------------------- @@ -159,23 +158,23 @@ subroutine SetEntry(this, row, col, value ) !-local-variables------------------------------ type(Entry_t), pointer :: Entry !---------------------------------------------- - + if (abs(value) < JACEPS) return - + if (row<1) return if (col<1) return !$omp critical Entry => this % PointToEntry(row,col) !$omp end critical Entry % value = value - + end subroutine SetEntry ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! ! --------------------------------------------- ! Add a value to an entry of linked-list matrix -! --------------------------------------------- +! --------------------------------------------- subroutine AddToEntry(this, row, col, value ) implicit none !-arguments----------------------------------- @@ -186,12 +185,12 @@ subroutine AddToEntry(this, row, col, value ) !-local-variables------------------------------ type(Entry_t), pointer :: Entry !---------------------------------------------- - + if (abs(value) < JACEPS) return - + if (row<1) return if (col<1) return - + !$omp critical Entry => this % PointToEntry(row,col) Entry % value = Entry % value + value @@ -202,7 +201,7 @@ end subroutine AddToEntry ! ! --------------------------------------------- ! Same as AddToEntry, but without checking JACEPS -! --------------------------------------------- +! --------------------------------------------- subroutine ForceAddToEntry(this, row, col, value ) implicit none !-arguments----------------------------------- @@ -213,10 +212,10 @@ subroutine ForceAddToEntry(this, row, col, value ) !-local-variables------------------------------ type(Entry_t), pointer :: Entry !---------------------------------------------- - + if (row<1) return if (col<1) return - + !$omp critical Entry => this % PointToEntry(row,col) Entry % value = Entry % value + value @@ -236,21 +235,21 @@ subroutine SetColumn(this,nvalues, irow, icol, values ) !-local-variables------------------------------ integer :: i !---------------------------------------------- - + if (nvalues .NE. size(Values)) then write (*,*) 'CSR_AddToCol: Dimension error (Values-RowIndexes)' stop end if - + if ( icol <= 0 ) then write (*,*) 'CSR_AddToCol: icol error' stop end if - + do i=1, nvalues call this % SetEntry(irow(i),icol,values(i)) end do - + end subroutine SetColumn ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -266,21 +265,21 @@ subroutine AddToColumn(this,nvalues, irow, icol, values ) !-local-variables------------------------------ integer :: i !---------------------------------------------- - + if (nvalues .NE. size(Values)) then write (*,*) 'CSR_AddToCol: Dimension error (Values-RowIndexes)' stop end if - + if ( icol <= 0 ) then write (*,*) 'CSR_AddToCol: icol error' stop end if - + do i=1, nvalues call this % AddToEntry(irow(i),icol,values(i)) end do - + end subroutine AddToColumn ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -296,10 +295,10 @@ subroutine destruct(this) type(Entry_t), pointer :: Centry, next integer :: i !---------------------------------------------- - + do i=1, this % num_of_Rows CEntry => this % rows(i) % head - + do while ( associated(CEntry) ) next => CEntry % next deallocate(CEntry) @@ -307,11 +306,11 @@ subroutine destruct(this) end do this % rows(i) % head => null() end do - + deallocate ( this % rows ) - + end subroutine destruct - + ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! @@ -328,11 +327,11 @@ function PointToEntry(Matrix,i,j ) result(Entry) !-local-variables------------------------------------------------ type(Entry_t), pointer :: CEntry, Prev !---------------------------------------------------------------- - + CEntry => Matrix % rows(i) % head nullify(Prev) - + do while( associated(CEntry) ) if ( CEntry % col >= j ) exit Prev => CEntry @@ -350,16 +349,16 @@ function PointToEntry(Matrix,i,j ) result(Entry) Entry % Value = 0._RP Entry % col = j Entry % next => CEntry - + if ( associated(Prev) ) then Prev % next => Entry else Matrix % rows(i) % head => Entry end if - + Matrix % rows(i) % num_of_entries = Matrix % rows(i) % num_of_entries + 1 Matrix % num_of_entries = Matrix % num_of_entries + 1 - + end function PointToEntry ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -377,40 +376,40 @@ subroutine getCSRarrays(this,Values,Cols,Rows) integer :: i, j type(Entry_t), pointer :: CEntry !---------------------------------------------------------------- - + safedeallocate(Rows) ; allocate ( Rows (this % num_of_Rows + 1) ) safedeallocate(Cols) ; allocate ( Cols (this % num_of_entries) ) safedeallocate(Values) ; allocate ( Values(this % num_of_entries) ) - + ! Set first row ! ------------- - + Rows(1) = 1 CEntry => this % rows(1) % head do j=0, this % rows(1) % num_of_entries - 1 Values(1+j) = CEntry % value Cols (1+j) = CEntry % col - + CEntry => CEntry % next end do - + ! Set the rest ! ------------ - + do i=2, this % num_of_Rows Rows(i) = Rows(i-1) + this % rows(i-1) % num_of_entries - + CEntry => this % rows(i) % head do j=0, this % rows(i) % num_of_entries - 1 Values(Rows(i)+j) = CEntry % value Cols (Rows(i)+j) = CEntry % col - + CEntry => CEntry % next end do end do - + Rows(this % num_of_Rows + 1) = Rows(this % num_of_Rows) + this % rows(this % num_of_Rows) % num_of_entries - + end subroutine getCSRarrays ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -424,13 +423,13 @@ subroutine Shift(this, shiftval) type(Entry_t), pointer :: Entry integer :: i !--------------------------------------------- - + if (abs(shiftval) < JACEPS) return - + do i=1, this % num_of_Rows Entry => this % PointToEntry(i,i) Entry % value = Entry % value + shiftval end do - + end subroutine Shift -end module LinkedListMatrixClass +end module LinkedListMatrixClass \ No newline at end of file diff --git a/Solver/src/libs/jacobian/Makefile b/Solver/src/libs/jacobian/Makefile index 1a0a7dbd7..e3b47ae34 100644 --- a/Solver/src/libs/jacobian/Makefile +++ b/Solver/src/libs/jacobian/Makefile @@ -224,4 +224,4 @@ clean: FORCE ############################################# # Dummy procedure to force a rule # ############################################# -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/libs/jacobian/MatrixClass.f90 b/Solver/src/libs/jacobian/MatrixClass.f90 index f43a2d8f0..cf64e41fb 100644 --- a/Solver/src/libs/jacobian/MatrixClass.f90 +++ b/Solver/src/libs/jacobian/MatrixClass.f90 @@ -7,5 +7,5 @@ module MatrixClass use StaticCondensedMatrixClass use MatrixFreeClass implicit none - -end module MatrixClass + +end module MatrixClass \ No newline at end of file diff --git a/Solver/src/libs/jacobian/MatrixFreeClass.f90 b/Solver/src/libs/jacobian/MatrixFreeClass.f90 index d80f1e8c8..9bbf95d01 100644 --- a/Solver/src/libs/jacobian/MatrixFreeClass.f90 +++ b/Solver/src/libs/jacobian/MatrixFreeClass.f90 @@ -7,7 +7,7 @@ !////////////////////////////////////////////////////// ! module MatrixFreeClass - USE SMConstants + USE SMConstants use GenericMatrixClass , only: Matrix_t, DenseBlock_t use LinkedListMatrixClass use JacobianDefinitions , only: JACEPS @@ -15,10 +15,10 @@ module MatrixFreeClass use PhysicsStorage #include "Includes.h" implicit none - !----------------------------------------------------------------------------- + !----------------------------------------------------------------------------- private public :: MF_JacVecMul, MF_p_F - + ! !======== contains @@ -29,7 +29,7 @@ module MatrixFreeClass ! ! ---------------------------------------------------- ! MF_JacVecMul: - ! Matrix vector product (v = Au) + ! Matrix vector product (v = Au) ! ---------------------------------------------------- subroutine MF_JacVecMul(p_sem, DimPrb, Ur, F_Ur, x, Ax, dt, timesolve, shift, ComputeTimeDerivative) implicit none @@ -49,14 +49,22 @@ subroutine MF_JacVecMul(p_sem, DimPrb, Ur, F_Ur, x, Ax, dt, timesolve, shift, Co real(kind=RP) :: eps real(kind=RP) :: L2x !--------------------------------------------------------- - + L2x = norm2(x) - if (L2x < 1e-12) then + if (L2x < 1e-12) then Ax = 0.0_RP - else + else + !eps = 1e-11_RP * (1._RP + norm2(p_sem % mesh % storage % Q) ) / norm2(x) eps = 1e-8_RP * (1._RP + norm2(x) ) - Ax = ( MF_p_F(p_sem, DimPrb, Ur + x * eps, dt + timesolve, ComputeTimeDerivative) - F_Ur)/ eps + shift * x ! First Order + ! eps = 1e-2_RP * (1._RP + norm2(x) ) + + Ax = ( MF_p_F(p_sem, DimPrb, Ur + x * eps, dt + timesolve, ComputeTimeDerivative) - F_Ur)/ eps + shift * x ! First Order + + !Ax = ( MF_p_F(p_sem, DimPrb, Ur + x * eps, dt + timesolve, ComputeTimeDerivative) - MF_p_F(p_sem, DimPrb, Ur, dt + timesolve, ComputeTimeDerivative))/ eps + shift * x ! First Order + + !Ax = ( MF_p_F(p_sem,DimPrb,Ur + x * eps, dt+timesolve,ComputeTimeDerivative) - MF_p_F(p_sem,DimPrb,Ur - x * eps,dt+timesolve, ComputeTimeDerivative)) /(2._RP * eps) + shift*x !Second order + end if end subroutine MF_JacVecMul ! @@ -77,23 +85,23 @@ function MF_p_F(p_sem, DimPrb, u, CTD_time, computeTimeDerivative) result(F) !-local-variables----------------------------------------- real(kind=rp) :: u_p(DimPrb) !--------------------------------------------------------- - + ! Save original Q u_p = p_sem % mesh % storage % Q - + ! Obtain derivative with new Q p_sem % mesh % storage % Q = u call p_sem % mesh % storage % global2LocalQ call ComputeTimeDerivative(p_sem % mesh, p_sem % particles, CTD_time, CTD_IGNORE_MODE) call p_sem % mesh % storage % local2GlobalQdot(p_sem % NDOF) - + F = p_sem % mesh % storage % Qdot ! Restore original Q - p_sem % mesh % storage % Q = u_p + p_sem % mesh % storage % Q = u_p ! TODO: this step can be avoided if Ur is not read in the "child" GMRES (the preconditioner) call p_sem % mesh % storage % global2LocalQ end function MF_p_F ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! -end module MatrixFreeClass +end module MatrixFreeClass \ No newline at end of file diff --git a/Solver/src/libs/jacobian/NumericalJacobian.f90 b/Solver/src/libs/jacobian/NumericalJacobian.f90 index abba6e1e6..41717e61f 100644 --- a/Solver/src/libs/jacobian/NumericalJacobian.f90 +++ b/Solver/src/libs/jacobian/NumericalJacobian.f90 @@ -2,9 +2,8 @@ !////////////////////////////////////////////////////// ! ! Routines for computing the Jacobian matrix numerically using the colorings technique -! +! ! TODO1: Implement as a class with a destructor to prevent memory leaking !//////////////////////////////////////////////////////////////////////// -! module NumericalJacobian use SMConstants use MatrixClass @@ -27,30 +26,31 @@ module NumericalJacobian use mpi #endif implicit none - + private public NumJacobian_t, GetRowsAndColsVector - + ! ! ************************************************* ! Main type for the numerical Jacobian computations ! ************************************************* type, extends(JacobianComputer_t) :: NumJacobian_t - + contains procedure :: Construct => NumJacobian_Construct procedure :: AssignColToJacobian => NumJacobian_AssignColToJacobian procedure :: Compute => NumJacobian_Compute end type NumJacobian_t - + ! ! Module variables +! -> TODO: They will have to be moved to the class definition or to other types in the future ! ******************* type(Neighbor_t), allocatable :: nbr(:) ! Neighbors information type(Neighbor_t), allocatable :: nbr_g(:) ! Global neighbors array type(Colors_t) :: ecolors type(Colors_t) :: ecolors_g - integer , allocatable :: used(:) ! array containing index of elements whose contributions to Jacobian has already been considered + integer , allocatable :: used(:) ! array containing index of elements whose contributions to Jacobian has already been considered (TODO: replace with integer linked list) integer :: usedctr ! counter to fill positions of used integer :: num_of_neighbor_levels ! Number of neighboring levels that affect one element's column of the Jacobian integer :: max_num_of_neighbors ! Maximum number of neighboring elements that affect one element's column of the Jacobian @@ -67,16 +67,18 @@ subroutine NumJacobian_Construct(this, mesh, nEqn, controlVariables) integer , intent(in) :: nEqn type(FTValueDictionary) , intent(in) :: controlVariables !--------------------------------------------------- - + ! ! Construct parent ! ---------------- call this % JacobianComputer_t % construct (mesh, nEqn, controlVariables) call SetNoNeighbours(this, controlVariables) - + call Stopwatch % CreateNewEvent("Numerical Jacobian construction") - + + ! Big TODO: Move everything that is inside "if (isfirst)" to here!! + end subroutine NumJacobian_Construct ! @@ -98,21 +100,21 @@ subroutine NumJacobian_Compute(this, sem, nEqn, time, Matrix, TimeDerivative, Ti integer :: nelm integer :: thiscolor, thiselmidx, thiselm ! specific counters integer :: thisdof ! specific counters - integer :: ielm, felm + integer :: ielm, felm integer, save :: nnz, totalnnz integer , save :: maxndofel integer, allocatable, dimension(:), save :: Nx, Ny, Nz ! Polynomial orders - integer, allocatable, dimension(:), save :: ndofcol ! Maximum number of degrees of freedom in each color + integer, allocatable, dimension(:), save :: ndofcol ! Maximum number of degrees of freedom in each color integer, allocatable :: cols(:) integer, allocatable :: rows(:) integer, allocatable :: diag(:) real(kind=RP), allocatable, save :: Q0(:) real(kind=RP), allocatable, save :: QDot0(:) - + integer :: i, j, ii, jj, kk, eID ! General counters integer, dimension(4) :: ijkl ! Indexes to locate certain degree of freedom i,j,k...l:equation number real(kind=RP), save :: eps ! Perturbation magnitude - + logical, save :: isfirst = .TRUE. #if (!defined(NAVIERSTOKES)) logical :: computeGradients = .true. @@ -125,14 +127,14 @@ subroutine NumJacobian_Compute(this, sem, nEqn, time, Matrix, TimeDerivative, Ti type(TProgressBar) :: progress_bar integer, allocatable, dimension(:) :: el_reordering, el_reordering_idx !------------------------------------------------------------------- - + if(.not. present(TimeDerivative) ) ERROR stop 'NumJacobian_Compute needs the time-derivative procedure' ! ! -------------------------------------------------------------------- ! Initialize variables that will be used throughout all the simulation ! -------------------------------------------------------------------- ! - + call Stopwatch % Start("Numerical Jacobian construction") #ifdef _HAS_MPI_ @@ -141,7 +143,7 @@ subroutine NumJacobian_Compute(this, sem, nEqn, time, Matrix, TimeDerivative, Ti withMPI = .false. #endif - if (.NOT. isfirst) then + if (.NOT. isfirst) then deallocate(nbr) deallocate(Nx) deallocate(Ny) @@ -210,22 +212,22 @@ subroutine NumJacobian_Compute(this, sem, nEqn, time, Matrix, TimeDerivative, Ti ! Assemble colors ! --------------- - call ecolors % construct(nbr_g, num_of_neighbor_levels) + call ecolors % construct(nbr_g, num_of_neighbor_levels) ! ! Allocate storage ! ---------------- allocate(Nx(nelm), Ny(nelm), Nz(nelm)) - + do i = 1, nelm Nx(i) = sem % mesh % elements(i) % Nxyz(1) Ny(i) = sem % mesh % elements(i) % Nxyz(2) Nz(i) = sem % mesh % elements(i) % Nxyz(3) - end do + end do - maxndofel = MAXVAL(this % ndofelm) + maxndofel = MAXVAL(this % ndofelm) ! TODO: if there's p-adaptation, this value has to be recomputed ! ! --------------------------------------------------------------------------------- -! Get the maximum number of neighbors ["of neighbors" * (num_of_neighbor_levels-1)] +! Get the maximum number of neighbors ["of neighbors" * (num_of_neighbor_levels-1)] ! that are needed for the Jacobian computation (mesh dependent) ! --------------------------------------------------------------------------------- ! @@ -235,7 +237,7 @@ subroutine NumJacobian_Compute(this, sem, nEqn, time, Matrix, TimeDerivative, Ti max_num_of_neighbors = max (getNumOfNeighbors (i, num_of_neighbor_levels), max_num_of_neighbors) end do end if - + ! ! --------------------------------------------------------------- ! Allocate the used array that will contain the information about @@ -247,8 +249,8 @@ subroutine NumJacobian_Compute(this, sem, nEqn, time, Matrix, TimeDerivative, Ti allocate ( used(max_num_of_neighbors+1) ) ! ! ------------------------------------------------------------------------- -! Set max number of nonzero values expected in a row of the Jacobian matrix -! Assumes Legendre-Gauss quadrature and neglects zero values in each +! Set max number of nonzero values expected in a row of the Jacobian matrix TODO: if there's p-adaptation, this has to be recomputed +! Assumes Legendre-Gauss quadrature and neglects zero values in each ! block (taken into account later when assembling) ! For Legendre-Gauss-Lobatto much less entries are expected (a node on the ! interface has more cols than an interior node) @@ -258,13 +260,13 @@ subroutine NumJacobian_Compute(this, sem, nEqn, time, Matrix, TimeDerivative, Ti nnz = maxndofel * max_num_of_neighbors ! ! -------------------------------------------------------------- -! Compute the maximum number of degrees of freedom in each color +! Compute the maximum number of degrees of freedom in each color TODO: if there's p-adaptation, this has to be recomputed ! -------------------------------------------------------------- -! +! allocate(ndofcol(ecolors % num_of_colors)) ndofcol = 0 DO thiscolor = 1 , ecolors % num_of_colors - ielm = ecolors%bounds(thiscolor) + ielm = ecolors%bounds(thiscolor) felm = ecolors%bounds(thiscolor+1) DO thiselmidx = ielm, felm-1 !perturbs a dof in all elements within current color thiselm_g = ecolors%elmnts(thiselmidx) ! global eID @@ -272,10 +274,10 @@ subroutine NumJacobian_Compute(this, sem, nEqn, time, Matrix, TimeDerivative, Ti if (thiselm .gt. 0) ndofcol(thiscolor) = MAX(ndofcol(thiscolor),this % ndofelm(thiselm)) END DO END DO - + allocate(QDot0(size(sem % mesh % storage % QDot))) allocate(Q0 (size(sem % mesh % storage % QDot))) - + ! All initializations done! isfirst = .FALSE. ! @@ -306,16 +308,18 @@ subroutine NumJacobian_Compute(this, sem, nEqn, time, Matrix, TimeDerivative, Ti type is(SparseBlockDiagMatrix_t) call Matrix_p % Preallocate(nnzs=this % ndofelm_l) ! Constructing with block size type is(CSRMat_t) +!~ call GetRowsAndColsVector(sem, nbr, nEqn, Matrix_p % num_of_Rows, totalnnz, this % firstIdx, rows, cols, diag) +!~ call Matrix_p % PreAllocateWithStructure(totalnnz, rows, cols, diag) call Matrix_p % Preallocate() class default ! Construct with nonzeros in each row call Matrix_p % Preallocate(nnz) end select - + call Matrix % SpecifyBlockInfo(this % firstIdx,this % ndofelm) end if - + call Matrix % Reset(ForceDiagonal = .TRUE.) - + #if defined(CAHNHILLIARD) CALL TimeDerivative( sem % mesh, sem % particles, time, mode) #else @@ -350,7 +354,7 @@ subroutine NumJacobian_Compute(this, sem, nEqn, time, Matrix, TimeDerivative, Ti #if defined(CAHNHILLIARD) call sem % mesh % SetStorageToEqn(C_BC) #endif - + call sem % mesh % storage % local2GlobalQdot (sem % NDOF) call sem % mesh % storage % local2GlobalQ (sem % NDOF) QDot0 = sem % mesh % storage % QDot @@ -378,7 +382,7 @@ subroutine NumJacobian_Compute(this, sem, nEqn, time, Matrix, TimeDerivative, Ti if (this % verbose) write(STD_OUT,'(10X,A,1I6,A,1I6,A)') "Numerical Jacobian computing ", thiscolor , " out of ", ecolors % num_of_colors, " colors." ielm = ecolors%bounds(thiscolor) ! Initial element of the color - felm = ecolors%bounds(thiscolor+1) ! Final element of the color! + felm = ecolors%bounds(thiscolor+1) ! Final element of the color! ! Iterate through the DOFs in thiscolor ! ( Computes one column for each dof within an element ) @@ -387,7 +391,7 @@ subroutine NumJacobian_Compute(this, sem, nEqn, time, Matrix, TimeDerivative, Ti ! Perturb the current degree of freedom in all elements within current color ! -------------------------------------------------------------------------- - do thiselmidx = ielm, felm-1 + do thiselmidx = ielm, felm-1 thiselm_g = ecolors%elmnts(thiselmidx) ! global eID thiselm = mpi_partition % global2localeID(thiselm_g) ! local eID @@ -396,11 +400,11 @@ subroutine NumJacobian_Compute(this, sem, nEqn, time, Matrix, TimeDerivative, Ti ijkl = local2ijk(thisdof,nEqn,Nx(thiselm),Ny(thiselm),Nz(thiselm)) sem%mesh%elements(thiselm)% storage % Q(ijkl(1),ijkl(2),ijkl(3),ijkl(4)) = & - sem%mesh%elements(thiselm)% storage % Q(ijkl(1),ijkl(2),ijkl(3),ijkl(4)) + eps + sem%mesh%elements(thiselm)% storage % Q(ijkl(1),ijkl(2),ijkl(3),ijkl(4)) + eps end if - end do ! thiselmidx = ielm, felm-1 -! + end do ! thiselmidx = ielm, felm-1 +! ! Compute the time derivative ! --------------------------- #if defined(CAHNHILLIARD) @@ -434,7 +438,7 @@ subroutine NumJacobian_Compute(this, sem, nEqn, time, Matrix, TimeDerivative, Ti call sem % mesh % storage % local2GlobalQdot (sem %NDOF) sem % mesh % storage % QDot = (sem % mesh % storage % QDot - QDot0) / eps call sem % mesh % storage % global2LocalQdot - + ! ! Add the contributions to the Jacobian ! ------------------------------------- @@ -446,19 +450,19 @@ subroutine NumJacobian_Compute(this, sem, nEqn, time, Matrix, TimeDerivative, Ti IF (this % ndofelm(thiselm) sem % mesh % storage % elements(thiselm) % QDot + pbuffer(1:this % ndofelm(thiselm)) => sem % mesh % storage % elements(thiselm) % QDot do j=1, this % ndofelm(thiselm) call Matrix % AddToBlockEntry (sem % mesh % elements(thiselm) % GlobID, sem % mesh % elements(thiselm) % GlobID, & j, thisdof, pbuffer(j) ) end do - + end if - end do ! thiselmidx = ielm, felm-1 + end do ! thiselmidx = ielm, felm-1 ! - ! Restore original values for Q - ! ----------------------------- + ! Restore original values for Q (TODO: this can be improved) + ! ---------------------------------------------------------- sem % mesh % storage % Q = Q0 call sem % mesh % storage % global2LocalQ @@ -474,22 +478,22 @@ subroutine NumJacobian_Compute(this, sem, nEqn, time, Matrix, TimeDerivative, Ti if (this % verbose) write(STD_OUT,'(10X,A,1I6,A,1I6,A)') "Numerical Jacobian computing ", thiscolor , " out of ", ecolors % num_of_colors, " colors." ielm = ecolors%bounds(thiscolor) ! Initial element of the color felm = ecolors%bounds(thiscolor+1) ! Final element of the color -! +! ! Iterate through the DOFs in thiscolor ! ( Computes one column for each dof within an element ) ! ******************************************************** do thisdof = 1, ndofcol(thiscolor) - + ! Perturb the current degree of freedom in all elements within current color ! -------------------------------------------------------------------------- - DO thiselmidx = ielm, felm-1 + DO thiselmidx = ielm, felm-1 thiselm = ecolors%elmnts(thiselmidx) IF (this % ndofelm(thiselm) Jacobian Matrix type(HexMesh) , intent(in) :: mesh - integer , intent(in) :: eID !< Element ID + integer , intent(in) :: eID !< Element ID integer , intent(in) :: eIDn !< ID of the element, whose neighbors' contributions are added integer , intent(in) :: thisdof !< Current degree of freedom integer , intent(in) :: depth !< Amount of neighbors to visit @@ -590,31 +594,31 @@ recursive subroutine NumJacobian_AssignColToJacobian(this, Matrix, mesh, eID, eI integer :: ndof ! Number of degrees of freedom of element real(kind=RP), pointer :: pbuffer(:) ! Buffer to point to an element's Qdot !------------------------------------------------- - + if ( (eID == 0) .or. (eIDn == 0) ) return ! ! Go through all the neighbors ! ---------------------------- do i = 1, size(nbr(eIDn) % elmnt) - elmnbr = nbr(eIDn) % elmnt(i) - + elmnbr = nbr(eIDn) % elmnt(i) + if (.NOT. any(used == elmnbr)) THEN ndof = this % ndofelm(elmnbr) pbuffer(1:ndof) => mesh % storage % elements(elmnbr) % QDot !maps Qdot array into a 1D pointer - + do j=1, this % ndofelm(elmnbr) call Matrix % AddToBlockEntry (mesh % elements(elmnbr) % GlobID, mesh % elements(eID) % GlobID, j, thisdof, pbuffer(j) ) end do - + used(usedctr) = elmnbr usedctr = usedctr + 1 end if - + if (depth > 1) call this % AssignColToJacobian(Matrix, mesh, eID, elmnbr, thisdof, depth-1) - + end do - + end subroutine NumJacobian_AssignColToJacobian ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -625,60 +629,60 @@ end subroutine NumJacobian_AssignColToJacobian function getNumOfNeighbors (eID, depth) result(num) implicit none !-arguments--------------------------------------- - integer , intent(in) :: eID !< Element ID + integer , intent(in) :: eID !< Element ID integer , intent(in) :: depth !< Amount of neighbors to visit integer :: num !-local-variables--------------------------------- type(IntegerDataLinkedList_t) :: neighborsList !------------------------------------------------- - + num = 0 - if (eID == 0) return - + if (eID == 0) return + ! ! Create list of already counted elements ! --------------------------------------- neighborsList = IntegerDataLinkedList_t(.FALSE.) - + ! ! Add neighbors to list ! --------------------- call addNeighborsToList(eID,depth,neighborsList) num = neighborsList % no_of_entries - + ! ! destruct list of already counted elements ! ----------------------------------------- call neighborsList % destruct - + end function getNumOfNeighbors ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -! +! recursive subroutine addNeighborsToList(eID, depth, neighborsList) implicit none !-arguments--------------------------------------- - integer , intent(in) :: eID !< Element ID + integer , intent(in) :: eID !< Element ID integer , intent(in) :: depth !< Amount of neighbors to visit type(IntegerDataLinkedList_t), intent(inout) :: neighborsList !-local-variables--------------------------------- integer :: elmnbr ! Neighbor element index integer :: i ! Counter !------------------------------------------------- - + do i = 1, NUM_OF_NEIGHBORS + 1 elmnbr = nbr(eID) % elmnt(i) - + if (elmnbr == 0) cycle - + call neighborsList % add(elmnbr) if (depth > 1) call addNeighborsToList (elmnbr, depth - 1, neighborsList) - + end do end subroutine addNeighborsToList ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -! +! ! ! To be deprecated(?) subroutine GetRowsAndColsVector(sem, nbr, nEqn, nRows, nnz, firstIdx, rows, cols, diag) implicit none @@ -700,12 +704,14 @@ subroutine GetRowsAndColsVector(sem, nbr, nEqn, nRows, nnz, firstIdx, rows, cols integer :: pos_i, pos_j integer :: lb, ub integer, dimension(26) :: neighbours - + ! ! ********************* -! First loop to get nnz +! First loop to get nnz: TODO could I already set rows here? ! ********************* ! +!!$omp parallel private(counter, neighbours, i, j) +!!$omp do reduction(+:nnz) nnz = 0 do eID = 1, sem % mesh % no_of_elements associate(e => sem % mesh % elements(eID)) @@ -721,7 +727,7 @@ subroutine GetRowsAndColsVector(sem, nbr, nEqn, nRows, nnz, firstIdx, rows, cols if (nbr(nbr(eID) % elmnt(i)) % elmnt(j) .le. 0) cycle if ( .not. any(neighbours .eq. nbr(nbr(eID) % elmnt(i)) % elmnt(j)) ) then - counter = counter + 1 + counter = counter + 1 neighbours(counter) = nbr(nbr(eID) % elmnt(i)) % elmnt(j) end if end do @@ -734,6 +740,8 @@ subroutine GetRowsAndColsVector(sem, nbr, nEqn, nRows, nnz, firstIdx, rows, cols end do end associate end do +!!$omp end do +!!$omp end parallel allocate(rows(1:nRows+1)) allocate(cols(1:nnz)) allocate(diag(1:nRows)) @@ -757,7 +765,7 @@ subroutine GetRowsAndColsVector(sem, nbr, nEqn, nRows, nnz, firstIdx, rows, cols if (nbr(nbr(eID) % elmnt(i)) % elmnt(j) .le. 0) cycle ! For only neighbors comment this if ( .not. any(neighbours .eq. nbr(nbr(eID) % elmnt(i)) % elmnt(j)) ) then ! For neighbors change by if ( .not. any(neighbours .eq. nbr(eID) % elmnt(i)) ) then - counter = counter + 1 + counter = counter + 1 neighbours(counter) = nbr(eID) % elmnt(i) ! For neighbors change by neighbours(counter) = nbr(eID) % elmnt(i) end if end do ! For only neighbors comment this @@ -768,21 +776,21 @@ subroutine GetRowsAndColsVector(sem, nbr, nEqn, nRows, nnz, firstIdx, rows, cols do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) ; do ieq = 1, nEqn rows(pos_i) = csr_pos - pos_i = pos_i + 1 + pos_i = pos_i + 1 do nID = 1, counter associate(neigh => sem % mesh % elements(neighbours(nID))) pos_j = firstIdx(neighbours(nID)) do kk = 0, neigh % Nxyz(3) ; do jj = 0, neigh % Nxyz(2) ; do ii = 0, neigh % Nxyz(1) ; do iieq = 1, nEqn - + cols(csr_pos) = pos_j pos_j = pos_j + 1 - csr_pos = csr_pos + 1 + csr_pos = csr_pos + 1 end do ; end do ; end do ; end do end associate - end do + end do end do ; end do ; end do ; end do end associate @@ -832,13 +840,13 @@ subroutine SetNoNeighbours(this, controlVariables) num_of_neighbor_levels = 1 case('IP') num_of_neighbor_levels = 1 - case default + case default if (MPI_Process % isRoot) ERROR STOP 'JacobianComputerClass :: Viscous discretization not recognized.' end select else if (MPI_Process % isRoot) write(STD_OUT,*) 'JacobianComputerClass :: Viscous discretization not defined. Jacobian assumes BR1.' num_of_neighbor_levels = 2 - end if + end if else num_of_neighbor_levels = 1 end if @@ -850,4 +858,4 @@ end subroutine SetNoNeighbours ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! -end module NumericalJacobian +end module NumericalJacobian \ No newline at end of file diff --git a/Solver/src/libs/jacobian/PETScMatrixClass.f90 b/Solver/src/libs/jacobian/PETScMatrixClass.f90 index 30b86e634..50683a23a 100644 --- a/Solver/src/libs/jacobian/PETScMatrixClass.f90 +++ b/Solver/src/libs/jacobian/PETScMatrixClass.f90 @@ -4,7 +4,6 @@ ! Class for sparse csr matrices in PETSc context ! !//////////////////////////////////////////////////////////////////////// -! #include "Includes.h" #ifdef HAS_PETSC #include "petsc/finclude/petsc.h" @@ -21,17 +20,17 @@ module PETScMatrixClass implicit none private public PETSCMatrix_t, Matrix_t - + type, extends(Matrix_t) :: PETSCMatrix_t #ifdef HAS_PETSC - Mat :: A ! Matrix in PETSc context + Mat :: A ! Matrix in PETSc context PetscScalar :: Ashift ! Stores the current shift to the matrix PetscBool :: withMPI Vec :: rowvec ! Auxiliary vector with size = num_of_Rows Vec :: colvec ! Auxiliary vector with size = num_of_Cols PetscInt :: num_of_totalRows #endif - + contains procedure :: construct procedure :: destruct @@ -57,7 +56,7 @@ module PETScMatrixClass procedure :: ConstructFromDiagBlocks => PETScMat_ConstructFromDiagBlocks procedure :: constructWithCSRArrays => PETScMat_constructWithCSRArrays end type PETSCMatrix_t - + ! ! Module variables ! ---------------- @@ -89,19 +88,24 @@ subroutine construct(this,num_of_Rows,num_of_Cols,num_of_Blocks,num_of_TotalRows ! Initialize PETSc environment... If it was already done by the solver, it's alright ! ---------------------------------------------------------------------------------- call PetscInitialize(PETSC_NULL_character,ierr) - + if ( .not. present(num_of_Rows) ) then ERROR stop 'PETSCMatrix_t needs num_of_Rows' end if - + if ( present(num_of_Cols) ) then this % num_of_Cols = num_of_Cols else this % num_of_Cols = num_of_Rows end if - +!~ if ( present(withMPI) ) then +!~ hasMPI = withMPI +!~ else +!~ hasMPI = PETSC_FALSE +!~ end if + this % num_of_Rows = num_of_Rows - + if ( MPI_Process % doMPIAction .and. present(num_of_totalRows) ) then this % withMPI = PETSC_TRUE this % num_of_totalRows = num_of_totalRows @@ -109,22 +113,29 @@ subroutine construct(this,num_of_Rows,num_of_Cols,num_of_Blocks,num_of_TotalRows this % withMPI = PETSC_FALSE this % num_of_totalRows = num_of_Rows end if - - ! PETSc matrix A + + ! PETSc matrix A CALL MatCreate(PETSC_COMM_WORLD,this%A,ierr) ; CALL CheckPetscErr(ierr,'error creating A matrix') - + if (this % withMPI) then num_of_totalCols = num_of_totalRows CALL MatSetSizes(this%A,num_of_Rows,PETSC_DECIDE,num_of_totalRows,num_of_totalRows,ierr) ! At the moment only for square matrices... CALL CheckPetscErr(ierr,'error setting mat size') - CALL MatSetType(this%A,MATMPIAIJ, ierr) + CALL MatSetType(this%A,MATMPIAIJ, ierr) CALL CheckPetscErr(ierr,'error in MatSetType') +!~ CALL MatSetFromOptions(this%A,ierr) +!~ CALL CheckPetscErr(ierr,'error in MatSetFromOptions') else num_of_totalCols = this % num_of_Cols CALL MatSetSizes(this%A,num_of_Rows,this % num_of_Cols,num_of_Rows,this % num_of_Cols,ierr) CALL CheckPetscErr(ierr,'error setting mat size') CALL MatSetType(this%A,MATSEQAIJ, ierr) CALL CheckPetscErr(ierr,'error in MatSetType') +!~ CALL MatSetFromOptions(this%A,ierr) +!~ CALL CheckPetscErr(ierr,'error in MatSetFromOptions') +!~ CALL MatSetOption(this%A,MAT_ROW_ORIENTED,PETSC_FALSE,ierr) +!~ CALL MatSetOption(this%A,MAT_NEW_NONZERO_ALLOCATION_ERR, PETSC_FALSE,ierr) +!~ CALL CheckPetscErr(ierr,'error in MatSetOption') end if ! Construct auxiliary vectors @@ -132,11 +143,11 @@ subroutine construct(this,num_of_Rows,num_of_Cols,num_of_Blocks,num_of_TotalRows call VecCreate(PETSC_COMM_WORLD,this % rowvec,ierr) ; call CheckPetscErr(ierr,'error creating Petsc vector') call VecSetSizes(this % rowvec,this % num_of_Rows,this % num_of_totalRows,ierr) ; call CheckPetscErr(ierr,'error setting Petsc vector options') call VecSetFromOptions(this % rowvec,ierr) ; call CheckPetscErr(ierr,'error setting Petsc vector options') - + call VecCreate(PETSC_COMM_WORLD,this % colvec,ierr) ; call CheckPetscErr(ierr,'error creating Petsc vector') call VecSetSizes(this % colvec,PETSC_DECIDE,num_of_totalCols,ierr) ; call CheckPetscErr(ierr,'error setting Petsc vector options') call VecSetFromOptions(this % colvec,ierr) ; call CheckPetscErr(ierr,'error setting Petsc vector options') - + #else integer, optional, intent(in) :: num_of_Rows integer, optional, intent(in) :: num_of_Cols @@ -156,9 +167,9 @@ subroutine Preallocate(this, nnz, nnzs) #ifdef HAS_PETSC PetscInt, optional, intent(in) :: nnz !--------------------------------------------- - + if (.not. present(nnz)) ERROR stop ':: PETSc matrix needs nnz' - + IF(this%withMPI) THEN CALL MatMPIAIJSetPreallocation(this%A, nnz/7, PETSC_NULL_INTEGER, nnz*6/7, PETSC_NULL_INTEGER,ierr) ! hard-coded: 6 neighbors... Changhe! CALL CheckPetscErr(ierr, 'error in MatMPIAIJSetPreallocation') @@ -166,7 +177,7 @@ subroutine Preallocate(this, nnz, nnzs) CALL MatSeqAIJSetPreallocation(this%A, nnz, PETSC_NULL_INTEGER,ierr) CALL CheckPetscErr(ierr, 'error in MatSeqAIJSetPreallocation') ENDIF - + #else INTEGER, optional, intent(in) :: nnz STOP ':: PETSc is not linked correctly' @@ -185,25 +196,26 @@ subroutine Reset(this, ForceDiagonal) integer :: i logical :: mustForceDiagonal !--------------------------------------------- - + if ( present(ForceDiagonal) ) then mustForceDiagonal = ForceDiagonal else mustForceDiagonal = .FALSE. end if - + call MatZeroEntries(this%A, ierr) call CheckPetscErr(ierr,'error in MatZeroEntries') - + if (mustForceDiagonal) then !$omp critical if (this % withMPI) then call VecZeroEntries(this % rowvec, ierr) - - call VecAssemblyBegin(this % rowvec, ierr); call CheckPetscErr(ierr," Assembly B in PETSc Begin") - call VecAssemblyEnd (this % rowvec, ierr) ; call CheckPetscErr(ierr," Assembly B in PETSc End") - + + call VecAssemblyBegin(this % rowvec, ierr); call CheckPetscErr(ierr," Assembly B in PETSc Begin") + call VecAssemblyEnd (this % rowvec, ierr) ; call CheckPetscErr(ierr," Assembly B in PETSc End") + call MatDiagonalSet(this % A, this % rowvec, ADD_VALUES, ierr) + ! This is failing: SOLVE!! else do i = 1, this % num_of_Rows CALL MatSetValues(this%A, 1 ,i-1,1,i-1,0._RP,ADD_VALUES,ierr) @@ -211,7 +223,7 @@ subroutine Reset(this, ForceDiagonal) end if !$omp end critical end if - + #else STOP ':: PETSc is not linked correctly' #endif @@ -228,9 +240,9 @@ subroutine SetEntry(this, row, col, value ) PetscInt , intent(in) :: col PetscScalar , intent(in) :: value !--------------------------------------------- - + if (abs(value) < JACEPS) return - + !$omp critical CALL MatSetValues(this%A, 1 ,row-1,1,col-1,value,INSERT_VALUES,ierr) CALL CheckPetscErr(ierr, 'error in MatSetValues') @@ -254,9 +266,9 @@ subroutine PETScMat_AddToEntry(this, row, col, value ) PetscInt , intent(in) :: col PetscScalar , intent(in) :: value !--------------------------------------------- - + if (abs(value) < JACEPS) return - + !$omp critical CALL MatSetValues(this%A, 1 ,row-1,1,col-1,value,ADD_VALUES,ierr) CALL CheckPetscErr(ierr, 'error in MatSetValues') @@ -280,7 +292,7 @@ subroutine PETScMat_ForceAddToEntry(this, row, col, value ) PetscInt , intent(in) :: col PetscScalar , intent(in) :: value !--------------------------------------------- - + !$omp critical CALL MatSetValues(this%A, 1 ,row-1,1,col-1,value,ADD_VALUES,ierr) CALL CheckPetscErr(ierr, 'error in MatSetValues') @@ -319,7 +331,7 @@ subroutine SetColumn(this,nvalues, irow, icol, values ) end subroutine SetColumn ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -! +! subroutine AddToColumn(this,nvalues, irow, icol, values ) implicit none CLASS(PETSCMatrix_t), intent(inout) :: this @@ -328,7 +340,7 @@ subroutine AddToColumn(this,nvalues, irow, icol, values ) PetscInt, DIMENSION(:), intent(in) :: irow PetscInt, intent(in) :: icol PetscScalar, DIMENSION(:), intent(in) :: values - + !$omp critical CALL MatSetValues(this%A,nvalues,irow-1,1,icol-1,values,ADD_VALUES,ierr) CALL CheckPetscErr(ierr, 'error in MatSetValues') @@ -351,11 +363,11 @@ subroutine Shift(this, shiftval) #ifdef HAS_PETSC PetscScalar, intent(in) :: shiftval !--------------------------------------------- - + CALL MatShift(this%A,shiftval, ierr) ! A = A + shift * I CALL CheckPetscErr(ierr) this % Ashift = shiftval - + #else REAL*8, intent(in) :: shiftval STOP ':: PETSc is not linked correctly' @@ -365,7 +377,7 @@ end subroutine Shift !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! ! -------------------------------------------------- -! Removes previous shift in order to insert new one +! Removes previous shift in order to insert new one ! (important when Jacobian is reused) ! -------------------------------------------------- subroutine ReShift(this, shiftval) @@ -375,7 +387,7 @@ subroutine ReShift(this, shiftval) #ifdef HAS_PETSC PetscScalar, intent(in) :: shiftval !--------------------------------------------- - + CALL MatShift(this%A,shiftval - this % Ashift, ierr) ! A = A + shift * I CALL CheckPetscErr(ierr) this % Ashift = shiftval @@ -393,9 +405,9 @@ subroutine PreAssembly(this) CLASS(PETSCMatrix_t), intent(inout) :: this #ifdef HAS_PETSC !--------------------------------------------- - - CALL MatAssemblyBegin(this%A,MAT_FLUSH_ASSEMBLY ,ierr); CALL CheckPetscErr(ierr," PreAssembly A in PETSc Begin") - CALL MatAssemblyEnd(this%A,MAT_FLUSH_ASSEMBLY,ierr) ; CALL CheckPetscErr(ierr," PreAssembly A in PETSc End") + + CALL MatAssemblyBegin(this%A,MAT_FLUSH_ASSEMBLY ,ierr); CALL CheckPetscErr(ierr," PreAssembly A in PETSc Begin") + CALL MatAssemblyEnd(this%A,MAT_FLUSH_ASSEMBLY,ierr) ; CALL CheckPetscErr(ierr," PreAssembly A in PETSc End") #else STOP ':: PETSc is not linked correctly' #endif @@ -409,18 +421,18 @@ subroutine Assembly(this) class(PETSCMatrix_t), intent(inout) :: this !--------------------------------------------- #ifdef HAS_PETSC - - CALL MatAssemblyBegin(this%A,MAT_FINAL_ASSEMBLY,ierr); CALL CheckPetscErr(ierr," Assembly A in PETSc Begin") - CALL MatAssemblyEnd(this%A,MAT_FINAL_ASSEMBLY,ierr) ; CALL CheckPetscErr(ierr," Assembly A in PETSc End") + + CALL MatAssemblyBegin(this%A,MAT_FINAL_ASSEMBLY,ierr); CALL CheckPetscErr(ierr," Assembly A in PETSc Begin") + CALL MatAssemblyEnd(this%A,MAT_FINAL_ASSEMBLY,ierr) ; CALL CheckPetscErr(ierr," Assembly A in PETSc End") #else STOP ':: PETSc is not linked correctly' #endif end subroutine Assembly ! -!///////////////////////////////////////////////////////////////////////////////////////////////// +!///////////////////////////////////////////////////////////////////////////////////////////////// ! ! -!////////////////////////////////////////////////////////////////////////////////////////////////// +!////////////////////////////////////////////////////////////////////////////////////////////////// ! subroutine GetCSRMatrix(this,Acsr) implicit none @@ -431,44 +443,44 @@ subroutine GetCSRMatrix(this,Acsr) #ifdef HAS_PETSC INTEGER :: i, ncols INTEGER :: nnz_row(this % num_of_Rows) - INTEGER , ALLOCATABLE, DIMENSION(:) :: ACols + INTEGER , ALLOCATABLE, DIMENSION(:) :: ACols REAL(KIND=RP), ALLOCATABLE, DIMENSION(:) :: AVals PetscErrorCode :: ierr !--------------------------------------------------------------------------------- - + !We first get the number of nonzero entries in each row DO i = 1, this % num_of_Rows CALL MatGetRow(this % A,i-1,ncols,PETSC_NULL_INTEGER,PETSC_NULL_SCALAR,ierr) CALL CheckPetscErr(ierr,'error in Petsc MatGetRow') - + nnz_row(i) = ncols - + CALL MatRestoreRow(this % A,i-1,ncols,PETSC_NULL_INTEGER,PETSC_NULL_SCALAR,ierr) CALL CheckPetscErr(ierr,'error in Petsc MatRestoreRow') END DO - + CALL Acsr % construct(num_of_Rows = this % num_of_Rows) call Acsr % Preallocate(nnzs= nnz_row) call Acsr % Reset - + DO i = 1, this % num_of_Rows - + ALLOCATE(AVals(nnz_row(i))) ALLOCATE(ACols(nnz_row(i))) - + CALL MatGetRow(this % A,i-1,ncols,ACols,AVals,ierr) ; CALL CheckPetscErr(ierr,'error in Petsc MatGetRow') - + Acsr % Values (Acsr % Rows (i) : Acsr % Rows (i+1) -1) = AVals Acsr % Cols (Acsr % Rows (i) : Acsr % Rows (i+1) -1) = ACols + 1 - + CALL MatRestoreRow(this % A,i-1,ncols,ACols,AVals,ierr) ; CALL CheckPetscErr(ierr,'error in Petsc MatRestoreRow') - + DEALLOCATE(AVals) DEALLOCATE(ACols) END DO - + CALL Acsr % assigndiag - + #else STOP ':: PETSc is not linked correctly' #endif @@ -483,12 +495,12 @@ subroutine PETScMat_SpecifyBlockInfo(this,BlockIdx,BlockSize) integer , intent(in) :: BlockIdx(:) integer , intent(in) :: BlockSize(:) !--------------------------------------------- - + safedeallocate(this % BlockIdx) ; allocate (this % BlockIdx (size(BlockIdx )) ) safedeallocate(this % BlockSizes) ; allocate (this % BlockSizes(size(BlockSize)) ) this % BlockIdx = BlockIdx this % BlockSizes = BlockSize - + end subroutine PETScMat_SpecifyBlockInfo ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -506,18 +518,18 @@ subroutine PETScMat_SetBlockEntry(this, iBlock, jBlock, i, j, value ) !-local-variables----------------------------- integer :: row, col !--------------------------------------------- - + if (.not. allocated(this % BlockIdx)) then write(STD_OUT,*) 'PETSCMatrix :: Error ' write(STD_OUT,*) ' :: PETScMat_SetBlockEntry only available after CSR_SpecifyBlockInfo has been called' stop 99 end if - + row = this % BlockIdx(iBlock) + i - 1 col = this % BlockIdx(jBlock) + j - 1 - + call this % SetEntry(row, col, value) - + end subroutine PETScMat_SetBlockEntry ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -545,7 +557,7 @@ subroutine PETScMat_MatMatMul(A,B,Cmat,trans) ! ----------------- if ( present(trans) ) then if (trans) stop 'PETScMat_MatMatMul :: ERROR: trans not implemented' - end if + end if call MatMatMult( A % A, B % A,MAT_INITIAL_MATRIX,PETSC_DEFAULT_REAL, Cmat % A, ierr) call CheckPetscErr(ierr,"PETScMat_MatMatMul: Problem doing MatMatMult") ! @@ -570,26 +582,26 @@ function PETScMat_MatVecMul( A,u, trans) result(v) logical, optional , intent(in) :: trans !< A matrix is transposed? #ifdef HAS_PETSC PetscScalar , intent(in) :: u(A % num_of_Cols) !< Vector to be multiplied - PetscScalar :: v(A % num_of_Rows) !> Result vector + PetscScalar :: v(A % num_of_Rows) !> Result vector !------------------------------------------------------------------------------ PetscInt :: i !------------------------------------------------------------------------------ - + call VecSetValues (A % colvec, A % num_of_Cols, [(i, i=0, A % num_of_Cols-1)] , u, INSERT_VALUES, ierr) - call CheckPetscErr(ierr,"PETScMat_MatVecMul: VecSetValues A % colvec in PETSc Begin") - - call VecAssemblyBegin(A % colvec, ierr) ; call CheckPetscErr(ierr,"PETScMat_MatVecMul: Assembly this % colvec in PETSc Begin") - call VecAssemblyEnd (A % colvec, ierr) ; call CheckPetscErr(ierr,"PETScMat_MatVecMul: Assembly this % colvec in PETSc End") - + call CheckPetscErr(ierr,"PETScMat_MatVecMul: VecSetValues A % colvec in PETSc Begin") + + call VecAssemblyBegin(A % colvec, ierr) ; call CheckPetscErr(ierr,"PETScMat_MatVecMul: Assembly this % colvec in PETSc Begin") + call VecAssemblyEnd (A % colvec, ierr) ; call CheckPetscErr(ierr,"PETScMat_MatVecMul: Assembly this % colvec in PETSc End") + call MatMult(A % A, A % colvec, A % rowvec, ierr) call CheckPetscErr(ierr,"PETScMat_MatVecMul: Doing MatMult") - + call VecGetValues(A % rowvec, A % num_of_Rows ,[(i, i=0, A % num_of_Rows-1)],v, ierr) call CheckPetscErr(ierr, 'PETScMat_MatVecMul: error in VecGetValue v') - + #else real(kind=RP) , intent(in) :: u(A % num_of_Cols) !< Vector to be multiplied - real(kind=RP) :: v(A % num_of_Rows) !> Result vector + real(kind=RP) :: v(A % num_of_Rows) !> Result vector #endif end function PETScMat_MatVecMul ! @@ -615,11 +627,11 @@ subroutine PETScMat_MatAdd(A,B,Cmat,Factor) ! ! Perform MatAdd ! -------------- - + ! Copy matrix A in Cmat call MatDuplicate(A % A,MAT_COPY_VALUES,Cmat % A, ierr) call CheckPetscErr(ierr,"PETScMat_MatAdd: Problem copying A in Cmat") - + ! Perform operation call MatAXPY(Cmat % A, Factor, B % A, DIFFERENT_NONZERO_PATTERN, ierr) call CheckPetscErr(ierr,"PETScMat_MatAdd: Problem Adding matrices") @@ -649,18 +661,18 @@ subroutine PETScMat_AddToBlockEntry(this, iBlock, jBlock, i, j, value ) !-local-variables----------------------------- integer :: row, col !--------------------------------------------- - + if (.not. allocated(this % BlockIdx)) then write(STD_OUT,*) 'PETSCMatrix :: Error ' write(STD_OUT,*) ' :: PETScMat_AddToBlockEntry only available after CSR_SpecifyBlockInfo has been called' stop 99 end if - + row = this % BlockIdx(iBlock) + i - 1 col = this % BlockIdx(jBlock) + j - 1 - + call this % AddToEntry(row, col, value) - + end subroutine PETScMat_AddToBlockEntry ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -678,18 +690,18 @@ subroutine PETScMat_ForceAddToBlockEntry(this, iBlock, jBlock, i, j, value ) !-local-variables----------------------------- integer :: row, col !--------------------------------------------- - + if (.not. allocated(this % BlockIdx)) then write(STD_OUT,*) 'PETSCMatrix :: Error ' write(STD_OUT,*) ' :: PETScMat_AddToBlockEntry only available after CSR_SpecifyBlockInfo has been called' stop 99 end if - + row = this % BlockIdx(iBlock) + i - 1 col = this % BlockIdx(jBlock) + j - 1 - + call this % ForceAddToEntry(row, col, value) - + end subroutine PETScMat_ForceAddToBlockEntry ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -708,30 +720,30 @@ subroutine PETScMat_ConstructFromDiagBlocks(this, num_of_Blocks, Blocks, BlockId !-local-variables----------------------------- integer :: bID, j, i, j_offset !--------------------------------------------- - + ! Construct matrix ! ---------------- call this % construct (num_of_Rows = sum(BlockSizes)) call this % PreAllocate( nnz = maxval(BlockSizes) ) call this % reset call this % SpecifyBlockInfo (BlockIdx, BlockSizes) - + ! Fill it with the right entries ! ------------------------------ - + j_offset = 0 do bID=1, num_of_Blocks do j=1, BlockSizes(bID) - + do i=1, BlockSizes(bID) call this % SetBlockEntry (bID, bID, i, j, Blocks(bID) % Matrix(i,j) ) end do - + end do end do - + call this % assembly - + end subroutine PETScMat_ConstructFromDiagBlocks ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -748,7 +760,7 @@ subroutine PETScMat_constructWithCSRArrays(this,Rows,Cols,Values,num_of_Cols) PetscInt , intent(in) :: Cols(:) ! Column indices that correspond to each value PetscScalar , intent(in) :: Values(:) ! Values of nonzero entries of matrix !--------------------------------------------- - + if (this % withMPI) then call MatMPIAIJSetPreallocationCSR(this % A, Rows-1, Cols-1, Values, ierr) call CheckPetscErr(ierr," MatMPIAIJSetPreallocationCSR") @@ -770,15 +782,15 @@ subroutine destruct(this) !--------------------------------------------- CLASS(PETSCMatrix_t), intent(inout) :: this !--------------------------------------------- - + safedeallocate(this % BlockIdx) safedeallocate(this % BlockSizes) #ifdef HAS_PETSC CALL MatDestroy(this%A,ierr) - CALL CheckPetscErr(ierr," A destruction") - - call VecDestroy(this % rowvec,ierr) ; call CheckPetscErr(ierr,"Problem destructung vector") - call VecDestroy(this % colvec,ierr) ; call CheckPetscErr(ierr,"Problem destructung vector") + CALL CheckPetscErr(ierr," A destruction") + + call VecDestroy(this % rowvec,ierr) ; call CheckPetscErr(ierr,"Problem destructung vector") + call VecDestroy(this % colvec,ierr) ; call CheckPetscErr(ierr,"Problem destructung vector") #endif end subroutine destruct ! @@ -792,7 +804,7 @@ subroutine CheckPetscErr(ierr,msg) CHARACTER(LEN=*), OPTIONAL :: msg #ifdef HAS_PETSC PetscErrorCode, intent(in) :: ierr - + IF(ierr .EQ. 0) THEN RETURN ELSE @@ -805,5 +817,5 @@ subroutine CheckPetscErr(ierr,msg) STOP ':: PETSc is not linked correctly' #endif end subroutine CheckPetscErr - -end module PETScMatrixClass + +end module PETScMatrixClass \ No newline at end of file diff --git a/Solver/src/libs/jacobian/SparseBlockDiagonalMatrixClass.f90 b/Solver/src/libs/jacobian/SparseBlockDiagonalMatrixClass.f90 index 239e82c02..a5f186c1b 100644 --- a/Solver/src/libs/jacobian/SparseBlockDiagonalMatrixClass.f90 +++ b/Solver/src/libs/jacobian/SparseBlockDiagonalMatrixClass.f90 @@ -1,35 +1,34 @@ -! !//////////////////////////////////////////////////////////////////////// ! +! ! Class for sparse block diagonal matrices with sparse CSR blocks ! ! -> If block factorization and system solving is needed, MKL pardiso is needed ! !//////////////////////////////////////////////////////////////////////// -! module SparseBlockDiagonalMatrixClass use SMConstants use GenericMatrixClass use CSRMatrixClass, only: csrMat_t #include "Includes.h" implicit none - + private public SparseBlockDiagMatrix_t, Matrix_t - + type Block_t type(csrMat_t) :: Matrix - + ! Pardiso variables integer :: mtype ! Matrix type. See construct integer :: Pardiso_iparm(64) ! Parameters for mkl version of pardiso - integer(kind=AddrInt) :: Pardiso_pt(64) + integer(kind=AddrInt) :: Pardiso_pt(64) integer , allocatable :: Indexes(:) end type Block_t - + type, extends(Matrix_t) :: SparseBlockDiagMatrix_t type(Block_t), allocatable :: Blocks(:) ! Array containing each block in a dense matrix - + contains procedure :: construct procedure :: Preallocate @@ -44,11 +43,11 @@ module SparseBlockDiagonalMatrixClass procedure :: FactorizeBlocks_LU procedure :: SolveBlocks_LU end type SparseBlockDiagMatrix_t - + ! ! Interfaces for pardiso routines ! ******************************* - + interface subroutine pardiso(pt, maxfct, mnum, mtype, phase, n, values, rows, cols, perm, nrhs, iparm, msglvl, b, x, ierror) use SMConstants @@ -66,7 +65,7 @@ subroutine pardisoinit(pt, mtype, iparm) integer :: iparm(*) end subroutine pardisoinit end interface - + contains ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -84,22 +83,22 @@ subroutine construct(this,num_of_Rows,num_of_Cols,num_of_Blocks, num_of_TotalRow integer :: iBL integer :: dimPrb !--------------------------------------------- - + if ( .not. present(num_of_Blocks) ) then ERROR stop 'SparseBlockDiagMatrix_t needs num_of_Blocks' else dimPrb = num_of_Blocks end if - + allocate ( this % Blocks(dimPrb) ) this % num_of_Blocks = dimPrb allocate ( this % BlockSizes(dimPrb) ) allocate ( this % BlockIdx(dimPrb+1) ) - + #ifdef HAS_MKL do iBL = 1, dimPrb this % Blocks(iBL) % mtype = 11 !Set matrix type to real unsymmetric (change?) - + call pardisoinit(this % Blocks(iBL) % Pardiso_pt, this % Blocks(iBL) % mtype, this % Blocks(iBL) % Pardiso_iparm) end do #endif @@ -116,30 +115,30 @@ subroutine Preallocate(this, nnz, nnzs) !--------------------------------------------- integer :: i, k ! counters !--------------------------------------------- - + if (.not. present(nnzs) ) ERROR stop ':: SparseBlockDiagMatrix needs the block sizes' if ( size(nnzs) /= this % num_of_Blocks) ERROR stop ':: SparseBlockDiagMatrix: wrong dimension for the block sizes' - + this % BlockSizes = nnzs this % num_of_Rows = sum(nnzs) - + this % BlockIdx(1) = 1 do i=2, this % num_of_Blocks + 1 this % BlockIdx(i) = this % BlockIdx(i-1) + nnzs(i-1) end do - + !$omp parallel do private(k) schedule(runtime) do i=1, this % num_of_Blocks - + call this % Blocks(i) % Matrix % construct ( num_of_Rows = nnzs(i) ) call this % Blocks(i) % Matrix % PreAllocate() - + safedeallocate (this % Blocks(i) % Indexes) ; allocate ( this % Blocks(i) % Indexes(nnzs(i)) ) - + this % Blocks(i) % Indexes = (/ (k, k=this % BlockIdx(i),this % BlockIdx(i+1) - 1 ) /) - + end do -!$omp end parallel do +!$omp end parallel do end subroutine Preallocate ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -153,18 +152,18 @@ subroutine Reset(this, ForceDiagonal) integer :: i logical :: mustForceDiagonal !--------------------------------------------- - - + + if ( present(ForceDiagonal) ) then mustForceDiagonal = ForceDiagonal else mustForceDiagonal = .FALSE. end if - + do i=1, this % num_of_Blocks call this % Blocks(i) % Matrix % Reset(ForceDiagonal = mustForceDiagonal) end do - + end subroutine Reset ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -180,11 +179,11 @@ subroutine SetBlockEntry(this, iBlock, jBlock, i, j, value ) integer , intent(in) :: i, j real(kind=RP) , intent(in) :: value !--------------------------------------------- - + if (iBlock /= jBlock) return ! Only diagonal blocks here! - + call this % Blocks(iBlock) % Matrix % SetEntry (i, j, value) - + end subroutine SetBlockEntry ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -200,11 +199,11 @@ subroutine AddToBlockEntry(this, iBlock, jBlock, i, j, value ) integer , intent(in) :: i, j real(kind=RP) , intent(in) :: value !--------------------------------------------- - + if (iBlock /= jBlock) return ! Only diagonal blocks here! - + call this % Blocks(iBlock) % Matrix % AddToEntry (i, j, value) - + end subroutine AddToBlockEntry ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -218,11 +217,11 @@ subroutine ResetBlock(this, iBlock, jBlock ) class(SparseBlockDiagMatrix_t), intent(inout) :: this integer , intent(in) :: iBlock, jBlock !--------------------------------------------- - + if (iBlock /= jBlock) return ! Only diagonal blocks here! - + call this % Blocks(iBlock) % Matrix % Reset - + end subroutine ResetBlock ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -235,13 +234,13 @@ subroutine shift(this,shiftval) !------------------------------------------ INTEGER :: iBL !------------------------------------------ - + !$omp parallel do schedule(runtime) do iBL=1, this % num_of_Blocks call this % Blocks(iBL) % Matrix % shift (shiftval) end do !$omp end parallel do - + end subroutine shift ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -253,13 +252,13 @@ subroutine Assembly(this) !-local-variables----------------------------- integer :: iBL !--------------------------------------------- - + !$omp parallel do schedule(runtime) do iBL=1, this % num_of_Blocks call this % Blocks(iBL) % Matrix % Assembly end do !$omp end parallel do - + end subroutine Assembly ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -284,16 +283,16 @@ subroutine destruct(this) !--------------------------------------------- integer :: i !--------------------------------------------- - + do i = 1, this % num_of_Blocks call this % Blocks(i) % Matrix % destruct deallocate (this % Blocks(i) % Indexes) end do - + deallocate (this % Blocks) deallocate (this % BlockSizes) deallocate (this % BlockIdx) - + end subroutine destruct ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -314,7 +313,7 @@ subroutine FactorizeBlocks_LU(this,Factorized) real(kind=RP), allocatable :: x_loc(:) real(kind=RP), allocatable :: b_loc(:) !------------------------------------------------------------- - + #ifdef HAS_MKL select type (Factorized) class is(SparseBlockDiagMatrix_t) @@ -322,37 +321,37 @@ subroutine FactorizeBlocks_LU(this,Factorized) do iBL=1, this % num_of_Blocks associate (A => this % Blocks(iBL) % Matrix, & CBlock => Factorized % Blocks(iBL) ) - + call CBlock % Matrix % destruct call CBlock % Matrix % constructWithCSRArrays(A % Rows, & A % Cols, & A % Values) - + allocate( x_loc(CBlock % Matrix % num_of_Rows) ) allocate( b_loc(CBlock % Matrix % num_of_Rows) ) - + CALL pardiso( pt = CBlock % Pardiso_pt , & maxfct = 1 , & ! Set up space for 1 matrix at most mnum = 1 , & ! Matrix to use in the solution phase (1st and only one) mtype = CBlock % mtype , & phase = 12 , & ! 12 for factorization n = CBlock % Matrix % num_of_Rows, & ! Number of equations - values = CBlock % Matrix % Values , & + values = CBlock % Matrix % Values , & rows = CBlock % Matrix % Rows , & cols = CBlock % Matrix % Cols , & perm = CBlock % Indexes , & ! ... - nrhs = 1 , & ! Only one right hand side + nrhs = 1 , & ! Only one right hand side iparm = CBlock % Pardiso_iparm , & msglvl = 0 , & ! 1: verbose... Too much printing b = b_loc , & x = x_loc , & ierror = error ) - + if (error .NE. 0) then write(*,*) 'MKL Pardiso ERROR:', error, 'in factorization of block', iBL stop end if - + deallocate (x_loc, b_loc) end associate end do @@ -371,7 +370,7 @@ end subroutine FactorizeBlocks_LU ! -------------------------------------------------------- ! Solves a system of the for Ax=b using LU factorization in each block ! -> To be used with a matrix factorized using FactorizeBlocks_LU (Factorized) -! -> +! -> ! -------------------------------------------------------- subroutine SolveBlocks_LU(this,x,b) use DenseMatUtilities @@ -384,35 +383,35 @@ subroutine SolveBlocks_LU(this,x,b) integer :: iBL, error ! Counter real(kind=RP), allocatable :: x_loc(:) ! Local x !------------------------------------------------------------- - + #ifdef HAS_MKL !$omp parallel do private(x_loc,error) schedule(runtime) do iBL = 1, this % num_of_Blocks associate (CBlock => this % Blocks(iBL) ) allocate( x_loc(this % BlockSizes(iBL)) ) - + CALL pardiso( pt = CBlock % Pardiso_pt , & maxfct = 1 , & ! Set up space for 1 matrix at most mnum = 1 , & ! Matrix to use in the solution phase (1st and only one) mtype = CBlock % mtype , & phase = 33 , & ! 12 for factorization n = CBlock % Matrix % num_of_Rows, & ! Number of equations - values = CBlock % Matrix % Values , & + values = CBlock % Matrix % Values , & rows = CBlock % Matrix % Rows , & cols = CBlock % Matrix % Cols , & perm = CBlock % Indexes , & ! ... - nrhs = 1 , & ! Only one right hand side + nrhs = 1 , & ! Only one right hand side iparm = CBlock % Pardiso_iparm , & msglvl = 0 , & ! 1: verbose... Too much printing b = b (this % BlockIdx(iBL):this % BlockIdx(iBL+1)-1 ), & x = x_loc , & ierror = error ) - + if (error .NE. 0) then write(*,*) 'MKL Pardiso ERROR:', error, 'in inversion of block', iBL stop end if - + !$omp critical x( this % BlockIdx(iBL):this % BlockIdx(iBL+1)-1 ) = x_loc !$omp end critical @@ -423,9 +422,9 @@ subroutine SolveBlocks_LU(this,x,b) #else stop 'SparseBlockDiagMat :: MKL is not linked correctly' #endif - + end subroutine SolveBlocks_LU ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! -end module SparseBlockDiagonalMatrixClass +end module SparseBlockDiagonalMatrixClass \ No newline at end of file diff --git a/Solver/src/libs/jacobian/StaticCondensedMatrixClass.f90 b/Solver/src/libs/jacobian/StaticCondensedMatrixClass.f90 index 9fb21a617..dce2f3474 100644 --- a/Solver/src/libs/jacobian/StaticCondensedMatrixClass.f90 +++ b/Solver/src/libs/jacobian/StaticCondensedMatrixClass.f90 @@ -2,7 +2,7 @@ !////////////////////////////////////////////////////// ! ! StaticCondensedMatrixClass: -! -> This type of matrix reorganizes the Jacobian matrix as +! -> This type of matrix reorganizes the Jacobian matrix as ! ! +-----+-------+ ! | Mbb | Mib | @@ -26,34 +26,34 @@ module StaticCondensedMatrixClass use HexMeshClass , only: HexMesh use ElementClass , only: Element use MeshTypes , only: EFRONT, EBACK, EBOTTOM, ERIGHT, ETOP, ELEFT - + implicit none - + private public StaticCondensedMatrix_t, INNER_DOF, BOUNDARY_DOF, SC_MATRIX_CSR, SC_MATRIX_PETSC - + type ElemInfo_t integer, allocatable :: dof_association(:) ! Whether it is an INNER_DOF or a BOUNDARY_DOF integer, allocatable :: perm_Indexes(:) ! Permutation indexes for the map: element DOF -> Condensed system DOF (Mii- or Mbb-based according to dof_association ) integer, allocatable :: perm_Indexes_i(:) ! Permutation indexes for the map: element DOF -> relative index of the corresponding block in Mii end type ElemInfo_t - + type, extends(Matrix_t) :: StaticCondensedMatrix_t class(Matrix_t), allocatable :: Mbb ! Boundary to boundary matrix class(Matrix_t), allocatable :: Mib ! Interior to boundary matrix class(Matrix_t), allocatable :: Mbi ! Boundary to interior matrix type(DenseBlockDiagMatrix_t) :: Mii ! Interior to interior matirx - + type(ElemInfo_t), allocatable :: ElemInfo(:) integer, allocatable :: inner_blockSizes(:) - + integer :: MatrixType integer :: size_b ! Size of condensed system (size of Mbb) integer :: size_i ! Size of inner system (size of Mii) integer :: maxnumCon ! Maximum number of connections of any element - + logical :: ignore_boundaries = .FALSE. ! When .TRUE., Mii, does not contain the DOFs on the physical boundaries - + contains procedure :: construct => Static_construct procedure :: destruct => Static_destruct @@ -65,11 +65,11 @@ module StaticCondensedMatrixClass procedure :: Assembly => Static_Assembly procedure :: shift => Static_Shift procedure :: getSchurComplement => Static_getSchurComplement - + procedure :: constructPermutationArrays => Static_constructPermutationArrays procedure :: getCSR => Static_getCSR end type StaticCondensedMatrix_t - + ! ! ********** ! Parameters @@ -98,7 +98,7 @@ subroutine Static_construct(this,num_of_Rows,num_of_Cols,num_of_Blocks,num_of_To integer, optional, intent(in) :: num_of_TotalRows logical, optional, intent(in) :: WithMPI !--------------------------------------------- - + if ( .not. present(num_of_Rows) ) then ERROR stop 'StaticCondensedMatrix_t needs num_of_Rows' end if @@ -110,11 +110,11 @@ subroutine Static_construct(this,num_of_Rows,num_of_Cols,num_of_Blocks,num_of_To ERROR stop 'StaticCondensedMatrix_t must be a square matrix' end if end if - + this % num_of_Rows = num_of_Rows this % num_of_Cols = num_of_Rows ! Only for square matrices this % num_of_Blocks = num_of_Blocks - + end subroutine Static_construct ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -124,7 +124,7 @@ subroutine Static_destruct(this) !-arguments----------------------------------- class(StaticCondensedMatrix_t), intent(inout) :: this !<> This matrix !--------------------------------------------- - + call this % Mii % destruct call this % Mbb % destruct deallocate (this % Mbb) @@ -132,11 +132,11 @@ subroutine Static_destruct(this) deallocate (this % Mib) call this % Mbi % destruct deallocate (this % Mbi) - + deallocate (this % ElemInfo) deallocate (this % inner_blockSizes) deallocate (this % BlockSizes) - + this % size_b = 0 this % size_i = 0 this % num_of_Rows = 0 @@ -153,7 +153,7 @@ subroutine Static_Preallocate(this, nnz, nnzs) integer, optional , intent(in) :: nnz !< Not needed here integer, optional , intent(in) :: nnzs(:) !< nnzs contains the block sizes! !--------------------------------------------- - + select case (this % MatrixType) case (SC_MATRIX_CSR) ! @@ -171,7 +171,7 @@ subroutine Static_Preallocate(this, nnz, nnzs) call this % Mbi % Preallocate( nnz = this % maxnumCon * maxval(this % BlockSizes - this % inner_blockSizes) ) end select call this % Mii % Preallocate(nnzs = this % inner_blockSizes) - + end subroutine Static_Preallocate ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -184,18 +184,18 @@ subroutine Static_Reset(this, ForceDiagonal) !-local-variables----------------------------- logical :: mustForceDiagonal !--------------------------------------------- - + if ( present(ForceDiagonal) ) then mustForceDiagonal = ForceDiagonal else mustForceDiagonal = .FALSE. end if - + call this % Mii % reset(ForceDiagonal = mustForceDiagonal) call this % Mbb % reset(ForceDiagonal = mustForceDiagonal) call this % Mbi % reset call this % Mib % reset - + end subroutine Static_Reset ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -226,9 +226,9 @@ subroutine Static_SetBlockEntry(this, iBlock, jBlock, i, j, value ) integer :: dof_association(2) ! local DOF associations integer :: perm_Indexes(2) ! local permutation indexes !--------------------------------------------- - + dof_association = [ this % ElemInfo(iBlock) % dof_association(i) , this % ElemInfo(jBlock) % dof_association(j) ] - + select case ( dof_association(1) ) case (INNER_DOF) select case ( dof_association(2) ) @@ -238,17 +238,17 @@ subroutine Static_SetBlockEntry(this, iBlock, jBlock, i, j, value ) ! -------------------------- perm_Indexes = [ this % ElemInfo(iBlock) % perm_Indexes_i (i) , this % ElemInfo(jBlock) % perm_Indexes_i (j) ] call this % Mii % SetBlockEntry (iBlock, jBlock, perm_Indexes(1), perm_Indexes(2), value) - + case (BOUNDARY_DOF) ! ! Contribution to Mbi matrix ! -------------------------- perm_Indexes = [ this % ElemInfo(iBlock) % perm_Indexes (i) , this % ElemInfo(jBlock) % perm_Indexes (j) ] call this % Mbi % SetEntry(perm_Indexes(1), perm_Indexes(2), value ) - + case default ERROR stop 'StaticCondensedMatrix_t :: wrong permutation indexes' - + end select case (BOUNDARY_DOF) select case ( dof_association(2) ) @@ -258,22 +258,22 @@ subroutine Static_SetBlockEntry(this, iBlock, jBlock, i, j, value ) ! -------------------------- perm_Indexes = [ this % ElemInfo(iBlock) % perm_Indexes (i) , this % ElemInfo(jBlock) % perm_Indexes (j) ] call this % Mib % SetEntry(perm_Indexes(1), perm_Indexes(2), value ) - + case (BOUNDARY_DOF) ! ! Contribution to Mbb matrix ! -------------------------- perm_Indexes = [ this % ElemInfo(iBlock) % perm_Indexes (i) , this % ElemInfo(jBlock) % perm_Indexes (j) ] call this % Mbb % SetEntry(perm_Indexes(1), perm_Indexes(2), value ) - + case default ERROR stop 'StaticCondensedMatrix_t :: wrong permutation indexes' - + end select - + case default ERROR stop 'StaticCondensedMatrix_t :: wrong permutation indexes' - + end select end subroutine Static_SetBlockEntry ! @@ -293,9 +293,9 @@ subroutine Static_AddToBlockEntry(this, iBlock, jBlock, i, j, value ) integer :: dof_association(2) ! local DOF associations integer :: perm_Indexes(2) ! local permutation indexes !--------------------------------------------- - + dof_association = [ this % ElemInfo(iBlock) % dof_association(i) , this % ElemInfo(jBlock) % dof_association(j) ] - + select case ( dof_association(1) ) case (INNER_DOF) select case ( dof_association(2) ) @@ -305,17 +305,17 @@ subroutine Static_AddToBlockEntry(this, iBlock, jBlock, i, j, value ) ! -------------------------- perm_Indexes = [ this % ElemInfo(iBlock) % perm_Indexes_i (i) , this % ElemInfo(jBlock) % perm_Indexes_i (j) ] call this % Mii % AddToBlockEntry (iBlock, jBlock, perm_Indexes(1), perm_Indexes(2), value) - + case (BOUNDARY_DOF) ! ! Contribution to Mbi matrix ! -------------------------- perm_Indexes = [ this % ElemInfo(iBlock) % perm_Indexes (i) , this % ElemInfo(jBlock) % perm_Indexes (j) ] call this % Mbi % AddToEntry(perm_Indexes(1), perm_Indexes(2), value ) - + case default ERROR stop 'StaticCondensedMatrix_t :: wrong permutation indexes' - + end select case (BOUNDARY_DOF) select case ( dof_association(2) ) @@ -325,24 +325,24 @@ subroutine Static_AddToBlockEntry(this, iBlock, jBlock, i, j, value ) ! -------------------------- perm_Indexes = [ this % ElemInfo(iBlock) % perm_Indexes (i) , this % ElemInfo(jBlock) % perm_Indexes (j) ] call this % Mib % AddToEntry(perm_Indexes(1), perm_Indexes(2), value ) - + case (BOUNDARY_DOF) ! ! Contribution to Mbb matrix ! -------------------------- perm_Indexes = [ this % ElemInfo(iBlock) % perm_Indexes (i) , this % ElemInfo(jBlock) % perm_Indexes (j) ] call this % Mbb % AddToEntry(perm_Indexes(1), perm_Indexes(2), value ) - + case default ERROR stop 'StaticCondensedMatrix_t :: wrong permutation indexes' - + end select - + case default ERROR stop 'StaticCondensedMatrix_t :: wrong permutation indexes' - + end select - + end subroutine Static_AddToBlockEntry ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -352,12 +352,12 @@ subroutine Static_Assembly(this) !--------------------------------------------- class(StaticCondensedMatrix_t), intent(inout) :: this !--------------------------------------------- - + call this % Mii % Assembly call this % Mbb % Assembly call this % Mib % Assembly call this % Mbi % Assembly - + end subroutine Static_Assembly ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -368,10 +368,10 @@ subroutine Static_Shift(this, shiftval) class(StaticCondensedMatrix_t), intent(inout) :: this real(kind=RP) , intent(in) :: shiftval !--------------------------------------------- - + call this % Mbb % shift(shiftval) call this % Mii % shift(shiftval) - + end subroutine Static_Shift ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -402,32 +402,32 @@ subroutine Static_constructPermutationArrays(this,mesh,nEqn,MatrixType,ignore_bo integer , pointer :: Nz(:) type(Element) , pointer :: e !--------------------------------------------- - + if ( present(ignore_boundaries) ) then this % ignore_boundaries = ignore_boundaries end if - + this % MatrixType = MatrixType - + count_i = 0 count_b = 0 - + nelem = mesh % no_of_elements this % num_of_Blocks = nelem Nx => mesh % Nx Ny => mesh % Ny Nz => mesh % Nz - + safedeallocate(this % ElemInfo) safedeallocate(this % inner_blockSizes) safedeallocate(this % BlockSizes) - + allocate ( this % ElemInfo(nelem) ) allocate ( this % inner_blockSizes(nelem) ) allocate ( this % BlockSizes(nelem) ) - + this % maxnumCon = 0 - + if (this % ignore_boundaries) then ! ! Do not assign (physical) boundary DOFs to Mii @@ -437,19 +437,19 @@ subroutine Static_constructPermutationArrays(this,mesh,nEqn,MatrixType,ignore_bo NDOF = nEqn * (Nx(eID) + 1) * (Ny(eID) + 1) * (Nz(eID) + 1) this % inner_blockSizes(eID) = nEqn * (Nx(eID) - 1) * (Ny(eID) - 1) * (Nz(eID) - 1) this % BlockSizes(eID) = nEqn * (Nx(eID) + 1) * (Ny(eID) + 1) * (Nz(eID) + 1) - + allocate ( this % ElemInfo(eID) % perm_Indexes (NDOF) ) allocate ( this % ElemInfo(eID) % perm_Indexes_i (NDOF) ) allocate ( this % ElemInfo(eID) % dof_association(NDOF) ) this % ElemInfo(eID) % perm_Indexes_i = -1 - + this % maxnumCon = max(this % maxnumCon,sum(e % NumberOfConnections)) - + count_ii = 0 count_el = 0 do k=0, Nz(eID) ; do j=0, Ny(eID) ; do i=0, Nx(eID) ; do eq=1, nEqn count_el = count_el + 1 - + if ( (i==0) .or. (i==Nx(eID)) .or. (j==0) .or. (j==Ny(eID)) .or. (k==0) .or. (k==Nz(eID)) ) then this % ElemInfo(eID) % dof_association(count_el) = BOUNDARY_DOF count_b = count_b + 1 @@ -461,9 +461,9 @@ subroutine Static_constructPermutationArrays(this,mesh,nEqn,MatrixType,ignore_bo count_ii = count_ii + 1 this % ElemInfo(eID) % perm_Indexes_i(count_el) = count_ii end if - + end do ; end do ; end do ; end do - + end do else ! @@ -474,19 +474,19 @@ subroutine Static_constructPermutationArrays(this,mesh,nEqn,MatrixType,ignore_bo NDOF = nEqn * (Nx(eID) + 1) * (Ny(eID) + 1) * (Nz(eID) + 1) this % inner_blockSizes(eID) = 0 this % BlockSizes(eID) = nEqn * (Nx(eID) + 1) * (Ny(eID) + 1) * (Nz(eID) + 1) - + allocate ( this % ElemInfo(eID) % perm_Indexes (NDOF) ) allocate ( this % ElemInfo(eID) % perm_Indexes_i (NDOF) ) allocate ( this % ElemInfo(eID) % dof_association(NDOF) ) this % ElemInfo(eID) % perm_Indexes_i = -1 - + this % maxnumCon = max(this % maxnumCon,sum(e % NumberOfConnections)) - + count_ii = 0 count_el = 0 do k=0, Nz(eID) ; do j=0, Ny(eID) ; do i=0, Nx(eID) ; do eq=1, nEqn count_el = count_el + 1 - + if ( (j==0 .and. e % NumberOfConnections(EFRONT ) > 0 ) & .or. (j==Ny(eID) .and. e % NumberOfConnections(EBACK ) > 0 ) & .or. (k==0 .and. e % NumberOfConnections(EBOTTOM) > 0 ) & @@ -504,16 +504,16 @@ subroutine Static_constructPermutationArrays(this,mesh,nEqn,MatrixType,ignore_bo this % ElemInfo(eID) % perm_Indexes_i(count_el) = count_ii this % inner_blockSizes(eID) = this % inner_blockSizes(eID) + 1 end if - + end do ; end do ; end do ; end do - + end do end if - + if ( (count_i+count_b) /= this % num_of_Rows ) then ERROR stop 'StaticCondensedMatrixClass :: Invalid arguments in constructPermutationArrays' end if - + this % size_i = count_i this % size_b = count_b ! @@ -538,7 +538,7 @@ subroutine Static_constructPermutationArrays(this,mesh,nEqn,MatrixType,ignore_bo call this % Mbb % construct (num_of_Rows = this % size_b) call this % Mib % construct (num_of_Rows = this % size_b , num_of_Cols = this % size_i) call this % Mbi % construct (num_of_Rows = this % size_i , num_of_Cols = this % size_b) - + end subroutine Static_constructPermutationArrays ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -562,23 +562,23 @@ subroutine Static_getCSR(this,Acsr) real(kind=RP), allocatable :: Values(:) integer , allocatable :: Cols(:), Rows(:) !---------------------------------------------------------------- - + select type(Mbb => this % Mbb) ; class is(csrMat_t) ; select type(Mbi => this % Mbi) ; class is(csrMat_t) ; select type(Mib => this % Mib) ; class is(csrMat_t) - + num_of_entries = size(Mbb % Values) + size(Mib % Values) + size(Mbi % Values) + sum(this % Mii % BlockSizes**2) - + allocate ( Rows (this % num_of_Rows + 1) ) allocate ( Cols (num_of_entries) ) allocate ( Values(num_of_entries) ) - + k = 1 - + ! Fill the boundary degrees of freedom ! ------------------------------------ - + do i=1, this % size_b Rows(i) = k - + ! Mbb contribution ! ---------------- do kk=Mbb % Rows(i), Mbb % Rows(i+1)-1 @@ -586,7 +586,7 @@ subroutine Static_getCSR(this,Acsr) Values(k) = Mbb % Values(kk) k = k + 1 end do - + ! Mib contribution ! ---------------- do kk=Mib % Rows(i), Mib % Rows(i+1)-1 @@ -595,15 +595,15 @@ subroutine Static_getCSR(this,Acsr) k = k + 1 end do end do - + ! Fill the inner degrees of freedom ! --------------------------------- lastbID = 1 - + do ii=1, this % size_i i = ii + this % size_b Rows(i) = k - + ! Mbi contribution ! ---------------- do kk=Mbi % Rows(ii), Mbi % Rows(ii+1)-1 @@ -611,41 +611,41 @@ subroutine Static_getCSR(this,Acsr) Values(k) = Mbi % Values(kk) k = k + 1 end do - + ! Mii contribution ! ---------------- do bID=lastbID, this % Mii % num_of_Blocks ! Search the block where this row is contained if (this % Mii % BlockIdx(bID+1) > ii) then - + do bi=1, this % Mii % BlockSizes(bID) ! Search the block row that corresponds to this row - + if ( this % Mii % BlockIdx(bID) + bi -1 == ii) then - + do bj=1, this % Mii % BlockSizes(bID) Cols(k) = (this % Mii % BlockIdx(bID) + bj - 1) + this % size_b Values(k) = this % Mii % Blocks(bID) % Matrix(bi,bj) k = k + 1 end do - + exit end if end do - + lastbID = bID exit end if end do end do Rows (this % num_of_Rows + 1) = k - + ! Finish constructing the matrix ! ------------------------------ call Acsr % constructWithCSRArrays(Rows, Cols, Values, this % num_of_Cols) - + class default stop 'ERROR :: Static_getCSR not defined for submatrices /= cstMat_t' end select ; end select ; end select - + end subroutine Static_getCSR ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -661,7 +661,7 @@ subroutine Static_getSchurComplement(this, Mii_inv, SchurComp) class(Matrix_t) , intent(in) :: Mii_inv class(Matrix_t) , intent(inout) :: SchurComp !-local-variables------------------------------------------------ - class(Matrix_t), allocatable :: Mii_inv_Mbi + class(Matrix_t), allocatable :: Mii_inv_Mbi class(Matrix_t), allocatable :: Mib_Mii_inv_Mbi integer :: BlockIdx(this % num_of_Blocks+1), BlockSizes(this % num_of_Blocks), bID !---------------------------------------------------------------- @@ -679,16 +679,16 @@ subroutine Static_getSchurComplement(this, Mii_inv, SchurComp) end select call Mii_inv_Mbi % construct (num_of_Rows = this % size_i, num_of_Cols = this % size_b) call Mib_Mii_inv_Mbi % construct (num_of_Rows = this % size_b, num_of_Cols = this % size_b) - + ! Perform operations ! ------------------ call Mii_inv % MatMatMul( this % Mbi, Mii_inv_Mbi) call this % Mib % MatMatMul( Mii_inv_Mbi, Mib_Mii_inv_Mbi ) call Mii_inv_Mbi % destruct ; deallocate (Mii_inv_Mbi) - + call this % Mbb % MatAdd (Mib_Mii_inv_Mbi, SchurComp, -1._RP) call Mib_Mii_inv_Mbi % destruct ; deallocate(Mib_Mii_inv_Mbi) - + ! Specify info of matrix ! ---------------------- BlockSizes = this % BlockSizes - this % inner_blockSizes @@ -697,6 +697,6 @@ subroutine Static_getSchurComplement(this, Mii_inv, SchurComp) BlockIdx(bID+1) = BlockIdx(bID) + BlockSizes(bID) end do call SchurComp % SpecifyBlockInfo(BlockIdx, BlockSizes) - + end subroutine Static_getSchurComplement -end module StaticCondensedMatrixClass +end module StaticCondensedMatrixClass \ No newline at end of file diff --git a/Solver/src/libs/jacobian/mkl_spblas.f90 b/Solver/src/libs/jacobian/mkl_spblas.f90 index 15061c5b3..70f02fbcc 100644 --- a/Solver/src/libs/jacobian/mkl_spblas.f90 +++ b/Solver/src/libs/jacobian/mkl_spblas.f90 @@ -2,7 +2,7 @@ !////////////////////////////////////////////////////// ! ! Useful Fortran interfaces for SparseBLAS routines. Most of the them are copied -! from Intel OneAPI v. 2021.3.0. +! from Intel OneAPI v. 2021.3.0. ! !////////////////////////////////////////////////////// ! @@ -129,7 +129,7 @@ MODULE MKL_SPBLAS INTEGER(C_INT) :: DIAG END TYPE MATRIX_DESCR -! struct to store MKL parameters for HORSES3D +! struct to store MKL parameters for HORSES3D TYPE MKL_Global type(SPARSE_MATRIX_T) :: csrA type(MATRIX_DESCR) :: descrA @@ -1596,7 +1596,7 @@ FUNCTION MKL_SPARSE_SET_LU_SMOOTHER_HINT(A,operation,descr,expected_calls) & IMPORT SPARSE_MATRIX_T IMPORT MATRIX_DESCR TYPE(SPARSE_MATRIX_T), INTENT(INOUT) :: A - INTEGER(C_INT) , INTENT(IN) :: operation + INTEGER(C_INT) , INTENT(IN) :: operation TYPE(MATRIX_DESCR) , INTENT(IN) :: descr ! sparse_matrix_type_t + sparse_fill_mode_t + sparse_diag_type_t INTEGER , INTENT(IN) :: expected_calls INTEGER(C_INT) MKL_SPARSE_SET_LU_SMOOTHER_HINT @@ -1712,4 +1712,4 @@ FUNCTION MKL_SPARSE_Z_UPDATE_VALUES(A,nvalues,indx,indy,values) & END INTERFACE -END MODULE MKL_SPBLAS +END MODULE MKL_SPBLAS \ No newline at end of file diff --git a/Solver/src/libs/mesh/ConnectivityClass.f90 b/Solver/src/libs/mesh/ConnectivityClass.f90 index 4db7326cb..a213260f6 100644 --- a/Solver/src/libs/mesh/ConnectivityClass.f90 +++ b/Solver/src/libs/mesh/ConnectivityClass.f90 @@ -1,18 +1,3 @@ -! -!////////////////////////////////////////////////////// -! -! @File: ConnectivityClass.f90 -! @Last revision commit: 8958d076d5d206d1aa118cdd3b9adf6d8de60aa3 -! -!////////////////////////////////////////////////////// -! -! -!//////////////////////////////////////////////////////////////////////// -! -! ConnectivityClass.f90 -! -!//////////////////////////////////////////////////////////////////////// -! #include "Includes.h" module ConnectivityClass use SMConstants @@ -60,4 +45,4 @@ elemental SUBROUTINE DestructConnectivity( this ) END SUBROUTINE DestructConnectivity - END Module ConnectivityClass + END Module ConnectivityClass \ No newline at end of file diff --git a/Solver/src/libs/mesh/FaceClass.f90 b/Solver/src/libs/mesh/FaceClass.f90 index 2fafbe184..ddc80e363 100644 --- a/Solver/src/libs/mesh/FaceClass.f90 +++ b/Solver/src/libs/mesh/FaceClass.f90 @@ -1139,4 +1139,4 @@ elemental subroutine Face_Assign(to,from) to % geom = from % geom to % storage = from % storage end subroutine Face_Assign -end Module FaceClass +end Module FaceClass \ No newline at end of file diff --git a/Solver/src/libs/mesh/FacePatchClass.f90 b/Solver/src/libs/mesh/FacePatchClass.f90 index 600b19808..37efad094 100644 --- a/Solver/src/libs/mesh/FacePatchClass.f90 +++ b/Solver/src/libs/mesh/FacePatchClass.f90 @@ -692,4 +692,4 @@ END FUNCTION EvaluateLagrangePolyDeriv ! ! ********** END MODULE FacePatchClass -! ********** +! ********** \ No newline at end of file diff --git a/Solver/src/libs/mesh/HexElementClass.f90 b/Solver/src/libs/mesh/HexElementClass.f90 index d1f9b8010..bef2c3e57 100644 --- a/Solver/src/libs/mesh/HexElementClass.f90 +++ b/Solver/src/libs/mesh/HexElementClass.f90 @@ -12,6 +12,8 @@ ! One will associate boundary conditions to boundaries in the routine ! "ExternalState". ! +! Modified 2D Code to move solution into element class. 5/14/15, 5:36 PM +! !//////////////////////////////////////////////////////////////////////// ! Module ElementClass @@ -73,9 +75,8 @@ Module ElementClass type(ElementStorage_t), pointer :: storage type(SurfInfo_t) :: SurfInfo ! Information about the geometry of the neighboring faces, as in the mesh file type(TransfiniteHexMap) :: hexMap ! High-order mapper - logical, dimension(:,:,:), allocatable :: isInsideBody, isForcingPoint ! Immersed boundaty term -> if InsideBody(i,j,k) = true, the point(i,j,k) is inside the body (IB) - integer, dimension(:,:,:), allocatable :: STL !STL file the DoFbelongs to if isInsideBody = .true. (IB) - integer :: IP_index + logical, dimension(:,:,:), allocatable :: isInsideBody != .false. ! Immersed boundaty term -> if InsideBody(i,j,k) = true, the point(i,j,k) is inside the body + integer, dimension(:,:,:,:), allocatable :: STL !STL file the DoFbelongs to if isInsideBody = .true. contains procedure :: Construct => HexElement_Construct procedure :: Destruct => HexElement_Destruct @@ -167,10 +168,6 @@ elemental SUBROUTINE HexElement_Destruct( self ) call self % hexMap % destruct call self % SurfInfo % destruct - - if( allocated(self% isInsideBody) ) deallocate(self% isInsideBody) - if( allocated(self% isForcingPoint) ) deallocate(self% isForcingPoint) - if( allocated(self% STL) ) deallocate(self% STL) END SUBROUTINE HexElement_Destruct ! @@ -771,6 +768,7 @@ end function HexElement_EvaluateSolutionAtPoint ! ! -------------------------------------------------------- ! Adapts an element to new polynomial orders NNew +! -> TODO: Previous solutions are not implemented ! -------------------------------------------------------- subroutine HexElement_pAdapt (self, NNew, nodes, saveGradients, prevSol_num) implicit none @@ -806,7 +804,7 @@ subroutine HexElement_pAdapt (self, NNew, nodes, saveGradients, prevSol_num) call tempStorage % InterpolateSolution (self % storage, nodes, saveGradients) if (prevSol_num > 0) then - + ! TODO : call InterpolatePrevSol end if call tempStorage % destruct() @@ -853,14 +851,11 @@ subroutine HexElement_ConstructIBM( self, Nx, Ny, Nz, NumOfSTL ) integer, intent(in) :: Nx, Ny, Nz, NumOfSTL !< Polynomial orders, num of stl files allocate(self% isInsideBody(0:Nx,0:Ny,0:Nz)) - allocate(self% isForcingPoint(0:Nx,0:Ny,0:Nz)) - allocate(self% STL(0:Nx,0:Ny,0:Nz)) - - self% isInsideBody = .false. - self% isForcingPoint = .false. - self% STL = 0 - self% IP_index = 0 + allocate(self% STL(NumOfSTL,0:Nx,0:Ny,0:Nz)) + + self% isInsideBody = .false. + self% STL = 0 end subroutine HexElement_ConstructIBM - END Module ElementClass + END Module ElementClass \ No newline at end of file diff --git a/Solver/src/libs/mesh/HexElementConnectivityDefinitions.f90 b/Solver/src/libs/mesh/HexElementConnectivityDefinitions.f90 index 421339b42..c4e4bcba8 100644 --- a/Solver/src/libs/mesh/HexElementConnectivityDefinitions.f90 +++ b/Solver/src/libs/mesh/HexElementConnectivityDefinitions.f90 @@ -248,4 +248,4 @@ MODULE ElementConnectivityDefinitions ILLEG, 2 , ILLEG, 1 , & 2 , ILLEG, -1 , ILLEG/),(/4,4/)) - END MODULE ElementConnectivityDefinitions + END MODULE ElementConnectivityDefinitions \ No newline at end of file diff --git a/Solver/src/libs/mesh/HexMesh.f90 b/Solver/src/libs/mesh/HexMesh.f90 index a5d80c89c..8cfa8164b 100644 --- a/Solver/src/libs/mesh/HexMesh.f90 +++ b/Solver/src/libs/mesh/HexMesh.f90 @@ -1,11 +1,3 @@ -! -!////////////////////////////////////////////////////// -! -! @File: -! @Last revision commit: db0669408a09b12909b03856ec101a38d42f4e79 -! -!////////////////////////////////////////////////////// -! #include "Includes.h" MODULE HexMeshClass use Utilities , only: toLower, almostEqual, AlmostEqualRelax @@ -206,7 +198,7 @@ SUBROUTINE HexMesh_Destruct( self ) call self% IBM% destruct( .false. ) end if end if - + END SUBROUTINE HexMesh_Destruct ! ! ------------- @@ -1583,6 +1575,7 @@ SUBROUTINE WriteCoordFile(self,nEqn, FileName) ! ! ------------------------------------------------------------------------ ! Determine the number of degrees of freedom +! TODO: Move this to another place if needed in other parts of the code ! ------------------------------------------------------------------------ ! ndof = 0 @@ -2059,6 +2052,7 @@ subroutine HexMesh_SetConnectivitiesAndLinkFaces(self,nodes,facesList) ! ! -------------------------- ! Allocate MPI Faces storage +! TODO: This can be optimized when facesList is present ! -------------------------- ! if ( MPI_Process % doMPIAction ) then @@ -2184,6 +2178,7 @@ end subroutine HexMesh_UpdateFacesWithPartition ! ----------------------------------------------------------------------------- ! Construct geometry of faces and elements ! -> This routine guarantees that the mapping is subparametric or isoparametric +! -> TODO: Additional considerations are needed for p-nonconforming representations with inner curved faces ! ----------------------------------------------------------------------------- subroutine HexMesh_ConstructGeometry(self, facesList, elementList) implicit none @@ -2370,7 +2365,7 @@ subroutine HexMesh_ConstructGeometry(self, facesList, elementList) end if end select - if ( any(CLN < NSurfR) ) then + if ( any(CLN < NSurfR) ) then ! TODO JMT: I have added this.. is correct? allocate(faceCL(1:3,CLN(1)+1,CLN(2)+1)) call ProjectFaceToNewPoints(SurfInfo(eIDRight) % facePatches(SideIDR), CLN(1), NodalStorage(CLN(1)) % xCGL, & CLN(2), NodalStorage(CLN(2)) % xCGL, faceCL) @@ -2415,16 +2410,16 @@ subroutine HexMesh_ConstructGeometry(self, facesList, elementList) if ( SurfInfo(eID) % IsHex8 .or. all(NSurf == 1) ) cycle if (self % elements(eID) % faceSide(side) == LEFT) then - CLN(1) = f % NfLeft(1) - CLN(2) = f % NfLeft(2) + CLN(1) = f % NfLeft(1) ! TODO in MPI faces, p-adaption has + CLN(2) = f % NfLeft(2) ! not been accounted yet. else - CLN(1) = f % NfRight(1) - CLN(2) = f % NfRight(2) + CLN(1) = f % NfRight(1) ! TODO in MPI faces, p-adaption has + CLN(2) = f % NfRight(2) ! not been accounted yet. end if if ( side .eq. 2 ) then ! Right faces need to be rotated select case ( f % rotation ) - case ( 1, 3, 4, 6 ) ! Local x and y axis are perpendicular + case ( 1, 3, 4, 6 ) ! Local x and y axis are perpendicular ! TODO this is correct? if (CLN(1) /= CLN(2)) then buffer = CLN(1) CLN(1) = CLN(2) @@ -3124,7 +3119,7 @@ subroutine HexMesh_LoadSolutionForRestart( self, controlVariables, initial_itera auxMesh % Nz(eID) = Nz (e % globID) e_aux % globID = e % globID e_aux % Nxyz = [Nx(e % globID) , Ny(e % globID) , Nz(e % globID)] - NDOF = NDOF + (Nx(e % globID) + 1) * (Ny(e % globID) + 1) * (Nz(e % globID) + 1) + NDOF = NDOF + (Nx(e % globID) + 1) * (Ny(e % globID) + 1) * (Nz(e % globID) + 1) ! TODO: change for new NDOF end associate end do @@ -3585,9 +3580,7 @@ subroutine HexMesh_ComputeWallDistances(self,facesList,elementList) if( self% IBM% active ) then allocate(e % geom % normal(NDIM, 0:e % Nxyz(1), 0:e % Nxyz(2), 0:e % Nxyz(3))) e % geom % dWall = huge(1.0_RP) - endif - - if( .not. self% IBM% active ) then + else do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) xP = e % geom % x(:,i,j,k) @@ -3623,9 +3616,7 @@ subroutine HexMesh_ComputeWallDistances(self,facesList,elementList) allocate(fe % geom % dWall(0:fe % Nf(1), 0:fe % Nf(2))) if( self% IBM% active ) then fe % geom % dWall = huge(1.0_RP) - endif - - if( .not. self% IBM% active ) then + else do j = 0, fe % Nf(2) ; do i = 0, fe % Nf(1) xP = fe % geom % x(:,i,j) @@ -4300,4 +4291,4 @@ subroutine HexMesh_Assign (to, from) end subroutine HexMesh_Assign -END MODULE HexMeshClass +END MODULE HexMeshClass \ No newline at end of file diff --git a/Solver/src/libs/mesh/IBMClass.f90 b/Solver/src/libs/mesh/IBMClass.f90 index 97f45f442..2dae0c811 100644 --- a/Solver/src/libs/mesh/IBMClass.f90 +++ b/Solver/src/libs/mesh/IBMClass.f90 @@ -46,7 +46,8 @@ module IBMClass ComputeDistance = .false., & AAB = .false. real(kind=rp) :: eta, BandRegionCoeff, IP_Distance = 0.0_RP, & - y_plus_target, minCOORDS, maxCOORDS + y_plus_target, minCOORDS, maxCOORDS, & + penalCoeff real(kind=rp), allocatable :: penalization(:) integer :: KDtree_Min_n_of_Objs, NumOfInterPoints, & n_of_INpoints, rank, lvl = 0, NumOfSTL, & @@ -143,7 +144,8 @@ subroutine IBM_GetInfo( this, controlVariables ) plotBandPoints_in, plotMask_in, & BandRegion_in, Distance_in, AAB_in real(kind=rp), allocatable :: penalization_in, y_plus_target_in, & - BandRegionCoeff_in + BandRegionCoeff_in, & + penalization_coeff_in integer, allocatable :: n_of_Objs_in, n_of_interpoints_in, & Nx_in, Ny_in, Nz_in, Clipaxis_in character(len=LINE_LENGTH) :: in_label, paramFile, name_in, tmp, & @@ -157,26 +159,27 @@ subroutine IBM_GetInfo( this, controlVariables ) ! ********** write(in_label , '(A)') "#define ibm" call get_command_argument(1, paramFile) - call readValueInRegion( trim( paramFile ), "name", name_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "active", active_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "penalization", penalization_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "semi implicit", semiImplicit_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "nx", Nx_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "ny", Ny_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "nz", Nz_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "target y plus", y_plus_target_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "number of objects", n_of_Objs_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "number of interpolation points", n_of_interpoints_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "clip axis", Clipaxis_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "band region", BandRegion_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "distance", Distance_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "band region coeff", BandRegionCoeff_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "aab", AAB_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "intepolation", InterpolationType_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "plot obb", plotOBB_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "plot kdtree" , plotKDtree_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "plot mask", plotMask_in, in_label, "#end" ) - call readValueInRegion( trim( paramFile ), "plot band points", plotBandPoints_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "name", name_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "active", active_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "penalization", penalization_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "penalization coeff", penalization_coeff_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "semi implicit", semiImplicit_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "nx", Nx_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "ny", Ny_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "nz", Nz_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "target y plus", y_plus_target_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "number of objects", n_of_Objs_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "number of interpolation points", n_of_interpoints_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "clip axis", Clipaxis_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "band region", BandRegion_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "distance", Distance_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "band region coeff", BandRegionCoeff_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "aab", AAB_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "intepolation", InterpolationType_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "plot obb", plotOBB_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "plot kdtree" , plotKDtree_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "plot mask", plotMask_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "plot band points", plotBandPoints_in, in_label, "#end" ) this% filename = trim(name_in) @@ -231,7 +234,13 @@ subroutine IBM_GetInfo( this, controlVariables ) this% eta = 0.1_RP this% TimePenal = .true. end if - + + if( allocated(penalization_coeff_in) ) then + this% penalCoeff = penalization_coeff_in + else + this% penalCoeff = 1.0_RP + end if + if( allocated(n_of_Objs_in) ) then this% KDtree_Min_n_of_Objs = n_of_Objs_in else @@ -352,7 +361,7 @@ subroutine IBM_construct( this, controlVariables ) allocate( this% rootPoints(this% NumOfSTL), & this% BandRegion(this% NumOfSTL) ) end if - + if( this% ComputeDistance ) allocate(this% rootDistance(this% NumOfSTL)) do STLNum = 1, this% NumOfSTL @@ -663,6 +672,8 @@ subroutine IBM_SetIntegration( this, STLNum ) !-local-variables------------------------ integer :: i, j + if( this% Integral(STLNum)% compute ) return + do i = 1, this% root(STLNum)% NumOfObjs do j = 1, 3 allocate( this% root(STLNum)% ObjectsList(i)% vertices(j)% nearestPoints(this% NumOfInterPoints), & @@ -1324,23 +1335,25 @@ subroutine IBM_GetForcingPointsGeom( this, elements ) d = huge(1.0_RP) do eID = 1, size(elements) - dx = maxval(elements(eID)% SurfInfo% corners(1,:)) - minval(elements(eID)% SurfInfo% corners(1,:)) - dy = maxval(elements(eID)% SurfInfo% corners(2,:)) - minval(elements(eID)% SurfInfo% corners(2,:)) - dz = maxval(elements(eID)% SurfInfo% corners(3,:)) - minval(elements(eID)% SurfInfo% corners(3,:)) - d = min(d,min(abs(dx),abs(dy),abs(dz))) + dx = maxval(elements(eID)% SurfInfo% corners(1,:)) - minval(elements(eID)% SurfInfo% corners(1,:)) + dy = maxval(elements(eID)% SurfInfo% corners(2,:)) - minval(elements(eID)% SurfInfo% corners(2,:)) + dz = maxval(elements(eID)% SurfInfo% corners(3,:)) - minval(elements(eID)% SurfInfo% corners(3,:)) + d = min(d,min(abs(dx),abs(dy),abs(dz))) end do d_min = sqrt(3.0_RP)*d #ifdef _HAS_MPI_ - call mpi_allreduce(d_min, this% IP_Distance, 1, MPI_DOUBLE, MPI_MIN, MPI_COMM_WORLD, ierr) - call mpi_allreduce(d, Dist, 1, MPI_DOUBLE, MPI_MIN, MPI_COMM_WORLD, ierr) + call mpi_allreduce(d_min, this% IP_Distance, 1, MPI_DOUBLE, MPI_MIN, MPI_COMM_WORLD, ierr) + Dist = this% IP_Distance this% IP_Distance = 1.5_RP*this% IP_Distance #else + this% IP_Distance = d_min + Dist = this% IP_Distance this% IP_Distance = 1.5_RP*this% IP_Distance - Dist = d #endif + do eID = 1, size(elements) do k = 0, elements(eID)% Nxyz(3); do j = 0, elements(eID)% Nxyz(2); do i = 0, elements(eID)% Nxyz(1) - if( elements(eID)% geom% dWall(i,j,k) .gt. Dist ) cycle + if( elements(eID)% geom% dWall(i,j,k) .gt. this% IP_Distance ) cycle elements(eID)% isForcingPoint(i,j,k) = .true. this% NumOfForcingPoints = this% NumOfForcingPoints + 1 end do; end do; end do @@ -1708,7 +1721,7 @@ end subroutine SetDistances ! ------------------------------------------------- ! Source terms for the immersed boundary ! ------------------------------------------------ - subroutine IBM_SourceTerm( this, eID, Q, Q_target, Source ) + subroutine IBM_SourceTerm( this, eID, Q, Q_target, Source, Wallfunction ) use PhysicsStorage implicit none !-arguments-------------------------------------------- @@ -1717,6 +1730,7 @@ subroutine IBM_SourceTerm( this, eID, Q, Q_target, Source ) real(kind=rp), intent(in) :: Q(:) real(kind=rp), optional, intent(in) :: Q_target(:) real(kind=rp), intent(inout) :: Source(:) + logical, intent(in) :: Wallfunction !-local-variables-------------------------------------- real(kind=rp) :: rho, rho_s, u, u_s, v, v_s, w, w_s #if defined(SPALARTALMARAS) @@ -1746,7 +1760,7 @@ subroutine IBM_SourceTerm( this, eID, Q, Q_target, Source ) u = Q(IRHOU)/rho v = Q(IRHOV)/rho w = Q(IRHOW)/rho - + Source(IRHOU) = rho*u-rho_s*u_s Source(IRHOV) = rho*v-rho_s*v_s Source(IRHOW) = rho*w-rho_s*w_s @@ -1757,8 +1771,12 @@ subroutine IBM_SourceTerm( this, eID, Q, Q_target, Source ) Source(IRHOTHETA) = rho*theta - rho_s*theta_s #endif #endif - Source = -1.0_RP/this% penalization(eID) * Source - + if( Wallfunction ) then + Source = -1.0_RP/(this% penalCoeff * this% penalization(eID)) * Source + else + Source = -1.0_RP/this% penalization(eID) * Source + end if + end subroutine IBM_SourceTerm ! ! Analytical jacobian: dS/dQ @@ -1830,7 +1848,7 @@ subroutine IBM_semiImplicitTurbulenceJacobian( this, ImagePoint, Q, normal, dWal dS_dQ(:,i) = (Q_FPnext - Q_FP)/eps end do - dS_dQ = -1.0_RP/this% penalization(ImagePoint% element_index) * dS_dQ + dS_dQ = -1.0_RP/(this% penalCoeff*this% penalization(ImagePoint% element_index)) * dS_dQ end subroutine IBM_semiImplicitTurbulenceJacobian ! @@ -1894,7 +1912,7 @@ subroutine IBM_SemiImplicitTurbulenceShiftJacobian( this, dt, invdS_dQ ) end subroutine IBM_SemiImplicitTurbulenceShiftJacobian ! -! Second order Strang splitting correction Q^*. (1/dt - dS/dQ)^(-1)*Q^* = Q + dt*(S - dS/dQ*Q^*) +! Second order Strang splitting correction Q^*. (1 - dS/dQ)^(-1)*Q^* = Q + dt*(S - dS/dQ*Q) ! ------------------------------------------------------------------------------------------------ subroutine IBM_GetSemiImplicitStep( this, eID, dt, Q ) use PhysicsStorage @@ -1911,13 +1929,13 @@ subroutine IBM_GetSemiImplicitStep( this, eID, dt, Q ) call this% semiImplicitJacobian( eID, Q, dS_dQ ) call this% semiImplicitShiftJacobian( eID, Q, dt, invdS_dQ ) - call this% SourceTerm(eID = eID, Q = Q, Source = IBMSource) + call this% SourceTerm(eID = eID, Q = Q, Source = IBMSource, Wallfunction =.false.) Q = matmul(invdS_dQ, Q + dt*( IBMSource - matmul(dS_dQ,Q) )) end subroutine IBM_GetSemiImplicitStep ! -! Second order Strang splitting correction Q^*. (1/dt - dS/dQ)^(-1)*Q^* = Q + dt*(S - dS/dQ*Q^*) +! Second order Strang splitting correction Q^*. (1 - dS/dQ)^(-1)*Q^* = Q + dt*(S - dS/dQ*Q) ! ------------------------------------------------------------------------------------------------ subroutine IBM_GetSemiImplicitStepTurbulence( this, ImagePoint, dt, Q, normal, dWall, STLNum ) use PhysicsStorage @@ -2029,11 +2047,11 @@ subroutine IBM_SourceTermTurbulence( this, ImagePoint, Q, normal, dWall, STLNum, #if defined(NAVIERSTOKES) call ForcingPointState( Q_IP, this% IP_Distance, dWall, normal, Q_FP ) #endif - call this% SourceTerm( ImagePoint% element_index, Q, Q_FP, TurbulenceSource ) + call this% SourceTerm( ImagePoint% element_index, Q, Q_FP, TurbulenceSource, .true. ) - !TurbulenceSource = -1.0_RP/this% penalization(ImagePoint% element_index) * (Q - Q_FP) + !TurbulenceSource = -1.0_RP/(1.0_RP*this% penalization(ImagePoint% element_index)) * (Q - Q_FP) - end subroutine IBM_SourceTermTurbulence + end subroutine IBM_SourceTermTurbulence ! ! State to be imposed on the forcing points due to the wall model ! --------------------------------------------------------------- diff --git a/Solver/src/libs/mesh/METISPartitioning.f90 b/Solver/src/libs/mesh/METISPartitioning.f90 index b64a96cf2..4a7e16946 100644 --- a/Solver/src/libs/mesh/METISPartitioning.f90 +++ b/Solver/src/libs/mesh/METISPartitioning.f90 @@ -97,4 +97,4 @@ subroutine GetMETISElementsPartition(mesh, no_of_domains, elementsDomain, nodesD deallocate(eptr) deallocate(eind) #endif - end subroutine GetMETISElementsPartition + end subroutine GetMETISElementsPartition \ No newline at end of file diff --git a/Solver/src/libs/mesh/Makefile b/Solver/src/libs/mesh/Makefile index 3302efcb8..b5885d410 100644 --- a/Solver/src/libs/mesh/Makefile +++ b/Solver/src/libs/mesh/Makefile @@ -292,4 +292,4 @@ clean: FORCE ############################################# # Dummy procedure to force a rule # ############################################# -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/libs/mesh/MappedGeometry.f90 b/Solver/src/libs/mesh/MappedGeometry.f90 index 9b8b2c710..8125d442e 100644 --- a/Solver/src/libs/mesh/MappedGeometry.f90 +++ b/Solver/src/libs/mesh/MappedGeometry.f90 @@ -27,8 +27,7 @@ Module MappedGeometryClass REAL(KIND=RP), DIMENSION(:,:,:,:) , ALLOCATABLE :: x ! Position of points in absolute coordinates REAL(KIND=RP), DIMENSION(:,:,:) , ALLOCATABLE :: jacobian, invJacobian ! Mapping Jacobian and 1/Jacobian real(kind=RP) :: volume - real(kind=RP), dimension(:,:,:), allocatable :: dWall ! Minimum distance to the nearest wall - real(kind=RP), dimension(:,:,:,:), allocatable :: normal ! Wall normal, needed for IB + real(kind=RP), dimension(:,:,:), allocatable :: dWall ! Minimum distance to the nearest wall real(kind=RP), dimension(:,:,:,:) , allocatable :: ncXi, ncEta, ncZeta ! Normals at the complementary grid nodes real(kind=RP), dimension(:,:,:,:) , allocatable :: t1cXi, t1cEta, t1cZeta ! Tangent vector 1 at the complementary grid nodes real(kind=RP), dimension(:,:,:,:) , allocatable :: t2cXi, t2cEta, t2cZeta ! Tangent vector 2 at the complementary grid nodes @@ -165,7 +164,6 @@ pure SUBROUTINE DestructMappedGeometry(self) safedeallocate( self % JfcXi ) safedeallocate( self % JfcEta ) safedeallocate( self % JfcZeta ) - safedeallocate( self % normal ) END SUBROUTINE DestructMappedGeometry ! @@ -863,4 +861,4 @@ end subroutine SetMappingsToCrossProduct !/////////////////////////////////////////////////////////////////////////////// ! -END Module MappedGeometryClass +END Module MappedGeometryClass \ No newline at end of file diff --git a/Solver/src/libs/mesh/MeshPartitioning.f90 b/Solver/src/libs/mesh/MeshPartitioning.f90 index 603ae3f84..e6ddc6a4e 100644 --- a/Solver/src/libs/mesh/MeshPartitioning.f90 +++ b/Solver/src/libs/mesh/MeshPartitioning.f90 @@ -399,4 +399,4 @@ subroutine WritePartitionsFile(mesh,elementsDomain) end subroutine WritePartitionsFile -end module MeshPartitioning +end module MeshPartitioning \ No newline at end of file diff --git a/Solver/src/libs/mesh/MeshTypes.f90 b/Solver/src/libs/mesh/MeshTypes.f90 index c9e306654..733262a79 100644 --- a/Solver/src/libs/mesh/MeshTypes.f90 +++ b/Solver/src/libs/mesh/MeshTypes.f90 @@ -200,4 +200,4 @@ end SUBROUTINE coordRotation - END Module MeshTypes + END Module MeshTypes \ No newline at end of file diff --git a/Solver/src/libs/mesh/NodeClass.f90 b/Solver/src/libs/mesh/NodeClass.f90 index 1e254447f..5081d627b 100644 --- a/Solver/src/libs/mesh/NodeClass.f90 +++ b/Solver/src/libs/mesh/NodeClass.f90 @@ -52,4 +52,4 @@ elemental SUBROUTINE Node_Destruct( this ) this % GlobID = -1 END SUBROUTINE Node_Destruct - END Module NodeClass + END Module NodeClass \ No newline at end of file diff --git a/Solver/src/libs/mesh/ReadMeshFile.f90 b/Solver/src/libs/mesh/ReadMeshFile.f90 index 2fea42484..a14665009 100644 --- a/Solver/src/libs/mesh/ReadMeshFile.f90 +++ b/Solver/src/libs/mesh/ReadMeshFile.f90 @@ -187,4 +187,4 @@ integer function MeshFileType(fileName) end if end function MeshFileType -end module ReadMeshFile +end module ReadMeshFile \ No newline at end of file diff --git a/Solver/src/libs/mesh/Read_GMSH.f90 b/Solver/src/libs/mesh/Read_GMSH.f90 index 536b18fbb..be703b5ce 100644 --- a/Solver/src/libs/mesh/Read_GMSH.f90 +++ b/Solver/src/libs/mesh/Read_GMSH.f90 @@ -1,9 +1,3 @@ -! -!////////////////////////////////////////////////////// -! -! @File: Read_GMSH.f90 -! @Last revision commit: b5333663c75aa634b30d7da7e488de0f2da06bc3 -! !////////////////////////////////////////////////////// ! ! Module for reading hexahedral conforming meshes in GMSH (https://gmsh.info/) mesh format. @@ -60,7 +54,6 @@ MODULE Read_GMSH private public ConstructMesh_FromGMSHFile_v4_, ConstructMesh_FromGMSHFile_v2_, CheckGMSHversion, NumOfElems_GMSH_v4, NumOfElems_GMSH_v2 - public MSH_node_block_t, MSH_point_t, MSH_element_block_t, EL_MAX_ORDER, SUPPORTED_EL_TYPES, ReorderElement, MSH_LEN ! ! ------------------------------------------------ ! Local temporary element storage. @@ -480,7 +473,7 @@ subroutine ConstructMesh_FromGMSHFile_v4_( self, fileName, nodes, Nx, Ny, Nz, di ! find order of elements curvature check_eltype = 0 do i=1, EL_MAX_ORDER - check_eltype(i) = count(msh_element_blocks(:) % el_type .eq. SUPPORTED_EL_TYPES(i)) + check_eltype(i) = count(msh_element_blocks(:) % el_type .eq. SUPPORTED_EL_TYPES(i)) end do if (sum(check_eltype) .eq. 0) error stop "READ_GMSH :: No 3D elements detected in the mesh." if (sum(check_eltype) .ne. maxval(check_eltype)) error stop "READ_GMSH :: More than 1 type of hexahedral detected in the mesh." @@ -595,6 +588,7 @@ subroutine ConstructMesh_FromGMSHFile_v4_( self, fileName, nodes, Nx, Ny, Nz, di do l=1,8 tmpi = my_findloc(msh_bcs(i) % node_tags,msh_element_blocks(msh_elblock) % nodes(j,l),1) if(tmpi .gt. 0) tmpi_vec1(l) = 1 + ! TODO: Check why this doesn't work with older ifort ! tmpi = any(msh_bcs(i) % node_tags .eq. msh_element_blocks(msh_elblock) % nodes(j,l)) ! tmpi_vec1(l)=tmpi end do @@ -1240,6 +1234,7 @@ SUBROUTINE ConstructMeshPartition_FromGMSHFile_v4_( self, fileName, nodes, Nx, N do l=1,8 tmpi = my_findloc(msh_bcs(i) % node_tags,msh_element_blocks(msh_elblock) % nodes(j,l),1) if(tmpi .gt. 0) tmpi_vec1(l) = 1 + ! TODO: Check why this doesn't work with older ifort ! tmpi = any(msh_bcs(i) % node_tags .eq. msh_element_blocks(msh_elblock) % nodes(j,l)) ! tmpi_vec1(l)=tmpi end do @@ -1971,6 +1966,7 @@ subroutine ConstructSimplestMesh_FromGMSHFile_v4_( self, fileName, nodes, Nx, Ny do l=1,8 tmpi = my_findloc(msh_bcs(i) % node_tags,msh_element_blocks(msh_elblock) % nodes(j,l),1) if(tmpi .gt. 0) tmpi_vec1(l) = 1 + ! TODO: Check why this doesn't work with older ifort ! tmpi = any(msh_bcs(i) % node_tags .eq. msh_element_blocks(msh_elblock) % nodes(j,l)) ! tmpi_vec1(l)=tmpi end do @@ -2481,6 +2477,7 @@ subroutine ConstructMesh_FromGMSHFile_v2_( self, fileName, nodes, Nx, Ny, Nz, di do l=1,8 tmpi = my_findloc(msh_bcs(i) % node_tags,msh_elements_3D % nodes(j,l),1) if(tmpi .gt. 0) tmpi_vec1(l) = 1 + ! TODO: Check why this doesn't work with older ifort ! tmpi = any(msh_bcs(i) % node_tags .eq. msh_element_blocks(msh_elblock) % nodes(j,l)) ! tmpi_vec1(l)=tmpi end do @@ -3012,6 +3009,7 @@ SUBROUTINE ConstructMeshPartition_FromGMSHFile_v2_( self, fileName, nodes, Nx, N do l=1,8 tmpi = my_findloc(msh_bcs(i) % node_tags,msh_elements_3D % nodes(j,l),1) if(tmpi .gt. 0) tmpi_vec1(l) = 1 + ! TODO: Check why this doesn't work with older ifort ! tmpi = any(msh_bcs(i) % node_tags .eq. msh_element_blocks(msh_elblock) % nodes(j,l)) ! tmpi_vec1(l)=tmpi end do @@ -3626,6 +3624,7 @@ subroutine ConstructSimplestMesh_FromGMSHFile_v2_( self, fileName, nodes, Nx, Ny do l=1,8 tmpi = my_findloc(msh_bcs(i) % node_tags,msh_elements_3D % nodes(j,l),1) if(tmpi .gt. 0) tmpi_vec1(l) = 1 + ! TODO: Check why this doesn't work with older ifort ! tmpi = any(msh_bcs(i) % node_tags .eq. msh_element_blocks(msh_elblock) % nodes(j,l)) ! tmpi_vec1(l)=tmpi end do @@ -3937,7 +3936,7 @@ subroutine MSH_ConstructNodeBlock(this,edim,etag,par,no_nodes) class(MSH_node_block_t) , intent(inout) :: this ! element block to be constructed integer , intent(in) :: edim ! dimension of the entity integer , intent(in) :: etag ! entity tag - logical , intent(in) :: par ! parametric or not + logical , intent(in) :: par ! parametric or not (TODO: parametric not supported!) integer , intent(in) :: no_nodes ! number of nodes within the block !-----Local-Variables--------------------------------------------- ! ----------------------------------------------------------------------- @@ -4616,4 +4615,4 @@ end subroutine ReorderElement ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! -end module Read_GMSH +end module Read_GMSH \ No newline at end of file diff --git a/Solver/src/libs/mesh/Read_HDF5Mesh_HOPR.f90 b/Solver/src/libs/mesh/Read_HDF5Mesh_HOPR.f90 index bf6996456..64a66c18e 100644 --- a/Solver/src/libs/mesh/Read_HDF5Mesh_HOPR.f90 +++ b/Solver/src/libs/mesh/Read_HDF5Mesh_HOPR.f90 @@ -1313,7 +1313,7 @@ subroutine FinishNodeMap (TempNodes , HOPRNodeMap, nodes, HOPRnodeIDs) HOPRnodeIDs = HOPRNodeMap (1:i) DO j = 1, i - CALL ConstructNode( nodes(j), TempNodes(:,j), j ) + CALL ConstructNode( nodes(j), TempNodes(:,j), j ) ! TODO: Change for MPI END DO deallocate (TempNodes) @@ -1322,4 +1322,4 @@ subroutine FinishNodeMap (TempNodes , HOPRNodeMap, nodes, HOPRnodeIDs) end subroutine FinishNodeMap #endif -end module Read_HDF5Mesh_HOPR +end module Read_HDF5Mesh_HOPR \ No newline at end of file diff --git a/Solver/src/libs/mesh/Read_SpecMesh.f90 b/Solver/src/libs/mesh/Read_SpecMesh.f90 index a163fae95..6c4a2d3cc 100644 --- a/Solver/src/libs/mesh/Read_SpecMesh.f90 +++ b/Solver/src/libs/mesh/Read_SpecMesh.f90 @@ -981,4 +981,4 @@ function NumOfElems_SpecMesh( fileName ) result(nelem) CLOSE(fUnit) end function NumOfElems_SpecMesh -end module Read_SpecMesh +end module Read_SpecMesh \ No newline at end of file diff --git a/Solver/src/libs/mesh/StorageClass.f90 b/Solver/src/libs/mesh/StorageClass.f90 index 9cfaed1a6..880269bf8 100644 --- a/Solver/src/libs/mesh/StorageClass.f90 +++ b/Solver/src/libs/mesh/StorageClass.f90 @@ -1,5 +1,8 @@ !////////////////////////////////////////////////////// - +! +! TODO1: Store FaceStorage in SolutionStorage +! TODO2: Remove physics-related pointers... Allocate one storage for each physics (AND REMOVE ALL POINTERS) +! TODO3: Allocate implicit methods storage (global arrays) from implicit classes #include "Includes.h" module StorageClass @@ -487,6 +490,7 @@ pure subroutine SolutionStorage_SetGlobalPrevQ(self, Q) self % AdaptedPrevQ = .FALSE. + ! TODO: Adapt previous solutions... end if #endif #ifdef CAHNHILLIARD @@ -496,6 +500,7 @@ pure subroutine SolutionStorage_SetGlobalPrevQ(self, Q) self % AdaptedPrevQ = .FALSE. + ! TODO: Adapt previous solutions... end if #endif @@ -793,7 +798,7 @@ elemental subroutine ElementStorage_Construct(self, Nx, Ny, Nz, computeGradients allocate( self % mu_NS(1:3,0:Nx,0:Ny,0:Nz) ) - if (analyticalJac) call self % constructAnJac + if (analyticalJac) call self % constructAnJac ! TODO: This is actually not specific for NS ! ! Point to NS by default @@ -918,7 +923,7 @@ elemental subroutine ElementStorage_Assign(to, from) call to % construct (from % Nxyz(1), & from % Nxyz(2), & from % Nxyz(3), & - from % computeGradients, & + from % computeGradients, & ! TODO: Fix this: it is not being used!! from % anJacobian, & from % prevSol_num, & from % RKSteps_num ) @@ -1401,6 +1406,7 @@ elemental subroutine FaceStorage_ConstructAnJac(self,NDIM) allocate( self % dFv_dGradQEl(NCONS,NCONS,NDIM,0:self % Nel(1),0:self % Nel(2),2) ) end if +! TODO: AMR, if Boundary allocate( self % BCJac (NCONS,NCONS,0:self % Nel(1),0:self % Nel(2)) ) ! Zero memory @@ -1665,4 +1671,4 @@ subroutine GetStorageEquations(off_, ns_, c_, mu_, nssa_) end subroutine GetStorageEquations -end module StorageClass +end module StorageClass \ No newline at end of file diff --git a/Solver/src/libs/mesh/SurfaceMesh.f90 b/Solver/src/libs/mesh/SurfaceMesh.f90 index dae4d5f3b..2f11e4227 100644 --- a/Solver/src/libs/mesh/SurfaceMesh.f90 +++ b/Solver/src/libs/mesh/SurfaceMesh.f90 @@ -1479,4 +1479,4 @@ Subroutine getFaceWallDistance(mesh,f,dWall) End Subroutine getFaceWallDistance #endif ! -End Module SurfaceMesh +End Module SurfaceMesh \ No newline at end of file diff --git a/Solver/src/libs/mesh/TransfiniteMaps3D.f90 b/Solver/src/libs/mesh/TransfiniteMaps3D.f90 index 8eaa439ed..0d81c18f7 100644 --- a/Solver/src/libs/mesh/TransfiniteMaps3D.f90 +++ b/Solver/src/libs/mesh/TransfiniteMaps3D.f90 @@ -880,4 +880,4 @@ SUBROUTINE GeneralHexGradAndMap( u, x, grad_x, cornerPoints,faceData ) ! END SUBROUTINE GeneralHexGradAndMap - END MODULE TransfiniteMapClass + END MODULE TransfiniteMapClass \ No newline at end of file diff --git a/Solver/src/libs/mesh/WallDistance.f90 b/Solver/src/libs/mesh/WallDistance.f90 index 2bc3a5106..6015be4d8 100644 --- a/Solver/src/libs/mesh/WallDistance.f90 +++ b/Solver/src/libs/mesh/WallDistance.f90 @@ -1103,4 +1103,3 @@ function LS_HZ_bracket (a, b, alpha, x, dir, fval, g, y , f_change , & end function #endif end module WallDistance - diff --git a/Solver/src/libs/mesh/ZoneClass.f90 b/Solver/src/libs/mesh/ZoneClass.f90 index 4de9e9a53..ffe659bf6 100644 --- a/Solver/src/libs/mesh/ZoneClass.f90 +++ b/Solver/src/libs/mesh/ZoneClass.f90 @@ -243,4 +243,4 @@ Subroutine Zone_CreateFictitious(self, marker, zoneName, no_of_faces, facesID) End Subroutine Zone_CreateFictitious -end module ZoneClass +end module ZoneClass \ No newline at end of file diff --git a/Solver/src/libs/monitors/FWHDefinitions.f90 b/Solver/src/libs/monitors/FWHDefinitions.f90 index 756321432..3f1995688 100644 --- a/Solver/src/libs/monitors/FWHDefinitions.f90 +++ b/Solver/src/libs/monitors/FWHDefinitions.f90 @@ -1,4 +1,4 @@ -Module FWHDefinitions +Module FWHDefinitions ! use SMConstants Implicit None @@ -28,6 +28,7 @@ Subroutine getMeanStreamValues() phi = refvalues % AOAphi*(pi/180.0_RP) ! set 1 by default + ! TODO use values of boundary conditions (inflow if exists or outflow, or set this defaults if not exists) U0Magnitud = 1.0_RP rho0 = 1.0_RP @@ -40,8 +41,10 @@ Subroutine getMeanStreamValues() fwGamma2 = 1.0_RP / (1.0_RP - dimensionless % Mach**2) ! default initial condition and outflow BC for energy without external pressure + ! TODO include external pressure P0 = 1.0_RP / (dimensionless % gammaM2) + ! rhoe0 = P0 / thermodynamics%gammaMinus1 + 0.5_RP*rho0*(U0Magnitud**2) End Subroutine getMeanStreamValues -End Module FWHDefinitions +End Module FWHDefinitions \ No newline at end of file diff --git a/Solver/src/libs/monitors/FWHGeneralClass.f90 b/Solver/src/libs/monitors/FWHGeneralClass.f90 index 5f5ffcecc..547963188 100644 --- a/Solver/src/libs/monitors/FWHGeneralClass.f90 +++ b/Solver/src/libs/monitors/FWHGeneralClass.f90 @@ -88,7 +88,7 @@ Subroutine FWHConstruct(self, mesh, controlVariables) self % isActive = .FALSE. print *, "FWH surface not found, the FWH routines will not deactivated" return - end if + end if ! Setup the buffer ! ---------------- @@ -124,6 +124,7 @@ Subroutine FWHConstruct(self, mesh, controlVariables) ! Set interpolate attribute as TRUE by default ! todo: read from constrol variables self % interpolate = .TRUE. + ! self % interpolate = .FALSE. ! Initialize observers ! -------------------- @@ -133,11 +134,11 @@ Subroutine FWHConstruct(self, mesh, controlVariables) do i = 1, self % numberOfObservers call self % observers(i) % construct(surfacesMesh % zones(SURFACE_TYPE_FWH) , mesh, i, self % solution_file, FirstCall, & self % interpolate, no_of_faces, surfacesMesh % elementSide(:,1)) - end do + end do self % bufferLine = 0 self % firstWrite = .FALSE. - + FirstCall = .FALSE. ! Describe the zones @@ -165,7 +166,7 @@ Subroutine FWHUpate(self, mesh, t, iter, isFromFile) ! Local variables ! --------------- ! - integer :: i + integer :: i logical :: prolong ! Check if is activated @@ -178,7 +179,7 @@ Subroutine FWHUpate(self, mesh, t, iter, isFromFile) prolong = .not. isFromFile else prolong = .TRUE. - end if + end if ! ! Move to next buffer line ! ------------------------ @@ -198,11 +199,11 @@ Subroutine FWHUpate(self, mesh, t, iter, isFromFile) if (.not. self % firstWrite) then do i = 1, self % numberOfObservers call self % observers(i) % update(mesh, self % isSolid, self % bufferLine, self % interpolate) - end do + end do else do i = 1, self % numberOfObservers call self % observers(i) % updateOneStep(mesh, self % bufferLine, self % isSolid, t) - end do + end do end if End Subroutine FWHUpate @@ -224,7 +225,7 @@ Subroutine FWHWriteToFile(self, force) ! --------------- ! Local variables ! --------------- - integer :: i + integer :: i logical :: forceVal ! Check if is activated @@ -237,7 +238,7 @@ Subroutine FWHWriteToFile(self, force) forceVal = .false. end if - if ( forceVal ) then + if ( forceVal ) then ! ! In this case the observers are exported to their files and the buffer is reset ! ------------------------------------------------------------------------------ @@ -282,7 +283,7 @@ Subroutine FWHDestruct(self) ! --------------- ! Local variables ! --------------- - integer :: i + integer :: i ! Check if is activated ! ------------------------ @@ -333,7 +334,7 @@ Function getNoOfObservers() result(no_of_observers) ! ! Read the whole file to find the observers ! ------------------------------------ -readloop:do +readloop:do read ( fID , '(A)' , iostat = io ) line if ( io .lt. 0 ) then @@ -360,15 +361,15 @@ Function getNoOfObservers() result(no_of_observers) no_of_observers = no_of_observers + 1 end if - + end if end do readloop ! ! Close case file ! --------------- - close(fID) + close(fID) End Function getNoOfObservers -End Module FWHGeneralClass +End Module FWHGeneralClass \ No newline at end of file diff --git a/Solver/src/libs/monitors/FWHObseverClass.f90 b/Solver/src/libs/monitors/FWHObseverClass.f90 index 8a44deca3..cd548195c 100644 --- a/Solver/src/libs/monitors/FWHObseverClass.f90 +++ b/Solver/src/libs/monitors/FWHObseverClass.f90 @@ -30,9 +30,9 @@ Module FWHObseverClass ! real(kind=RP), dimension(:,:,:), allocatable :: rVect real(kind=RP), dimension(:,:), allocatable :: r real(kind=RP), dimension(:,:), allocatable :: re - real(kind=RP), dimension(:,:,:), allocatable :: reUnitVect + real(kind=RP), dimension(:,:,:), allocatable :: reUnitVect real(kind=RP), dimension(:,:), allocatable :: reStar - real(kind=RP), dimension(:,:,:), allocatable :: reStarUnitVect + real(kind=RP), dimension(:,:,:), allocatable :: reStarUnitVect real(kind=RP) :: tDelay integer :: faceIDinMesh ! ID of the source (face) at the Mesh array (linked list) integer :: elementSide @@ -57,7 +57,7 @@ Module FWHObseverClass ! ! General observer class definition ! (similar to a monitor, mostly surface monitor in many behaviours) ! ***************************** -! +! type ObserverClass integer :: ID @@ -129,7 +129,7 @@ Subroutine ObserverConstruct(self, sourceZone, mesh, ID, solution_file, FirstCal write(in_label , '(A,I0)') "#define acoustic observer " , self % ID call get_command_argument(1, paramFile) - call readValueInRegion(trim ( paramFile), "name", self % observerName, in_label, "# end" ) + call readValueInRegion(trim ( paramFile), "name", self % observerName, in_label, "# end" ) call readValueInRegion(trim(paramFile), "position", coordinates , in_label, "# end" ) ! Get the coordinates @@ -153,7 +153,7 @@ Subroutine ObserverConstruct(self, sourceZone, mesh, ID, solution_file, FirstCal ! Face global ID MeshFaceID = sourceZone % faces(zoneFaceID) call self % sourcePair(zoneFaceID) % construct(self % x, mesh % faces(MeshFaceID), MeshFaceID, FirstCall, elementSide(zoneFaceID)) - end do + end do ! Allocate variables for interpolation ! ------------------------------------------------- @@ -161,7 +161,7 @@ Subroutine ObserverConstruct(self, sourceZone, mesh, ID, solution_file, FirstCal do zoneFaceID = 1, self % numberOfFaces call self % sourcePair(zoneFaceID) % allocPacc(OB_BUFFER_SIZE) end do - end if + end if ! Set the average time delay of the observer ! ------------------------------------------------- @@ -174,7 +174,7 @@ Subroutine ObserverConstruct(self, sourceZone, mesh, ID, solution_file, FirstCal ! Create file ! ----------- if (FirstCall) then - open ( newunit = fID , file = trim(self % fileName) , status = "unknown" , action = "write" ) + open ( newunit = fID , file = trim(self % fileName) , status = "unknown" , action = "write" ) ! Write the file headers ! ---------------------- @@ -215,7 +215,7 @@ Subroutine ObserverUpdate(self, mesh, isSolid, BufferPosition, interpolate) integer :: storePosition ! Initialization -! -------------- +! -------------- if (present(bufferPosition)) self % Pac(bufferPosition,:) = 0.0_RP Pacc = 0.0_RP valx = 0.0_RP @@ -243,7 +243,7 @@ Subroutine ObserverUpdate(self, mesh, isSolid, BufferPosition, interpolate) storePosition = size(self % sourcePair(zoneFaceID) % Pacc, dim=1) end if self % sourcePair(zoneFaceID) % Pacc(storePosition,:) = localPacc - end do + end do !$omp end do !$omp end parallel else interp_cond @@ -263,7 +263,7 @@ Subroutine ObserverUpdate(self, mesh, isSolid, BufferPosition, interpolate) valx = valx + localPacc(1) valy = valy + localPacc(2) valz = valz + localPacc(3) - end do + end do !$omp end do !$omp end parallel @@ -282,7 +282,7 @@ End Subroutine ObserverUpdate Subroutine ObserverUpdateTdelay(self, totalNumberOfFaces) ! ******************************************************************* -! This subroutine updates the observer time delay. For static surfaces it +! This subroutine updates the observer time delay. For static surfaces it ! doesn't need to be updated at every iteration. ! Minimum time is used, for interpolation procedures ! ******************************************************************* @@ -291,7 +291,7 @@ Subroutine ObserverUpdateTdelay(self, totalNumberOfFaces) implicit none class (ObserverClass) :: self integer, intent(in) :: totalNumberOfFaces - + ! local variables integer :: i, ierr real(kind=RP) :: t, tmax @@ -309,7 +309,7 @@ Subroutine ObserverUpdateTdelay(self, totalNumberOfFaces) if (MPI_Process % isRoot) then displs=0 - do i = 2, MPI_Process % nProcs + do i = 2, MPI_Process % nProcs displs(i) = displs(i-1) + no_of_faces_p(i-1) end do end if @@ -342,7 +342,7 @@ Subroutine ObserverWriteToFile(self, iter, tsource, no_of_lines) ! This subroutine writes the buffer to the file. ! ************************************************************* ! - implicit none + implicit none class(ObserverClass) :: self integer, dimension(:) :: iter real(kind=RP), dimension(:) :: tsource @@ -358,16 +358,16 @@ Subroutine ObserverWriteToFile(self, iter, tsource, no_of_lines) if ( MPI_Process % isRoot ) then open( newunit = fID , file = trim ( self % fileName ) , action = "write" , access = "append" , status = "old" ) - + do i = 1 , no_of_lines write( fID , '(I10,5(2X,ES24.16))' ) iter(i) , tsource(i), tsource(i) + self % tDelay, self % Pac(i,:) end do - + close ( fID ) end if - + if ( no_of_lines .ne. 0 ) self % Pac(1,:) = self % Pac(no_of_lines,:) - + End Subroutine ObserverWriteToFile Subroutine ObserverUpdateOneStep(self, mesh, BufferPosition, isSolid, tsource) @@ -396,7 +396,7 @@ Subroutine ObserverUpdateOneStep(self, mesh, BufferPosition, isSolid, tsource) do i = 1, self % numberOfFaces if (self % sourcePair(i) % tDelay .eq. self % tDelay) cycle call self % sourcePair(i) % interpolateSolS(tobserver, tsource) - end do + end do !$omp end do !$omp end parallel @@ -409,7 +409,7 @@ Subroutine ObserverUpdateOneStep(self, mesh, BufferPosition, isSolid, tsource) !$omp do schedule(runtime) do i = 1, self % numberOfFaces call self % sourcePair(i) % updateOneStep() - end do + end do !$omp end do !$omp end parallel @@ -418,7 +418,7 @@ End Subroutine ObserverUpdateOneStep !interpolate the solution of all the pairs to get it at the mean observer time Subroutine ObserverInterpolateSol(self, tsource, no_of_lines) - implicit none + implicit none class(ObserverClass) :: self real(kind=RP), dimension(:), intent(in) :: tsource @@ -447,6 +447,7 @@ Subroutine ObserverInterpolateSol(self, tsource, no_of_lines) !$omp do schedule(runtime) do i = 1, self % numberOfFaces ! call interp of each pair that are not the minimum + ! if (almostequal(self % sourcepair(i) % tdelay, self % tdelay)) then if (self % sourcepair(i) % tdelay .eq. self % tdelay) then nDiscard(i) = k-1 else @@ -465,6 +466,7 @@ Subroutine ObserverInterpolateSol(self, tsource, no_of_lines) ! update all the solution of the pair to save the future ones do i = 1, self % numberOfFaces + ! sameDelay = almostequal(self % sourcepair(i) % tdelay, self % tdelay) sameDelay = self % sourcepair(i) % tdelay .eq. self % tdelay call self % sourcePair(i) % newUpdate(n, nDiscard(i), no_of_lines, tsource(1:no_of_lines), sameDelay) end do @@ -474,7 +476,7 @@ End Subroutine ObserverInterpolateSol ! sum all the interpolated solution of all pairs and save it at the observer solution Subroutine ObserverSumIntegrals(self, nDiscard, N, startIndex, no_of_lines) - implicit none + implicit none class(observerclass) :: self integer, intent(in) :: no_of_lines, startIndex, N @@ -486,7 +488,7 @@ Subroutine ObserverSumIntegrals(self, nDiscard, N, startIndex, no_of_lines) integer :: i, ierr ! Initialization -! -------------- +! -------------- ! 1:N must be equal to startIndex:no_of_lines allocate(Pacc(N,3), localPacc(N,3), valx(N), valy(N), valz(N)) Pacc = 0.0_RP @@ -505,7 +507,7 @@ Subroutine ObserverSumIntegrals(self, nDiscard, N, startIndex, no_of_lines) valy = valy + localPacc(:,2) valz = valz + localPacc(:,3) - end do + end do !$omp end do !$omp end parallel @@ -591,12 +593,12 @@ Subroutine ObserverSourcePairConstruct(self, x, f, fID, FirstCall, elementSide) end do; end do end associate - End Subroutine ObserverSourcePairConstruct + End Subroutine ObserverSourcePairConstruct elemental Subroutine ObserverSourcePairDestruct(self) Class(ObserverSourcePairClass), intent(inout) :: self - + safedeallocate(self % rVect) safedeallocate(self % r) safedeallocate(self % re) @@ -604,7 +606,7 @@ elemental Subroutine ObserverSourcePairDestruct(self) safedeallocate(self % reStar) safedeallocate(self % reStarUnitVect) - End Subroutine ObserverSourcePairDestruct + End Subroutine ObserverSourcePairDestruct ! allocate time history solution for a posterior interpolation @@ -612,7 +614,7 @@ Subroutine ObserverSourcePairAllocSolution(self, buffer_size) class(ObserverSourcePairClass) :: self integer, intent(in) :: buffer_size - + allocate(self % Pacc(buffer_size,3)) End Subroutine ObserverSourcePairAllocSolution @@ -643,10 +645,10 @@ Subroutine ObserverSourcePairInterpolateSolFirst(self, N, M, tobserver, tsource, if (tPair(i) .lt. tobserver(1)) then nd = nd +1 cycle - end if + end if PaccInterp(j,:) = linearInterpolation(tobserver(j), tPair(ii), self%Pacc(ii,:), tPair(i), self%Pacc(i,:), 3) j = j + 1 - end do + end do !update solution of the pair with the interpolated one self % Pacc(nd+1:nd+N,:) = PaccInterp @@ -675,7 +677,7 @@ Subroutine ObserverSourcePairNewUpdate(self, N, NDiscard, M, tsource, sameDelay) else !size = M - interpolated values +1 + 1(empty for next iter) Nfuture = M - N -NDiscard + 1 - end if + end if ! save old results and kept last position empty allocate(PaccFuture(Nfuture-1,3)) @@ -690,7 +692,7 @@ Subroutine ObserverSourcePairNewUpdate(self, N, NDiscard, M, tsource, sameDelay) allocate(self % tInterp(1:Nfuture)) ! save old results and kept last position empty self % tInterp(1:Nfuture-1) = tPair(NDiscard+N+1:M) - end if + end if End Subroutine ObserverSourcePairNewUpdate @@ -736,7 +738,10 @@ End Subroutine ObserverSourcePairInterpolateSolSecond ! calculate the surface integrals of the FW-H analogy for stationary surfaces (permeable or impermeable) with a general flow ! direction of the medium ! the integrals are for a single face (pane in FWH terminology) for a single observer +! TODO: check if is more efficient to store FWHvariables for each face instead of calculating it always +! for many observers, its being recomputed as many as observers + ! Function FWHSurfaceIntegral(self, f, isSolid, interpolate, bufferPosition) result(Pacc) Function FWHSurfaceIntegral(self, f, isSolid) result(Pacc) use FWHDefinitions, only: rho0, P0, c0, U0, M0 @@ -791,6 +796,12 @@ Function FWHSurfaceIntegral(self, f, isSolid) result(Pacc) spAxi % w(i) * spAeta % w(j) * f % geom % jacobian(i,j) Pl = Pl + dot_product(matmul(Lij,n(:)),self%reStarUnitVect(:,i,j)) / (self%reStar(i,j)**2) * & spAxi % w(i) * spAeta % w(j) * f % geom % jacobian(i,j) + ! Pl = Pl + LdotR / ( c0 * self % re(i,j) * (UmMr**2) ) * & + ! spAxi % w(i) * spAeta % w(j) * f % geom % jacobian(i,j) + ! Pl = Pl + (LR - LM) / ( (self % re(i,j) * UmMr)**2 ) * & + ! spAxi % w(i) * spAeta % w(j) * f % geom % jacobian(i,j) + ! Pl = Pl + (LR * (MR - (dimensionless % Mach**2))) / ( (self % re(i,j)**2) * (UmMr**3) ) * & + ! spAxi % w(i) * spAeta % w(j) * f % geom % jacobian(i,j) ! thickness term integrals, only for permeable surfaces if (.not. isSolid) then @@ -798,8 +809,12 @@ Function FWHSurfaceIntegral(self, f, isSolid) result(Pacc) spAxi % w(i) * spAeta % w(j) * f % geom % jacobian(i,j) Pt = Pt - dot_product(U0(:),self%reStarUnitVect(:,i,j)) * dot_product(Qi(:),n(:)) / (self%reStar(i,j)**2) * & spAxi % w(i) * spAeta % w(j) * f % geom % jacobian(i,j) + ! Pt = Pt + dot_product(QiDot(:),n(:)) / (self%reStar(i,j) * (UmMr**2)) * & + ! spAxi % w(i) * spAeta % w(j) * f % geom % jacobian(i,j) + ! Pt = Pt + (dot_product(Qi(:), n(:)) * c0 * (MR - (dimensionless % Mach**2))) / ( (self % re(i,j)**2) * (UmMr**3) ) * & + ! spAxi % w(i) * spAeta % w(j) * f % geom % jacobian(i,j) - end if + end if end do ; end do end associate end associate @@ -810,7 +825,7 @@ Function FWHSurfaceIntegral(self, f, isSolid) result(Pacc) ! get total acoustic pressure as the sum of the two components (the quadrapol terms are being ignored) Pacc = (/Pt, Pl, Pt+Pl/) - End Function FWHSurfaceIntegral + End Function FWHSurfaceIntegral !///////////////////////////////////////////////////////////////////////// ! ZONE PROCEDURES -------------------------- @@ -820,6 +835,8 @@ Subroutine SourceProlongSolution(source_zone, mesh, eSides) ! ******************************************************************* ! This subroutine prolong the solution from the mesh storage to the faces (source). +! TODO: use openmp (commented) +! TODO: use mpi (see surface integral) ! ******************************************************************* ! use ElementClass @@ -839,6 +856,7 @@ Subroutine SourceProlongSolution(source_zone, mesh, eSides) ! elements => mesh % elements !$omp parallel private(meshFaceID,eID,meshFaceIDs) shared(elements,mesh,NodalStorage) +!!$omp& t) !$omp single ! Loop the zone to get faces and elements @@ -859,6 +877,14 @@ Subroutine SourceProlongSolution(source_zone, mesh, eSides) mesh % faces(meshFaceIDs(6)),& computeQdot = .TRUE.) + ! if ( computeGradients ) then + ! call elements(eID) % ProlongGradientsToFaces(NGRAD, mesh % faces(meshFaceIDs(1)),& + ! mesh % faces(meshFaceIDs(2)),& + ! mesh % faces(meshFaceIDs(3)),& + ! mesh % faces(meshFaceIDs(4)),& + ! mesh % faces(meshFaceIDs(5)),& + ! mesh % faces(meshFaceIDs(6)) ) + ! end if !$omp end task end do !$omp end single @@ -901,6 +927,7 @@ Subroutine calculateFWHVariables(Q, Qdot, isSolid, Qi, QiDot, Lij, LijDot) !local variables real(kind=RP) :: P, pDot real(kind=RP), dimension(NDIM,NDIM) :: Pij ! fwh perturbation stress tensor + ! real(kind=RP), dimension(NDIM:NDIM) :: tau integer :: i, j, ii, jj P = Pressure(Q) @@ -914,11 +941,16 @@ Subroutine calculateFWHVariables(Q, Qdot, isSolid, Qi, QiDot, Lij, LijDot) LijDot(i,i) = pDot end do + !TODO use the stress tensor and the time derivative for Lij and LijDot respectively + ! call getStressTensor(Q, U_x, U_y, U_z, tau) + ! Pij = Pij - tau + ! LijDot = LijDot - tauDot ! set values for solid (impermeable) surface Qi(:) = -rho0*U0(:) Qidot = 0.0_RP Lij = Pij + ! Lij = 0.0_RP !calculate terms for permeable surface if (.not. isSolid) then @@ -934,10 +966,10 @@ Subroutine calculateFWHVariables(Q, Qdot, isSolid, Qi, QiDot, Lij, LijDot) Lij(i,j) = Lij(i,j) + (Q(ii) - Q(1)*U0(i))*(Q(jj)/Q(1)) LijDot(i,j) = LijDot(i,j) + ( Qdot(ii) - Q(ii)/Q(1)*Qdot(1) )/Q(1) * Q(jj) + & (Q(ii)/Q(1) - U0(i)) * Qdot(jj) - end do - end do + end do + end do end if End Subroutine calculateFWHVariables -End Module FWHObseverClass +End Module FWHObseverClass \ No newline at end of file diff --git a/Solver/src/libs/monitors/Makefile b/Solver/src/libs/monitors/Makefile index db5e0ac9c..3d0255b9f 100644 --- a/Solver/src/libs/monitors/Makefile +++ b/Solver/src/libs/monitors/Makefile @@ -197,5 +197,4 @@ clean: FORCE ############################################# # Dummy procedure to force a rule # ############################################# -FORCE: - +FORCE: \ No newline at end of file diff --git a/Solver/src/libs/monitors/MonitorDefinitions.f90 b/Solver/src/libs/monitors/MonitorDefinitions.f90 index 1eb77013e..d2c14b76f 100644 --- a/Solver/src/libs/monitors/MonitorDefinitions.f90 +++ b/Solver/src/libs/monitors/MonitorDefinitions.f90 @@ -12,4 +12,4 @@ module MonitorDefinitions integer, parameter :: VOLUME_UNDEFINED = 0 integer, parameter :: VOLUME_INTEGRAL = 1 -end module MonitorDefinitions +end module MonitorDefinitions \ No newline at end of file diff --git a/Solver/src/libs/monitors/Monitors.f90 b/Solver/src/libs/monitors/Monitors.f90 index a93cda3c7..da916b49c 100644 --- a/Solver/src/libs/monitors/Monitors.f90 +++ b/Solver/src/libs/monitors/Monitors.f90 @@ -23,7 +23,7 @@ module MonitorsClass ! ***************************** ! Main monitor class definition ! ***************************** -! +! type Monitor_t character(len=LINE_LENGTH) :: solution_file integer :: no_of_probes @@ -63,14 +63,14 @@ module MonitorsClass ! !/////////////////////////////////////////////////////////////////////////////////////// ! - subroutine Monitors_Construct( Monitors, mesh, controlVariables ) + subroutine Monitors_Construct( Monitors, mesh, controlVariables ) use FTValueDictionaryClass use mainKeywordsModule implicit none class(Monitor_t) :: Monitors class(HexMesh), intent(in) :: mesh class(FTValueDictionary), intent(in) :: controlVariables - + ! ! --------------- ! Local variables @@ -79,7 +79,7 @@ subroutine Monitors_Construct( Monitors, mesh, controlVariables ) integer :: fID , io integer :: i character(len=STR_LEN_MONITORS) :: line - character(len=STR_LEN_MONITORS) :: solution_file + character(len=STR_LEN_MONITORS) :: solution_file logical, save :: FirstCall = .TRUE. logical :: saveGradients ! @@ -88,7 +88,7 @@ subroutine Monitors_Construct( Monitors, mesh, controlVariables ) if (controlVariables % containsKey("monitors flush interval") ) then BUFFER_SIZE = controlVariables % integerValueForKey("monitors flush interval") end if - + allocate ( Monitors % TotalSimuTime(BUFFER_SIZE), & Monitors % SolverSimuTime(BUFFER_SIZE), & Monitors % t(BUFFER_SIZE), & @@ -141,9 +141,9 @@ subroutine Monitors_Construct( Monitors, mesh, controlVariables ) #endif Monitors % write_dt_restriction = controlVariables % logicalValueForKey( "write dt restriction" ) - + Monitors % bufferLine = 0 - + FirstCall = .FALSE. end subroutine Monitors_Construct @@ -157,8 +157,8 @@ subroutine Monitor_WriteLabel ( self ) use MPI_Process_Info implicit none class(Monitor_t) :: self - integer :: i - + integer :: i + if ( .not. MPI_Process % isRoot ) return ! ! Write "Iteration" and "Time" @@ -191,7 +191,7 @@ subroutine Monitor_WriteLabel ( self ) ! ----------------------------- do i = 1 , self % no_of_surfaceMonitors if( .not. self % surfaceMonitors(i) % IBM ) call self % surfaceMonitors(i) % WriteLabel - end do + end do call self % stats % WriteLabel #endif @@ -200,11 +200,11 @@ subroutine Monitor_WriteLabel ( self ) ! ------------------------------ if (self % write_dt_restriction) write ( STD_OUT , ' ( 3X,A10 ) ' , advance = "no" ) "dt restr." - write(STD_OUT , *) + write(STD_OUT , *) end subroutine Monitor_WriteLabel - subroutine Monitor_WriteUnderlines( self ) + subroutine Monitor_WriteUnderlines( self ) ! ! ******************************************************** ! This subroutine displays the underlines for the @@ -227,8 +227,8 @@ subroutine Monitor_WriteUnderlines( self ) ! ! Print dashes for "Iteration" and "Time" ! --------------------------------------- - write ( STD_OUT , ' ( A10 ) ' , advance = "no" ) trim ( dashes ) - write ( STD_OUT , ' ( 3X,A10 ) ' , advance = "no" ) trim ( dashes ) + write ( STD_OUT , ' ( A10 ) ' , advance = "no" ) trim ( dashes ) + write ( STD_OUT , ' ( 3X,A10 ) ' , advance = "no" ) trim ( dashes ) ! ! Print dashes for residuals ! -------------------------- @@ -258,19 +258,19 @@ subroutine Monitor_WriteUnderlines( self ) ! Print dashes for surface monitors ! --------------------------------- do i = 1 , self % no_of_surfaceMonitors - if( .not. self % surfaceMonitors(i) % IBM ) write(STD_OUT , '(3X,A10)' , advance = "no" ) dashes(1 : min(10 , len_trim( self % surfaceMonitors(i) % monitorName ) + 2 ) ) + write(STD_OUT , '(3X,A10)' , advance = "no" ) dashes(1 : min(10 , len_trim( self % surfaceMonitors(i) % monitorName ) + 2 ) ) end do if ( self % stats % state .ne. 0 ) write(STD_OUT,'(3X,A10)',advance="no") trim(dashes) #endif - + ! ! Print dashes for dt restriction ! ------------------------------- - if (self % write_dt_restriction) write ( STD_OUT , ' ( 3X,A10 ) ' , advance = "no" ) trim ( dashes ) - - write(STD_OUT , *) + if (self % write_dt_restriction) write ( STD_OUT , ' ( 3X,A10 ) ' , advance = "no" ) trim ( dashes ) + + write(STD_OUT , *) end subroutine Monitor_WriteUnderlines @@ -290,8 +290,8 @@ subroutine Monitor_WriteValues ( self ) ! ! Print iteration and time ! ------------------------ - write ( STD_OUT , ' ( I10 ) ' , advance = "no" ) self % iter ( self % bufferLine ) - write ( STD_OUT , ' ( 1X,A,1X,ES10.3 ) ' , advance = "no" ) "|" , self % t ( self % bufferLine ) + write ( STD_OUT , ' ( I10 ) ' , advance = "no" ) self % iter ( self % bufferLine ) + write ( STD_OUT , ' ( 1X,A,1X,ES10.3 ) ' , advance = "no" ) "|" , self % t ( self % bufferLine ) ! ! Print residuals ! --------------- @@ -542,54 +542,54 @@ elemental subroutine Monitor_Assign ( to, from ) type(Monitor_t) , intent(in) :: from !-local-variables-------------------------------- !------------------------------------------------ - + to % solution_file = from % solution_file to % no_of_probes = from % no_of_probes to % no_of_surfaceMonitors = from % no_of_surfaceMonitors to % no_of_volumeMonitors = from % no_of_volumeMonitors to % bufferLine = from % bufferLine - + safedeallocate ( to % iter ) allocate ( to % iter ( size(from % iter) ) ) to % iter = from % iter - + to % dt_restriction = from % dt_restriction to % write_dt_restriction = from % write_dt_restriction - + safedeallocate (to % t) - allocate (to % t (size (from % t) ) ) + allocate (to % t (size (from % t) ) ) to % t = from % t - + safedeallocate ( to % TotalSimuTime ) allocate ( to % TotalSimuTime ( size(from % TotalSimuTime) ) ) to % TotalSimuTime = from % TotalSimuTime - + safedeallocate ( to % SolverSimuTime ) allocate ( to % SolverSimuTime ( size(from % SolverSimuTime) ) ) to % SolverSimuTime = from % SolverSimuTime - + to % residuals = from % residuals - + safedeallocate ( to % volumeMonitors ) allocate ( to % volumeMonitors ( size(from % volumeMonitors) ) ) to % volumeMonitors = from % volumeMonitors - + #ifdef FLOW safedeallocate ( to % probes ) allocate ( to % probes ( size(from % probes) ) ) to % probes = from % probes #endif - + #if defined(NAVIERSTOKES) safedeallocate ( to % surfaceMonitors ) allocate ( to % surfaceMonitors ( size(from % surfaceMonitors) ) ) to % surfaceMonitors = from % surfaceMonitors - + to % stats = from % stats #endif - + end subroutine Monitor_Assign - + ! !////////////////////////////////////////////////////////////////////////////// ! @@ -630,7 +630,7 @@ subroutine getNoOfMonitors(no_of_probes, no_of_surfaceMonitors, no_of_volumeMoni ! ! Read the whole file to find monitors ! ------------------------------------ -readloop:do +readloop:do read ( fID , '(A)' , iostat = io ) line if ( io .lt. 0 ) then @@ -657,24 +657,24 @@ subroutine getNoOfMonitors(no_of_probes, no_of_surfaceMonitors, no_of_volumeMoni no_of_probes = no_of_probes + 1 elseif ( index ( line , '#definesurfacemonitor' ) .gt. 0 ) then - no_of_surfaceMonitors = no_of_surfaceMonitors + 1 + no_of_surfaceMonitors = no_of_surfaceMonitors + 1 elseif ( index ( line , '#definevolumemonitor' ) .gt. 0 ) then - no_of_volumeMonitors = no_of_volumeMonitors + 1 + no_of_volumeMonitors = no_of_volumeMonitors + 1 end if - + end if end do readloop ! ! Close case file ! --------------- - close(fID) + close(fID) end subroutine getNoOfMonitors end module MonitorsClass ! !/////////////////////////////////////////////////////////////////////////////////// -! +! \ No newline at end of file diff --git a/Solver/src/libs/monitors/Probe.f90 b/Solver/src/libs/monitors/Probe.f90 index 1ee8de5d4..37331ab01 100644 --- a/Solver/src/libs/monitors/Probe.f90 +++ b/Solver/src/libs/monitors/Probe.f90 @@ -475,4 +475,4 @@ elemental subroutine Probe_Assign (to, from) end subroutine Probe_Assign end module ProbeClass -#endif +#endif \ No newline at end of file diff --git a/Solver/src/libs/monitors/ResidualsMonitor.f90 b/Solver/src/libs/monitors/ResidualsMonitor.f90 index 3eb4098aa..bf7e18a4a 100644 --- a/Solver/src/libs/monitors/ResidualsMonitor.f90 +++ b/Solver/src/libs/monitors/ResidualsMonitor.f90 @@ -248,4 +248,4 @@ elemental subroutine Residuals_Assign(to, from) to % fileName = from % fileName end subroutine Residuals_Assign -end module ResidualsMonitorClass +end module ResidualsMonitorClass \ No newline at end of file diff --git a/Solver/src/libs/monitors/StatisticsMonitor.f90 b/Solver/src/libs/monitors/StatisticsMonitor.f90 index 6be81ea6b..c16aa381f 100644 --- a/Solver/src/libs/monitors/StatisticsMonitor.f90 +++ b/Solver/src/libs/monitors/StatisticsMonitor.f90 @@ -544,4 +544,4 @@ subroutine StatisticsMonitor_WriteValue ( self ) end subroutine StatisticsMonitor_WriteValue end module StatisticsMonitor -#endif +#endif \ No newline at end of file diff --git a/Solver/src/libs/monitors/SurfaceIntegrals.f90 b/Solver/src/libs/monitors/SurfaceIntegrals.f90 index 0f1adc57e..4a75f346d 100644 --- a/Solver/src/libs/monitors/SurfaceIntegrals.f90 +++ b/Solver/src/libs/monitors/SurfaceIntegrals.f90 @@ -651,7 +651,6 @@ function InterpolatedScalarValue( Q, invPhi, b, normal, integralType ) result( o end do outvalue = pressure(Qi) - case ( USER_DEFINED ) end select @@ -885,4 +884,4 @@ subroutine GenerateVectormonitorTECfile( ObjectsList, vectorState, STLNum, integ end subroutine GenerateVectormonitorTECfile end module SurfaceIntegrals -#endif +#endif \ No newline at end of file diff --git a/Solver/src/libs/monitors/SurfaceMonitor.f90 b/Solver/src/libs/monitors/SurfaceMonitor.f90 index b028742ab..9fc477c1b 100644 --- a/Solver/src/libs/monitors/SurfaceMonitor.f90 +++ b/Solver/src/libs/monitors/SurfaceMonitor.f90 @@ -109,13 +109,6 @@ subroutine SurfaceMonitor_Initialization( self , mesh , ID, solution_file , Firs ! Get the surface marker ! ---------------------- self % marker = -1 - do zoneID = 1, size(mesh % zones) - if ( trim(mesh % zones(zoneID) % name) .eq. trim(markerName) ) then - self % marker = zoneID - exit - end if - end do - if( mesh% IBM% active ) then do STLNum = 1, mesh% IBM% NumOfSTL if( trim(mesh% IBM% STLfilename(STLNum)) .eq. trim(markerName) ) then @@ -129,7 +122,13 @@ subroutine SurfaceMonitor_Initialization( self , mesh , ID, solution_file , Firs mesh% IBM% Integral(STLNum)% compute = .true. self% marker = STLNum self% IBM = .true. - + exit + end if + end do + else + do zoneID = 1, size(mesh % zones) + if ( trim(mesh % zones(zoneID) % name) .eq. trim(markerName) ) then + self % marker = zoneID exit end if end do @@ -140,6 +139,8 @@ subroutine SurfaceMonitor_Initialization( self , mesh , ID, solution_file , Firs write(*,'(A,I0)') "Warning: Marker not specified for surface monitor ", self % ID write(*,'(A,I0,A)') " Surface monitor ", self % ID, " disabled." end if + + if( self% IBM ) return ! ! Select the variable from the available list, and compute auxiliary variables if needed @@ -289,8 +290,6 @@ subroutine SurfaceMonitor_Initialization( self , mesh , ID, solution_file , Firs ! ********** end select ! ********** - - if( self% IBM ) return ! ! Prepare the file in which the monitor is exported ! ------------------------------------------------- @@ -352,16 +351,6 @@ subroutine SurfaceMonitor_Update ( self, mesh, bufferPosition, iter, t ) case ("force") call VectorDataReconstruction( mesh% IBM, mesh% elements, self% marker, TOTAL_FORCE, iter) - case ("lift") - call VectorDataReconstruction( mesh% IBM, mesh% elements, self% marker, TOTAL_FORCE, iter) - - case ("drag") - if (flowIsNavierStokes) then - call VectorDataReconstruction( mesh% IBM, mesh% elements, self% marker, TOTAL_FORCE, iter) - else - call VectorDataReconstruction( mesh% IBM, mesh% elements, self% marker, PRESSURE_FORCE, iter) - end if - case("pressure","pressure-average") call ScalarDataReconstruction( mesh% IBM, mesh% elements, self% marker, PRESSURE_DISTRIBUTION, iter) @@ -525,4 +514,3 @@ elemental subroutine SurfaceMonitor_Assign(to, from) end subroutine SurfaceMonitor_Assign #endif end module SurfaceMonitorClass - diff --git a/Solver/src/libs/monitors/VolumeIntegrals.f90 b/Solver/src/libs/monitors/VolumeIntegrals.f90 index 3aaeeb90e..a49f2cdf2 100644 --- a/Solver/src/libs/monitors/VolumeIntegrals.f90 +++ b/Solver/src/libs/monitors/VolumeIntegrals.f90 @@ -567,7 +567,7 @@ function VectorVolumeIntegral(mesh, integralType, num_of_vars) result(val) real(kind=RP) :: valAux(num_of_vars) real(kind=RP) :: val1, val2, val3, val4, val5 - if (num_of_vars == 5) then + if (num_of_vars == 5) then ! Ugly hack.. But only way to make it work with ifort.... fiveVars = .TRUE. else fiveVars = .FALSE. @@ -748,4 +748,4 @@ subroutine GetSensorRange(mesh, minSensor, maxSensor) end subroutine GetSensorRange -end module VolumeIntegrals +end module VolumeIntegrals \ No newline at end of file diff --git a/Solver/src/libs/monitors/VolumeMonitor.f90 b/Solver/src/libs/monitors/VolumeMonitor.f90 index 268e98eee..2f60c0704 100644 --- a/Solver/src/libs/monitors/VolumeMonitor.f90 +++ b/Solver/src/libs/monitors/VolumeMonitor.f90 @@ -8,6 +8,13 @@ module VolumeMonitorClass implicit none private +!~ public VOLUME +#if defined(NAVIERSTOKES) +!~ public KINETIC_ENERGY, KINETIC_ENERGY_RATE, ENSTROPHY +!~ public ENTROPY, ENTROPY_RATE, INTERNAL_ENERGY +#elif defined(CAHNHILLIARD) +!~ public FREE_ENERGY +#endif public VolumeMonitor_t ! @@ -473,4 +480,4 @@ elemental subroutine VolumeMonitor_Assign (to, from) to % fileName = from % fileName to % variable = from % variable end subroutine VolumeMonitor_Assign -end module VolumeMonitorClass +end module VolumeMonitorClass \ No newline at end of file diff --git a/Solver/src/libs/mpiutils/MPI_Face.f90 b/Solver/src/libs/mpiutils/MPI_Face.f90 index 8555245f1..56922247d 100644 --- a/Solver/src/libs/mpiutils/MPI_Face.f90 +++ b/Solver/src/libs/mpiutils/MPI_Face.f90 @@ -471,4 +471,4 @@ subroutine MPI_Face_Destruct(self) end subroutine MPI_Face_Destruct -end module MPI_Face_Class +end module MPI_Face_Class \ No newline at end of file diff --git a/Solver/src/libs/mpiutils/MPI_Utilities.f90 b/Solver/src/libs/mpiutils/MPI_Utilities.f90 index 8abd0f9e4..c61d316c8 100644 --- a/Solver/src/libs/mpiutils/MPI_Utilities.f90 +++ b/Solver/src/libs/mpiutils/MPI_Utilities.f90 @@ -182,4 +182,4 @@ subroutine MPI_MinMax(minimum, maximum) #endif end subroutine MPI_MinMax -end module MPI_Utilities +end module MPI_Utilities \ No newline at end of file diff --git a/Solver/src/libs/mpiutils/Makefile b/Solver/src/libs/mpiutils/Makefile index f6ceb2657..dbf131548 100644 --- a/Solver/src/libs/mpiutils/Makefile +++ b/Solver/src/libs/mpiutils/Makefile @@ -62,4 +62,4 @@ clean: FORCE ############################################# # Dummy procedure to force a rule # ############################################# -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/libs/mpiutils/partitioned_mesh.f90 b/Solver/src/libs/mpiutils/partitioned_mesh.f90 index 1f63ff9d0..a6cc2f819 100644 --- a/Solver/src/libs/mpiutils/partitioned_mesh.f90 +++ b/Solver/src/libs/mpiutils/partitioned_mesh.f90 @@ -8,7 +8,7 @@ module PartitionedMeshClass private public PartitionedMesh_t - + public Initialize_MPI_Partitions public SendPartitionsMPI, RecvPartitionMPI @@ -20,7 +20,7 @@ module PartitionedMeshClass integer :: no_of_allElements integer :: no_of_mpifaces integer, allocatable :: global2localeID(:) ! if 0, that element does not belong to the current partition - integer, allocatable :: global2localeIDwith0(:) + integer, allocatable :: global2localeIDwith0(:) integer, allocatable :: nodeIDs(:) integer, allocatable :: HOPRnodeIDs(:) integer, allocatable :: elementIDs(:) @@ -29,8 +29,8 @@ module PartitionedMeshClass integer, allocatable :: element_mpifaceSideOther(:) ! Side of the element where the MPI face is (on the other partition) integer, allocatable :: mpiface_rotation(:) integer, allocatable :: mpiface_elementSide(:) - - integer, allocatable :: mpiface_sharedDomain(:) + + integer, allocatable :: mpiface_sharedDomain(:) contains procedure :: Destruct => PartitionedMesh_Destruct procedure :: ConstructGeneralInfo => PartitionedMesh_ConstructGeneralInfo @@ -38,7 +38,7 @@ module PartitionedMeshClass type(PartitionedMesh_t), public :: mpi_partition type(PartitionedMesh_t), allocatable, public :: mpi_allPartitions(:) - + integer, protected, public :: MPI_Partitioning integer, parameter, public :: METIS_PARTITIONING = 1 integer, parameter, public :: SFC_PARTITIONING = 2 @@ -57,7 +57,7 @@ subroutine Initialize_MPI_Partitions(partitioning) !-------------------------------------------------------------- ! ! Create the set of MPI_Partitions in the root rank -! ------------------------------------------------- +! ------------------------------------------------- if ( MPI_Process % doMPIRootAction ) then #ifdef _HAS_MPI_ allocate(mpi_allPartitions(MPI_Process % nProcs)) @@ -70,18 +70,18 @@ subroutine Initialize_MPI_Partitions(partitioning) ! Initialize the own MPI partition ! -------------------------------- mpi_partition = PartitionedMesh_t(MPI_Process % rank) - + if ( MPI_Process % doMPIAction ) then -! +! ! Partitioning method ! ------------------- select case (partitioning) -! +! ! Space-filling curve partitioning ! -------------------------------- case ('SFC') MPI_Partitioning = SFC_PARTITIONING -! +! ! METIS partitioning ! ------------------ case default @@ -94,9 +94,9 @@ subroutine Initialize_MPI_Partitions(partitioning) #endif end select end if - + end subroutine Initialize_MPI_Partitions - + function ConstructPartitionedMesh(ID) ! ! ******************************************************** @@ -121,7 +121,7 @@ function ConstructPartitionedMesh(ID) safedeallocate(ConstructPartitionedMesh % mpiface_rotation) safedeallocate(ConstructPartitionedMesh % mpiface_elementSide) safedeallocate(ConstructPartitionedMesh % mpiface_sharedDomain) - + end function ConstructPartitionedMesh subroutine RecvPartitionMPI(meshIsHOPR) @@ -153,7 +153,7 @@ subroutine RecvPartitionMPI(meshIsHOPR) mpi_partition % no_of_elements = sizes(2) mpi_partition % no_of_mpifaces = sizes(3) - allocate(mpi_partition % nodeIDs (mpi_partition % no_of_nodes )) + allocate(mpi_partition % nodeIDs (mpi_partition % no_of_nodes )) allocate(mpi_partition % elementIDs (mpi_partition % no_of_elements)) allocate(mpi_partition % mpiface_elements (mpi_partition % no_of_mpifaces)) allocate(mpi_partition % element_mpifaceSide (mpi_partition % no_of_mpifaces)) @@ -161,8 +161,8 @@ subroutine RecvPartitionMPI(meshIsHOPR) allocate(mpi_partition % mpiface_rotation (mpi_partition % no_of_mpifaces)) allocate(mpi_partition % mpiface_elementSide (mpi_partition % no_of_mpifaces)) allocate(mpi_partition % mpiface_sharedDomain (mpi_partition % no_of_mpifaces)) - - if (meshIsHOPR) allocate(mpi_partition % HOPRnodeIDs(mpi_partition % no_of_nodes )) + + if (meshIsHOPR) allocate(mpi_partition % HOPRnodeIDs(mpi_partition % no_of_nodes )) ! ! Receive the rest of the PartitionedMesh_t arrays ! ------------------------------------------------ @@ -223,7 +223,7 @@ subroutine SendPartitionsMPI(meshIsHOPR) integer :: send_req(MPI_Process % nProcs - 1, 8) integer :: send_reqHOPR(MPI_Process % nProcs - 1) ! -! Send the MPI mesh partition to all processes +! Send the MPI mesh partition to all processes ! -------------------------------------------- do domain = 2, MPI_Process % nProcs ! @@ -232,7 +232,7 @@ subroutine SendPartitionsMPI(meshIsHOPR) sizes(1) = mpi_allPartitions(domain) % no_of_nodes sizes(2) = mpi_allPartitions(domain) % no_of_elements sizes(3) = mpi_allPartitions(domain) % no_of_mpifaces - + call mpi_send(sizes, 3, MPI_INT, domain-1, DEFAULT_TAG, MPI_COMM_WORLD, ierr) end do @@ -323,7 +323,7 @@ subroutine PartitionedMesh_ConstructGeneralInfo(this, no_of_allElements) ! ------------------------- allocate ( this % global2localeID(no_of_allElements) ) this % global2localeID = 0 - + if (MPI_Process % doMPIAction) then do eID = 1, this % no_of_elements this % global2localeID( this % elementIDs(eID) ) = eID @@ -336,7 +336,7 @@ subroutine PartitionedMesh_ConstructGeneralInfo(this, no_of_allElements) this % global2localeIDwith0(0) = 0 this % global2localeIDwith0(1:no_of_allElements) = this % global2localeID end subroutine PartitionedMesh_ConstructGeneralInfo - + subroutine PartitionedMesh_Destruct(self) implicit none class(PartitionedMesh_t) :: self @@ -360,5 +360,5 @@ subroutine PartitionedMesh_Destruct(self) safedeallocate(self % global2localeIDwith0 ) end subroutine PartitionedMesh_Destruct - -end module PartitionedMeshClass + +end module PartitionedMeshClass \ No newline at end of file diff --git a/Solver/src/libs/mpiutils/process_info.f90 b/Solver/src/libs/mpiutils/process_info.f90 index e1a515a02..cdfe57d01 100644 --- a/Solver/src/libs/mpiutils/process_info.f90 +++ b/Solver/src/libs/mpiutils/process_info.f90 @@ -33,7 +33,7 @@ subroutine MPI_Process_Init(self) ! integer :: ierr -#ifdef _HAS_MPI_ +#ifdef _HAS_MPI_ call mpi_init(ierr) call mpi_comm_rank(MPI_COMM_WORLD, self % rank, ierr) call mpi_comm_size(MPI_COMM_WORLD, self % nProcs, ierr) @@ -77,7 +77,7 @@ subroutine MPI_Process_Close(self) #ifdef _HAS_MPI_ call mpi_finalize(ierr) -#endif - end subroutine MPI_Process_Close +#endif + end subroutine MPI_Process_Close -end module MPI_Process_Info +end module MPI_Process_Info \ No newline at end of file diff --git a/Solver/src/libs/particles/Makefile b/Solver/src/libs/particles/Makefile index 7fb18d7b4..8df2985ba 100644 --- a/Solver/src/libs/particles/Makefile +++ b/Solver/src/libs/particles/Makefile @@ -160,4 +160,4 @@ clean: FORCE ############################################# # Dummy procedure to force a rule # ############################################# -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/libs/particles/Particle.f90 b/Solver/src/libs/particles/Particle.f90 index 2c34fe48a..1dc9d56db 100644 --- a/Solver/src/libs/particles/Particle.f90 +++ b/Solver/src/libs/particles/Particle.f90 @@ -16,10 +16,10 @@ module ParticleClass ! ****************************** ! Main particle class definition ! ****************************** -! +! type Particle_t real(KIND=RP) :: pos(3) - real(KIND=RP) :: pos_old(3) + real(KIND=RP) :: pos_old(3) real(KIND=RP) :: vel(3) real(KIND=RP) :: vel_old(3) real(KIND=RP) :: temp @@ -39,14 +39,14 @@ module ParticleClass procedure :: init => particle_init procedure :: set_pos => particle_set_pos procedure :: set_vel => particle_set_vel - procedure :: set_temp => particle_set_temp + procedure :: set_temp => particle_set_temp procedure :: setGlobalPos => particle_setGlobalPos procedure :: getFluidVelandTemp => particle_getFluidVelandTemp procedure :: show => particle_show procedure :: integrate => particle_integrate procedure :: source => particle_source procedure :: updateVelRK3 => particle_updateVelRK3 - procedure :: updateTempRK3 => particle_updateTempRK3 + procedure :: updateTempRK3 => particle_updateTempRK3 end type Particle_t ! ! ======== @@ -63,7 +63,7 @@ subroutine particle_init(self, mesh) self % vel(:) = 0.0_RP self % temp = 0.0_RP self % fluidVel(:) = 0.0_RP - self % fluidTemp = 0.0_RP + self % fluidTemp = 0.0_RP self % active = .true. self % eID = -1 @@ -104,39 +104,39 @@ end subroutine particle_set_temp ! !/////////////////////////////////////////////////////////////////////////////////////// ! -subroutine particle_show ( self ) +subroutine particle_show ( self ) implicit none - class(Particle_t), intent(inout) :: self + class(Particle_t), intent(inout) :: self - write(*,*) "eID = ", self % eID - write(*,*) "active = ", self % active - write(*,*) "vel(:) = ", self % vel(:) - write(*,*) "temp = ", self % temp - write(*,*) "pos(:) = ", self % pos(:) - write(*,*) "fluidVel(:) = ", self % fluidVel(:) - write(*,*) "fluidTemp = ", self % fluidTemp + write(*,*) "eID = ", self % eID + write(*,*) "active = ", self % active + write(*,*) "vel(:) = ", self % vel(:) + write(*,*) "temp = ", self % temp + write(*,*) "pos(:) = ", self % pos(:) + write(*,*) "fluidVel(:) = ", self % fluidVel(:) + write(*,*) "fluidTemp = ", self % fluidTemp -end subroutine +end subroutine ! !/////////////////////////////////////////////////////////////////////////////////////// ! subroutine particle_setGlobalPos ( self, mesh ) implicit none - class(Particle_t) , intent(inout) :: self - class(HexMesh) , intent(in) :: mesh + class(Particle_t) , intent(inout) :: self + class(HexMesh) , intent(in) :: mesh #if defined(NAVIERSTOKES) ! ! --------------- ! Local variables ! --------------- ! - integer :: i ,j, k - integer, dimension(1) :: elementwas - + integer :: i ,j, k + integer, dimension(1) :: elementwas + elementwas(1) = self % eID - self % eID_old = self % eID - self % xi_old = self % xi + self % eID_old = self % eID + self % xi_old = self % xi ! ! Find the requested point in the mesh ! ------------------------------------ @@ -147,7 +147,22 @@ subroutine particle_setGlobalPos ( self, mesh ) elementwas & ! element in which the particle was ) - if ( .not. self % active) return + if ( .not. self % active) return + ! + ! Check whether the probe is located in other partition + ! ----------------------------------------------------- + ! call self % LookInOtherPartitions + ! + ! Disable the probe if the point is not found + ! ------------------------------------------- + ! if ( .not. self % active ) then + ! if ( MPI_Process % isRoot ) then + ! write(STD_OUT,'(A,I0,A)') "Probe ", ID, " was not successfully initialized." + ! print*, "Probe is set to inactive." + ! end if + + ! return + ! end if ! ! Get the Lagrange interpolants ! ----------------------------- @@ -156,37 +171,37 @@ subroutine particle_setGlobalPos ( self, mesh ) associate(spAxi => NodalStorage(e % Nxyz(1)), & spAeta => NodalStorage(e % Nxyz(2)), & spAzeta => NodalStorage(e % Nxyz(3)) ) - if ( elementwas(1) /= self % eID ) then + if ( elementwas(1) /= self % eID ) then if (allocated(self % lxi)) deallocate(self % lxi) allocate( self % lxi(0 : e % Nxyz(1)) ) if (allocated(self % leta)) deallocate(self % leta) allocate( self % leta(0 : e % Nxyz(2)) ) - if (allocated(self % lzeta)) deallocate(self % lzeta) + if (allocated(self % lzeta)) deallocate(self % lzeta) allocate( self % lzeta(0 : e % Nxyz(3)) ) self % lxi = spAxi % lj(self % xi(1)) self % leta = spAeta % lj(self % xi(2)) self % lzeta = spAzeta % lj(self % xi(3)) - endif - ! + endif + ! ! Recover the coordinates from direct projection. These will be the real coordinates ! ---------------------------------------------- self % x = 0.0_RP do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) self % x = self % x + e % geom % x(:,i,j,k) * self % lxi(i) * self % leta(j) * self % lzeta(k) - end do ; end do ; end do + end do ; end do ; end do + end associate end associate - end associate -#endif -end subroutine +#endif +end subroutine ! !/////////////////////////////////////////////////////////////////////////////////////// ! -subroutine particle_getFluidVelandTemp ( self, mesh ) +subroutine particle_getFluidVelandTemp ( self, mesh ) use Physics use MPI_Process_Info use VariableConversion implicit none - class(Particle_t), intent(inout) :: self + class(Particle_t), intent(inout) :: self class(HexMesh) :: mesh #if defined(NAVIERSTOKES) ! @@ -205,18 +220,19 @@ subroutine particle_getFluidVelandTemp ( self, mesh ) 0:mesh % elements(self % eID) % Nxyz(2),& 0:mesh % elements(self % eID) % Nxyz(3) ) + ! if ( MPI_Process % rank .eq. self % rank ) then ! ! Update the probe ! ---------------- associate( e => mesh % elements(self % eID) ) associate( Q => e % storage % Q ) - do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) + do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) ! get u velocity - vel(1,i,j,k) = Q(IRHOU,i,j,k) / Q(IRHO,i,j,k) + vel(1,i,j,k) = Q(IRHOU,i,j,k) / Q(IRHO,i,j,k) ! get v velocity vel(2,i,j,k) = Q(IRHOV,i,j,k) / Q(IRHO,i,j,k) - ! get w velocity + ! get w velocity vel(3,i,j,k) = Q(IRHOW,i,j,k) / Q(IRHO,i,j,k) ! get temp temp(i,j,k) = Temperature( Q(:,i,j,k) ) @@ -230,33 +246,52 @@ subroutine particle_getFluidVelandTemp ( self, mesh ) self % fluidTemp = 0.0_RP do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) self % fluidTemp = self % fluidTemp + temp(i,j,k) * self % lxi(i) * self % leta(j) * self % lzeta(k) - end do ; end do ; end do + end do ; end do ; end do end associate end associate +! #ifdef _HAS_MPI_ +! if ( MPI_Process % doMPIAction ) then +! ! +! ! Share the result with the rest of the processes +! ! ----------------------------------------------- +! call mpi_bcast(value, 1, MPI_DOUBLE, self % rank, MPI_COMM_WORLD, ierr) + +! end if +! #endif +! else +! ! +! ! Receive the result from the rank that contains the probe +! ! -------------------------------------------------------- +! #ifdef _HAS_MPI_ +! if ( MPI_Process % doMPIAction ) then +! call mpi_bcast(self % values(bufferPosition), 1, MPI_DOUBLE, self % rank, MPI_COMM_WORLD, ierr) +! end if +! #endif +! end if #endif -end subroutine +end subroutine ! !/////////////////////////////////////////////////////////////////////////////////////// ! -subroutine particle_integrate ( self, mesh, dt, St, Nu, phim, I0, gammaDiv3cvpdivcvStPr, minbox, maxbox , bcbox ) +subroutine particle_integrate ( self, mesh, dt, St, Nu, phim, I0, gammaDiv3cvpdivcvStPr, minbox, maxbox , bcbox ) #if defined(NAVIERSTOKES) use VariableConversion, only : sutherlandsLaw use FluidData, only : dimensionless #endif implicit none - - class(Particle_t) , intent(inout) :: self + + class(Particle_t) , intent(inout) :: self type(HexMesh) , intent(in) :: mesh - real(KIND=RP) , intent(in) :: dt + real(KIND=RP) , intent(in) :: dt real(KIND=RP), intent(in) :: St ! Particle non dimensional number - real(KIND=RP), intent(in) :: Nu ! Particle non dimensional number - real(KIND=RP), intent(in) :: phim ! Particle non dimensional number + real(KIND=RP), intent(in) :: Nu ! Particle non dimensional number + real(KIND=RP), intent(in) :: phim ! Particle non dimensional number real(KIND=RP), intent(in) :: I0 ! Particle non dimensional number (radiation intensity) real(KIND=RP), intent(in) :: gammaDiv3cvpdivcvStPr ! Particle and fluid comb of properties to increase performance - real(KIND=RP), intent(in) :: minbox(3) ! Minimum value of box for particles + real(KIND=RP), intent(in) :: minbox(3) ! Minimum value of box for particles real(KIND=RP), intent(in) :: maxbox(3) ! Maximum value of box for particles - integer, intent(in) :: bcbox(3) ! Boundary conditions of box for particles [0,1,2] [inflow/outflow, wall, periodic] + integer, intent(in) :: bcbox(3) ! Boundary conditions of box for particles [0,1,2] [inflow/outflow, wall, periodic] #if defined(NAVIERSTOKES) ! @@ -266,42 +301,47 @@ subroutine particle_integrate ( self, mesh, dt, St, Nu, phim, I0, gammaDiv3cvpdi ! real(KIND=RP) :: mu real(KIND=RP) :: invFr2 - real(KIND=RP) :: gravity(3) + real(KIND=RP) :: gravity(3) - if ( .not. self % active ) then + if ( .not. self % active ) then call compute_bounce_parameters(self, mesh, minbox, maxbox, bcbox) - endif + endif mu = SutherlandsLaw(self % fluidTemp) ! Non dimensional viscosity mu(T) invFr2 = dimensionless % invFr2 ! Fluid non dimensional number - gravity = dimensionless % gravity_dir ! Direction of gravity vector (normalised) + gravity = dimensionless % gravity_dir ! Direction of gravity vector (normalised) ! ! RK3 method for now -! --------------------------- +! --------------------------- +!TDG: esto no es realmente correcto. Hay dos aproximaciones intrínsecas en este modelo: +! 1.- Si avanza el tiempo, habría que actualizar el flujo (self % fluidVel). +! 2.- Si avanza el tiempo, cambia la posición de la partícula, que habría que actualizar, y el flujo +!en ese punto (self % fluidVel). +! Al hacerlo de esta forma, el código es más eficiente. Habría que cuantificar el error cometido. - self % vel_old = self % vel - self % pos_old = self % pos - self % temp_old = self % temp + self % vel_old = self % vel + self % pos_old = self % pos + self % temp_old = self % temp ! VELOCITY - self % vel = self % updateVelRK3 ( dt, mu, St, invFr2, gravity ) + self % vel = self % updateVelRK3 ( dt, mu, St, invFr2, gravity ) ! POSITION self % pos = self % pos + dt * self % vel ! TEMPERATURE - self % temp = self % updateTempRK3 ( dt, I0, Nu, gammaDiv3cvpdivcvStPr ) + self % temp = self % updateTempRK3 ( dt, I0, Nu, gammaDiv3cvpdivcvStPr ) #endif -end subroutine +end subroutine ! !/////////////////////////////////////////////////////////////////////////////////////// ! subroutine compute_bounce_parameters(p, mesh, minbox, maxbox, bcbox) class(particle_t) , intent(inout) :: p type(HexMesh), intent(in) :: mesh - real(KIND=RP), intent(in) :: minbox(3) ! Minimum value of box for particles + real(KIND=RP), intent(in) :: minbox(3) ! Minimum value of box for particles real(KIND=RP), intent(in) :: maxbox(3) ! Maximum value of box for particles - integer, intent(in) :: bcbox(3) ! Boundary conditions of box for particles [0,1,2] [inflow/outflow, wall, periodic] + integer, intent(in) :: bcbox(3) ! Boundary conditions of box for particles [0,1,2] [inflow/outflow, wall, periodic] integer :: eID @@ -310,77 +350,108 @@ subroutine compute_bounce_parameters(p, mesh, minbox, maxbox, bcbox) eID = p%eID_old pos_in = p%pos_old pos_out = p%pos - + ! Check exit face of the box [i+-,j+-,k+-] - ! bcbox[yz,xz,xy] 0 is inflow/outflow, 1 is wall, 2 is periodic - if ( p % pos(1) < minbox(1) ) then - if ( bcbox(1) == 0 ) then + ! bcbox[yz,xz,xy] 0 is inflow/outflow, 1 is wall, 2 is periodic + if ( p % pos(1) < minbox(1) ) then + if ( bcbox(1) == 0 ) then ! Particle abandoned the domain through inflow or outflow - elseif ( bcbox(1) == 1 ) then - p % pos(1) = minbox(1) - ( pos_out(1) - minbox(1) ) + ! Reinject at outflow or inflow + ! call p % set_vel ( v ) + ! call p % set_temp ( T ) + ! p % pos(1) = p % pos(1) - ( minbox(1) - maxbox(1) ) + elseif ( bcbox(1) == 1 ) then + !print*, "Warning. Particle lost through wall." + !pos_in(1) + p % pos(1) = minbox(1) - ( pos_out(1) - minbox(1) ) p % vel(1) = - p % vel(1) - elseif ( bcbox(1) == 2 ) then + elseif ( bcbox(1) == 2 ) then p % pos(1) = p % pos(1) - ( minbox(1) - maxbox(1) ) endif - endif + endif - if ( p % pos(2) < minbox(2) ) then - if ( bcbox(2) == 0 ) then + if ( p % pos(2) < minbox(2) ) then + if ( bcbox(2) == 0 ) then ! Particle abandoned the domain through inflow or outflow - elseif ( bcbox(2) == 1 ) then - p % pos(2) = minbox(2) - ( pos_out(2) - minbox(2) ) + ! Reinject at outflow or inflow + ! call p % set_vel ( v ) + ! call p % set_temp ( T ) + ! p % pos(2) = p % pos(2) - ( minbox(2) - maxbox(2) ) + elseif ( bcbox(2) == 1 ) then + !print*, "Warning. Particle lost through wall." + p % pos(2) = minbox(2) - ( pos_out(2) - minbox(2) ) p % vel(2) = - p % vel(2) - elseif ( bcbox(2) == 2 ) then + elseif ( bcbox(2) == 2 ) then p % pos(2) = p % pos(2) - ( minbox(2) - maxbox(2) ) endif - endif + endif - if ( p % pos(3) < minbox(3) ) then - if ( bcbox(3) == 0 ) then + if ( p % pos(3) < minbox(3) ) then + if ( bcbox(3) == 0 ) then ! Particle abandoned the domain through inflow or outflow - elseif ( bcbox(3) == 1 ) then - p % pos(3) = minbox(3) - ( pos_out(3) - minbox(3) ) + ! Reinject at outflow or inflow + ! call p % set_vel ( v ) + ! call p % set_temp ( T ) + ! p % pos(3) = p % pos(3) - ( minbox(3) - maxbox(3) ) + elseif ( bcbox(3) == 1 ) then + !print*, "Warning. Particle lost through wall." + p % pos(3) = minbox(3) - ( pos_out(3) - minbox(3) ) p % vel(3) = - p % vel(3) - elseif ( bcbox(3) == 2 ) then + elseif ( bcbox(3) == 2 ) then p % pos(3) = p % pos(3) - ( minbox(3) - maxbox(3) ) endif - endif + endif - if ( p % pos(1) > maxbox(1) ) then - if ( bcbox(1) == 0 ) then + if ( p % pos(1) > maxbox(1) ) then + if ( bcbox(1) == 0 ) then ! Particle abandoned the domain through inflow or outflow - elseif ( bcbox(1) == 1 ) then - p % pos(1) = maxbox(1) - ( pos_out(1) - maxbox(1) ) + ! Reinject at outflow or inflow + ! call p % set_vel ( v ) + ! call p % set_temp ( T ) + ! p % pos(1) = p % pos(1) + ( minbox(1) - maxbox(1) ) + elseif ( bcbox(1) == 1 ) then + !print*, "Warning. Particle lost through wall." + p % pos(1) = maxbox(1) - ( pos_out(1) - maxbox(1) ) p % vel(1) = - p % vel(1) - elseif ( bcbox(1) == 2 ) then - p % pos(1) = p % pos(1) + ( minbox(1) - maxbox(1) ) + elseif ( bcbox(1) == 2 ) then + p % pos(1) = p % pos(1) + ( minbox(1) - maxbox(1) ) endif - endif + endif - if ( p % pos(2) > maxbox(2) ) then - if ( bcbox(2) == 0 ) then + if ( p % pos(2) > maxbox(2) ) then + if ( bcbox(2) == 0 ) then ! Particle abandoned the domain through inflow or outflow - elseif ( bcbox(2) == 1 ) then - p % pos(2) = maxbox(2) - ( pos_out(2) - maxbox(2) ) + ! Reinject at outflow or inflow + ! call p % set_vel ( v ) + ! call p % set_temp ( T ) + ! p % pos(2) = p % pos(2) + ( minbox(2) - maxbox(2) ) + elseif ( bcbox(2) == 1 ) then + !print*, "Warning. Particle lost through wall." + p % pos(2) = maxbox(2) - ( pos_out(2) - maxbox(2) ) p % vel(2) = - p % vel(2) - elseif ( bcbox(2) == 2 ) then - p % pos(2) = p % pos(2) + ( minbox(2) - maxbox(2) ) + elseif ( bcbox(2) == 2 ) then + p % pos(2) = p % pos(2) + ( minbox(2) - maxbox(2) ) endif - endif + endif - if ( p % pos(3) > maxbox(3) ) then - if ( bcbox(3) == 0 ) then + if ( p % pos(3) > maxbox(3) ) then + if ( bcbox(3) == 0 ) then ! Particle abandoned the domain through inflow or outflow - elseif ( bcbox(3) == 1 ) then - p % pos(3) = maxbox(3) - ( pos_out(3) - maxbox(3) ) - p % vel(3) = - p % vel(3) - elseif ( bcbox(3) == 2 ) then + ! Reinject at outflow or inflow + ! call p % set_vel ( v ) + ! call p % set_temp ( T ) + ! p % pos(3) = p % pos(3) + ( minbox(3) - maxbox(3) ) + elseif ( bcbox(3) == 1 ) then + !print*, "Warning. Particle lost through wall." + p % pos(3) = maxbox(3) - ( pos_out(3) - maxbox(3) ) + p % vel(3) = - p % vel(3) + elseif ( bcbox(3) == 2 ) then p % pos(3) = p % pos(3) + ( minbox(3) - maxbox(3) ) endif - endif + endif - p % eID = p%eID_old + p % eID = p%eID_old call p % setGlobalPos ( mesh ) end subroutine @@ -389,7 +460,7 @@ subroutine compute_bounce_parameters(p, mesh, minbox, maxbox, bcbox) ! subroutine FindPointWithCoords_Neighbours(p, mesh, pos,eID,neighbours, xi,inside) class(Particle_t), intent(in) :: p - class(HexMesh) , intent(in) :: mesh + class(HexMesh) , intent(in) :: mesh real(kind=RP) , intent(in) :: pos(3) integer , intent(inout) :: eID integer , intent(in) :: neighbours(6) @@ -397,7 +468,7 @@ subroutine FindPointWithCoords_Neighbours(p, mesh, pos,eID,neighbours, xi,insid logical , intent(out) :: inside integer :: i - + inside = mesh%elements(eID)%FindPointWithCoords(pos, mesh % dir2D, xi) if (inside) return @@ -420,9 +491,9 @@ subroutine FindPointWithCoords_Neighbours(p, mesh, pos,eID,neighbours, xi,insid !/////////////////////////////////////////////////////////////////////////////////////// ! function particle_updateVelRK3 (self, dt, mu, St, invFr2, gravity) result(Q) - implicit none + implicit none - class(Particle_t), intent(in) :: self + class(Particle_t), intent(in) :: self real(KIND=RP), intent(in) :: dt real(KIND=RP), intent(in) :: mu real(KIND=RP), intent(in) :: St @@ -435,11 +506,11 @@ function particle_updateVelRK3 (self, dt, mu, St, invFr2, gravity) result(Q) ! Local variables ! --------------- ! - INTEGER :: i, j, k + INTEGER :: i, j, k REAL(KIND=RP), DIMENSION(3) :: G, Qdot REAL(KIND=RP), DIMENSION(3) :: a = (/0.0_RP , -5.0_RP /9.0_RP , -153.0_RP/128.0_RP/) REAL(KIND=RP), DIMENSION(3) :: b = (/0.0_RP , 1.0_RP /3.0_RP , 3.0_RP/4.0_RP /) - REAL(KIND=RP), DIMENSION(3) :: c = (/1.0_RP/3.0_RP, 15.0_RP/16.0_RP, 8.0_RP/15.0_RP /) + REAL(KIND=RP), DIMENSION(3) :: c = (/1.0_RP/3.0_RP, 15.0_RP/16.0_RP, 8.0_RP/15.0_RP /) G = 0.0_RP Q = self % vel @@ -449,30 +520,30 @@ function particle_updateVelRK3 (self, dt, mu, St, invFr2, gravity) result(Q) Q = Q + c(k) * dt * G END DO #endif -end function +end function ! !/////////////////////////////////////////////////////////////////////////////////////// ! function particle_updateTempRK3 (self, dt, I0, Nu, gammaDiv3cvpdivcvStPr ) result(Q) implicit none - - class(Particle_t), intent(in) :: self + + class(Particle_t), intent(in) :: self real(KIND=RP), intent(in) :: dt real(KIND=RP), intent(in) :: I0 real(KIND=RP), intent(in) :: Nu real(KIND=RP), intent(in) :: gammaDiv3cvpdivcvStPr real(KIND=RP) :: Q -#if defined(NAVIERSTOKES) +#if defined(NAVIERSTOKES) ! ! --------------- ! Local variables ! --------------- ! - INTEGER :: i, j, k + INTEGER :: i, j, k REAL(KIND=RP) :: G, Qdot REAL(KIND=RP), DIMENSION(3) :: a = (/0.0_RP , -5.0_RP /9.0_RP , -153.0_RP/128.0_RP/) REAL(KIND=RP), DIMENSION(3) :: b = (/0.0_RP , 1.0_RP /3.0_RP , 3.0_RP/4.0_RP /) - REAL(KIND=RP), DIMENSION(3) :: c = (/1.0_RP/3.0_RP, 15.0_RP/16.0_RP, 8.0_RP/15.0_RP /) + REAL(KIND=RP), DIMENSION(3) :: c = (/1.0_RP/3.0_RP, 15.0_RP/16.0_RP, 8.0_RP/15.0_RP /) G = 0.0_RP Q = self % temp @@ -482,16 +553,16 @@ function particle_updateTempRK3 (self, dt, I0, Nu, gammaDiv3cvpdivcvStPr ) resul G = a(k) * G + Qdot Q = Q + c(k) * dt * G END DO -#endif - end function +#endif + end function ! !/////////////////////////////////////////////////////////////////////////////////////// ! subroutine particle_source ( self, e, source, highordersource ) implicit none - class(Particle_t) , intent(in) :: self - class(element) , intent(in) :: e - real(kind=RP) , intent(inout) :: source(:,0:,0:,0:) + class(Particle_t) , intent(in) :: self + class(element) , intent(in) :: e + real(kind=RP) , intent(inout) :: source(:,0:,0:,0:) logical :: highordersource #if defined(NAVIERSTOKES) ! @@ -499,86 +570,96 @@ subroutine particle_source ( self, e, source, highordersource ) ! Local variables ! --------------- ! - integer :: i ,j, k - real(kind=RP) :: vol + integer :: i ,j, k + real(kind=RP) :: vol associate(spAxi => NodalStorage(e % Nxyz(1)), & spAeta => NodalStorage(e % Nxyz(2)), & spAzeta => NodalStorage(e % Nxyz(3)) ) - if ( .not. self % active ) return + if ( .not. self % active ) return !************************************** - ! COMPUTE SCALING OF THE ELEMENT (vol) + ! COMPUTE SCALING OF THE ELEMENT (vol) !************************************** + ! This information could be stored in the element so it does not have to be recomputed + !vol = 0.0_RP + !do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) + ! vol = vol + e % spAxi % w(i) * e % spAeta % w(j) * e % spAzeta % w(k) * e % geom % jacobian(i,j,k) + !end do ; end do ; end do + + ! This is the same as the lines commented at top. Update this for particle_source_gaussian if I recover it. vol = e % geom % volume !***************************** - ! COMPUTATION OF SOURCE TERM + ! COMPUTATION OF SOURCE TERM !***************************** - if (highordersource) then - do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) - ! New implementation - Kopriva's idea of dealing with dirac function in weak form + if (highordersource) then + do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) + ! New implementation - Kopriva's idea of dealing with dirac function in weak form ! This can be optimized by precomputing: + ! self % lxi(i) * self % leta(j) * self % lzeta(k) / ( e % geom % jacobian(i,j,k) * spAxi % w(i) * spAeta % w(j) * spAzeta % w(k) ) source(2,i,j,k) = source(2,i,j,k) - ( self % fluidVel(1) - self % Vel(1) ) * self % lxi(i) * self % leta(j) * self % lzeta(k) & / ( e % geom % jacobian(i,j,k) * spAxi % w(i) * spAeta % w(j) * spAzeta % w(k) ) source(3,i,j,k) = source(3,i,j,k) - ( self % fluidVel(2) - self % Vel(2) ) * self % lxi(i) * self % leta(j) * self % lzeta(k) & - / ( e % geom % jacobian(i,j,k) * spAxi % w(i) * spAeta % w(j) * spAzeta % w(k) ) + / ( e % geom % jacobian(i,j,k) * spAxi % w(i) * spAeta % w(j) * spAzeta % w(k) ) source(4,i,j,k) = source(4,i,j,k) - ( self % fluidVel(3) - self % Vel(3) ) * self % lxi(i) * self % leta(j) * self % lzeta(k) & - / ( e % geom % jacobian(i,j,k) * spAxi % w(i) * spAeta % w(j) * spAzeta % w(k) ) + / ( e % geom % jacobian(i,j,k) * spAxi % w(i) * spAeta % w(j) * spAzeta % w(k) ) source(5,i,j,k) = source(5,i,j,k) - ( self % fluidTemp - self % temp ) * self % lxi(i) * self % leta(j) * self % lzeta(k) & - / ( e % geom % jacobian(i,j,k) * spAxi % w(i) * spAeta % w(j) * spAzeta % w(k) ) - enddo ; enddo ; enddo + / ( e % geom % jacobian(i,j,k) * spAxi % w(i) * spAeta % w(j) * spAzeta % w(k) ) + enddo ; enddo ; enddo else - do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) + do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) ! Old implementation - Low order approximation of the source term inside the element (constant) - source(2,i,j,k) = source(2,i,j,k) - ( self % fluidVel(1) - self % Vel(1) ) * 1.0_RP / vol - source(3,i,j,k) = source(3,i,j,k) - ( self % fluidVel(2) - self % Vel(2) ) * 1.0_RP / vol - source(4,i,j,k) = source(4,i,j,k) - ( self % fluidVel(3) - self % Vel(3) ) * 1.0_RP / vol - source(5,i,j,k) = source(5,i,j,k) - ( self % fluidTemp - self % temp ) * 1.0_RP / vol - enddo ; enddo ; enddo - endif - + source(2,i,j,k) = source(2,i,j,k) - ( self % fluidVel(1) - self % Vel(1) ) * 1.0_RP / vol + source(3,i,j,k) = source(3,i,j,k) - ( self % fluidVel(2) - self % Vel(2) ) * 1.0_RP / vol + source(4,i,j,k) = source(4,i,j,k) - ( self % fluidVel(3) - self % Vel(3) ) * 1.0_RP / vol + source(5,i,j,k) = source(5,i,j,k) - ( self % fluidTemp - self % temp ) * 1.0_RP / vol + enddo ; enddo ; enddo + endif + end associate -#endif -end subroutine +#endif +end subroutine ! !/////////////////////////////////////////////////////////////////////////////////////// ! subroutine particle_source_gaussian ( self, e, source ) implicit none - class(Particle_t) , intent(in) :: self - class(element) , intent(in) :: e - real(kind=RP) , intent(inout) :: source(:,0:,0:,0:) + class(Particle_t) , intent(in) :: self + class(element) , intent(in) :: e + real(kind=RP) , intent(inout) :: source(:,0:,0:,0:) + ! This subroutine is not used. It could replace particle_source if I want. #if defined(NAVIERSTOKES) ! ! --------------- ! Local variables ! --------------- ! - integer :: i ,j, k - real(kind=RP) :: delta(0:e % Nxyz(1), 0:e % Nxyz(2), 0:e % Nxyz(3) ) - real(kind=RP) :: x(3) - real(kind=RP) :: val, vol - real(kind=RP) :: dx + integer :: i ,j, k + real(kind=RP) :: delta(0:e % Nxyz(1), 0:e % Nxyz(2), 0:e % Nxyz(3) ) + real(kind=RP) :: x(3) + real(kind=RP) :: val, vol + real(kind=RP) :: dx - if ( .not. self % active ) return + if ( .not. self % active ) return !************************************** - ! COMPUTE SCALING OF THE ELEMENT (dx) + ! COMPUTE SCALING OF THE ELEMENT (dx) !************************************** associate(spAxi => NodalStorage(e % Nxyz(1)), & spAeta => NodalStorage(e % Nxyz(2)), & spAzeta => NodalStorage(e % Nxyz(3)) ) - + + ! only once! vol = 0.0_RP do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) vol = vol + spAxi % w(i) * spAeta % w(j) * spAzeta % w(k) * e % geom % jacobian(i,j,k) end do ; end do ; end do dx = vol ** (1.0_RP/3.0_RP) - delta = 1.0_RP / vol + delta = 1.0_RP / vol !********************************* @@ -594,56 +675,59 @@ subroutine particle_source_gaussian ( self, e, source ) enddo ; enddo ; enddo !********************************************************************************* - ! DISCRETE NORMALIZATION OF DIRAC DELTA. DISCRETE INTEGRAL IN ELEMENT EQUAL TO 1 + ! DISCRETE NORMALIZATION OF DIRAC DELTA. DISCRETE INTEGRAL IN ELEMENT EQUAL TO 1 !********************************************************************************* val = 0.0_RP do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) val = val + spAxi % w(i) * spAeta % w(j) * spAzeta % w(k) * e % geom % jacobian(i,j,k) * delta(i,j,k) end do ; end do ; end do - delta = delta / val - + ! CON ESTO DESACTIVADO PIERDO ENERGÍA. TENGO QUE EXTENDER ESTA IDEA A LOS VECINOS. + ! HACER SOLO UNA VEZ POR PARTICULA + delta = delta / val + !***************************** - ! COMPUTATION OF SOURCE TERM + ! COMPUTATION OF SOURCE TERM !***************************** - do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) - source(2,i,j,k) = source(2,i,j,k) - ( self % fluidVel(1) - self % Vel(1) ) * delta(i,j,k) + do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) + source(2,i,j,k) = source(2,i,j,k) - ( self % fluidVel(1) - self % Vel(1) ) * delta(i,j,k) source(3,i,j,k) = source(3,i,j,k) - ( self % fluidVel(2) - self % Vel(2) ) * delta(i,j,k) source(4,i,j,k) = source(4,i,j,k) - ( self % fluidVel(3) - self % Vel(3) ) * delta(i,j,k) - source(5,i,j,k) = source(5,i,j,k) - ( self % fluidTemp - self % temp ) * delta(i,j,k) - enddo ; enddo ; enddo - + source(5,i,j,k) = source(5,i,j,k) - ( self % fluidTemp - self % temp ) * delta(i,j,k) + enddo ; enddo ; enddo + end associate -#endif -end subroutine +#endif +end subroutine ! !/////////////////////////////////////////////////////////////////////////////////////// ! function deltaDirac(x,y,z,dx) !This function creates an approximation of a delta Dirac - ! centered at x,y,z. - implicit none + ! centered at x,y,z. + implicit none real(kind=RP) :: deltaDirac real(kind=RP) :: x,y,z real(kind=RP) :: dx - real(kind=RP) :: sigma + real(kind=RP) :: sigma + !sigma = 1.5 * D sigma = 1.5 * dx ! This value has been taken from Maxey, Patel, Chang and Wang 1997 ! According to them, sigma > 1.5 grid spacing AND sigma > 1.3 D for stability - ! They use a value of sigma ~ D + ! They use a value of sigma ~ D - ! This approximation has the same triple integral as the exact + ! This approximation has the same triple integral as the exact ! Dirac delta deltaDirac = ( 2 * pi * POW2( sigma ) ) ** ( -3.0_RP / 2.0_RP ) * & exp( - ( POW2(x) + POW2(y) + POW2(z) ) / ( 2 * POW2( sigma ) ) ) -end function +end function ! !/////////////////////////////////////////////////////////////////////////////////////// -! +! -end module -#endif +end module +#endif \ No newline at end of file diff --git a/Solver/src/libs/particles/Particles.f90 b/Solver/src/libs/particles/Particles.f90 index a6fcec569..5893569ac 100644 --- a/Solver/src/libs/particles/Particles.f90 +++ b/Solver/src/libs/particles/Particles.f90 @@ -17,13 +17,13 @@ module ParticlesClass ! ******************************* ! Main particles class definition ! ******************************* -! +! type DimensionlessParticles_t - real(kind=RP) :: St - real(kind=RP) :: Nu - real(kind=RP) :: phim - real(kind=RP) :: cvpdivcv - real(kind=RP) :: I0 + real(kind=RP) :: St + real(kind=RP) :: Nu + real(kind=RP) :: phim + real(kind=RP) :: cvpdivcv + real(kind=RP) :: I0 ! Mixed fluid particles to improve performance real(kind=RP) :: gammaDiv3cvpdivcvStPr real(kind=RP) :: phimDivNo_of_particlesSt @@ -32,18 +32,18 @@ module ParticlesClass ! The implementation of particles is limited to boxes right now. It should be easy ! to couple this with the boundary conditions of the solver. I do not have the time -! to do it properly right now. -type pMesh_t +! to do it properly right now. +type pMesh_t real(kind=RP) :: min(3) ! minimum dimension of box real(kind=RP) :: max(3) ! maximum dimension of box integer :: bc(3) ! boundary condition (inflow/outflow [0], wall [1], periodic [2]) end type pMesh_t -type injection_t +type injection_t logical :: active integer :: axis(3) ! [ , , ] direction of injection integer :: number ! particles injected per step - integer :: period ! period of iterations between injections + integer :: period ! period of iterations between injections integer :: injected ! number of particles injected real(KIND=RP) :: v(3) ! Injection velocity real(KIND=RP) :: T ! Injection temperature @@ -54,12 +54,12 @@ module ParticlesClass integer :: part_per_parcel type(Particle_t), allocatable :: particle(:) type(dimensionlessParticles_t) :: dimensionless - logical :: active + logical :: active logical :: highordersource type(pMesh_t) :: pMesh - type(injection_t) :: injection + type(injection_t) :: injection contains - procedure :: Construct => ConstructParticles + procedure :: Construct => ConstructParticles procedure :: Integrate => IntegrateParticles procedure :: ExportToVTK => ExportToVTKParticles procedure :: AddSource => AddSourceParticles @@ -75,7 +75,7 @@ module ParticlesClass ! subroutine ConstructParticles( self, mesh, controlVariables, solution_file ) use FTValueDictionaryClass - use FluidData, only : dimensionless, thermodynamics + use FluidData, only : dimensionless, thermodynamics #if defined(NAVIERSTOKES) use Physics_NSKeywordsModule #endif @@ -83,30 +83,30 @@ subroutine ConstructParticles( self, mesh, controlVariables, solution_file ) implicit none class(Particles_t) , intent(inout) :: self class(HexMesh) , intent(in) :: mesh - class(FTValueDictionary) , intent(in) :: controlVariables - character(len=LINE_LENGTH), intent(in) :: solution_file + class(FTValueDictionary) , intent(in) :: controlVariables + character(len=LINE_LENGTH), intent(in) :: solution_file #if defined(NAVIERSTOKES) ! ! --------------- ! Local variables ! --------------- ! - integer :: i + integer :: i real(KIND=RP) :: pos(3) real(KIND=RP) :: vel(3) real(KIND=RP) :: temp ! real(kind=RP) :: dy, dz, y, z, Ly, Lz - character(LEN=LINE_LENGTH) :: partFile + character(LEN=LINE_LENGTH) :: partFile character(LEN=1) :: trash integer :: itrash logical :: velAndTempFromFile - - ! + + ! ! Read information related to particles from control file !-------------------------------------------------------- - + self % no_of_particles = controlVariables % integerValueForKey(numberOfParticlesKey) - + self % part_per_parcel = controlVariables % integerValueForKey(particlesPerParcelKey) if ( controlVariables % ContainsKey(sourceTermKey) ) then @@ -115,34 +115,34 @@ subroutine ConstructParticles( self, mesh, controlVariables, solution_file ) self % highordersource = .false. end if - if (self % no_of_particles == huge(1)) then + if (self % no_of_particles == huge(1)) then self % no_of_particles = 0 else write(STD_OUT,'(/)') call Section_Header('Loading particles') write(STD_OUT,'(/)') write(STD_OUT,'(30X,A,A28,I10)') "->" , "Number of particles: " , self % no_of_particles - endif + endif - allocate( self % particle( self % no_of_particles) ) + allocate( self % particle( self % no_of_particles) ) - do i = 1, self % no_of_particles + do i = 1, self % no_of_particles call self%particle(i)%init(mesh) - enddo + enddo - self % dimensionless % St = controlVariables % doublePrecisionValueForKey(STOKES_NUMBER_PART_KEY) - self % dimensionless % phim = controlVariables % doublePrecisionValueForKey(PHI_M_PART_KEY) - self % dimensionless % cvpdivcv = controlVariables % doublePrecisionValueForKey(GAMMA_PART_KEY) + self % dimensionless % St = controlVariables % doublePrecisionValueForKey(STOKES_NUMBER_PART_KEY) + self % dimensionless % phim = controlVariables % doublePrecisionValueForKey(PHI_M_PART_KEY) + self % dimensionless % cvpdivcv = controlVariables % doublePrecisionValueForKey(GAMMA_PART_KEY) self % dimensionless % Nu = 2.0_RP !Stokeian flow - self % dimensionless % I0 = controlVariables % doublePrecisionValueForKey(I0_PART_KEY) + self % dimensionless % I0 = controlVariables % doublePrecisionValueForKey(I0_PART_KEY) - ! + ! ! Collapse variables to improve performance !-------------------------------------------------------- ! gamma / (3 * cvpdivcv * St * Pr) self % dimensionless % gammaDiv3cvpdivcvStPr = thermodynamics % gamma / & - ( 3 * self % dimensionless % cvpdivcv * & + ( 3 * self % dimensionless % cvpdivcv * & self % dimensionless % St * dimensionless % Pr) ! phim / ( no_of_particles * St) @@ -167,80 +167,80 @@ subroutine ConstructParticles( self, mesh, controlVariables, solution_file ) self % injection % active = controlVariables % logicalValueForKey(PART_LOG_INJ_KEY) - ! + ! ! Set up injection if required !-------------------------------------------------------- - if (self % injection % active) then + if (self % injection % active) then self % injection % axis = getIntArrayFromString( controlVariables % StringValueForKey(key = PART_INJ_KEY,& requestedLength = 132)) self % injection % number = controlVariables % integerValueForKey(key = PART_NUMB_PER_STEP_KEY) self % injection % period = controlVariables % integerValueForKey(key = PART_PERIOD_KEY) self % injection % v = getRealArrayFromString( controlVariables % StringValueForKey(key = INJ_VEL_KEY,& requestedLength = 132)) - self % injection % T = controlVariables % doublePrecisionValueForKey(INJ_TEMP_KEY) - else + self % injection % T = controlVariables % doublePrecisionValueForKey(INJ_TEMP_KEY) + else self % injection % axis = [0,0,0] self % injection % number = 0 self % injection % period = 0 self % injection % v = 0.0_RP self % injection % T = 0.0_RP - endif + endif - ! + ! ! Initialize particles !-------------------------------------------------------- - if (self % injection % active) then - do i = 1, self % no_of_particles - self % particle (i) % active = .false. - enddo + if (self % injection % active) then + do i = 1, self % no_of_particles + self % particle (i) % active = .false. + enddo self % injection % injected = 0 - else + else self % injection % injected = self % no_of_particles - 1 open(UNIT=10, FILE=partFile) read(10,*) - do i = 1, self % no_of_particles + do i = 1, self % no_of_particles ! Read position of the particles from file read(10,*) itrash, & pos(1), pos(2), pos(3), & vel(1), vel(2), vel(3), temp - if (itrash .ne. i ) then + if (itrash .ne. i ) then write(*,*) "Particles missing in the initialization from file, reducing number of particles." write(*,*) "This functionality is in beta mode. Check code for more details." itrash = itrash + 1 self % injection % injected = self % injection % injected - 1 - ! This has not been tested. + ! This has not been tested. ! Includes this if + the update of line 238 of self % no_of_particles - endif + endif call self % particle(i) % set_pos ( pos ) ! Position the particle in the computational mesh (get element) call self % particle(i) % setGlobalPos( mesh ) - if (velAndTempFromFile) then + if (velAndTempFromFile) then ! Initialise particle velocity and temperature from file call self % particle(i) % set_vel ( vel ) call self % particle(i) % set_temp ( temp ) - else + else ! Get Fluid velocity and temperature for the random positions of each particle call self % particle(i) % getFluidVelandTemp( mesh ) - + ! Initialise particle velocity and temperature with the fluid values call self % particle(i) % set_vel ( self % particle(i) % fluidVel ) call self % particle(i) % set_temp ( self % particle(i) % fluidTemp ) - endif - enddo + endif + enddo self % no_of_particles = self % injection % injected + 1 close(10) - endif + endif call ExportToVTKParticles( self, 0, solution_file ) - ! + ! ! Show particles at screen !-------------------------------------------------------- @@ -268,19 +268,19 @@ subroutine ConstructParticles( self, mesh, controlVariables, solution_file ) self % pMesh % bc(2), ", ", & self % pMesh % bc(3), "]", " // [i,j,k] 0 is inflow/outflow, 1 is wall, 2 is periodic" - if ( self % injection % active ) then + if ( self % injection % active ) then write(STD_OUT,'(30X,A,A40,A,i4.1,A,i4.1,A,i4.1,A)') "->" , "Injection axis: ","[", & self % injection % axis(1), ", ", & self % injection % axis(2), ", ", & self % injection % axis(3), "]" - write(STD_OUT,'(30X,A,A40,I7)') "->", "Injection particles per step: ", self % injection % number - write(STD_OUT,'(30X,A,A40,I7)') "->", "Injection iter period: ", self % injection % period + write(STD_OUT,'(30X,A,A40,I7)') "->", "Injection particles per step: ", self % injection % number + write(STD_OUT,'(30X,A,A40,I7)') "->", "Injection iter period: ", self % injection % period write(STD_OUT,'(30X,A,A40,A,F4.1,A,F4.1,A,F4.1,A)') "->" , "Dimensionless Injection velocity: ","[", & self % injection % v (1), ", ", & self % injection % v (2), ", ", & - self % injection % v (3), "]" - write(STD_OUT,'(30X,A,A40,E10.3)') "->", "Dimensionless Injection temp: ", self % injection % T - endif + self % injection % v (3), "]" + write(STD_OUT,'(30X,A,A40,E10.3)') "->", "Dimensionless Injection temp: ", self % injection % T + endif #endif end subroutine ConstructParticles @@ -289,7 +289,7 @@ end subroutine ConstructParticles ! subroutine IntegrateParticles( self, mesh, dt ) implicit none - class(HexMesh) , intent(in) :: mesh + class(HexMesh) , intent(in) :: mesh class(Particles_t) , intent(inout) :: self real(KIND=RP) , intent(in) :: dt #if defined(NAVIERSTOKES) @@ -301,36 +301,51 @@ subroutine IntegrateParticles( self, mesh, dt ) integer :: i - !$omp parallel do schedule(runtime) + !GTD: Change to for all particles + !GTD: Adapt for MPI compatibility + !GTD: Performance can be improved (a lot) + !GTD: Fix makefile dependencies (now I have to sometimes do make clean) + + !$omp parallel do schedule(runtime) do i = 1, self % injection % injected + 1 - if (self % particle(i) % active) then - ! + if (self % particle(i) % active) then + ! ! Get particle global position and set up interpolation !------------------------------------------------------ + !call self % particle(i) % show call self % particle(i) % setGlobalPos( mesh ) - ! + !call self % particle(i) % show + ! ! Get fluid velocity and temperature at that position - !------------------------------------------------------ - ! PREVENTS TRYING TO GET VEL AND TEMP OUTSIDE DOMAIN - if ( self % particle(i) % active ) then + !------------------------------------------------------ + ! PREVENTS TRYING TO GET VEL AND TEMP OUTSIDE DOMAIN + if ( self % particle(i) % active ) then call self % particle(i) % getFluidVelandTemp( mesh ) - endif - ! + endif + ! ! Integrate in time to get new particle velocity and temperature - !------------------------------------------------------ + !------------------------------------------------------ call self % particle(i) % integrate( mesh, dt, & self % dimensionless % St, & self % dimensionless % Nu, & self % dimensionless % phim, & self % dimensionless % I0, & self % dimensionless % gammaDiv3cvpdivcvStPr, & - self % pMesh % min, & + self % pMesh % min, & self % pMesh % max, & - self % pMesh % bc ) - endif - - enddo + self % pMesh % bc ) + ! + ! Print particle position (only for debugging) + !------------------------------------------------------ +! call self % particle(i) % show() + endif + + enddo !$omp end parallel do + ! + ! Print particle position (only for debugging) + !------------------------------------------------------ + #endif end subroutine IntegrateParticles ! @@ -343,13 +358,13 @@ subroutine AddSourceParticles( self, iP, e, time, thermodynamics_, dimensionless #endif IMPLICIT NONE class(Particles_t) , intent(in) :: self - integer , intent(in) :: iP + integer , intent(in) :: iP CLASS(element) , intent(inout) :: e REAL(KIND=RP) , intent(in) :: time type(Thermodynamics_t) , intent(in) :: thermodynamics_ type(Dimensionless_t) , intent(in) :: dimensionless_ type(RefValues_t) , intent(in) :: refValues_ -#if defined(NAVIERSTOKES) +#if defined(NAVIERSTOKES) ! ! --------------- ! Local variables @@ -363,7 +378,7 @@ subroutine AddSourceParticles( self, iP, e, time, thermodynamics_, dimensionless associate ( d => self % dimensionless ) - call self % computeSourceTerm( e, iP, Source ) + call self % computeSourceTerm( e, iP, Source ) ! Compute source term in coordinate i, j, k @@ -371,28 +386,28 @@ subroutine AddSourceParticles( self, iP, e, time, thermodynamics_, dimensionless Source(1, i, j, k ) = 0.0_RP Source(2:4, i, j, k ) = Source(2:4, i, j, k ) * d % phimDivNo_of_particlesSt * & - SutherlandsLaw( Temperature( e % storage % Q(:,i,j,k) ) ) + SutherlandsLaw( Temperature( e % storage % Q(:,i,j,k) ) ) Source(5, i, j, k ) = Source(5, i, j, k ) * d % phimDiv3No_of_particlesNuDivgammaminus1PrM2St - enddo ; enddo ; enddo + enddo ; enddo ; enddo !$omp critical do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) e % storage % S_NSP(1:5,i,j,k) = e % storage % S_NSP(1:5,i,j,k) + Source(1:5,i,j,k) - enddo ; enddo ; enddo + enddo ; enddo ; enddo !$omp end critical - end associate + end associate #endif -end subroutine AddSourceParticles +end subroutine AddSourceParticles ! !/////////////////////////////////////////////////////////////////////////////////////// ! subroutine ComputeSourceTermParticles(self, e, iP, Source) - USE ElementClass + USE ElementClass IMPLICIT NONE class(Particles_t) , intent(in) :: self - class(element) , intent(in) :: e - integer , intent(in) :: iP + class(element) , intent(in) :: e + integer , intent(in) :: iP real(KIND=RP) , intent(out) :: Source(:,0:,0:,0:) #if defined(NAVIERSTOKES) @@ -400,7 +415,7 @@ subroutine ComputeSourceTermParticles(self, e, iP, Source) call self % particle(iP) % Source( e, Source, self % highordersource ) #endif -end subroutine +end subroutine ! !/////////////////////////////////////////////////////////////////////////////////////// ! @@ -408,7 +423,7 @@ subroutine ExportToVTKParticles( self, iter, solution_file ) implicit none class(Particles_t) , intent(in) :: self character(len=LINE_LENGTH) :: solution_file - integer :: iter + integer :: iter #if defined(NAVIERSTOKES) ! @@ -416,11 +431,11 @@ subroutine ExportToVTKParticles( self, iter, solution_file ) ! Local variables ! --------------- ! - character(len=LINE_LENGTH) :: filename + character(len=LINE_LENGTH) :: filename integer :: i integer :: no_of_particles - + no_of_particles = size( self % particle ) write(fileName,'(A,A,I10.10,A)') trim(solution_file),'.parts.',iter,'.csv' @@ -429,13 +444,13 @@ subroutine ExportToVTKParticles( self, iter, solution_file ) write(10,*) "i", ",", "x coord", ",", "y coord", ",", "z coord", ",", "u", ",", "v", ",", "w", ",", "T" do i = 1, no_of_particles - if ( self % particle (i) % active ) then + if ( self % particle (i) % active ) then write( 10, '(i10,7(A,E12.6))' ) i, ",", & self % particle (i) % pos(1), ",", self % particle (i) % pos(2), ",", self % particle (i) % pos(3), ",",& self % particle (i) % vel(1), ",", self % particle (i) % vel(2), ",", self % particle (i) % vel(3),",", & self % particle (i) % temp - endif - enddo + endif + enddo close(10) #endif @@ -454,41 +469,43 @@ subroutine InjectParticles( self, mesh ) ! Local variables ! --------------- ! - integer :: i, k + integer :: i, k real(KIND=RP) :: pos(3) real(KIND=RP) :: v(3), T real(KIND=RP) :: eps ! This is a hardcoded value that makes sure that the particle is inside the domain. ! Injection position is Min + (Max - Min) * eps or Max - (Max - Min) * eps depending if it is in positive or negative directions - eps = 1.d-2 + eps = 1.d-2 - if ( self % injection % injected + self % injection % number + 1 > self % no_of_particles ) then - return - endif + if ( self % injection % injected + self % injection % number + 1 > self % no_of_particles ) then + return + endif ! Injection velocity - v = self % injection % v + v = self % injection % v ! Injection temperature T = self % injection % T - + +!!!!$omp do schedule(runtime) private(k, pos) +!$omp single do i = self % injection % injected, self % injection % injected + self % injection % number do k = 1,3 call random_number( pos(k) ) pos(k) = ( pos(k) - 0.5_RP ) * ( self % pMesh % max(k) - self % pMesh % min(k) ) + & - ( self % pMesh % max(k) + self % pMesh % min(k) ) / 2 + ( self % pMesh % max(k) + self % pMesh % min(k) ) / 2 enddo - + do k = 1, 3 - if ( self % injection % axis (k) /= 0 ) then - if ( self % injection % axis (k) == 1 ) then + if ( self % injection % axis (k) /= 0 ) then + if ( self % injection % axis (k) == 1 ) then pos(k) = self % pMesh % min(k) + ( self % pMesh % max(k) - self % pMesh % min(k) ) * eps - elseif ( self % injection % axis (i) == - 1 ) then + elseif ( self % injection % axis (i) == - 1 ) then pos(k) = self % pMesh % max(k) - ( self % pMesh % max(k) - self % pMesh % min(k) ) * eps - endif - endif - enddo + endif + endif + enddo call self % particle(i+1) % set_pos ( pos ) @@ -499,10 +516,15 @@ subroutine InjectParticles( self, mesh ) ! It will be required for the computation of the source term. call self % particle(i+1) % getFluidVelandTemp( mesh ) ! Initialise particle velocity and temperature with the fluid values + !call self % particle(i+1) % set_vel ( self % particle(i+1) % fluidVel ) + !call self % particle(i+1) % set_temp ( self % particle(i+1) % fluidTemp ) + call self % particle(i+1) % set_vel ( v ) - call self % particle(i+1) % set_temp ( T ) + call self % particle(i+1) % set_temp ( T ) - enddo + enddo +!$omp end single +!!!!!$omp end do self % injection % injected = self % injection % injected + self % injection % number #endif @@ -511,4 +533,4 @@ end subroutine InjectParticles !/////////////////////////////////////////////////////////////////////////////////////// ! #endif -end module ParticlesClass +end module ParticlesClass \ No newline at end of file diff --git a/Solver/src/libs/physics/cahnhilliard/FluidData_CH.f90 b/Solver/src/libs/physics/cahnhilliard/FluidData_CH.f90 index 03e1baef8..2388eee51 100644 --- a/Solver/src/libs/physics/cahnhilliard/FluidData_CH.f90 +++ b/Solver/src/libs/physics/cahnhilliard/FluidData_CH.f90 @@ -75,4 +75,4 @@ subroutine Multiphase_SetStarMobility(M0) multiphase % M0_star = M0 end subroutine Multiphase_SetStarMobility -end module FluidData_CH +end module FluidData_CH \ No newline at end of file diff --git a/Solver/src/libs/physics/cahnhilliard/Makefile b/Solver/src/libs/physics/cahnhilliard/Makefile index 284f5e995..6ce6773bb 100644 --- a/Solver/src/libs/physics/cahnhilliard/Makefile +++ b/Solver/src/libs/physics/cahnhilliard/Makefile @@ -62,4 +62,4 @@ clean: FORCE ############################################# # Dummy procedure to force a rule # ############################################# -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/libs/physics/cahnhilliard/PhysicsStorage_CH.f90 b/Solver/src/libs/physics/cahnhilliard/PhysicsStorage_CH.f90 index b2444de13..0535528fc 100644 --- a/Solver/src/libs/physics/cahnhilliard/PhysicsStorage_CH.f90 +++ b/Solver/src/libs/physics/cahnhilliard/PhysicsStorage_CH.f90 @@ -198,4 +198,3 @@ END SUBROUTINE CheckPhysicsCHInputIntegrity ! ********** END MODULE PhysicsStorage_CH ! ********** - diff --git a/Solver/src/libs/physics/cahnhilliard/Physics_CH.f90 b/Solver/src/libs/physics/cahnhilliard/Physics_CH.f90 index ea0620fe2..5edf42abe 100644 --- a/Solver/src/libs/physics/cahnhilliard/Physics_CH.f90 +++ b/Solver/src/libs/physics/cahnhilliard/Physics_CH.f90 @@ -92,4 +92,4 @@ pure subroutine PoiseuilleFlow(x, v) end subroutine PoiseuilleFlow -END Module Physics_CH +END Module Physics_CH \ No newline at end of file diff --git a/Solver/src/libs/physics/cahnhilliard/VariableConversion_CH.f90 b/Solver/src/libs/physics/cahnhilliard/VariableConversion_CH.f90 index ed0c4eba9..54099177a 100644 --- a/Solver/src/libs/physics/cahnhilliard/VariableConversion_CH.f90 +++ b/Solver/src/libs/physics/cahnhilliard/VariableConversion_CH.f90 @@ -35,4 +35,4 @@ pure subroutine GetCHViscosity(phi, mu) end subroutine GetCHViscosity -end module VariableConversion_CH +end module VariableConversion_CH \ No newline at end of file diff --git a/Solver/src/libs/physics/common/BoundaryConditions.f90 b/Solver/src/libs/physics/common/BoundaryConditions.f90 index d385476c1..077f7d275 100644 --- a/Solver/src/libs/physics/common/BoundaryConditions.f90 +++ b/Solver/src/libs/physics/common/BoundaryConditions.f90 @@ -258,4 +258,4 @@ integer function GetZoneType(bname) end function GetZoneType -end module BoundaryConditions +end module BoundaryConditions \ No newline at end of file diff --git a/Solver/src/libs/physics/common/FluidData.f90 b/Solver/src/libs/physics/common/FluidData.f90 index 9aa5ac9b8..fd29fd32d 100644 --- a/Solver/src/libs/physics/common/FluidData.f90 +++ b/Solver/src/libs/physics/common/FluidData.f90 @@ -13,4 +13,4 @@ module FluidData #endif implicit none -end module FluidData +end module FluidData \ No newline at end of file diff --git a/Solver/src/libs/physics/common/FreeSlipWallBC.f90 b/Solver/src/libs/physics/common/FreeSlipWallBC.f90 index 081b59a07..dceb5355d 100644 --- a/Solver/src/libs/physics/common/FreeSlipWallBC.f90 +++ b/Solver/src/libs/physics/common/FreeSlipWallBC.f90 @@ -311,7 +311,7 @@ subroutine FreeSlipWallBC_FlowGradVars(self, x, t, nHat, Q, U, GetGradients) Q_aux(IRHOU:IRHOW) = Q(IRHOU:IRHOW) Q_aux(IRHOE) = Q(IRHOE) + self % wallType*(Q(IRHO)*self % eWall+0.5_RP*(POW2(Q(IRHOU))+POW2(Q(IRHOV))+POW2(Q(IRHOW)))/Q(IRHO)-Q(IRHOE)) #if defined(SPALARTALMARAS) - Q_aux(IRHOTHETA)= Q(IRHOTHETA) + Q_aux(IRHOTHETA)= Q(IRHOTHETA) #endif call GetGradients(NCONS, NGRAD, Q_aux, U) @@ -588,4 +588,4 @@ subroutine FreeSlipWallBC_ChemPotNeumann(self, x, t, nHat, Q, U_x, U_y, U_z, flu end subroutine FreeSlipWallBC_ChemPotNeumann #endif -end module FreeSlipWallBCClass +end module FreeSlipWallBCClass \ No newline at end of file diff --git a/Solver/src/libs/physics/common/GenericBoundaryConditionClass.f90 b/Solver/src/libs/physics/common/GenericBoundaryConditionClass.f90 index 2cd76e987..acb6ba764 100644 --- a/Solver/src/libs/physics/common/GenericBoundaryConditionClass.f90 +++ b/Solver/src/libs/physics/common/GenericBoundaryConditionClass.f90 @@ -457,4 +457,4 @@ logical function CheckIfBoundaryNameIsContained(line, bname) end function CheckIfBoundaryNameIsContained -end module GenericBoundaryConditionClass +end module GenericBoundaryConditionClass \ No newline at end of file diff --git a/Solver/src/libs/physics/common/InflowBC.f90 b/Solver/src/libs/physics/common/InflowBC.f90 index b06d3b91b..b434f9e4c 100644 --- a/Solver/src/libs/physics/common/InflowBC.f90 +++ b/Solver/src/libs/physics/common/InflowBC.f90 @@ -516,4 +516,4 @@ subroutine InflowBC_ChemPotNeumann(self, x, t, nHat, Q, U_x, U_y, U_z, flux) end subroutine InflowBC_ChemPotNeumann #endif -end module InflowBCClass +end module InflowBCClass \ No newline at end of file diff --git a/Solver/src/libs/physics/common/Makefile b/Solver/src/libs/physics/common/Makefile index 8411f88fc..1819895f0 100644 --- a/Solver/src/libs/physics/common/Makefile +++ b/Solver/src/libs/physics/common/Makefile @@ -49,7 +49,7 @@ LIBOBJS_iNS = ./build_ins/FluidData.o \ ./build_ins/FreeSlipWallBC.o \ ./build_ins/PeriodicBC.o \ ./build_ins/UserDefinedBC.o \ - ./build_ins/BoundaryConditions.o + ./build_ins/BoundaryConditions.o LIBOBJS_CH = ./build_ch/FluidData.o \ ./build_ch/PhysicsStorage.o \ @@ -62,7 +62,7 @@ LIBOBJS_CH = ./build_ch/FluidData.o \ ./build_ch/FreeSlipWallBC.o \ ./build_ch/PeriodicBC.o \ ./build_ch/UserDefinedBC.o \ - ./build_ch/BoundaryConditions.o + ./build_ch/BoundaryConditions.o LIBOBJS_MU = ./build_mu/FluidData.o \ ./build_mu/PhysicsStorage.o \ @@ -75,7 +75,7 @@ LIBOBJS_MU = ./build_mu/FluidData.o \ ./build_mu/FreeSlipWallBC.o \ ./build_mu/PeriodicBC.o \ ./build_mu/UserDefinedBC.o \ - ./build_mu/BoundaryConditions.o + ./build_mu/BoundaryConditions.o LIB = physics @@ -211,4 +211,4 @@ clean: FORCE ############################################# # Dummy procedure to force a rule # ############################################# -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/libs/physics/common/NoSlipWallBC.f90 b/Solver/src/libs/physics/common/NoSlipWallBC.f90 index fd47236be..c194bc5d7 100644 --- a/Solver/src/libs/physics/common/NoSlipWallBC.f90 +++ b/Solver/src/libs/physics/common/NoSlipWallBC.f90 @@ -283,7 +283,10 @@ subroutine NoSlipWallBC_FlowState(self, x, t, nHat, Q) #if defined (SPALARTALMARAS) Q(IRHOTHETA) = -Q(IRHOTHETA) #endif - Q(IRHOU:IRHOW) = 2.0_RP * Q(IRHO)*self % vWall-Q(IRHOU:IRHOW) + Q(IRHOU:IRHOW) = 2.0_RP * Q(IRHO)*self % vWall - Q(IRHOU:IRHOW) +! This boundary condition should be +! --------------------------------- + !Q(IRHOU:IRHOW) = Q(IRHOU:IRHOW) - 2.0_RP * sum(Q(IRHOU:IRHOW)*nHat)*nHat !Isothermal BC @@ -580,4 +583,4 @@ subroutine NoSlipWallBC_ChemPotNeumann(self, x, t, nHat, Q, U_x, U_y, U_z, flux) end subroutine NoSlipWallBC_ChemPotNeumann #endif -end module NoSlipWallBCClass +end module NoSlipWallBCClass \ No newline at end of file diff --git a/Solver/src/libs/physics/common/OutflowBC.f90 b/Solver/src/libs/physics/common/OutflowBC.f90 index 3f0d5aa86..f730001b0 100644 --- a/Solver/src/libs/physics/common/OutflowBC.f90 +++ b/Solver/src/libs/physics/common/OutflowBC.f90 @@ -374,8 +374,8 @@ end subroutine OutflowBC_FlowNeumann ! !//////////////////////////////////////////////////////////////////////////// ! -! Subroutines for the Multiphase solver -! ------------------------------------- +! Subroutines for the Multiphase solver +! ------------------------------------- ! !//////////////////////////////////////////////////////////////////////////// ! @@ -495,4 +495,4 @@ subroutine OutflowBC_ChemPotNeumann(self, x, t, nHat, Q, U_x, U_y, U_z, flux) end subroutine OutflowBC_ChemPotNeumann #endif -end module OutflowBCClass +end module OutflowBCClass \ No newline at end of file diff --git a/Solver/src/libs/physics/common/PeriodicBC.f90 b/Solver/src/libs/physics/common/PeriodicBC.f90 index e1353bc1d..56a0b1021 100644 --- a/Solver/src/libs/physics/common/PeriodicBC.f90 +++ b/Solver/src/libs/physics/common/PeriodicBC.f90 @@ -183,4 +183,4 @@ subroutine PeriodicBC_Destruct(self) class(PeriodicBC_t) :: self end subroutine PeriodicBC_Destruct -end module PeriodicBCClass +end module PeriodicBCClass \ No newline at end of file diff --git a/Solver/src/libs/physics/common/Physics.f90 b/Solver/src/libs/physics/common/Physics.f90 index f4ef90953..4851c46ec 100644 --- a/Solver/src/libs/physics/common/Physics.f90 +++ b/Solver/src/libs/physics/common/Physics.f90 @@ -2,7 +2,7 @@ module Physics #if defined(NAVIERSTOKES) && (!(SPALARTALMARAS)) use Physics_NS #elif defined(NAVIERSTOKES) && (SPALARTALMARAS) - use Physics_NSSA + use Physics_NSSA #elif defined(INCNS) use Physics_iNS #elif defined(MULTIPHASE) @@ -13,4 +13,4 @@ module Physics #endif implicit none -end module Physics +end module Physics \ No newline at end of file diff --git a/Solver/src/libs/physics/common/PhysicsStorage.f90 b/Solver/src/libs/physics/common/PhysicsStorage.f90 index 22ac89b09..8b2322f86 100644 --- a/Solver/src/libs/physics/common/PhysicsStorage.f90 +++ b/Solver/src/libs/physics/common/PhysicsStorage.f90 @@ -146,4 +146,4 @@ subroutine SetReferenceLength(Lref_) end subroutine SetReferenceLength -end module PhysicsStorage +end module PhysicsStorage \ No newline at end of file diff --git a/Solver/src/libs/physics/common/UserDefinedBC.f90 b/Solver/src/libs/physics/common/UserDefinedBC.f90 index 42a41b8a1..1672ed510 100644 --- a/Solver/src/libs/physics/common/UserDefinedBC.f90 +++ b/Solver/src/libs/physics/common/UserDefinedBC.f90 @@ -385,4 +385,4 @@ subroutine UserDefinedBC_ChemPotNeumann(self, x, t, nHat, Q, U_x, U_y, U_z, flux end subroutine UserDefinedBC_ChemPotNeumann #endif -end module UserDefinedBCClass +end module UserDefinedBCClass \ No newline at end of file diff --git a/Solver/src/libs/physics/common/VariableConversion.f90 b/Solver/src/libs/physics/common/VariableConversion.f90 index fd5dd65be..74b6e9f3c 100644 --- a/Solver/src/libs/physics/common/VariableConversion.f90 +++ b/Solver/src/libs/physics/common/VariableConversion.f90 @@ -71,4 +71,4 @@ pure subroutine GetiNSCHViscosity(phi, mu) end subroutine GetiNSCHViscosity #endif -end module VariableConversion +end module VariableConversion \ No newline at end of file diff --git a/Solver/src/libs/physics/common/WallFunctionBC.f90 b/Solver/src/libs/physics/common/WallFunctionBC.f90 index 568b7c50f..32b060dde 100644 --- a/Solver/src/libs/physics/common/WallFunctionBC.f90 +++ b/Solver/src/libs/physics/common/WallFunctionBC.f90 @@ -2,7 +2,7 @@ MODULE WallFunctionBC USE SMConstants - !use PhysicsStorage + ! use PhysicsStorage USE PhysicsStorage_NS IMPLICIT NONE @@ -22,7 +22,6 @@ MODULE WallFunctionBC ! Public definitions ! ****************** ! - PUBLIC WallViscousFlux, wall_shear, u_tau_f, u_tau_f_ABL, y_plus_f, u_plus_f ! @@ -35,14 +34,15 @@ MODULE WallFunctionBC ! Wall shear stress (tau_w) is then used to compute the viscous flux. ! The viscous flux is set in the same direction as the parallel velocity. ! If the reference velocity parallel to the wall is less than a - ! minimun value, flux is set to zero to avoid numerical issues. + ! minimum value, flux is set to zero to avoid numerical issues. + SUBROUTINE WallViscousFlux (U_inst, dWall, nHat, rho, mu, U_avg, visc_flux, u_tau) use WallFunctionDefinitions, only: useAverageV IMPLICIT NONE - REAL(kind=RP) , INTENT(IN) :: U_inst(NDIM) ! Instantaneus velocity from LES solver + REAL(kind=RP) , INTENT(IN) :: U_inst(NDIM) ! Instantaneous velocity from LES solver REAL(kind=RP) , INTENT(IN) :: dWall ! Normal wall distance REAL(kind=RP), INTENT(IN) :: nHat(NDIM) ! Unitary vector normal to wall REAL(kind=RP) , INTENT(IN) :: rho ! Density @@ -58,6 +58,7 @@ SUBROUTINE WallViscousFlux (U_inst, dWall, nHat, rho, mu, U_avg, visc_flux, u_ta REAL(kind=RP), DIMENSION(NDIM) :: u_parallel_aux ! Velocity parallel to wall auxiliary, is the instantaneous when the average is used REAL(kind=RP) :: u_II ! Velocity magnitude parallel to wall, used in Wall Function REAL(kind=RP) :: tau_w ! Wall shear stress + REAL(kind=RP) :: beta ! damping factor from Thomas et. al if (useAverageV) then U_ref = U_avg @@ -71,11 +72,15 @@ SUBROUTINE WallViscousFlux (U_inst, dWall, nHat, rho, mu, U_avg, visc_flux, u_ta ! Wall model only modifies momentum viscous fluxes. call wall_shear(u_II, dWall, rho, mu, tau_w, u_tau) + ! visc_flux(IRHOU:IRHOW) = - tau_w_f (u_II,dWall,rho,mu) * x_II if (useAverageV) then u_parallel_aux = U_inst - (dot_product(U_inst, nHat) * nHat) - x_II = u_parallel_aux / u_II !schuman, the direction scales with the instantaneus values + x_II = u_parallel_aux / u_II !schuman, the direction scales with the instantaneous values + ! beta = 0.3_RP ! thomas arbitrary value. If set to 0.0_RP, the schuman eq is recovered + ! x_II = (beta * u_parallel_aux + (1-beta) * u_parallel) / u_II ! thomas, the direction scales with both the instantaneous and the mean end if visc_flux(IRHOU:IRHOW) = - tau_w * x_II + ! print *, "visc_flux: ", visc_flux END SUBROUTINE ! @@ -83,7 +88,6 @@ SUBROUTINE WallViscousFlux (U_inst, dWall, nHat, rho, mu, U_avg, visc_flux, u_ta ! ! FUNCTION tau_w_f (u_II, y, rho, mu) SUBROUTINE wall_shear(u_II, y, rho, mu, tau_w, u_tau) - USE WallFunctionDefinitions, ONLY: wallFuncIndex, STD_WALL, ABL_WALL IMPLICIT NONE @@ -99,24 +103,26 @@ SUBROUTINE wall_shear(u_II, y, rho, mu, tau_w, u_tau) ! REAL(kind=RP) :: u_tau ! Friction velocity REAL(kind=RP) :: nu ! Kinematic viscosity - nu = mu / rho - select case (wallFuncIndex) case (STD_WALL) ! u_tau is computed by solving Eq. (3) in Frere et al 2017 ! along with the definitions of u+ and y+. + ! use previous solution as the new starting point u_tau = u_tau_f( u_II, y, nu, u_tau ) case (ABL_WALL) + ! print *, "u_II: ", u_II, " z: ", y u_tau = u_tau_f_ABL( u_II, y, nu ) + ! print *, "u_tau: ", u_tau end select ! then the definition of the wall shear stress is used tau_w = rho * u_tau * u_tau - END SUBROUTINE + END SUBROUTINE + ! END FUNCTION ! !------------------------------------------------------------------------------------------------------------------------ ! @@ -133,6 +139,7 @@ FUNCTION u_tau_f (u_II,y,nu, u_tau0) REAL(kind=RP) :: u_tau_f ! Friction velocity + REAL(kind=RP) :: u_tau ! Previous value for Newton method REAL(kind=RP) :: u_tau_next ! Next value for Newton method INTEGER :: i ! Counter @@ -146,9 +153,10 @@ FUNCTION u_tau_f (u_II,y,nu, u_tau0) ! The damped Newton method is used. ! Initial seed for Newton method - - u_tau = u_tau0 - + u_tau = u_tau0 + + ! Iterate in Newton's method until convergence criteria is met + DO i = 1, newtonMaxIter ! Evaluate auxiliary function at u_tau @@ -156,7 +164,7 @@ FUNCTION u_tau_f (u_II,y,nu, u_tau0) ! Compute numerical derivative of auxiliary function at u_tau eps = ABS(u_tau) * 1.0E-8_RP - JAC = ( Aux_f ( u_tau + eps, u_II, y, nu ) - Aux_x0 ) / eps + JAC = ( Aux_f ( u_tau + eps, u_II, y, nu ) - Aux_x0 ) / eps ! Default value for alpha (Newton method) alpha = newtonAlpha @@ -172,15 +180,17 @@ FUNCTION u_tau_f (u_II,y,nu, u_tau0) IF ( ( ABS ( ( u_tau_next - u_tau ) / u_tau ) < newtonTol ) & .AND. & ( ABS ( Aux_x0 ) < newtonTol ) ) THEN - ! Asign output value to u_tau - u_tau_f = u_tau_next + + ! Assign output value to u_tau + u_tau_f = u_tau_next RETURN END IF + ! Set value for u_tau for next iteration u_tau = u_tau_next - END DO + END DO STOP "DAMPED NEWTON METHOD IN WALL FUNCTION DOES NOT CONVERGE." @@ -209,17 +219,6 @@ FUNCTION Aux_f (u_tau, u_II, y, nu) Aux_f = u_II - u_plus_f ( y_plus_f ( y, u_tau, nu ) ) * u_tau END FUNCTION - - function Derivative( y_plus ) - use WallFunctionDefinitions, ONLY: kappa, WallC - implicit none - real(kind=RP), intent(in) :: y_plus - real(kind=RP) :: Derivative - - Derivative = 1.0_RP/(1.0_RP + kappa*y_plus) + (WallC - 1.0_RP/kappa*log(kappa)) * & - (exp(-y_plus/11.0_RP)/11.0_RP - exp(-y_plus/3.0_RP)/11.0_RP + y_plus/11.0_RP*exp(-y_plus/3.0_RP)/3.0_RP) - - end function Derivative ! !------------------------------------------------------------------------------------------------------------------------ ! @@ -231,10 +230,10 @@ PURE FUNCTION u_plus_f (y_plus) REAL(kind=RP), INTENT(IN) :: y_plus REAL(kind=RP) :: u_plus_f ! (OUT) - + u_plus_f = 1.0_RP / kappa * log( 1.0_RP + kappa * y_plus ) & - + ( WallC - 1.0_RP / kappa * log(kappa) ) * & - ( 1.0_RP - exp( -y_plus / 11.0_RP )-( y_plus / 11.0_RP ) * exp( -y_plus / 3.0_RP ) ) + + ( WallC - 1.0_RP / kappa * log(kappa) ) * & + ( 1.0_RP - exp( -y_plus / 11.0_RP )-( y_plus / 11.0_RP ) * exp( -y_plus / 3.0_RP ) ) END FUNCTION ! @@ -272,5 +271,4 @@ END FUNCTION u_tau_f_ABL ! END MODULE -#endif - +#endif \ No newline at end of file diff --git a/Solver/src/libs/physics/common/WallFunctionDefinitions.f90 b/Solver/src/libs/physics/common/WallFunctionDefinitions.f90 index bb9ed71aa..f199a663e 100644 --- a/Solver/src/libs/physics/common/WallFunctionDefinitions.f90 +++ b/Solver/src/libs/physics/common/WallFunctionDefinitions.f90 @@ -49,7 +49,6 @@ Module WallFunctionDefinitions ! logical :: useAverageV = .false. - contains ! !------------------------------------------------------------------------------------------------------------------------ @@ -107,11 +106,10 @@ Subroutine Initialize_Wall_Function(controlVariables, correct) kappa = controlVariables % getValueOrDefault("wall function kappa", DEFAULT_VON_KARMAN) WallC = controlVariables % getValueOrDefault("wall function c", DEFAULT_WALL_C) - d = d / Lref - useAverageV = controlVariables%logicalValueForKey("wall function use average") + !todo: see if there are negative values and return if that's the case ! write(STD_OUT,'(A)') "Wall function will not be activated" @@ -123,5 +121,4 @@ End Subroutine Initialize_Wall_Function !------------------------------------------------------------------------------------------------------------------------ ! End Module WallFunctionDefinitions -#endif - +#endif \ No newline at end of file diff --git a/Solver/src/libs/physics/incns/FluidData_iNS.f90 b/Solver/src/libs/physics/incns/FluidData_iNS.f90 index 2bb62e705..25ff435c1 100644 --- a/Solver/src/libs/physics/incns/FluidData_iNS.f90 +++ b/Solver/src/libs/physics/incns/FluidData_iNS.f90 @@ -112,4 +112,4 @@ subroutine SetDimensionless( dimensionless_ ) dimensionless % gravity_dir = dimensionless_ % gravity_dir end subroutine SetDimensionless -end module FluidData_iNS +end module FluidData_iNS \ No newline at end of file diff --git a/Solver/src/libs/physics/incns/Makefile b/Solver/src/libs/physics/incns/Makefile index 5097f9815..855b1ce1e 100644 --- a/Solver/src/libs/physics/incns/Makefile +++ b/Solver/src/libs/physics/incns/Makefile @@ -63,4 +63,4 @@ clean: FORCE ############################################# # Dummy procedure to force a rule # ############################################# -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/libs/physics/incns/PhysicsStorage_iNS.f90 b/Solver/src/libs/physics/incns/PhysicsStorage_iNS.f90 index 22dd3389d..e9c4358fa 100644 --- a/Solver/src/libs/physics/incns/PhysicsStorage_iNS.f90 +++ b/Solver/src/libs/physics/incns/PhysicsStorage_iNS.f90 @@ -35,6 +35,26 @@ Module Physics_iNSKeywordsModule CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: LAXFRIEDRICHS_SOLVER_NAME = "lax-friedrichs" CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: EXACT_SOLVER_NAME = "exact" + ! !PARTICLES + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: particlesKey = "lagrangian particles" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: numberOfParticlesKey = "number of particles" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: particlesPerParcelKey = "particles per parcel" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: sourceTermKey = "high order particles source term" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: STOKES_NUMBER_PART_KEY = "stokes number" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: GAMMA_PART_KEY = "gamma" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: PHI_M_PART_KEY = "phi_m" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: I0_PART_KEY = "radiation source" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: MIN_BOX_KEY = "minimum box" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: MAX_BOX_KEY = "maximum box" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: BC_BOX_KEY = "bc box" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: PART_FILE_KEY = "particles file" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: PART_LOG_FILE_KEY = "vel and temp from file" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: PART_LOG_INJ_KEY = "injection" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: PART_INJ_KEY = "particles injection" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: PART_NUMB_PER_STEP_KEY = "particles per step" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: PART_PERIOD_KEY = "particles iter period" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: INJ_VEL_KEY = "particles injection velocity" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: INJ_TEMP_KEY = "particles injection temperature" END MODULE Physics_iNSKeywordsModule ! !//////////////////////////////////////////////////////////////////////// @@ -447,6 +467,14 @@ SUBROUTINE CheckPhysics_iNSInputIntegrity( controlVariables, success ) real(kind=RP) :: array(3) success = .TRUE. +! DO i = 1, SIZE(physics_iNSKeywords) +! obj => controlVariables % objectForKey(physics_iNSKeywords(i)) +! IF ( .NOT. ASSOCIATED(obj) ) THEN +! PRINT *, "Input file is missing entry for keyword: ",physics_iNSKeywords(i) +! success = .FALSE. +! END IF +! END DO + if ( .not. controlVariables % ContainsKey(REFERENCE_VELOCITY_KEY) ) then call controlVariables % AddValueForKey("1.0", REFERENCE_VELOCITY_KEY) end if @@ -542,4 +570,3 @@ END SUBROUTINE CheckPhysics_iNSInputIntegrity ! ********** END MODULE PhysicsStorage_iNS ! ********** - diff --git a/Solver/src/libs/physics/incns/Physics_iNS.f90 b/Solver/src/libs/physics/incns/Physics_iNS.f90 index fcf5de5f0..1496268e1 100644 --- a/Solver/src/libs/physics/incns/Physics_iNS.f90 +++ b/Solver/src/libs/physics/incns/Physics_iNS.f90 @@ -170,4 +170,4 @@ SUBROUTINE ComputeEigenvaluesForState( Q, eigen ) eigen(2) = 0.5_RP * (v + a) eigen(3) = 0.5_RP * (w + a) - END SUBROUTINE ComputeEigenvaluesForState + END SUBROUTINE ComputeEigenvaluesForState \ No newline at end of file diff --git a/Solver/src/libs/physics/incns/RiemannSolvers_iNS.f90 b/Solver/src/libs/physics/incns/RiemannSolvers_iNS.f90 index dea44b590..deedeac63 100644 --- a/Solver/src/libs/physics/incns/RiemannSolvers_iNS.f90 +++ b/Solver/src/libs/physics/incns/RiemannSolvers_iNS.f90 @@ -118,6 +118,34 @@ subroutine CentralRiemannSolver(QLeft, QRight, nHat, t1, t2, flux) ! real(kind=RP) :: f(1:NCONS), g(1:NCONS), h(1:NCONS) ! +! Rotate the variables to the face local frame using normal and tangent vectors +! ----------------------------------------------------------------------------- +! rhoL = QLeft(INSRHO) +! invRhoL = 1.0_RP / rhoL +! uL = invRhoL * (QLeft(INSRHOU) * nHat(1) + QLeft(INSRHOV) * nHat(2) + QLeft(INSRHOW) * nHat(3)) +! vL = invRhoL * (QLeft(INSRHOU) * t1(1) + QLeft(INSRHOV) * t1(2) + QLeft(INSRHOW) * t1(3)) +! wL = invRhoL * (QLeft(INSRHOU) * t2(1) + QLeft(INSRHOV) * t2(2) + QLeft(INSRHOW) * t2(3)) +! pL = QLeft(INSP) +! +! rhoR = QRight(INSRHO) +! invRhoR = 1.0_RP / rhoR +! uR = invRhoR * (QRight(INSRHOU) * nHat(1) + QRight(INSRHOV) * nHat(2) + QRight(INSRHOW) * nHat(3)) +! vR = invRhoR * (QRight(INSRHOU) * t1(1) + QRight(INSRHOV) * t1(2) + QRight(INSRHOW) * t1(3)) +! wR = invRhoR * (QRight(INSRHOU) * t2(1) + QRight(INSRHOV) * t2(2) + QRight(INSRHOW) * t2(3)) +! pR = QRight(INSP) +!! +!! Perform the average using the averaging function +!! ------------------------------------------------ +! QLRot = (/ rhoL, uL, vL, wL, pL /) +! QRRot = (/ rhoR, uR, vR, wR, pR /) +! call AveragedStates(QLRot, QRRot, pL, pR, rhoL, rhoR, flux) +!! +!! ************************************************ +!! Return momentum equations to the cartesian frame +!! ************************************************ +!! +! flux(2:4) = nHat*flux(2) + t1*flux(3) + t2*flux(4) + call AveragedStates(QLeft, QRight, f, g, h) flux = f * nHat(1) + g*nHat(2) + h*nHat(3) @@ -139,6 +167,43 @@ subroutine LxFRiemannSolver(QLeft, QRight, nHat, t1, t2, flux) real(kind=RP) :: rhoR, uR, vR, wR, pR, invRhoR real(kind=RP) :: QLRot(NCONS), QRRot(NCONS) real(kind=RP) :: stab(NCONS), lambdaMax +!! +!! Rotate the variables to the face local frame using normal and tangent vectors +!! ----------------------------------------------------------------------------- +! rhoL = QLeft(INSRHO) +! invRhoL = 1.0_RP / rhoL +! uL = invRhoL * (QLeft(INSRHOU) * nHat(1) + QLeft(INSRHOV) * nHat(2) + QLeft(INSRHOW) * nHat(3)) +! vL = invRhoL * (QLeft(INSRHOU) * t1(1) + QLeft(INSRHOV) * t1(2) + QLeft(INSRHOW) * t1(3)) +! wL = invRhoL * (QLeft(INSRHOU) * t2(1) + QLeft(INSRHOV) * t2(2) + QLeft(INSRHOW) * t2(3)) +! pL = QLeft(INSP) +! +! rhoR = QRight(INSRHO) +! invRhoR = 1.0_RP / rhoR +! uR = invRhoR * (QRight(INSRHOU) * nHat(1) + QRight(INSRHOV) * nHat(2) + QRight(INSRHOW) * nHat(3)) +! vR = invRhoR * (QRight(INSRHOU) * t1(1) + QRight(INSRHOV) * t1(2) + QRight(INSRHOW) * t1(3)) +! wR = invRhoR * (QRight(INSRHOU) * t2(1) + QRight(INSRHOV) * t2(2) + QRight(INSRHOW) * t2(3)) +! pR = QRight(INSP) +!! +!! Perform the average using the averaging function +!! ------------------------------------------------ +! QLRot = (/ rhoL, uL, vL, wL, pL /) +! QRRot = (/ rhoR, uR, vR, wR, pR /) +! call AveragedStates(QLRot, QRRot, pL, pR, rhoL, rhoR, flux) +!! +!! Compute the Lax-Friedrichs stabilization +!! ---------------------------------------- +! lambdaMax = max(uL + sqrt(uL**2+4.0_RP*thermodynamics % rho0c02/rhoL), & +! uR + sqrt(uR**2+4.0_RP*thermodynamics % rho0c02/rhoR) ) +! +! stab = 0.5_RP * lambdaMax * (QRRot - QLRot) +! +! flux = flux - stab +!! +!! ************************************************ +!! Return momentum equations to the cartesian frame +!! ************************************************ +!! +! flux(2:4) = nHat*flux(2) + t1*flux(3) + t2*flux(4) print*, "LxF Riemann solver not implemented" stop @@ -251,6 +316,22 @@ subroutine StandardAverage(QLeft, QRight, f, g, h) ! --------------- ! real(kind=RP) :: fL(NCONS), fR(NCONS) +! +! Compute the flux +! ---------------- +! fL(INSRHO) = QLeft(INSRHO) * QLeft(INSRHOU) +! fL(INSRHOU) = fL(INSRHO) * QLeft(INSRHOU) + QLeft(INSP) +! fL(INSRHOV) = fL(INSRHO) * QLeft(INSRHOV) +! fL(INSRHOW) = fL(INSRHO) * QLeft(INSRHOW) +! fL(INSP) = thermodynamics % rho0c02 * QLeft(INSP) +! +! fR(INSRHO) = QRight(INSRHO) * QRight(INSRHOU) +! fR(INSRHOU) = fR(INSRHO) * QRight(INSRHOU) + QRight(INSP) +! fR(INSRHOV) = fR(INSRHO) * QRight(INSRHOV) +! fR(INSRHOW) = fR(INSRHO) * QRight(INSRHOW) +! fR(INSP) = thermodynamics % rho0c02 * QRight(INSP) +! +! flux = 0.5_RP * (fL + fR) print*, "Standard average not implemented" stop @@ -274,6 +355,17 @@ subroutine SkewSymmetric1Average(QLeft, QRight, f, g, h) ! real(kind=RP) :: rhou, u +! rhou = 0.5_RP * (QLeft(INSRHO) * QLeft(INSRHOU) + QRight(INSRHO) * QRight(INSRHOU)) +! u = 0.5_RP * (QLeft(INSRHOU) + QRight(INSRHOU)) +!! +!! Compute the flux +!! ---------------- +! flux(INSRHO) = rhou +! flux(INSRHOU) = rhou * u + 0.5_RP * (QLeft(INSP) + QRight(INSP)) +! flux(INSRHOU) = rhou * 0.5_RP * (QLeft(INSRHOV) + QRight(INSRHOV)) +! flux(INSRHOU) = rhou * 0.5_RP * (QLeft(INSRHOW) + QRight(INSRHOW)) +! flux(INSP) = thermodynamics % rho0c02 * u +! print*, "SkewSymmetric 1 average not implemented" stop end subroutine SkewSymmetric1Average @@ -322,6 +414,19 @@ subroutine SkewSymmetric2Average(QLeft, QRight, f, g, h) h(INSRHOW) = h(INSRHO)*w + p h(INSP) = thermodynamics % rho0c02 * w + + + +! u = 0.5_RP * (QLeft(INSRHOU) + QRight(INSRHOU)) +!! +!! Compute the flux +!! ---------------- +! flux(INSRHO) = 0.5_RP * (QLeft(INSRHO) + QRight(INSRHO)) * u +! flux(INSRHOU) = flux(INSRHOU) * u + 0.5_RP * (QLeft(INSP) + QRight(INSP)) +! flux(INSRHOU) = flux(INSRHOU) * 0.5_RP * (QLeft(INSRHOV) + QRight(INSRHOV)) +! flux(INSRHOU) = flux(INSRHOU) * 0.5_RP * (QLeft(INSRHOW) + QRight(INSRHOW)) +! flux(INSP) = thermodynamics % rho0c02 * u + end subroutine SkewSymmetric2Average -end module RiemannSolvers_iNS +end module RiemannSolvers_iNS \ No newline at end of file diff --git a/Solver/src/libs/physics/incns/VariableConversion_iNS.f90 b/Solver/src/libs/physics/incns/VariableConversion_iNS.f90 index 510825ebf..d8128c683 100644 --- a/Solver/src/libs/physics/incns/VariableConversion_iNS.f90 +++ b/Solver/src/libs/physics/incns/VariableConversion_iNS.f90 @@ -94,4 +94,4 @@ end subroutine GetiNSTwoFluidsViscosity ! ! ///////////////////////////////////////////////////////////////////// ! -end module VariableConversion_iNS +end module VariableConversion_iNS \ No newline at end of file diff --git a/Solver/src/libs/physics/multiphase/FluidData_MU.f90 b/Solver/src/libs/physics/multiphase/FluidData_MU.f90 index e0b845e62..55440f6fb 100644 --- a/Solver/src/libs/physics/multiphase/FluidData_MU.f90 +++ b/Solver/src/libs/physics/multiphase/FluidData_MU.f90 @@ -100,4 +100,4 @@ subroutine SetDimensionless( dimensionless_ ) dimensionless % invMa2 = dimensionless_ % invMa2 end subroutine SetDimensionless -end module FluidData_MU +end module FluidData_MU \ No newline at end of file diff --git a/Solver/src/libs/physics/multiphase/Makefile b/Solver/src/libs/physics/multiphase/Makefile index b81667d74..a1154077f 100644 --- a/Solver/src/libs/physics/multiphase/Makefile +++ b/Solver/src/libs/physics/multiphase/Makefile @@ -63,4 +63,4 @@ clean: FORCE ############################################# # Dummy procedure to force a rule # ############################################# -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/libs/physics/multiphase/PhysicsStorage_MU.f90 b/Solver/src/libs/physics/multiphase/PhysicsStorage_MU.f90 index f7fccd0ac..99fc125c8 100644 --- a/Solver/src/libs/physics/multiphase/PhysicsStorage_MU.f90 +++ b/Solver/src/libs/physics/multiphase/PhysicsStorage_MU.f90 @@ -19,6 +19,27 @@ Module Physics_MUKeywordsModule character(len=KEYWORD_LENGTH), parameter :: CENTRAL_SOLVER_NAME = "central" character(len=KEYWORD_LENGTH), parameter :: EXACT_SOLVER_NAME = "exact" + !PARTICLES + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: particlesKey = "lagrangian particles" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: numberOfParticlesKey = "number of particles" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: particlesPerParcelKey = "particles per parcel" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: sourceTermKey = "high order particles source term" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: STOKES_NUMBER_PART_KEY = "stokes number" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: GAMMA_PART_KEY = "gamma" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: PHI_M_PART_KEY = "phi_m" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: I0_PART_KEY = "radiation source" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: MIN_BOX_KEY = "minimum box" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: MAX_BOX_KEY = "maximum box" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: BC_BOX_KEY = "bc box" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: PART_FILE_KEY = "particles file" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: PART_LOG_FILE_KEY = "vel and temp from file" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: PART_LOG_INJ_KEY = "injection" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: PART_INJ_KEY = "particles injection" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: PART_NUMB_PER_STEP_KEY = "particles per step" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: PART_PERIOD_KEY = "particles iter period" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: INJ_VEL_KEY = "particles injection velocity" + ! CHARACTER(LEN=KEYWORD_LENGTH), PARAMETER :: INJ_TEMP_KEY = "particles injection temperature" + END MODULE Physics_MUKeywordsModule ! !//////////////////////////////////////////////////////////////////////// @@ -416,6 +437,14 @@ SUBROUTINE CheckPhysics_MUInputIntegrity( controlVariables, success ) real(kind=RP) :: array(3) success = .TRUE. +! DO i = 1, SIZE(physics_MUKeywords) +! obj => controlVariables % objectForKey(physics_MUKeywords(i)) +! IF ( .NOT. ASSOCIATED(obj) ) THEN +! PRINT *, "Input file is missing entry for keyword: ",physics_MUKeywords(i) +! success = .FALSE. +! END IF +! END DO + if ( .not. controlVariables % ContainsKey(REFERENCE_VELOCITY_KEY) ) then call controlVariables % AddValueForKey("1.0", REFERENCE_VELOCITY_KEY) end if @@ -494,4 +523,3 @@ END SUBROUTINE CheckPhysics_MUInputIntegrity ! ********** END MODULE PhysicsStorage_MU ! ********** - diff --git a/Solver/src/libs/physics/multiphase/Physics_MU.f90 b/Solver/src/libs/physics/multiphase/Physics_MU.f90 index eba33de1a..a5ae48229 100644 --- a/Solver/src/libs/physics/multiphase/Physics_MU.f90 +++ b/Solver/src/libs/physics/multiphase/Physics_MU.f90 @@ -160,9 +160,18 @@ SUBROUTINE ComputeEigenvaluesForState( Q, eigen ) ! --------------- ! REAL(KIND=Rp) :: u, v, w, p, a -print*, "Compute eigenvalues for state not implemented in MU" +print*, "Get eigenvalues!!" errorMessage(STD_OUT) stop +! +! u = ABS( Q(IMSQRHOU)/Q(IMSQRHO) ) +! v = ABS( Q(IMSQRHOV)/Q(IMSQRHO) ) +! w = ABS( Q(IMSQRHOW)/Q(IMSQRHO) ) +! a = sqrt(u*u+v*v+w*w + 4.0_RP * thermodynamics % rho0c02/Q(IMSQRHO)) + +! eigen(1) = 0.5_RP * (u + a) +! eigen(2) = 0.5_RP * (v + a) +! eigen(3) = 0.5_RP * (w + a) eigen = 0.0_RP - END SUBROUTINE ComputeEigenvaluesForState + END SUBROUTINE ComputeEigenvaluesForState \ No newline at end of file diff --git a/Solver/src/libs/physics/multiphase/RiemannSolvers_MU.f90 b/Solver/src/libs/physics/multiphase/RiemannSolvers_MU.f90 index 0aecb17a8..46f91f5db 100644 --- a/Solver/src/libs/physics/multiphase/RiemannSolvers_MU.f90 +++ b/Solver/src/libs/physics/multiphase/RiemannSolvers_MU.f90 @@ -232,4 +232,4 @@ subroutine ExactRiemannSolver(QLeft, QRight, rhoL, rhoR, muL, muR, nHat, t1, t2, end subroutine ExactRiemannSolver -end module RiemannSolvers_MU +end module RiemannSolvers_MU \ No newline at end of file diff --git a/Solver/src/libs/physics/multiphase/VariableConversion_MU.f90 b/Solver/src/libs/physics/multiphase/VariableConversion_MU.f90 index e636c11ca..1a3e6bca0 100644 --- a/Solver/src/libs/physics/multiphase/VariableConversion_MU.f90 +++ b/Solver/src/libs/physics/multiphase/VariableConversion_MU.f90 @@ -86,4 +86,4 @@ end subroutine GetmTwoFluidsViscosity ! ! ///////////////////////////////////////////////////////////////////// ! -end module VariableConversion_MU +end module VariableConversion_MU \ No newline at end of file diff --git a/Solver/src/libs/physics/navierstokes/ArtificialViscosity.f90 b/Solver/src/libs/physics/navierstokes/ArtificialViscosity.f90 index 17526d076..d9c7d1738 100644 --- a/Solver/src/libs/physics/navierstokes/ArtificialViscosity.f90 +++ b/Solver/src/libs/physics/navierstokes/ArtificialViscosity.f90 @@ -83,4 +83,4 @@ pure function Lmin(s) end function -end module ArtificialViscosity +end module ArtificialViscosity \ No newline at end of file diff --git a/Solver/src/libs/physics/navierstokes/FluidData_NS.f90 b/Solver/src/libs/physics/navierstokes/FluidData_NS.f90 index ccd00a98d..5ae32486c 100644 --- a/Solver/src/libs/physics/navierstokes/FluidData_NS.f90 +++ b/Solver/src/libs/physics/navierstokes/FluidData_NS.f90 @@ -191,4 +191,4 @@ pure subroutine getThermalConductivity3D(N, mu, Pr, kappa) end subroutine getThermalConductivity3D -end module FluidData_NS +end module FluidData_NS \ No newline at end of file diff --git a/Solver/src/libs/physics/navierstokes/LESModels.f90 b/Solver/src/libs/physics/navierstokes/LESModels.f90 index 0c4a0eb7d..e33e704ae 100644 --- a/Solver/src/libs/physics/navierstokes/LESModels.f90 +++ b/Solver/src/libs/physics/navierstokes/LESModels.f90 @@ -153,6 +153,7 @@ subroutine InitializeLESModel(model, controlVariables) end select else + !model % WallModel = LINEAR_WALLMODEL model % WallModel = NO_WALLMODEL end if @@ -463,35 +464,39 @@ pure subroutine Vreman_ComputeViscosity (this, delta, dWall, Q, Q_x, Q_y, Q_z, m !-local-variables--------------------------------------- real(kind=RP) :: G__ij(NDIM, NDIM) real(kind=RP) :: gradV(NDIM, NDIM) - real(kind=RP) :: Gij, delta2, alpha, Bbeta, LS + real(kind=RP) :: delta2, alpha, Bbeta, LS + real(kind=RP) :: U_x(NDIM) + real(kind=RP) :: U_y(NDIM) + real(kind=RP) :: U_z(NDIM) integer :: i,j,k !------------------------------------------------------- - call getVelocityGradients (Q,Q_x,Q_y,Q_z,gradV(1,:),gradV(2,:),gradV(3,:)) + call getVelocityGradients (Q,Q_x,Q_y,Q_z,U_x,U_y,U_z) - alpha = 0.0_RP - do i=1,3 - alpha = alpha+gradV(i,1)**2+gradV(i,2)**2+gradV(i,3)**2 - end do + delta2 = delta*delta + gradV(1,:) = U_x(1:3) + gradV(2,:) = U_y(1:3) + gradV(3,:) = U_z(1:3) + G__ij(:,:) = 0.0_RP - if(alpha>1.0e-10_RP) then - delta2 = delta*delta - do i = 1,3 - do j = i,3 - Gij=0.0_RP - do k = 1,3 - Gij = Gij + (gradV(k,i)*gradV(k,j)*delta2) - end do - G__ij(i,j) = Gij - G__ij(j,i) = Gij + do i = 1,3 + do j = 1,3 + do k = 1,3 + G__ij(i,j) = G__ij(i,j) & + + (gradV(i,k)*gradV(j,k)*delta2) end do end do - Bbeta = G__ij(1,1) * G__ij(2,2) & - + G__ij(2,2) * G__ij(3,3) & - + G__ij(3,3) * G__ij(1,1) & - - G__ij(1,2) * G__ij(1,2) & - - G__ij(2,3) * G__ij(2,3) & - - G__ij(1,3) * G__ij(1,3) + end do + + alpha = sum(gradV*gradV) + Bbeta = G__ij(1,1) * G__ij(2,2) & + & + G__ij(2,2) * G__ij(3,3) & + & + G__ij(3,3) * G__ij(1,1) & + & - G__ij(1,2) * G__ij(1,2) & + & - G__ij(2,3) * G__ij(2,3) & + & - G__ij(1,3) * G__ij(1,3) + + if(alpha>1.0e-10_RP) then mu = Q(IRHO) * this % C * sqrt (abs(Bbeta)/alpha) else mu = 0.0_RP @@ -518,4 +523,4 @@ subroutine Vreman_Describe(self) end select end subroutine Vreman_Describe -end module LESModels +end module LESModels \ No newline at end of file diff --git a/Solver/src/libs/physics/navierstokes/Makefile b/Solver/src/libs/physics/navierstokes/Makefile index 8ce7c9b0e..f6a5a6def 100644 --- a/Solver/src/libs/physics/navierstokes/Makefile +++ b/Solver/src/libs/physics/navierstokes/Makefile @@ -65,4 +65,4 @@ clean: FORCE ############################################# # Dummy procedure to force a rule # ############################################# -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/libs/physics/navierstokes/ManufacturedSolutions.f90 b/Solver/src/libs/physics/navierstokes/ManufacturedSolutions.f90 index 0f893424b..705dbe3e1 100644 --- a/Solver/src/libs/physics/navierstokes/ManufacturedSolutions.f90 +++ b/Solver/src/libs/physics/navierstokes/ManufacturedSolutions.f90 @@ -4,8 +4,8 @@ ! ! Manufactured solutions definitions for 2D and 3D cases (Euler and Navier-Stokes) ! -!//////////////////////////////////////////////////////////////////////////////////////// ! +!//////////////////////////////////////////////////////////////////////////////////////// MODULE ManufacturedSolutionsNS USE SMConstants USE PhysicsStorage_NS @@ -66,6 +66,11 @@ SUBROUTINE InitializeManufacturedSol(ProblemDIM) vC = (/1._RP,-0.09375_RP , 0.05000_RP , 0.03750_RP, 0.5_RP , 2._RP/3._RP, 1.25_RP/) wC = (/1._RP, 0.01875_RP ,-0.03125_RP , 0.04375_RP, 1.0_RP/3._RP, 1._RP/5._RP, 1.00_RP/) pC = (/1._RP, 0.2_RP , 0.50000_RP ,-0.35000_RP, 2.0_RP , 1.00_RP , 1._RP/3._RP/) +!~ rC = (/1._RP,-0.15_RP ,-0.15000_RP ,-0.15000_RP, 5.0_RP , 5.0_RP , 5.00_RP/) +!~ uC = (/0._RP, 0.5_RP , 0.5_RP , 0.5_RP , 1.0_RP , 1.00_RP , 1.00_RP/) +!~ vC = (/1._RP,-0.09375_RP , 0.05000_RP , 0.03750_RP, 0.5_RP , 2._RP/3._RP, 1.25_RP/) +!~ wC = (/1._RP, 0.01875_RP ,-0.03125_RP , 0.04375_RP, 1.0_RP/3._RP, 1._RP/5._RP, 1.00_RP/) +!~ pC = (/1._RP, 0.2_RP , 0.50000_RP ,-0.35000_RP, 2.0_RP , 1.00_RP , 1._RP/3._RP/) END SELECT END SUBROUTINE InitializeManufacturedSol @@ -3243,4 +3248,4 @@ SUBROUTINE ManufacturedSolutionSourceEuler( xx, t, Q ) END SUBROUTINE ManufacturedSolutionSourceEuler -END MODULE ManufacturedSolutionsNS +END MODULE ManufacturedSolutionsNS \ No newline at end of file diff --git a/Solver/src/libs/physics/navierstokes/PhysicsStorage_NS.f90 b/Solver/src/libs/physics/navierstokes/PhysicsStorage_NS.f90 index ee2112da2..1e8d2ba75 100644 --- a/Solver/src/libs/physics/navierstokes/PhysicsStorage_NS.f90 +++ b/Solver/src/libs/physics/navierstokes/PhysicsStorage_NS.f90 @@ -688,4 +688,4 @@ end subroutine SetGradientVariables ! ! ********** END MODULE PhysicsStorage_NS -! ********** +! ********** \ No newline at end of file diff --git a/Solver/src/libs/physics/navierstokes/Physics_NS.f90 b/Solver/src/libs/physics/navierstokes/Physics_NS.f90 index 654a50614..7131c9f01 100644 --- a/Solver/src/libs/physics/navierstokes/Physics_NS.f90 +++ b/Solver/src/libs/physics/navierstokes/Physics_NS.f90 @@ -560,13 +560,13 @@ end subroutine GuermondPopovFlux_ENTROPY ! d f_i(2) | ! df_dgradq(2,4,j,i) = ---------- | ! d(∇q)_j(4) |q=cons, -! where (∇q)_j = dq/dx_j +! where (∇q)_j = dq/dx_j ! -! Following Hartmann's notation, G_{ij} = df_dgradq(:,:,j,i). --> R. Hartmann. "Discontinuous Galerkin methods for compressible flows: higher order accuracy, error estimation and adaptivity". 2005. +! Following Hartmann's notation, G_{ij} = df_dgradq(:,:,j,i). --> R. Hartmann. "Discontinuous Galerkin methods for compressible flows: higher order accuracy, error estimation and adaptivity". 2005. ! ! 2. Jacobian with respect to the conserved variables: df/dq ! -! df_dq := df/d(∇q) +! df_dq := df/d(∇q) ! d f_i(2) | ! df_dq(2,4,i) = -------- | ! dq(4) |∇q=cons @@ -958,4 +958,4 @@ SUBROUTINE ComputeEigenvaluesForState( Q, eigen ) end associate - END SUBROUTINE ComputeEigenvaluesForState + END SUBROUTINE ComputeEigenvaluesForState \ No newline at end of file diff --git a/Solver/src/libs/physics/navierstokes/RiemannSolvers_NS.f90 b/Solver/src/libs/physics/navierstokes/RiemannSolvers_NS.f90 index fb7aebe9d..9ad2188a2 100644 --- a/Solver/src/libs/physics/navierstokes/RiemannSolvers_NS.f90 +++ b/Solver/src/libs/physics/navierstokes/RiemannSolvers_NS.f90 @@ -1873,4 +1873,4 @@ subroutine ChandrasekarAverage(QLeft,QRight, pL, pR, invRhoL, invRhoR, flux) end subroutine ChandrasekarAverage -end module RiemannSolvers_NS +end module RiemannSolvers_NS \ No newline at end of file diff --git a/Solver/src/libs/physics/navierstokes/VariableConversion_NS.f90 b/Solver/src/libs/physics/navierstokes/VariableConversion_NS.f90 index 4f0b5bb22..3156899ba 100644 --- a/Solver/src/libs/physics/navierstokes/VariableConversion_NS.f90 +++ b/Solver/src/libs/physics/navierstokes/VariableConversion_NS.f90 @@ -616,4 +616,4 @@ subroutine set_GetVelocityGradients(grad_vars_) end select end subroutine set_getVelocityGradients -end module VariableConversion_NS +end module VariableConversion_NS \ No newline at end of file diff --git a/Solver/src/libs/physics/spallartalmaras/ArtificialViscosity.f90 b/Solver/src/libs/physics/spallartalmaras/ArtificialViscosity.f90 index 17526d076..d9c7d1738 100644 --- a/Solver/src/libs/physics/spallartalmaras/ArtificialViscosity.f90 +++ b/Solver/src/libs/physics/spallartalmaras/ArtificialViscosity.f90 @@ -83,4 +83,4 @@ pure function Lmin(s) end function -end module ArtificialViscosity +end module ArtificialViscosity \ No newline at end of file diff --git a/Solver/src/libs/physics/spallartalmaras/FluidData_NSSA.f90 b/Solver/src/libs/physics/spallartalmaras/FluidData_NSSA.f90 index 0977fa3dd..2eb38f496 100644 --- a/Solver/src/libs/physics/spallartalmaras/FluidData_NSSA.f90 +++ b/Solver/src/libs/physics/spallartalmaras/FluidData_NSSA.f90 @@ -197,4 +197,4 @@ pure subroutine getThermalConductivity3D(N, mu, Pr, kappa) end subroutine getThermalConductivity3D -end module FluidData_NSSA +end module FluidData_NSSA \ No newline at end of file diff --git a/Solver/src/libs/physics/spallartalmaras/Makefile b/Solver/src/libs/physics/spallartalmaras/Makefile index f458e475a..06e0aa2a8 100644 --- a/Solver/src/libs/physics/spallartalmaras/Makefile +++ b/Solver/src/libs/physics/spallartalmaras/Makefile @@ -15,7 +15,7 @@ LIBOBJS = ./build/FluidData_NSSA.o \ ./build/Turbulence.o \ ./build/Physics_NSSA.o \ ./build/RiemannSolvers_NSSA.o \ - ./build/ManufacturedSolutions.o + ./build/ManufacturedSolutions.o\ LIB = physicsnssa @@ -64,4 +64,4 @@ clean: FORCE ############################################# # Dummy procedure to force a rule # ############################################# -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/libs/physics/spallartalmaras/PhysicsStorage_NSSA.f90 b/Solver/src/libs/physics/spallartalmaras/PhysicsStorage_NSSA.f90 index 3224161b7..ae276c0dc 100644 --- a/Solver/src/libs/physics/spallartalmaras/PhysicsStorage_NSSA.f90 +++ b/Solver/src/libs/physics/spallartalmaras/PhysicsStorage_NSSA.f90 @@ -681,4 +681,3 @@ end subroutine SetGradientVariables ! ********** END MODULE PhysicsStorage_NSSA ! ********** - diff --git a/Solver/src/libs/physics/spallartalmaras/Physics_NSSA.f90 b/Solver/src/libs/physics/spallartalmaras/Physics_NSSA.f90 index be46db4af..19b59be4c 100644 --- a/Solver/src/libs/physics/spallartalmaras/Physics_NSSA.f90 +++ b/Solver/src/libs/physics/spallartalmaras/Physics_NSSA.f90 @@ -560,13 +560,13 @@ end subroutine GuermondPopovFlux_ENTROPY ! d f_i(2) | ! df_dgradq(2,4,j,i) = ---------- | ! d(∇q)_j(4) |q=cons, -! where (∇q)_j = dq/dx_j +! where (∇q)_j = dq/dx_j ! -! Following Hartmann's notation, G_{ij} = df_dgradq(:,:,j,i). --> R. Hartmann. "Discontinuous Galerkin methods for compressible flows: higher order accuracy, error estimation and adaptivity". 2005. +! Following Hartmann's notation, G_{ij} = df_dgradq(:,:,j,i). --> R. Hartmann. "Discontinuous Galerkin methods for compressible flows: higher order accuracy, error estimation and adaptivity". 2005. ! ! 2. Jacobian with respect to the conserved variables: df/dq ! -! df_dq := df/d(∇q) +! df_dq := df/d(∇q) ! d f_i(2) | ! df_dq(2,4,i) = -------- | ! dq(4) |∇q=cons @@ -722,4 +722,4 @@ SUBROUTINE ComputeEigenvaluesForStateSA( Q, eigen ) end associate END SUBROUTINE ComputeEigenvaluesForStateSA -! ///////////////////////////////////////////////////////////////////// +! ///////////////////////////////////////////////////////////////////// \ No newline at end of file diff --git a/Solver/src/libs/physics/spallartalmaras/RiemannSolvers_NSSA.f90 b/Solver/src/libs/physics/spallartalmaras/RiemannSolvers_NSSA.f90 index eb07a9ed7..1a9d6685c 100644 --- a/Solver/src/libs/physics/spallartalmaras/RiemannSolvers_NSSA.f90 +++ b/Solver/src/libs/physics/spallartalmaras/RiemannSolvers_NSSA.f90 @@ -1525,4 +1525,4 @@ subroutine ChandrasekarAverage(QLeft,QRight, pL, pR, invRhoL, invRhoR, flux) end subroutine ChandrasekarAverage -end module RiemannSolvers_NSSA +end module RiemannSolvers_NSSA \ No newline at end of file diff --git a/Solver/src/libs/physics/spallartalmaras/Turbulence.f90 b/Solver/src/libs/physics/spallartalmaras/Turbulence.f90 index 7f76fc9d6..a68319d4c 100644 --- a/Solver/src/libs/physics/spallartalmaras/Turbulence.f90 +++ b/Solver/src/libs/physics/spallartalmaras/Turbulence.f90 @@ -40,7 +40,7 @@ module SpallartAlmarasTurbulence procedure :: Initialize => SAmodel_Initialize procedure, private :: Compute_chi - procedure, public :: Compute_fv1 + procedure, private :: Compute_fv1 procedure, private :: Compute_fv2 procedure, private :: Compute_sbar procedure, private :: Compute_modifiedvorticity @@ -369,4 +369,4 @@ subroutine Compute_AdditionalSourceTermKappa(self, rho, Theta_x, Theta_y, Theta_ end subroutine Compute_AdditionalSourceTermKappa -end module SpallartAlmarasTurbulence +end module SpallartAlmarasTurbulence \ No newline at end of file diff --git a/Solver/src/libs/physics/spallartalmaras/VariableConversion_NSSA.f90 b/Solver/src/libs/physics/spallartalmaras/VariableConversion_NSSA.f90 index 5bb0c8f87..2693611b7 100644 --- a/Solver/src/libs/physics/spallartalmaras/VariableConversion_NSSA.f90 +++ b/Solver/src/libs/physics/spallartalmaras/VariableConversion_NSSA.f90 @@ -624,4 +624,4 @@ subroutine geteddyviscositygradients(Q, Q_x, Q_y, Q_z , theta_x, theta_y, theta_ end subroutine geteddyviscositygradients #endif -end module VariableConversion_NSSA +end module VariableConversion_NSSA \ No newline at end of file diff --git a/Solver/src/libs/problemfile/Makefile b/Solver/src/libs/problemfile/Makefile index b1ce6c184..b499d2521 100644 --- a/Solver/src/libs/problemfile/Makefile +++ b/Solver/src/libs/problemfile/Makefile @@ -158,4 +158,4 @@ clean: FORCE ############################################# # Dummy procedure to force a rule # ############################################# -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/libs/problemfile/ProblemFile.f90 b/Solver/src/libs/problemfile/ProblemFile.f90 index 290bee59e..58e1714a0 100644 --- a/Solver/src/libs/problemfile/ProblemFile.f90 +++ b/Solver/src/libs/problemfile/ProblemFile.f90 @@ -1,12 +1,11 @@ ! !//////////////////////////////////////////////////////////////////////// ! -! ProblemFile.f90 ! ! The Problem File contains user defined procedures ! that are used to "personalize" i.e. define a specific ! problem to be solved. These procedures include initial conditions, -! exact solutions (e.g. for tests), etc. and allow modifications +! exact solutions (e.g. for tests), etc. and allow modifications ! without having to modify the main code. ! ! The procedures, *even if empty* that must be defined are @@ -17,8 +16,8 @@ ! UserDefinedFinalize(mesh) ! UserDefinedTermination ! -!//////////////////////////////////////////////////////////////////////// -! +!//////////////////////////////////////////////////////////////////////// +! #include "Includes.h" module ProblemFileFunctions implicit none @@ -26,12 +25,12 @@ module ProblemFileFunctions abstract interface subroutine UserDefinedStartup_f end subroutine UserDefinedStartup_f - + SUBROUTINE UserDefinedFinalSetup_f(mesh & #ifdef FLOW , thermodynamics_ & , dimensionless_ & - , refValues_ & + , refValues_ & #endif #ifdef CAHNHILLIARD , multiphase_ & @@ -55,7 +54,7 @@ subroutine UserDefinedInitialCondition_f(mesh & #ifdef FLOW , thermodynamics_ & , dimensionless_ & - , refValues_ & + , refValues_ & #endif #ifdef CAHNHILLIARD , multiphase_ & @@ -129,8 +128,8 @@ end subroutine UserDefinedNeumann_f #endif ! -!//////////////////////////////////////////////////////////////////////// -! +!//////////////////////////////////////////////////////////////////////// +! SUBROUTINE UserDefinedPeriodicOperation_f(mesh, time, dt, Monitors) use SMConstants USE HexMeshClass @@ -142,8 +141,8 @@ SUBROUTINE UserDefinedPeriodicOperation_f(mesh, time, dt, Monitors) type(Monitor_t), intent(in) :: monitors END SUBROUTINE UserDefinedPeriodicOperation_f ! -!//////////////////////////////////////////////////////////////////////// -! +!//////////////////////////////////////////////////////////////////////// +! #ifdef FLOW subroutine UserDefinedSourceTermNS_f(x, Q, time, S, thermodynamics_, dimensionless_, refValues_ & #ifdef CAHNHILLIARD @@ -168,14 +167,14 @@ subroutine UserDefinedSourceTermNS_f(x, Q, time, S, thermodynamics_, dimensionle end subroutine UserDefinedSourceTermNS_f #endif ! -!//////////////////////////////////////////////////////////////////////// -! +!//////////////////////////////////////////////////////////////////////// +! SUBROUTINE UserDefinedFinalize_f(mesh, time, iter, maxResidual & #ifdef FLOW , thermodynamics_ & , dimensionless_ & - , refValues_ & -#endif + , refValues_ & +#endif #ifdef CAHNHILLIARD , multiphase_ & #endif @@ -208,7 +207,7 @@ SUBROUTINE UserDefinedTermination_f implicit none END SUBROUTINE UserDefinedTermination_f end interface - + end module ProblemFileFunctions SUBROUTINE UserDefinedStartup @@ -217,16 +216,16 @@ SUBROUTINE UserDefinedStartup ! Called before any other routines ! -------------------------------- ! - IMPLICIT NONE + IMPLICIT NONE END SUBROUTINE UserDefinedStartup ! -!//////////////////////////////////////////////////////////////////////// -! +!//////////////////////////////////////////////////////////////////////// +! SUBROUTINE UserDefinedFinalSetup(mesh & #ifdef FLOW , thermodynamics_ & , dimensionless_ & - , refValues_ & + , refValues_ & #endif #ifdef CAHNHILLIARD , multiphase_ & @@ -253,13 +252,13 @@ SUBROUTINE UserDefinedFinalSetup(mesh & #endif END SUBROUTINE UserDefinedFinalSetup ! -!//////////////////////////////////////////////////////////////////////// -! +!//////////////////////////////////////////////////////////////////////// +! subroutine UserDefinedInitialCondition(mesh & #ifdef FLOW , thermodynamics_ & , dimensionless_ & - , refValues_ & + , refValues_ & #endif #ifdef CAHNHILLIARD , multiphase_ & @@ -307,17 +306,17 @@ subroutine UserDefinedInitialCondition(mesh & gamma => thermodynamics_ % gamma ) theta = refvalues_ % AOAtheta*(pi/180.0_RP) phi = refvalues_ % AOAphi*(pi/180.0_RP) - + do eID = 1, mesh % no_of_elements associate( Nx => mesh % elements(eID) % Nxyz(1), & ny => mesh % elemeNts(eID) % nxyz(2), & Nz => mesh % elements(eID) % Nxyz(3) ) - do k = 0, Nz; do j = 0, Ny; do i = 0, Nx + do k = 0, Nz; do j = 0, Ny; do i = 0, Nx qq = 1.0_RP u = qq*cos(theta)*cos(phi) v = qq*sin(theta)*cos(phi) w = qq*sin(phi) - + q(1) = 1.0_RP p = 1.0_RP/(gammaM2) q(2) = q(1)*u @@ -325,7 +324,7 @@ subroutine UserDefinedInitialCondition(mesh & q(4) = q(1)*w q(5) = p/(gamma - 1._RP) + 0.5_RP*q(1)*(u**2 + v**2 + w**2) - mesh % elements(eID) % storage % q(:,i,j,k) = q + mesh % elements(eID) % storage % q(:,i,j,k) = q end do; end do; end do end associate end do @@ -342,8 +341,8 @@ subroutine UserDefinedInitialCondition(mesh & associate( Nx => mesh % elements(eID) % Nxyz(1), & ny => mesh % elemeNts(eID) % nxyz(2), & Nz => mesh % elements(eID) % Nxyz(3) ) - do k = 0, Nz; do j = 0, Ny; do i = 0, Nx - mesh % elements(eID) % storage % q(:,i,j,k) = [1.0_RP, 1.0_RP,0.0_RP,0.0_RP,0.0_RP] + do k = 0, Nz; do j = 0, Ny; do i = 0, Nx + mesh % elements(eID) % storage % q(:,i,j,k) = [1.0_RP, 1.0_RP,0.0_RP,0.0_RP,0.0_RP] end do; end do; end do end associate end do @@ -356,13 +355,13 @@ subroutine UserDefinedInitialCondition(mesh & ! #ifdef CAHNHILLIARD call random_seed() - + do eid = 1, mesh % no_of_elements associate( Nx => mesh % elements(eid) % Nxyz(1), & Ny => mesh % elements(eid) % Nxyz(2), & Nz => mesh % elements(eid) % Nxyz(3) ) associate(e => mesh % elements(eID) % storage) - call random_number(e % c) + call random_number(e % c) e % c = 2.0_RP * (e % c - 0.5_RP) end associate end associate @@ -421,8 +420,8 @@ subroutine UserDefinedNeumann1(x, t, nHat, Q, U_x, U_y, U_z, flux, thermodynamic end subroutine UserDefinedNeumann1 #endif ! -!//////////////////////////////////////////////////////////////////////// -! +!//////////////////////////////////////////////////////////////////////// +! SUBROUTINE UserDefinedPeriodicOperation(mesh, time, dt, Monitors) ! ! ---------------------------------------------------------- @@ -438,11 +437,11 @@ SUBROUTINE UserDefinedPeriodicOperation(mesh, time, dt, Monitors) REAL(KIND=RP) :: time REAL(KIND=RP) :: dt type(Monitor_t), intent(in) :: monitors - + END SUBROUTINE UserDefinedPeriodicOperation ! -!//////////////////////////////////////////////////////////////////////// -! +!//////////////////////////////////////////////////////////////////////// +! #ifdef FLOW subroutine UserDefinedSourceTermNS(x, Q, time, S, thermodynamics_, dimensionless_, refValues_ & #ifdef CAHNHILLIARD @@ -479,18 +478,18 @@ subroutine UserDefinedSourceTermNS(x, Q, time, S, thermodynamics_, dimensionless ! Usage example ! ------------- ! S(:) = x(1) + x(2) + x(3) + time - + end subroutine UserDefinedSourceTermNS #endif ! -!//////////////////////////////////////////////////////////////////////// -! +!//////////////////////////////////////////////////////////////////////// +! SUBROUTINE UserDefinedFinalize(mesh, time, iter, maxResidual & #ifdef FLOW , thermodynamics_ & , dimensionless_ & - , refValues_ & -#endif + , refValues_ & +#endif #ifdef CAHNHILLIARD , multiphase_ & #endif @@ -527,14 +526,15 @@ SUBROUTINE UserDefinedFinalize(mesh, time, iter, maxResidual & END SUBROUTINE UserDefinedFinalize ! -!//////////////////////////////////////////////////////////////////////// -! +!//////////////////////////////////////////////////////////////////////// +! SUBROUTINE UserDefinedTermination ! ! ----------------------------------------------- -! Called at the the end of the main driver after +! Called at the the end of the main driver after ! everything else is done. ! ----------------------------------------------- ! - IMPLICIT NONE + IMPLICIT NONE END SUBROUTINE UserDefinedTermination + \ No newline at end of file diff --git a/Solver/src/libs/sources/ActuatorLine.f90 b/Solver/src/libs/sources/ActuatorLine.f90 index 9ee471922..b6898cf27 100644 --- a/Solver/src/libs/sources/ActuatorLine.f90 +++ b/Solver/src/libs/sources/ActuatorLine.f90 @@ -11,10 +11,10 @@ module ActuatorLine ! ****************************** ! DEFINE TURBINE, BLADE, AIRFOIL ! ****************************** -! +! ! type airfoil_t - integer :: num_aoa + integer :: num_aoa real(KIND=RP), allocatable :: aoa(:) ! in rad real(KIND=RP), allocatable :: cl(:) ! in rad real(KIND=RP), allocatable :: cd(:) ! in rad @@ -58,7 +58,7 @@ module ActuatorLine real(KIND=RP) :: Cp ! turbine power coef. real(KIND=RP) :: Ct ! turbine thrust coef. end type - + type Farm_t integer :: num_turbines type(turbine_t), allocatable :: turbine_t(:) @@ -71,7 +71,7 @@ module ActuatorLine procedure :: ConstructFarm procedure :: DestructFarm procedure :: UpdateFarm - procedure :: ForcesFarm + procedure :: ForcesFarm procedure :: WriteFarmForces procedure :: GaussianInterpolation procedure :: FarmUpdateLocalForces @@ -121,6 +121,7 @@ subroutine ConstructFarm(self, controlVariables) do i = 1, self%num_turbines READ(fid,*) self%turbine_t(i)%hub_cood_x, self%turbine_t(i)%hub_cood_y, self%turbine_t(i)%hub_cood_z ENDDO + ! print *, "hub: ", self%turbine_t(1)%hub_cood_x, " ", self%turbine_t(1)%hub_cood_y, " ", self%turbine_t(1)%hub_cood_z READ(fid,'(A132)') char1 @@ -133,7 +134,8 @@ subroutine ConstructFarm(self, controlVariables) do i = 1, self%num_turbines READ(fid,*) self%turbine_t(i)%normal_x, self%turbine_t(i)%normal_y, self%turbine_t(i)%normal_z ENDDO - + + ! write(*,*) normal_x(:), normal_y(:), normal_z(:) READ(fid,'(A132)') char1 do i = 1, self%num_turbines @@ -145,7 +147,7 @@ subroutine ConstructFarm(self, controlVariables) do i = 1, self%num_turbines READ(fid,*) self%turbine_t(i)%blade_pitch ENDDO - + READ(fid,'(A132)') char1 READ(fid,'(A132)') char1 @@ -169,7 +171,7 @@ subroutine ConstructFarm(self, controlVariables) self%turbine_t(i)%blade_t(j)%local_lift(num_blade_sections), self%turbine_t(i)%blade_t(j)%local_drag(num_blade_sections), & self%turbine_t(i)%blade_t(j)%point_xyz_loc(num_blade_sections,3),self%turbine_t(i)%blade_t(j)%local_torque(num_blade_sections), & self%turbine_t(i)%blade_t(j)%local_thrust(num_blade_sections),self%turbine_t(i)%blade_t(j)%local_root_bending(num_blade_sections), & - self%turbine_t(i)%blade_t(j)%local_rotor_force(num_blade_sections),self%turbine_t(i)%blade_t(j)%local_gaussian_sum(num_blade_sections)) + self%turbine_t(i)%blade_t(j)%local_rotor_force(num_blade_sections),self%turbine_t(i)%blade_t(j)%local_gaussian_sum(num_blade_sections)) ! max 5 airfoils file names per section do k=1, num_blade_sections @@ -184,19 +186,29 @@ subroutine ConstructFarm(self, controlVariables) do i = 1, self%turbine_t(1)%num_blade_sections READ(fid,*) self%turbine_t(1)%blade_t(1)%r_R(i), self%turbine_t(1)%blade_t(1)%chord(i), & self%turbine_t(1)%blade_t(1)%twist(i), self%turbine_t(1)%blade_t(1)%num_airfoils(i) - - do j = 1, self%turbine_t(1)%blade_t(1)%num_airfoils(i) - READ(fid,*) self%turbine_t(1)%blade_t(1)%airfoil_files(i,j) + + do j = 1, self%turbine_t(1)%blade_t(1)%num_airfoils(i) + READ(fid,*) self%turbine_t(1)%blade_t(1)%airfoil_files(i,j) enddo ENDDO + + ! all turbines have the same blades + !do i=1, self%num_turbines + ! do j=1, self%turbine_t(i)%num_blades + ! self%turbine_t(i)%blade_t(j)=self%turbine_t(1)%blade_t(1) + ! ENDDO + ! enddo + ! write(*,*) "All turbines have the same blades" + ! write(*,*) self%turbine_t(1)%blade_t(1)%airfoil_files(2,2) + ! read numerical parameters READ(fid,'(A132)') char1 READ(fid,'(A132)') char1 READ(fid,'(A132)') char1 READ(fid,'(A132)') char1 - READ(fid,*) self%turbine_t(1)%blade_t(1)%gauss_epsil + READ(fid,*) self%turbine_t(1)%blade_t(1)%gauss_epsil READ(fid,'(A132)') char1 READ(fid,*) self%turbine_t(1)%blade_t(1)%tip_c1,self%turbine_t(1)%blade_t(1)%tip_c2 @@ -221,17 +233,19 @@ subroutine ConstructFarm(self, controlVariables) print *,'-------------------------' print *,achar(27)//'[34m READING FARM AIRFOIL DATA (Cl-Cd)' print*, 'reading: ', trim(arg) - write(*,*) 'The number of AoA in the file is: ', self%turbine_t(1)%blade_t(1)%airfoil_t(i)%num_aoa,' '//achar(27)//'[0m ' - + write(*,*) 'The number of AoA in the file is: ', self%turbine_t(1)%blade_t(1)%airfoil_t(i)%num_aoa,' '//achar(27)//'[0m ' + READ(fid,'(A132)') char1 associate (num_aoa => self%turbine_t(1)%blade_t(1)%airfoil_t(i)%num_aoa) do ii=1, self%num_turbines do j=1, self%turbine_t(ii)%num_blades - allocate( self%turbine_t(ii)%blade_t(j)%airfoil_t(i)%aoa(num_aoa), & + !do k=1, self%turbine_t(1)%blade_t(1)%num_airfoils(j) ! this needs changing if many airfoils per radial section + allocate( self%turbine_t(ii)%blade_t(j)%airfoil_t(i)%aoa(num_aoa), & self%turbine_t(ii)%blade_t(j)%airfoil_t(i)%cl(num_aoa), & self%turbine_t(ii)%blade_t(j)%airfoil_t(i)%cd(num_aoa)) + !enddo ENDDO enddo @@ -242,6 +256,15 @@ subroutine ConstructFarm(self, controlVariables) self%turbine_t(1)%blade_t(1)%airfoil_t(i)%cd(ii) enddo + !all airfoils of all blades of all turbines are the same + !do ii=1, self%num_turbines + ! do j=1, self%turbine_t(i)%num_blades + ! do k=1, self%turbine_t(1)%blade_t(1)%num_airfoils(j) + ! self%turbine_t(ii)%blade_t(j)%airfoil_t(k)=self%turbine_t(1)%blade_t(1)%airfoil_t(1) + ! enddo + ! ENDDO + !enddo + close(fid) enddo ! number of blade sections @@ -253,7 +276,7 @@ subroutine ConstructFarm(self, controlVariables) !all airfoils of all blades of all turbines are the same do ii=1, self%num_turbines - do j=1, self%turbine_t(ii)%num_blades + do j=1, self%turbine_t(ii)%num_blades self%turbine_t(ii)%blade_t(j)=self%turbine_t(1)%blade_t(1) enddo enddo @@ -276,12 +299,12 @@ subroutine ConstructFarm(self, controlVariables) ! Create output files ! ------------------- write(arg , '(A,A)') trim(self%file_name) , "_Actuator_Line_Forces.dat" - open ( newunit = fID , file = trim(arg) , status = "unknown" , action = "write" ) + open ( newunit = fID , file = trim(arg) , status = "unknown" , action = "write" ) write(fid,*) 'time, thrust_1, blade_torque_1, blade_root_bending_1,thrust_2, blade_torque_12 blade_root_bending_2,thrust_3, blade_torque_3, blade_root_bending_3' close(fid) ! write(arg , '(A,A)') trim(self%file_name) , "_Actuator_Line_CP_CT.dat" - open ( newunit = fID , file = trim(arg) , status = "unknown" , action = "write" ) + open ( newunit = fID , file = trim(arg) , status = "unknown" , action = "write" ) write(fid,*) 'time, Cp (power coef.), Ct (thust coef.)' close(fid) ! @@ -344,12 +367,12 @@ subroutine UpdateFarm(self,time, mesh) self%turbine_t(1)%blade_t(jj)%local_torque(:) = 0.0_RP self%turbine_t(1)%blade_t(jj)%local_root_bending(:) = 0.0_RP self%turbine_t(1)%blade_t(jj)%local_gaussian_sum(:)= 0.0_RP - + do ii = 1, self%turbine_t(1)%num_blade_sections ! y,z coordinate of every acutator line point self%turbine_t(1)%blade_t(jj)%point_xyz_loc(ii,2) = self%turbine_t(1)%hub_cood_y + self%turbine_t(1)%blade_t(jj)%r_R(ii) * cos(theta+self%turbine_t(1)%blade_t(jj)%azimuth_angle) self%turbine_t(1)%blade_t(jj)%point_xyz_loc(ii,3) = self%turbine_t(1)%hub_cood_z + self%turbine_t(1)%blade_t(jj)%r_R(ii) * sin(theta+self%turbine_t(1)%blade_t(jj)%azimuth_angle) - + end do enddo !$omp end do @@ -387,6 +410,8 @@ subroutine UpdateFarm(self,time, mesh) end if ! averaged state values of the cell Q = element_averageQ(mesh,eID) + ! or use point in the middle of the element + !Q = e % Storage % Q(:,e%Nxyz(1)/2,e%Nxyz(2)/2,e%Nxyz(3)/2) call FarmUpdateLocalForces(self, ii, jj, Q, theta, interp) end do enddo @@ -462,16 +487,17 @@ subroutine ForcesFarm(self, x, Q, NS, time) if (self%calculate_with_projection) then - + do jj = 1, self%turbine_t(1)%num_blades do ii = 1, self%turbine_t(1)%num_blade_sections interp = GaussianInterpolation(self, ii, jj, x) + ! call FarmUpdateLocalForces(self, ii, jj, e % storage % Q(:,i,j,k), theta, L, interp) call FarmUpdateLocalForces(self, ii, jj, Q, theta, interp) ! minus account action-reaction effect, is the force on the fliud - actuator_source(1) = actuator_source(1) - self%turbine_t(1)%blade_t(jj)%local_thrust(ii) - actuator_source(2) = actuator_source(2) - self%turbine_t(1)%blade_t(jj)%local_rotor_force(ii)*cos(self%turbine_t(1)%rot_speed*t + self%turbine_t(1)%blade_t(jj)%azimuth_angle) - actuator_source(3) = actuator_source(3) - self%turbine_t(1)%blade_t(jj)%local_rotor_force(ii)*sin(self%turbine_t(1)%rot_speed*t + self%turbine_t(1)%blade_t(jj)%azimuth_angle) + actuator_source(1) = actuator_source(1) - self%turbine_t(1)%blade_t(jj)%local_thrust(ii) + actuator_source(2) = actuator_source(2) - self%turbine_t(1)%blade_t(jj)%local_rotor_force(ii)*cos(self%turbine_t(1)%rot_speed*t + self%turbine_t(1)%blade_t(jj)%azimuth_angle) + actuator_source(3) = actuator_source(3) - self%turbine_t(1)%blade_t(jj)%local_rotor_force(ii)*sin(self%turbine_t(1)%rot_speed*t + self%turbine_t(1)%blade_t(jj)%azimuth_angle) self%turbine_t(1)%blade_t(jj)%local_thrust_temp(ii)=self%turbine_t(1)%blade_t(jj)%local_thrust_temp(ii)+self%turbine_t(1)%blade_t(jj)%local_thrust(ii) @@ -480,14 +506,15 @@ subroutine ForcesFarm(self, x, Q, NS, time) self%turbine_t(1)%blade_t(jj)%local_root_bending(ii) = self%turbine_t(1)%blade_t(jj)%local_root_bending(ii)+(sqrt(POW2(self%turbine_t(1)%blade_t(jj)%local_thrust(ii)) + POW2(self%turbine_t(1)%blade_t(jj)%local_rotor_force(ii))) * self%turbine_t(1)%blade_t(jj)%r_R(ii)) self%turbine_t(1)%blade_t(jj)%local_gaussian_sum(ii)=self%turbine_t(1)%blade_t(jj)%local_gaussian_sum(ii)+interp - + local_gaussian=local_gaussian+interp enddo enddo - + actuator_source(:)=actuator_source(:)/local_gaussian - + + !NS = 0.0_RP NS(IRHOU:IRHOW) = NS(IRHOU:IRHOW) + actuator_source(:) / Non_dimensional @@ -497,11 +524,11 @@ subroutine ForcesFarm(self, x, Q, NS, time) ! LAST_SECTION=self%turbine_t(1)%num_blade_sections do jj = 1, self%turbine_t(1)%num_blades - + do ii = 1, self%turbine_t(1)%num_blade_sections interp = GaussianInterpolation(self, ii, jj, x) - + ! minus account action-reaction effect, is the force on the fliud actuator_source(1) = actuator_source(1) - self%turbine_t(1)%blade_t(jj)%local_thrust(ii) * interp actuator_source(2) = actuator_source(2) - self%turbine_t(1)%blade_t(jj)%local_rotor_force(ii)*cos(self%turbine_t(1)%rot_speed*t + self%turbine_t(1)%blade_t(jj)%azimuth_angle) * interp @@ -511,13 +538,14 @@ subroutine ForcesFarm(self, x, Q, NS, time) enddo enddo - + !actuator_source(:)=actuator_source(:)/local_gaussian + !NS = 0.0_RP NS(IRHOU:IRHOW) = NS(IRHOU:IRHOW) + actuator_source(:) / Non_dimensional endif - + endif end subroutine ForcesFarm @@ -531,6 +559,7 @@ subroutine WriteFarmForces(self,time) class(Farm_t), intent(inout) :: self real(kind=RP),intent(in) :: time integer :: fid, io + ! CHARACTER(LEN=40) :: arg CHARACTER(LEN=LINE_LENGTH) :: arg real(kind=RP) :: t integer :: ii, jj @@ -539,27 +568,27 @@ subroutine WriteFarmForces(self,time) t=time/refValues%V - + if (self%calculate_with_projection) then ! this is necessary for Gaussian weighted sum - + self%turbine_t(1)%blade_thrust(:) = 0.0_RP self%turbine_t(1)%blade_torque(:) = 0.0_RP self%turbine_t(1)%blade_root_bending(:) = 0.0_RP !$omp do schedule(runtime)private(ii,jj) do jj = 1, self%turbine_t(1)%num_blades - + do ii = 1, self%turbine_t(1)%num_blade_sections - + self%turbine_t(1)%blade_thrust(jj)=self%turbine_t(1)%blade_thrust(jj)+self%turbine_t(1)%blade_t(jj)%local_thrust_temp(ii)/self%turbine_t(1)%blade_t(jj)%local_gaussian_sum(ii) self%turbine_t(1)%blade_torque(jj)=self%turbine_t(1)%blade_torque(jj)+self%turbine_t(1)%blade_t(jj)%local_torque(ii)/self%turbine_t(1)%blade_t(jj)%local_gaussian_sum(ii) - self%turbine_t(1)%blade_root_bending(jj)=self%turbine_t(1)%blade_root_bending(jj)+self%turbine_t(1)%blade_t(jj)%local_root_bending(ii)/self%turbine_t(1)%blade_t(jj)%local_gaussian_sum(ii) - + self%turbine_t(1)%blade_root_bending(jj)=self%turbine_t(1)%blade_root_bending(jj)+self%turbine_t(1)%blade_t(jj)%local_root_bending(ii)/self%turbine_t(1)%blade_t(jj)%local_gaussian_sum(ii) + enddo enddo !$omp end do - + self%turbine_t(1)%Cp = 2.0_RP * (self%turbine_t(1)%blade_torque(1)+self%turbine_t(1)%blade_torque(2)+self%turbine_t(1)%blade_torque(3)) * self%turbine_t(1)%rot_speed / (refValues%rho * POW3(refValues%V) * pi * POW2(self%turbine_t(1)%radius)) self%turbine_t(1)%Ct = 2.0_RP * (self%turbine_t(1)%blade_thrust(1)+self%turbine_t(1)%blade_thrust(2)+self%turbine_t(1)%blade_thrust(3)) / (refValues%rho * POW2(refValues%V) * pi * POW2(self%turbine_t(1)%radius)) end if @@ -621,10 +650,10 @@ Subroutine FarmUpdateLocalForces(self, ii, jj, Q, theta, interp) self%turbine_t(1)%blade_t(jj)%local_velocity(ii) = sqrt( POW2(self%turbine_t(1)%rot_speed*self%turbine_t(1)%blade_t(jj)%r_R(ii) - wind_speed_rot) + & POW2(wind_speed_axial) ) - self%turbine_t(1)%blade_t(jj)%local_angle(ii) = atan( wind_speed_axial / (self%turbine_t(1)%rot_speed*self%turbine_t(1)%blade_t(jj)%r_R(ii) - wind_speed_rot) ) + self%turbine_t(1)%blade_t(jj)%local_angle(ii) = atan( wind_speed_axial / (self%turbine_t(1)%rot_speed*self%turbine_t(1)%blade_t(jj)%r_R(ii) - wind_speed_rot) ) ! alpha = phi - gamma, gamma = blade pitch + airfoil local twist - aoa = self%turbine_t(1)%blade_t(jj)%local_angle(ii) - (self%turbine_t(1)%blade_t(jj)%twist(ii) + self%turbine_t(1)%blade_pitch) + aoa = self%turbine_t(1)%blade_t(jj)%local_angle(ii) - (self%turbine_t(1)%blade_t(jj)%twist(ii) + self%turbine_t(1)%blade_pitch) call Get_Cl_Cl_from_airfoil_data(self%turbine_t(1)%blade_t(jj)%airfoil_t(ii), aoa, Cl, Cd) ! ! --------------- @@ -639,7 +668,11 @@ Subroutine FarmUpdateLocalForces(self, ii, jj, Q, theta, interp) ! only axial wind speed ! angle_temp = atan(wind_speed_axial/(self%turbine_t(1)%rot_speed*self%turbine_t(1)%radius)) - ! use the local radius and angle + ! 1 possibility: use the global radius and angle (i.e. the tip values) + ! tip_correct = 2.0_RP/PI*(acos( exp(-g1_func*self%turbine_t(1)%num_blades*(self%turbine_t(1)%radius-self%turbine_t(1)%blade_t(jj)%r_R(ii)) / & + ! (2.0_RP*self%turbine_t(1)%radius*sin(angle_temp))) )) + + ! 2 possibility: use the local radius and angle tip_correct = 2.0_RP/PI*(acos( exp(-g1_func*self%turbine_t(1)%num_blades*(self%turbine_t(1)%radius-self%turbine_t(1)%blade_t(jj)%r_R(ii)) / (2.0_RP*self%turbine_t(1)%blade_t(jj)%r_R(ii)*sin(self%turbine_t(1)%blade_t(jj)%local_angle(ii)))) )) ! ! -------------------------------- @@ -660,8 +693,8 @@ Subroutine FarmUpdateLocalForces(self, ii, jj, Q, theta, interp) self%turbine_t(1)%blade_t(jj)%local_rotor_force(ii) = lift_force * sin(self%turbine_t(1)%blade_t(jj)%local_angle(ii)) & - drag_force * cos(self%turbine_t(1)%blade_t(jj)%local_angle(ii)) - - self%turbine_t(1)%blade_t(jj)%local_thrust(ii) = lift_force * cos(self%turbine_t(1)%blade_t(jj)%local_angle(ii)) & + + self%turbine_t(1)%blade_t(jj)%local_thrust(ii) = lift_force * cos(self%turbine_t(1)%blade_t(jj)%local_angle(ii)) & + drag_force * sin(self%turbine_t(1)%blade_t(jj)%local_angle(ii)) ! End Subroutine FarmUpdateLocalForces @@ -681,10 +714,10 @@ Function GaussianInterpolation(self, ii, jj, x, Cd) select case (self%epsilon_type) case (0) -! EPSILON - option 1 (from file) +! EPSILON - opcion 1 (se lee del fichero) epsil = self%turbine_t(1)%blade_t(1)%gauss_epsil case (1) -! EPSILON - option 2 +! EPSILON - opcion 2 if (present(Cd)) then epsil = max(self%turbine_t(1)%blade_t(jj)%chord(ii)/4.0_RP,self%turbine_t(1)%blade_t(jj)%chord(ii)*Cd/2.0_RP) else @@ -703,12 +736,12 @@ End Function GaussianInterpolation ! subroutine Get_Cl_Cl_from_airfoil_data(airfoil, aoa, Cl_out, Cd_out) implicit none - + type (airfoil_t), intent(in) :: airfoil real(KIND=RP), intent(in) :: aoa real(KIND=RP), intent(inout) :: Cl_out, Cd_out integer :: i - + do i=1, airfoil%num_aoa-1 if (airfoil%aoa(i+1)>=aoa .and. airfoil%aoa(i)<=aoa ) then Cl_out=InterpolateAirfoilData(airfoil%aoa(i),airfoil%aoa(i+1),airfoil%cl(i),airfoil%cl(i+1),aoa) @@ -724,11 +757,11 @@ subroutine Get_Cl_Cl_from_airfoil_data(airfoil, aoa, Cl_out, Cd_out) ! linear interpolation given two points; returns y for new_x following line coefs (a,b) with y=ax+b function InterpolateAirfoilData(x1,x2,y1,y2,new_x) implicit none - + real(KIND=RP), intent(in) :: x1, x2, y1, y2, new_x real(KIND=RP) :: a, b, InterpolateAirfoilData - if(abs(x1-x2)<1.0e-6_RP) then + if(abs(x1-x2)<1.0e-6_RP) then a=100.0_RP else a=(y1- y2)/(x1- x2) @@ -743,13 +776,13 @@ function element_averageQ(mesh,eID) implicit none type(HexMesh), intent(in) :: mesh - integer, intent(in) :: eID + integer, intent(in) :: eID integer :: k, j, i integer :: total_points real(kind=RP), dimension(NCONS) :: element_averageQ, Qsum - + Qsum(:) = 0.0_RP total_points = 0 do k = 0, mesh%elements(eID) % Nxyz(3) ; do j = 0, mesh%elements(eID) % Nxyz(2) ; do i = 0, mesh%elements(eID) % Nxyz(1) @@ -762,4 +795,4 @@ function element_averageQ(mesh,eID) end function element_averageQ #endif -end module +end module diff --git a/Solver/src/libs/sources/Makefile b/Solver/src/libs/sources/Makefile index 97fd27244..791171226 100644 --- a/Solver/src/libs/sources/Makefile +++ b/Solver/src/libs/sources/Makefile @@ -157,4 +157,4 @@ clean: FORCE ############################################# # Dummy procedure to force a rule # ############################################# -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/libs/sources/TripForceClass.f90 b/Solver/src/libs/sources/TripForceClass.f90 index a85736565..e009ab468 100644 --- a/Solver/src/libs/sources/TripForceClass.f90 +++ b/Solver/src/libs/sources/TripForceClass.f90 @@ -1,12 +1,9 @@ -! -!////////////////////////////////////////////////////// -! -! This class represents the numerical force use to induce turbulence, or tripping -! following JFM by Schlatter & Orlu 2012: -! Turbulent boundary layers at moderate Reynolds numbers: infow length and tripping effects -! !////////////////////////////////////////////////////// ! +!This class represents the numerical force use to induce turbulence, or tripping +!following JFM by Schlatter & Orlu 2012: +!Turbulent boundary layers at moderate Reynolds numbers: infow length and tripping effects + #include "Includes.h" Module TripForceClass use SMConstants @@ -23,7 +20,7 @@ Module TripForceClass private public randomTrip - !definition of gtripClass + !definition of gtripClass type gtripClass real(kind=RP), dimension(:), allocatable :: g, z real(kind=RP), dimension(:,:), allocatable :: h ! the first two dimensions are the old and new values of the random signal respectively, the 3 one is the steady state @@ -41,7 +38,7 @@ Module TripForceClass end type gtripClass - !definition of the complete tripClass + !definition of the complete tripClass type ftripClass integer :: numberOfTrips real(kind=RP), dimension(:,:), allocatable :: centerPositions @@ -93,31 +90,31 @@ Subroutine ftripConstruct(self, mesh, controlVariables) if (controlVariables % containsKey("trip center")) then x1 = controlVariables % doublePrecisionValueForKey("trip center") - else + else stop "Trip center must be defined" end if if (controlVariables % containsKey("trip attenuation")) then gaussAten_str = trim(controlVariables % stringValueForKey("trip attenuation", LINE_LENGTH)) self % spatialGaussianAtenuation = getRealArrayFromString(gaussAten_str) - else + else stop "Trip attenuation must be defined" end if - + if (controlVariables % containsKey("trip zone")) then trip_zones_str = trim(controlVariables % stringValueForKey("trip zone", LINE_LENGTH)) call toLower(trip_zones_str) call getCharArrayFromString(trip_zones_str, LINE_LENGTH, trip_zones) - else + else stop "Trip zone must be defined" end if - + N = 1 if (controlVariables % containsKey("trip center 2")) then x2 = controlVariables % doublePrecisionValueForKey("trip center 2") N = 2 end if - + if (size(trip_zones) .ne. N) stop "The length of the trip zones is not the same as the trip center length" allocate(self % centerPositions(N,2), self % normals(N,NDIM), trip_zones_index(N)) @@ -146,7 +143,7 @@ Subroutine ftripConstruct(self, mesh, controlVariables) call mpi_Bcast(temp_center, 2, MPI_DOUBLE, partitionRank, MPI_COMM_WORLD, ierr) call mpi_Bcast(temp_normals, NDIM, MPI_DOUBLE, partitionRank, MPI_COMM_WORLD, ierr) #endif - end if + end if self % centerPositions(1,:) = temp_center self % normals(1,:) = temp_normals @@ -164,7 +161,7 @@ Subroutine ftripConstruct(self, mesh, controlVariables) call mpi_Bcast(temp_center, 2, MPI_DOUBLE, partitionRank, MPI_COMM_WORLD, ierr) call mpi_Bcast(temp_normals, NDIM, MPI_DOUBLE, partitionRank, MPI_COMM_WORLD, ierr) #endif - end if + end if self % centerPositions(2,:) = temp_center self % normals(2,:) = temp_normals end if @@ -176,6 +173,7 @@ Subroutine ftripConstruct(self, mesh, controlVariables) if ( MPI_Process % isRoot ) then write(STD_OUT,'(/)') call Subsection_Header("Trip Source Term") + ! write(STD_OUT,'(30X,A,A28,A)') "->", "Trip Type: ", "Random" write(STD_OUT,'(30X,A,A28,I0)') "->", "Number of trips: ", N if (N .eq. 2) write(STD_OUT,'(30X,A,A28,A,ES10.3,A,ES10.3,A)') "->", "Second Trip center: ", "[",self % centerPositions(2,1),",",self % centerPositions(2,2),"]" write(STD_OUT,'(30X,A,A28,A,ES10.3,A,ES10.3,A)') "->", "First Trip center: ", "[",self % centerPositions(1,1),",",self % centerPositions(1,2),"]" @@ -324,6 +322,7 @@ Subroutine gtripConstruct(self, mesh, controlVariables) end if !search for the maximum and minimum values of z in the whole mesh +!!$omp parallel do private(eID,k) reduction(MIN:zMin) reduction(MAX:zMax) schedule(runtime) zMin = mesh % nodes(mesh % elements(1) % nodeIDs(1)) % x(3) zMax = mesh % nodes(mesh % elements(1) % nodeIDs(1)) % x(3) do eID = 1, mesh % no_of_elements @@ -336,6 +335,7 @@ Subroutine gtripConstruct(self, mesh, controlVariables) end do end associate end do +!!$omp end parallel do if ( (MPI_Process % doMPIAction) ) then #ifdef _HAS_MPI_ call mpi_allreduce(zMin, allzMin, 1, MPI_DOUBLE, MPI_MIN, MPI_COMM_WORLD, ierr) @@ -347,6 +347,8 @@ Subroutine gtripConstruct(self, mesh, controlVariables) end if allocate(self % g(0:N-1), self % h(0:N-1,3), self % z(0:N-1)) + ! todo: check why this is used + ! self % Ncutz = int((xz(2) - xz(1))/ self % zs) self % zs = (allzMax - allzMin)/ real(self % Ncutz,RP) ! create evenly spaced z array @@ -373,18 +375,18 @@ Subroutine gtripConstruct(self, mesh, controlVariables) stop 'MKL not linked correctly' #endif - End Subroutine gtripConstruct + End Subroutine gtripConstruct ! Subroutine gtripDestruct(self) class(gtripClass), intent(inout) :: self - + if (ALLOCATED(self%g)) DEALLOCATE (self%g) if (ALLOCATED(self%h)) DEALLOCATE (self%h) if (ALLOCATED(self%z)) DEALLOCATE (self%z) self % tsubstep = -1 - End Subroutine gtripDestruct + End Subroutine gtripDestruct ! Subroutine randSignal(self, signal) ! creates a random signal (array) with the first Ncutz modes random and .le. 1.0 and 0 for modes greater than Ncutz. @@ -426,7 +428,7 @@ Subroutine randSignal(self, signal) fourierArg = exp(ImgI*2.0_RP*PI*ranNum(i+1)) fourierCoefficients(2*i) = real(fourierArg)*sqrt(2.0_RP) fourierCoefficients(2*i+1) = 0 - end do + end do else do i = 1, nh fourierArg = exp(ImgI*2.0_RP*PI*ranNum(i+1)) @@ -501,12 +503,16 @@ Subroutine forfft(coef,x,N,coeffCCS) do i= 0,nh coef(i) = cmplx(y(2*i), y(2*i+1)) end do + ! if (mod(N,2).ne.0) nh = nh +1 + ! do i= 1,nh-1 + ! coef(nh+i) = conjg(coef(nh-i)) + ! end do coeffCCS = y #else stop 'MKL not linked correctly' #endif - End Subroutine forfft + End Subroutine forfft ! Subroutine backfft(x,N,coeffCCS) @@ -536,7 +542,7 @@ Subroutine backfft(x,N,coeffCCS) stop 'MKL not linked correctly' #endif - End Subroutine backfft + End Subroutine backfft ! Function getgTripForceAtZ(self, specificZ) result(gz) ! returns the value of the g term at a given z position, using linear interpolation @@ -554,11 +560,11 @@ Function getgTripForceAtZ(self, specificZ) result(gz) !starts in 1 in case there is a value .eq. to the 0 position do i = 1, self % N - 1 if (specificZ .ge. self % z(i)) exit - end do + end do gz = self % g(i-1) + ( self % g(i) - self % g(i-1) ) / ( self % z(i) - self % z(i-1) ) * (specificZ - self%z(i-1)) - End Function getgTripForceAtZ + End Function getgTripForceAtZ ! !///////////////////////////////////////////////////////////////////////// ! HELPER PROCEDURES -------------------------- @@ -592,7 +598,7 @@ Subroutine getFaceTripIndex(zone, mesh, x, x_dim, faceID, faceIndex, partitionRa onlyYNegative = yNegative else onlyYNegative = .false. - end if + end if yIndex = x_dim + 1 if (yIndex .gt. NDIM) yIndex = yIndex - NDIM @@ -610,7 +616,7 @@ Subroutine getFaceTripIndex(zone, mesh, x, x_dim, faceID, faceIndex, partitionRa faceID = fID exit end if - end if + end if end associate end do @@ -651,4 +657,4 @@ Subroutine getFaceTripIndex(zone, mesh, x, x_dim, faceID, faceIndex, partitionRa End Subroutine getFaceTripIndex ! -End Module TripForceClass +End Module TripForceClass \ No newline at end of file diff --git a/Solver/src/libs/sources/mkl_dfti.f90 b/Solver/src/libs/sources/mkl_dfti.f90 index 2486b916c..66a3a4624 100644 --- a/Solver/src/libs/sources/mkl_dfti.f90 +++ b/Solver/src/libs/sources/mkl_dfti.f90 @@ -4,7 +4,6 @@ ! from Intel OneAPI v. 2022.0.2 ! !////////////////////////////////////////////////////// -! !=============================================================================== ! Copyright 2002-2021 Intel Corporation. ! @@ -774,4 +773,4 @@ END FUNCTION dfti_error_message_external END INTERFACE -END MODULE MKL_DFTI +END MODULE MKL_DFTI \ No newline at end of file diff --git a/Solver/src/libs/spectral/InterpolationAndDerivatives.f90 b/Solver/src/libs/spectral/InterpolationAndDerivatives.f90 index f11838683..ed55883fa 100644 --- a/Solver/src/libs/spectral/InterpolationAndDerivatives.f90 +++ b/Solver/src/libs/spectral/InterpolationAndDerivatives.f90 @@ -1,8 +1,17 @@ ! +!//////////////////////////////////////////////////////////////////////// +! +! @File: InterpolationAndDerivatives.f90 +! @Author: David Kopriva +! @Created: 2009-12-15 15:36:24 -0500 +! @Last revision date: Mon Sep 6 22:45:02 2021 +! @Last revision author: Wojciech Laskowski (wj.laskowski@upm.es) +! @Last revision commit: 3334a040b8cdf3201850a2deec9950c84f2dc21f +! !////////////////////////////////////////////////////// ! ! Contains: -! +! ! SUBROUTINE InterpolatingPolynomialVector( x, N, nodes, weights, p ) ! REAL(KIND=RP) FUNCTION EvaluateLagrangePolyDerivative( j, x, N, nodes) ! @@ -11,7 +20,7 @@ ! ALGORITHM 32: SUBROUTINE PolynomialInterpolationMatrix( N, M, oldNodes, weights, newNodes, T) ! ALGORITHM 33: SUBROUTINE InterpolateToNewPoints( N, M, T, f, fInterp ) ! ALGORITHM 34: REAL(KIND=RP) FUNCTION LagrangeInterpolatingPolynomial( j, x, N, nodes ) -! ALGORITHM 35: +! ALGORITHM 35: ! ALGORITHM 36: REAL(KIND=RP) FUNCTION LagrangeInterpolantDerivative( x, N, nodes, values, weights) ! ALGORITHM 37: SUBROUTINE PolynomialDerivativeMatrix( N, nodes, D ) ! ALGORITHM 38: SUBROUTINE mthPolynomialDerivativeMatrix( m, N, nodes, D ) @@ -22,7 +31,7 @@ ! ALGORITHM 106: TransposeMatrixMultiply ! as SUBROUTINE MatrixMultiplyDeriv( f, fDeriv, D, N, transp ) ! -! +! !//////////////////////////////////////////////////////////////////////// ! ! @@ -32,12 +41,12 @@ MODULE PolynomialInterpAndDerivsModule ! USE SMConstants IMPLICIT NONE - - private - + + private + public MXV_DIRECT, MXV_TRANSPOSE public Interpolator_t - + public EvaluateLagrangePolyDerivative public Interpolate3D, Create3DInterpolationMatrix public Create3DRestrictionMatrix @@ -48,7 +57,7 @@ MODULE PolynomialInterpAndDerivsModule public ComputeVandermonde, JacobiPolynomial, ComputeModalForm INTEGER, PARAMETER :: MXV_DIRECT = 1, MXV_TRANSPOSE = 2 - + ! Interpolator type that is used in multigrid and in the plotter TYPE Interpolator_t LOGICAL :: Created = .FALSE. @@ -78,15 +87,15 @@ REAL(KIND=RP) FUNCTION LagrangeInterpolatingPolynomial( j, x, N, nodes ) RESULT( ! --------------- ! INTEGER :: k - + IF ( j == 0 ) THEN p = (x - nodes(1))/(nodes(j) - nodes(1)) - DO k = 2, N + DO k = 2, N p = p*(x - nodes(k))/(nodes(j) - nodes(k)) END DO ELSE p = (x - nodes(0))/(nodes(j) - nodes(0)) - DO k = 1, j-1 + DO k = 1, j-1 p = p*(x - nodes(k))/(nodes(j) - nodes(k)) END DO DO k = j+1, N @@ -100,7 +109,7 @@ END FUNCTION LagrangeInterpolatingPolynomial SUBROUTINE InterpolatingPolynomialVector( x, N, nodes, weights, p ) ! !--------------------------------------------------------------------- -! Compute L_j(x), j = 0, ..., N of degree N whose zeros are at the nodes +! Compute L_j(x), j = 0, ..., N of degree N whose zeros are at the nodes ! using barycentric form. !--------------------------------------------------------------------- ! @@ -124,7 +133,7 @@ SUBROUTINE InterpolatingPolynomialVector( x, N, nodes, weights, p ) ! ------------------------------------- ! xMatchesNode = .false. - DO j = 0, N + DO j = 0, N p(j) = 0.0_RP IF( AlmostEqual( x, nodes(j) ) ) THEN p(j) = 1.0_RP @@ -138,21 +147,23 @@ SUBROUTINE InterpolatingPolynomialVector( x, N, nodes, weights, p ) ! ------------------------------ ! d = 0.0_RP - DO j = 0, N + DO j = 0, N t = weights(j)/( x - nodes(j) ) p(j) = t d = d + t END DO - DO j = 0, N + DO j = 0, N p(j) = p(j)/d END DO - + END SUBROUTINE InterpolatingPolynomialVector ! ! ///////////////////////////////////////////////////////////////////// ! ! --------------------------------------------------------- ! Algorithm to obtain the polynomial derivative vector in x +! -> TODO: See if there's a more efficient way of computing +! this with the barycentric formula. ! --------------------------------------------------------- subroutine PolyDerivativeVector( x, N, nodes, p ) implicit none @@ -164,7 +175,7 @@ subroutine PolyDerivativeVector( x, N, nodes, p ) !---------------------------------------------- integer :: j !---------------------------------------------- - + do j = 0, N p(j) = EvaluateLagrangePolyDerivative( j, x, N, nodes) end do @@ -194,20 +205,20 @@ REAL(KIND=RP) FUNCTION EvaluateLagrangePolyDerivative( j, x, N, nodes) ! INTEGER :: l, m REAL(KIND=RP) :: hp, poly -! +! hp = 0.0_RP - DO l = 0,N + DO l = 0,N IF(l == j) CYCLE poly = 1.0_RP - DO m = 0,N + DO m = 0,N IF (m == l) CYCLE - IF (m == j) CYCLE + IF (m == j) CYCLE poly = poly*(x - nodes(m))/(nodes(j) - nodes(m)) END DO - hp = hp + poly/(nodes(j) - nodes(l)) + hp = hp + poly/(nodes(j) - nodes(l)) END DO EvaluateLagrangePolyDerivative = hp -! +! END FUNCTION EvaluateLagrangePolyDerivative ! !//////////////////////////////////////////////////////////////////////// @@ -231,7 +242,7 @@ SUBROUTINE BarycentricWeights( N, x, w ) ! --------------- ! INTEGER :: j, k -! +! w = 1.0_RP DO j = 1, N DO k = 0, j-1 @@ -268,14 +279,14 @@ REAL(KIND=RP) FUNCTION LagrangeInterpolation( x, N, nodes, values, weights) ! INTEGER :: j REAL(KIND=RP) :: t, numerator, denominator - + numerator = 0.0_RP denominator = 0.0_RP DO j = 0, N IF( AlmostEqual( x, nodes(j) ) ) THEN LagrangeInterpolation = values(j) - RETURN - END IF + RETURN + END IF t = weights(j)/( x - nodes(j) ) numerator = numerator + t*values(j) denominator = denominator + t @@ -299,7 +310,7 @@ FUNCTION LagrangeInterpolationNoBar( x, N, nodes, j) RESULT(l) use Utilities, only: almostEqual REAL(KIND=RP) :: l !> Lagrange interpolant REAL(KIND=RP) :: x !< Point of evaluation of interpolant - INTEGER :: N !< Polynomial order + INTEGER :: N !< Polynomial order REAL(KIND=RP), DIMENSION(0:N) :: nodes !< Nodes of Lagrange interpolation INTEGER :: j !< Index of polynomial to be found ! @@ -311,7 +322,7 @@ FUNCTION LagrangeInterpolationNoBar( x, N, nodes, j) RESULT(l) REAL(KIND=RP) :: numerator, denominator REAL(KIND=RP), DIMENSION(0:N) :: values !----------------------------------------------------------------------------- - + values = 0.0_RP values(j) = 1.0_RP numerator = 1.0_RP @@ -320,15 +331,15 @@ FUNCTION LagrangeInterpolationNoBar( x, N, nodes, j) RESULT(l) DO i = 0, N IF( AlmostEqual( x, nodes(i) ) ) THEN l = values(i) - RETURN + RETURN ELSE IF (j.ne.i) THEN - numerator = numerator*(x - nodes(i)) + numerator = numerator*(x - nodes(i)) denominator = denominator*(nodes(j) - nodes(i)) - END IF + END IF END DO l = numerator/denominator - END FUNCTION LagrangeInterpolationNoBar + END FUNCTION LagrangeInterpolationNoBar ! ! //////////////////////////////////////////////////////////////// ! @@ -364,16 +375,16 @@ REAL(KIND=RP) FUNCTION LagrangeInterpolantDerivative( x, N, nodes, values, weigh ! atNode = .FALSE. numerator = 0.0_RP - DO j = 0, N + DO j = 0, N IF( AlmostEqual( x, nodes(j) ) ) THEN atNode = .TRUE. p = values(j) denominator = -weights(j) i = j - EXIT + EXIT END IF END DO - + IF ( atNode ) THEN DO j = 0, N IF( j == i ) CYCLE @@ -410,7 +421,7 @@ pure SUBROUTINE PolynomialInterpolationMatrix( N, M, oldNodes, weights, newNodes REAL(KIND=RP), DIMENSION(0:N), INTENT(IN) :: oldNodes REAL(KIND=RP), DIMENSION(0:M), INTENT(IN) :: newNodes REAL(KIND=RP), DIMENSION(0:N), INTENT(IN) :: weights - + REAL(KIND=RP), DIMENSION(0:M,0:N), INTENT(OUT) :: T ! ! --------------- @@ -420,9 +431,9 @@ pure SUBROUTINE PolynomialInterpolationMatrix( N, M, oldNodes, weights, newNodes INTEGER :: j,k REAL(KIND=RP) :: s, tmp LOGICAL :: rowHasMatch - + DO k = 0,M - + rowHasMatch = .FALSE. DO j = 0,N T(k,j) = 0.0_RP @@ -430,8 +441,8 @@ pure SUBROUTINE PolynomialInterpolationMatrix( N, M, oldNodes, weights, newNodes rowHasMatch = .TRUE. T(k,j) = 1.0_RP END IF - END DO - + END DO + IF( .NOT.rowHasMatch ) THEN s = 0.0_RP DO j = 0,N @@ -439,7 +450,7 @@ pure SUBROUTINE PolynomialInterpolationMatrix( N, M, oldNodes, weights, newNodes T(k,j) = tmp s = s + tmp END DO - DO j = 0, N + DO j = 0, N T(k,j) = T(k,j)/s END DO END IF @@ -452,7 +463,7 @@ SUBROUTINE Create1DInterpolationMatrix(Mat,N1,N2,x1,x2) IMPLICIT NONE ! ! ----------------------------------------------------------- -! Creates a 3D Lagrange interpolation matrix from a grid with +! Creates a 3D Lagrange interpolation matrix from a grid with ! coordinates x1, y1, z1 (origin) to a grid with coordinates ! x2, y2, z2 (destination) ! ----------------------------------------------------------- @@ -465,15 +476,15 @@ SUBROUTINE Create1DInterpolationMatrix(Mat,N1,N2,x1,x2) !---------------------------------------------------------- INTEGER :: i,j ! Coordinate counters !---------------------------------------------------------- - + ALLOCATE(Mat(N2 + 1,N1 + 1)) - - DO j=0, N1 ! Column index + + DO j=0, N1 ! Column index DO i=0, N2 ! Row index Mat(i+1,j+1) = LagrangeInterpolationNoBar(x2(i),N1,x1,j) END DO END DO - + END SUBROUTINE Create1DInterpolationMatrix ! !//////////////////////////////////////////////////////////////////////// @@ -482,7 +493,7 @@ SUBROUTINE Create1DRestrictionMatrix(Mat,N1,N2,x1,x2,w1,w2) IMPLICIT NONE ! ! ----------------------------------------------------------- -! Creates a 3D Lagrange interpolation matrix from a grid with +! Creates a 3D Lagrange interpolation matrix from a grid with ! coordinates x1, y1, z1 (origin) to a grid with coordinates ! x2, y2, z2 (destination) ! ----------------------------------------------------------- @@ -497,21 +508,21 @@ SUBROUTINE Create1DRestrictionMatrix(Mat,N1,N2,x1,x2,w1,w2) !---------------------------------------------------------- INTEGER :: i,j ! Coordinate counters !---------------------------------------------------------- - + ALLOCATE(Mat(N2 + 1,N1 + 1)) - - DO j=0, N1 ! Column index + + DO j=0, N1 ! Column index DO i=0, N2 ! Row index Mat(i+1,j+1) = LagrangeInterpolationNoBar(x1(j),N2,x2,i) * w1(j) END DO END DO - + ! Create Mass matrix and finish computing interpolation operator DO i=0, N2 ! Row index ! Matrix Multiplication I = M⁻¹S (taking advantage of the diagonal matrix) Mat(i+1,:) = Mat(i+1,:) / w2(i) END DO - + END SUBROUTINE Create1DRestrictionMatrix ! !//////////////////////////////////////////////////////////////////////// @@ -520,7 +531,7 @@ SUBROUTINE Create3DInterpolationMatrix(Mat,N1x,N1y,N1z,N2x,N2y,N2z,x1,y1,z1,x2,y IMPLICIT NONE ! ! ----------------------------------------------------------- -! Creates a 3D Lagrange interpolation matrix from a grid with +! Creates a 3D Lagrange interpolation matrix from a grid with ! coordinates x1, y1, z1 (origin) to a grid with coordinates ! x2, y2, z2 (destination) ! ----------------------------------------------------------- @@ -535,11 +546,11 @@ SUBROUTINE Create3DInterpolationMatrix(Mat,N1x,N1y,N1z,N2x,N2y,N2z,x1,y1,z1,x2,y INTEGER :: r,s ! Matrix index counters INTEGER :: NDOFEL1, NDOFEL2 ! Degrees of freedom in origin and destination !---------------------------------------------------------- - + NDOFEL2 = (N2x + 1) * (N2y + 1) * (N2z + 1) NDOFEL1 = (N1x + 1) * (N1y + 1) * (N1z + 1) ALLOCATE(Mat(NDOFEL2,NDOFEL1)) - + DO k=0, N1z DO j=0, N1y DO i=0, N1x @@ -548,7 +559,7 @@ SUBROUTINE Create3DInterpolationMatrix(Mat,N1x,N1y,N1z,N2x,N2y,N2z,x1,y1,z1,x2,y DO m=0, N2y DO l=0, N2x s = l + m*(N2x + 1) + n*(N2x + 1)*(N2y + 1) + 1 ! Row index - + Mat(s,r) = LagrangeInterpolationNoBar(x2(l),N1x,x1,i) * & LagrangeInterpolationNoBar(y2(m),N1y,y1,j) * & LagrangeInterpolationNoBar(z2(n),N1z,z1,k) @@ -566,7 +577,7 @@ SUBROUTINE Create3DRestrictionMatrix(Mat,N1x,N1y,N1z,N2x,N2y,N2z,x1,y1,z1,x2,y2, IMPLICIT NONE ! ! ----------------------------------------------------------- -! Creates an L2-3D Lagrange interpolation matrix from a grid +! Creates an L2-3D Lagrange interpolation matrix from a grid ! with coordinates x1, y1, z1 (origin) to a grid with coordinates ! x2, y2, z2 (destination) ! ----------------------------------------------------------- @@ -582,15 +593,15 @@ SUBROUTINE Create3DRestrictionMatrix(Mat,N1x,N1y,N1z,N2x,N2y,N2z,x1,y1,z1,x2,y2, INTEGER :: i,j,k,l,m,n ! Coordinate counters INTEGER :: r,s ! Matrix index counters INTEGER :: NDOFEL1, NDOFEL2 ! Degrees of freedom in origin and destination - REAL(KIND=RP) :: MASSterm ! + REAL(KIND=RP) :: MASSterm ! !---------------------------------------------------------- - + NDOFEL2 = (N2x + 1) * (N2y + 1) * (N2z + 1) NDOFEL1 = (N1x + 1) * (N1y + 1) * (N1z + 1) ALLOCATE(Mat(NDOFEL2,NDOFEL1)) - + Mat = 0.0_RP - + ! Create S matrix and store it directly in "Mat" DO k=0, N1z DO j=0, N1y @@ -600,7 +611,7 @@ SUBROUTINE Create3DRestrictionMatrix(Mat,N1x,N1y,N1z,N2x,N2y,N2z,x1,y1,z1,x2,y2, DO m=0, N2y DO l=0, N2x s = l + m*(N2x + 1) + n*(N2x + 1)*(N2y + 1) + 1 ! Row index - + Mat(s,r) = LagrangeInterpolationNoBar(x1(i),N2x,x2,l) * & LagrangeInterpolationNoBar(y1(j),N2y,y2,m) * & LagrangeInterpolationNoBar(z1(k),N2z,z2,n) * & @@ -611,21 +622,21 @@ SUBROUTINE Create3DRestrictionMatrix(Mat,N1x,N1y,N1z,N2x,N2y,N2z,x1,y1,z1,x2,y2, END DO END DO END DO - + ! Create Mass matrix and finish computing interpolation operator DO n=0, N2z DO m=0, N2y DO l=0, N2x s = l + m*(N2x + 1) + n*(N2x + 1)*(N2y + 1) + 1 ! Row index - + MASSterm = w2x(l) * w2y(m) * w2z(n) - + ! Matrix Multiplication I = M⁻¹S (taking advantage of the diagonal matrix) Mat(s,:) = Mat(s,:) / MASSterm END DO END DO END DO - + END SUBROUTINE Create3DRestrictionMatrix ! !//////////////////////////////////////////////////////////////////////// @@ -636,9 +647,9 @@ SUBROUTINE Interpolate3D(Q1, Q2, Interp, N1x, N1y, N1z, N2x, N2y, N2z) INTEGER :: N2x, N2y, N2z !< Polynomial orders REAL(KIND=RP) :: Q1((N1x+1)*(N1y+1)*(N1z+1)) !< Solution to be interpolated (grid (1)) REAL(KIND=RP) :: Q2((N2x+1)*(N2y+1)*(N2z+1)) !> Interpolated solution (grid (2)) - REAL(KIND=RP) :: Interp((N2x+1)*(N2y+1)*(N2z+1), & + REAL(KIND=RP) :: Interp((N2x+1)*(N2y+1)*(N2z+1), & (N1x+1)*(N1y+1)*(N1z+1)) !< Interpolation matrix - + Q2 = MATMUL(Interp,Q1) END SUBROUTINE Interpolate3D ! @@ -667,21 +678,21 @@ SUBROUTINE InterpolateToNewPoints( N, M, T, f, fInterp ) ! INTEGER :: i,j REAL(KIND=RP) :: tmp - + DO i = 0, M tmp = 0.0_RP DO j = 0, N tmp = tmp + T(i,j)*f(j) - END DO + END DO fInterp(i) = tmp - END DO - + END DO + END SUBROUTINE InterpolateToNewPoints -! +! !/////////////////////////////////////////////////////////////////////// ! SUBROUTINE Interp3DArray( inDim, inArray, outDim, outArray, interpXi, interpEta, interpZeta ) - + IMPLICIT NONE ! @@ -703,7 +714,7 @@ SUBROUTINE Interp3DArray( inDim, inArray, outDim, outArray, interpXi, interpEta, ! REAL(KIND=RP), DIMENSION(:) , POINTER :: tempIn,tempOut REAL(KIND=RP), DIMENSION(:,:,:), POINTER :: tempArray - + INTEGER , DIMENSION(3) :: maxDim INTEGER :: i,j,k ! @@ -724,13 +735,13 @@ SUBROUTINE Interp3DArray( inDim, inArray, outDim, outArray, interpXi, interpEta, DO j = 0, inDim(2) DO i = 0, inDim(1) tempIn(i) = inArray(i,j,k) - END DO + END DO CALL InterpolateToNewPoints( inDim(1), outDim(1), interpXi, tempIn, tempOut ) DO i = 0, outDim(1) tempArray(i,j,k) = tempOut(i) - END DO + END DO END DO - END DO + END DO ! ! ------------------ ! Interpolate in Eta @@ -740,13 +751,13 @@ SUBROUTINE Interp3DArray( inDim, inArray, outDim, outArray, interpXi, interpEta, DO i = 0, outDim(1) DO j = 0, inDim(2) tempIn(j) = tempArray(i,j,k) - END DO + END DO CALL InterpolateToNewPoints( inDim(2), outDim(2), interpEta, tempIn, tempOut ) DO j = 0, outDim(2) tempArray(i,j,k) = tempOut(j) - END DO - END DO - END DO + END DO + END DO + END DO ! ! ------------------- ! Interpolate in Zeta @@ -756,13 +767,13 @@ SUBROUTINE Interp3DArray( inDim, inArray, outDim, outArray, interpXi, interpEta, DO i = 0, outDim(1) DO k = 0, inDim(3) tempIn(k) = tempArray(i,j,k) - END DO + END DO CALL InterpolateToNewPoints( inDim(3), outDim(3), interpZeta, tempIn, tempOut ) DO k = 0, outDim(3) outArray(i,j,k) = tempOut(k) - END DO - END DO - END DO + END DO + END DO + END DO ! ! --------------- ! Clean up memory @@ -771,9 +782,9 @@ SUBROUTINE Interp3DArray( inDim, inArray, outDim, outArray, interpXi, interpEta, DEALLOCATE (tempIn) DEALLOCATE (tempOut) DEALLOCATE (tempArray) - - END SUBROUTINE Interp3DArray -! + + END SUBROUTINE Interp3DArray +! !/////////////////////////////////////////////////////////////////////// ! @@ -801,9 +812,9 @@ SUBROUTINE PolynomialDerivativeMatrix( N, nodes, D ) ! INTEGER :: i, j REAL(KIND=RP), DIMENSION(0:N) :: baryWeights -! +! CALL BarycentricWeights( N, nodes, baryWeights ) - + DO i = 0, N D(i,i) = 0.0_RP DO j = 0, N @@ -840,10 +851,10 @@ SUBROUTINE mthPolynomialDerivativeMatrix( m, N, nodes, D ) INTEGER :: i, j, l REAL(KIND=RP), DIMENSION(0:N) :: baryWeights REAL(KIND=RP), DIMENSION(0:N, 0:N) :: DOld -! +! CALL BarycentricWeights( N, nodes, baryWeights ) CALL PolynomialDerivativeMatrix( N, nodes, DOld ) - + DO l = 2, m DO i = 0, N D(i,i) = 0.0_RP @@ -876,7 +887,7 @@ SUBROUTINE MMMultiply2D1(A,n,x,y) INTEGER , DIMENSION(2) , INTENT(IN) :: n REAL(KIND=RP), DIMENSION(0:n(1),0:n(1)), INTENT(IN) :: A REAL(KIND=RP), DIMENSION(0:n(1),0:n(2)), INTENT(IN) :: x - + REAL(KIND=RP), DIMENSION(0:n(1),0:n(2)), INTENT(OUT) :: y ! ! --------------- @@ -886,7 +897,7 @@ SUBROUTINE MMMultiply2D1(A,n,x,y) INTEGER :: i,j,s ! y = 0.0_RP - + DO j = 0, n(2) DO s = 0, n(1) DO i = 0, n(1) @@ -894,7 +905,7 @@ SUBROUTINE MMMultiply2D1(A,n,x,y) END DO END DO END DO - + END SUBROUTINE MMMultiply2D1 ! ! ///////////////////////////////////////////////////////////////////// @@ -914,7 +925,7 @@ SUBROUTINE MMMultiply2D2(A,n,x,y) INTEGER , DIMENSION(2) , INTENT(IN) :: n REAL(KIND=RP), DIMENSION(0:n(2),0:n(2)), INTENT(IN) :: A REAL(KIND=RP), DIMENSION(0:n(1),0:n(2)), INTENT(IN) :: x - + REAL(KIND=RP), DIMENSION(0:n(1),0:n(2)), INTENT(OUT) :: y ! ! --------------- @@ -924,7 +935,7 @@ SUBROUTINE MMMultiply2D2(A,n,x,y) INTEGER :: i,j,s ! y = 0.0_RP - + DO s = 0, n(2) DO j = 0, n(2) DO i = 0, n(1) @@ -932,7 +943,7 @@ SUBROUTINE MMMultiply2D2(A,n,x,y) END DO END DO END DO - + END SUBROUTINE MMMultiply2D2 ! !//////////////////////////////////////////////////////////////////////////////////////// @@ -959,7 +970,7 @@ SUBROUTINE PolyDirectMatrixMultiplyDeriv( f, fDeriv, DT, N ) ! INTEGER :: i, j REAL(KIND=RP) :: t - + DO i = 0, N t = 0.0_RP DO j = 0, N @@ -967,7 +978,7 @@ SUBROUTINE PolyDirectMatrixMultiplyDeriv( f, fDeriv, DT, N ) END DO fDeriv(i) = t END DO - + END SUBROUTINE PolyDirectMatrixMultiplyDeriv ! !//////////////////////////////////////////////////////////////////////////////////////// @@ -995,9 +1006,9 @@ SUBROUTINE MatrixMultiplyDeriv( f, fDeriv, D, N, transp ) ! INTEGER :: i, j REAL(KIND=RP) :: t - + SELECT CASE ( transp ) - + CASE( MXV_DIRECT ) DO i = 0, N t = 0.0_RP @@ -1006,7 +1017,7 @@ SUBROUTINE MatrixMultiplyDeriv( f, fDeriv, D, N, transp ) END DO fDeriv(i) = t END DO - + CASE( MXV_TRANSPOSE ) DO i = 0, N t = 0.0_RP @@ -1015,27 +1026,27 @@ SUBROUTINE MatrixMultiplyDeriv( f, fDeriv, D, N, transp ) END DO fDeriv(i) = t END DO - + CASE DEFAULT END SELECT - + END SUBROUTINE MatrixMultiplyDeriv ! !//////////////////////////////////////////////////////////////////////////////////////// ! SUBROUTINE EOMatrixDerivative( u, uDeriv, D, N ) - IMPLICIT NONE + IMPLICIT NONE ! -! Compute the matrix derivative using the even-odd decomposition -! e = even terms -! ep = even derivative -! o = odd terms +! Compute the matrix derivative using the even-odd decomposition +! e = even terms +! ep = even derivative +! o = odd terms ! op = odd derivative ! INTEGER , INTENT(IN) :: N REAL(KIND=RP), DIMENSION(0:N) , INTENT(IN) :: u REAL(KIND=RP), DIMENSION(0:N,0:N), INTENT(IN) :: D - + REAL(KIND=RP), DIMENSION(0:N) , INTENT(OUT) :: uDeriv REAL(KIND=RP), DIMENSION(0:N) :: e, o, ep, op @@ -1043,62 +1054,62 @@ SUBROUTINE EOMatrixDerivative( u, uDeriv, D, N ) INTEGER :: M, nHalf, I, J ! ! ---------------------------- -! Compute even and odd vectors +! Compute even and odd vectors ! ---------------------------- ! M = (N+1)/2 DO j = 0,M - e(j) = 0.5*(u(j) + u(n-j)) - o(j) = 0.5*(u(j) - u(n-j)) + e(j) = 0.5*(u(j) + u(n-j)) + o(j) = 0.5*(u(j) - u(n-j)) END DO ! ! ------------------------------------- -! Compute even and odd derivative terms +! Compute even and odd derivative terms ! ------------------------------------- ! DO i = 0, M-1 - sume = 0.0 - sumo = 0.0 + sume = 0.0 + sumo = 0.0 DO j = 0, M-1 - sume = sume + (D(j,i) + D(n-j,i))*e(j) - sumo = sumo + (D(j,i) - D(n-j,i))*o(j) + sume = sume + (D(j,i) + D(n-j,i))*e(j) + sumo = sumo + (D(j,i) - D(n-j,i))*o(j) END DO - ep(i) = sume + ep(i) = sume op(i) = sumo END DO ! ! -------------------------------- -! Add in middle term if n+1 is odd +! Add in middle term if n+1 is odd ! -------------------------------- ! nHalf = (n+1)/2 - IF(2*nHalf /= n+1) THEN - DO i = 0, M-1 - ep(i) = ep(i) + D(M,i)*e(M) + IF(2*nHalf /= n+1) THEN + DO i = 0, M-1 + ep(i) = ep(i) + D(M,i)*e(M) END DO - ep(M) = 0.0 - i = nHalf - sumo = 0.0 - DO j = 0,M-1 - sumo = sumo + (D(j,M) - D(n-j,M))*o(j) + ep(M) = 0.0 + i = nHalf + sumo = 0.0 + DO j = 0,M-1 + sumo = sumo + (D(j,M) - D(n-j,M))*o(j) END DO - op(i) = sumo - END IF + op(i) = sumo + END IF ! ! -------------------------- -! Construct full derivative +! Construct full derivative ! -------------------------- ! DO j = 0,M-1 - uDeriv(j) = ( ep(j) + op(j)) - uDeriv(n-j) = (-ep(j) + op(j)) + uDeriv(j) = ( ep(j) + op(j)) + uDeriv(n-j) = (-ep(j) + op(j)) END DO - IF(2*nHalf /= n+1) THEN + IF(2*nHalf /= n+1) THEN uDeriv(M) = (ep(M) + op(M)) - END IF + END IF ! - END SUBROUTINE EOMatrixDerivative + END SUBROUTINE EOMatrixDerivative ! ! ///////////////////////////////////////////////////////////////// ! @@ -1125,43 +1136,43 @@ SUBROUTINE DiscreteGalerkinDerivMatrix( N, G ) REAL(KIND=RP), DIMENSION(0:N) :: x, w REAL(KIND=RP), DIMENSION(0:N,0:N) :: D REAL(KIND=RP) :: s -! +! CALL LegendreLobattoNodesAndWeights( N, x, w ) CALL PolynomialDerivativeMatrix( N, x, D ) - + DO j = 0, N DO m = 0, N s = 0.0_RP DO k = 0, N s = s + D(m,k)*D(j,k)*w(k) - END DO + END DO G(m,j) = s/w(j) - END DO - END DO + END DO + END DO END SUBROUTINE DiscreteGalerkinDerivMatrix ! ! ///////////////////////////////////////////////////////////////////// ! - function JacobiPolynomial( N, x, nx, alpha, beta ) result (PolMat) + function JacobiPolynomial( N, x, nx, alpha, beta ) result (PolMat) ! --------------------------------------------------------- ! General routine to evaluate orthonormal Jacobi polynomial ! of type (alpha,beta) recursively at points defined by an -! array x - essentially computes 1D Vandermonde matrix. +! array x - essentially computes 1D Vandermonde matrix. ! --------------------------------------------------------- implicit none !-----Input--------------------------------------------------------------- integer, intent(in) :: N !< Polynomial order real(kind=RP), dimension(0:nx), intent(in) :: x !< Where to evaluate the derivative - integer, intent(in) :: nx - real(kind=RP), intent(in) :: alpha - real(kind=RP), intent(in) :: beta + integer, intent(in) :: nx + real(kind=RP), intent(in) :: alpha + real(kind=RP), intent(in) :: beta !-----Output-------------------------------------------------------------- real(kind=RP), dimension(0:nx,0:N) :: PolMat !< Resulting matrix with polynomials !-----Local-Variables----------------------------------------------------- integer :: i,j - real(kind=RP) :: gamma0, gamma1 - real(kind=RP) :: aold, anew, bnew, tmp + real(kind=RP) :: gamma0, gamma1 + real(kind=RP) :: aold, anew, bnew, tmp real(kind=RP), dimension(0:nx) :: tmp2 ! --------------------------------------------------------- @@ -1177,7 +1188,7 @@ function JacobiPolynomial( N, x, nx, alpha, beta ) result (PolMat) ! Recurrent formula for the rest of polynomials aold = 2/(2+alpha+beta)*sqrt((alpha+1)*(beta+1)/(alpha+beta+3)) - do i=2,N + do i=2,N tmp = 2*(i-1)+alpha+beta anew = 2/(tmp+2)*sqrt( (i)*(i+alpha+beta)*(i+alpha)*(i+beta)/(tmp+1)/(tmp+3)) bnew = - (alpha**2-beta**2)/tmp/(tmp+2) @@ -1192,7 +1203,7 @@ end function JacobiPolynomial ! ! ///////////////////////////////////////////////////////////////////// ! - function ComputeVandermonde( N ) result (V) + function ComputeVandermonde( N ) result (V) ! --------------------------------------------------------- ! Routine to compute a square Vandermonde matrix for 3D hexa. ! --------------------------------------------------------- @@ -1201,18 +1212,18 @@ function ComputeVandermonde( N ) result (V) !-----Input--------------------------------------------------------------- integer, dimension(3), intent(in) :: N ! Polynomial order !-----Output-------------------------------------------------------------- - real(kind=RP), dimension(0:(N(1)+1)*(N(2)+1)*(N(3)+1)-1,0:(N(1)+1)*(N(2)+1)*(N(3)+1)-1) :: V ! Vandermonde matrix + real(kind=RP), dimension(0:(N(1)+1)*(N(2)+1)*(N(3)+1)-1,0:(N(1)+1)*(N(2)+1)*(N(3)+1)-1) :: V ! Vandermonde matrix !-----Local-Variables----------------------------------------------------- - integer :: i,j,k,l,Vsize - real(kind=RP), dimension(0:(N(1)+1)*(N(2)+1)*(N(3)+1)-1,0:N(1)) :: Vx ! 1D Vandermonde matrix in x - real(kind=RP), dimension(0:(N(1)+1)*(N(2)+1)*(N(3)+1)-1,0:N(2)) :: Vy ! 1D Vandermonde matrix in y - real(kind=RP), dimension(0:(N(1)+1)*(N(2)+1)*(N(3)+1)-1,0:N(3)) :: Vz ! 1D Vandermonde matrix in z + integer :: i,j,k,l,Vsize + real(kind=RP), dimension(0:(N(1)+1)*(N(2)+1)*(N(3)+1)-1,0:N(1)) :: Vx ! 1D Vandermonde matrix in x + real(kind=RP), dimension(0:(N(1)+1)*(N(2)+1)*(N(3)+1)-1,0:N(2)) :: Vy ! 1D Vandermonde matrix in y + real(kind=RP), dimension(0:(N(1)+1)*(N(2)+1)*(N(3)+1)-1,0:N(3)) :: Vz ! 1D Vandermonde matrix in z !-1D-GLL-quadrature-points-and-weights:--------- - real(kind=RP), dimension(0:N(1)) :: x1d, wx - real(kind=RP), dimension(0:N(2)) :: y1d, wy - real(kind=RP), dimension(0:N(3)) :: z1d, wz + real(kind=RP), dimension(0:N(1)) :: x1d, wx + real(kind=RP), dimension(0:N(2)) :: y1d, wy + real(kind=RP), dimension(0:N(3)) :: z1d, wz real(kind=RP), dimension(0:N(1),0:N(2),0:N(3)) :: x3d,y3d,z3d ! 3d arrays for GLL points - real(kind=RP), dimension(0:(N(1)+1)*(N(2)+1)*(N(3)+1)-1) :: x,y,z ! 3d arrays reshaped + real(kind=RP), dimension(0:(N(1)+1)*(N(2)+1)*(N(3)+1)-1) :: x,y,z ! 3d arrays reshaped ! --------------------------------------------------------- ! Compute 1D quadrature points and weights @@ -1227,12 +1238,12 @@ function ComputeVandermonde( N ) result (V) end do do i=0,N(1) z3d(i,:,:) = spread( z1d, 1, N(2)) - end do + end do ! Reshape arrays - x = reshape(x3d,(/ (N(1)+1)*(N(2)+1)*(N(3)+1) /)) - y = reshape(y3d,(/ (N(1)+1)*(N(2)+1)*(N(3)+1) /)) - z = reshape(z3d,(/ (N(1)+1)*(N(2)+1)*(N(3)+1) /)) + x = reshape(x3d,(/ (N(1)+1)*(N(2)+1)*(N(3)+1) /)) + y = reshape(y3d,(/ (N(1)+1)*(N(2)+1)*(N(3)+1) /)) + z = reshape(z3d,(/ (N(1)+1)*(N(2)+1)*(N(3)+1) /)) ! Compute 1D polynomials Vx = JacobiPolynomial(N(1),x,(N(1)+1)*(N(2)+1)*(N(3)+1)-1,0.0_RP,0.0_RP) @@ -1240,9 +1251,9 @@ function ComputeVandermonde( N ) result (V) Vz = JacobiPolynomial(N(3),z,(N(1)+1)*(N(2)+1)*(N(3)+1)-1,0.0_RP,0.0_RP) ! Build 3D hexahedra Vandermonde matrix - V = 0.0_RP + V = 0.0_RP Vsize = 0; - do i=0,N(1); do j=0,N(2); do k=0,N(3) + do i=0,N(1); do j=0,N(2); do k=0,N(3) do l=0,size(V,1)-1 V(l,Vsize) = Vx(l,i) * Vy(l,j) * Vz(l,k) end do @@ -1265,27 +1276,28 @@ subroutine ComputeModalForm( u, uhat, Neqn, Nel, Nx, Ny, Nz ) integer , intent(in) :: Neqn ! no. equations integer , intent(in) :: Nel ! no. elements !-polynomial-orders-in-x/y/z:------------------- - integer , intent(in) :: Nx + integer , intent(in) :: Nx integer , intent(in) :: Ny integer , intent(in) :: Nz !-----Local-Variables----------------------------------------------------- - real(kind=rp), dimension(0:(Nx+1)*(Ny+1)*(Nz+1)-1,0:(Nx+1)*(Ny+1)*(Nz+1)-1) :: V + real(kind=rp), dimension(0:(Nx+1)*(Ny+1)*(Nz+1)-1,0:(Nx+1)*(Ny+1)*(Nz+1)-1) :: V integer :: i,j,k,l,iel integer :: elsize ! --------------------------------------------------------- ! compute Vandermonde matrix on 3D hexahedral - V = ComputeVandermonde( (/ Nx, Ny, Nz /) ) + V = ComputeVandermonde( (/ Nx, Ny, Nz /) ) ! save Vandermonde matrix in the matrix form - open(25, file = 'Vandermonde3DHex.txt') + open(25, file = 'Vandermonde3DHex.txt') do i=0,size(V,1)-1 do j=0,size(V,2)-1 - write(25,'(1F8.3)', advance="no") V(i,j) + ! write(25,'(1E19.11)', advance="no") V(i,j) ! better precision + write(25,'(1F8.3)', advance="no") V(i,j) end do write(25,*) end do - close(25) + close(25) ! compute V^(-1) V = inverse(V) @@ -1299,11 +1311,11 @@ subroutine ComputeModalForm( u, uhat, Neqn, Nel, Nx, Ny, Nz ) ! save uhat in the form of (Nel*elsize,Neqn) matrix - open(26, file = 'Qhat.txt') + open(26, file = 'Qhat.txt') do i=1,Neqn*Nel*elsize,Neqn; do j=0,Neqn-1 write(26,'(1E22.14)', advance="no") uhat(i+j) end do; write(26,*); end do - close(26) + close(26) end subroutine ComputeModalForm ! @@ -1311,6 +1323,6 @@ end subroutine ComputeModalForm ! ! ! -! ********** +! ********** END MODULE PolynomialInterpAndDerivsModule -! ********** +! ********** \ No newline at end of file diff --git a/Solver/src/libs/spectral/InterpolationMatrices.f90 b/Solver/src/libs/spectral/InterpolationMatrices.f90 index 65127a52c..a6eb0dfb8 100644 --- a/Solver/src/libs/spectral/InterpolationMatrices.f90 +++ b/Solver/src/libs/spectral/InterpolationMatrices.f90 @@ -262,4 +262,4 @@ subroutine Finalize_InterpolationMatrices deallocate ( Tset ) end subroutine Finalize_InterpolationMatrices -end module InterpolationMatrices +end module InterpolationMatrices \ No newline at end of file diff --git a/Solver/src/libs/spectral/LegendreAlgorithms.f90 b/Solver/src/libs/spectral/LegendreAlgorithms.f90 index 952074919..b2675a73f 100644 --- a/Solver/src/libs/spectral/LegendreAlgorithms.f90 +++ b/Solver/src/libs/spectral/LegendreAlgorithms.f90 @@ -1,6 +1,13 @@ ! !//////////////////////////////////////////////////////////////////////// ! +! @File: LegendreAlgorithms.f90 +! @Author: David Kopriva +! @Created: Created: 2009-12-08 13:47:42 -0500 +! @Last revision date: Wed Jun 2 18:14:23 2021 +! @Last revision author: Wojciech Laskowski (wj.laskowski@upm.es) +! @Last revision commit: 28e347f1c2e07ee09992b923a6ed72dacfe9ffb9 +! ! Contains: ! ALGORITHM 20: FUNCTION LegendrePolynomial( N, x ) RESULT(L_N) ! ALGORITHM 22: SUBROUTINE LegendrePolyAndDerivative( N, x, L_N, LPrime_N ) @@ -45,7 +52,7 @@ FUNCTION LegendrePolynomial( N, x ) RESULT(L_N) ! INTEGER :: k REAL(KIND=RP) :: L_NM1, L_NM2 - + IF( N == 0 ) THEN L_N = 1.0_rp ELSE IF ( N == 1 ) THEN @@ -59,7 +66,7 @@ FUNCTION LegendrePolynomial( N, x ) RESULT(L_N) L_NM1 = L_N END DO END IF - + END FUNCTION LegendrePolynomial ! !//////////////////////////////////////////////////////////////////////////////////////// @@ -67,7 +74,7 @@ END FUNCTION LegendrePolynomial MODULE GaussQuadrature USE SMConstants IMPLICIT NONE - + PUBLIC :: GaussLegendreNodesAndWeights, LegendreLobattoNodesAndWeights PUBLIC :: LegendrePolyAndDerivative PRIVATE :: qAndLEvaluation @@ -101,7 +108,7 @@ SUBROUTINE LegendrePolyAndDerivative( N, x, L_N, LPrime_N ) ! INTEGER :: k REAL(KIND=RP) :: L_NM1, L_NM2, LPrime_NM2, LPrime_NM1 - + IF( N == 0 ) THEN L_N = 1.0_rp LPrime_N = 0.0_rp @@ -122,7 +129,7 @@ SUBROUTINE LegendrePolyAndDerivative( N, x, L_N, LPrime_N ) LPrime_NM1 = LPrime_N END DO END IF - + END SUBROUTINE LegendrePolyAndDerivative ! !//////////////////////////////////////////////////////////////////////////////////////// @@ -157,7 +164,7 @@ SUBROUTINE GaussLegendreNodesAndWeights( N, x, w ) ! INTEGER, PARAMETER :: noNewtonIterations = 10 REAL(KIND=RP), PARAMETER :: toleranceFactor = 4.0_RP - + tolerance = toleranceFactor*EPSILON(L_NP1) IF( N == 0 ) THEN x(0) = 0.0_RP @@ -200,7 +207,7 @@ SUBROUTINE GaussLegendreNodesAndWeights( N, x, w ) x(N/2) = 0.0_RP w(N/2) = 2.0_RP/LPrime_NP1**2 END IF - + END SUBROUTINE GaussLegendreNodesAndWeights ! !//////////////////////////////////////////////////////////////////////////////////////// @@ -230,7 +237,7 @@ SUBROUTINE qAndLEvaluation( N, x, Q, Q_prime, L_N ) ! INTEGER :: k REAL(KIND=RP) :: L_kM1, L_kM2, LPrime_kM2, LPrime_kM1, L_k, LPrime_k - + IF( N == 0 ) THEN !Should never be called L_N = 1.0_rp Q = HUGE(Q) @@ -255,12 +262,12 @@ SUBROUTINE qAndLEvaluation( N, x, Q, Q_prime, L_N ) k = N+1 L_k = ((2*k-1)*x*L_kM1 - (k-1)*L_kM2)/k LPrime_k = LPrime_kM2 + (2*k-1)*L_kM1 - + Q = L_k - L_kM2 Q_prime = LPrime_k - LPrime_kM2 L_N = L_kM1 END IF - + END SUBROUTINE qAndLEvaluation ! !//////////////////////////////////////////////////////////////////////////////////////// @@ -295,7 +302,7 @@ SUBROUTINE LegendreLobattoNodesAndWeights( N, x, w ) ! INTEGER, PARAMETER :: noNewtonIterations = 10 REAL(KIND=RP), PARAMETER :: toleranceFactor = 4.0_RP - + tolerance = toleranceFactor*EPSILON(L_N) IF( N == 0 ) THEN ! Error - Must have at least two points, +/-1 x(0) = 0.0_RP @@ -347,9 +354,9 @@ SUBROUTINE LegendreLobattoNodesAndWeights( N, x, w ) x(N/2) = 0.0_RP w(N/2) = 2.0_RP/(N*(N+1)*L_N**2) END IF - + END SUBROUTINE LegendreLobattoNodesAndWeights ! -! ========== +! ========== END MODULE GaussQuadrature -! ========== +! ========== \ No newline at end of file diff --git a/Solver/src/libs/spectral/Makefile b/Solver/src/libs/spectral/Makefile index 315cf4da9..df1f6e4cb 100644 --- a/Solver/src/libs/spectral/Makefile +++ b/Solver/src/libs/spectral/Makefile @@ -62,4 +62,4 @@ clean: FORCE ############################################# # Dummy procedure to force a rule # ############################################# -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/libs/spectral/NodalStorageClass.f90 b/Solver/src/libs/spectral/NodalStorageClass.f90 index 96fc6fe5a..2791c5ff6 100644 --- a/Solver/src/libs/spectral/NodalStorageClass.f90 +++ b/Solver/src/libs/spectral/NodalStorageClass.f90 @@ -403,4 +403,4 @@ function NodalStorage_getdlj(self, xi) end function NodalStorage_getdlj -END Module NodalStorageClass +END Module NodalStorageClass \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/AnalyticalJacobian.f90 b/Solver/src/libs/timeintegrator/AnalyticalJacobian.f90 index 5159730f5..2eb45f021 100644 --- a/Solver/src/libs/timeintegrator/AnalyticalJacobian.f90 +++ b/Solver/src/libs/timeintegrator/AnalyticalJacobian.f90 @@ -1,7 +1,7 @@ !////////////////////////////////////////////////////// ! ! This module provides the routines for computing the analytical Jacobian matrix -! -> Only for p-conforming representations +! -> Only for p-conforming representations (TODO: make general) ! -> The Jacobian of the BCs is temporarily computed numerically ! !////////////////////////////////////////////////////// @@ -61,7 +61,7 @@ module AnalyticalJacobian #if defined(NAVIERSTOKES) - real(kind=RP) :: Identity(NCONS,NCONS) ! identity matrix. + real(kind=RP) :: Identity(NCONS,NCONS) ! identity matrix. TODO: Define only once in the constructor (When this is a class!!) #endif contains ! @@ -108,7 +108,9 @@ subroutine AnJacobian_Construct(this, mesh, nEqn, controlVariables) call mesh % faces(fID) % storage % ConstructAnJac (NDIM) end do !$omp end parallel do - + + !TODO: Add conformity check + end subroutine AnJacobian_Construct ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -149,6 +151,8 @@ subroutine AnJacobian_Compute(this, sem, nEqn, time, Matrix, TimeDerivative, Tim end if nelem = size(sem % mesh % elements) + + !TODO: Check if there was p-adaptation and reconstruct if necessary ! ! ************************************************* @@ -529,7 +533,7 @@ subroutine ComputeBoundaryFluxJacobian(f,time) ! ! ******************** -! Viscous contribution - Temporarily done fully numerically. +! Viscous contribution - Temporarily done fully numerically. TODO: This can be improved ! ******************** ! if (flowIsNavierStokes) then @@ -899,10 +903,10 @@ subroutine Local_SetDiagonalBlock(e, fF, fB, fO, fR, fT, fL, Matrix, IBM) use IBMClass implicit none !------------------------------------------- - type(Element), intent(inout) :: e - type(Face), target, intent(in) :: fF, fB, fO, fR, fT, fL !< The six faces of the element - class(Matrix_t), intent(inout) :: Matrix - type(IBM_type), optional, intent(inout) :: IBM + type(Element) , intent(inout) :: e + type(Face), target, intent(in) :: fF, fB, fO, fR, fT, fL !< The six faces of the element + class(Matrix_t) , intent(inout) :: Matrix + type(IBM_type), intent(inout) :: IBM !------------------------------------------- real(kind=RP) :: MatEntries(NCONS,NCONS) real(kind=RP) :: dFdQ (NCONS,NCONS,NDIM,0:e%Nxyz(1),0:e%Nxyz(2),0:e%Nxyz(3)) @@ -943,7 +947,9 @@ subroutine Local_SetDiagonalBlock(e, fF, fB, fO, fR, fT, fL, Matrix, IBM) real(kind=RP) :: JacR( NCONS,NCONS, 0:e % Nxyz(2), 0:e % Nxyz(3) ) ! Jacobian for RIGHT face real(kind=RP) :: JacT( NCONS,NCONS, 0:e % Nxyz(1), 0:e % Nxyz(2) ) ! Jacobian for TOP face real(kind=RP) :: JacL( NCONS,NCONS, 0:e % Nxyz(2), 0:e % Nxyz(3) ) ! Jacobian for LEFT face - type(NodalStorage_t), pointer :: spAxi, spAeta, spAzeta + type(NodalStorage_t), pointer :: spAxi, spAeta, spAzeta + + optional :: IBM !------------------------------------------- spAxi => NodalStorage(e % Nxyz(1)) @@ -959,6 +965,7 @@ subroutine Local_SetDiagonalBlock(e, fF, fB, fO, fR, fT, fL, Matrix, IBM) EtaSpa = NCONS*nXi ZetaSpa = NCONS*nXi*nEta +! TODO: Fill this only once in class constructor ! ---------------------------------------------- Identity = 0._RP do i=1, NCONS @@ -992,6 +999,7 @@ subroutine Local_SetDiagonalBlock(e, fF, fB, fO, fR, fT, fL, Matrix, IBM) call HyperbolicDiscretization % ComputeInnerFluxJacobian( e, dFdQ) if (flowIsNavierStokes) then call ViscousDiscretization % ComputeInnerFluxJacobian( e, dF_dgradQ, dFdQ) + ! TODO: Read this from Viscous discretization dqHat_dqp = 0.5_RP dqHat_dqm = 0.5_RP @@ -1034,7 +1042,7 @@ subroutine Local_SetDiagonalBlock(e, fF, fB, fO, fR, fT, fL, Matrix, IBM) i = eq1 + baseRow ! row index (1-based) j = eq2 + baseCol ! column index (1-based) - call Matrix % AddToBlockEntry (e % GlobID, e % GlobID, i, j, MatEntries(eq1,eq2)) + call Matrix % AddToBlockEntry (e % GlobID, e % GlobID, i, j, MatEntries(eq1,eq2)) ! TODO: This can be improved by setting the whole matrix at once end do ; end do end do ; end do ; end do ; end do @@ -1433,27 +1441,26 @@ subroutine Local_SetDiagonalBlock(e, fF, fB, fO, fR, fT, fL, Matrix, IBM) ! ! adding IBM contributes ! ---------------------- - if( present(IBM) ) then - if( IBM% active ) then - do k12 = 0, e% Nxyz(3); do j12 = 0, e% Nxyz(2) ; do i12 = 0, e% Nxyz(1) - if( e% isInsideBody(i12,j12,k12) ) then - associate( Q => e% storage% Q(:,i12,j12,k12) ) - call IBM% semiImplicitJacobian( e% GlobID, Q, MatEntries ) + if( present(IBM) .and. IBM% active ) then + do k12 = 0, e% Nxyz(3); do j12 = 0, e% Nxyz(2) ; do i12 = 0, e% Nxyz(1) + if( e% isInsideBody(i12,j12,k12) ) then + associate( Q => e% storage% Q(:,i12,j12,k12) ) + call IBM% semiImplicitJacobian( e% GlobID, Q, MatEntries ) - baseRow = i12*NCONS + j12*EtaSpa + k12*ZetaSpa - baseCol = i12*NCONS + j12*EtaSpa + k12*ZetaSpa + baseRow = i12*NCONS + j12*EtaSpa + k12*ZetaSpa + baseCol = i12*NCONS + j12*EtaSpa + k12*ZetaSpa - ! IBM contributes affect only the diagonal of the block diag. matrix - !------------------------------------- - do eq2 = 1, NCONS ; do eq1 = 1, NCONS - i = eq1 + baseRow ! row index (1-based) - j = eq2 + baseCol ! column index (1-based) - call Matrix % AddToBlockEntry (e % GlobID, e % GlobID, i, j, MatEntries(eq1,eq2)) - end do; end do - end associate - end if - end do; end do; end do - end if + ! IBM contributes affect only the diagonal of the block diag. matrix + !------------------------------------- + do eq2 = 1, NCONS ; do eq1 = 1, NCONS + i = eq1 + baseRow ! row index (1-based) + j = eq2 + baseCol ! column index (1-based) + call Matrix % AddToBlockEntry (e % GlobID, e % GlobID, i, j, MatEntries(eq1,eq2)) + end do; end do + + end associate + end if + end do; end do; end do end if nullify(dF_dgradQ) @@ -1468,6 +1475,7 @@ end subroutine Local_SetDiagonalBlock ! the equations that correspond to e_plus and inserting it in the Matrix ! ! -> Currently, this routine only works for p-conforming representations +! TODO: Add routine for p-nonconforming representations (block computation is more expensive and delta cycling is ruled out) ! ----------------------------------------------------------------------------------------------- subroutine Local_GetOffDiagonalBlock(f,e_plus,e_minus,side,Matrix) implicit none @@ -1533,7 +1541,7 @@ subroutine Local_GetOffDiagonalBlock(f,e_plus,e_minus,side,Matrix) ! Definitions ! *********** ! - a_minus = 0.5_RP + a_minus = 0.5_RP ! Temp... TODO: read from ViscousDiscretization ! Entry spacing for element e⁺ nXi1 = e_plus % Nxyz(1) + 1 @@ -1572,6 +1580,11 @@ subroutine Local_GetOffDiagonalBlock(f,e_plus,e_minus,side,Matrix) normAx_minus = abs(normAx_minus) ! Nodal storage + ! -------------------------------------- + ! TODO: Why this doesn't work since ifort ver. 19.1? + ! -------------------------------------- + ! spA_plus = NodalStorage(e_plus % Nxyz) + ! spA_minus = NodalStorage(e_minus % Nxyz) spA_plus(1) = NodalStorage(e_plus % Nxyz(1)) spA_plus(2) = NodalStorage(e_plus % Nxyz(2)) @@ -1749,7 +1762,10 @@ subroutine Local_GetOffDiagonalBlock(f,e_plus,e_minus,side,Matrix) * spAnorm_minus % v(elInd_minus( normAx_minus ),normAxSide_minus) & * dot_product( Gvec_tan2, nHat(:,faceInd_minus(1),faceInd_minus(2)) ) ! -! Faces contribution (surface integrals from the outer equation) - PENALTY TERM IS BEING CONSIDERED IN THE INVISCID PART +! Faces contribution (surface integrals from the outer equation) - PENALTY TERM IS BEING CONSIDERED IN THE INVISCID PART - TODO: Reorganize storage to put it explicitly in another place (needed for purely viscous equations) +! The tangent directions here are taken in the reference frame of e⁻ +! ********************************************************************* +! ! MatEntries = MatEntries & + df_dGradQ_f(:,:,tanAx_minus(1),faceInd_plus(1),faceInd_plus(2)) & @@ -1864,4 +1880,4 @@ subroutine AnJac_GetFaceJac(f, faceSide, faceJac, dqHat_dqp, dqHat_dqm) end subroutine AnJac_GetFaceJac #endif -end module AnalyticalJacobian +end module AnalyticalJacobian \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/AnisFASMultigridClass.f90 b/Solver/src/libs/timeintegrator/AnisFASMultigridClass.f90 index 5ef2283ed..cc9b1d9d5 100644 --- a/Solver/src/libs/timeintegrator/AnisFASMultigridClass.f90 +++ b/Solver/src/libs/timeintegrator/AnisFASMultigridClass.f90 @@ -61,7 +61,7 @@ module AnisFASMultigridClass integer :: MGlevels(3) ! Total number of multigrid levels integer :: MaxN(3) ! Maximum polynomial order in every direction integer :: NMIN ! Minimum polynomial order allowed - integer :: deltaN ! + integer :: deltaN ! ! TODO: deltaN(3) integer :: nelem ! Number of elements (this is a p-multigrid implementation) integer :: num_of_allElems integer :: SweepNumPre ! Number of sweeps pre-smoothing @@ -276,7 +276,7 @@ subroutine construct(this,controlVariables,sem,estimator,NMINestim) ! meshFileName = controlVariables % stringValueForKey("mesh file name", requestedLength = LINE_LENGTH) do Dir = 1, 3 - call ConstructFASInOneDirection(this, MGlevels(Dir), controlVariables, Dir) + call ConstructFASInOneDirection(this, MGlevels(Dir), controlVariables, Dir) ! TODO: change argument to meshFileName end do !~ call Stopwatch % Pause("Preprocessing") @@ -300,7 +300,7 @@ recursive subroutine ConstructLinkedSolvers(Solver, lvl) ! ------------------------------------- ! if (lvl > 1) then - allocate (Solver % Child) + allocate (Solver % Child) ! TODO: Remove from here!!! Solver % Child % Parent => Solver call ConstructLinkedSolvers(Solver % Child, lvl - 1) @@ -444,17 +444,18 @@ recursive subroutine ConstructFASInOneDirection(Solver, lvl, controlVariables,Di call Child_p % MGStorage(Dir) % p_sem % mesh % storage % PointStorage -!~ Child_p% MGStorage(Dir)% p_sem% mesh% IBM% active = Solver% MGStorage(Dir)% p_sem% mesh% IBM% active -!~ if( Child_p% MGStorage(Dir)% p_sem% mesh% IBM% active ) then -!~ Child_p% MGStorage(Dir)% p_sem% mesh% IBM% lvl = lvl -!~ call Child_p% MGStorage(Dir)% p_sem% mesh% IBM% copyKDtree( Solver% MGStorage(Dir)% p_sem% mesh% IBM% root ) +!~ Child_p % MGStorage(Dir) % p_sem % mesh % IBM % active = .false. + Child_p% MGStorage(Dir)% p_sem% mesh% IBM% active = Solver% MGStorage(Dir)% p_sem% mesh% IBM% active + if( Child_p% MGStorage(Dir)% p_sem% mesh% IBM% active ) then + Child_p% MGStorage(Dir)% p_sem% mesh% IBM% lvl = lvl + call Child_p% MGStorage(Dir)% p_sem% mesh% IBM% copyKDtree( Solver% MGStorage(Dir)% p_sem% mesh% IBM% root ) -!~ call Child_p% MGStorage(Dir)% p_sem% mesh% IBM% build( Child_p% MGStorage(Dir)% p_sem% mesh% elements, & -!~ Child_p% MGStorage(Dir)% p_sem% mesh% no_of_elements, & -!~ Child_p% MGStorage(Dir)% p_sem% mesh% NDOF, & -!~ Child_p% MGStorage(Dir)% p_sem% mesh% child ) + call Child_p% MGStorage(Dir)% p_sem% mesh% IBM% build( Child_p% MGStorage(Dir)% p_sem% mesh% elements, & + Child_p% MGStorage(Dir)% p_sem% mesh% no_of_elements, & + Child_p% MGStorage(Dir)% p_sem% mesh% NDOF, & + Child_p% MGStorage(Dir)% p_sem% mesh% child ) -!~ end if + end if !New> @@ -859,4 +860,4 @@ end subroutine FinalizeDestruction !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! -end module AnisFASMultigridClass +end module AnisFASMultigridClass \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/BDFTimeIntegrator.f90 b/Solver/src/libs/timeintegrator/BDFTimeIntegrator.f90 index c987c7e73..39e28867e 100644 --- a/Solver/src/libs/timeintegrator/BDFTimeIntegrator.f90 +++ b/Solver/src/libs/timeintegrator/BDFTimeIntegrator.f90 @@ -502,11 +502,13 @@ subroutine UpdateNewtonSol(sem, linsolver) end subroutine UpdateNewtonSol ! !//////////////////////////////////////////////////////////////////////////////////////////// +! TODO: Move from here.... subroutine WriteEigenFiles(Mat,sem,FileName) IMPLICIT NONE ! ! ----------------------------------------------------------- ! Writes files for performing eigenvalue analysis using TAUev +! This only works for isotropic order meshes.........................TODO: Change that ! ----------------------------------------------------------- ! type(csrMat_t) :: Mat !< Jacobian matrix @@ -629,4 +631,4 @@ end subroutine BDFInitialiseQ ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! -END MODULE BDFTimeIntegrator +END MODULE BDFTimeIntegrator \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/ExplicitMethods.f90 b/Solver/src/libs/timeintegrator/ExplicitMethods.f90 index 33b67b920..053db195a 100644 --- a/Solver/src/libs/timeintegrator/ExplicitMethods.f90 +++ b/Solver/src/libs/timeintegrator/ExplicitMethods.f90 @@ -68,6 +68,22 @@ SUBROUTINE TakeRK3Step( mesh, particles, t, deltaT, ComputeTimeDerivative, dt_ve INTEGER :: i, j, k, id if (present(dt_vec)) then + if( mesh% IBM% active ) then + if( mesh% IBM% semiImplicit ) then +!$omp parallel do schedule(runtime) + do id = 1, SIZE( mesh % elements ) + if( mesh% IBM% TimePenal ) mesh% IBM% penalization(id) = 0.5_RP*dt_vec(id) + do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) + if( mesh% elements(id)% isInsideBody(i,j,k) ) then + associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) + call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) + end associate + end if + end do; end do; end do + end do +!$omp end parallel do + end if + end if do k = 1,3 tk = t + b(k)*deltaT @@ -92,8 +108,41 @@ SUBROUTINE TakeRK3Step( mesh, particles, t, deltaT, ComputeTimeDerivative, dt_ve end do ! k + if( mesh% IBM% active ) then + if( mesh% IBM% semiImplicit ) then +!$omp parallel do schedule(runtime) + do id = 1, SIZE( mesh % elements ) + do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) + if( mesh% elements(id)% isInsideBody(i,j,k) ) then + associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) + call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) + end associate + end if + end do; end do; end do + end do +!$omp end parallel do + end if + end if + else + if( mesh% IBM% active ) then + if( mesh% IBM% semiImplicit ) then + if( mesh% IBM% TimePenal ) mesh% IBM% penalization = 0.5_RP*deltaT +!$omp parallel do schedule(runtime) + do id = 1, SIZE( mesh % elements ) + do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) + if( mesh% elements(id)% isInsideBody(i,j,k) ) then + associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) + call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) + end associate + end if + end do; end do; end do + end do +!$omp end parallel do + end if + end if + do k = 1,3 tk = t + b(k)*deltaT call ComputeTimeDerivative( mesh, particles, tk, CTD_IGNORE_MODE) @@ -117,6 +166,21 @@ SUBROUTINE TakeRK3Step( mesh, particles, t, deltaT, ComputeTimeDerivative, dt_ve end do ! k + if( mesh% IBM% active ) then + if( mesh% IBM% semiImplicit ) then +!$omp parallel do schedule(runtime) + do id = 1, SIZE( mesh % elements ) + do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) + if( mesh% elements(id)% isInsideBody(i,j,k) ) then + associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) + call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) + end associate + end if + end do; end do; end do + end do +!$omp end parallel do + end if + end if end if ! ! To obtain the updated residuals @@ -158,6 +222,23 @@ SUBROUTINE TakeRK5Step( mesh, particles, t, deltaT, ComputeTimeDerivative , dt_v if (present(dt_vec)) then + + if( mesh% IBM% active ) then + if( mesh% IBM% semiImplicit ) then +!$omp parallel do schedule(runtime) + do id = 1, SIZE( mesh % elements ) + if( mesh% IBM% TimePenal ) mesh% IBM% penalization(id) = 0.5_RP*dt_vec(id) + do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) + if( mesh% elements(id)% isInsideBody(i,j,k) ) then + associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) + call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) + end associate + end if + end do; end do; end do + end do +!$omp end parallel do + end if + end if DO k = 1, N_STAGES @@ -182,8 +263,41 @@ SUBROUTINE TakeRK5Step( mesh, particles, t, deltaT, ComputeTimeDerivative , dt_v !$omp end parallel do END DO + + if( mesh% IBM% active ) then + if( mesh% IBM% semiImplicit ) then +!$omp parallel do schedule(runtime) + do id = 1, SIZE( mesh % elements ) + do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) + if( mesh% elements(id)% isInsideBody(i,j,k) ) then + associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) + call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) + end associate + end if + end do; end do; end do + end do +!$omp end parallel do + end if + end if else + + if( mesh% IBM% active ) then + if( mesh% IBM% semiImplicit ) then + if( mesh% IBM% TimePenal ) mesh% IBM% penalization = 0.5_RP*deltaT +!$omp parallel do schedule(runtime) + do id = 1, SIZE( mesh % elements ) + do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) + if( mesh% elements(id)% isInsideBody(i,j,k) ) then + associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) + call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) + end associate + end if + end do; end do; end do + end do +!$omp end parallel do + end if + end if DO k = 1, N_STAGES @@ -208,6 +322,22 @@ SUBROUTINE TakeRK5Step( mesh, particles, t, deltaT, ComputeTimeDerivative , dt_v !$omp end parallel do END DO + + if( mesh% IBM% active ) then + if( mesh% IBM% semiImplicit ) then +!$omp parallel do schedule(runtime) + do id = 1, SIZE( mesh % elements ) + do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) + if( mesh% elements(id)% isInsideBody(i,j,k) ) then + associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) + call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) + end associate + end if + end do; end do; end do + end do +!$omp end parallel do + end if + end if end if @@ -258,7 +388,7 @@ SUBROUTINE TakeExplicitEulerStep( mesh, particles, t, deltaT, ComputeTimeDerivat else !$omp parallel do schedule(runtime) DO id = 1, SIZE( mesh % elements ) - mesh % elements(id) % storage % Q = mesh % elements(id) % storage % Q + deltaT*mesh % elements(id) % storage % QDot + mesh % elements(id) % storage % Q = mesh % elements(id) % storage % Q + deltaT*mesh % elements(id) % storage % QDot END DO !$omp end parallel do end if @@ -469,9 +599,26 @@ SUBROUTINE TakeRKOptStep( mesh, particles, t, deltaT, ComputeTimeDerivative , N_ a = Am(N_STAGES-1,1:N_STAGES) b = Bm(N_STAGES-1,1:N_STAGES) - tk = t + deltaT - + tk = t + deltaT + if (present(dt_vec)) then + + if( mesh% IBM% active ) then + if( mesh% IBM% semiImplicit ) then +!$omp parallel do schedule(runtime) + do id = 1, SIZE( mesh % elements ) + if( mesh% IBM% TimePenal ) mesh% IBM% penalization(id) = 0.5_RP*dt_vec(id) + do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) + if( mesh% elements(id)% isInsideBody(i,j,k) ) then + associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) + call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) + end associate + end if + end do; end do; end do + end do +!$omp end parallel do + end if + end if DO k = 1, N_STAGES @@ -495,8 +642,41 @@ SUBROUTINE TakeRKOptStep( mesh, particles, t, deltaT, ComputeTimeDerivative , N_ !$omp end parallel do END DO + + if( mesh% IBM% active ) then + if( mesh% IBM% semiImplicit ) then +!$omp parallel do schedule(runtime) + do id = 1, SIZE( mesh % elements ) + do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) + if( mesh% elements(id)% isInsideBody(i,j,k) ) then + associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) + call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) + end associate + end if + end do; end do; end do + end do +!$omp end parallel do + end if + end if else + + if( mesh% IBM% active ) then + if( mesh% IBM% semiImplicit ) then + if( mesh% IBM% TimePenal ) mesh% IBM% penalization = 0.5_RP*deltaT +!$omp parallel do schedule(runtime) + do id = 1, SIZE( mesh % elements ) + do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) + if( mesh% elements(id)% isInsideBody(i,j,k) ) then + associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) + call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) + end associate + end if + end do; end do; end do + end do +!$omp end parallel do + end if + end if DO k = 1, N_STAGES @@ -521,6 +701,22 @@ SUBROUTINE TakeRKOptStep( mesh, particles, t, deltaT, ComputeTimeDerivative , N_ END DO + if( mesh% IBM% active ) then + if( mesh% IBM% semiImplicit ) then +!$omp parallel do schedule(runtime) + do id = 1, SIZE( mesh % elements ) + do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) + if( mesh% elements(id)% isInsideBody(i,j,k) ) then + associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) + call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) + end associate + end if + end do; end do; end do + end do +!$omp end parallel do + end if + end if + end if call checkForNan(mesh, t) @@ -588,4 +784,4 @@ End Subroutine checkForNan ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! -END MODULE ExplicitMethods +END MODULE ExplicitMethods \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/FASMultigridClass.f90 b/Solver/src/libs/timeintegrator/FASMultigridClass.f90 index 34f1f62ee..46b750408 100644 --- a/Solver/src/libs/timeintegrator/FASMultigridClass.f90 +++ b/Solver/src/libs/timeintegrator/FASMultigridClass.f90 @@ -1952,4 +1952,4 @@ end subroutine FAS_movingIBM ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! -end module FASMultigridClass +end module FASMultigridClass \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/IMEXMethods.f90 b/Solver/src/libs/timeintegrator/IMEXMethods.f90 index 31c675756..5d318eb70 100644 --- a/Solver/src/libs/timeintegrator/IMEXMethods.f90 +++ b/Solver/src/libs/timeintegrator/IMEXMethods.f90 @@ -106,6 +106,9 @@ SUBROUTINE TakeIMEXEulerStep_CH (sem, t , dt , controlVariables, ComputeTimeDeri ENDIF time = t + +! TODO do i need this? + !CALL sem % GetQ(U_n) !stores sem%mesh%elements(:)% storage % Q in Vector U_n ! ! Compute the non linear time derivative ! -------------------------------------- @@ -516,4 +519,4 @@ end subroutine Enable_CTD_AFTER_STEPS_IMEX ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! -END MODULE IMEXMethods +END MODULE IMEXMethods \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/LinearSolvers/GenericLinSolverClass.f90 b/Solver/src/libs/timeintegrator/LinearSolvers/GenericLinSolverClass.f90 index 17057ce37..1016028c5 100644 --- a/Solver/src/libs/timeintegrator/LinearSolvers/GenericLinSolverClass.f90 +++ b/Solver/src/libs/timeintegrator/LinearSolvers/GenericLinSolverClass.f90 @@ -65,7 +65,7 @@ function MatrixShift_FCN(dt) result(Ashift) end function MatrixShift_FCN end interface - procedure(MatrixShift_FCN), pointer :: MatrixShift => Default_MatrixShift + procedure(MatrixShift_FCN), pointer :: MatrixShift => Default_MatrixShift ! TODO?: move to GenericLinSolver_t to allow different MatrixShifts for different solvers? contains ! @@ -94,7 +94,7 @@ subroutine Construct(this, DimPrb, globalDimPrb, nEqn, controlVariables, sem, Ma integer , intent(in) :: nEqn type(FTValueDictionary) , intent(in), optional :: controlVariables type(DGSem), target , optional :: sem - procedure(MatrixShift_FCN) :: MatrixShiftFunc + procedure(MatrixShift_FCN) :: MatrixShiftFunc ! TODO: Make this optional !--------------------------------------------------------------------- if (globalDimPrb < DimPrb) then ! This never makes sense @@ -276,4 +276,4 @@ end function ComputeANextStep ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! -end module GenericLinSolverClass +end module GenericLinSolverClass \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/LinearSolvers/IterativeSolverClass.f90 b/Solver/src/libs/timeintegrator/LinearSolvers/IterativeSolverClass.f90 index 6b8845407..5a5cf6e9b 100644 --- a/Solver/src/libs/timeintegrator/LinearSolvers/IterativeSolverClass.f90 +++ b/Solver/src/libs/timeintegrator/LinearSolvers/IterativeSolverClass.f90 @@ -546,4 +546,4 @@ END SUBROUTINE ComputeBlockPreco ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! -END MODULE IterativeSolverClass +END MODULE IterativeSolverClass \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/LinearSolvers/LinearMultigridSolverClass.f90 b/Solver/src/libs/timeintegrator/LinearSolvers/LinearMultigridSolverClass.f90 index 317a54e9b..8e8b8afa5 100644 --- a/Solver/src/libs/timeintegrator/LinearSolvers/LinearMultigridSolverClass.f90 +++ b/Solver/src/libs/timeintegrator/LinearSolvers/LinearMultigridSolverClass.f90 @@ -10,6 +10,15 @@ ! define levels y ... ! define levels z ... ! ---------------- +! TODO: +! ---------------- +! 1. Deallacotion: +! a. DGSem on each level +! b. Jac on each level +! c. Prol/Rest operators +! 2. Generalize MG to operate on nonconforming p-mesh (elements with different pol. orders) +! 3. Add more smoothers - so far only diag-jacobi implemented. +! ---------------- ! !////////////////////////////////////////////////////// module LinearMultigridSolverClass @@ -257,7 +266,7 @@ subroutine MG_Construct(this,DimPrb,globalDimPrb,nEqn,controlVariables,sem,Matri integer , intent(in) :: nEqn type(FTValueDictionary) , intent(in), optional :: controlVariables type(DGSem), target , optional :: sem - procedure(MatrixShift_FCN) :: MatrixShiftFunc + procedure(MatrixShift_FCN) :: MatrixShiftFunc ! TODO: Make this optional procedure(ComputeTimeDerivative_f) :: ComputeTimeDerivative !-----Local-Variables----------------------------------------------------- character(len=LINE_LENGTH) :: pc @@ -308,7 +317,7 @@ subroutine MG_Construct(this,DimPrb,globalDimPrb,nEqn,controlVariables,sem,Matri read(pc(i:i),'(i1)') MG_levels_z(i) end do else - ERROR stop ':: FIXME: Default multigrid levels NOT defined.' + ERROR stop ':: FIXME: Default multigrid levels NOT defined.' ! TODO end if ! ------------------------------------------------------------------ @@ -1121,6 +1130,7 @@ end subroutine MG_JacVec ! subroutine MG_PrecVec(this) ! --------------------------------------------------------- +! TODO. ! --------------------------------------------------------- implicit none !-----Arguments----------------------------------------------------------- @@ -2621,4 +2631,4 @@ end subroutine ComputeILU ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! -end module LinearMultigridSolverClass +end module LinearMultigridSolverClass \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/LinearSolvers/LinearSolverClass.f90 b/Solver/src/libs/timeintegrator/LinearSolvers/LinearSolverClass.f90 index 5f1bad546..7e1064476 100644 --- a/Solver/src/libs/timeintegrator/LinearSolvers/LinearSolverClass.f90 +++ b/Solver/src/libs/timeintegrator/LinearSolvers/LinearSolverClass.f90 @@ -12,4 +12,4 @@ module LinearSolverClass use MatrixFreeSmootherClass use MatrixFreeGMRESClass implicit none -end module LinearSolverClass +end module LinearSolverClass \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/LinearSolvers/MKLPardisoSolverClass.f90 b/Solver/src/libs/timeintegrator/LinearSolvers/MKLPardisoSolverClass.f90 index 12bf34323..91dec81a7 100644 --- a/Solver/src/libs/timeintegrator/LinearSolvers/MKLPardisoSolverClass.f90 +++ b/Solver/src/libs/timeintegrator/LinearSolvers/MKLPardisoSolverClass.f90 @@ -117,6 +117,7 @@ subroutine ConstructMKLContext(this,DimPrb, globalDimPrb, nEqn,controlVariables, if (MPI_Process % doMPIRootAction) then ERROR stop 'MKLPardisoSolver_t cannot be used as a distributed solver' + !TODO: Implement cluster_sparse_solver (MKL) or use the actual pardiso solver (http://www.pardiso-project.org/) end if if ( present(sem) ) then @@ -646,4 +647,4 @@ subroutine MKL_SetJacobian(this,Matrix) end select end subroutine MKL_SetJacobian -END MODULE MKLPardisoSolverClass +END MODULE MKLPardisoSolverClass \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/LinearSolvers/MatrixFreeGMRESClass.f90 b/Solver/src/libs/timeintegrator/LinearSolvers/MatrixFreeGMRESClass.f90 index 04c9f8853..2ed65143c 100644 --- a/Solver/src/libs/timeintegrator/LinearSolvers/MatrixFreeGMRESClass.f90 +++ b/Solver/src/libs/timeintegrator/LinearSolvers/MatrixFreeGMRESClass.f90 @@ -423,7 +423,7 @@ SUBROUTINE SetOperatorDt(this, dt) ! Modify for matrix peconditioners... REAL(KIND=RP) , INTENT(IN) :: dt !------------------------------------------------ REAL(KIND=RP) :: shift - + this % dtsolve = dt if (this % Preconditioner == PC_BlockJacobi) then @@ -442,13 +442,13 @@ SUBROUTINE ReSetOperatorDt(this, dt) ! Modify for matrix peconditioners... CLASS(MatFreeGMRES_t), INTENT(INOUT) :: this REAL(KIND=RP) , INTENT(IN) :: dt !------------------------------------------------ - REAL(KIND=RP) :: Matrix_Shift + REAL(KIND=RP) :: shift this % dtsolve = dt if (this % Preconditioner == PC_BlockJacobi) then - Matrix_Shift = MatrixShift(dt) - call this % BlockA % shift( Matrix_Shift ) + shift = MatrixShift(dt) + call this % BlockA % shift( shift ) call this % BlockA % FactorizeBlocks_LU(this % BlockPreco) end if @@ -705,7 +705,7 @@ subroutine PC_GMRES_Ax(this,v, Pv, ComputeTimeDerivative) CALL this % PCSolver % SetRHS(v) CALL this % PCSolver % Solve(NCONS, NGRAD, ComputeTimeDerivative,time = this % timesolve, dt = this % dtsolve) - CALL this % PCSolver % Settol(1e-1_RP) + CALL this % PCSolver % Settol(1e-1_RP) ! TODO: aquí habrá que poner algo más elaborado Pv = this % PCSolver % x ! n_preco_iter = n_preco_iter + PCSolver%niter ! Not really needed @@ -787,7 +787,7 @@ FUNCTION p_F(this,u, computeTimeDerivative) RESULT(F) F = this % p_sem % mesh % storage % Qdot ! Restore original Q - this % p_sem % mesh % storage % Q = u_p + this % p_sem % mesh % storage % Q = u_p ! TODO: this step can be avoided if Ur is not read in the "child" GMRES (the preconditioner) call this % p_sem % mesh % storage % global2LocalQ END FUNCTION p_F ! @@ -809,4 +809,4 @@ subroutine GMRES_SetMatrixAction(this,MatrixAx) end subroutine GMRES_SetMatrixAction -end module MatrixFreeGMRESClass +end module MatrixFreeGMRESClass \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/LinearSolvers/MatrixFreeSmootherClass.f90 b/Solver/src/libs/timeintegrator/LinearSolvers/MatrixFreeSmootherClass.f90 index 8a7c705b7..7646a970d 100644 --- a/Solver/src/libs/timeintegrator/LinearSolvers/MatrixFreeSmootherClass.f90 +++ b/Solver/src/libs/timeintegrator/LinearSolvers/MatrixFreeSmootherClass.f90 @@ -576,4 +576,4 @@ SUBROUTINE ComputeBlockPreco(this) !$omp end parallel do END SUBROUTINE ComputeBlockPreco -END MODULE MatrixFreeSmootherClass +END MODULE MatrixFreeSmootherClass \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/LinearSolvers/MultigridSolverClass.f90 b/Solver/src/libs/timeintegrator/LinearSolvers/MultigridSolverClass.f90 index 9f14d6ff8..36fd79f4c 100644 --- a/Solver/src/libs/timeintegrator/LinearSolvers/MultigridSolverClass.f90 +++ b/Solver/src/libs/timeintegrator/LinearSolvers/MultigridSolverClass.f90 @@ -180,7 +180,7 @@ RECURSIVE SUBROUTINE RecursiveConstructor(Solver, N1x, N1y, N1z, lvl, controlVar N2xMAX = N1xMAX - deltaN N2yMAX = N1yMAX - deltaN N2zMAX = N1zMAX - deltaN - IF (N2xMAX < 0) N2xMAX = 0 + IF (N2xMAX < 0) N2xMAX = 0 ! TODO: Complete for Lobatto quadrature (max order = 1) IF (N2yMAX < 0) N2yMAX = 0 IF (N2zMAX < 0) N2zMAX = 0 @@ -196,7 +196,7 @@ RECURSIVE SUBROUTINE RecursiveConstructor(Solver, N1x, N1y, N1z, lvl, controlVar DO k=1, nelem CALL CreateInterpolationOperators(Solver % Restriction, Child_p % Prolongation, & N1x(k),N1y(k),N1z(k), & - N2x(k),N2y(k),N2z(k), DeltaN) + N2x(k),N2y(k),N2z(k), DeltaN) ! TODO: Add lobatto flag if required DimPrb = DimPrb + NCONS * (N2x(k) + 1) * (N2y(k) + 1) * (N2z(k) + 1) END DO @@ -719,4 +719,4 @@ FUNCTION InterpolateSol(this,Interp,U1) RESULT(U2) END FUNCTION InterpolateSol !SUBROUTINE InterpolateJac -END MODULE MultigridSolverClass +END MODULE MultigridSolverClass \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/LinearSolvers/PetscSolverClass.f90 b/Solver/src/libs/timeintegrator/LinearSolvers/PetscSolverClass.f90 index 060e1834a..2807af73b 100644 --- a/Solver/src/libs/timeintegrator/LinearSolvers/PetscSolverClass.f90 +++ b/Solver/src/libs/timeintegrator/LinearSolvers/PetscSolverClass.f90 @@ -508,7 +508,7 @@ subroutine PETSc_GetXValue(this, irow, x_i) i = irow-1 - call VecGetValues(this%x, 1, i, x, ierr) + call VecGetValues(this%x, 1, i, x, ierr) ! TODO: Fix problem here? call CheckPetscErr(ierr, 'error in VecGetValue') x_i = x(1) @@ -554,6 +554,7 @@ function PETSc_GetX(this) result(x) !~ call VecGetValues(this%x,this % DimPrb ,irow,x, ierr) ; call CheckPetscErr(ierr, 'error in VecGetValue') !~ end if + ! TODO: Check if this works for non-consecutive (in the numbering) elements in a single partition call VecGetArrayReadF90(this%x,xout,ierr) x = xout call VecRestoreArrayReadF90(this%x,xout,ierr) @@ -661,4 +662,4 @@ function PETSc_GetRnorm(this) RESULT(rnorm) stop ':: PETSc is not linked correctly' #endif end function PETSc_GetRnorm -end module PetscSolverClass +end module PetscSolverClass \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/LinearSolvers/StaticCondensationSolverClass.f90 b/Solver/src/libs/timeintegrator/LinearSolvers/StaticCondensationSolverClass.f90 index 960959b70..c98ecf615 100644 --- a/Solver/src/libs/timeintegrator/LinearSolvers/StaticCondensationSolverClass.f90 +++ b/Solver/src/libs/timeintegrator/LinearSolvers/StaticCondensationSolverClass.f90 @@ -115,6 +115,8 @@ subroutine SCS_construct(this,DimPrb, globalDimPrb, nEqn,controlVariables,sem,Ma ! if (.not. present(controlVariables)) ERROR stop 'StaticCondSolver_t needs controlVariables' if (.not. present(sem)) ERROR stop 'StaticCondSolver_t needs DGSem' + + ! TODO: Add conformity check? ! ! Gauss-Lobatto check ! ------------------- @@ -694,4 +696,4 @@ function MatrixAction(x) result(v) v = Current_Solver % MatrixAction(x) end function MatrixAction -end module StaticCondensationSolverClass +end module StaticCondensationSolverClass \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/Makefile b/Solver/src/libs/timeintegrator/Makefile index de6905894..4fe04f02f 100644 --- a/Solver/src/libs/timeintegrator/Makefile +++ b/Solver/src/libs/timeintegrator/Makefile @@ -283,4 +283,4 @@ clean: FORCE ############################################# # Dummy procedure to force a rule # ############################################# -FORCE: +FORCE: \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/MultiTauEstimationClass.f90 b/Solver/src/libs/timeintegrator/MultiTauEstimationClass.f90 index 917d36a0f..21de3e534 100644 --- a/Solver/src/libs/timeintegrator/MultiTauEstimationClass.f90 +++ b/Solver/src/libs/timeintegrator/MultiTauEstimationClass.f90 @@ -379,4 +379,4 @@ end function MultiTauEstimationIsDefined ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! -end module MultiTauEstimationClass +end module MultiTauEstimationClass \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/MultigridTypes.f90 b/Solver/src/libs/timeintegrator/MultigridTypes.f90 index e1ddef4d2..1c2479b50 100644 --- a/Solver/src/libs/timeintegrator/MultigridTypes.f90 +++ b/Solver/src/libs/timeintegrator/MultigridTypes.f90 @@ -224,4 +224,4 @@ end subroutine CFLRamp ! !///////////////////////////////////////////////////////////////////////////////////////////////// ! -end module MultigridTypes +end module MultigridTypes \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/RosenbrockTimeIntegrator.f90 b/Solver/src/libs/timeintegrator/RosenbrockTimeIntegrator.f90 index 90015db61..67a003eb0 100644 --- a/Solver/src/libs/timeintegrator/RosenbrockTimeIntegrator.f90 +++ b/Solver/src/libs/timeintegrator/RosenbrockTimeIntegrator.f90 @@ -269,4 +269,4 @@ end function Rosenbrock_MatrixShift ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! -end module RosenbrockTimeIntegrator +end module RosenbrockTimeIntegrator \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/TimeIntegrator.f90 b/Solver/src/libs/timeintegrator/TimeIntegrator.f90 index fd4a6085d..db6c62cf9 100644 --- a/Solver/src/libs/timeintegrator/TimeIntegrator.f90 +++ b/Solver/src/libs/timeintegrator/TimeIntegrator.f90 @@ -359,7 +359,6 @@ subroutine IntegrateInTime( self, sem, controlVariables, monitors, ComputeTimeDe ! Read Control variables ! ---------------------- ! - IF (controlVariables % containsKey(TIME_INTEGRATION_KEY)) THEN TimeIntegration = controlVariables % StringValueForKey(TIME_INTEGRATION_KEY,LINE_LENGTH) ELSE ! Default value @@ -398,7 +397,6 @@ subroutine IntegrateInTime( self, sem, controlVariables, monitors, ComputeTimeDe ! Set up mask's coefficient for IBM ! ---------------------------------- ! - if( sem % mesh% IBM% active .and. sem % mesh% IBM% TimePenal ) then if ( self % Compute_dt ) then call MaxTimeStep( self=sem, cfl=self % cfl, dcfl=self % dcfl, MaxDt= dt ) @@ -413,6 +411,7 @@ subroutine IntegrateInTime( self, sem, controlVariables, monitors, ComputeTimeDe sem % mesh% IBM% penalization = sem % mesh% IBM% eta #endif end if + ! ! ------------------ ! Configure restarts @@ -493,6 +492,7 @@ subroutine IntegrateInTime( self, sem, controlVariables, monitors, ComputeTimeDe ! ---------------- ! DO k = sem % numberOfTimeSteps, self % initial_iter + self % numTimeSteps-1 + ! ! CFL-bounded time step ! --------------------- @@ -504,6 +504,7 @@ subroutine IntegrateInTime( self, sem, controlVariables, monitors, ComputeTimeDe ! ----------------- dt = self % CorrectDt(t,self % dt) + ! ! Set penalization term for IBM ! ----------------------------- @@ -536,7 +537,6 @@ subroutine IntegrateInTime( self, sem, controlVariables, monitors, ComputeTimeDe ! ! Perform time step ! ----------------- - SELECT CASE (TimeIntegration) CASE (IMPLICIT_SOLVER) call BDFSolver % TakeStep (sem, t , dt , ComputeTimeDerivative) @@ -560,10 +560,10 @@ subroutine IntegrateInTime( self, sem, controlVariables, monitors, ComputeTimeDe case (IMEX_SOLVER) call TakeIMEXStep(sem, t, dt, controlVariables, computeTimeDerivative) END SELECT + #if defined(NAVIERSTOKES) if(ActuatorLineFlag) call farm % WriteFarmForces(t) #endif - ! ! Compute the new time ! -------------------- @@ -626,8 +626,8 @@ subroutine IntegrateInTime( self, sem, controlVariables, monitors, ComputeTimeDe endif -#endif +#endif ! ! Print monitors ! -------------- diff --git a/Solver/src/libs/timeintegrator/TimeIntegratorDefinitions.f90 b/Solver/src/libs/timeintegrator/TimeIntegratorDefinitions.f90 index b37b1e786..3ec745d7c 100644 --- a/Solver/src/libs/timeintegrator/TimeIntegratorDefinitions.f90 +++ b/Solver/src/libs/timeintegrator/TimeIntegratorDefinitions.f90 @@ -127,4 +127,4 @@ subroutine ComputePseudoTimeDerivative(mesh, tk, global_dt) ! !//////////////////////////////////////////////////////////////////////// ! -end module TimeIntegratorDefinitions +end module TimeIntegratorDefinitions \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/TruncationErrorClass.f90 b/Solver/src/libs/timeintegrator/TruncationErrorClass.f90 index ed5230e8c..3e21ea873 100644 --- a/Solver/src/libs/timeintegrator/TruncationErrorClass.f90 +++ b/Solver/src/libs/timeintegrator/TruncationErrorClass.f90 @@ -736,4 +736,4 @@ subroutine PlotTruncationError(mesh,Tau,IsolTau) close(fd) end subroutine PlotTruncationError -end module TruncationErrorClass +end module TruncationErrorClass \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/pAdaptationClass.f90 b/Solver/src/libs/timeintegrator/pAdaptationClass.f90 index e9bc569e8..b905d63c5 100644 --- a/Solver/src/libs/timeintegrator/pAdaptationClass.f90 +++ b/Solver/src/libs/timeintegrator/pAdaptationClass.f90 @@ -6,7 +6,7 @@ ! truncation error estimations (TruncationErrorClass.f90), but other ! strategies can be added. ! -> The current implementation is only valid for shared memory -! parallelization (OpenMP). +! parallelization (OpenMP). TODO: Update to MPI. ! !//////////////////////////////////////////////////////////////////////// ! @@ -1269,7 +1269,7 @@ subroutine pAdaptation_pAdaptTE_SelectElemPolorders (this, e, NNew, error, warni end do end if - ! If the truncation error behaves as expected, continue, otherwise skip steps 2-3-4 and select maximum N. + ! If the truncation error behaves as expected, continue, otherwise skip steps 2-3-4 and select maximum N. TODO: Change? extrapolation can still be done in some directions... if (all(error < 1)) then ! ! 2. Generate outer map @@ -1711,4 +1711,4 @@ function RemainingIndex(a) RESULT(b) end function -end module pAdaptationClass +end module pAdaptationClass \ No newline at end of file From a2c648059af9a224538af5025c5e8e34900687f7 Mon Sep 17 00:00:00 2001 From: Stefano Colombo Date: Tue, 31 Jan 2023 21:54:12 +0100 Subject: [PATCH 03/15] update tests --- .../TJokisaari/SETUP/ProblemFile.f90 | 2 +- .../outdated/Bubble/SETUP/ProblemFile.f90 | 2 +- .../outdated/Pipe/SETUP/ProblemFile.f90 | 2 +- .../RisingBubble/SETUP/ProblemFile.f90 | 2 +- .../SETUP/ProblemFile.f90 | 2 +- .../FacePatches/src/FacePatchTests.f90 | 2 +- .../FacePatches/src/FacePatchTestsMain.f90 | 2 +- .../HexMappings/src/HexMappingsTestsMain.f90 | 2 +- .../HexMappings/src/TransfiniteMapsTests.f90 | 2 +- .../Components/HexMesh/src/HexMeshTests.f90 | 2 +- .../HexMesh/src/HexmeshTestsMain.f90 | 2 +- .../Components/HexMesh/src/MeshFileTest.f90 | 2 +- .../src/MeshConsistencySetup.f90 | 2 +- .../src/MeshConsistencyTests.f90 | 2 +- .../Components/MeshConsistency/src/main.f90 | 2 +- .../NodalStorage/src/NodalStorageTests.f90 | 2 +- .../src/NodalStorageTestsMain.f90 | 2 +- .../BoxAroundCircle/SETUP/ProblemFile.f90 | 2 +- .../SETUP/ProblemFile.f90 | 2 +- .../SETUP/ProblemFile.f90 | 2 +- .../test/Euler/Diffuser/SETUP/ProblemFile.f90 | 2 +- Solver/test/Euler/JFNK/SETUP/ProblemFile.f90 | 2 +- .../TaylorGreenKEPEC/SETUP/ProblemFile.f90 | 2 +- .../Euler/UniformFlow/SETUP/ProblemFile.f90 | 2 +- .../outdated/Benchmark/SETUP/ProblemFile.f90 | 2 +- .../PeriodicFlow/SETUP/ProblemFile.f90 | 2 +- .../outdated/TestEulerJacobians/Makefile | 19 +++++++++---------- .../outdated/TestEulerJacobians/src/main.f90 | 2 +- .../UniformFlowPETSc/SETUP/ProblemFile.f90 | 2 +- .../UniformFlowPETSc/src/ProblemFile.f90 | 2 +- .../VortexTransport2D/SETUP/ProblemFile.f90 | 2 +- .../Convergence/SETUP/ProblemFile.f90 | 2 +- .../Kovasznay/SETUP/ProblemFile.f90 | 2 +- .../LidDrivenCavity/SETUP/ProblemFile.f90 | 2 +- .../RayleighTaylor/SETUP/ProblemFile.f90 | 2 +- .../TaylorGreen/SETUP/ProblemFile.f90 | 2 +- .../outdated/Poiseuille/SETUP/ProblemFile.f90 | 2 +- .../Convergence/SETUP/ProblemFile.f90 | 2 +- .../SETUP/ProblemFile.f90 | 2 +- .../Multiphase/Pipe/SETUP/ProblemFile.f90 | 2 +- .../RisingBubble/SETUP/ProblemFile.f90 | 2 +- .../NavierStokes/BIRK5NumJac/Cylinder.control | 2 +- .../BIRK5NumJac/SETUP/ProblemFile.f90 | 2 +- .../Convergence/Convergence.control | 2 +- .../Convergence/SETUP/ProblemFile.f90 | 2 +- .../Convergence_energy/Convergence.control | 2 +- .../Convergence_energy/SETUP/ProblemFile.f90 | 2 +- .../Convergence_entropy/Convergence.control | 2 +- .../Convergence_entropy/SETUP/ProblemFile.f90 | 2 +- .../NavierStokes/Cylinder/Cylinder.control | 2 +- .../Cylinder/SETUP/ProblemFile.f90 | 2 +- .../CylinderAnisFAS/CylinderAnisFAS.control | 2 +- .../CylinderAnisFAS/SETUP/ProblemFile.f90 | 2 +- .../CylinderBR2/CylinderBR2.control | 2 +- .../CylinderBR2/SETUP/ProblemFile.f90 | 2 +- .../CylinderDifferentOrders.control | 2 +- .../SETUP/ProblemFile.f90 | 2 +- .../CylinderDucros/CylinderDucros.control | 2 +- .../CylinderDucros/SETUP/ProblemFile.f90 | 2 +- .../CylinderFAS/CylinderFAS.control | 2 +- .../CylinderFAS/SETUP/ProblemFile.f90 | 2 +- .../CylinderIP/CylinderIP.control | 2 +- .../CylinderIP/SETUP/ProblemFile.f90 | 2 +- .../CylinderIP_BDF2/CylinderIP_BDF2.control | 2 +- .../CylinderIP_BDF2/SETUP/ProblemFile.f90 | 2 +- .../CylinderLES/CylinderLES.control | 2 +- .../CylinderLES/SETUP/ProblemFile.f90 | 2 +- .../DualTimeStepping/DualTimeStepping.control | 2 +- .../DualTimeStepping/SETUP/ProblemFile.f90 | 2 +- .../EnergyConservingTest.control | 1 - .../SETUP/ProblemFile.f90 | 2 +- .../EntropyConservingTest.control | 2 +- .../SETUP/ProblemFile.f90 | 2 +- .../FlatPlateSA/FlatPlate.control | 2 +- .../FlatPlateSA/SETUP/ProblemFile.f90 | 2 +- .../ForwardFacingStepSVV/FFS_SVV.control | 2 +- .../SETUP/ProblemFile.f90 | 2 +- .../ManufacturedSolutionsSA/MSSA.control | 2 +- .../SETUP/ProblemFile.f90 | 2 +- .../NavierStokes/NACA0012/NACA0012.control | 2 +- .../NACA0012/SETUP/ProblemFile.f90 | 2 +- .../TaylorGreen/SETUP/ProblemFile.f90 | 2 +- .../TaylorGreen/TaylorGreen.control | 2 +- .../TaylorGreenKEPEC_IP/SETUP/ProblemFile.f90 | 2 +- .../TaylorGreenKEPEC_IP.control | 2 +- .../TaylorGreenKEP_BR2/SETUP/ProblemFile.f90 | 2 +- .../TaylorGreenKEP_BR2.control | 2 +- .../TaylorGreenSVVLES/SETUP/ProblemFile.f90 | 2 +- .../TaylorGreenSVVLES.control | 2 +- .../test/Particles/FreeFall/FreeFall.control | 2 +- .../Particles/FreeFall/RandomParticles.txt | 2 +- .../Particles/FreeFall/SETUP/ProblemFile.f90 | 2 +- .../BoundaryCondition.control | 2 +- .../SETUP/ProblemFile.f90 | 2 +- .../Pouransari/Pouransari_St0041.control | 2 +- .../Pouransari/SETUP/ProblemFile.f90 | 2 +- .../RadiationHeat/RadiationHeat.control | 2 +- .../RadiationHeat/RandomParticles.txt | 2 +- .../RadiationHeat/SETUP/ProblemFile.f90 | 2 +- 99 files changed, 106 insertions(+), 108 deletions(-) diff --git a/Solver/test/CahnHilliard/TJokisaari/SETUP/ProblemFile.f90 b/Solver/test/CahnHilliard/TJokisaari/SETUP/ProblemFile.f90 index 99296fae9..b935da9f0 100644 --- a/Solver/test/CahnHilliard/TJokisaari/SETUP/ProblemFile.f90 +++ b/Solver/test/CahnHilliard/TJokisaari/SETUP/ProblemFile.f90 @@ -374,4 +374,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/CahnHilliard/outdated/Bubble/SETUP/ProblemFile.f90 b/Solver/test/CahnHilliard/outdated/Bubble/SETUP/ProblemFile.f90 index e06ac60c4..0de46885b 100644 --- a/Solver/test/CahnHilliard/outdated/Bubble/SETUP/ProblemFile.f90 +++ b/Solver/test/CahnHilliard/outdated/Bubble/SETUP/ProblemFile.f90 @@ -346,4 +346,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/CahnHilliard/outdated/Pipe/SETUP/ProblemFile.f90 b/Solver/test/CahnHilliard/outdated/Pipe/SETUP/ProblemFile.f90 index 0bd0bf177..71442f73e 100644 --- a/Solver/test/CahnHilliard/outdated/Pipe/SETUP/ProblemFile.f90 +++ b/Solver/test/CahnHilliard/outdated/Pipe/SETUP/ProblemFile.f90 @@ -408,4 +408,4 @@ FUNCTION RandomNormal(mean,sigma) END FUNCTION RandomNormal - + \ No newline at end of file diff --git a/Solver/test/CahnHilliard/outdated/RisingBubble/SETUP/ProblemFile.f90 b/Solver/test/CahnHilliard/outdated/RisingBubble/SETUP/ProblemFile.f90 index a68e99a8a..0273aebd8 100644 --- a/Solver/test/CahnHilliard/outdated/RisingBubble/SETUP/ProblemFile.f90 +++ b/Solver/test/CahnHilliard/outdated/RisingBubble/SETUP/ProblemFile.f90 @@ -344,4 +344,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/CahnHilliard/outdated/SpinodalDecomposition/SETUP/ProblemFile.f90 b/Solver/test/CahnHilliard/outdated/SpinodalDecomposition/SETUP/ProblemFile.f90 index f66a6b3be..49f83cea0 100644 --- a/Solver/test/CahnHilliard/outdated/SpinodalDecomposition/SETUP/ProblemFile.f90 +++ b/Solver/test/CahnHilliard/outdated/SpinodalDecomposition/SETUP/ProblemFile.f90 @@ -300,4 +300,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/Components/FacePatches/src/FacePatchTests.f90 b/Solver/test/Components/FacePatches/src/FacePatchTests.f90 index b79ba78fc..217b2466d 100644 --- a/Solver/test/Components/FacePatches/src/FacePatchTests.f90 +++ b/Solver/test/Components/FacePatches/src/FacePatchTests.f90 @@ -352,4 +352,4 @@ SUBROUTINE sphericalFaceSurfaceGradient(u,v,grad) grad(2,2) = p8*SIN(theta)*COS(phi) grad(3,2) = -p8*SIN(phi) - END SUBROUTINE sphericalFaceSurfaceGradient + END SUBROUTINE sphericalFaceSurfaceGradient \ No newline at end of file diff --git a/Solver/test/Components/FacePatches/src/FacePatchTestsMain.f90 b/Solver/test/Components/FacePatches/src/FacePatchTestsMain.f90 index 30bdd17e2..b4f166da1 100644 --- a/Solver/test/Components/FacePatches/src/FacePatchTestsMain.f90 +++ b/Solver/test/Components/FacePatches/src/FacePatchTestsMain.f90 @@ -31,4 +31,4 @@ PROGRAM FacepatchTestsMain IF(numberOfFailures > 0) STOP 99 - END PROGRAM FacepatchTestsMain + END PROGRAM FacepatchTestsMain \ No newline at end of file diff --git a/Solver/test/Components/HexMappings/src/HexMappingsTestsMain.f90 b/Solver/test/Components/HexMappings/src/HexMappingsTestsMain.f90 index 964925d30..219864128 100644 --- a/Solver/test/Components/HexMappings/src/HexMappingsTestsMain.f90 +++ b/Solver/test/Components/HexMappings/src/HexMappingsTestsMain.f90 @@ -37,4 +37,4 @@ PROGRAM HexMappingsTests IF(numberOFFailures > 0) STOP 99 - END PROGRAM HexMappingsTests + END PROGRAM HexMappingsTests \ No newline at end of file diff --git a/Solver/test/Components/HexMappings/src/TransfiniteMapsTests.f90 b/Solver/test/Components/HexMappings/src/TransfiniteMapsTests.f90 index 655c30797..5550f4b93 100644 --- a/Solver/test/Components/HexMappings/src/TransfiniteMapsTests.f90 +++ b/Solver/test/Components/HexMappings/src/TransfiniteMapsTests.f90 @@ -1086,4 +1086,4 @@ SUBROUTINE plotWithMapper(mapper, fName) END DO END DO - END SUBROUTINE plotWithMapper + END SUBROUTINE plotWithMapper \ No newline at end of file diff --git a/Solver/test/Components/HexMesh/src/HexMeshTests.f90 b/Solver/test/Components/HexMesh/src/HexMeshTests.f90 index 42b7afe42..51125caab 100644 --- a/Solver/test/Components/HexMesh/src/HexMeshTests.f90 +++ b/Solver/test/Components/HexMesh/src/HexMeshTests.f90 @@ -543,4 +543,4 @@ SUBROUTINE cylindricalGeometry(u,x) x(2) = r*SIN(theta) x(3) = z - END SUBROUTINE cylindricalGeometry + END SUBROUTINE cylindricalGeometry \ No newline at end of file diff --git a/Solver/test/Components/HexMesh/src/HexmeshTestsMain.f90 b/Solver/test/Components/HexMesh/src/HexmeshTestsMain.f90 index 85483c9a4..41711fef7 100644 --- a/Solver/test/Components/HexMesh/src/HexmeshTestsMain.f90 +++ b/Solver/test/Components/HexMesh/src/HexmeshTestsMain.f90 @@ -39,4 +39,4 @@ PROGRAM HexMeshTestsMain call MPI_Process % Close - END PROGRAM HexMeshTestsMain + END PROGRAM HexMeshTestsMain \ No newline at end of file diff --git a/Solver/test/Components/HexMesh/src/MeshFileTest.f90 b/Solver/test/Components/HexMesh/src/MeshFileTest.f90 index d25b25858..b66423704 100644 --- a/Solver/test/Components/HexMesh/src/MeshFileTest.f90 +++ b/Solver/test/Components/HexMesh/src/MeshFileTest.f90 @@ -70,4 +70,4 @@ SUBROUTINE readMeshFilewithName(meshfileName) call DestructGlobalNodalStorage() call Finalize_InterpolationMatrices - END SUBROUTINE readMeshFilewithName + END SUBROUTINE readMeshFilewithName \ No newline at end of file diff --git a/Solver/test/Components/MeshConsistency/src/MeshConsistencySetup.f90 b/Solver/test/Components/MeshConsistency/src/MeshConsistencySetup.f90 index 61e195301..3f02ddde8 100644 --- a/Solver/test/Components/MeshConsistency/src/MeshConsistencySetup.f90 +++ b/Solver/test/Components/MeshConsistency/src/MeshConsistencySetup.f90 @@ -19,4 +19,4 @@ module MeshConsistencySetup integer, parameter :: no_of_meshFiles = 1 character(len=512), parameter :: meshFileNames(1) = ["../../TestMeshes/CubeWithSphere5.mesh"] -end module MeshConsistencySetup +end module MeshConsistencySetup \ No newline at end of file diff --git a/Solver/test/Components/MeshConsistency/src/MeshConsistencyTests.f90 b/Solver/test/Components/MeshConsistency/src/MeshConsistencyTests.f90 index 23924f779..f1473bf52 100644 --- a/Solver/test/Components/MeshConsistency/src/MeshConsistencyTests.f90 +++ b/Solver/test/Components/MeshConsistency/src/MeshConsistencyTests.f90 @@ -699,4 +699,4 @@ subroutine CheckElementAndFaceScalConsistency(f, eL, eR, localError) end do ; end do end subroutine CheckElementAndFaceScalConsistency -end module MeshTests +end module MeshTests \ No newline at end of file diff --git a/Solver/test/Components/MeshConsistency/src/main.f90 b/Solver/test/Components/MeshConsistency/src/main.f90 index 05ecdfb9f..a08456212 100644 --- a/Solver/test/Components/MeshConsistency/src/main.f90 +++ b/Solver/test/Components/MeshConsistency/src/main.f90 @@ -67,4 +67,4 @@ program main IF(numberOfFailures > 0) STOP 99 -end program main +end program main \ No newline at end of file diff --git a/Solver/test/Components/NodalStorage/src/NodalStorageTests.f90 b/Solver/test/Components/NodalStorage/src/NodalStorageTests.f90 index e923895a5..89a619efa 100644 --- a/Solver/test/Components/NodalStorage/src/NodalStorageTests.f90 +++ b/Solver/test/Components/NodalStorage/src/NodalStorageTests.f90 @@ -60,4 +60,4 @@ SUBROUTINE testNodalStorage tol = 1.d-12, & msg = "Differentiation of quadratic function") - END SUBROUTINE testNodalStorage + END SUBROUTINE testNodalStorage \ No newline at end of file diff --git a/Solver/test/Components/NodalStorage/src/NodalStorageTestsMain.f90 b/Solver/test/Components/NodalStorage/src/NodalStorageTestsMain.f90 index 877d4238a..10591b9ad 100644 --- a/Solver/test/Components/NodalStorage/src/NodalStorageTestsMain.f90 +++ b/Solver/test/Components/NodalStorage/src/NodalStorageTestsMain.f90 @@ -26,4 +26,4 @@ PROGRAM NodalStorageTestsMain IF(numberOfFailures > 0) STOP 99 - END PROGRAM NodalStorageTestsMain + END PROGRAM NodalStorageTestsMain \ No newline at end of file diff --git a/Solver/test/Euler/BoxAroundCircle/SETUP/ProblemFile.f90 b/Solver/test/Euler/BoxAroundCircle/SETUP/ProblemFile.f90 index e54791a99..79cf95501 100644 --- a/Solver/test/Euler/BoxAroundCircle/SETUP/ProblemFile.f90 +++ b/Solver/test/Euler/BoxAroundCircle/SETUP/ProblemFile.f90 @@ -437,4 +437,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/Euler/BoxAroundCirclePirozzoli/SETUP/ProblemFile.f90 b/Solver/test/Euler/BoxAroundCirclePirozzoli/SETUP/ProblemFile.f90 index 78f18bfce..2b6eaf690 100644 --- a/Solver/test/Euler/BoxAroundCirclePirozzoli/SETUP/ProblemFile.f90 +++ b/Solver/test/Euler/BoxAroundCirclePirozzoli/SETUP/ProblemFile.f90 @@ -411,4 +411,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/Euler/BoxAroundCircle_pAdapted/SETUP/ProblemFile.f90 b/Solver/test/Euler/BoxAroundCircle_pAdapted/SETUP/ProblemFile.f90 index 8224e2b64..3ba368ded 100644 --- a/Solver/test/Euler/BoxAroundCircle_pAdapted/SETUP/ProblemFile.f90 +++ b/Solver/test/Euler/BoxAroundCircle_pAdapted/SETUP/ProblemFile.f90 @@ -480,4 +480,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/Euler/Diffuser/SETUP/ProblemFile.f90 b/Solver/test/Euler/Diffuser/SETUP/ProblemFile.f90 index a1751975e..82a87a6e2 100644 --- a/Solver/test/Euler/Diffuser/SETUP/ProblemFile.f90 +++ b/Solver/test/Euler/Diffuser/SETUP/ProblemFile.f90 @@ -546,4 +546,4 @@ SUBROUTINE pointSourceFlowSolution(x, Q, success, thermodynamics_, & END SUBROUTINE pointSourceFlowSolution #endif ! -! +! \ No newline at end of file diff --git a/Solver/test/Euler/JFNK/SETUP/ProblemFile.f90 b/Solver/test/Euler/JFNK/SETUP/ProblemFile.f90 index 44b7fa57a..5c9b9183f 100644 --- a/Solver/test/Euler/JFNK/SETUP/ProblemFile.f90 +++ b/Solver/test/Euler/JFNK/SETUP/ProblemFile.f90 @@ -441,4 +441,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/Euler/TaylorGreenKEPEC/SETUP/ProblemFile.f90 b/Solver/test/Euler/TaylorGreenKEPEC/SETUP/ProblemFile.f90 index c4cb08e34..fc6a313ab 100644 --- a/Solver/test/Euler/TaylorGreenKEPEC/SETUP/ProblemFile.f90 +++ b/Solver/test/Euler/TaylorGreenKEPEC/SETUP/ProblemFile.f90 @@ -424,4 +424,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/Euler/UniformFlow/SETUP/ProblemFile.f90 b/Solver/test/Euler/UniformFlow/SETUP/ProblemFile.f90 index e520e1df9..5ae8bec63 100644 --- a/Solver/test/Euler/UniformFlow/SETUP/ProblemFile.f90 +++ b/Solver/test/Euler/UniformFlow/SETUP/ProblemFile.f90 @@ -401,4 +401,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/Euler/outdated/Benchmark/SETUP/ProblemFile.f90 b/Solver/test/Euler/outdated/Benchmark/SETUP/ProblemFile.f90 index d116c1c43..657c73352 100644 --- a/Solver/test/Euler/outdated/Benchmark/SETUP/ProblemFile.f90 +++ b/Solver/test/Euler/outdated/Benchmark/SETUP/ProblemFile.f90 @@ -322,4 +322,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/Euler/outdated/PeriodicFlow/SETUP/ProblemFile.f90 b/Solver/test/Euler/outdated/PeriodicFlow/SETUP/ProblemFile.f90 index 6244ecdf0..45885715d 100644 --- a/Solver/test/Euler/outdated/PeriodicFlow/SETUP/ProblemFile.f90 +++ b/Solver/test/Euler/outdated/PeriodicFlow/SETUP/ProblemFile.f90 @@ -212,4 +212,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/Euler/outdated/TestEulerJacobians/Makefile b/Solver/test/Euler/outdated/TestEulerJacobians/Makefile index 3c7cf61f4..d1a5a7bb9 100644 --- a/Solver/test/Euler/outdated/TestEulerJacobians/Makefile +++ b/Solver/test/Euler/outdated/TestEulerJacobians/Makefile @@ -5,14 +5,14 @@ ## libproblemfile.so with user specific procedures, such as initial ## and boundary conditions or solution checks. ## -## Usage: -## -> cd $(CASE_DIR)/SETUP -## -> make COMPILER=gfortran/ifort MODE=RELEASE/DEBUG COMM=SERIAL/PARALLEL -## -> cd $(CASE_DIR) -## -> ldd ./HORSES3D (to check whether the solver points -## to the default library (found in -## $HOME_DIR) or to the local library, -## ./SETUP/libproblemfile.so) +## Usage: +## -> cd $(CASE_DIR)/SETUP +## -> make COMPILER=gfortran/ifort MODE=RELEASE/DEBUG COMM=SERIAL/PARALLEL +## -> cd $(CASE_DIR) +## -> ldd ./HORSES3D (to check whether the solver points +## to the default library (found in +## $HOME_DIR) or to the local library, +## ./SETUP/libproblemfile.so) ## ##################################################################### HOME_DIR=../../.. @@ -85,5 +85,4 @@ endif all: - $(FC) -I$(HORSESINC) -I$(NSINC) -o TestJacobians src/main.f90 $(HORSESLIB) - + $(FC) -I$(HORSESINC) -I$(NSINC) -o TestJacobians src/main.f90 $(HORSESLIB) diff --git a/Solver/test/Euler/outdated/TestEulerJacobians/src/main.f90 b/Solver/test/Euler/outdated/TestEulerJacobians/src/main.f90 index de3f3f633..617ac12de 100644 --- a/Solver/test/Euler/outdated/TestEulerJacobians/src/main.f90 +++ b/Solver/test/Euler/outdated/TestEulerJacobians/src/main.f90 @@ -236,4 +236,4 @@ subroutine GetTangentVectors(nHat,t1,t2) t2 = t2_ini / norm2(t2_ini) end subroutine GetTangentVectors -end program TestEulerJacobians +end program TestEulerJacobians \ No newline at end of file diff --git a/Solver/test/Euler/outdated/UniformFlowPETSc/SETUP/ProblemFile.f90 b/Solver/test/Euler/outdated/UniformFlowPETSc/SETUP/ProblemFile.f90 index e1459eba0..e8f1472d9 100644 --- a/Solver/test/Euler/outdated/UniformFlowPETSc/SETUP/ProblemFile.f90 +++ b/Solver/test/Euler/outdated/UniformFlowPETSc/SETUP/ProblemFile.f90 @@ -351,4 +351,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/Euler/outdated/UniformFlowPETSc/src/ProblemFile.f90 b/Solver/test/Euler/outdated/UniformFlowPETSc/src/ProblemFile.f90 index e385f2a08..3624bd710 100644 --- a/Solver/test/Euler/outdated/UniformFlowPETSc/src/ProblemFile.f90 +++ b/Solver/test/Euler/outdated/UniformFlowPETSc/src/ProblemFile.f90 @@ -216,4 +216,4 @@ END MODULE UserDefinedFunctions !===================================================================================================== !===================================================================================================== ! -! +! \ No newline at end of file diff --git a/Solver/test/Euler/outdated/VortexTransport2D/SETUP/ProblemFile.f90 b/Solver/test/Euler/outdated/VortexTransport2D/SETUP/ProblemFile.f90 index cc46048ed..4c9fdc617 100644 --- a/Solver/test/Euler/outdated/VortexTransport2D/SETUP/ProblemFile.f90 +++ b/Solver/test/Euler/outdated/VortexTransport2D/SETUP/ProblemFile.f90 @@ -469,4 +469,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/IncompressibleNS/Convergence/SETUP/ProblemFile.f90 b/Solver/test/IncompressibleNS/Convergence/SETUP/ProblemFile.f90 index a7e113d1b..df04376b9 100644 --- a/Solver/test/IncompressibleNS/Convergence/SETUP/ProblemFile.f90 +++ b/Solver/test/IncompressibleNS/Convergence/SETUP/ProblemFile.f90 @@ -671,4 +671,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/IncompressibleNS/Kovasznay/SETUP/ProblemFile.f90 b/Solver/test/IncompressibleNS/Kovasznay/SETUP/ProblemFile.f90 index 98c4e9793..fc6ce05ce 100644 --- a/Solver/test/IncompressibleNS/Kovasznay/SETUP/ProblemFile.f90 +++ b/Solver/test/IncompressibleNS/Kovasznay/SETUP/ProblemFile.f90 @@ -685,4 +685,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/IncompressibleNS/LidDrivenCavity/SETUP/ProblemFile.f90 b/Solver/test/IncompressibleNS/LidDrivenCavity/SETUP/ProblemFile.f90 index 3ba7b388a..f878d392d 100644 --- a/Solver/test/IncompressibleNS/LidDrivenCavity/SETUP/ProblemFile.f90 +++ b/Solver/test/IncompressibleNS/LidDrivenCavity/SETUP/ProblemFile.f90 @@ -533,4 +533,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/IncompressibleNS/RayleighTaylor/SETUP/ProblemFile.f90 b/Solver/test/IncompressibleNS/RayleighTaylor/SETUP/ProblemFile.f90 index 2302d0d0c..7a83a74ef 100644 --- a/Solver/test/IncompressibleNS/RayleighTaylor/SETUP/ProblemFile.f90 +++ b/Solver/test/IncompressibleNS/RayleighTaylor/SETUP/ProblemFile.f90 @@ -522,4 +522,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/IncompressibleNS/TaylorGreen/SETUP/ProblemFile.f90 b/Solver/test/IncompressibleNS/TaylorGreen/SETUP/ProblemFile.f90 index d1133efae..38b455d76 100644 --- a/Solver/test/IncompressibleNS/TaylorGreen/SETUP/ProblemFile.f90 +++ b/Solver/test/IncompressibleNS/TaylorGreen/SETUP/ProblemFile.f90 @@ -527,4 +527,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/IncompressibleNS/outdated/Poiseuille/SETUP/ProblemFile.f90 b/Solver/test/IncompressibleNS/outdated/Poiseuille/SETUP/ProblemFile.f90 index ce5b41354..17e6e44f1 100644 --- a/Solver/test/IncompressibleNS/outdated/Poiseuille/SETUP/ProblemFile.f90 +++ b/Solver/test/IncompressibleNS/outdated/Poiseuille/SETUP/ProblemFile.f90 @@ -415,4 +415,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/Multiphase/Convergence/SETUP/ProblemFile.f90 b/Solver/test/Multiphase/Convergence/SETUP/ProblemFile.f90 index 47d7eb290..3f3a5b469 100644 --- a/Solver/test/Multiphase/Convergence/SETUP/ProblemFile.f90 +++ b/Solver/test/Multiphase/Convergence/SETUP/ProblemFile.f90 @@ -631,4 +631,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/Multiphase/EntropyConservingTest/SETUP/ProblemFile.f90 b/Solver/test/Multiphase/EntropyConservingTest/SETUP/ProblemFile.f90 index 821d39678..0934311da 100644 --- a/Solver/test/Multiphase/EntropyConservingTest/SETUP/ProblemFile.f90 +++ b/Solver/test/Multiphase/EntropyConservingTest/SETUP/ProblemFile.f90 @@ -635,4 +635,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/Multiphase/Pipe/SETUP/ProblemFile.f90 b/Solver/test/Multiphase/Pipe/SETUP/ProblemFile.f90 index 9d3313229..29430907d 100644 --- a/Solver/test/Multiphase/Pipe/SETUP/ProblemFile.f90 +++ b/Solver/test/Multiphase/Pipe/SETUP/ProblemFile.f90 @@ -629,4 +629,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/Multiphase/RisingBubble/SETUP/ProblemFile.f90 b/Solver/test/Multiphase/RisingBubble/SETUP/ProblemFile.f90 index fc53494f2..c8f23a8f9 100644 --- a/Solver/test/Multiphase/RisingBubble/SETUP/ProblemFile.f90 +++ b/Solver/test/Multiphase/RisingBubble/SETUP/ProblemFile.f90 @@ -579,4 +579,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/BIRK5NumJac/Cylinder.control b/Solver/test/NavierStokes/BIRK5NumJac/Cylinder.control index 9bcde1b0b..53d91626b 100644 --- a/Solver/test/NavierStokes/BIRK5NumJac/Cylinder.control +++ b/Solver/test/NavierStokes/BIRK5NumJac/Cylinder.control @@ -66,4 +66,4 @@ compute jacobian every = 10 #define boundary Outlet type = Outflow #end -!------------------------------------------------------------- +!------------------------------------------------------------- \ No newline at end of file diff --git a/Solver/test/NavierStokes/BIRK5NumJac/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/BIRK5NumJac/SETUP/ProblemFile.f90 index 310d765cb..23d6f9ed6 100644 --- a/Solver/test/NavierStokes/BIRK5NumJac/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/BIRK5NumJac/SETUP/ProblemFile.f90 @@ -594,4 +594,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/Convergence/Convergence.control b/Solver/test/NavierStokes/Convergence/Convergence.control index 383501dfc..ee9fd1272 100644 --- a/Solver/test/NavierStokes/Convergence/Convergence.control +++ b/Solver/test/NavierStokes/Convergence/Convergence.control @@ -70,4 +70,4 @@ #define volume monitor 1 name = entr-rate variable = entropy rate -#end +#end \ No newline at end of file diff --git a/Solver/test/NavierStokes/Convergence/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/Convergence/SETUP/ProblemFile.f90 index eb2f57f7d..b0585cc51 100644 --- a/Solver/test/NavierStokes/Convergence/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/Convergence/SETUP/ProblemFile.f90 @@ -826,4 +826,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/Convergence_energy/Convergence.control b/Solver/test/NavierStokes/Convergence_energy/Convergence.control index b73a4b35a..5412be397 100644 --- a/Solver/test/NavierStokes/Convergence_energy/Convergence.control +++ b/Solver/test/NavierStokes/Convergence_energy/Convergence.control @@ -73,4 +73,4 @@ Gradient variables = Energy #define volume monitor 1 name = entr-rate variable = entropy rate -#end +#end \ No newline at end of file diff --git a/Solver/test/NavierStokes/Convergence_energy/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/Convergence_energy/SETUP/ProblemFile.f90 index a017dc14c..a28f1d50b 100644 --- a/Solver/test/NavierStokes/Convergence_energy/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/Convergence_energy/SETUP/ProblemFile.f90 @@ -822,4 +822,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/Convergence_entropy/Convergence.control b/Solver/test/NavierStokes/Convergence_entropy/Convergence.control index 2d7f4883f..36a46c494 100644 --- a/Solver/test/NavierStokes/Convergence_entropy/Convergence.control +++ b/Solver/test/NavierStokes/Convergence_entropy/Convergence.control @@ -73,4 +73,4 @@ Gradient variables = Entropy #define volume monitor 1 name = entr-rate variable = entropy rate -#end +#end \ No newline at end of file diff --git a/Solver/test/NavierStokes/Convergence_entropy/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/Convergence_entropy/SETUP/ProblemFile.f90 index 1f31efcdf..73548b36e 100644 --- a/Solver/test/NavierStokes/Convergence_entropy/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/Convergence_entropy/SETUP/ProblemFile.f90 @@ -822,4 +822,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/Cylinder/Cylinder.control b/Solver/test/NavierStokes/Cylinder/Cylinder.control index c68b11b97..e5bf435c1 100644 --- a/Solver/test/NavierStokes/Cylinder/Cylinder.control +++ b/Solver/test/NavierStokes/Cylinder/Cylinder.control @@ -63,4 +63,4 @@ riemann solver = roe ! Starting time = 0.0 ! @start* ! @stop -!#end +!#end \ No newline at end of file diff --git a/Solver/test/NavierStokes/Cylinder/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/Cylinder/SETUP/ProblemFile.f90 index bf9aec47a..e5c6c1fe0 100644 --- a/Solver/test/NavierStokes/Cylinder/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/Cylinder/SETUP/ProblemFile.f90 @@ -646,4 +646,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/CylinderAnisFAS/CylinderAnisFAS.control b/Solver/test/NavierStokes/CylinderAnisFAS/CylinderAnisFAS.control index 7ecd56ce8..4aabfe043 100644 --- a/Solver/test/NavierStokes/CylinderAnisFAS/CylinderAnisFAS.control +++ b/Solver/test/NavierStokes/CylinderAnisFAS/CylinderAnisFAS.control @@ -68,4 +68,4 @@ multigrid output = .TRUE. ! Starting time = 0.0 ! @start* ! @stop -!#end +!#end \ No newline at end of file diff --git a/Solver/test/NavierStokes/CylinderAnisFAS/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/CylinderAnisFAS/SETUP/ProblemFile.f90 index aecf12a55..83df816c1 100644 --- a/Solver/test/NavierStokes/CylinderAnisFAS/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/CylinderAnisFAS/SETUP/ProblemFile.f90 @@ -416,4 +416,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/CylinderBR2/CylinderBR2.control b/Solver/test/NavierStokes/CylinderBR2/CylinderBR2.control index 3c48a9323..78b5dd6c3 100644 --- a/Solver/test/NavierStokes/CylinderBR2/CylinderBR2.control +++ b/Solver/test/NavierStokes/CylinderBR2/CylinderBR2.control @@ -76,4 +76,4 @@ riemann solver = roe ! Starting time = 0.0 ! @start* ! @stop -!#end +!#end \ No newline at end of file diff --git a/Solver/test/NavierStokes/CylinderBR2/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/CylinderBR2/SETUP/ProblemFile.f90 index c1c39aa89..29391ad00 100644 --- a/Solver/test/NavierStokes/CylinderBR2/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/CylinderBR2/SETUP/ProblemFile.f90 @@ -645,4 +645,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/CylinderDifferentOrders/CylinderDifferentOrders.control b/Solver/test/NavierStokes/CylinderDifferentOrders/CylinderDifferentOrders.control index 26d93d008..dc6b18951 100644 --- a/Solver/test/NavierStokes/CylinderDifferentOrders/CylinderDifferentOrders.control +++ b/Solver/test/NavierStokes/CylinderDifferentOrders/CylinderDifferentOrders.control @@ -65,4 +65,4 @@ jacobian by convergence = .false. Name = wake_u Position = [0.0,0.5,4.0] Variable = u -#end +#end \ No newline at end of file diff --git a/Solver/test/NavierStokes/CylinderDifferentOrders/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/CylinderDifferentOrders/SETUP/ProblemFile.f90 index 8a947c0d0..99bf3f78b 100644 --- a/Solver/test/NavierStokes/CylinderDifferentOrders/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/CylinderDifferentOrders/SETUP/ProblemFile.f90 @@ -646,4 +646,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/CylinderDucros/CylinderDucros.control b/Solver/test/NavierStokes/CylinderDucros/CylinderDucros.control index 816444685..2f7505e70 100644 --- a/Solver/test/NavierStokes/CylinderDucros/CylinderDucros.control +++ b/Solver/test/NavierStokes/CylinderDucros/CylinderDucros.control @@ -66,4 +66,4 @@ restart file name = "RESULTS/Cylinder.hsol" ! Starting time = 0.0 ! @start* ! @stop -!#end +!#end \ No newline at end of file diff --git a/Solver/test/NavierStokes/CylinderDucros/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/CylinderDucros/SETUP/ProblemFile.f90 index e4da42c18..3d42128b6 100644 --- a/Solver/test/NavierStokes/CylinderDucros/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/CylinderDucros/SETUP/ProblemFile.f90 @@ -644,4 +644,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/CylinderFAS/CylinderFAS.control b/Solver/test/NavierStokes/CylinderFAS/CylinderFAS.control index b7a76daa7..8b00c0e57 100644 --- a/Solver/test/NavierStokes/CylinderFAS/CylinderFAS.control +++ b/Solver/test/NavierStokes/CylinderFAS/CylinderFAS.control @@ -66,4 +66,4 @@ multigrid output = .TRUE. ! Starting time = 0.0 ! @start* ! @stop -!#end +!#end \ No newline at end of file diff --git a/Solver/test/NavierStokes/CylinderFAS/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/CylinderFAS/SETUP/ProblemFile.f90 index 382c5b596..bb90a3205 100644 --- a/Solver/test/NavierStokes/CylinderFAS/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/CylinderFAS/SETUP/ProblemFile.f90 @@ -638,4 +638,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/CylinderIP/CylinderIP.control b/Solver/test/NavierStokes/CylinderIP/CylinderIP.control index 1a8495ce8..80c9a7230 100644 --- a/Solver/test/NavierStokes/CylinderIP/CylinderIP.control +++ b/Solver/test/NavierStokes/CylinderIP/CylinderIP.control @@ -64,4 +64,4 @@ riemann solver = roe ! Starting time = 0.0 ! @start* ! @stop -!#end +!#end \ No newline at end of file diff --git a/Solver/test/NavierStokes/CylinderIP/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/CylinderIP/SETUP/ProblemFile.f90 index 79458b142..23b5e032f 100644 --- a/Solver/test/NavierStokes/CylinderIP/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/CylinderIP/SETUP/ProblemFile.f90 @@ -617,4 +617,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/CylinderIP_BDF2/CylinderIP_BDF2.control b/Solver/test/NavierStokes/CylinderIP_BDF2/CylinderIP_BDF2.control index 5206e788e..1a7d18b3f 100644 --- a/Solver/test/NavierStokes/CylinderIP_BDF2/CylinderIP_BDF2.control +++ b/Solver/test/NavierStokes/CylinderIP_BDF2/CylinderIP_BDF2.control @@ -85,4 +85,4 @@ newton tolerance = 1.d-14 ! Starting time = 0.0 ! @start* ! @stop -!#end +!#end \ No newline at end of file diff --git a/Solver/test/NavierStokes/CylinderIP_BDF2/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/CylinderIP_BDF2/SETUP/ProblemFile.f90 index a50815682..34e8b70c9 100644 --- a/Solver/test/NavierStokes/CylinderIP_BDF2/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/CylinderIP_BDF2/SETUP/ProblemFile.f90 @@ -436,4 +436,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/CylinderLES/CylinderLES.control b/Solver/test/NavierStokes/CylinderLES/CylinderLES.control index 45f83a9c9..ea72395d0 100644 --- a/Solver/test/NavierStokes/CylinderLES/CylinderLES.control +++ b/Solver/test/NavierStokes/CylinderLES/CylinderLES.control @@ -64,4 +64,4 @@ riemann solver = roe ! Starting time = 0.0 ! @start* ! @stop -!#end +!#end \ No newline at end of file diff --git a/Solver/test/NavierStokes/CylinderLES/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/CylinderLES/SETUP/ProblemFile.f90 index 5a67b2c39..e9dc81c44 100644 --- a/Solver/test/NavierStokes/CylinderLES/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/CylinderLES/SETUP/ProblemFile.f90 @@ -616,4 +616,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/DualTimeStepping/DualTimeStepping.control b/Solver/test/NavierStokes/DualTimeStepping/DualTimeStepping.control index d2d92b897..ddf55a11a 100644 --- a/Solver/test/NavierStokes/DualTimeStepping/DualTimeStepping.control +++ b/Solver/test/NavierStokes/DualTimeStepping/DualTimeStepping.control @@ -101,4 +101,4 @@ pseudo convergence monitor = .true. ! Set .false. or just delete if the converge Direction = [-0.0872d0, 0.9962d0, 0.d0] Reference surface = 0.1d0 #end ------------------------------------ +----------------------------------- \ No newline at end of file diff --git a/Solver/test/NavierStokes/DualTimeStepping/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/DualTimeStepping/SETUP/ProblemFile.f90 index f2a8a4ac2..669b6943b 100644 --- a/Solver/test/NavierStokes/DualTimeStepping/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/DualTimeStepping/SETUP/ProblemFile.f90 @@ -594,4 +594,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/EnergyConservingTest/EnergyConservingTest.control b/Solver/test/NavierStokes/EnergyConservingTest/EnergyConservingTest.control index 1bc8d4438..0512334f3 100644 --- a/Solver/test/NavierStokes/EnergyConservingTest/EnergyConservingTest.control +++ b/Solver/test/NavierStokes/EnergyConservingTest/EnergyConservingTest.control @@ -90,4 +90,3 @@ compute time derivative after timestep = .true. Position = [0.0,2.0,4.0] Variable = u #end - diff --git a/Solver/test/NavierStokes/EnergyConservingTest/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/EnergyConservingTest/SETUP/ProblemFile.f90 index 901818c8d..620263bf9 100644 --- a/Solver/test/NavierStokes/EnergyConservingTest/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/EnergyConservingTest/SETUP/ProblemFile.f90 @@ -669,4 +669,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/EntropyConservingTest/EntropyConservingTest.control b/Solver/test/NavierStokes/EntropyConservingTest/EntropyConservingTest.control index b087b9bfc..b13c887ac 100644 --- a/Solver/test/NavierStokes/EntropyConservingTest/EntropyConservingTest.control +++ b/Solver/test/NavierStokes/EntropyConservingTest/EntropyConservingTest.control @@ -84,4 +84,4 @@ compute time derivative after timestep = .true. Name = wake_u Position = [0.0,2.0,4.0] Variable = u -#end +#end \ No newline at end of file diff --git a/Solver/test/NavierStokes/EntropyConservingTest/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/EntropyConservingTest/SETUP/ProblemFile.f90 index 7b4cd518a..da4b233e8 100644 --- a/Solver/test/NavierStokes/EntropyConservingTest/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/EntropyConservingTest/SETUP/ProblemFile.f90 @@ -658,4 +658,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/FlatPlateSA/FlatPlate.control b/Solver/test/NavierStokes/FlatPlateSA/FlatPlate.control index 621229738..024412444 100644 --- a/Solver/test/NavierStokes/FlatPlateSA/FlatPlate.control +++ b/Solver/test/NavierStokes/FlatPlateSA/FlatPlate.control @@ -71,4 +71,4 @@ marker = NoSlipAdiabaticWall variable = drag reference surface = 0.002d0 direction = [ 1.d0, 0.d0, 0.d0 ] -#end +#end \ No newline at end of file diff --git a/Solver/test/NavierStokes/FlatPlateSA/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/FlatPlateSA/SETUP/ProblemFile.f90 index d0a9d1913..d95ba02ed 100644 --- a/Solver/test/NavierStokes/FlatPlateSA/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/FlatPlateSA/SETUP/ProblemFile.f90 @@ -585,4 +585,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/ForwardFacingStepSVV/FFS_SVV.control b/Solver/test/NavierStokes/ForwardFacingStepSVV/FFS_SVV.control index 74411027b..6be74ad43 100644 --- a/Solver/test/NavierStokes/ForwardFacingStepSVV/FFS_SVV.control +++ b/Solver/test/NavierStokes/ForwardFacingStepSVV/FFS_SVV.control @@ -86,4 +86,4 @@ #define volume monitor 1 name = SVV variable = Artificial dissipation -#end +#end \ No newline at end of file diff --git a/Solver/test/NavierStokes/ForwardFacingStepSVV/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/ForwardFacingStepSVV/SETUP/ProblemFile.f90 index 266f1a309..641e86bfc 100644 --- a/Solver/test/NavierStokes/ForwardFacingStepSVV/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/ForwardFacingStepSVV/SETUP/ProblemFile.f90 @@ -594,4 +594,4 @@ SUBROUTINE UserDefinedTermination ! ----------------------------------------------- ! IMPLICIT NONE - END SUBROUTINE UserDefinedTermination + END SUBROUTINE UserDefinedTermination \ No newline at end of file diff --git a/Solver/test/NavierStokes/ManufacturedSolutionsSA/MSSA.control b/Solver/test/NavierStokes/ManufacturedSolutionsSA/MSSA.control index 0a77a0bbc..70e290f67 100644 --- a/Solver/test/NavierStokes/ManufacturedSolutionsSA/MSSA.control +++ b/Solver/test/NavierStokes/ManufacturedSolutionsSA/MSSA.control @@ -55,4 +55,4 @@ mg preconditioner = LTS ! for all runge kutta explicit #define boundary right type = user-defined -#end +#end \ No newline at end of file diff --git a/Solver/test/NavierStokes/ManufacturedSolutionsSA/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/ManufacturedSolutionsSA/SETUP/ProblemFile.f90 index ff9dfb919..8cf868b84 100644 --- a/Solver/test/NavierStokes/ManufacturedSolutionsSA/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/ManufacturedSolutionsSA/SETUP/ProblemFile.f90 @@ -613,4 +613,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/NACA0012/NACA0012.control b/Solver/test/NavierStokes/NACA0012/NACA0012.control index 0bd994318..182cf97d0 100644 --- a/Solver/test/NavierStokes/NACA0012/NACA0012.control +++ b/Solver/test/NavierStokes/NACA0012/NACA0012.control @@ -89,4 +89,4 @@ partitioning = SFC Direction = [0.d0, 1.d0, 0.d0] Reference surface = 1.d0 #end ------------------------------------ +----------------------------------- \ No newline at end of file diff --git a/Solver/test/NavierStokes/NACA0012/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/NACA0012/SETUP/ProblemFile.f90 index 84eda30c6..f2b1f9c90 100644 --- a/Solver/test/NavierStokes/NACA0012/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/NACA0012/SETUP/ProblemFile.f90 @@ -570,4 +570,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/TaylorGreen/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/TaylorGreen/SETUP/ProblemFile.f90 index 2c6db710d..c551ded91 100644 --- a/Solver/test/NavierStokes/TaylorGreen/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/TaylorGreen/SETUP/ProblemFile.f90 @@ -396,4 +396,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/TaylorGreen/TaylorGreen.control b/Solver/test/NavierStokes/TaylorGreen/TaylorGreen.control index d336e595b..8af6e9171 100644 --- a/Solver/test/NavierStokes/TaylorGreen/TaylorGreen.control +++ b/Solver/test/NavierStokes/TaylorGreen/TaylorGreen.control @@ -59,4 +59,4 @@ AOA phi = 0.0 #define volume monitor 3 Name = Enstrphy Variable = Enstrophy -#end +#end \ No newline at end of file diff --git a/Solver/test/NavierStokes/TaylorGreenKEPEC_IP/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/TaylorGreenKEPEC_IP/SETUP/ProblemFile.f90 index 3224b4280..9a4f202a5 100644 --- a/Solver/test/NavierStokes/TaylorGreenKEPEC_IP/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/TaylorGreenKEPEC_IP/SETUP/ProblemFile.f90 @@ -396,4 +396,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/TaylorGreenKEPEC_IP/TaylorGreenKEPEC_IP.control b/Solver/test/NavierStokes/TaylorGreenKEPEC_IP/TaylorGreenKEPEC_IP.control index db53aeb63..2545e7161 100644 --- a/Solver/test/NavierStokes/TaylorGreenKEPEC_IP/TaylorGreenKEPEC_IP.control +++ b/Solver/test/NavierStokes/TaylorGreenKEPEC_IP/TaylorGreenKEPEC_IP.control @@ -63,4 +63,4 @@ AOA phi = 0.0 #define volume monitor 3 Name = Enstrphy Variable = Enstrophy -#end +#end \ No newline at end of file diff --git a/Solver/test/NavierStokes/TaylorGreenKEP_BR2/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/TaylorGreenKEP_BR2/SETUP/ProblemFile.f90 index ceabb53a2..c013993dd 100644 --- a/Solver/test/NavierStokes/TaylorGreenKEP_BR2/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/TaylorGreenKEP_BR2/SETUP/ProblemFile.f90 @@ -396,4 +396,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/NavierStokes/TaylorGreenKEP_BR2/TaylorGreenKEP_BR2.control b/Solver/test/NavierStokes/TaylorGreenKEP_BR2/TaylorGreenKEP_BR2.control index 53c688218..c07456c7c 100644 --- a/Solver/test/NavierStokes/TaylorGreenKEP_BR2/TaylorGreenKEP_BR2.control +++ b/Solver/test/NavierStokes/TaylorGreenKEP_BR2/TaylorGreenKEP_BR2.control @@ -62,4 +62,4 @@ AOA phi = 0.0 #define volume monitor 3 Name = Enstrphy Variable = Enstrophy -#end +#end \ No newline at end of file diff --git a/Solver/test/NavierStokes/TaylorGreenSVVLES/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/TaylorGreenSVVLES/SETUP/ProblemFile.f90 index 5d6d4961e..9cacd4551 100644 --- a/Solver/test/NavierStokes/TaylorGreenSVVLES/SETUP/ProblemFile.f90 +++ b/Solver/test/NavierStokes/TaylorGreenSVVLES/SETUP/ProblemFile.f90 @@ -625,4 +625,4 @@ subroutine UserDefinedTermination ! everything else is done. ! ----------------------------------------------- implicit none - end subroutine UserDefinedTermination + end subroutine UserDefinedTermination \ No newline at end of file diff --git a/Solver/test/NavierStokes/TaylorGreenSVVLES/TaylorGreenSVVLES.control b/Solver/test/NavierStokes/TaylorGreenSVVLES/TaylorGreenSVVLES.control index 9b900c21e..4486b237a 100644 --- a/Solver/test/NavierStokes/TaylorGreenSVVLES/TaylorGreenSVVLES.control +++ b/Solver/test/NavierStokes/TaylorGreenSVVLES/TaylorGreenSVVLES.control @@ -93,4 +93,4 @@ #define volume monitor 3 name = SVV variable = Artificial dissipation -#end +#end \ No newline at end of file diff --git a/Solver/test/Particles/FreeFall/FreeFall.control b/Solver/test/Particles/FreeFall/FreeFall.control index f85e8c518..353cc142e 100644 --- a/Solver/test/Particles/FreeFall/FreeFall.control +++ b/Solver/test/Particles/FreeFall/FreeFall.control @@ -68,4 +68,4 @@ bc box = [2,2,2] ! [i,j,k] 0 is inflow/outflow, 1 is wall, 2 is p #define boundary right type = periodic coupled boundary = left -#end +#end \ No newline at end of file diff --git a/Solver/test/Particles/FreeFall/RandomParticles.txt b/Solver/test/Particles/FreeFall/RandomParticles.txt index 32c52fa16..afe2adeca 100644 --- a/Solver/test/Particles/FreeFall/RandomParticles.txt +++ b/Solver/test/Particles/FreeFall/RandomParticles.txt @@ -1,2 +1,2 @@ i,x coord,y coord,z coord,u,v,w,T - 1,0.250000E+00,0.250000E+00,0.950000E+01,0.000000E+00,0.000000E+00,0.000000E+00,0.100000E+01 + 1,0.250000E+00,0.250000E+00,0.950000E+01,0.000000E+00,0.000000E+00,0.000000E+00,0.100000E+01 \ No newline at end of file diff --git a/Solver/test/Particles/FreeFall/SETUP/ProblemFile.f90 b/Solver/test/Particles/FreeFall/SETUP/ProblemFile.f90 index 8e54657d9..01b499e9a 100644 --- a/Solver/test/Particles/FreeFall/SETUP/ProblemFile.f90 +++ b/Solver/test/Particles/FreeFall/SETUP/ProblemFile.f90 @@ -401,4 +401,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/Particles/ParticleBoundaryCond/BoundaryCondition.control b/Solver/test/Particles/ParticleBoundaryCond/BoundaryCondition.control index dd222c8a9..65cf6370a 100644 --- a/Solver/test/Particles/ParticleBoundaryCond/BoundaryCondition.control +++ b/Solver/test/Particles/ParticleBoundaryCond/BoundaryCondition.control @@ -126,4 +126,4 @@ Number of boundaries = 6 ! ! Starting iteration = 15 ! !Starting time = 0.0 ! @dump* -!#end +!#end \ No newline at end of file diff --git a/Solver/test/Particles/ParticleBoundaryCond/SETUP/ProblemFile.f90 b/Solver/test/Particles/ParticleBoundaryCond/SETUP/ProblemFile.f90 index 0426b095f..4fc0979e4 100644 --- a/Solver/test/Particles/ParticleBoundaryCond/SETUP/ProblemFile.f90 +++ b/Solver/test/Particles/ParticleBoundaryCond/SETUP/ProblemFile.f90 @@ -642,4 +642,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/Particles/Pouransari/Pouransari_St0041.control b/Solver/test/Particles/Pouransari/Pouransari_St0041.control index 63db32271..29c4caca9 100644 --- a/Solver/test/Particles/Pouransari/Pouransari_St0041.control +++ b/Solver/test/Particles/Pouransari/Pouransari_St0041.control @@ -126,4 +126,4 @@ Number of boundaries = 6 ! ! Starting iteration = 15 ! !Starting time = 0.0 ! @dump* -!#end +!#end \ No newline at end of file diff --git a/Solver/test/Particles/Pouransari/SETUP/ProblemFile.f90 b/Solver/test/Particles/Pouransari/SETUP/ProblemFile.f90 index 21287664b..77ce123cf 100644 --- a/Solver/test/Particles/Pouransari/SETUP/ProblemFile.f90 +++ b/Solver/test/Particles/Pouransari/SETUP/ProblemFile.f90 @@ -616,4 +616,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file diff --git a/Solver/test/Particles/RadiationHeat/RadiationHeat.control b/Solver/test/Particles/RadiationHeat/RadiationHeat.control index 2a4e7f0d8..6ba50c606 100644 --- a/Solver/test/Particles/RadiationHeat/RadiationHeat.control +++ b/Solver/test/Particles/RadiationHeat/RadiationHeat.control @@ -89,4 +89,4 @@ Radiation source = 8.43234 #define volume monitor 3 name = momentum variable = momentum -#end +#end \ No newline at end of file diff --git a/Solver/test/Particles/RadiationHeat/RandomParticles.txt b/Solver/test/Particles/RadiationHeat/RandomParticles.txt index ea30e5f02..b3d17c2b7 100644 --- a/Solver/test/Particles/RadiationHeat/RandomParticles.txt +++ b/Solver/test/Particles/RadiationHeat/RandomParticles.txt @@ -998,4 +998,4 @@ 997,0.409759E+00,0.377326E-01,0.750276E+00,0.000000E+00,0.000000E+00,0.000000E+00,0.100000E+01 998,0.793905E+00,0.277355E+00,0.135181E+00,0.000000E+00,0.000000E+00,0.000000E+00,0.100000E+01 999,0.107631E+00,0.708129E+00,0.451510E+00,0.000000E+00,0.000000E+00,0.000000E+00,0.100000E+01 - 1000,0.991069E+00,0.317731E+00,0.650034E+00,0.000000E+00,0.000000E+00,0.000000E+00,0.100000E+01 + 1000,0.991069E+00,0.317731E+00,0.650034E+00,0.000000E+00,0.000000E+00,0.000000E+00,0.100000E+01 \ No newline at end of file diff --git a/Solver/test/Particles/RadiationHeat/SETUP/ProblemFile.f90 b/Solver/test/Particles/RadiationHeat/SETUP/ProblemFile.f90 index 493b379fc..4197b1940 100644 --- a/Solver/test/Particles/RadiationHeat/SETUP/ProblemFile.f90 +++ b/Solver/test/Particles/RadiationHeat/SETUP/ProblemFile.f90 @@ -425,4 +425,4 @@ SUBROUTINE UserDefinedTermination ! IMPLICIT NONE END SUBROUTINE UserDefinedTermination - + \ No newline at end of file From 76144274f86f437306f34c6d149c7bdb79fdd01d Mon Sep 17 00:00:00 2001 From: Stefano Colombo Date: Tue, 31 Jan 2023 23:15:25 +0100 Subject: [PATCH 04/15] fixing ibm parts --- Solver/src/libs/discretization/DGSEMClass.f90 | 12 +- Solver/src/libs/mesh/HexMesh.f90 | 32 +- Solver/src/libs/mesh/IBMClass.f90 | 4353 +++++++++-------- Solver/src/libs/mesh/KDClass.f90 | 926 ++-- Solver/src/libs/mesh/MPI_IBMUtilities.f90 | 2813 +++++------ Solver/src/libs/mesh/OrientedBoundingBox.f90 | 448 +- Solver/src/libs/monitors/Monitors.f90 | 15 +- Solver/src/libs/monitors/SurfaceIntegrals.f90 | 619 +-- .../timeintegrator/AnisFASMultigridClass.f90 | 16 +- .../libs/timeintegrator/ExplicitMethods.f90 | 196 - .../libs/timeintegrator/FASMultigridClass.f90 | 160 +- .../libs/timeintegrator/TimeIntegrator.f90 | 8 +- 12 files changed, 4589 insertions(+), 5009 deletions(-) diff --git a/Solver/src/libs/discretization/DGSEMClass.f90 b/Solver/src/libs/discretization/DGSEMClass.f90 index b9f8d3552..bbe6ab23a 100644 --- a/Solver/src/libs/discretization/DGSEMClass.f90 +++ b/Solver/src/libs/discretization/DGSEMClass.f90 @@ -326,19 +326,17 @@ SUBROUTINE ConstructDGSem( self, meshFileName_, controlVariables, & ! * IMMERSED BOUNDARY CONSTRUCTION * ! ********************************************************** ! - call self% mesh% IBM% read_info( controlVariables ) - if( self% mesh% IBM% active ) then - - if( .not. self % mesh % child ) call self% mesh% IBM% construct( controlVariables ) - + if( .not. self % mesh % child ) then + call self% mesh% IBM% GetDomainExtreme( self% mesh% elements ) + call self% mesh% IBM% construct( controlVariables ) + end if ! ! ------------------------------------------------ ! building the IBM mask and the IBM band region ! ------------------------------------------------ ! call self% mesh% IBM% build( self% mesh% elements, self% mesh% no_of_elements, self% mesh% NDOF, self% mesh% child ) - end if ! @@ -842,4 +840,4 @@ subroutine hnRange(mesh, hnmin, hnmax) end subroutine hnRange ! -end module DGSEMClass +end module DGSEMClass \ No newline at end of file diff --git a/Solver/src/libs/mesh/HexMesh.f90 b/Solver/src/libs/mesh/HexMesh.f90 index c16f88e93..b1d61c189 100644 --- a/Solver/src/libs/mesh/HexMesh.f90 +++ b/Solver/src/libs/mesh/HexMesh.f90 @@ -3580,7 +3580,7 @@ subroutine HexMesh_ComputeWallDistances(self,facesList,elementList) if( self% IBM% active ) then allocate(e % geom % normal(NDIM, 0:e % Nxyz(1), 0:e % Nxyz(2), 0:e % Nxyz(3))) e % geom % dWall = huge(1.0_RP) - else + else do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) xP = e % geom % x(:,i,j,k) @@ -3590,18 +3590,11 @@ subroutine HexMesh_ComputeWallDistances(self,facesList,elementList) minimumDistance = min(minimumDistance, currentDistance) end do - do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) - xP = e % geom % x(:,i,j,k) - - minimumDistance = HUGE(1.0_RP) - do fID = 1, no_of_wallDOFS - currentDistance = sum(POW2(xP - Xwall(:,fID))) - minimumDistance = min(minimumDistance, currentDistance) - end do + e % geom % dWall(i,j,k) = sqrt(minimumDistance) - e % geom % dWall(i,j,k) = sqrt(minimumDistance) - - end do ; end do ; end do + end do ; end do ; end do + end if + end associate end do ! @@ -3633,18 +3626,11 @@ subroutine HexMesh_ComputeWallDistances(self,facesList,elementList) minimumDistance = min(minimumDistance, currentDistance) end do - do j = 0, fe % Nf(2) ; do i = 0, fe % Nf(1) - xP = fe % geom % x(:,i,j) + fe % geom % dWall(i,j) = sqrt(minimumDistance) - minimumDistance = HUGE(1.0_RP) - do fID = 1, no_of_wallDOFS - currentDistance = sum(POW2(xP - Xwall(:,fID))) - minimumDistance = min(minimumDistance, currentDistance) - end do - - fe % geom % dWall(i,j) = sqrt(minimumDistance) - - end do ; end do + end do ; end do + end if + end associate end do diff --git a/Solver/src/libs/mesh/IBMClass.f90 b/Solver/src/libs/mesh/IBMClass.f90 index fdec0352a..44f60bd8a 100644 --- a/Solver/src/libs/mesh/IBMClass.f90 +++ b/Solver/src/libs/mesh/IBMClass.f90 @@ -16,34 +16,20 @@ module IBMClass #endif implicit none - type :: Integral_Obj - - integer, dimension(:,:), allocatable :: PointsIndex - real(kind=rp), dimension(:,:), allocatable :: x - real(kind=rp) :: Area - - end type - type :: Integral_t - - real(kind=rp), dimension(:), allocatable :: xi, eta, weights - integer :: Order, n_of_Q_points - type(Integral_Obj), dimension(:), allocatable :: IntegObjs, NearestPoints, NearestPointsTurbulence - logical :: ListComputed = .false., constructed = .false. - - contains - procedure :: construct => Integral_construct - procedure :: destruct => Integral_destruct - procedure :: GetCoords => Integral_GetCoords - + + logical :: ListComputed = .false., & + compute = .false., & + constructed = .false. end type type IBM_type type(STLfile), allocatable :: stl(:) - type(KDtree) :: rootPoints - type(KDtree), allocatable :: root(:) + type(KDtree), allocatable :: root(:), rootDistance(:), rootPoints(:) type(PointLinkedList) :: BandPoints + type(IBMpoints), allocatable :: BandRegion(:), BandRegion4Distance(:) + type(point_type), allocatable :: ImagePoints(:) type(Integral_t), allocatable :: Integral(:) character(len=LINE_LENGTH), allocatable :: STLfilename(:) character(len=LINE_LENGTH) :: filename @@ -71,56 +57,83 @@ module IBMClass integer, allocatable :: ImagePoint_NearestPoints(:,:) contains - procedure :: read_info => IBM_read_info - procedure :: construct => IBM_construct - procedure :: constructMask => IBM_constructMask - procedure :: constructSTL_KDtree => IBM_constructSTL_KDtree - procedure :: CheckPoint => IBM_checkPoint - procedure :: constructBandRegion => IBM_constructBandRegion - procedure :: build => IBM_build - procedure :: GetMask => IBM_GetMask - procedure :: MPI_send2Root => IBM_MPI_send2Root - procedure :: MPI_send2Partitions => IBM_MPI_send2Partitions - procedure :: MPI_sendMask2Root => IBM_MPI_sendMask2Root - procedure :: MPI_sendMask2Partitions => IBM_MPI_sendMask2Partitions - procedure :: MPI_sendBand2Root => IBM_MPI_sendBand2Root - procedure :: MPI_sendBand2Partitions => IBM_MPI_sendBand2Partitions - procedure :: BandRegionPoints => IBM_bandRegionPoints - procedure :: GetForcingPointsGeom => IBM_GetForcingPointsGeom - procedure :: GetImagePointCoords => IBM_GetImagePointCoords - procedure :: GetInfo => IBM_GetInfo - procedure :: SourceTerm => IBM_SourceTerm -#if defined(NAVIERSTOKES) - procedure :: GetImagePoint_nearest => IBM_GetImagePoint_nearest - procedure :: SourceTermTurbulence => IBM_SourceTermTurbulence -#endif - procedure :: semiImplicitShiftJacobian => IBM_semiImplicitShiftJacobian - procedure :: semiImplicitJacobian => IBM_semiImplicitJacobian - procedure :: GetSemiImplicitStep => IBM_GetSemiImplicitStep - procedure :: getObjsTangent => IBM_getObjsTangent - procedure :: upDateNormals => IBM_upDateNormals - procedure :: SetIntegration => IBM_SetIntegration - procedure :: copyKDtree => IBM_copyKDtree - procedure :: MoveBody => IBM_MoveBody - procedure :: CleanMask => IBM_CleanMask - procedure :: BandPoint_SetGeom => IBM_BandPoint_SetGeom - procedure :: BandPoint_state => IBM_BandPoint_state - procedure :: Describe => IBM_Describe - procedure :: plot_Mask => IBM_plot_Mask - procedure :: WriteMesh => IBM_WriteMesh - procedure :: Destruct => IBM_Destruct - procedure :: DestroyKDtree => IBM_DestroyKDtree - + procedure :: read_info => IBM_read_info + procedure :: construct => IBM_construct + procedure :: constructMask => IBM_constructMask + procedure :: constructSTL_KDtree => IBM_constructSTL_KDtree + procedure :: CheckPoint => IBM_checkPoint + procedure :: constructBandRegion => IBM_constructBandRegion + procedure :: constructBandRegion4Distance => IBM_constructBandRegion4Distance + procedure :: build => IBM_build + procedure :: SetPolynomialOrder => IBM_SetPolynomialOrder + procedure :: GetMask => IBM_GetMask + procedure :: MPI_sendOBB => IBM_MPI_sendOBB + procedure :: MPI_sendSTLpartitions => IBM_MPI_sendSTLpartitions + procedure :: MPI_sendMask2Root => IBM_MPI_sendMask2Root + procedure :: MPI_sendMask2Partitions => IBM_MPI_sendMask2Partitions + procedure :: MPI_sendNormals2Root => IBM_MPI_sendNormals2Root + procedure :: MPI_sendDistNormals2partitions => IBM_MPI_sendDistNormals2partitions + procedure :: BandRegionPoints => IBM_bandRegionPoints + procedure :: GetForcingPointsGeom => IBM_GetForcingPointsGeom + procedure :: GetInfo => IBM_GetInfo + procedure :: SourceTerm => IBM_SourceTerm + procedure :: ComputeIBMWallDistance => IBM_ComputeIBMWallDistance + procedure :: GetDistanceInsideBox => IBM_GetDistanceInsideBox + procedure :: GetDistanceOutsideBox => IBM_GetDistanceOutsideBox + procedure :: SemiImplicitCorrection => IBM_SemiImplicitCorrection + procedure :: GetImagePoint_nearest => IBM_GetImagePoint_nearest + procedure :: GetBandRegionStates => IBM_GetBandRegionStates + procedure :: GetDomainExtreme => IBM_GetDomainExtreme + procedure :: ImagePointsElement => IBM_ImagePointsElement + procedure :: SourceTermTurbulence => IBM_SourceTermTurbulence + procedure :: semiImplicitShiftJacobian => IBM_semiImplicitShiftJacobian + procedure :: semiImplicitTurbulenceShiftJacobian => IBM_semiImplicitTurbulenceShiftJacobian + procedure :: semiImplicitJacobian => IBM_semiImplicitJacobian + procedure :: semiImplicitTurbulenceJacobian => IBM_semiImplicitTurbulenceJacobian + procedure :: GetSemiImplicitStep => IBM_GetSemiImplicitStep + procedure :: GetSemiImplicitStepTurbulence => IBM_GetSemiImplicitStepTurbulence + procedure :: SetIntegration => IBM_SetIntegration + procedure :: copy => IBM_copy + procedure :: MoveBody => IBM_MoveBody + procedure :: CleanMask => IBM_CleanMask + procedure :: BandPoint_state => IBM_BandPoint_state + procedure :: Describe => IBM_Describe + procedure :: plot_Mask => IBM_plot_Mask + procedure :: Destruct => IBM_Destruct + procedure :: DestroyKDtree => IBM_DestroyKDtree + procedure :: constructDistance_KDtree => IBM_constructDistance_KDtree + procedure :: MPI_PointsListOperations => IBM_MPI_PointsListOperations end type - - integer, parameter :: mean_density = 1 - integer, parameter :: mean_u_II = 2 - integer, parameter :: mean_mu = 3 + + public :: expCoeff, EXPONENTIAL + + real(kind=RP) :: expCoeff + integer, parameter :: EXPONENTIAL = 1, IDW = 2 contains +! +!///////////////////////////////////////////////////////////////////////////////////////////// +! +! ------------------------------------------------- +! Immersed boundary info +! ------------------------------------------------- + subroutine IBM_read_info( this, controlVariables ) + use FileReadingUtilities + implicit none + + class(IBM_type), intent(inout) :: this + class(FTValueDictionary) :: controlVariables + + call this% GetInfo( controlVariables ) + + end subroutine IBM_read_info - subroutine Integral_construct( this, Order, NumOfObjs, Wallfunction ) - + + subroutine IBM_GetInfo( this, controlVariables ) + use FileReadingUtilities +#if defined(NAVIERSTOKES) + use WallFunctionDefinitions +#endif implicit none !-arguments---------------------------------------------------------------- class(IBM_type), intent(inout) :: this @@ -176,8 +189,8 @@ subroutine Integral_construct( this, Order, NumOfObjs, Wallfunction ) this% active = .FALSE. end if - if( this% constructed ) return - + if( .not. this% active) return + if( allocated(semiImplicit_in) ) then this% semiImplicit = semiImplicit_in else @@ -234,107 +247,95 @@ subroutine Integral_construct( this, Order, NumOfObjs, Wallfunction ) this% KDtree_Min_n_of_Objs = 5 end if - allocate(this% IntegObjs(NumOfObjs)) + if( allocated(n_of_interpoints_in) ) then + this% NumOfInterPoints = n_of_interpoints_in + else + this% NumOfInterPoints = 15 + end if - select case( Order ) - case( 2 ) - this% n_of_Q_points = 3 - - allocate(this% xi(3),this% eta(3), this% weights(3)) - - this% xi(1) = 1.0_RP/6.0_RP - this% xi(2) = 2.0_RP/3.0_RP - this% xi(3) = 1.0_RP/6.0_RP - - this% eta(1) = 1.0_RP/6.0_RP - this% eta(2) = 1.0_RP/6.0_RP - this% eta(3) = 2.0_RP/3.0_RP - - this% weights(1) = 1.0_RP/6.0_RP - this% weights(2) = this% weights(1) - this% weights(3) = this% weights(1) + if( allocated(plotBandPoints_in) ) then + this% plotBandPoints = plotBandPoints_in + else + this% plotBandPoints = .false. + end if - case( 3 ) - this% n_of_Q_points = 4 - - allocate(this% xi(4), this% eta(4), this% weights(4)) - - this% xi(1) = 1.0_RP/3.0_RP - this% xi(2) = 1.0_RP/5.0_RP - this% xi(3) = 1.0_RP/5.0_RP - this% xi(4) = 3.0_RP/5.0_RP - - this% eta(1) = 1.0_RP/3.0_RP - this% eta(2) = 1.0_RP/5.0_RP - this% eta(3) = 3.0_RP/5.0_RP - this% eta(4) = 1.0_RP/5.0_RP - - this% weights(1) = -27.0_RP/96.0_RP - this% weights(2) = 25.0_RP/96.0_RP - this% weights(3) = this% weights(2) - this% weights(4) = this% weights(2) - - case default - write(*,"(a26,I10,a21)")" Intgral_construct:: order", Order ," not implemented yet." - write(*,"(a25)")" Available orders:: 2 & 3" - error stop - end select - - this% constructed = .true. - - end subroutine Integral_construct - - subroutine Integral_destruct( this ) - - implicit none - !-arguments------------------------------ - class(Integral_t), intent(inout) :: this - !-local-variables------------------------ - integer :: i + if( allocated(plotMask_in) ) then + this% plotMask = plotMask_in + else + this% plotMask = .false. + end if - deallocate(this% xi) - deallocate(this% eta) - deallocate(this% weights) + if( allocated(BandRegion_in) ) then + this% ComputeBandRegion = BandRegion_in + else + this% ComputeBandRegion = .false. + end if - do i = 1, size(this% IntegObjs) - if( allocated(this% IntegObjs(i)% PointsIndex) ) then - deallocate(this% IntegObjs(i)% PointsIndex) - deallocate(this% IntegObjs(i)% x) - end if - end do - deallocate(this% IntegObjs) - - end subroutine Integral_destruct - - subroutine Integral_GetCoords( this, vertex1, vertex2, vertex3, index, n_of_Q_points ) - - implicit none - !-arguments--------------------------------------------------------------------- - class(Integral_t), intent(inout) :: this - real(kind=rp), dimension(NDIM), intent(in) :: vertex1, vertex2, vertex3 - integer, intent(in) :: index, n_of_Q_points - !-local-variables--------------------------------------------------------------- - integer :: i - - do i = 1, n_of_Q_points - this% IntegObjs(index)% x(:,i) = vertex1 + ( vertex2-vertex1 ) * this% xi(i) + & - ( vertex3-vertex1 ) * this% eta(i) - end do - - end subroutine Integral_GetCoords + if( allocated(Distance_in) ) then + this% ComputeDistance = Distance_in + else + this% ComputeDistance = .false. + end if + + if( allocated(Clipaxis_in) ) then + this% ClipAxis = Clipaxis_in + else + this% ClipAxis = 0 + endif + + if( controlVariables% containsKey("wall function") ) then + this% Wallfunction = .true. +#if defined(NAVIERSTOKES) + call Initialize_Wall_Function(controlVariables, correct) !TO BE REMOVED +#endif + if( allocated(y_plus_target_in) ) then + this% y_plus_target = y_plus_target_in + else + this% y_plus_target = 50.0_RP + end if + + this% ComputeBandRegion = .true. + this% ComputeDistance = .true. - subroutine IBM_read_info( this, controlVariables ) - use FileReadingUtilities - implicit none - - class(IBM_type), intent(inout) :: this - class(FTValueDictionary) :: controlVariables + else + this% Wallfunction = .false. + end if + + if( allocated(BandRegionCoeff_in) ) then + this% BandRegionCoeff = BandRegionCoeff_in + else + this% BandRegionCoeff = 2.0_RP + end if - call this% GetInfo( controlVariables ) + if( controlVariables% containsKey(trim(NumberOfSTL)) ) then + tmp = controlVariables% StringValueForKey(trim(NumberOfSTL),LINE_LENGTH) + this% NumOfSTL = GetIntValue(tmp) + else + this% NumOfSTL = 1 + end if - end subroutine IBM_read_info - - + if( allocated(AAB_in) ) then + this% AAB = AAB_in + else + this% AAB = .false. + end if + + select case(trim(InterpolationType_in)) + case("exp") + this% InterpolationType = EXPONENTIAL + case("idw") + this% InterpolationType = IDW + case default + this% InterpolationType = IDW + end select + + end subroutine IBM_GetInfo +! +!///////////////////////////////////////////////////////////////////////////////////////////// +! +! ------------------------------------------------- +! KDtree procedures +! ------------------------------------------------- subroutine IBM_construct( this, controlVariables ) use mainKeywordsModule use FileReadingUtilities @@ -345,11 +346,12 @@ subroutine IBM_construct( this, controlVariables ) class(FTValueDictionary) :: controlVariables !-local-variables---------------------------------- character(len=LINE_LENGTH) :: filename, MyString - integer :: STLNum - - if( this% describeIBM ) call this% describe() + real(kind=RP) :: axis(NDIM) + integer :: STLNum, j, k - allocate( this% stl(this% NumOfSTL), & + call this% describe() + + allocate( this% stl(this% NumOfSTL), & OBB(this% NumOfSTL), & this% root(this% NumOfSTL), & this% integral(this% NumOfSTL), & @@ -368,190 +370,307 @@ subroutine IBM_construct( this, controlVariables ) filename = stlFileNameKey else filename = trim(stlFileNameKey)//trim(adjustl(MyString)) - end if + end if this% STLfilename(STLNum) = controlVariables% stringValueForKey(trim(filename), requestedLength = LINE_LENGTH) - call STLfile_GetMotionInfo( this% stl(STLNum), this% STLfilename(STLNum), this% NumOfSTL ) - this% stl(STLNum)% body = STLNum - call this% stl(STLNum)% ReadTessellation( this% STLfilename(STLNum) ) - call OBB(STLNum)% construct( this% stl(STLNum), this% plotOBB ) - this% root(STLNum)% STLNum = STLNum - call OBB(STLNum)% ChangeObjsRefFrame( this% stl(STLNum)% ObjectsList ) - call this% constructSTL_KDtree( STLNum ) + OBB(STLNum)% filename = this% STLfilename(STLNum) + call STLfile_GetMotionInfo( this% stl(STLNum), this% STLfilename(STLNum), this% NumOfSTL ) + if( MPI_Process% isRoot ) then + this% stl(STLNum)% show = .true. + call this% stl(STLNum)% ReadTessellation( this% STLfilename(STLNum) ) + if( this% ClipAxis .ne. 0 ) call this% stl(STLNum)% Clip( this% minCOORDS, this% maxCOORDS, this% ClipAxis ) + call OBB(STLNum)% construct( this% stl(STLNum), this% plotOBB, this% AAB ) + call OBB(STLNum)% ChangeObjsRefFrame( this% stl(STLNum)% ObjectsList, LOCAL ) + end if + call this% MPI_sendOBB(STLNum) + call this% constructSTL_KDtree( STLNum ) end do end subroutine IBM_Construct subroutine IBM_constructSTL_KDtree( this, STLNum ) - use MPI_Process_Info + use MPI_Process_Info implicit none - + !-arguments----------------------------------- class(IBM_type), intent(inout) :: this integer, intent(in) :: STLNum - - call MPI_KDtree_buildPartition( this% stl(STLNum) ) + !-local-variables----------------------------- + real(kind=RP) :: vertices(NDIM,8) - if ( MPI_Process% doMPIAction ) then - call recvSTLPartition() - end if + this% root(STLNum)% STLNum = STLNum + this% root(STLNum)% which_KDtree = TRIANGLES_KDTREE_SAH - if( MPI_Process% doMPIRootAction ) then - call SendSTLPartitions() - end if + vertices = OBB(STLNum)% LocVertices - call this% root(STLNum)% construct( MPI_KDtreePartition% stl, MPI_KDtreePartition% Vertices, & - this% plotKDtree, this% KDtree_Min_n_of_Objs ) + call this% MPI_sendSTLpartitions( STLNum, vertices ) - this% root(STLNum)% MaxAxis = MPI_KDtreePartition% axis + call this% root(STLNum)% construct( stl = this% stl(STLNum), & + vertices = vertices, & + isPlot = this% plotKDtree, & + Min_n_of_Objs = this% KDtree_Min_n_of_Objs ) - call this% Integral(STLNum)% construct( this% IntegrationOrder, MPI_KDtreePartition% stl% NumOfObjs, this% Wallfunction ) + if( this% ComputeDistance ) call this% constructDistance_KDtree( STLNum ) - call MPI_KDtree_destroy() + call this% stl(STLNum)% destroy() end subroutine IBM_constructSTL_KDtree - subroutine IBM_Destruct( this, isChild ) + subroutine IBM_constructDistance_KDtree( this, STLNum ) use MPI_Process_Info implicit none - !-arguments------------------------------ + !-arguments---------------------------------------- class(IBM_type), intent(inout) :: this - logical, intent(in) :: isChild - !---------------------------------------- - integer :: i - - do i = 1, size(this% root) - call this% root(i)% destruct() - if( .not. isChild ) call this% Integral(i)% destruct() - end do - - deallocate(this% penalization) - - if( .not. isChild ) then - call this% rootPoints% Destruct() - call this% BandPoints% Destruct() - deallocate(this% symCoords) - deallocate(this% symPlanes) - end if + integer, intent(in) :: STLNum + !-local-variables---------------------------------- + real(kind=RP) :: BRvertices(NDIM,8) + + this% rootDistance(STLNum)% STLNum = STLNum + this% rootDistance(STLNum)% which_KDtree = TRIANGLES_KDTREE_MEDIAN + + call GetBRvertices( this% root(STLNum)% vertices, this% BandRegionCoeff, this% root(STLNum)% MaxAxis, STLNum, BRvertices ) + + call this% rootDistance(STLNum)% construct( stl = this% stl(STLNum), & + Vertices = BRvertices, & + isPlot = .false., & + Min_n_of_Objs = this% KDtree_Min_n_of_Objs ) + + end subroutine IBM_constructDistance_KDtree +! +! Copy a KD tree +! --------------- + subroutine IBM_copy( this, parent, lvl ) - end subroutine IBM_Destruct + implicit none + !-arguments---------------------------------------------------------------- + class(IBM_type), intent(inout) :: this + type(IBM_type), target, intent(in) :: parent + integer, intent(in) :: lvl + !-local-variables---------------------------------------------------------- + integer :: STLNum - subroutine IBM_DestroyKDtree( this ) + allocate( this% root(parent% NumOfSTL), & + this% STLfilename(parent% NumOfSTL) ) + + if( parent% ComputeBandRegion ) then + allocate( this% rootPoints(parent% NumOfSTL), & + this% BandRegion(parent% NumOfSTL) ) + end if + + if( parent% ComputeDistance ) allocate(this% rootDistance(parent% NumOfSTL)) + + do STLNum = 1, parent% NumOfSTL + this% STLfilename(STLNum) = parent% STLfilename(STLNum) + this% root(STLNum) = parent% root(STLNum) + if( parent% ComputeDistance ) this% rootDistance(STLNum) = parent% rootDistance(STLNum) + end do + + this% ClipAxis = parent% ClipAxis + + this% lvl = lvl + + end subroutine IBM_copy +! +! Destroy the KD tree +! -------------------- + subroutine IBM_DestroyKDtree( this, isChild, DistanceKDtree ) use MPI_Process_Info implicit none - !-arguments------------------------------ - class(IBM_type), intent(inout) :: this - !---------------------------------------- - integer :: i + !-arguments-------------------------------------------------- + class(IBM_type), intent(inout) :: this + logical, intent(in) :: isChild + logical, optional, intent(in) :: DistanceKDtree + !-local-variables-------------------------------------------- + integer :: STLNum + + if(this% ComputeDistance ) then + do STLNum = 1, this% NumOfSTL + call this% rootDistance(STLNum)% destruct( isChild ) + end do + deallocate(this% rootDistance) + return + end if - do i = 1, size(this% root) - call this% root(i)% destruct() + do STLNum = 1, this% NumOfSTL + call this% root(STLNum)% destruct( isChild ) end do - end subroutine IBM_DestroyKDtree - - - subroutine IBM_build( this, elements, no_of_elements, no_of_DoFs, isChild ) + end subroutine IBM_DestroyKDtree +! +!///////////////////////////////////////////////////////////////////////////////////////////// +! +! ------------------------------------------------- +! Mask procedures +! ------------------------------------------------- + subroutine IBM_GetMask( this, elements, no_of_elements, no_of_DoFs, STLNum, iter ) use MPI_Process_Info implicit none - !-arguments----------------------------------------------------------------- - class(IBM_type), intent(inout) :: this - type(element), dimension(:), intent(inout) :: elements - integer, intent(in) :: no_of_elements, no_of_DoFs - logical, intent(in) :: isChild - !-local-variables----------------------------------------------------------- - integer :: MaskPoints, STLNum -#ifdef _HAS_MPI_ - integer :: localVal, ierr -#endif + !-arguments----------------------------------------------------------- + class(IBM_type), intent(inout) :: this + type(element), intent(inout) :: elements(:) + integer, intent(in) :: no_of_elements, no_of_DoFs, STLNum, iter - this% n_of_INpoints = 0 + call GetMaskCandidates( elements, no_of_elements, no_of_DoFs, STLNum, this% NumOfSTL ) - do STLNum = 1, this% NumOfSTL - call this% GetMask( elements, no_of_elements, no_of_DoFs, STLNum ) + call this% MPI_PointsListOperations( Mask ) + + call this% constructmask( elements, STLNum ) + + if( this% plotMask ) call this% plot_Mask( iter, STLNum ) + + deallocate( Mask% x ) + + end subroutine IBM_GetMask +! +! +! mask construction +! ----------------------------------- + subroutine IBM_constructmask( this, elements, STLNum ) + use MPI_Process_Info + implicit none + !-arguments---------------------------------------------------- + class(IBM_type), intent(inout) :: this + integer, intent(in) :: STLNum + type(element), intent(inout) :: elements(:) + !-local-variables---------------------------------------------- + real(kind=RP) :: Point(NDIM) + integer :: eID, n, i, j, k +!$omp parallel +!$omp do schedule(runtime) private(Point) + do n = 1, Mask% NumOfObjs + call OBB(STLNum)% ChangeRefFrame( Mask% x(n)% coords, LOCAL, Point ) + Mask% x(n)% isInsideBody = .false. + Mask% x(n)% NumOfIntersections = 0 + if( isInsideBox( Point, this% root(STLNum)% vertices ) ) then + call this% CheckPoint( Point, STLNum, Mask% x(n)% NumOfIntersections ) + end if end do - - if( MPI_Process% doMPIAction ) then -#ifdef _HAS_MPI_ - localVal = this% n_of_INpoints - call mpi_allreduce(localVal, MaskPoints, 1, MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD, ierr) -#endif - else - MaskPoints = this% n_of_INpoints - end if - - if( MaskPoints .eq. 0 .and. this% lvl .gt. 0 ) then - print *, "The mask for the multigrid level ", this% lvl, " is made of 0 points." - print *, "Try to increase the polynomial order or to refine the mesh." - error stop - elseif( MaskPoints .eq. 0 ) then - print *, "The mask is made of 0 points." - print *, "Try to increase the polynomial order or to refine the mesh." - error stop - end if - - if( .not. isChild ) then - call this% constructBandRegion( elements, no_of_elements ) - do STLNum = 1, this% NumOfSTL - call this% SetIntegration( STLNum ) - end do - if( this% Wallfunction) then -#if defined(NAVIERSTOKES) - call this% GetForcingPointsGeom() - call this% GetImagePoint_nearest() -#endif +!$omp end do +!$omp end parallel + call this% MPI_sendMask2Root() + call this% MPI_sendMask2Partitions() +!$omp parallel +!$omp do schedule(runtime) private(eID,i,j,k) + do n = 1, Mask% NumOfObjs + if( Mask% x(n)% partition .eq. MPI_Process% rank ) then + eID = Mask% x(n)% element_index + i = Mask% x(n)% local_Position(1) + j = Mask% x(n)% local_Position(2) + k = Mask% x(n)% local_Position(3) + elements(eID)% isInsideBody(i,j,k) = Mask% x(n)% isInsideBody + if( elements(eID)% isInsideBody(i,j,k) ) then + elements(eID)% STL(i,j,k) = STLNum + end if end if - call this% WriteMesh( elements, no_of_elements, 0 ) + end do +!$omp end do +!$omp end parallel + if( MPI_Process% isRoot ) then + if( Mask% NumOfObjs .eq. 0 .and. this% lvl .gt. 0 ) then + print *, "The mask for the multigrid level ", this% lvl, " is made of 0 points." + print *, "Try to increase the polynomial order or to refine the mesh." + error stop + elseif( Mask% NumOfObjs .eq. 0 ) then + print *, "The mask is made of 0 points." + print *, "Try to increase the polynomial order or to refine the mesh." + error stop + end if end if - - allocate( this% penalization(no_of_elements) ) - - this% penalization = this% eta - - if( this% plotMask ) call this% plot_Mask( elements, no_of_elements ) - - end subroutine IBM_build - - subroutine IBM_GetMask( this, elements, no_of_elements, no_of_DoFs, STLNum ) + end subroutine IBM_constructmask +! +! Mask plot +! ----------------------------------------------------------- + subroutine IBM_plot_Mask( this, iter, STLNum) use MPI_Process_Info implicit none !-arguments------------------------------------------------------ - class(IBM_type), intent(inout) :: this - type(element), dimension(:), intent(inout) :: elements - integer, intent(in) :: no_of_elements, no_of_DoFs, STLNum + class(IBM_type), intent(inout) :: this + integer, intent(in) :: iter, STLNum + !-local-variables------------------------------------------------ + character(len=LINE_LENGTH) :: filename + integer :: i, funit, NumOfObjs + logical :: add_Point = .false. + + if( .not. MPI_Process% isRoot ) return - call this% MPI_send2Root( elements, no_of_elements, no_of_DoFs, STLNum ) + NumOfObjs = 0 + do i = 1, Mask% NumOfObjs + if( Mask% x(i)% isInsideBody ) NumOfObjs = NumOfObjs + 1 + end do - call this% MPI_send2Partitions() + if( NumOfObjs .eq. 0 ) then + print*, "Mask is made of 0 points" + error stop + end if - call this% constructmask( MPI_M_Points_ALL% x, elements, STLNum ) + if( this% lvl .gt. 0 ) then + write(filename,'(A,A,I1,A,I10.10)') trim(this% STLfilename(STLNum)),'_MGlevel',this% lvl,'_',iter + else + write(filename,'(A,A,I10.10)') trim(this% STLfilename(STLNum)),'_',iter + end if - call MPI_M_PointsPartition% destroy() - call MPI_M_Points_ALL% destroy() - - end subroutine IBM_GetMask + call TecFileHeader( 'IBM/Mask_'//trim(filename), 'Mask Points', NumOfObjs/2+mod(NumOfObjs,2),2,1, funit, 'POINT') + + if( mod(NumOfObjs,2) .ne. 0 ) add_Point = .true. + + do i = 1, Mask% NumOfObjs + if( Mask% x(i)% isInsideBody ) then + write(funit,'(3E13.5)') Mask% x(i)% coords(1), Mask% x(i)% coords(2), Mask% x(i)% coords(3) + if( add_Point ) then + write(funit,'(3E13.5)') Mask% x(i)% coords(1), Mask% x(i)% coords(2), Mask% x(i)% coords(3) + add_Point = .false. + end if + end if + end do + + close(funit) + + end subroutine IBM_plot_Mask ! !///////////////////////////////////////////////////////////////////////////////////////////// ! - subroutine IBM_MPI_send2Root( this, elements, no_of_elements, no_of_DoFs, STLNum ) +! ----------------------------------------------------------------------- +! Getting extreme of the domain mesh. These are used to clip the STL file +! ----------------------------------------------------------------------- + + subroutine IBM_GetDomainExtreme( this, elements ) use MPI_Process_Info implicit none - - class(IBM_type), intent(inout) :: this - type(element), dimension(:), intent(inout) :: elements - integer, intent(in) :: no_of_elements, no_of_DoFs, STLNum -#ifdef _HAS_MPI_ - integer :: LocalVal, ierr -#endif - - call MaskCandidates( elements, no_of_elements, no_of_DoFs, STLNum, this% NumOfSTL ) - - if( MPI_Process% doMPIAction ) then + !-arguments--------------------------------------------- + class(IBM_type), intent(inout) :: this + type(element), intent(in) :: elements(:) + !-local-variables--------------------------------------- + real(kind=rp) :: ElemMax, ElemMin + integer :: eID, i, axis, j, k #ifdef _HAS_MPI_ - localVal = MPI_M_PointsPartition% LocNumOfObjs - call mpi_allreduce(localVal, MPI_M_Points_All% NumOfObjs, 1, MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD, ierr) + real(kind=RP) :: localmax, localmin + integer :: ierr #endif - else - MPI_M_Points_All% NumOfObjs = MPI_M_PointsPartition% LocNumOfObjs - end if + this% maxCOORDS = -huge(1.0_RP); this% minCOORDS = huge(1.0_RP) + axis = this% ClipAxis + do eID = 1, size(elements) + !ElemMax = maxval(elements(eID)% SurfInfo% corners(axis,:)); ElemMin = minval(elements(eID)% SurfInfo% corners(axis,:)) + do k = 0, elements(eID)% Nxyz(3) ; do j = 0, elements(eID)% Nxyz(2) ; do i = 0, elements(eID)% Nxyz(1) + this% maxCOORDS = max(this% maxCOORDS,elements(eID)% geom% x(axis,i,j,k)); this% minCOORDS = min(this% minCOORDS,elements(eID)% geom% x(axis,i,j,k)) + end do; end do; end do + end do + this% maxCOORDS = this% maxCOORDS + 1.0e-8 + this% minCOORDS = this% minCOORDS - 1.0e-8 +#ifdef _HAS_MPI_ + localmax = this% maxCOORDS; localmin = this% minCOORDS + call mpi_allreduce(localmax, this% maxCOORDS, 1, MPI_DOUBLE, MPI_MAX, MPI_COMM_WORLD, ierr) + call mpi_allreduce(localmin, this% minCOORDS, 1, MPI_DOUBLE, MPI_MIN, MPI_COMM_WORLD, ierr) +#endif + end subroutine IBM_GetDomainExtreme +! +! Allocation and coordinates for the integration points +! ----------------------------------------------------- + subroutine IBM_SetIntegration( this, STLNum ) + use PhysicsStorage + implicit none + !-arguments------------------------------ + class(IBM_type), intent(inout) :: this + integer, intent(in) :: STLNum + !-local-variables------------------------ + integer :: i, j if( this% Integral(STLNum)% compute ) return @@ -563,273 +682,329 @@ subroutine IBM_MPI_send2Root( this, elements, no_of_elements, no_of_DoFs, STLNum end do end do - if ( MPI_Process% doMPIAction ) then - call RootRecvrecvPointMaskPartition() - call RootSendPointMaskPartition() - end if + allocate(this% BandRegion(STLNum)% U_x(NCONS,this% BandRegion(STLNum)% NumOfObjs)) + allocate(this% BandRegion(STLNum)% U_y(NCONS,this% BandRegion(STLNum)% NumOfObjs)) + allocate(this% BandRegion(STLNum)% U_z(NCONS,this% BandRegion(STLNum)% NumOfObjs)) - end subroutine IBM_MPI_send2Root - - - subroutine IBM_MPI_send2Partitions( this ) + end subroutine IBM_SetIntegration +! +!///////////////////////////////////////////////////////////////////////////////////////////// +! +! ------------------------------------------------- +! building the immersed boundary +! ------------------------------------------------- + subroutine IBM_build( this, elements, no_of_elements, no_of_DoFs, isChild, movingSTL, iter ) use MPI_Process_Info + use PhysicsStorage implicit none - - class(IBM_type), intent(inout) :: this + !-arguments----------------------------------------------------------------- + class(IBM_type), intent(inout) :: this + type(element), intent(inout) :: elements(:) + integer, intent(in) :: no_of_elements, no_of_DoFs + logical, intent(in) :: isChild + integer, optional, intent(in) :: movingSTL, iter + !-local-variables----------------------------------------------------------- + integer :: MaskPoints, STLNum +#ifdef _HAS_MPI_ + integer :: localVal, ierr +#endif + do STLNum = 1, this% NumOfSTL + if( .not. present(movingSTL) )then + call this% GetMask( elements, no_of_elements, no_of_DoFs, STLNum, 0 ) + else + if( STLNum .eq. movingSTL ) call this% GetMask( elements, no_of_elements, no_of_DoFs, STLNum, iter ) + end if + end do - if ( MPI_Process% doMPIAction ) then - call recvPointMaskPartition() + if( .not. present(movingSTL) )then + allocate( this% penalization(no_of_elements) ) + this% penalization = this% eta end if - - if( MPI_Process% doMPIRootAction ) then - call sendPointMaskPartition() - end if - - end subroutine IBM_MPI_send2Partitions - -!-------------------------------------- - - subroutine IBM_MPI_sendMask2Root( this ) - use MPI_Process_Info - implicit none - - class(IBM_type), intent(inout) :: this - - if ( MPI_Process% doMPIAction ) then - call RootRecvPointMask() - call RootSendPointMask() +#if defined(NAVIERSTOKES) + if( this% ComputeDistance ) then + if( .not. present(movingSTL) ) then + call this% ComputeIBMWallDistance( elements ) + else + call this% ComputeIBMWallDistance( elements, movingSTL ) + end if end if - - end subroutine IBM_MPI_sendMask2Root - - - subroutine IBM_MPI_sendMask2Partitions( this ) - use MPI_Process_Info - implicit none - - class(IBM_type), intent(inout) :: this - - if ( MPI_Process% doMPIAction ) then - call recvPointMask() +#endif + if( this% ComputeBandRegion ) then + do STLNum = 1, this% NumOfSTL + if( .not. present(movingSTL) ) then + call this% constructBandRegion( elements, no_of_elements, STLNum ) + else + if( STLNum .eq. movingSTL ) then + call this% constructBandRegion( elements, no_of_elements, STLNum ) + end if + end if + end do end if - if( MPI_Process% doMPIRootAction ) then - call sendPointMask() + if( this% Wallfunction ) then +#if defined(NAVIERSTOKES) + call this% GetImagePoint_nearest( elements ) +#endif end if - end subroutine IBM_MPI_sendMask2Partitions - -!-------------------------------------- - - subroutine IBM_MPI_sendBand2Root( this ) + end subroutine IBM_build +! +! Immersed boundary description +! ----------------------------- + subroutine IBM_Describe( this ) + use Headers + use mainKeywordsModule use MPI_Process_Info implicit none - - class(IBM_type), intent(inout) :: this - - if ( MPI_Process% doMPIAction ) then - call RootrecvBandPoint() - call RootSendBandPoint( this% BandPoints ) - end if + !-arguments----------------------------- + class(IBM_type), intent(inout) :: this - end subroutine IBM_MPI_sendBand2Root - - - subroutine IBM_MPI_sendBand2Partitions( this ) - use MPI_Process_Info - implicit none - - class(IBM_type), intent(inout) :: this - - if ( MPI_Process% doMPIAction ) then - call recvBandPointPartition() - end if - - if( MPI_Process% doMPIRootAction ) then - call sendBandPointPartition() + if ( .not. MPI_Process % isRoot ) return + write(STD_OUT,'(/)') + call Section_Header("IBM parameters") + write(STD_OUT,'(/)') + + call SubSection_Header('IBM info') + write(STD_OUT,'(30X,A,A35,L10)') "->" , "Semi implicit treatment: ", this% semiImplicit + if( .not. this% TimePenal ) then + write(STD_OUT,'(30X,A,A35,ES14.2)') "->" , "Penalization term: " , this% eta + else + write(STD_OUT,'(30X,A,A35,A10)') "->" , "Penalization term: ", " Dt" end if - end subroutine IBM_MPI_sendBand2Partitions - -! -!///////////////////////////////////////////////////////////////////////////////////////////// -! -! ----------------------------------------------------------- -! This subroutine plots the points outside & inside the body -! ----------------------------------------------------------- + write(STD_OUT,'(30X,A,A35,I10)') "->" , "Minimum number of objects: ", this% KDtree_Min_n_of_Objs + write(STD_OUT,'(30X,A,A35,I10)') "->" , "Number of interpolation points: ", this% NumOfInterPoints + !if( this% Wallfunction ) then + ! write(STD_OUT,'(30X,A,A35,F10.3)') "->" , "Target y+: ", this% y_plus_target + !end if - subroutine IBM_plot_Mask( this, elements, no_of_elements, timestep ) + end subroutine IBM_Describe +! +! Destroy immersed boundary +! ------------------------- + subroutine IBM_Destruct( this, isChild ) use MPI_Process_Info implicit none - !-arguments------------------------------------------------------ - class(IBM_type), intent(inout) :: this - type(element), dimension(:), intent(inout) :: elements - integer, intent(in) :: no_of_elements, timestep - !-local-variables------------------------------------------------ - character(len=LINE_LENGTH) :: PointFile, lvlName, nRank, step - integer :: eID, i, j, k, funit - logical :: add_Point = .false. - - optional :: timestep - - if( MPI_Process% nProcs .gt. 1 ) then - write(nRank,"(I100)") MPI_Process% rank - if( this% lvl .gt. 0 ) then - write(lvlName,"(I10)") this% lvl - PointFile = trim(this% filename)//'_MGlevel'//trim(adjustl(lvlName))//'_'//trim(adjustl(nRank)) - else - PointFile = trim(this% filename)//'_'//trim(adjustl(nRank)) - end if - else - if( this% lvl .gt. 0 ) then - write(lvlName,"(I10)") this% lvl - PointFile = trim(this% filename)//'_MGlevel'//trim(adjustl(lvlName)) - else - PointFile = trim(this% filename) - end if - end if - - if( this% n_of_INpoints .gt. 0 ) then - if( present(timestep) ) then - write(step,"(I10)") timestep - PointFile = PointFile//trim(step) - end if - - call TecFileHeader( 'IBM/Mask_'//trim(PointFile), 'Mask Points', this% n_of_INpoints/2+mod(this% n_of_INpoints,2),2,1, funit, 'POINT') - - if( mod(this% n_of_INpoints,2) .ne. 0 ) add_Point = .true. - - do eID = 1, no_of_elements - associate ( e => elements(eID) ) - do k = 0, e% Nxyz(3); do j = 0, e% Nxyz(2) ; do i = 0, e% Nxyz(1) - if( e% isInsideBody(i,j,k) ) then - write(funit,'(3E13.5)') e% geom% x(1,i,j,k), e% geom% x(2,i,j,k), e% geom% x(3,i,j,k) - if( add_Point ) then - write(funit,'(3E13.5)') e% geom% x(1,i,j,k), e% geom% x(2,i,j,k), e% geom% x(3,i,j,k) - add_Point = .false. - end if + !-arguments------------------------------ + class(IBM_type), intent(inout) :: this + logical, intent(in) :: isChild + !---------------------------------------- + integer :: STLNum, i, j + + do STLNum = 1, this% NumOfSTL + do i = 1, this% root(STLNum)% NumOfObjs + do j = 1, 3 + if( allocated(this% root(STLNum)% ObjectsList(i)% vertices(j)% nearestPoints) ) then + deallocate(this% root(STLNum)% ObjectsList(i)% vertices(j)% nearestPoints) + deallocate(this% root(STLNum)% ObjectsList(i)% vertices(j)% invPhi) + deallocate(this% root(STLNum)% ObjectsList(i)% vertices(j)% b) end if - end do; end do; end do - end associate + end do + end do + call this% root(STLNum)% destruct( isChild ) + if( this% ComputeDistance ) call this% rootDistance(STLNum)% destruct( isChild ) + if( this% ComputeBandRegion ) then + deallocate(this% BandRegion(STLNum)% x) + call this% rootPoints(STLNum)% Destruct( .false. ) + deallocate(this% BandRegion(STLNum)% Q) + if( allocated(this% BandRegion(STLNum)% U_x) ) deallocate(this% BandRegion(STLNum)% U_x) + if( allocated(this% BandRegion(STLNum)% U_y) ) deallocate(this% BandRegion(STLNum)% U_y) + if( allocated(this% BandRegion(STLNum)% U_z) ) deallocate(this% BandRegion(STLNum)% U_Z) + end if + end do + + if( this% Wallfunction ) then + do i = 1, this% NumOfForcingPoints + deallocate( this% ImagePoints(i)% invPhi, & + this% ImagePoints(i)% b ) end do - - close(funit) - end if - - end subroutine IBM_plot_Mask + deallocate(this% ImagePoints) + end if + + deallocate(this% penalization, this% Integral) + + end subroutine IBM_Destruct ! !///////////////////////////////////////////////////////////////////////////////////////////// ! -! ------------------------------------------------- -! This subroutine constructs the mask -! ----------------------------------------------- - subroutine IBM_constructmask( this, x, elements, STLNum ) - use MPI_Process_Info +! ------------------------------------------------------------ +! Creating the .omesh file for p-adaptation close to the STL +! ------------------------------------------------------------ + subroutine IBM_SetPolynomialOrder( this, elements, corners ) implicit none - !-arguments---------------------------------------------------- - class(IBM_type), intent(inout) :: this - type(point_type), dimension(:), intent(inout) :: x - integer, intent(in) :: STLNum - type(element), dimension(:), intent(inout) :: elements - !-local-variables---------------------------------------------- - real(kind=RP) :: Point(NDIM) - integer :: eID, n, i, j, k -!$omp parallel shared(this,x,STLNum,n) -!$omp do schedule(runtime) private(Point) - do n = 1, size(x) - call OBB(STLNum)% ChangeRefFrame( x(n)% coords, 'local', Point ) - if( isInsideBox( Point, this% root(STLNum)% vertices ) ) then - call this% CheckPoint( x(n)% coords, STLNum, x(n)% isInsideBody ) - end if - end do -!$omp end do -!$omp end parallel - - call this% MPI_sendMask2Root() - call this% MPI_sendMask2Partitions() - -!$omp parallel shared(this,x,elements,STLNum,n) -!$omp do schedule(runtime) private(eID,i,j,k) - do n = 1, size(x) - if( x(n)% partition .eq. MPI_Process% rank ) then - eID = x(n)% element_index - i = x(n)% local_Position(1) - j = x(n)% local_Position(2) - k = x(n)% local_Position(3) - elements(eID)% isInsideBody(i,j,k) = x(n)% isInsideBody - if( elements(eID)% isInsideBody(i,j,k) ) then - elements(eID)% STL(STLNum,i,j,k) = STLNum -!$omp critical - this% n_of_INpoints = this% n_of_INpoints + 1 -!$omp end critical - end if - end if - end do -!$omp end do -!$omp end parallel + !-arguments---------------------------------------------- + class(IBM_type), intent(inout) :: this + type(element), intent(inout) :: elements(:) + real(kind=RP), optional, intent(in) :: corners(:,:) + !-local-variables---------------------------------------- + real(kind=RP) :: corner(NDIM) + integer :: STLNum, eID, k + + if( present(corners) ) then + do eID = 1, size(elements) + do k = 1, 8 + if( isInsideBox( elements(eID)% SurfInfo% corners(:,k), corners ) ) then + elements(eID)% Nxyz(1) = this% Nx + elements(eID)% Nxyz(2) = this% Ny + elements(eID)% Nxyz(3) = this% Nz + exit + end if + end do + end do + else + do eID = 1, size(elements) + !loop over the stl files + do STLNum = 1, this% NumOfSTL + loop: do k = 1, 8 + call OBB(STLNum)% ChangeRefFrame( elements(eID)% SurfInfo% corners(:,k), LOCAL, corner ) + if( isInsideBox( corner, this% BandRegionCoeff*OBB(STLNum)% LocVertices ) ) then + if( this% Nx .ne. 0 ) elements(eID)% Nxyz(1) = this% Nx + if( this% Ny .ne. 0 ) elements(eID)% Nxyz(2) = this% Ny + if( this% Nz .ne. 0 ) elements(eID)% Nxyz(3) = this% Nz + exit loop + end if + end do loop + end do + end do + end if - end subroutine IBM_constructmask + end subroutine IBM_SetPolynomialOrder ! !///////////////////////////////////////////////////////////////////////////////////////////// ! -! -------------------------------------------------------------- -! This subroutine constructs the band region for the integration -! -------------------------------------------------------------- +! ----------------------------------------------------------------------- +! Band region for the computation of the forces and turbulent quantities +! ----------------------------------------------------------------------- - subroutine IBM_constructBandRegion( this, elements, no_of_elements ) + subroutine IBM_constructBandRegion( this, elements, no_of_elements, STLNum ) use MPI_Process_Info + use PhysicsStorage implicit none !-arguments------------------------------------------------------ - class(IBM_type), intent(inout) :: this - type(element), dimension(:), intent(inout) :: elements - integer, intent(in) :: no_of_elements + class(IBM_type), intent(inout) :: this + type(element), intent(inout) :: elements(:) + integer, intent(in) :: no_of_elements, & + STLNum !-local-variables------------------------------------------------ + type(STLfile) :: stl + type(point_type), pointer :: p + integer :: i #ifdef _HAS_MPI_ - integer localVal, ierr -#endif - - call this% BandRegionPoints( elements, no_of_elements ) + integer :: localVal, ierr +#endif + call this% BandRegionPoints( elements, no_of_elements, STLNum ) - if ( MPI_Process % doMPIAction ) then + this% BandRegion(STLNum)% LocNumOfObjs = this% BandPoints% NumOfPoints #ifdef _HAS_MPI_ - localVal = this% BandPoints% NumOfPoints - call mpi_allreduce(localVal, BandPoints_All% NumOfObjs, 1, MPI_INT, MPI_SUM, MPI_COMM_WORLD, ierr) + call mpi_allreduce(this% BandPoints% NumOfPoints, this% BandRegion(STLNum)% NumOfObjs, 1, MPI_INT, MPI_SUM, MPI_COMM_WORLD, ierr) +#else + this% BandRegion(STLNum)% NumOfObjs = this% BandPoints% NumOfPoints #endif - else - BandPoints_All% NumOfObjs = this% BandPoints% NumOfPoints - end if - - if( BandPoints_All% NumOfObjs .eq. 0 ) then + if( this% BandRegion(STLNum)% NumOfObjs .eq. 0 ) then print *, "IBM_bandRegionPoints: Number of points in the band region is 0" error stop end if - call MPI_BandPointpartition( BandPoints_All% NumOfObjs, this% BandPoints ) + allocate(this% BandRegion(STLNum)% x(this% BandRegion(STLNum)% NumOfObjs)) - call this% MPI_sendBand2Root() - call this% MPI_sendBand2Partitions() - - ! STL & OBB not used for rootpoints - call this% rootPoints% construct( this% stl(1), OBB(1)% LocVertices, this% plotBandPoints, this% KDtree_n_of_interPoints, BandPoints_All% x ) + p => this% BandPoints% head + + do i = 1, this% BandPoints% NumOfPoints + this% BandRegion(STLNum)% x(i)% index = i + this% BandRegion(STLNum)% x(i)% coords = p% coords + this% BandRegion(STLNum)% x(i)% local_Position = p% local_Position + this% BandRegion(STLNum)% x(i)% element_index = p% element_index + this% BandRegion(STLNum)% x(i)% partition = p% partition + this% BandRegion(STLNum)% x(i)% STLNum = STLNum + this% BandRegion(STLNum)% x(i)% normal = 0.0_RP + this% BandRegion(STLNum)% x(i)% Dist = huge(1.0_RP) + p => p% next + end do + + call this% MPI_PointsListOperations( this% BandRegion(STLNum) ) + ! STL not used for rootpoints + this% rootPoints(STLNum)% STLNum = STLNum + this% rootPoints(STLNum)% which_KDtree = POINTS_KDTREE + + call this% rootPoints(STLNum)% construct( stl = this% stl(STLNum), & + Vertices = this% BandRegionCoeff*OBB(STLNum)% LocVertices, & + isPlot = this% plotBandPoints, & + Min_n_of_Objs = this% NumOfInterPoints, & + pointList = this% BandRegion(STLNum)% x, & + lvl = this% lvl ) + + allocate( this% BandRegion(STLNum)% Q(NCONS,this% BandRegion(STLNum)% NumOfObjs) ) + call this% BandPoints% destruct() - - end subroutine IBM_constructBandRegion - - subroutine IBM_bandRegionPoints( this, elements, n_of_elements ) + + end subroutine IBM_constructBandRegion +! +! Building band region for the computation of the STL-DoFs distance +! ------------------------------------------------------------------ + subroutine IBM_constructBandRegion4Distance( this, elements, no_of_elements, STLNum ) + use MPI_Process_Info + implicit none + !-arguments------------------------------------------ + class(IBM_type), intent(inout) :: this + type(element), intent(inout) :: elements(:) + integer, intent(in) :: no_of_elements, & + STLNum + !-local-variables------------------------------------ + type(point_type), pointer :: p + integer :: i +#ifdef _HAS_MPI_ + integer :: localVal, ierr +#endif + call this% BandRegionPoints( elements, no_of_elements, STLNum ) + + this% BandRegion4Distance(STLNum)% LocNumOfObjs = this% BandPoints% NumOfPoints +#ifdef _HAS_MPI_ + call mpi_allreduce(this% BandPoints% NumOfPoints, this% BandRegion4Distance(STLNum)% NumOfObjs, 1, MPI_INT, MPI_SUM, MPI_COMM_WORLD, ierr) +#else + this% BandRegion4Distance(STLNum)% NumOfObjs = this% BandPoints% NumOfPoints +#endif + + allocate(this% BandRegion4Distance(STLNum)% x(this% BandRegion4Distance(STLNum)% NumOfObjs)) + + p => this% BandPoints% head + + do i = 1, this% BandPoints% NumOfPoints + this% BandRegion4Distance(STLNum)% x(i)% index = i + this% BandRegion4Distance(STLNum)% x(i)% coords = p% coords + this% BandRegion4Distance(STLNum)% x(i)% local_Position = p% local_Position + this% BandRegion4Distance(STLNum)% x(i)% element_index = p% element_index + this% BandRegion4Distance(STLNum)% x(i)% partition = p% partition + this% BandRegion4Distance(STLNum)% x(i)% STLNum = STLNum + this% BandRegion4Distance(STLNum)% x(i)% normal = 0.0_RP + this% BandRegion4Distance(STLNum)% x(i)% Dist = huge(1.0_RP) + p => p% next + end do + + call this% MPI_PointsListOperations( this% BandRegion4Distance(STLNum) ) + + call this% BandPoints% destruct() + + end subroutine IBM_constructBandRegion4Distance +! +! Band region points are found and stored +! --------------------------------------- + subroutine IBM_bandRegionPoints( this, elements, n_of_elements, STLNum ) use ElementClass use FaceClass use MPI_Process_Info implicit none - !-arguments------------------------------------------------------------ - class(IBM_type), intent(inout) :: this - type(element), dimension(:), intent(inout) :: elements - integer, intent(in) :: n_of_elements - !-local-variables------------------------------------------------------ - type(point_type) :: p - integer :: eID, n, i, j, k, NumOfPoints, STLNum + !-arguments----------------------------------------- + class(IBM_type), intent(inout) :: this + type(element), intent(inout) :: elements(:) + integer, intent(in) :: n_of_elements, & + STLNum + !-local-variables----------------------------------- + type(point_type) :: p + real(kind=RP) :: Point(NDIM) + integer :: eID, n, i, j, k, NumOfPoints this% BandPoints = PointLinkedList() @@ -838,180 +1013,322 @@ subroutine IBM_bandRegionPoints( this, elements, n_of_elements ) do eID = 1, n_of_elements associate( e => elements(eID) ) do i = 0, e% Nxyz(1); do j = 0, e% Nxyz(2); do k = 0, e% Nxyz(3) - if( .not. e% isInsideBody(i,j,k) ) then - do STLNum = 1, this% NumOfSTL - if( OBB(STLNum)% isPointInside( e% geom% x(:,i,j,k), this% BandRegionCoeff ) ) then - p% coords = e% geom% x(:,i,j,k) - p% element_index = eID; p% local_Position = (/ i,j,k /) - n = n + 1; NumOfPoints = NumOfPoints + 1 - p% index = n; p% partition = MPI_Process% rank - call this% BandPoints% add(p) - exit - end if - end do + if( .not. e% isInsideBody(i,j,k) .and. .not. e% isForcingPoint(i,j,k) ) then + call OBB(STLNum)% ChangeRefFrame(e% geom% x(:,i,j,k),LOCAL,Point) + if( isInsideBox(Point, this% BandRegionCoeff*OBB(STLNum)% LocVertices, .true. ) ) then + p% coords = Point + p% element_index = eID; p% local_Position = (/ i,j,k /) + n = n + 1; NumOfPoints = NumOfPoints + 1 + p% index = n; p% partition = MPI_Process% rank + call this% BandPoints% add(p) + end if end if end do; end do; end do - end associate + end associate end do - + this% BandPoints% NumOfPoints = NumOfPoints - - end subroutine IBM_bandRegionPoints - - subroutine IBM_copyKDtree( this, KDtree2copy ) - - implicit none - - class(IBM_type), intent(inout) :: this - type(KDtree), target, intent(in) :: KDtree2copy(:) - - integer :: i - - allocate(this% root(size(KDtree2copy))) - - do i = 1, size(KDtree2copy) - this% root(i) = KDtree2copy(i) - end do - - end subroutine IBM_copyKDtree - - - subroutine IBM_getObjsTangent( this, STLNum ) - use MappedGeometryClass + + end subroutine IBM_bandRegionPoints +! +! Band region points' state is stored +! ----------------------------------- + subroutine IBM_BandPoint_state( this, elements, STLNum, gradients ) + use PhysicsStorage + use MPI_Process_Info implicit none - !-arguments------------------------------- - class(IBM_type), intent(inout) :: this - integer, intent(in) :: STLNum - !-local-variables------------------------- - real(kind=rp) :: dv(NDIM), & - Vertices(NDIM,3) - integer :: i - -!$omp parallel shared(this,STLNum,i) -!$omp do schedule(runtime) private(Vertices,dv) - do i = 1, this% root(STLNum)% NumOfObjs - call OBB(STLNum)% ChangeRefFrame( this% root(STLNum)% ObjectsList(i)% vertices(1)% coords ,'global', Vertices(:,1)) - call OBB(STLNum)% ChangeRefFrame( this% root(STLNum)% ObjectsList(i)% vertices(2)% coords ,'global', Vertices(:,2)) - call vcross(Vertices(:,2) - Vertices(:,1),this% root(STLNum)% ObjectsList(i)% normal,dv) - dv = dv/norm2(dv) - this% root(STLNum)% ObjectsList(i)% tangent = dv/norm2(dv) + !-arguments------------------------------------------------ + class(IBM_type), intent(inout) :: this + type(element), intent(in) :: elements(:) + integer, intent(in) :: STLnum + logical, intent(in) :: gradients + !-local-variables------------------------------------------ + integer :: n, i, j, k, eID +#ifdef _HAS_MPI_ + real(kind=rp), allocatable :: local_sum(:), global_sum(:) + integer :: ierr, NumOfObjs +#endif + this% BandRegion(STLNum)% Q = 0.0_RP + if( gradients ) then + this% BandRegion(STLNum)% U_x = 0.0_RP + this% BandRegion(STLNum)% U_y = 0.0_RP + this% BandRegion(STLNum)% U_z = 0.0_RP + end if +!$omp parallel +!$omp do schedule(runtime) private(i,j,k,eID) + do n = 1, this% BandRegion(STLNum)% NumOfObjs + if( this% BandRegion(STLNum)% x(n)% partition .eq. MPI_Process% rank ) then + i = this% BandRegion(STLNum)% x(n)% local_Position(1) + j = this% BandRegion(STLNum)% x(n)% local_Position(2) + k = this% BandRegion(STLNum)% x(n)% local_Position(3) + eID = this% BandRegion(STLNum)% x(n)% element_index + this% BandRegion(STLNum)% Q(:,n) = elements(eID)% storage% Q(:,i,j,k) + if( gradients ) then + this% BandRegion(STLNum)% U_x(:,n) = elements(eID)% storage% U_x(:,i,j,k) + this% BandRegion(STLNum)% U_y(:,n) = elements(eID)% storage% U_y(:,i,j,k) + this% BandRegion(STLNum)% U_z(:,n) = elements(eID)% storage% U_z(:,i,j,k) + end if + end if end do !$omp end do !$omp end parallel - end subroutine IBM_getObjsTangent - - subroutine IBM_upDateNormals( this, STLNum ) - use MappedGeometryClass +#ifdef _HAS_MPI_ + if( MPI_Process% doMPIAction ) then + NumOfObjs = this% BandRegion(STLNum)% NumOfObjs + allocate(local_sum(NumOfObjs),global_sum(NumOfObjs)) + do i = 1, NCONS + local_sum = this% BandRegion(STLNum)% Q(i,:) + call mpi_allreduce(local_sum, global_sum, NumOfObjs, MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD, ierr) + this% BandRegion(STLNum)% Q(i,:) = global_sum + if( gradients ) then + local_sum = this% BandRegion(STLNum)% U_x(i,:) + call mpi_allreduce(local_sum, global_sum, NumOfObjs, MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD, ierr) + this% BandRegion(STLNum)% U_x(i,:) = global_sum + local_sum = this% BandRegion(STLNum)% U_y(i,:) + call mpi_allreduce(local_sum, global_sum, NumOfObjs, MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD, ierr) + this% BandRegion(STLNum)% U_y(i,:) = global_sum + local_sum = this% BandRegion(STLNum)% U_z(i,:) + call mpi_allreduce(local_sum, global_sum, NumOfObjs, MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD, ierr) + this% BandRegion(STLNum)% U_z(i,:) = global_sum + end if + end do + deallocate(local_sum,global_sum) + end if +#endif + end subroutine IBM_BandPoint_state +! +!///////////////////////////////////////////////////////////////////////////////////////////// +! +! ------------------------------------------------------------ +! MPI routines +! ------------------------------------------------------------ + subroutine IBM_MPI_sendOBB( this, STLNum ) + use MPI_Process_Info implicit none - !-argument-------------------------------- + !-arguments------------------------------ class(IBM_type), intent(inout) :: this integer, intent(in) :: STLNum - !-local-variables------------------------- - real(kind=rp) :: dv(NDIM), & - Vertices(NDIM,3) - integer :: i -!$omp parallel shared(this,STLNum,i) -!$omp do schedule(runtime) private(Vertices,dv) - do i = 1, this% root(STLNum)% NumOfObjs - call OBB(STLNum)% ChangeRefFrame( this% root(STLNum)% ObjectsList(i)% vertices(1)% coords ,'global', Vertices(:,1)) - call OBB(STLNum)% ChangeRefFrame( this% root(STLNum)% ObjectsList(i)% vertices(2)% coords ,'global', Vertices(:,2)) - call OBB(STLNum)% ChangeRefFrame( this% root(STLNum)% ObjectsList(i)% vertices(3)% coords ,'global', Vertices(:,3)) - call vcross(Vertices(:,2) - Vertices(:,1),Vertices(:,3) - Vertices(:,1),dv) - dv = dv/norm2(dv) - this% root(STLNum)% ObjectsList(i)% normal = dv/norm2(dv) - end do -!$omp end do -!$omp end parallel - end subroutine IBM_upDateNormals - + if ( MPI_Process% doMPIAction ) then + call recvOBB( STLNum ) + end if + + if( MPI_Process% doMPIRootAction ) then + call SendOBB( STLNum ) + end if - subroutine IBM_GetImagePointCoords( this, maxDistFP ) + end subroutine IBM_MPI_sendOBB + + subroutine IBM_MPI_sendSTLpartitions( this, STLNum, vertices ) use MPI_Process_Info implicit none - !-arguments---------------------------------------------- + !-arguments--------------------------- class(IBM_type), intent(inout) :: this - real(kind=rp), intent(in) :: maxDistFP - !-local-variables---------------------------------------- - real(kind=rp) :: d, minDist, DistFP - real(kind=rp), parameter :: factor = 0.01_RP - integer :: i, j, STLNum - logical, dimension(this% NumOfSTL) :: found - - minDist = huge(1.0_RP) - -!$omp parallel shared(i,maxDistFP) -!$omp do schedule(runtime) private(j,STLNum,found,d,DistFP) - do i = 1, BandPoints_ALL% NumOfObjs + integer, intent(in) :: STLNum + real(kind=RP), intent(inout) :: vertices(:,:) - if( .not. BandPoints_ALL% x(i)% forcingPoint ) cycle - - d = 0.0_RP - - DistFP = maxDistFP - BandPoints_ALL% x(i)% Dist - - BandPoints_ALL% x(i)% ImagePoint_coords = BandPoints_ALL% x(i)% coords + DistFP * BandPoints_ALL% x(i)% normal - - found = .false. - - do j = 1, 5001 - ! first we move the point far away - do STLNum = 1, this% NumOfSTL - if( .not. OBB(STLNum)% isInsidePolygon( BandPoints_ALL% x(i)% ImagePoint_coords ) ) then - found(STLNum) = .true. - end if - end do - - if( all(found) ) exit - - found = .false. - - d = d + factor - - BandPoints_ALL% x(i)% ImagePoint_coords = BandPoints_ALL% x(i)% coords + (d + DistFP)*BandPoints_ALL% x(i)% normal - - end do - -!$omp critical - minDist = min(minDist,d) -!$omp end critical - - if( .not. all(found) ) print*, "can't set the Image point for the forcing point ", BandPoints_ALL% x(i)% coords - - end do -!$omp end do -!$omp end parallel + if( MPI_Process% doMPIAction ) then + call receiveSTLpartitions( this% stl(STLNum), STLNum, vertices, this% root(STLNum)% MaxAxis ) + end if -!$omp parallel shared(minDist,maxDistFP,i) -!$omp do schedule(runtime) private(d) - do i = 1, BandPoints_ALL% NumOfObjs - if( BandPoints_ALL% x(i)% forcingPoint ) then - d = maxDistFP - BandPoints_ALL% x(i)% Dist + minDist - BandPoints_ALL% x(i)% ImagePoint_coords = BandPoints_ALL% x(i)% coords + d*BandPoints_ALL% x(i)% normal - end if - end do -!$Omp end do -!$Omp end parallel + if( MPI_Process% isRoot ) then + call sendSTL2Partitions( this% stl(STLNum), STLNum, vertices, this% root(STLNum)% MaxAxis ) + end if + + end subroutine IBM_MPI_sendSTLpartitions + subroutine IBM_MPI_PointsListOperations( this, pointsList ) + use MPI_Process_Info + implicit none + !-arguments---------------------------- + class(IBM_type), intent(inout) :: this + type(IBMpoints), intent(inout) :: pointsList - end subroutine IBM_GetImagePointCoords - + if( MPI_Process% doMPIAction ) then + call SendPointsList2Root( pointsList ) + end if + + if( MPI_Process% doMPIRootAction ) then + call RecvPointsListRoot( pointsList ) + end if + + if( MPI_Process% doMPIRootAction ) then + call SendPointsList2partitions( pointsList ) + end if + + if( MPI_Process% doMPIAction ) then + call RecvPointsListpartitions( pointsList ) + end if + + end subroutine IBM_MPI_PointsListOperations +! +! MASK: root sends and receives its mask points +! ---------------------------------------------- + subroutine IBM_MPI_sendMask2Root( this ) + use MPI_Process_Info + implicit none + !-arguments----------------------------- + class(IBM_type), intent(inout) :: this + if( MPI_Process% isRoot ) then + call recvPointsMaskRoot() + end if + + if( MPI_Process% doMPIAction ) then + call sendPointsMask2Root() + endif + + end subroutine IBM_MPI_sendMask2Root +! +! MASK: all points go from root to partitions +! ------------------------------------------- + subroutine IBM_MPI_sendMask2Partitions( this ) + use MPI_Process_Info + implicit none + !-arguments---------------------------- + class(IBM_type), intent(inout) :: this + + if( MPI_Process% doMPIAction ) then + call recvPointsMaskPartitions() + end if + + if( MPI_Process% doMPIRootAction ) then + call sendPointsMask2Partitions() + endif + + end subroutine IBM_MPI_sendMask2Partitions + + subroutine IBM_MPI_sendNormals2Root( this, pointsList, ranks ) + use MPI_Process_Info + implicit none + !-arguments---------------------------- + class(IBM_type), intent(inout) :: this + type(IBMpoints), intent(inout) :: pointsList + real(kind=RP), intent(in) :: ranks(:) + + if( MPI_Process% doMPIAction ) then + call sendNormals2Root( pointsList ) + end if + if( MPI_Process% doMPIRootAction ) then + call recvNormalsRoot( PointsList, ranks ) + end if + end subroutine IBM_MPI_sendNormals2Root + + subroutine IBM_MPI_sendDistNormals2partitions( this, PointsList ) + use MPI_Process_Info + implicit none + !-arguments------------------------------- + class(IBM_type), intent(inout) :: this + type(IBMpoints), intent(inout) :: pointsList + + if( MPI_Process% doMPIRootAction ) then + call sendDistanceANDNormals2partitions( PointsList ) + end if + if( MPI_Process% doMPIAction ) then + call recvDistancesANDNormalspartitions( PointsList ) + end if - subroutine IBM_GetForcingPointsGeom( this ) + end subroutine IBM_MPI_sendDistNormals2partitions +! +!///////////////////////////////////////////////////////////////////////////////////////////// +! +! ------------------------------------------------------------ +! Moving bodies +! ------------------------------------------------------------ + subroutine IBM_MoveBody( this, elements, no_of_elements, no_of_DoFs, isChild, t, iter, autosave ) use MPI_Process_Info + implicit none + !-arguments----------------------------------------------------------------- + class(IBM_type), intent(inout) :: this + type(element), intent(inout) :: elements(:) + integer, intent(in) :: no_of_elements, no_of_DoFs + logical, intent(in) :: isChild + real(kind=RP), intent(in) :: t + integer, optional, intent(in) :: iter + logical, optional, intent(in) :: autosave + !-local-variables----------------------------------------------------------- + integer :: STLNum + + do STLNum = 1, this% NumOfSTL + if( this% stl(STLNum)% move ) then + call this% root(STLNum)% Destruct( isChild ) + if( this% ComputeBandRegion ) then + deallocate( this% BandRegion(STLNum)% x ) + call this% rootPoints(STLNum)% destruct( isChild ) + end if + if( this% ComputeDistance ) call this% rootDistance(STLNum)% destruct( isChild ) + call this% CleanMask( elements, no_of_elements, STLNum ) + if( MPI_Process% isRoot .and. .not. isChild ) then + call this% stl(STLNum)% ReadTessellation( this% STLfilename(STLNum) ) + if( this% stl(STLNum)% motionType .eq. ROTATION ) then + call this% stl(STLNum)% getRotationaMatrix( t ) + call OBB(STLNum)% STL_rotate(this% stl(STLNum)) + elseif( this% stl(STLNum)% motionType .eq. LINEAR ) then + call this% stl(STLNum)% getDisplacement( t ) + call OBB(STLNum)% STL_translate(this% stl(STLNum)) + end if + call this% stl(STLNum)% updateNormals() + this% stl(STLNum)% show = .false. + this% plotMask = .false. + if( present(autosave) .and. autosave ) this% plotMask = .true. + if( present(autosave) .and. autosave ) call this% stl(STLNum)% plot( iter ) + call OBB(STLNum)% construct( this% stl(STLNum), this% plotOBB, this% AAB ) + call OBB(STLNum)% ChangeObjsRefFrame( this% stl(STLNum)% ObjectsList, LOCAL ) + end if + call this% MPI_sendOBB(STLNum) + this% plotKDtree = .false. + call this% constructSTL_KDtree( STLNum ) + end if + end do - use omp_lib - + do STLNum = 1, this% NumOfSTL + if( this% stl(STLNum)% move ) call this% build( elements, no_of_elements, no_of_DoFs, isChild, STLNum, iter ) + end do + + end subroutine IBM_MoveBody +! +! Mask is cleaned +! --------------- + subroutine IBM_CleanMask( this, elements, no_of_elements, STLNum ) + implicit none - !-arguments--------------------------------------------- + !-arguments------------------------------------------------ class(IBM_type), intent(inout) :: this - !-local-variables-------------------------------------- - real(kind=RP) :: Dist, Point(NDIM), normal(NDIM), meanDist - integer :: i, STLNum + type(element), intent(inout) :: elements(:) + integer, intent(in) :: no_of_elements, STLNum + !-local-variables------------------------------------------ + integer :: eID, i, j, k +!$omp parallel +!$omp do schedule(runtime) private(i,j,k) + do eID = 1, no_of_elements + do i = 0, elements(eID)% Nxyz(1); do j = 0, elements(eID)% Nxyz(2); do k = 0, elements(eID)% Nxyz(3) + if( elements(eID)% STL(i,j,k) .eq. STLNum .and. elements(eID)% isInsideBody(i,j,k) ) then + elements(eID)% STL(i,j,k) = 0 + elements(eID)% isInsideBody(i,j,k) = .false. + end if + end do; end do; end do + end do +!$omp end do +!$omp end parallel + end subroutine IBM_CleanMask +! +!///////////////////////////////////////////////////////////////////////////////////////////// +! +! ---------------------------------------------------- +! Geometrical quantities for the turbulence wall model +! ---------------------------------------------------- + subroutine IBM_GetForcingPointsGeom( this, elements ) + use MPI_Process_Info + use MeshTypes + implicit none + !-arguments---------------------------------------- + class(IBM_type), intent(inout) :: this + type(element), intent(inout) :: elements(:) + !-local-variables---------------------------------- + real(kind=RP) :: dx, dy, dz, d, d_min, Dist + integer :: eID, i, j, k, n, Total #ifdef _HAS_MPI_ - real(kind=RP) :: MPI_in(2,1), MPI_out(2,1) integer :: ierr #endif this% NumOfForcingPoints = 0 @@ -1042,380 +1359,367 @@ subroutine IBM_GetForcingPointsGeom( this ) end do; end do; end do end do #ifdef _HAS_MPI_ - do i = 1, BandPoints_ALL% NumOfObjs - MPI_in(1,1) = BandPoints_ALL% x(i)% Dist - MPI_in(2,1) = MPI_Process% rank - call mpi_allreduce( MPI_in, MPI_out, 1, MPI_2DOUBLE_PRECISION, MPI_MINLOC, MPI_COMM_WORLD, ierr ) - if( MPI_Process% isRoot ) then - BandPoints_ALL% x(i)% Dist = MPI_out(1,1) - BandPoints_ALL% x(i)% rank = MPI_out(2,1) - end if - end do + call mpi_allreduce(this% NumOfForcingPoints, Total, 1, MPI_INT, MPI_SUM, MPI_COMM_WORLD, ierr) +#else + Total = this% NumOfForcingPoints #endif + if( Total .eq. 0 .and. MPI_Process% isRoot ) then + print*, "No forcing points found, change y+ target" + error stop + endif - if ( MPI_Process% doMPIAction ) then - call recvGeom() - end if - - if( MPI_Process% doMPIRootAction ) then - call sendGeom() - end if - - call this% BandPoint_SetGeom() - - meanDist = sum(BandPoints_ALL% x(:)% Dist,BandPoints_ALL% x(:)% forcingPoint)/BandPoints_ALL% NumOfF_Points - -!$omp parallel shared(i,meanDist) -!$omp do schedule(runtime) - do i = 1, BandPoints_ALL% NumOfObjs - if( BandPoints_ALL% x(i)% forcingPoint .and. BandPoints_ALL% x(i)% Dist .gt. meanDist ) then - BandPoints_ALL% x(i)% forcingPoint = .false. -!$omp critical - BandPoints_ALL% NumOfF_Points = BandPoints_ALL% NumOfF_Points - 1 -!$omp end critical - end if + allocate(this% ImagePoints(this% NumOfForcingPoints)) + n = 0 + + do eID = 1, size(elements) + do k = 0, elements(eID)% Nxyz(3); do j = 0, elements(eID)% Nxyz(2); do i = 0, elements(eID)% Nxyz(1) + if( elements(eID)% isForcingPoint(i,j,k) ) then + Dist = this% IP_distance - elements(eID)% geom% dWall(i,j,k) + n = n + 1 + this% ImagePoints(n)% coords = elements(eID)% geom% x(:,i,j,k) + Dist * elements(eID)% geom% normal(:,i,j,k) + this% ImagePoints(n)% element_index = eID + this% ImagePoints(n)% local_Position = (/i,j,k/) + this% ImagePoints(n)% index = n + end if + end do; end do; end do end do -!$omp end do -!$omp end parallel - call this% GetImagePointCoords( meanDist ) + call Plot_Forcing_Imagepoints( this, elements ) end subroutine IBM_GetForcingPointsGeom - - - subroutine IBM_BandPoint_SetGeom( this ) - use MPI_Process_Info + subroutine IBM_ImagePointsElement( this)!, mesh ) implicit none - !-arguments------------------------------------------------- - class(IBM_type), intent(inout) :: this - !-local-variables------------------------------------------- - real(kind=rp), dimension(:,:), allocatable :: bpNormals - real(kind=rp), dimension(:), allocatable :: local_sum - integer :: i, rank -#ifdef _HAS_MPI_ - integer :: ierr -#endif + !-arguments----------------- + class(IBM_type), intent(inout) :: this + !type(HexMesh), intent(inout) :: mesh + !-local-variables----------------------- + integer :: i - allocate( bpNormals(NDIM,BandPoints_ALL% NumOfObjs), & - local_sum(BandPoints_ALL% NumOfObjs) ) + !do i = 1, this% NumOfForcingPoints + !do eID = 1, size(elements) + ! success = elements(eID) % FindPointInLinElement(x, nodes) + ! if ( success ) exit + !end do - bpNormals = 0.0_RP - do i = 1, BandPoints_ALL% NumOfObjs - rank = BandPoints_ALL% x(i)% rank - if( rank .eq. MPI_Process% rank ) then - bpNormals(:,i) = BandPoints_ALL% x(i)% normal - end if - end do - -#ifdef _HAS_MPI_ - do i = 1, NDIM - local_sum = bpNormals(i,:) - call mpi_allreduce( local_sum, bpNormals(i,:), BandPoints_ALL% NumOfObjs, MPI_DOUBLE, & - MPI_SUM, MPI_COMM_WORLD, ierr ) - end do -#endif + !if (eID <= self % no_of_elements) then + ! success = self % FindPointWithCoordsInNeighbors(x, xi, eID, 2) + ! if ( success ) then + ! HexMesh_FindPointWithCoords = .true. + ! return + ! end if + !end if + !call mesh% FindPointWithCoords(this% ImagePoints(i)% coords, this% ImagePoints(i)% element_in, this% ImagePoints(i)% xi) + !end do - do i = 1, BandPoints_ALL% NumOfObjs - BandPoints_ALL% x(i)% normal = bpNormals(:,i) - end do - - deallocate(bpNormals,local_sum) - - end subroutine IBM_BandPoint_SetGeom + end subroutine IBM_ImagePointsElement - subroutine IBM_BandPoint_state( this, elements, bpQ, bpU_x, bpU_y, bpU_z ) - use PhysicsStorage + + subroutine Plot_Forcing_Imagepoints( IBM, elements ) use MPI_Process_Info implicit none - !-arguments------------------------------------------------------ - class(IBM_type), intent(inout) :: this - type(element), dimension(:), intent(in) :: elements - real(kind=rp), dimension(:,:), intent(inout) :: bpQ, bpU_x, & - bpU_y, bpU_z - !-local-variables------------------------------------------------- - integer :: i -#ifdef _HAS_MPI_ - real(kind=rp), dimension(:), allocatable :: local_sum - integer :: ierr -#endif - - optional :: bpU_x, bpU_y, bpU_z - - bpQ = 0.0_RP - if( present(bpU_x) ) bpU_x = 0.0_RP - if( present(bpU_y) ) bpU_y = 0.0_RP - if( present(bpU_z) ) bpU_z = 0.0_RP + !-arguments---------------------------------------- + type(IBM_type), intent(in) :: IBM + type(element), intent(in) :: elements(:) + !-local-variables---------------------------------- + real(kind=RP) :: ImagePoint(NDIM), & + Dist + character(len=LINE_LENGTH) :: filenameFP, & + filenameIP, & + lvl, rank + integer :: eID, i, j, k, & + funit + logical :: add_Point = .false. -!$omp parallel shared(i,bpQ,bpU_x,bpU_y,bpU_z) -!$omp do schedule(runtime) - do i = 1, BandPoints_ALL% NumOfObjs - if( BandPoints_ALL% x(i)% partition .eq. MPI_Process% rank ) then - bpQ(:,i) = elements(BandPoints_ALL% x(i)% element_index)% storage% & - Q(:,BandPoints_ALL% x(i)% local_Position(1), & - BandPoints_ALL% x(i)% local_Position(2), & - BandPoints_ALL% x(i)% local_Position(3) ) - if( present(bpU_x) ) then - bpU_x(:,i) = elements(BandPoints_ALL% x(i)% element_index)% storage% & - U_x(:,BandPoints_ALL% x(i)% local_Position(1), & - BandPoints_ALL% x(i)% local_Position(2), & - BandPoints_ALL% x(i)% local_Position(3) ) - end if - if( present(bpU_y) ) then - bpU_y(:,i) = elements(BandPoints_ALL% x(i)% element_index)% storage% & - U_y(:,BandPoints_ALL% x(i)% local_Position(1), & - BandPoints_ALL% x(i)% local_Position(2), & - BandPoints_ALL% x(i)% local_Position(3) ) - end if - if( present(bpU_z) ) then - bpU_z(:,i) = elements(BandPoints_ALL% x(i)% element_index)% storage% & - U_z(:,BandPoints_ALL% x(i)% local_Position(1), & - BandPoints_ALL% x(i)% local_Position(2), & - BandPoints_ALL% x(i)% local_Position(3) ) - end if + if( IBM% NumOfForcingPoints .eq. 0 ) return + + if( MPI_Process% nProcs .gt. 1 ) then + write(rank,*) MPI_Process% rank + if( IBM% lvl .gt. 0 ) then + write(lvl,*) IBM% lvl + filenameFP = 'ForcingPoints_'//trim(IBM% filename)//'_MGlevel'//trim(adjustl(lvl))//'_Process'//trim(adjustl(rank)) + filenameIP = 'ImagePoints_'//trim(IBM% filename)//'_MGlevel'//trim(adjustl(lvl))//'_Process'//trim(adjustl(rank)) + else + filenameFP = 'ForcingPoints_'//trim(IBM% filename)//'_Process'//trim(adjustl(rank)) + filenameIP = 'ImagePoints_'//trim(IBM% filename)//'_Process'//trim(adjustl(rank)) + end if + else + if( IBM% lvl .gt. 0 ) then + write(lvl,*) IBM% lvl + filenameFP = 'ForcingPoints_'//trim(IBM% filename)//'_MGlevel'//trim(adjustl(lvl)) + filenameIP = 'ImagePoints_'//trim(IBM% filename)//'_MGlevel'//trim(adjustl(lvl)) + else + filenameFP = 'ForcingPoints_'//trim(IBM% filename) + filenameIP = 'ImagePoints_'//trim(IBM% filename) end if + endif + + call TecFileHeader( 'IBM/'//trim(filenameFP), 'Forcing Points', IBM% NumOfForcingPoints/2+mod(IBM% NumOfForcingPoints,2),2,1, funit, 'POINT' ) + + if( mod(IBM% NumOfForcingPoints,2) .ne. 0 ) add_Point = .true. + + do eID = 1, size(elements) + associate ( e => elements(eID) ) + do k = 0, e% Nxyz(3); do j = 0, e% Nxyz(2) ; do i = 0, e% Nxyz(1) + if( e% isForcingPoint(i,j,k) ) then + write(funit,'(3E13.5)') e% geom% x(1,i,j,k), e% geom% x(2,i,j,k), e% geom% x(3,i,j,k) + if( add_Point ) then + write(funit,'(3E13.5)') e% geom% x(1,i,j,k), e% geom% x(2,i,j,k), e% geom% x(3,i,j,k) + add_Point = .false. + end if + end if + end do; end do; end do + end associate end do -!$omp end do -!$omp end parallel + + close(funit) -#ifdef _HAS_MPI_ - allocate(local_sum(BandPoints_ALL% NumOfObjs)) - do i = 1, NCONS - local_sum = bpQ(i,:) - call mpi_allreduce(local_sum, bpQ(i,:), BandPoints_ALL% NumOfObjs, MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD, ierr) - if( present(bpU_x) ) then - local_sum = bpU_x(i,:) - call mpi_allreduce(local_sum, bpU_x(i,:), BandPoints_ALL% NumOfObjs, MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD, ierr) - end if - if( present(bpU_y) ) then - local_sum = bpU_y(i,:) - call mpi_allreduce(local_sum, bpU_y(i,:), BandPoints_ALL% NumOfObjs, MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD, ierr) - end if - if( present(bpU_z) ) then - local_sum = bpU_z(i,:) - call mpi_allreduce(local_sum, bpU_z(i,:), BandPoints_ALL% NumOfObjs, MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD, ierr) + call TecFileHeader( 'IBM/'//trim(filenameIP), 'Image Points', IBM% NumOfForcingPoints/2+mod(IBM% NumOfForcingPoints,2),2,1, funit, 'POINT' ) + + do i = 1, IBM% NumOfForcingPoints + write(funit,'(3E13.5)') IBM% ImagePoints(i)% coords(1), IBM% ImagePoints(i)% coords(2), IBM% ImagePoints(i)% coords(3) + if( add_Point ) then + write(funit,'(3E13.5)') IBM% ImagePoints(i)% coords(1), IBM% ImagePoints(i)% coords(2), IBM% ImagePoints(i)% coords(3) + add_Point = .false. end if - end do - deallocate(local_sum) -#endif - end subroutine IBM_BandPoint_state - + end do + + close(funit) + + end subroutine Plot_Forcing_Imagepoints ! -!///////////////////////////////////////////////////////////////////////////////////////////// -! -! ------------------------------------------------- -! This subroutine reads the info in the #define region of controlfile -! ----------------------------------------------- - subroutine IBM_GetInfo( this, controlVariables ) - use FileReadingUtilities +! DoFs closer to each image point +! ------------------------------- + subroutine IBM_GetImagePoint_nearest( this, elements ) + use MappedGeometryClass + use PhysicsStorage + use MPI_Process_Info + use ElementClass implicit none - !-arguments---------------------------------------------------------------- + !-arguments------------------------------------------------------------------------------------- class(IBM_type), intent(inout) :: this - class(FTValueDictionary) :: controlVariables - !-local-variables---------------------------------------------------------- - logical, allocatable :: active_in, describe_in, plotOBB_in, & - plotKDtree_in, semiImplicit_in, & - plotBandPoints_in, plotMask_in, & - Wallfunction_in - real(kind=rp), allocatable :: penalization_in, BandRegionCoeff_in - integer, allocatable :: n_of_Objs_in, n_of_interpoints_in, & - IntegrationOrder_in, sym_planes(:) - character(len=LINE_LENGTH) :: in_label, paramFile, name_in, tmp - integer :: i - - character(len=LINE_LENGTH), parameter :: NumberOfSTL = "number of stl" - -! Read block -! ********** - write(in_label , '(A)') "#define ibm" - call get_command_argument(1, paramFile) - call readValueInRegion ( trim ( paramFile ), "name", name_in, in_label, "#end" ) - call readValueInRegion ( trim ( paramFile ), "active", active_in, in_label, "#end" ) - call readValueInRegion ( trim ( paramFile ), "penalization", penalization_in, in_label, "#end" ) - call readValueInRegion ( trim ( paramFile ), "semi implicit", semiImplicit_in, in_label, "#end" ) - call readValueInRegion ( trim ( paramFile ), "wall function", Wallfunction_in, in_label, "#end" ) - call readValueInRegion ( trim ( paramFile ), "number of objects", n_of_Objs_in, in_label, "#end" ) - call readValueInRegion ( trim ( paramFile ), "number of interpolation points", n_of_interpoints_in, in_label, "#end" ) - call readValueInRegion ( trim ( paramFile ), "band region coefficient", BandRegionCoeff_in, in_label, "#end" ) - call readValueInRegion ( trim ( paramFile ), "integration order", IntegrationOrder_in, in_label, "#end" ) - call readValueInRegion ( trim ( paramFile ), "describe", describe_in, in_label, "#end" ) - call readValueInRegion ( trim ( paramFile ), "plot obb" ,plotOBB_in, in_label , "# end" ) - call readValueInRegion ( trim ( paramFile ), "plot kdtree" ,plotKDtree_in, in_label , "# end" ) - call readValueInRegion ( trim ( paramFile ), "plot mask", plotMask_in, in_label, "#end" ) - call readValueInRegion ( trim ( paramFile ), "plot band points", plotBandPoints_in, in_label, "#end" ) - - this% filename = trim(name_in) - - if( allocated(active_in) ) then - this% active = active_in - else - this% active = .FALSE. - end if - - if( .not. this% active) return - - this% semiImplicit = .false. - if( allocated(semiImplicit_in) ) then - this% active_semiImplicit = semiImplicit_in - else - this% active_semiImplicit = .FALSE. - end if - - if( allocated(describe_in) ) then - this% describeIBM = describe_in - else - this% describeIBM = .FALSE. - end if - - if( allocated(plotOBB_in) ) then - this% plotOBB = plotOBB_in - else - this% plotOBB = .FALSE. - end if - - if( allocated(plotKDtree_in) ) then - this% plotKDtree = plotKDtree_in - else - this% plotKDtree = .FALSE. - end if + type(element), intent(inout) :: elements(:) + !-local-variables------------------------------------------------------------------------------- + real(kind=RP) :: iP(NDIM), Dist + integer :: i, n, STLNum +!$omp parallel +!$omp do schedule(runtime) private(Dist,STLNum,iP,n) + do i = 1, this% NumOfForcingPoints + STLNum = elements(this% ImagePoints(i)% element_index)% STL( this% ImagePoints(i)% local_Position(1), & + this% ImagePoints(i)% local_Position(2), & + this% ImagePoints(i)% local_Position(3) ) + + call OBB(STLNum)% ChangeRefFrame(this% ImagePoints(i)% coords,LOCAL,iP) + + allocate( this% ImagePoints(i)% nearestPoints(this% NumOfInterPoints), & + this% ImagePoints(i)% invPhi(this% NumOfInterPoints,this% NumOfInterPoints), & + this% ImagePoints(i)% b(this% NumOfInterPoints) ) + + this% ImagePoints(i)% nearestPoints = 0 + + do n = 1, this% NumOfInterPoints + call MinimumDistancePoints( iP, this% rootPoints(STLNum), this% BandRegion(STLNum), & + Dist, n, this% ImagePoints(i)% nearestPoints ) + end do + + if(any(this% ImagePoints(i)% nearestPoints .eq. 0) ) then + print *, "Can't fine nearest point for the image point: ", i + error stop + end if - if( allocated(penalization_in) ) then - this% eta = penalization_in - this% TimePenal = .false. - else - this% eta = 0.1_RP - this% TimePenal = .true. - end if - - if( allocated(n_of_Objs_in) ) then - this% KDtree_Min_n_of_Objs = n_of_Objs_in - else - this% KDtree_Min_n_of_Objs = 5 - end if - - if( allocated(n_of_interpoints_in) ) then - this% KDtree_n_of_interPoints = n_of_interpoints_in - else - this% KDtree_n_of_interPoints = 15 - end if - - if( allocated(IntegrationOrder_in) ) then - this% IntegrationOrder = IntegrationOrder_in - else - this% IntegrationOrder = 2 - end if - - if( allocated(plotBandPoints_in) ) then - this% plotBandPoints = plotBandPoints_in - else - this% plotBandPoints = .false. - end if - - if( allocated(plotMask_in) ) then - this% plotMask = plotMask_in - else - this% plotMask = .false. - end if - - if( allocated(BandRegionCoeff_in) ) then - this% BandRegionCoeff = BandRegionCoeff_in - else - this% BandRegionCoeff = 1.5_RP - end if - - if( allocated(Wallfunction_in) ) then - this% Wallfunction = Wallfunction_in - else - this% Wallfunction = .false. - end if - - if( this% Wallfunction ) then - if (.not. controlVariables % containsKey("wall function")) then - print *, "IBM_GetInfo:: 'wall function' not specified in the control file" - error stop + call GetMatrixInterpolationSystem( iP, & + this% BandRegion(STLNum)% x(this% ImagePoints(i)% nearestPoints), & + this% ImagePoints(i)% invPhi, & + this% ImagePoints(i)% b, this% InterpolationType ) + end do +!$omp end do +!$omp end parallel + end subroutine IBM_GetImagePoint_nearest +! +! Distance from the wall needed +! ----------------------------- + subroutine IBM_ComputeIBMWallDistance( this, elements, movingSTL ) + use MPI_Process_Info + implicit none + !-arguments-------------------------------------- + class(IBM_type), intent(inout) :: this + type(element), intent(inout) :: elements(:) + integer, optional , intent(in) :: movingSTL + !-local-variables-------------------------------- + integer :: STLNum + + allocate(this% BandRegion4Distance(this% NumOfSTL)) + + do STLNum = 1, this% NumOfSTL + if( .not. present(movingSTL) )then + call this% GetDistanceInsideBox( elements, STLNum ) + else + if( STLNum .eq. movingSTL) call this% GetDistanceInsideBox( elements, STLNum ) end if - end if - - if( controlVariables% containsKey(trim(NumberOfSTL)) ) then - tmp = controlVariables% StringValueForKey(trim(NumberOfSTL),LINE_LENGTH) - this% NumOfSTL = GetIntValue(tmp) - else - this% NumOfSTL = 1 - end if + end do - this% symmetry = .false. - - if( controlVariables% containsKey("symmetry planes") ) then - this% symmetry = .true. - tmp = controlVariables% StringValueForKey("symmetry planes",LINE_LENGTH) - sym_planes = getIntArrayFromString(tmp) - if( maxval(abs(sym_planes)) .gt. 3 ) then - error stop " IBM_GetInfo :: Symmetry planes allowed values -3:3" - end if - allocate( this% symPlanes(size(sym_Planes,1)), this% symCoords(size(sym_Planes,1)) ) - do i = 1, size(sym_Planes,1) - this% symPlanes(i) = sym_planes(i) - if( sym_planes(i) .gt. 0 ) then - this% symCoords(i) = -huge(1.0_RP) - else - this% symCoords(i) = huge(1.0_RP) - end if - end do - end if + do STLNum = 1, this% NumOfSTL + if( .not. present(movingSTL) )then + call this%GetDistanceOutsideBox( STLNum ) + else + if( STLNum .eq. movingSTL) call this%GetDistanceOutsideBox( STLNum ) + end if + end do - - end subroutine IBM_GetInfo + do STLNum = 1, this% NumOfSTL + if( .not. present(movingSTL) )then + call SetDistances( this% BandRegion4Distance(STLNum), elements ) + else + if( STLNum .eq. movingSTL) call SetDistances( this% BandRegion4Distance(STLNum), elements ) + endif + end do + + deallocate(this% BandRegion4Distance) + + if( this% Wallfunction ) then +#if defined(NAVIERSTOKES) + call this% GetForcingPointsGeom( elements ) +#endif + endif + + end subroutine IBM_ComputeIBMWallDistance ! !///////////////////////////////////////////////////////////////////////////////////////////// ! -! ------------------------------------------------- -! This subroutine describes the IBM info -! ----------------------------------------------- - subroutine IBM_Describe( this ) - use Headers - use mainKeywordsModule +! ------------------------------------------------------------------------------------- +! Computing the distance between a point and the triangles inside the box it lies in +! ------------------------------------------------------------------------------------- + subroutine IBM_GetDistanceInsideBox( this, elements, STLNum ) use MPI_Process_Info implicit none - !-arguments-------------------------------- - class(IBM_type), intent(inout) :: this - - if ( MPI_Process % isRoot ) then - write(STD_OUT,'(/)') - call Section_Header("IBM parameters") - write(STD_OUT,'(/)') - - call SubSection_Header('IBM info') - - write(STD_OUT,'(30X,A,A35,L10)') "->" , "Semi implicit treatment: ", this% active_semiImplicit - if( .not. this% TimePenal ) then - write(STD_OUT,'(30X,A,A35,1pG10.3)') "->" , "Penalization term: " , this% eta - else - write(STD_OUT,'(30X,A,A35,A)') "->" , "Penalization term: ", " proportional to time step" + !-arguments------------------------------------ + class(IBM_type), intent(inout) :: this + type(element), intent(inout) :: elements(:) + integer, intent(in) :: STLNum + !-local-variables------------------------------ + integer :: i, no_of_elements + real(kind=RP) :: xP(NDIM), Dist, normal(NDIM) + + no_of_elements = size(elements) + + call this% constructBandRegion4Distance( elements, no_of_elements, STLNum ) +!$omp parallel +!$omp do schedule(runtime) private(xP,Dist,normal) + do i = 1, this% BandRegion4Distance(STLNum)% NumOfObjs + this% BandRegion4Distance(STLNum)% x(i)% Dist = huge(1.0_RP) + this% BandRegion4Distance(STLNum)% x(i)% STLNum = STLNum + this% BandRegion4Distance(STLNum)% x(i)% normal = 0.0_RP + xP = this% BandRegion4Distance(STLNum)% x(i)% coords + if( isInsideBox(xP,this% rootDistance(STLNum)% vertices) ) then + call MinimumDistance( xP, this% rootDistance(STLNum), Dist, normal ) + if( Dist .lt. this% BandRegion4Distance(STLNum)% x(i)% Dist ) then + this% BandRegion4Distance(STLNum)% x(i)% Dist = Dist + this% BandRegion4Distance(STLNum)% x(i)% normal = normal + end if + end if + end do +!$omp end do +!$omp end parallel + end subroutine IBM_GetDistanceInsideBox +! +!///////////////////////////////////////////////////////////////////////////////////////////// +! +! ------------------------------------------------------------------------------------------- +! Computing the distance between a point and the triangles inside the box it does not lay in +! ------------------------------------------------------------------------------------------- + subroutine IBM_GetDistanceOutsideBox( this, STLNum ) + use MPI_Process_Info + implicit none + !-arguments----------------------------------- + class(IBM_type), intent(inout) :: this + integer, intent(in) :: STLNum + !-local-variables----------------------------- + integer :: i, no_of_elements + real(kind=RP) :: xP(NDIM), Dist, normal(NDIM) +#ifdef _HAS_MPI_ + real(kind=rp), allocatable :: input(:,:), output(:,:) + integer :: ierr, rank +#endif +#ifdef _HAS_MPI_ + allocate( input(2,this% BandRegion4Distance(STLNum)% NumOfObjs), & + output(2,this% BandRegion4Distance(STLNum)% NumOfObjs) ) +#endif +!$omp parallel +!$omp do schedule(runtime) private(xP,Dist,normal) + do i = 1, this% BandRegion4Distance(STLNum)% NumOfObjs + xP = this% BandRegion4Distance(STLNum)% x(i)% coords + this% BandRegion4Distance(STLNum)% x(i)% STLNum = STLNum + if( .not. isInsideBox(xP,this% rootDistance(STLNum)% vertices) ) then + call MinimumDistanceSphereKDtree( xP, this% rootDistance(STLNum), this% BandRegion4Distance(STLNum)% x(i)% Dist, Dist, normal ) + if( Dist .lt. this% BandRegion4Distance(STLNum)% x(i)% Dist ) then + this% BandRegion4Distance(STLNum)% x(i)% Dist = Dist + this% BandRegion4Distance(STLNum)% x(i)% normal = normal + end if + end if +#ifdef _HAS_MPI_ + input(1,i) = this% BandRegion4Distance(STLNum)% x(i)% Dist + input(2,i) = MPI_Process% rank +#endif + end do +!$omp end do +!$omp end parallel +#ifdef _HAS_MPI_ + call mpi_allreduce( input, output, this% BandRegion4Distance(STLNum)% NumOfObjs, & + MPI_2DOUBLE_PRECISION, MPI_MINLOC, & + MPI_COMM_WORLD, ierr ) + + if( MPI_Process% isRoot ) then + do i = 1, this% BandRegion4Distance(STLNum)% NumOfObjs + this% BandRegion4Distance(STLNum)% x(i)% Dist = output(1,i) + end do end if - write(STD_OUT,'(30X,A,A35,I10)') "->" , "Minimum number of objects: ", this% KDtree_Min_n_of_Objs - write(STD_OUT,'(30X,A,A35,I10)') "->" , "Number of interpolation points: ", this% KDtree_n_of_interPoints - write(STD_OUT,'(30X,A,A35,I10)') "->" , "Integration order: ", this% IntegrationOrder - if( this% symmetry ) then - select case( size(this% symPlanes,1) ) - case( 1 ) - write(STD_OUT,'(30X,A,A35,I2,A)') "->" , "Symmetry planes: [", this% symPlanes(1),"]" - case( 2 ) - write(STD_OUT,'(30X,A,A36,I2,A,I2,A)') "->" , "Symmetry planes: [", this% symPlanes(1),",",this% symPlanes(2),"]" - case( 3 ) - write(STD_OUT,'(30X,A,A35,I2,A,I2,A,I2,A)') "->" , "Symmetry planes: [", this% symPlanes(1),",",this% symPlanes(2),",",this% symPlanes(3),"]" - case default - write(STD_OUT,'(30X,A,A35,I10)') "->" , "Symmetry planes: ", this% symPlanes - end select - end if - end if - end subroutine IBM_Describe + call this% MPI_sendNormals2Root( this% BandRegion4Distance(STLNum), output(2,:) ) + call this% MPI_sendDistNormals2partitions( this% BandRegion4Distance(STLNum) ) + + deallocate(input,output) +#endif + end subroutine IBM_GetDistanceOutsideBox + + subroutine SetDistances( BandRegion4Distance, elements ) + use MPI_Process_Info + implicit none + !-arguments--------------------------------------------------- + type(IBMpoints), intent(inout) :: BandRegion4Distance + type(element), intent(inout) :: elements(:) + !-local-variables--------------------------------------------- + integer :: i +!$omp parallel +!$omp do schedule(runtime) + do i = 1, BandRegion4Distance% NumOfObjs + BandRegion4Distance% x(i)% Dist = sqrt(BandRegion4Distance% x(i)% Dist) + if( BandRegion4Distance% x(i)% partition .eq. MPI_Process% rank ) then + elements(BandRegion4Distance% x(i)% element_index)% geom% & + dWall(BandRegion4Distance% x(i)% local_Position(1), & + BandRegion4Distance% x(i)% local_Position(2), & + BandRegion4Distance% x(i)% local_Position(3) ) = BandRegion4Distance% x(i)% Dist + elements(BandRegion4Distance% x(i)% element_index)% geom% & + normal(:, BandRegion4Distance% x(i)% local_Position(1), & + BandRegion4Distance% x(i)% local_Position(2), & + BandRegion4Distance% x(i)% local_Position(3) ) = BandRegion4Distance% x(i)% normal + elements(BandRegion4Distance% x(i)% element_index)% & + STL(BandRegion4Distance% x(i)% local_Position(1), & + BandRegion4Distance% x(i)% local_Position(2), & + BandRegion4Distance% x(i)% local_Position(3) ) = BandRegion4Distance% x(i)% STLNum + end if + end do +!$omp end do +!$omp end parallel + + deallocate( BandRegion4Distance% x) + + end subroutine SetDistances ! !///////////////////////////////////////////////////////////////////////////////////////////// ! ! ------------------------------------------------- -! This subroutine computes the IBM source term +! Source terms for the immersed boundary ! ------------------------------------------------ subroutine IBM_SourceTerm( this, eID, Q, Q_target, Source, Wallfunction ) use PhysicsStorage @@ -1432,11 +1736,7 @@ subroutine IBM_SourceTerm( this, eID, Q, Q_target, Source, Wallfunction ) #if defined(SPALARTALMARAS) real(kind=rp) :: theta, theta_s #endif - - optional :: Q_target - Source = 0.0_RP - #if defined(NAVIERSTOKES) if( present(Q_target) ) then rho_s = Q_target(IRHO) @@ -1444,7 +1744,7 @@ subroutine IBM_SourceTerm( this, eID, Q, Q_target, Source, Wallfunction ) v_s = Q_target(IRHOV)/rho_s w_s = Q_target(IRHOW)/rho_s #if defined(SPALARTALMARAS) - theta_s = Q_target(IRHOTHETA) + theta_s = Q_target(IRHOTHETA)/rho_s #endif else rho_s = Q(IRHO) @@ -1465,12 +1765,12 @@ subroutine IBM_SourceTerm( this, eID, Q, Q_target, Source, Wallfunction ) Source(IRHOV) = rho*v-rho_s*v_s Source(IRHOW) = rho*w-rho_s*w_s Source(IRHOE) = 0.5_RP * rho*( POW2(u) + POW2(v) + POW2(w) ) & - -0.5_RP * rho_s*( POW2(u_s) + POW2(v_s) + POW2(w_s) ) + -0.5_RP * rho_s*( POW2(u_s) + POW2(v_s) + POW2(w_s) ) #if defined(SPALARTALMARAS) - Source(IRHOTHETA) = (theta - theta_s) + theta = Q(IRHOTHETA)/rho + Source(IRHOTHETA) = rho*theta - rho_s*theta_s #endif #endif - if( Wallfunction ) then Source = -1.0_RP/(this% penalCoeff * this% penalization(eID)) * Source else @@ -1558,35 +1858,36 @@ subroutine IBM_semiImplicitShiftJacobian( this, eID, Q, dt, invdS_dQ ) use PhysicsStorage implicit none !-arguments---------------------------------------------------------------- - class(IBM_type), intent(inout) :: this - integer, intent(in) :: eID - real(kind=rp), dimension(NCONS), intent(in) :: Q - real(kind=rp), intent(in) :: dt - real(kind=rp), dimension(NCONS,NCONS), intent(inout) :: invdS_dQ + class(IBM_type), intent(inout) :: this + integer, intent(in) :: eID + real(kind=rp), intent(in) :: Q(:) + real(kind=rp), intent(in) :: dt + real(kind=rp), intent(inout) :: invdS_dQ(:,:) !-local-variables---------------------------------------------------------- real(kind=rp) :: rho, u, v, w invdS_dQ = 0.0_RP associate( eta => this% penalization(eID) ) - -#if defined(NAVIERSTOKES) && (!(SPALARTALMARAS)) +#if defined(NAVIERSTOKES) rho = Q(IRHO) u = Q(IRHOU)/rho v = Q(IRHOV)/rho w = Q(IRHOW)/rho - invdS_dQ(IRHO,IRHO) = 1.0_RP - invdS_dQ(IRHOU,IRHOU) = eta/( dt + eta ) - invdS_dQ(IRHOV,IRHOV) = eta/( dt + eta ) - invdS_dQ(IRHOW,IRHOW) = eta/( dt + eta ) - invdS_dQ(IRHOE,:) = (/ 0.5_RP*dt/eta * (POW2(u) + POW2(v) + POW2(w)), & - -dt*u/(dt + eta), & - -dt*v/(dt + eta), & - -dt*w/(dt + eta), & - 1.0_RP /) + invdS_dQ(IRHO,IRHO) = 1.0_RP + invdS_dQ(IRHOU,IRHOU) = eta/( dt + eta ) + invdS_dQ(IRHOV,IRHOV) = eta/( dt + eta ) + invdS_dQ(IRHOW,IRHOW) = eta/( dt + eta ) + invdS_dQ(IRHOE,IRHO:IRHOE) = (/ 0.5_RP*dt/eta * (POW2(u) + POW2(v) + POW2(w)), & + -dt*u/(dt + eta), & + -dt*v/(dt + eta), & + -dt*w/(dt + eta), & + 1.0_RP /) +#if defined(SPALARTALMARAS) + invdS_dQ(IRHOTHETA,IRHOTHETA) = eta/( dt + eta ) +#endif #endif - end associate end subroutine IBM_SemiImplicitShiftJacobian @@ -1638,170 +1939,109 @@ end subroutine IBM_GetSemiImplicitStep ! ------------------------------------------------------------------------------------------------ subroutine IBM_GetSemiImplicitStepTurbulence( this, ImagePoint, dt, Q, normal, dWall, STLNum ) use PhysicsStorage + use DenseMatUtilities implicit none - !-arguments---------------------------------------------------- - class(IBM_type), intent(inout) :: this - integer, intent(in) :: eID - real(kind=rp), dimension(NCONS), intent(in) :: Q - real(kind=rp), dimension(NCONS,NCONS), intent(inout) :: dS_dQ - !-local-variables---------------------------------------------- - real(kind=rp) :: rho, u, v, w + !-arguments------------------------------------------------------- + class(IBM_type), intent(inout) :: this + type(point_type), intent(in) :: ImagePoint + real(kind=rp), intent(in) :: dt, normal(:), dWall + integer, intent(in) :: STLNum + real(kind=rp), intent(inout) :: Q(:) + !-local-variables------------------------------------------------- + real(kind=rp) :: dS_dQ(NCONS,NCONS), invdS_dQ(NCONS,NCONS), & + TurbulenceSource(NCONS) - dS_dQ = 0.0_RP + call this% semiImplicitTurbulenceJacobian( ImagePoint, Q, normal, dWall, STLNum, dS_dQ ) -#if defined(NAVIERSTOKES) && (!(SPALARTALMARAS)) - rho = Q(IRHO) - u = Q(IRHOU)/rho - v = Q(IRHOV)/rho - w = Q(IRHOW)/rho + invdS_dQ = -dS_dQ - dS_dQ(IRHOU,IRHOU) = 1.0_RP - dS_dQ(IRHOV,IRHOV) = 1.0_RP - dS_dQ(IRHOW,IRHOW) = 1.0_RP - dS_dQ(IRHOE,:) = (/ -0.5_RP*( POW2(u) + POW2(v) + POW2(w) ), & - u, v, w, 0.0_RP /) -#endif + call this% SemiImplicitTurbulenceShiftJacobian( dt, invdS_dQ ) - dS_dQ = -1.0_RP/this% penalization(eID) * dS_dQ + invdS_dQ = inverse(invdS_dQ) + + call this% SourceTermTurbulence( ImagePoint, Q, normal, dWall, STLNum, TurbulenceSource ) - end subroutine IBM_SemiImplicitJacobian - - subroutine IBM_GetSemiImplicitStep( this, eID, dt, Q ) - use PhysicsStorage - implicit none - !-arguments---------------------------------------------- - class(IBM_type), intent(inout) :: this - integer, intent(in) :: eID - real(kind=rp), intent(in) :: dt - real(kind=rp), dimension(NCONS), intent(inout) :: Q - !-local-variables---------------------------------------- - real(kind=rp), dimension(NCONS,NCONS) :: dS_dQ, invdS_dQ - real(kind=rp), dimension(NCONS) :: IBMSource - - call this% semiImplicitJacobian( eID, Q, dS_dQ ) - call this% semiImplicitShiftJacobian( eID, Q, dt, invdS_dQ ) - - call this% SourceTerm(eID = eID, Q = Q, Source = IBMSource) + Q = matmul(invdS_dQ, Q + dt*( TurbulenceSource - matmul(dS_dQ,Q) )) + + end subroutine IBM_GetSemiImplicitStepTurbulence +! +! Splitting correction is applied. In the splitting, dt = dt/2 +! ------------------------------------------------------------ + subroutine IBM_SemiImplicitCorrection( this, elements, dt ) - Q = matmul(invdS_dQ, Q + dt*( IBMSource - matmul(dS_dQ,Q) )) - - end subroutine IBM_GetSemiImplicitStep - - subroutine IBM_SetIntegration( this, STLNum ) - use MPI_Process_Info - use MappedGeometryClass implicit none - !-arguments--------------------------------------------- + !-arguments----------------------------------- class(IBM_type), intent(inout) :: this - integer, intent(in) :: STLNum - !-local-variables--------------------------------------- - real(kind=rp) :: coord, Vertices(NDIM,3), & - T(NDIM) - integer :: i, j, k, axis, & - n_of_Q_points, & - kdtree_n_of_interPoints, & - symPlaneIndex - - if( this% symmetry ) then -!$omp parallel shared(this,STLNum,i) -!$omp do schedule(runtime) private(k,j,coord,axis,Vertices) - do i = 1, size(this% root(STLNum)% ObjectsList) - - this% root(STLNum)% ObjectsList(i)% ComputeIntegrals = .true. - - call OBB(STLNum)% ChangeRefFrame( this% root(STLNum)% ObjectsList(i)% vertices(1)% coords, 'global', Vertices(:,1) ) - call OBB(STLNum)% ChangeRefFrame( this% root(STLNum)% ObjectsList(i)% vertices(2)% coords, 'global', Vertices(:,2) ) - call OBB(STLNum)% ChangeRefFrame( this% root(STLNum)% ObjectsList(i)% vertices(3)% coords, 'global', Vertices(:,3) ) - - do k = 1, size(this% symPlanes,1) - axis = abs(this% symPlanes(k)) - if( this% symPlanes(k) .lt. 0 .and. this% root(STLNum)% ObjectsList(i)% ComputeIntegrals ) then - coord = minval(this% rootPoints% vertices(axis,:)) - if( Vertices(axis,1) .lt. coord .and. & - Vertices(axis,2) .lt. coord .and. & - Vertices(axis,3) .lt. coord ) then - this% root(STLNum)% ObjectsList(i)% ComputeIntegrals = .false. - else - do j = 1, size(this% root(STLNum)% ObjectsList(i)% vertices) - if( Vertices(axis,j) .lt. coord ) this% root(STLNum)% ObjectsList(i)% vertices(j)% Translate = k - end do - end if - elseif( this% root(STLNum)% ObjectsList(i)% ComputeIntegrals ) then - coord = maxval(this% rootPoints% vertices(axis,:)) - if( Vertices(axis,1) .gt. coord .and. & - Vertices(axis,2) .gt. coord .and. & - Vertices(axis,3) .gt. coord ) then - this% root(STLNum)% ObjectsList(i)% ComputeIntegrals = .false. - else - do j = 1, size(this% root(STLNum)% ObjectsList(i)% vertices) - if( Vertices(axis,j) .gt. coord ) this% root(STLNum)% ObjectsList(i)% vertices(j)% Translate = k - end do - end if - end if - end do - end do -!$omp end do -!$omp end parallel + type(element), intent(inout) :: elements(:) + real(kind=RP), intent(in) :: dt + !-local-variables----------------------------- + integer :: eID, i, j, k, iP - do k = 1, size(this% symPlanes,1) - axis = abs(this% symPlanes(k)) - if( this% symPlanes(k) .lt. 0 ) then - coord = minval(this% rootPoints% vertices(axis,:)) - else - coord = maxval(this% rootPoints% vertices(axis,:)) - end if - this% symCoords(k) = coord + if( .not. this% semiImplicit ) return + + if( this% Wallfunction ) call this% GetBandRegionStates( elements ) +!$omp parallel +!$omp do schedule(runtime) private(i,j,k) + do eID = 1, SIZE( elements ) + associate(e => elements(eID)) + do i = 0, e% Nxyz(1); do j = 0, e% Nxyz(2); do k = 0, e% Nxyz(3) + if( e% isInsideBody(i,j,k) ) call this% GetSemiImplicitStep( eID, 0.5_RP*dt, e% storage% Q(:,i,j,k) ) + end do; end do; end do + end associate + end do +!$omp end do + if( this% Wallfunction ) then +!$omp do schedule(runtime) private(i,j,k) + do iP = 1, this% NumOfForcingPoints + associate( e => elements(this% ImagePoints(iP)% element_index)) + i = this% ImagePoints(iP)% local_position(1) + j = this% ImagePoints(iP)% local_position(2) + k = this% ImagePoints(iP)% local_position(3) + call this% GetSemiImplicitStepTurbulence( this% ImagePoints(iP), 0.5_RP*dt, e% storage% Q(:,i,j,k), & + e% geom% normal(:,i,j,k), e% geom% dWall(i,j,k), e% STL(i,j,k) ) + end associate end do - end if - - n_of_Q_points = this% Integral(STLNum)% n_of_Q_points - kdtree_n_of_interPoints = this% kdtree_n_of_interPoints - -!$omp parallel shared(this,n_of_Q_points,kdtree_n_of_interPoints,i,STLNum) -!$omp do schedule(runtime) private(Vertices,symPlaneIndex,T,j) - do i = 1, size(this% root(STLNum)% ObjectsList) - if( this% root(STLNum)% ObjectsList(i)% ComputeIntegrals ) then - !if body is moving, we deallocate and reallocate - if( allocated(this% Integral(STLNum)% IntegObjs(i)% PointsIndex) ) deallocate(this% Integral(STLNum)% IntegObjs(i)% PointsIndex) - if( allocated(this% Integral(STLNum)% IntegObjs(i)% x ) ) deallocate(this% Integral(STLNum)% IntegObjs(i)% x) - - allocate( this% Integral(STLNum)% IntegObjs(i)% PointsIndex(kdtree_n_of_interPoints,n_of_Q_points), & - this% Integral(STLNum)% IntegObjs(i)% x(NDIM,n_of_Q_points) ) - - do j = 1, size(this% root(STLNum)% ObjectsList(i)% vertices) - Vertices(:,j) = this% root(STLNum)% ObjectsList(i)% vertices(j)% coords - symPlaneIndex = this% root(STLNum)% ObjectsList(i)% vertices(j)% Translate - if( symPlaneIndex .gt. 0 .and. this% symmetry ) then - call OBB(STLNum)% ChangeRefFrame( Vertices(:,j), 'global', Vertices(:,j) ) - Vertices(abs(this% symPlanes(symPlaneIndex)),j) = this% symCoords( symPlaneIndex ) - call OBB(STLNum)% ChangeRefFrame( Vertices(:,j), 'local', Vertices(:,j) ) - end if - end do - - call this% Integral(STLNum)% GetCoords( Vertices(:,1), Vertices(:,2), Vertices(:,3), i, n_of_Q_points ) +!$omp end do + end if +!$omp end parallel + end subroutine IBM_SemiImplicitCorrection + + subroutine IBM_GetBandRegionStates( this, elements ) + use PhysicsStorage + implicit none + !-arguments----------------------------------------------- + class(IBM_type), intent(inout) :: this + type(element), intent(in) :: elements(:) + !-local-variables----------------------------------------- + integer :: STLNum - call vcross( (Vertices(:,3)-Vertices(:,1)), (Vertices(:,2)-Vertices(:,1)), T ) - - this% Integral(STLNum)% IntegObjs(i)% Area = norm2(T) - - end if + do STLNum = 1, this% NumOfSTL + call this% BandPoint_state( elements, STLNum, .false. ) end do -!$omp end do -!$omp end parallel - - end subroutine IBM_SetIntegration - - - subroutine IBM_WriteMesh( this, elements, no_of_elements, k ) - use SolutionFile + + end subroutine IBM_GetBandRegionStates +! +! Turbulent source term when wall function is applied +! --------------------------------------------------- + subroutine IBM_SourceTermTurbulence( this, ImagePoint, Q, normal, dWall, STLNum, TurbulenceSource ) + use PhysicsStorage + use NodalStorageClass, only: NodalStorage implicit none - !-arguments---------------------------------------------------- - class(IBM_type), intent(inout) :: this - type(element), dimension(:), intent(in) :: elements - integer, intent(in) :: no_of_elements, k - !-local-variables---------------------------------------------- - character(len=LINE_LENGTH) :: FinalNameIBM - integer :: fID, eID, position + !-arguments----------------------------------------------------------------- + class(IBM_type), intent(inout) :: this + type(point_type), intent(in) :: ImagePoint + real(kind=rp), intent(in) :: Q(:), dWall, normal(:) + integer, intent(in) :: STLNum + real(kind=rp), intent(inout) :: TurbulenceSource(NCONS) + !-local-variables----------------------------------------------------------- + real(kind=rp) :: Q_IP(NCONS), Q_FP(NCONS), iP(NDIM) + integer :: i + + do i = 1, NCONS + Q_IP(i) = GetInterpolatedValue( this% BandRegion(STLNum)% Q(i,ImagePoint% nearestPoints), & + ImagePoint% invPhi, & + ImagePoint% b ) + end do Q_FP = Q #if defined(NAVIERSTOKES) @@ -1846,273 +2086,142 @@ subroutine ForcingPointState( Q_IP, y_IP, y_FP, normal, Q_FP ) if( almostEqual(norm2(u_IP_t),0.0_RP) ) return - read(fID, pos=POS_FILETYPE) - position = POS_FILETYPE - - do eID = 1, no_of_elements - associate( e => elements(eID) ) - position = position + (e% Nxyz(1)+1)*(e% Nxyz(2)+1)*(e% Nxyz(3)+1)*SIZEOF_INT - write(fID,pos=position) e% isInsideBody(0:e% Nxyz(1),0:e% Nxyz(2),0:e% Nxyz(3)) - end associate - end do - - close(fID) - - end subroutine IBM_WriteMesh + tangent = u_IP_t/norm2(u_IP_t) - subroutine CreateNewIBMmeshFile( IBM, FinalNameIBM ) - use SolutionFile - implicit none - - type(IBM_type), intent(in) :: IBM - character(len=*), intent(in) :: FinalNameIBM - - integer :: fID - - open(newunit=fID, file='IBM/IBM_'//trim(FinalNameIBM), & - action= "write", status="replace", form="unformatted", access = "stream" ) + u_IPt = dot_product(u_IP,tangent) + + u_tau = u_tau_f(u_IPt, y_IP, nu_IP, u_tau0=.1_RP) + + call get_laminar_mu_kappa(Q_FP,mu_FP,kappa_FP) + nu_FP = mu_FP/Q_FP(IRHO) - write(fID, POS=POS_FILETYPE) IBM_MESH + u_FPt = u_plus_f(y_plus_f(y_FP, u_tau, nu_FP)) * u_tau + + u_FPn = dot_product(u_IP,normal) * y_FP/y_IP + + u_FP = u_FPt*tangent + u_FPn*normal + + T_FP = Temperature(Q_IP) + (dimensionless% Pr)**(1._RP/3._RP)/(2.0_RP*thermodynamics% cp) * (POW2(u_IPt) - POW2(u_FPt)) +#if defined(SPALARTALMARAS) + !yplus_FP = y_plus_f( y_FP, u_tau, nu_FP) + !Dump = POW2(1.0_RP - exp(-yplus_FP/19.0_RP)) - close(fID) - - end subroutine CreateNewIBMmeshFile + !chi = QuarticRealPositiveRoot( 1.0_RP, -kappa*u_tau*y_FP*Dump/nu_FP, 0.0_RP, 0.0_RP, -kappa*u_tau*y_FP*Dump/nu_FP*POW3(SAmodel% cv1) ) + + !nu_t = nu_FP * chi + nu_t = kappa * u_tau * y_FP +#endif + ! Q_FP(IRHO) = Pressure(Q_IP)*refvalues% p/(thermodynamics% R * refValues% T * T_FP) + ! Q_FP(IRHO) = Q_FP(IRHO)/refvalues% rho + + Q_FP(IRHOU:IRHOW) = Q_FP(IRHO) * u_FP + + ! Q_FP(IRHOE) = pressure(Q_IP)/( thermodynamics% gamma - 1._RP) + 0.5_RP*Q_FP(IRHO)*(POW2(u_FP(1)) + POW2(u_FP(2)) + POW2(u_FP(3))) + Q_FP(IRHOE) = 0.5_RP*Q_FP(IRHO)*(POW2(u_FP(1)) + POW2(u_FP(2)) + POW2(u_FP(3))) +#if defined(SPALARTALMARAS) + Q_FP(IRHOTHETA) = Q_FP(IRHO) * nu_t +#endif + end subroutine ForcingPointState +#endif ! !///////////////////////////////////////////////////////////////////////////////////////////// ! ! ------------------------------------------------------------- -! This subroutine returns true if the point is inside the body. +! Ray tracing ! ------------------------------------------------------------- - subroutine IBM_CheckPoint( this, x, STLNum, isInsideBody ) + subroutine IBM_CheckPoint( this, Point, STLNum, NumOfIntersections ) use MPI_Process_Info implicit none !-arguments------------------------------------------------------------------ - class(IBM_type), intent(inout) :: this - real(kind=rp), dimension(:), intent(in) :: x - integer, intent(in) :: STLNum - logical, intent(inout) :: isInsideBody + class(IBM_type), intent(inout) :: this + real(kind=rp), intent(inout) :: Point(:) + integer, intent(in) :: STLNum + integer, intent(inout) :: NumOfIntersections !-local-variables------------------------------------------------------------ - type(KDtree), pointer :: tree - real(kind=rp), dimension(NDIM) :: RayDirection, Point, vecAxis - integer :: Axis, NumOfIntersections, minAxis(1) - logical :: Upward, OnSurface - type(IntegerDataLinkedList_t) :: Integer_List - - real(kind=RP) :: EPS = 1.0d-8 + type(KDtree), pointer :: tree + real(kind=rp) :: RayDirection(NDIM), vecAxis(NDIM) + integer :: Axis, minAxis(1), & + lastIndex + logical :: Upward, OnSurface, OnTriBound, delete + type(ObjsDataLinkedList_t) :: Integer_List - call OBB(STLNum)% ChangeRefFrame(x, 'local', Point) - RayDirection = 0.0_RP - - isInsideBody = .false. - OnSurface = .false. + + OnSurface = .false.; delete = .false. vecAxis = (/OBB(STLNum)% MBR% Length,OBB(STLNum)% MBR% Width,abs(OBB(STLNum)% nMax) + abs(OBB(STLNum)% nMin)/) minAxis = minloc(vecAxis) axis = minAxis(1) - - if( axis .eq. this% root(STLNum)% maxAxis ) then - axis = axis - 1 - if( axis .eq. 0 ) axis = 3 - end if - + + call RayAxis( this% root(STLNum)% maxAxis, this% ClipAxis, axis ) + if( Point(axis) .le. 0.0_RP ) then RayDirection(axis) = -1.0_RP Upward = .true. - vecAxis = (/ -0.5_RP*OBB(STLNum)% MBR% Length, -0.5_RP*OBB(STLNum)% MBR% Width, & - OBB(STLNum)% nMin /) - else - RayDirection(axis) = 1.0_RP - Upward = .false. - vecAxis = (/ 0.5_RP*OBB(STLNum)% MBR% Length, 0.5_RP*OBB(STLNum)% MBR% Width, & - OBB(STLNum)% nMax /) - end if - - Integer_List = IntegerDataLinkedList_t( .false. ) - - NumOfIntersections = 0 - - do - - call this% root(STLNum)% FindLeaf( Point, tree ) - - call isPointInside( Point, RayDirection, this% root(STLNum)% ObjectsList, tree, Integer_List, NumOfIntersections, OnSurface ) - - if( OnSurface ) exit - - if( Upward ) then - Point(axis) = tree% vertices(axis,1) - EPS - if( Point(axis) .lt. vecAxis(axis) ) exit - elseif( .not. Upward ) then - Point(axis) = tree% vertices(axis,7) + EPS - if( Point(axis) .gt. vecAxis(axis) ) exit - end if - - end do - - if( mod(NumOfIntersections, 2) .eq. 0 ) then !even - isInsideBody = .false. - else - isInsideBody = .true. - end if - - if( OnSurface ) isInsideBody = .true. - - call integer_List% Destruct() - - end subroutine IBM_CheckPoint -! -!///////////////////////////////////////////////////////////////////////////////////////////// -! -! BODY MOTION -! -!///////////////////////////////////////////////////////////////////////////////////////////// -! -! ------------------------------------------------- - - subroutine IBM_MoveBody( this, elements, no_of_elements, no_of_DoFs, isChild, dt, k, autosave ) - use MPI_Process_Info - implicit none - !-arguments------------------------------ - class(IBM_type), intent(inout) :: this - type(element), dimension(:), intent(inout) :: elements - integer, intent(in) :: no_of_elements, no_of_DoFs, k - logical, intent(in) :: isChild - real(kind=RP), intent(in) :: dt - logical, intent(in) :: autosave - !-local-variables------------------------ - integer :: STLNum, MaskPoints -#ifdef _HAS_MPI_ - integer :: localVal, ierr -#endif - - optional :: k, autosave - - do STLNum = 1, this% NumOfSTL - if( this% stl(STLNum)% move .and. .not. isChild ) then - if( this% stl(STLNum)% motionType .eq. ROTATION ) then - call this% stl(STLNum)% getRotationaMatrix( dt ) - call OBB(STLNum)% STL_rotate(this% stl(STLNum)) - elseif( this% stl(STLNum)% motionType .eq. LINEAR ) then - call this% stl(STLNum)% getDisplacement( dt ) - call OBB(STLNum)% STL_translate(this% stl(STLNum)) - end if - if( .not. isChild .and. present(autosave) .and. autosave ) call this% stl(STLNum)% plot( k ) - call OBB(STLNum)% construct( this% stl(STLNum), this% plotOBB ) - this% root(STLNum)% STLNum = STLNum - call OBB(STLNum)% ChangeObjsRefFrame( this% stl(STLNum)% ObjectsList ) - call this% root(STLNum)% Destruct() - this% plotKDtree = .false. - call this% constructSTL_KDtree( STLNum ) - call this% upDateNormals( STLNum ) - call this% CleanMask( elements, no_of_elements, STLNum ) - elseif( this% stl(STLNum)% move .and. isChild ) then - call this% CleanMask( elements, no_of_elements, STLNum ) - end if - end do - - if( .not. isChild ) then - call this% rootPoints% destruct() - call MPI_Pointpartition_destroy() + vecAxis(1) = OBB(STLNum)% LocVertices(1,1) + vecAxis(2) = OBB(STLNum)% LocVertices(2,1) + vecAxis(3) = OBB(STLNum)% LocVertices(3,1) + else + RayDirection(axis) = 1.0_RP + Upward = .false. + vecAxis(1) = OBB(STLNum)% LocVertices(1,7) + vecAxis(2) = OBB(STLNum)% LocVertices(2,7) + vecAxis(3) = OBB(STLNum)% LocVertices(3,7) end if - do STLNum = 1, this% NumOfSTL - if( this% stl(STLNum)% move ) then - ! get new mask - call this% GetMask( elements, no_of_elements, no_of_DoFs, STLNum ) - end if - end do + Integer_List = ObjsDataLinkedList_t() - if( MPI_Process% doMPIAction ) then -#ifdef _HAS_MPI_ - localVal = this% n_of_INpoints - call mpi_allreduce(localVal, MaskPoints, 1, MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD, ierr) -#endif - else - MaskPoints = this% n_of_INpoints - end if + NumOfIntersections = 0; lastIndex = -1 - if( MaskPoints .eq. 0 ) then - print *, "The mask is made of 0 points." - print *, "Try to increase the polynomial order or refine the mesh." - error stop - end if + do - if( .not. isChild .and. .not. this% Wallfunction ) then - call this% constructBandRegion( elements, no_of_elements ) - do STLNum = 1, this% NumOfSTL - call this% SetIntegration( STLNum ) - end do - if( this% Wallfunction ) then -#if defined(NAVIERSTOKES) - call this% GetForcingPointsGeom() - call this% GetImagePoint_nearest() -#endif - end if - if( present(autosave) .and. autosave ) then - call this% WriteMesh( elements, no_of_elements, k ) + call this% root(STLNum)% FindLeaf( Point, tree, .false. ) + + if( tree% index .eq. lastIndex ) then + call this% root(STLNum)% FindLeaf( Point, tree, .true. ) + endif + + lastIndex = tree% index + + call isPointInside( Point, RayDirection, this% root(STLNum)% ObjectsList, tree, Integer_List, NumOfIntersections, OnTriBound ) + + if( OnTriBound ) delete = .true. + + if( Upward ) then + Point(axis) = tree% vertices(axis,1) + if( Point(axis) .le. vecAxis(axis) ) exit + elseif( .not. Upward ) then + Point(axis) = tree% vertices(axis,7) + if( Point(axis) .ge. vecAxis(axis) ) exit end if - end if - if( this% plotMask .and. .not. isChild ) call this% plot_Mask( elements, no_of_elements, k ) + end do - end subroutine IBM_MoveBody - - - subroutine IBM_CleanMask( this, elements, no_of_elements, STLNum ) - - implicit none - - class(IBM_type), intent(inout) :: this - type(element), dimension(:), intent(inout) :: elements - integer, intent(in) :: no_of_elements, STLNum - - integer :: eID, i, j, k -!$omp parallel shared(this,elements,no_of_elements,STLNum,eID) -!$omp do schedule(runtime) private(i,j,k) - do eID = 1, no_of_elements - do i = 0, elements(eID)% Nxyz(1); do j = 0, elements(eID)% Nxyz(2); do k = 0, elements(eID)% Nxyz(3) - if( any(elements(eID)% STL(:,i,j,k) .eq. STLNum) .and. elements(eID)% isInsideBody(i,j,k) ) then - elements(eID)% STL(STLNum,i,j,k) = 0 - if(all(elements(eID)% STL(:,i,j,k) .eq. 0)) then - elements(eID)% isInsideBody(i,j,k) = .false. -!$omp critical - this% n_of_INpoints = this% n_of_INpoints - 1 -!$omp end critical - end if - end if - end do; end do; end do - end do -!$omp end do -!$omp end parallel - end subroutine IBM_CleanMask - + if( delete ) NumOfIntersections = NumOfIntersections - 1 + + call integer_List% Destruct() + + end subroutine IBM_CheckPoint ! -!///////////////////////////////////////////////////////////////////////////////////////////// -! -! ------------------------------------------------- -! This subroutine checks if a point intersects one or -! more of the triangles belonging to a box (tree). +! Intersection between a ray an a set of triangles ! ------------------------------------------------ - subroutine isPointInside( Point, RayDirection, ObjectsList, tree, Integer_List, NumOfIntersections, OnSurface ) + subroutine isPointInside( Point, RayDirection, ObjectsList, tree, Integer_List, NumOfIntersections, OnTriBound ) use RealDataLinkedList use omp_lib implicit none - !-arguments-------------------------------------------------------------- - real(kind=rp), dimension(:), intent(in) :: Point, RayDirection - type(object_type), dimension(:), intent(in) :: ObjectsList - type(KDtree), intent(inout) :: tree - type(IntegerDataLinkedList_t), intent(inout) :: Integer_List - integer, intent(inout) :: NumOfIntersections - logical, intent(inout) :: OnSurface - !-local-variables-------------------------------------------------------- - logical :: Intersect, OnTriBound, found, foundReal - real(kind=rp) :: t - integer :: i - type(RealDataLinkedList_t) :: Real_List + !-arguments---------------------------------------------------------------- + real(kind=rp), intent(in) :: Point(:), RayDirection(:) + type(object_type), intent(in) :: ObjectsList(:) + type(KDtree), intent(inout) :: tree + type(ObjsDataLinkedList_t), intent(inout) :: Integer_List + integer, intent(inout) :: NumOfIntersections + logical, intent(inout) :: OnTriBound + !-local-variables---------------------------------------------------------- + logical :: Intersect, found + integer :: i, index - integer :: index + OnTriBound = .false. if( tree% NumOfObjs .eq. 0 ) then return @@ -2123,124 +2232,93 @@ subroutine isPointInside( Point, RayDirection, ObjectsList, tree, Integer_List, found = integer_List% Check( index ) if( .not. found ) then call Integer_List% Add( index ) + call PointIntersectTriangle( Point,ObjectsList(index)% vertices(1)% coords, & - ObjectsList(index)% vertices(2)% coords,ObjectsList(index)% vertices(3)% coords, & - RayDirection, Intersect, OnTriBound, t ) - foundReal = Real_List% Check( t ) - - if( Intersect .and. .not. foundReal .and. t .ge. 0.0_RP ) then - call Real_List% append( t ) - NumOfIntersections = NumOfIntersections + 1 - ! If the point is on the triangle - !-------------------------------- - if( almostEqual(t,0.0_RP) ) OnSurface = .true. + ObjectsList(index)% vertices(2)% coords, & + ObjectsList(index)% vertices(3)% coords, & + RayDirection, Intersect, OnTriBound ) + if( Intersect ) then + NumOfIntersections = NumOfIntersections + 1 end if - end if end do - call Real_List% destruct() - end subroutine isPointInside -! -!///////////////////////////////////////////////////////////////////////////////////////////// ! -! --------------------------------------------------------------------- ! This subroutine checks if a ray (RayDirection) starting from a point (Point) intersects ! a triangle in 3D space. If present, the intersection point Q is Q = P + t*RayDirection. ! If there is more than one intersections, the second one is not counted if it has the same t ! as the one previously found. -! See Fast, Minimum Storage Ray/Triangle Intersection, Moller Trumbore -! --------------------------------------------------------------------- - +! See Fast, Minimum Storage Ray/Trinagle INtersection, Moller TRumbore +! -------------------------------------------------------------------------------------------- subroutine PointIntersectTriangle( Point, TriangleVertex1, TriangleVertex2, & TriangleVertex3, RayDirection, & - Intersect, OnTriBound, t ) + Intersect, OnTriBound ) use MappedGeometryClass implicit none !-arguments--------------------------------------------------------------------------------------- - real(kind=rp), dimension(NDIM), intent(in) :: Point, RayDirection - real(kind=rp), dimension(NDIM), intent(in) :: TriangleVertex1, TriangleVertex2, TriangleVertex3 - logical, intent(out) :: Intersect, OnTriBound - real(kind=rp), intent(out) :: t + real(kind=rp), intent(in) :: Point(NDIM), RayDirection(NDIM) + real(kind=rp), intent(in) :: TriangleVertex1(NDIM), TriangleVertex2(NDIM), TriangleVertex3(NDIM) + logical, intent(inout) :: Intersect, OnTriBound !-local-variables---------------------------------------------------------------------------------- - real(kind=rp), dimension(NDIM) :: E1vec, E2vec, Pvec, Qvec, Tvec, N - real(kind=rp) :: Det, u, v, invDet - logical :: isInside + real(kind=rp) :: E1vec(NDIM), E2vec(NDIM), Pvec(NDIM), & + Qvec(NDIM), Tvec(NDIM), N(NDIM), & + Det, u, v, invDet, t + logical :: isInside Intersect = .false. OnTriBound = .false. + t = -1.0_RP E1vec = TriangleVertex2 - TriangleVertex1 E2vec = TriangleVertex3 - TriangleVertex1 Tvec = Point - TriangleVertex1 call vcross(RayDirection,E2vec,Pvec) - Det = vdot( E1vec, Pvec ) - - If( almostEqual(Det,0.0_RP) ) then - ! If Pvec .ne. (/0,0,0/), then the vector E1vec must lie on the plane made of the 2 vectors RayDirection and E2vec. - ! Thus we have to check if the ray intersects the triangle or not. In the latter case no intersection is detected. In - ! the first case, we have to check whether the point is inside the triangle or not. If it is in the triangle, one intersection - ! will be detected. - !------------------------------------------------------------------------------------------------------------------------------ - call vcross(E1vec, E2vec, N) - Intersect = .false. - - t = -1.0_RP - ! Check if the ray lies in the same plane of the triangle - !-------------------------------------------------------- - if( AlmostEqual(vdot( Tvec, N ), 0.0_RP) ) then - isInside = isPointInsideTri( Point, TriangleVertex1, TriangleVertex2, & - TriangleVertex3 ) - - if( isInside ) t = 0.0_RP - if( isInside ) Intersect = .true. - end if - return - end if + Det = dot_product( E1vec, Pvec ) + + If( almostEqual(Det,0.0_RP) ) return call vcross(Tvec,E1vec,Qvec) invDet = 1.0_RP/Det - u = vdot( Tvec, Pvec )*invDet + u = dot_product( Tvec, Pvec )*invDet if( u < 0.0_RP .or. u > 1.0_RP ) return - v = vdot( RayDirection, Qvec )/Det - + v = dot_product( RayDirection, Qvec )*invDet if( v < 0.0_RP .or. u+v > 1.0_RP ) return - t = vdot( E2vec, Qvec )*invDet + t = dot_product( E2vec, Qvec )*invDet + + if( almostequal(t,0.0_RP) ) return ! Check if the point lies on the boundaries of the triangle !---------------------------------------------------------- - if( almostEqual(u,0.0_RP) .or. almostEqual(v,0.0_RP) .or. & - almostEqual(u+v,1.0_RP) ) OnTriBound = .true. + if( almostEqual(u,0.0_RP) .and. ( v .ge. 0.0_RP .and. v .le. 1.0_RP ) ) OnTriBound = .true. + if( almostEqual(v,0.0_RP) .and. ( u .ge. 0.0_RP .and. u .le. 1.0_RP ) ) OnTriBound = .true. + if( almostEqual(u+v,1.0_RP) ) OnTriBound = .true. + + if( t .gt. 0.0_RP ) Intersect = .true. - Intersect = .true. end subroutine PointIntersectTriangle -! -!///////////////////////////////////////////////////////////////////////////////////////////// ! -! ------------------------------------------------- -! This function checks if a point is inside a triangle. -! The point and the triangle are on the same plane +! Point-triangle intersection (point and triangle are on the same plane) ! ------------------------------------------------ logical function isPointInsideTri( Point, TriangleVertex1, TriangleVertex2, & TriangleVertex3 ) result( isInside ) use MappedGeometryClass implicit none !-arguments----------------------------------------------------------------- - real(kind=rp), dimension(:), intent(in) :: Point, TriangleVertex1, & - TriangleVertex2, TriangleVertex3 + real(kind=rp), intent(in) :: Point(:), TriangleVertex1(:), & + TriangleVertex2(:), TriangleVertex3(:) !-local-variables----------------------------------------------------------- - real(kind=rp), dimension(NDIM) :: bb, E0, E1, dd - real(kind=rp) :: a, b, c, d, e, f, det, s, t - integer :: region + real(kind=rp) :: bb(NDIM), E0(NDIM), E1(NDIM), dd(NDIM), & + a, b, c, d, e, f, det, s, t + integer :: region isInside = .false. @@ -2249,12 +2327,12 @@ logical function isPointInsideTri( Point, TriangleVertex1, TriangleVertex2, & E1 = TriangleVertex1 - TriangleVertex3 dd = bb - Point - a = vdot(E0,E0) - b = vdot(E0,E1) - c = vdot(E1,E1) - d = vdot(E0,dd) - e = vdot(E1,dd) - f = vdot(dd,dd) + a = dot_product(E0,E0) + b = dot_product(E0,E1) + c = dot_product(E1,E1) + d = dot_product(E0,dd) + e = dot_product(E1,dd) + f = dot_product(dd,dd) det = abs( a*c - b*b) s = (b*e - c*d)/det @@ -2265,10 +2343,35 @@ logical function isPointInsideTri( Point, TriangleVertex1, TriangleVertex2, & if( region .eq. 0 ) isInside = .true. end function isPointInsideTri + + subroutine RayAxis( maxAxis, ClipAxis, axis ) + implicit none + !-arguments---------------------------------- + integer, intent(in) :: maxAxis, ClipAxis + integer, intent(inout) :: axis + !-local-variables---------------------------- + integer :: vecAxis(NDIM), i + + vecAxis = (/1,2,3/) + + vecAxis(maxAxis) = 0 + if( ClipAxis .ne. 0 ) vecAxis(ClipAxis) = 0 + + if( axis .eq. maxAxis .or. axis .eq. ClipAxis ) then + do i = 1, NDIM + if(vecAxis(i) .eq. 0) cycle + axis = i; exit + end do + end if + + end subroutine RayAxis ! !///////////////////////////////////////////////////////////////////////////////////////////// ! ! ------------------------------------------------- +! Procedures for computing the point-STL distance +! ------------------------------------------------- +! ! This function computes the minimum distance from a point to a triangle in 3D. ! for more ditails see https://www.geometrictools.com/Documentation/DistancePoint3Triangle3.pdf ! ------------------------------------------------ @@ -2276,53 +2379,150 @@ subroutine MinimumPointTriDistance( Point, TriangleVertex1, TriangleVertex2, & TriangleVertex3, dist, IntersectionPoint ) use MappedGeometryClass implicit none - !-arguments----------------------------------------------------------------------------------------- - real(kind=rp), dimension(:), intent(in) :: Point, TriangleVertex1, & - TriangleVertex2, & - TriangleVertex3 - real(kind=rp), dimension(NDIM), intent(out) :: IntersectionPoint - real(kind=rp), intent(out) :: dist - !-local-variables----------------------------------------------------------------------------------- - real(kind=rp), dimension(NDIM) :: bb, E0, E1, dd - real(kind=rp) :: a, b, c, d, e, f, det, s, t, sqrDistance - integer :: region + !-arguments-------------------------------------------------------------------- + real(kind=rp), intent(in) :: Point(:), TriangleVertex1(:), & + TriangleVertex2(:), & + TriangleVertex3(:) + real(kind=rp), intent(out) :: IntersectionPoint(NDIM) + real(kind=rp), intent(out) :: dist + !-local-variables-------------------------------------------------------------- + real(kind=rp) :: bb(NDIM), E0(NDIM), E1(NDIM), dd(NDIM), & + a00, a01, a11, b0, b1, f, det, s, t, & + tmp1, tmp0, numer, denom + integer :: region bb = TriangleVertex1 E0 = TriangleVertex2 - bb E1 = TriangleVertex3 - bb dd = bb - Point - a = vdot(E0,E0) - b = vdot(E0,E1) - c = vdot(E1,E1) - d = vdot(E0,dd) - e = vdot(E1,dd) - f = vdot(dd,dd) - - det = a*c - b*b - s = b*e - c*d - t = b*d - a*e - - region = FindRegion( det, s, t ) - - sqrDistance = regionSqrDistance( a, b, c, d, e, f, det, s, t, region ) - - !Round-off errors - !---------------- - if (sqrDistance .lt. 0.0_RP) then - sqrDistance = 0.0_RP + a00 = dot_product(E0,E0) + a01 = dot_product(E0,E1) + a11 = dot_product(E1,E1) + b0 = dot_product(dd,E0) + b1 = dot_product(dd,E1) + f = dot_product(dd,dd) + + det = max(a00*a11 - a01*a01,0.0_RP) + s = a01*b1 - a11*b0 + t = a01*b0 - a00*b1 + + + if( s + t <= det ) then + if( s < 0.0_RP ) then + if( t < 0.0_RP ) then !region 4 + if( b0 < 0.0_RP ) then + t = 0.0_RP + if( -b0 >= a00 ) then + s = 1.0_RP + else + s = -b0/a00 + end if + else + s = 0.0_RP + if( b1 >= 0.0_RP ) then + t = 0.0_RP + elseif( -b1 >= a11 ) then + t = 1.0_RP + else + t = -b1/a11 + end if + end if + else !region 3 + s = 0.0_RP + if( b1 >= 0.0_RP ) then + t = 0.0_RP + elseif( -b1 >= a11 ) then + t = 1.0_RP + else + t = -b1/a11 + end if + end if + elseif( t < 0.0_RP ) then !region 5 + t = 0.0_RP + if( b0 >= 0.0_RP ) then + s = 0.0_RP + elseif( -b0 >= a00 ) then + s = 1.0_RP + else + s = -b0/a00 + end if + else !region 0 + s = s/det + t = t/det + end if + else + if( s < 0.0_RP ) then !region 2 + tmp0 = a01 + b0 + tmp1 = a11 + b1 + if (tmp1 > tmp0) then + numer = tmp1 - tmp0 + denom = a00 - 2.0_RP * a01 + a11 + if (numer >= denom) then + s = 1.0_RP + t = 0.0_RP + else + s = numer / denom + t = 1.0_RP - s + end if + else + s = 0.0_RP + if ( tmp1 <= 0.0_RP ) then + t = 1.0_RP + elseif( b1 >= 0.0_RP ) then + t = 0.0_RP + else + t = -b1 / a11 + end if + end if + elseif( t < 0.0_RP ) then !region 6 + tmp0 = a01 + b1 + tmp1 = a00 + b0 + if( tmp1 > tmp0 ) then + numer = tmp1 - tmp0 + denom = a00 - 2.0_RP * a01 + a11 + if (numer >= denom ) then + t = 1.0_RP + s = 0.0_RP + else + t = numer / denom; + s = 1.0_RP - t; + endif + else + t = 0.0_RP + if( tmp1 <= 0.0_RP ) then + s = 1.0_RP + elseif( b0 >= 0.0_RP ) then + s = 0.0_RP + else + s = -b0 / a00 + end if + end if + else ! region 1 + numer = a11 + b1 - a01 - b0 + if( numer <= 0.0_RP ) then + s = 0.0_RP + t = 1.0_RP + else + denom = a00 - 2.0_RP * a01 + a11 + if( numer >= denom ) then + s = 1.0_RP + t = 0.0_RP + else + s = numer / denom + t = 1.0_RP - s + end if + end if + end if end if - - dist = sqrt(sqrDistance) !Can be done later, it's better. - - IntersectionPoint = bb + s*E0 + t*E1 + + IntersectionPoint = TriangleVertex1 + s*E0 + t*E1 + dist = dot_product(Point - IntersectionPoint,Point - IntersectionPoint) + end subroutine MinimumPointTriDistance -! -!///////////////////////////////////////////////////////////////////////////////////////////// ! -! -------------------------------------------------------------------------- -! This function detects the region, see below. +! Identification of the section, see below. ! -------------------------------------------------------------------------- ! \ region2 ^t ! \ | @@ -2352,29 +2552,27 @@ end subroutine MinimumPointTriDistance ! ---------------*--------------*------->s ! |P0 \ ! region4 | region5 \ region6 - - integer function FindRegion( det, s, t ) result( region ) implicit none - !-arguments----------------------------------------------------------------------------------------- + !-arguments----------------------------- real(kind=rp), intent(in) :: det, s, t - if( (s+t) .le. det ) then - if( s .lt. 0 ) then - if( t .lt. 0 ) then + if( s+t <= det ) then + if( s < 0 ) then + if( t < 0 ) then region = 4 else region = 3 end if - elseif( t .lt. 0 ) then + elseif( t < 0 ) then region = 5 else region = 0 end if else - if( s .lt. 0 ) then + if( s < 0 ) then region = 2 - elseif ( t .lt. 0 ) then + elseif ( t < 0 ) then region = 6 else region = 1 @@ -2383,255 +2581,106 @@ integer function FindRegion( det, s, t ) result( region ) end function FindRegion ! -!///////////////////////////////////////////////////////////////////////////////////////////// -! -! -------------------------------------------------------------------------- -! This function the square of the distance according to the parameter region. -! -------------------------------------------------------------------------- - real(kind=rp) function regionSqrDistance( a, b, c, d, e, f, det, s, t, region ) result( sqrDistance ) - - implicit none - !-arguments------------------------------------------- - real(kind=rp), intent(in) :: a, b, c, d, e, f, det - real(kind=rp), intent(inout) :: s, t - integer, intent(in) :: region - !-local-variables------------------------------------- - real(kind=rp) :: invDet, numer, denom, tmp1, tmp0 - - select case( region ) - case( 0 ) - invDet = 1.0_RP/det - s = s*invDet - t = t*invDet - sqrDistance = s*(a*s + b*t + 2.0_RP*d) + t*(b*s + c*t + 2.0_RP*e) + f - case( 1 ) - numer = c + e - b - d - if( numer .le. 0.0_RP ) then - s = 0.0_RP; t = 1.0_RP - sqrDistance = c + 2.0_RP*e + f - else - denom = a - 2.0_RP*b + c - if( numer .ge. denom ) then - s = 1.0_RP; t = 0.0_RP - sqrDistance = a + 2.0_RP*d + f - else - s = numer/denom; t = 1.0_RP-s - sqrDistance = s*(a*s + b*t + 2.0_RP*d) + t*(b*s + c*t + 2.0_RP*e) + f - end if - end if - case(2) - tmp0 = b + d - tmp1 = c + e - if( tmp1 .gt. tmp0 ) then - numer = tmp1 - tmp0 - denom = a - 2.0_RP*b + c - if( numer .ge. denom ) then - s = 1.0_RP; t = 0.0_RP - sqrDistance = a + 2.0_RP*d + f - else - s = numer/denom; t = 1-s - sqrDistance = s*(a*s + b*t + 2*d) + t*(b*s + c*t + 2*e) + f - end if - else - s = 0.0_RP - if( tmp1 .le. 0.0_RP ) then - t = 1.0_RP - sqrDistance = c + 2.0_RP*e + f - else - if (e .ge. 0.0_RP ) then - t = 0.0_RP - sqrDistance = f - else - t = -e/c - sqrDistance = e*t + f - end if - end if - end if - case( 3 ) - s = 0.0_RP - if (e .ge. 0.0_RP ) then - sqrDistance = f - else - if (-e .ge. c ) then - sqrDistance = c + 2.0_RP*e +f - else - t = -e/c - sqrDistance = e*t + f - end if - end if - case( 4 ) - if( d .lt. 0.0_RP ) then - t = 0.0_RP - if( -d .ge. a ) then - s = 1.0_RP - sqrDistance = a + 2.0_RP*d + f - else - s = -d/a - sqrDistance = d*s + f - end if - else - s = 0.0_RP - if( e .ge. 0.0_RP ) then - sqrDistance = f - else - if( -e .ge. c) then - sqrDistance = c + 2.0_RP*e + f - else - t = -e/c - sqrDistance = e*t + f - end if - end if - end if - case( 5 ) - t = 0.0_RP - if( d .ge. 0.0_RP ) then - s = 0.0_RP - sqrDistance = f - else - if (-d .ge. a) then - s = 1.0_RP - sqrDistance = a + 2.0_RP*d + f - else - s = -d/a - sqrDistance = d*s + f - end if - end if - case( 6 ) - tmp0 = b + e - tmp1 = a + d - if (tmp1 .gt. tmp0) then - numer = tmp1 - tmp0 - denom = a-2.0_RP*b+c - if (numer .ge. denom) then - t = 1.0_RP; s = 0.0_RP - sqrDistance = c + 2.0_RP*e + f - else - t = numer/denom; s = 1.0_RP - t - sqrDistance = s*(a*s + b*t + 2.0_RP*d) + t*(b*s + c*t + 2.0_RP*e) + f - end if - else - t = 0.0_RP - if (tmp1 .le. 0.0_RP) then - s = 1.0_RP - sqrDistance = a + 2.0_RP*d + f; - else - if (d .ge. 0.0_RP) then - s = 0.0_RP - sqrDistance = f - else - s = -d/a - sqrDistance = d*s + f - end if - end if - end if - end select - - end function regionSqrDistance - -! -!///////////////////////////////////////////////////////////////////////////////////////////// -! -! ------------------------------------------------- -! This subroutine computes the minimum distance from x (global ref. frame) to the body. First, +! This subroutine computes the minumum distance from x (global ref. frame) to the body. First, ! the box (tree) where x lies is found, then the min distance between the objects inside the tree and ! the point is computed. If the sphere whose radius is minDist, is enclosed in the box, the subroutine stops. ! If the latter condition is not true, all the boxes that intersects the sphere are checked in the same way as ! the initial one, getting new_minDist. If a lower distance is found, minDist is updated. -! ------------------------------------------------ - +! minDist is the SQUARE of the actual distance. +! ------------------------------------------------------------------------------------------------------------- subroutine MinimumDistance( Point, root, minDist, normal ) - implicit none - !-arguments--------------------------------------------- - real(kind=rp), dimension(:), intent(in) :: Point - type(KDtree), intent(inout) :: root - real(kind=rp), intent(inout) :: minDist - real(kind=rp), dimension(:), intent(inout) :: normal - !-local-variables--------------------------------------- - real(kind=rp), dimension(NDIM) :: IntersPoint, new_IntersPoint, & - dsvec, IntersectionPoint, x - logical :: Inside - type(KDtree), pointer :: tree, parent - real(kind=rp) :: Dist, New_minDist, Radius, ds - integer :: i, index - + !-arguments---------------------------------------------------------- + real(kind=rp), intent(in) :: Point(:) + type(KDtree), intent(inout) :: root + real(kind=rp), intent(inout) :: minDist + real(kind=rp), intent(out) :: normal(NDIM) + !-local-variables----------------------------------------------------- + real(kind=rp) :: IntersPoint(NDIM), new_IntersPoint(NDIM), & + dsvec(NDIM), x(NDIM), P(NDIM), IP(NDIM), & + IntersectionPoint(NDIM), Dist, & + New_minDist, Radius, ds + logical :: Intersect + type(KDtree), pointer :: tree, newGuess + integer :: i, index, LeafIndex, & + TriangleIndex, New_TriangleIndex + minDist = huge(1.0_RP) - call root% FindLeaf( Point, tree ) + call root% FindLeaf( Point, tree, .false. ) + + LeafIndex = tree% index do i = 1, tree% NumOfObjs index = tree% ObjsIndeces(i) + call MinimumPointTriDistance( Point, root% ObjectsList(index)% vertices(1)% coords, & root% ObjectsList(index)% vertices(2)% coords, & root% ObjectsList(index)% vertices(3)% coords, Dist, & IntersPoint ) + if( Dist .lt. minDist ) then minDist = Dist - IntersectionPoint = IntersPoint + IntersectionPoint = IntersPoint + TriangleIndex = index end if end do if( tree% NumOfObjs .gt. 0 ) then ! Check the sphere !----------------- - Radius = sqrt(minDist) - Inside = CheckHypersphere( tree, Point, Radius ) + Radius = minDist + Intersect = CheckHypersphere( tree, Point, Radius ) else - parent => tree% parent - dsvec(1) = abs(parent% vertices(1,7)-parent% vertices(1,1)) - dsvec(2) = abs(parent% vertices(2,7)-parent% vertices(2,1)) - dsvec(3) = abs(parent% vertices(3,7)-parent% vertices(3,1)) - ds = maxval(dsvec) - Radius = ds - Inside = .true. - nullify(parent) + print *, "IBM:: MinimumDistance: " + print *, "Can't find triangles in leaf ", LeafIndex + error stop end if - nullify(tree) + nullify(tree) - if( Inside ) then + if( Intersect ) then New_minDist = huge(1.0_RP) - call MinimumDistOtherBoxes( Point, root, root, Radius, New_minDist, New_IntersPoint ) + call MinimumDistOtherBoxes( Point, root, root, Radius, LeafIndex, New_minDist, New_IntersPoint, New_TriangleIndex ) if( New_minDist .lt. minDist ) then minDist = New_minDist IntersectionPoint = New_IntersPoint + TriangleIndex = New_TriangleIndex end if - end if - - call OBB(root% STLNum)% ChangeRefFrame( Point, 'global', x ) - call OBB(root% STLNum)% ChangeRefFrame( IntersectionPoint, 'global', IntersectionPoint ) - - normal = x - IntersectionPoint - normal = normal/norm2(normal) + end if + + call OBB(root% STLNum)% ChangeRefFrame( Point, GLOBAL, P ) + call OBB(root% STLNum)% ChangeRefFrame( IntersectionPoint, GLOBAL, IP ) + normal = (P - IP)/norm2(P - IP) + end subroutine MinimumDistance - -! -!///////////////////////////////////////////////////////////////////////////////////////////// ! -! ------------------------------------------------- -! This subroutine computes New_minDist -! ------------------------------------------------ - recursive subroutine MinimumDistOtherBoxes( Point, root, tree, Radius, New_minDist, New_IntersPoint ) +! Distance between the point and triangles in other boxes, i.e. not the one containing it +! ----------------------------------------------------------------------------------------- + recursive subroutine MinimumDistOtherBoxes( Point, root, tree, Radius, LeafIndex, & + New_minDist, New_IntersPoint, New_TriangleIndex ) implicit none - !-arguments---------------------------------------------------------- - real(kind=rp), dimension(:), intent(in) :: Point - type(KDtree), intent(in) :: root - type(KDtree), intent(inout) :: tree - real(kind=rp), intent(in) :: Radius - real(kind=rp), intent(inout) :: New_minDist - real(kind=rp), dimension(:), intent(inout) :: New_IntersPoint - !-local-variables--------------------------------------------------- - real(kind=rp) :: Dist + !-arguments----------------------------------------------- + real(kind=rp), intent(in) :: Point(:) + type(KDtree), intent(in) :: root + type(KDtree), intent(inout) :: tree + real(kind=rp), intent(in) :: Radius + integer, intent(in) :: LeafIndex + real(kind=rp), intent(inout) :: New_minDist + real(kind=rp), intent(inout) :: New_IntersPoint(:) + integer, intent(inout) :: New_TriangleIndex + !-local-variables----------------------------------------- + real(kind=rp) :: IntersPoint(NDIM), Dist logical :: Intersect - real(kind=rp), dimension(NDIM) :: IntersPoint integer :: i, index Intersect = BoxIntersectSphere( Radius, Point, tree% vertices ) if( Intersect ) then if( tree% isLast ) then + if( LeafIndex .ne. tree% index ) then do i = 1, tree% NumOfObjs index = tree% ObjsIndeces(i) call MinimumPointTriDistance( Point, root% ObjectsList(index)% vertices(1)% coords, & @@ -2639,57 +2688,78 @@ recursive subroutine MinimumDistOtherBoxes( Point, root, tree, Radius, New_minDi root% ObjectsList(index)% vertices(3)% coords, Dist, & IntersPoint ) if( Dist .lt. New_minDist ) then - New_minDist = Dist - New_IntersPoint = IntersPoint + New_minDist = Dist + New_IntersPoint = IntersPoint + New_TriangleIndex = index end if end do + end if else - call MinimumDistOtherBoxes( Point, root, tree% child_L, & - Radius, New_minDist, & - New_IntersPoint ) - call MinimumDistOtherBoxes( Point, root, tree% child_R, & - Radius, New_minDist, & - New_IntersPoint ) + call MinimumDistOtherBoxes( Point, root, tree% child_L, & + Radius, LeafIndex, New_minDist, & + New_IntersPoint, New_TriangleIndex ) + call MinimumDistOtherBoxes( Point, root, tree% child_R, & + Radius, LeafIndex, New_minDist, & + New_IntersPoint, New_TriangleIndex ) end if end if end subroutine MinimumDistOtherBoxes + + subroutine MinimumDistanceSphereKDtree( Point, root, Radius, minDist, normal ) + implicit none + !-arguments---------------------------------------- + real(kind=rp), intent(in) :: Point(:), Radius + type(KDtree), intent(inout) :: root + real(kind=rp), intent(inout) :: minDist + real(kind=rp), intent(out) :: normal(NDIM) + !-local-variables---------------------------------- + real(kind=RP) :: P(NDIM), IP(NDIM), & + IntersectionPoint(NDIM) + integer :: TriangleIndex + + minDist = huge(1.0_RP) + + if( .not. BoxIntersectSphere( Radius, Point, root% vertices ) ) return + + call MinimumDistOtherBoxes( Point, root, root, Radius, 0, minDist, & + IntersectionPoint, TriangleIndex ) + + call OBB(root% STLNum)% ChangeRefFrame( Point, GLOBAL, P ) + call OBB(root% STLNum)% ChangeRefFrame( IntersectionPoint, GLOBAL, IP ) + + normal = (P - IP)/norm2(P - IP) + + end subroutine MinimumDistanceSphereKDtree + + ! -!///////////////////////////////////////////////////////////////////////////////////////////// -! +! Once the first distance is found, a sphere whose radius is equal to the distance is computed. If +! it lies inside the starting box, nothing is done; otherwise the boxes intersecting the sphere are +! selected ! --------------------------------------------------------------------------------------------------- -! This subroutine checks if a sphere with radius minDist is inside the box or not. If it's not -! a/ circle/s is/are computed. Each circle is the base of a cylinder used to find possible boxes that -! can intersect the sphere. -! --------------------------------------------------------------------------------------------------- - - logical function CheckHypersphere( tree, Point, minDist) result( Inside ) + logical function CheckHypersphere( tree, Point, minDist) result( Intersect ) implicit none !-arguments----------------------------------------------------- - real(kind=rp), dimension(:), intent(in) :: Point - type(KDtree), target, intent(inout) :: tree - real(kind=rp), intent(inout) :: minDist + real(kind=rp), intent(in) :: Point(:) + type(KDtree), target, intent(inout) :: tree + real(kind=rp), intent(inout) :: minDist - Inside = BoxIntersectSphere( minDist, Point, tree% vertices ) + Intersect = BoxIntersectSphere( minDist, Point, tree% vertices ) end function CheckHypersphere -! -!///////////////////////////////////////////////////////////////////////////////////////////// ! +! Circle-triangle intersection ! --------------------------------------------------------- -! This function gives true if a circle interscts a rectangle -! --------------------------------------------------------- - - logical function CircleRectIntersection( RectLength, RectWidth, RectCenter, & - Center, Radius ) result( Intersect ) + logical function CircleRectIntersection( RectLength, RectWidth, RectCenter, Center, Radius ) result( Intersect ) implicit none - !-arguments--------------------------------------------------------------- - real(kind=rp), dimension(:), intent(in) :: RectCenter, Center - real(kind=rp), intent(in) :: RectLength, RectWidth, Radius - !-local-variables--------------------------------------------------------- - real(kind=rp), dimension(2) :: d + !-arguments------------------------------------------------ + real(kind=rp), intent(in) :: RectCenter(:), Center(:) + real(kind=rp), intent(in) :: RectLength, RectWidth, Radius + !-local-variables------------------------------------------ + real(kind=rp) :: d(2) Intersect = .false. @@ -2708,427 +2778,317 @@ logical function CircleRectIntersection( RectLength, RectWidth, RectCenter, & POW2(Radius) ) Intersect = .true. end function CircleRectIntersection -! -!///////////////////////////////////////////////////////////////////////////////////////////// ! -! ------------------------------------------------- -! This function computes the distance between a point and a box +! Point-box distance ! ------------------------------------------------ - real(kind=rp) function PointBoxDistance( Point, vertices ) result( sqrDist ) implicit none - !-arguments-------------------------------------------- - real(kind=rp), dimension(:), intent(in) :: Point - real(kind=rp), dimension(:,:), intent(in) :: vertices - !-local-variables-------------------------------------- - integer, dimension(NDIM) :: ind - real(kind=rp) :: v - integer :: i + !-arguments-------------------------------- + real(kind=rp), intent(in) :: Point(:) + real(kind=rp), intent(in) :: vertices(:,:) + !-local-variables-------------------------- + integer :: i sqrDist = 0.0_RP - ind(1) = 2 ! x-axis - ind(2) = 4 ! y-axis - ind(3) = 5 ! z-axis - ! if the point's x-coordinate (xp) is less than the x-min coord. of the box, then ! the minimum distance on the x-dir is the distance between the xp and x-min, or ! vertices(i,1) - x-coordinate. The following loop avoids the computation of the point ! with the minimum distance from P. If the point P is inside the box, sqrDist = 0. !-------------------------------------------------------------------------------------- do i = 1, NDIM - v = Point(i) - if( v .lt. vertices(i,1) ) sqrDist = sqrDist + (vertices(i,1)-v)*(vertices(i,1)-v) - if( v .gt. vertices(i,ind(i)) ) sqrDist = sqrDist + (v-vertices(i,ind(i)))*(v-vertices(i,ind(i))) + if( Point(i) .lt. minval(vertices(i,:)) ) sqrDist = sqrDist + POW2(minval(vertices(i,:))-Point(i)) + if( Point(i) .gt. maxval(vertices(i,:)) ) sqrDist = sqrDist + POW2(Point(i)-maxval(vertices(i,:))) end do end function PointBoxDistance -! -!///////////////////////////////////////////////////////////////////////////////////////////// ! -! ------------------------------------------------- -! This function checks if a sphere intersects a box +! Sphere-box intersection, the radius must be SQUARED ! ------------------------------------------------ - logical function BoxIntersectSphere( Radius, Center, vertices ) result( Intersect ) implicit none !-arguments------------------------------------------- - real(kind=rp), dimension(:,:), intent(in) :: vertices - real(kind=rp), dimension(:), intent(in) :: Center - real(kind=rp), intent(in) :: Radius + real(kind=rp), intent(in) :: vertices(:,:) + real(kind=rp), intent(in) :: Center(:) + real(kind=rp), intent(in) :: Radius !-local-variables------------------------------------- real(kind=rp) :: sqrDist Intersect = .false. sqrDist = PointBoxDistance( Center, vertices ) - if( sqrDist .le. POW2(Radius) ) Intersect = .true. + if( sqrDist .le. Radius ) Intersect = .true. end function BoxIntersectSphere - - - subroutine MinimumDistancePoints( Point, root, minDist, LowerBound, actualIndex, PointsIndex, forcingPointsMask ) - +! +! Nearest-neighbor algorithm for selecting the DoFs closer to Point. +! -------------------------------------------------------------------- + subroutine MinimumDistancePoints( Point, root, BandRegion, minDist, actualIndex, PointsIndex ) + use ElementClass implicit none !-arguments------------------------------------------------------- - real(kind=rp), dimension(:), intent(in) :: Point - type(KDtree), intent(inout) :: root - real(kind=rp), intent(inout) :: minDist, LowerBound - integer, intent(in) :: actualIndex - integer, dimension(:), intent(inout) :: PointsIndex - logical, intent(in) :: forcingPointsMask + real(kind=rp), intent(in) :: Point(:) + type(KDtree), intent(inout) :: root + type(IBMpoints), intent(in) :: BandRegion + real(kind=rp), intent(inout) :: minDist + integer, intent(in) :: actualIndex + integer, intent(inout) :: PointsIndex(:) !-local-variables------------------------------------------------- - real(kind=rp), dimension(NDIM) :: BandPoint, dsvec - logical :: Inside, found, FPmask - type(KDtree), pointer :: tree, parent - real(kind=rp) :: sqrDist, New_minsqrDist, Radius, ds - integer :: i, LeafIndex, temp_index - - optional :: forcingPointsMask - - ! ref frame = global - + real(kind=rp) :: BandPoint(NDIM), sqrDist, & + New_sqrDist, Radius + logical :: Intersect + type(KDtree), pointer :: tree + integer :: i, LeafIndex, new_index, k + minDist = huge(1.0_RP) - call root% FindLeaf( Point, tree ) + call root% FindLeaf( Point, tree, .false. ) LeafIndex = tree% index do i = 1, tree% NumOfObjs - - if( present(forcingPointsMask) .and. forcingPointsMask ) then - if( BandPoints_ALL% x(tree% ObjsIndeces(i))% forcingPoint ) cycle - end if - - BandPoint = BandPoints_ALL% x(tree% ObjsIndeces(i))% coords - - sqrDist = POW2(norm2(Point - BandPoint)) - - if( sqrDist .lt. minDist .and. sqrDist .gt. LowerBound .or. & - AlmostEqual(sqrDist, LowerBound) ) then + + if( any(PointsIndex .eq. tree% ObjsIndeces(i)) ) cycle - found = .false. - if( any(PointsIndex .eq. tree% ObjsIndeces(i)) )then - found = .true. - end if + BandPoint = BandRegion% x(tree% ObjsIndeces(i))% coords + + sqrDist = 0.0_RP + do k = 1, NDIM + sqrDist = sqrDist + POW2(Point(k) - BandPoint(k)) + end do - if( .not. found ) then - minDist = sqrDist + if( sqrDist .lt. minDist .or. almostEqual(sqrDist,minDist) ) then + minDist = sqrDist PointsIndex(actualIndex) = tree% ObjsIndeces(i) - end if - - end if + end if end do if( tree% NumOfObjs .gt. 0 ) then ! Check the sphere !----------------- - Radius = sqrt(minDist) - Inside = CheckHypersphere( tree, Point, Radius ) + if( PointsIndex(actualIndex) .eq. 0 ) then + BandPoint = BandRegion% x(PointsIndex(actualIndex-1))% coords + else + BandPoint = BandRegion% x(PointsIndex(actualIndex))% coords + end if + + sqrDist = 0.0_RP + do k = 1, NDIM + sqrDist = sqrDist + POW2(Point(k) - BandPoint(k)) + end do + + Radius = sqrDist !minDist + Intersect = CheckHypersphere( tree, Point, Radius ) else - parent => tree% parent - dsvec(1) = abs(parent% vertices(1,7)-parent% vertices(1,1)) - dsvec(2) = abs(parent% vertices(2,7)-parent% vertices(2,1)) - dsvec(3) = abs(parent% vertices(3,7)-parent% vertices(3,1)) - ds = maxval(dsvec) - Radius = ds - Inside = .true. - nullify(parent) + print *, "IBM:: MinimumDistance: " + print *, "Can't find triangles in leaf ", LeafIndex + error stop end if nullify(tree) - if( present(forcingPointsMask) ) then - FPmask = forcingPointsMask - else - FPmask = .false. - end if - - if( Inside ) then - New_minsqrDist = huge(1.0_RP) - call MinimumDistOtherBoxesPoints( Point, root, Radius, New_minsqrDist, & - LowerBound, PointsIndex, LeafIndex, & - temp_index, FPmask ) - if( New_minsqrDist .le. minDist ) then - minDist = New_minsqrDist; PointsIndex(actualIndex) = temp_index + if( Intersect ) then + New_sqrDist = huge(1.0_RP) + call MinimumDistOtherBoxesPoints( Point, root, BandRegion, Radius, & + New_sqrDist, PointsIndex, & + LeafIndex, new_index ) + if( New_sqrDist .le. minDist ) then + minDist = New_sqrDist; PointsIndex(actualIndex) = new_index end if end if minDist = sqrt(minDist) end subroutine MinimumDistancePoints - - recursive subroutine MinimumDistOtherBoxesPoints( Point, tree, Radius, New_minsqrDist, & - LowerBound, PointsIndex, LeafIndex, & - temp_index, forcingPointsMask ) - +! +! Distance between the point and DoFs in other boxes, i.e. not the one containing it +! ----------------------------------------------------------------------------------------- + recursive subroutine MinimumDistOtherBoxesPoints( Point, tree, BandRegion, Radius, & + New_sqrDist, PointsIndex, & + LeafIndex, new_index ) + use elementClass implicit none - !-arguments---------------------------------------------------------- - real(kind=rp), dimension(:), intent(in) :: Point - type(KDtree), intent(inout) :: tree - real(kind=rp), intent(in) :: Radius, LowerBound - real(kind=rp), intent(inout) :: New_minsqrDist - integer, intent(inout) :: temp_index - integer, dimension(:), intent(in) :: PointsIndex - integer, intent(in) :: LeafIndex - logical, intent(in) :: forcingPointsMask - !-local-variables--------------------------------------------------- - real(kind=rp) :: sqrDist, BandPoint(NDIM) - logical :: Intersect, found - integer :: i + !-arguments--------------------------------------------------- + real(kind=rp), intent(in) :: Point(:) + type(KDtree), intent(inout) :: tree + type(IBMpoints), intent(in) :: BandRegion + real(kind=rp), intent(in) :: Radius + real(kind=rp), intent(inout) :: New_sqrDist + integer, intent(inout) :: new_index + integer, intent(in) :: PointsIndex(:) + integer, intent(in) :: LeafIndex + !-local-variables--------------------------------------------- + real(kind=rp) :: sqrDist, BandPoint(NDIM) + logical :: Intersect + integer :: i, k Intersect = BoxIntersectSphere( Radius, Point, tree% vertices ) if( Intersect ) then if( tree% isLast ) then - if( tree% index .ne. LeafIndex ) then + if( LeafIndex .ne. tree% index ) then do i = 1, tree% NumOfObjs - - if( forcingPointsMask ) then - if( BandPoints_ALL% x(tree% ObjsIndeces(i))% forcingPoint ) cycle - end if - - BandPoint = BandPoints_ALL% x(tree% ObjsIndeces(i))% coords - - sqrDist = POW2(norm2(Point - BandPoint)) + + if( any(PointsIndex .eq. tree% ObjsIndeces(i)) ) cycle + + BandPoint = BandRegion% x(tree% ObjsIndeces(i))% coords + + sqrDist = 0.0_RP + do k = 1, NDIM + sqrDist = sqrDist + POW2(Point(k) - BandPoint(k)) + end do - if( sqrDist .lt. New_minsqrDist .and. sqrDist .gt. LowerBound .or. & - AlmostEqual(sqrDist, LowerBound) )then - - found = .false. - if( any(PointsIndex .eq. tree% ObjsIndeces(i)) ) then - found = .true. - end if - - if( .not. found ) then - New_minsqrDist = sqrDist - temp_index = tree% ObjsIndeces(i) - end if - + if( sqrDist .lt. New_sqrDist .or. almostEqual(sqrDist,New_sqrDist) )then + New_sqrDist = sqrDist + new_index = tree% ObjsIndeces(i) end if + end do end if else - call MinimumDistOtherBoxesPoints( Point, tree% child_L, Radius, & - New_minsqrDist, LowerBound, & - PointsIndex, LeafIndex, & - temp_index, forcingPointsMask ) - call MinimumDistOtherBoxesPoints( Point, tree% child_R, Radius, & - New_minsqrDist, LowerBound, & - PointsIndex, LeafIndex, & - temp_index, forcingPointsMask ) + call MinimumDistOtherBoxesPoints( Point, tree% child_L, BandRegion, & + Radius, New_sqrDist,PointsIndex, & + LeafIndex, new_index ) + call MinimumDistOtherBoxesPoints( Point, tree% child_R, BandRegion, & + Radius, New_sqrDist, PointsIndex, & + LeafIndex, new_index ) end if end if end subroutine MinimumDistOtherBoxesPoints -! -!///////////////////////////////////////////////////////////////////////////////////////////// -! -! --------------------- -! TURBULENCE -! --------------------- -! -!///////////////////////////////////////////////////////////////////////////////////////////// - subroutine GetIDW_value( Point, normal, Q, PointsIndex, value ) - use PhysicsStorage - use MappedGeometryClass + + subroutine GetMatrixInterpolationSystem( Point, x, invPhi, b, INTERPOLATION ) + use DenseMatUtilities implicit none - !-arguments--------------------------------------------------------- - real(kind=RP), dimension(:), intent(in) :: Point, normal - real(kind=RP), dimension(:,:), intent(in) :: Q - integer, dimension(:), intent(in) :: PointsIndex - real(kind=RP), dimension(NCONS), intent(out) :: value - !-local-variables--------------------------------------------------- - real(kind=RP) :: DistanceNormal(NDIM), d2, d1, distanceSqr, sqrd1, & - num(NCONS), den - integer :: i, k - - do i = 1, size(PointsIndex) - - DistanceNormal = BandPoints_ALL% x(PointsIndex(i))% coords - Point - d2 = vDot(DistanceNormal, normal) - - distanceSqr = 0.0_RP - do k = 1, NDIM - distanceSqr = distanceSqr + POW2(BandPoints_ALL% x(PointsIndex(i))% coords(k) - Point(k)) - end do + !-arguments------------------------------------ + real(kind=RP), intent(in) :: Point(:) + type(point_type), intent(in) :: x(:) + real(kind=RP), intent(inout) :: invPhi(:,:), b(:) + integer, intent(in) :: INTERPOLATION + !-local-variables------------------------------ + real(kind=RP) :: Phi(size(b),size(b)), & + dist(size(b),size(b)), & + diag, d + integer :: i, j + + select case( INTERPOLATION ) + case( EXPONENTIAL ) + do i = 1, size(x) + do j = i, size(x) + dist(i,j) = norm2(x(i)% coords - x(j)% coords) + dist(j,i) = dist(i,j) + end do + end do - sqrd1 = distanceSqr - POW2(d2) - if( AlmostEqual(sqrd1,0.0_RP) ) sqrd1 = 0.0_RP - d1 = sqrt(sqrd1) - - num = num + Q(:,i)/d1 - den = den + 1.0_RP/d1 + expCoeff = maxval(dist) - end do - - value = num/den - - end subroutine GetIDW_value -! -!///////////////////////////////////////////////////////////////////////////////////////////// -! -! TURBULENCE -! -!///////////////////////////////////////////////////////////////////////////////////////////// -! -#if defined(NAVIERSTOKES) -! ------------------------------------------------- -! This subroutine performs iterations so that the -! forcing point lies inside the log region -! ------------------------------------------------ + do i = 1, size(x) + do j = i, size(x) + Phi(i,j) = interpolationfunction(dist(i,j)) + Phi(j,i) = Phi(i,j) + end do + b = interpolationfunction(norm2(Point - x(i)% coords)) + end do + invPhi = inverse(Phi) + case( IDW ) + b = 0.0_RP; invPhi = 0.0_RP + do i = 1, size(x) + d = norm2(Point - x(i)% coords) + invPhi(i,i) = 1.0_RP/d + b = b + invPhi(i,i) + end do + do i = 1, size(x) + b(i) = 1.0_RP/b(i) + end do + end select + + end subroutine GetMatrixInterpolationSystem + + real(kind=RP) function interpolationfunction(x) result(f) + implicit none + real(kind=RP), intent(in) :: x - subroutine IBM_GetImagePoint_nearest( this ) - use WallFunctionDefinitions - use WallFunctionBC - use MappedGeometryClass - use PhysicsStorage - use MPI_Process_Info - implicit none - !-arguments--------------------------------------------------------------------------- - class(IBM_type), intent(inout) :: this - !-local-variables---------------------------------------------------------------------- - real(kind=RP) :: Dist, LowerBound - integer :: i, k - - if( allocated(this% ImagePoint_NearestPoints) ) deallocate(this% ImagePoint_NearestPoints) - allocate(this% ImagePoint_NearestPoints(this% KDtree_n_of_interPoints,BandPoints_ALL% NumOfObjs)) - - this% ImagePoint_NearestPoints = 0 + f = exp(-POW2(x/expCoeff)) - if( MPI_Process% isRoot ) then -!$omp parallel shared(i) -!$omp do schedule(runtime) private(k,Dist,LowerBound) - do i = 1, BandPoints_ALL% NumOfObjs - if( .not. BandPoints_ALL% x(i)% forcingPoint ) cycle - LowerBound = -huge(1.0_RP) - do k = 1, this% KDtree_n_of_interPoints - call MinimumDistancePoints( BandPoints_ALL% x(i)% ImagePoint_coords, this% rootPoints, & - Dist, LowerBound, k, this% ImagePoint_NearestPoints(:,i), & - .true. ) - LowerBound = POW2(Dist) - end do - end do -!$omp end do -!$omp end parallel - end if - - call recvIP_NearestPoints( this% ImagePoint_NearestPoints ) - call sendIP_NearestPoints( this% ImagePoint_NearestPoints ) + end function interpolationfunction - end subroutine IBM_GetImagePoint_nearest - - - subroutine IBM_SourceTermTurbulence( this, elements ) + real(kind=RP) function GetInterpolatedValue( variable, invPhi, b ) result(value) + implicit none + !-arguments------------------------------------------------ + real(kind=RP), intent(in) :: variable(:), invPhi(:,:), b(:) + !-local-variables------------------------------------------ + real(kind=RP) :: weights(size(b)) + + value = dot_product(matmul(invPhi,variable),b) + + end function GetInterpolatedValue +! +! Inverse Distance Weighting interpolation +! ---------------------------------------- + subroutine GetIDW_value( Point, x, Q, value ) use PhysicsStorage - use VariableConversion - use WallFunctionBC + use MappedGeometryClass implicit none - !-arguments-------------------------------------------------- - class(IBM_type), intent(inout) :: this - type(element), dimension(:), intent(inout) :: elements - !-local-variables-------------------------------------------- - real(kind=rp), allocatable :: bpQ(:,:) - real(kind=rp) :: Q(NCONS), Q_target(NCONS), nu, & - mu, T, u_tau, uIP_t, uIP_n, y_IP, & - uFC_t, uFC_n, uFC(NDIM), & - Source(NCONS), tangent(NDIM), & - VIP_t(NDIM) - real(kind=rp), parameter :: EPS = 1.0d-12 - integer :: n, i - - allocate( bpQ(NCONS,BandPoints_ALL% NumOfObjs) ) - - call this% BandPoint_state( elements, bpQ ) - - do i = 1, BandPoints_ALL% NumOfObjs - - if( .not. BandPoints_ALL% x(i)% forcingPoint ) cycle - - if( BandPoints_ALL% x(i)% partition .eq. MPI_Process% rank ) then - - associate( y_FC => BandPoints_ALL% x(i)% Dist, & - IP_NearestPoints => this% ImagePoint_NearestPoints(:,i), & - normal => BandPoints_ALL% x(i)% normal, & - eID => BandPoints_ALL% x(i)% element_index, & - loc_pos => BandPoints_ALL% x(i)% local_Position ) - - do n = 1, NCONS - Q(n) = sum(bpQ(n,IP_NearestPoints)) - end do - - Q = Q/this% KDtree_n_of_interPoints -#if defined(NAVIERSTOKES) && (!(SPALARTALMARAS)) - T = Temperature(Q) - mu = SutherlandsLaw(T) - - nu = mu/Q(IRHO) - - uIP_n = Q(IRHOU)*normal(1)+Q(IRHOV)*normal(2)+Q(IRHOW)*normal(3) - - VIP_t = Q(IRHOU:IRHOW) - uIP_n*normal - - uIP_t = norm2(VIP_t) + !-arguments---------------------------------------------------- + real(kind=RP), intent(in) :: Point(:) + type(point_type), intent(in) :: x(:) + real(kind=RP), intent(in) :: Q(:,:) + real(kind=RP), intent(out) :: value(NCONS) + !-local-variables---------------------------------------------- + real(kind=RP) :: DistanceNormal(NDIM), d, & + distanceSqr, sqrd1, & + num(NCONS), den, xP(NDIM) + real(kind=RP), parameter :: eps = 1.0d-10 + integer :: i, k - y_IP = y_FC + norm2(BandPoints_ALL% x(i)% ImagePoint_coords - BandPoints_ALL% x(i)% coords) + num = 0.0_RP; den = 0.0_RP - u_tau = u_tau_f(uIP_t,y_IP,nu, u_tau0=1.0_RP) - - uFC_t = u_plus_f( y_plus_f( y_IP, u_tau, nu ) ) * u_tau - uFC_n = uIP_n * y_FC/y_IP - - tangent = VIP_t/(uIP_t+EPS) - - uFC = uFC_t*tangent + uFC_n*normal - - Q_target = elements(eID)% storage% Q(:,loc_pos(1),loc_pos(2),loc_pos(3)) - Q_target(IRHOU) = Q_target(IRHO) * uFC(1) - Q_target(IRHOV) = Q_target(IRHO) * uFC(2) - Q_target(IRHOW) = Q_target(IRHO) * uFC(3) - - call this% SourceTerm( eID, elements(eID)% storage% Q(:,loc_pos(1),loc_pos(2),loc_pos(3)), Q_target, Source ) -#endif - elements(eID)% storage% QDot(:,loc_pos(1),loc_pos(2),loc_pos(3)) = & - elements(eID)% storage% QDot(:,loc_pos(1),loc_pos(2),loc_pos(3)) + Source - - end associate - - end if - - end do + do i = 1, size(x) + + d = norm2(x(i)% coords - Point) + + num = num + Q(:,i)/(d+eps) + den = den + 1.0_RP/(d+eps) + + end do - deallocate(bpQ) + value = num/den - end subroutine IBM_SourceTermTurbulence + end subroutine GetIDW_value -! estimate the y_plus for a flat plate +! estimate the yplus for a flat plate real(kind=RP) function InitializeDistance( y_plus ) result( y ) use FluidData implicit none - !-arguments + !-arguments-------------------------- real(kind=rp), intent(in) :: y_plus - !-local-varirables------------------------- - real(kind=RP) :: nu, u_tau -#if defined(NAVIERSTOKES) && (!(SPALARTALMARAS)) + !-local-varirables------------------- + real(kind=RP) :: nu, Cf + + y = 0.0_RP +#if defined(NAVIERSTOKES) nu = refValues% mu / refValues% rho #endif - u_tau = Estimate_u_tau( ) - - y = GetEstimated_y( y_plus, nu, u_tau ) - + Cf = Estimate_Cf() +#if defined(NAVIERSTOKES) + y = sqrt(2.0_RP) * y_plus * nu /(refValues% V * sqrt(Cf)) +#endif end function InitializeDistance real(kind=RP) function Estimate_Cf() result( Cf ) use FluidData implicit none -#if defined(NAVIERSTOKES) && (!(SPALARTALMARAS)) + + Cf = 0.0_RP +#if defined(NAVIERSTOKES) ! Schlichting, Hermann (1979), Boundary Layer Theory... ok if Re < 10^9 - Cf = (2.0_RP*log10(dimensionless% Re) - 0.65_RP)**(-2.3_RP) +!~ Cf = (2.0_RP*log10(dimensionless% Re) - 0.65_RP)**(-2.3_RP) + Cf = 0.058_RP * dimensionless% Re**(-0.2_RP) #endif end function Estimate_Cf @@ -3138,13 +3098,14 @@ real(kind=RP) function Estimate_u_tau( ) result( u_tau ) !-local-variables-------------------------------- real(kind=RP) :: Cf + u_tau = 0.0_RP + Cf = Estimate_Cf() -#if defined(NAVIERSTOKES) && (!(SPALARTALMARAS)) +#if defined(NAVIERSTOKES) u_tau = sqrt( 0.5_RP * POW2(refValues% V) * Cf ) !sqrt(tau_w/rho) #endif end function Estimate_u_tau - real(kind=RP) function GetEstimated_y( y_plus, nu, u_tau ) result( y ) use PhysicsStorage implicit none @@ -3156,7 +3117,229 @@ real(kind=RP) function GetEstimated_y( y_plus, nu, u_tau ) result( y ) y = y/Lref end function GetEstimated_y -#endif -end module IBMClass + real(kind=RP) function QuarticRealPositiveRoot(a0, b0, c0, d0, e0) result( value ) + !https://math.stackexchange.com/questions/115631/quartic-equation-solution-and-conditions-for-real-roots + implicit none + !-arguments-------------------------------------- + real(kind=rp), intent(in) :: a0, b0, c0, d0, e0 + !-local-variables-------------------------------- + real(kind=rp) :: a, b, c, d, x, m2, m, n, & + alpha, beta, psi, & + solution(2) + + a = b0/a0; b = c0/a0; c = d0/a0; d = e0/a0 + + x = cubic_poly( 1.0_RP, -b, a*c-4.0_RP*d, d*(4.0_RP*b-POW2(a)) - POW2(c) ) + + m2 = 0.25_RP*POW2(a)-b+x + + if( m2 .gt. 0.0_RP ) then + m = sqrt(m2) + n = (a*x-2.0_RP*c)/(4.0_RP*m) + elseif( almostEqual(m2,0.0_RP) ) then + m = 0.0_RP + n = sqrt(0.25_RP*POW2(x) - d) + else + print *, 'no real roots found' + error stop + end if + + alpha = 0.5_RP*POW2(a) - x - b + + beta = 4.0_RP * n - a * m + + if( (alpha + beta) .ge. 0.0_RP ) then + psi = sqrt(alpha+beta) + solution(1) = -0.25_RP*a + 0.5_RP*m + 0.5_RP*psi + solution(2) = -0.25_RP*a + 0.5_RP*m - 0.5_RP*psi + elseif( (alpha - beta) .ge. 0.0_RP ) then + psi = sqrt(alpha-beta) + solution(1) = -0.25_RP*a - 0.5_RP*m + 0.5_RP*psi + solution(2) = -0.25_RP*a - 0.5_RP*m - 0.5_RP*psi + end if + !take positive solution + value = maxval(solution) + + end function QuarticRealPositiveRoot + + real(KIND=rp) function cubic_poly( a0, b0, c0, d0 ) result( x ) + + implicit none + !-arguments---------------------------------------------- + real(kind=RP), intent(in) :: a0, b0, c0, d0 + !-local-variables---------------------------------------- + real(kind=RP) :: a, b, c, Jac, x0, q, r + real(kind=RP) :: theta, m, s, txx + integer :: i + + + a = b0/a0; b = c0/a0; c = d0/a0 + + x0 = 1.0_RP + + do i = 1, 100 + + Jac = 3.0_RP*a0*POW2(x0) + 2.0_RP*b0*x0 + c0 + + x = x0 - eval_cubic(a0, b0, c0, d0, x0)/Jac + + if( abs(x-x0) .lt. 1.0E-10_RP ) return + + x0 = x + + end do + + print *, "cubic_poly:: Newtown method doesn't coverge" + error stop + + end function cubic_poly + + real(kind=RP) function eval_cubic( a0, b0, c0, d0, x0 ) result( value ) + + implicit none + !-arguments---------------------------------- + real(kind=RP), intent(in) :: a0, b0, c0, d0, x0 + + value = a0*POW3(x0) + b0*POW2(x0) + c0*x0 + d0 + + end function eval_cubic +! +!///////////////////////////////////////////////////////////////////////////////////////////// +! +! --------------------------------------------------- +! Subourinte for generating a .tec file with forces +! --------------------------------------------------- + subroutine STLScalarTEC( x, y, z, scalar, STLNum, FileName, title, variables ) + + implicit none + !-arguments-------------------------------------------------- + real(kind=RP), intent(in) :: x(:), y(:), z(:), scalar(:) + integer, intent(in) :: STLNum + character(len=*), intent(in) :: FileName, title, variables + !-local-variables-------------------------------------------- + integer :: NumOfObjs, funit + + NumOfObjs = size(x) + + call TecHeader( funit, FileName, title, variables ) + call WriteScalarQuatity( funit, NumOfObjs, x, y, z, scalar ) + call TECtriangle_3points( funit, NumOfObjs ) + + close(funit) + + end subroutine STLScalarTEC + + subroutine STLvectorTEC( x, y, z, vector_x, vector_y, vector_z, STLNum, FileName, title, variables ) + + implicit none + !-arguments--------------------------------------------------------- + real(kind=RP), intent(in) :: x(:), y(:), z(:), vector_x(:), & + vector_y(:), vector_z(:) + integer, intent(in) :: STLNum + character(len=*), intent(in) :: FileName, title, variables + !-local-variables-------------------------------------------------- + integer :: NumOfObjs, funit + + NumOfObjs = size(x) + + call TecHeader( funit, FileName, title, variables ) + call WriteVectorQuatity( funit, NumOfObjs, x, y, z, vector_x, vector_y, vector_z ) + call TECtriangle_3points( funit, NumOfObjs ) + + close(funit) + + end subroutine STLvectorTEC + + subroutine TecHeader( funit, FileName, title, variables ) + + implicit none + !-arguments------------------- + integer, intent(inout) :: funit + character(len=*), intent(in) :: FileName, title, & + variables + + funit = UnusedUnit() + + open(funit,file='RESULTS/'//trim(FileName), status='unknown') + + write(funit,'(A)') 'Title="' //trim(title)// '"' + write(funit,'(A)') 'Variables='//trim(variables) + + end subroutine TecHeader + + subroutine WriteScalarQuatity( funit, NumOfObjs, x, y, z, scalar ) + + implicit none + !-arguments------------------------------------------------------- + integer, intent(in) :: funit, NumOfObjs + real(kind=RP), intent(in) :: x(:), y(:), z(:), scalar(:) + !-local-variables------------------------------------------------- + integer :: i, j + + write(funit,'(a,i6,a,i6,a)') 'ZONE NODES =', NumOfObjs, ',ELEMENTS =', NumOfObjs/3,', DATAPACKING=POINT, ZONETYPE=FETRIANGLE' + + do i = 1, NumOfObjs + write(funit,'(4g15.6)') x(i), y(i), z(i), scalar(i) + end do + + end subroutine WriteScalarQuatity + + subroutine WriteVectorQuatity( funit, NumOfObjs, x, y, z, vector_x, vector_y, vector_z ) + + implicit none + !-arguments--------------------------------------------------------- + integer, intent(in) :: funit, NumOfObjs + real(kind=RP), intent(in) :: x(:), y(:), z(:), vector_x(:), & + vector_y(:), vector_z(:) + !-local-variables--------------------------------------------------- + integer :: i, j + + write(funit,'(a,i6,a,i6,a)') 'ZONE NODES=', NumOfObjs, ',ELEMENTS =', NumOfObjs/3,', DATAPACKING=POINT, ZONETYPE=FETRIANGLE' + + do i = 1, NumOfObjs + write (funit,'(6g15.6)') x(i), y(i), z(i), vector_x(i), vector_y(i), vector_z(i) + end do + + end subroutine WriteVectorQuatity + + subroutine WriteTimeFile( t, STLNum ) + use MPI_Process_Info + implicit none + !-arguments--------------------------------------------------------- + real(kind=RP), intent(in) :: t + integer , intent(in) :: STLNum + !-local-variables--------------------------------------------------- + integer :: funit + + if( .not. MPI_Process% isRoot ) return + + funit = UnusedUnit() + + open(funit,file='RESULTS/'//trim(OBB(STLNum)% FileName)//'_time.dat', action = "write" , access = "append" , status = "unknown") + + write(funit,'(1g15.6)') t + + close(funit) + + end subroutine WriteTimeFile + + subroutine TECtriangle_3points( funit, NumOfObjs ) + + implicit none + !-arguments------------------------------------ + integer, intent(in) :: funit, NumOfObjs + !-local-variables------------------------------ + integer :: i, index + + index = 0 + + do i = 1, NumOfObjs/3 + write(funit,'(3i6)') index + 1, index + 2, index + 3 + index = index + 3 + end do + + end subroutine TECtriangle_3points + +end module IBMClass \ No newline at end of file diff --git a/Solver/src/libs/mesh/KDClass.f90 b/Solver/src/libs/mesh/KDClass.f90 index ae45919fc..955b1e083 100644 --- a/Solver/src/libs/mesh/KDClass.f90 +++ b/Solver/src/libs/mesh/KDClass.f90 @@ -22,11 +22,11 @@ module KDClass !~ |/ |/ / !~ 2-----------------3 / x - public :: LastLevel, BoxIndex + public :: LastLevel, BoxIndex, POINTS_KDTREE, TRIANGLES_KDTREE_SAH, TRIANGLES_KDTREE_MEDIAN integer :: BoxIndex, LastLevel = -1, depth, NumOfObjsIndx, NumOfKDtreePoints - integer, parameter :: side_L = 4, side_R = 0, ON_PLANE = 0, POINTS_KDTREE = 0, TRIANGLES_KDTREE = 1 + integer, parameter :: side_L = 4, side_R = 0, ON_PLANE = 0, POINTS_KDTREE = 0, TRIANGLES_KDTREE_SAH = 1, TRIANGLES_KDTREE_MEDIAN = 2 integer, parameter :: START_ = 2, END_ = 0, PLANAR_ = 1, ONLYLEFT = 0, ONLYRIGHT = 1, BOTH = 2, ODD = 1, EVEN = 2 integer, parameter :: BREADTHFIRST = 1, DEPTHFIRST = 0 @@ -38,7 +38,7 @@ module KDClass type Event - real(kind=rp) :: plane + real(kind=rp) :: plane, median integer :: eType, index, axis end type @@ -51,7 +51,7 @@ module KDClass class(KDtree), pointer :: child_L, child_R, parent type(Object_type), dimension(:), allocatable :: ObjectsList - real(kind=rp), dimension(3,8) :: vertices + real(kind=rp), dimension(3,8) :: vertices !local integer :: NumOfObjs, level, axis, & index, Min_n_of_Objs, & which_KDtree, MaxAxis, & @@ -65,17 +65,18 @@ module KDClass integer, dimension(:), allocatable :: ObjsIndeces contains - procedure :: construct => KDtree_construct - procedure :: SetUpRoot => KDtree_SetUpRoot - procedure :: FindLeaf => KDtree_FindLeaf - procedure :: plot => KDtree_plot - procedure :: plotBlock => KDtree_plotBlock - procedure :: Destruct => KD_treeDestruct - procedure :: GetArea => KD_treeGetArea - procedure :: BuildChild => KDtree_BuildChild - procedure :: EvaluateCost => KDtree_EvaluateCost - procedure :: SaveObjsIndeces => KDtree_SaveObjsIndeces - procedure :: SavePointsIndeces => KDtree_SavePointsIndeces + procedure :: construct => KDtree_construct + procedure :: SetUpRoot => KDtree_SetUpRoot + procedure :: FindLeaf => KDtree_FindLeaf + procedure :: plot => KDtree_plot + procedure :: plotBlock => KDtree_plotBlock + procedure :: Destruct => KD_treeDestruct + procedure :: GetArea => KD_treeGetArea + procedure :: BuildChild => KDtree_BuildChild + procedure :: EvaluateCostSAH => KDtree_EvaluateCostSAH + procedure :: EvaluateCostMEDIAN => KDtree_EvaluateCostMEDIAN + procedure :: SaveObjsIndeces => KDtree_SaveObjsIndeces + procedure :: SavePointsIndeces => KDtree_SavePointsIndeces end type @@ -136,13 +137,14 @@ end function AxisIndex integer function FindAxis( this ) result( FirstAxis ) implicit none - !-arguments + !-arguments---------------------- type(KDtree), intent(in) :: this !-local-variables---------------- integer, dimension(1) :: maxvec - maxvec = maxloc( (/ OBB(this% STLNum)% MBR% Length, OBB(this% STLNum)% MBR% Width, & - abs(OBB(this% STLNum)% nMax) + abs(OBB(this% STLNum)% nMin) /) ) + maxvec = maxloc( (/ abs(this% vertices(1,7) - this% vertices(1,1)), & + abs(this% vertices(2,7) - this% vertices(2,1)), & + abs(this% vertices(3,7) - this% vertices(3,1)) /) ) FirstAxis = maxvec(1) @@ -157,27 +159,21 @@ end function FindAxis recursive subroutine Plot_leaves( tree, STLNum, funit, which_KDtree ) use PhysicsStorage implicit none - !-arguments------------------------------ - type(KDtree), intent(inout) :: tree - integer, intent(in) :: STLNum, funit, & - which_KDtree - !-local-variables------------------------ - real(kind=rp), dimension(NDIM) :: x_g - integer :: i + !-arguments-------------------------------------- + type(KDtree), intent(inout) :: tree + integer, intent(in) :: STLNum, funit, & + which_KDtree + !-local-variables-------------------------------- + real(kind=rp) :: x_g(NDIM) + integer :: i if( tree% isLast ) then write(funit,"(a69)") 'ZONE NODES=8, ELEMENTS = 6, DATAPACKING=POINT, ZONETYPE=FETETRAHEDRON' - select case( which_KDtree ) - case( POINTS_KDTREE ) - do i = 1, 8 - write(funit,'(3E13.5)') Lref*tree% vertices(1,i),Lref*tree% vertices(2,i), Lref*tree% vertices(3,i) - end do - case( TRIANGLES_KDTREE ) - do i = 1, 8 - call OBB(STLNum)% ChangeRefFrame( tree% vertices(:,i), 'global', x_g ) - write(funit,'(3E13.5)') Lref*x_g(1),Lref*x_g(2), Lref*x_g(3) - end do - end select + + do i = 1, 8 + call OBB(STLNum)% ChangeRefFrame( tree% vertices(:,i), GLOBAL, x_g ) + write(funit,'(3E13.5)') Lref*x_g(1),Lref*x_g(2), Lref*x_g(3) + end do write(funit,'(4i2)') 1, 2, 3, 4 write(funit,'(4i2)') 1, 5, 8, 4 @@ -191,65 +187,63 @@ recursive subroutine Plot_leaves( tree, STLNum, funit, which_KDtree ) call Plot_leaves( tree% child_R, STLNum, funit, which_KDtree ) end if - end subroutine Plot_leaves + end subroutine Plot_leaves ! !///////////////////////////////////////////////////////////////////////////////////////////// ! ! ------------------------------------------------- ! This subroutine creates a new file call KDtree in which the leaves will be stored. ! ------------------------------------------------ - subroutine KDtree_plot( this ) + subroutine KDtree_plot( this, lvl ) use MPI_Process_Info implicit none - !-arguemnts---------------------------------- - class(KDtree), target, intent(inout) :: this - !-local-variables---------------------------- - real(kind=rp), dimension(NDIM) :: x_g + !-arguemnts---------------------------------------- + class(KDtree), target, intent(inout) :: this + integer, optional, intent(in) :: lvl + !-local-variables---------------------------------- + real(kind=rp) :: x_g(NDIM) character(len=LINE_LENGTH) :: filename, myString - integer :: i, funit + integer :: i, funit select case( this% which_KDtree ) case( POINTS_KDTREE ) - if( MPI_Process% isRoot ) then - ! same kdtree for all the processes - funit = UnusedUnit() - - open(funit,file='IBM/KDTreeBandPoints.tec', status='unknown') - - write(funit,"(a28)") 'TITLE = "KD-tree"' - write(funit,"(a25)") 'VARIABLES = "x", "y", "z"' - - call Plot_leaves( this, this% STLNum, funit, this% which_KDtree ) - - close(funit) - + + if( .not. MPI_Process% isRoot ) return + + if( present(lvl) ) then + if( lvl .gt. 0 ) then + write(myString,'(i100)') lvl + filename = 'KDtreeBandPoints_MGlevel'//trim(adjustl(myString)) + else + filename = 'KDTreeBandPoints' + end if + else + filename = 'KDTreeBandPoints' end if - case( TRIANGLES_KDTREE ) + + case( TRIANGLES_KDTREE_SAH ) write(myString,'(i100)') MPI_Process% rank if( MPI_Process% nProcs .eq. 1 ) then - filename = OBB(this% STLNum)% filename + filename = 'KDTree_'//OBB(this% STLNum)% filename else - filename = 'PARTITION'//trim(adjustl(myString))//'_'//OBB(this% STLNum)% filename + filename = 'KDTree_Partition'//trim(adjustl(myString))//'_'//OBB(this% STLNum)% filename filename = trim(filename) end if + + end select + + funit = UnusedUnit() - funit = UnusedUnit() - - open(funit,file='IBM/KDTree_'//trim(filename)//'.tec', status='unknown') + open(funit,file='IBM/'//trim(filename)//'.tec', status='unknown') - write(funit,"(a28)") 'TITLE = "KD-tree"' - write(funit,"(a25)") 'VARIABLES = "x", "y", "z"' + write(funit,"(a28)") 'TITLE = "KD-tree"' + write(funit,"(a25)") 'VARIABLES = "x", "y", "z"' - call Plot_leaves( this, this% STLNum, funit, this% which_KDtree ) + call Plot_leaves( this, this% STLNum, funit, this% which_KDtree ) - close(funit) - - case default - print *, " KD tree type not recognized, stop." - error stop - end select + close(funit) end subroutine KDtree_plot ! @@ -259,22 +253,23 @@ end subroutine KDtree_plot ! This subroutine plot a single block whose index is BlockIndex. if PlotObjs is true ! also the objects belonging to the box are saved and plot ! ------------------------------------------------ - subroutine KDtree_plotBlock( this, ObjectsList, PlotObjs ) + subroutine KDtree_plotBlock( this, ObjectsList, STLNum, PlotObjs ) implicit none !-arguments--------------------------------------------- - class(KDtree), intent(inout) :: this - type(object_type), intent(in) :: ObjectsList(:) - logical, intent(in) :: PlotObjs + class(KDtree), intent(inout) :: this + type(object_type), intent(in) :: ObjectsList(:) + integer, intent(in) :: STLNum + logical, intent(in) :: PlotObjs !-local-variables--------------------------------------- - real(kind=rp), dimension(NDIM) :: x_g - character(len=LINE_LENGTH) :: filename, myString - integer :: i,j, funit, index + real(kind=rp) :: x_g(NDIM) + character(len=LINE_LENGTH) :: filename, myString + integer :: i,j, funit, index funit = UnusedUnit() write(myString,'(i100)') this% index - filename = 'block'//trim(adjustl(myString))//'_'//OBB(this% STLNum)% filename + filename = 'block'//trim(adjustl(myString))//'_'//OBB(STLNum)% filename filename = trim(filename) open(funit,file='IBM/'//trim(filename)//'.tec', status='unknown') @@ -284,7 +279,7 @@ subroutine KDtree_plotBlock( this, ObjectsList, PlotObjs ) write(funit,"(a69)") 'ZONE NODES=8, ELEMENTS = 6, DATAPACKING=POINT, ZONETYPE=FETETRAHEDRON' do i = 1, 8 - call OBB(this% STLNum)% ChangeRefFrame( this% vertices(:,i), 'global', x_g ) + call OBB(STLNum)% ChangeRefFrame( this% vertices(:,i), GLOBAL, x_g ) write(funit,'(3E13.5)') x_g(1),x_g(2), x_g(3) end do @@ -298,7 +293,7 @@ subroutine KDtree_plotBlock( this, ObjectsList, PlotObjs ) close(funit) if( PlotObjs .and. this% NumOfObjs .gt. 0 ) then - filename = 'Objects'//trim(adjustl(myString))//'_'//OBB(this% STLNum)% filename + filename = 'Objects'//trim(adjustl(myString))//'_'//OBB(STLNum)% filename filename = trim(filename) open(funit,file='IBM/'//trim(filename)//'.tec', status='unknown') @@ -310,8 +305,8 @@ subroutine KDtree_plotBlock( this, ObjectsList, PlotObjs ) write(funit,"(a66)") 'ZONE NODES=3, ELEMENTS = 1, DATAPACKING=POINT, ZONETYPE=FETRIANGLE' index = this% ObjsIndeces(i) - do j = 1, ObjectsList(index)% NumOfVertices - call OBB(this% STLNum)% ChangeRefFrame( ObjectsList(index)% vertices(j)% coords, 'global', x_g ) + do j = 1, 3 + call OBB(STLNum)% ChangeRefFrame( ObjectsList(index)% vertices(j)% coords, GLOBAL, x_g ) write(funit,'(3E13.5)') x_g(1),x_g(2), x_g(3) end do @@ -333,61 +328,43 @@ subroutine KDtree_SetUpRoot( this, stl, Vertices, PointList ) implicit none !-arguments-------------------------------------------- - class(KDtree), intent(inout) :: this - type(STLfile), intent(in) :: stl - real(kind=RP), dimension(NDIM,8), intent(in) :: Vertices - type(Point_type), dimension(:), intent(in) :: PointList + class(KDtree), intent(inout) :: this + type(STLfile), intent(in) :: stl + real(kind=RP), intent(in) :: Vertices(:,:) + type(Point_type), optional, intent(in) :: PointList(:) !-local-variables-------------------------------------- - type(Object_type), pointer :: vertex => null() - type(Object_type) :: Obj, Objvertex - type(point_type), pointer :: p => null() - real(kind=rp), dimension(NDIM) :: coords - real(kind=rp) :: MaxX, MaxY, MaxZ, MinX, MinY, MinZ - integer :: i - - optional :: PointList + type(Object_type) :: Obj + integer :: i this% NumOfObjs = 0 - if( present(PointList) ) then - MaxX = maxval(PointList(:)% coords(1)); MinX = minval(PointList(:)% coords(1)) - MaxY = maxval(PointList(:)% coords(2)); MinY = minval(PointList(:)% coords(2)) - MaxZ = maxval(PointList(:)% coords(3)); MinZ = minval(PointList(:)% coords(3)) - - this% NumOfObjs = size(PointList) - - this% vertices(:,1) = (/ MinX, MinY, MinZ /) - this% vertices(:,2) = (/ MaxX, MinY, MinZ /) - this% vertices(:,3) = (/ MaxX, MaxY, MinZ /) - this% vertices(:,4) = (/ MinX, MaxY, MinZ /) - this% vertices(:,5) = (/ MinX, MinY, MaxZ /) - this% vertices(:,6) = (/ MaxX, MinY, MaxZ /) - this% vertices(:,7) = (/ MaxX, MaxY, MaxZ /) - this% vertices(:,8) = (/ MinX, MaxY, MaxZ /) - - else -! -! Local ref frame -! ---------------------------------------------------- - do i = 1, 4 - this% vertices(:,i) = Vertices(:,i) - this% vertices(:,i+4) = Vertices(:,i+4) - end do - - if( associated(this% parent) ) nullify(this% parent) - allocate( this% ObjectsList(stl% NumOfObjs) ) + do i = 1, 4 + this% vertices(:,i) = Vertices(:,i) + this% vertices(:,i+4) = Vertices(:,i+4) + end do + + select case( this% which_KDtree ) + + case( POINTS_KDTREE ) - associate( Objs => stl% ObjectsList ) - - do i = 1, stl% NumOfObjs - this% ObjectsList(i) = Objs(i) - end do + allocate( this% ObjectsList(size(PointList)) ) + this% NumOfObjs = size(PointList) + + case( TRIANGLES_KDTREE_MEDIAN,TRIANGLES_KDTREE_SAH ) + + allocate( this% ObjectsList(stl% NumOfObjs) ) + + associate( Objs => stl% ObjectsList ) - end associate + do i = 1, stl% NumOfObjs + this% ObjectsList(i) = Objs(i) + end do - this% NumOfObjs = stl% NumOfObjs + end associate - end if + this% NumOfObjs = stl% NumOfObjs + + end select end subroutine KDtree_SetUpRoot ! @@ -396,39 +373,39 @@ end subroutine KDtree_SetUpRoot ! ------------------------------------------------- ! This subroutine builds the KD tree. ! ------------------------------------------------ - subroutine KDtree_construct( this, stl, Vertices, isPlot, Min_n_of_Objs, PointList ) + subroutine KDtree_construct( this, stl, Vertices, isPlot, Min_n_of_Objs, PointList, lvl ) use omp_lib implicit none - !-arguments----------------------------------------------------------------- - class(KDtree), intent(inout) :: this - type(STLfile), intent(in) :: stl - real(kind=RP), dimension(NDIM,8), intent(in) :: Vertices - logical, intent(in) :: isPlot - integer, intent(in) :: Min_n_of_Objs - type(point_type), dimension(:), intent(in) :: PointList - !-local-varables------------------------------------------------------------ - real(kind=rp) :: NumOfObjs, & - NumThreads_RP - integer, dimension(:), allocatable :: ObjsIndx - type(Event), dimension(:,:), allocatable :: Events - type(DepthFirst_type), dimension(:), allocatable :: Depth_First - integer :: i, k, NumThreads, & - DepthFirstLevel, & - NumDepthFirst - - optional :: PointList - - if( present( PointList ) ) then - this% which_KDtree = POINTS_KDTREE + !-arguments------------------------------------------------- + class(KDtree), intent(inout) :: this + type(STLfile), intent(in) :: stl + real(kind=RP), intent(in) :: Vertices(:,:) + logical, intent(in) :: isPlot + integer, intent(in) :: Min_n_of_Objs + integer, optional, intent(in) :: lvl + type(point_type), optional, intent(in) :: PointList(:) + !-local-varables-------------------------------------------- + real(kind=rp) :: NumOfObjs, & + NumThreads_RP + integer, allocatable :: ObjsIndx(:) + type(Event), allocatable :: Events(:,:) + type(DepthFirst_type), allocatable :: Depth_First(:) + integer :: i, k, NumThreads, & + DepthFirstLevel, & + NumDepthFirst + + if( this% which_KDtree .eq. POINTS_KDTREE ) then + if( .not. present(PointList) ) then + print *, "KDtree_construct:: PointList needed for this type of KDtree" + error stop + end if call this% SetUpRoot( stl, vertices, PointList ) else - this% which_KDtree = TRIANGLES_KDTREE call this% SetUpRoot( stl, vertices ) end if this% level = 0 NumOfObjs = this% NumOfObjs - depth = C_1*log(NumOfObjs)/log(2.0_RP) + C_2!1.2 * log2(N) + 2 --> on improving kd tree for ray shooting Havran this% Min_n_of_Objs = Min_n_of_Objs this% isLast = .false. BoxIndex = 1 @@ -436,13 +413,14 @@ subroutine KDtree_construct( this, stl, Vertices, isPlot, Min_n_of_Objs, PointLi select case( this% which_KDtree ) case( POINTS_KDTREE ) - + this% axis = FindAxis( this ) - + allocate(Events(NDIM,this% NumOfObjs)) call GetPointsEvents( this, Events, PointList, NumThreads ) - + + depth = huge(1) this% NumThreads = NumThreads NumThreads_RP = NumThreads DepthFirstLevel = floor(log(NumThreads_RP)/log(2.0_RP)) @@ -466,15 +444,48 @@ subroutine KDtree_construct( this, stl, Vertices, isPlot, Min_n_of_Objs, PointLi end do !$omp end single !$omp end parallel - deallocate(Depth_First) - case( TRIANGLES_KDTREE ) + case( TRIANGLES_KDTREE_SAH ) allocate(Events(NDIM,2*this% NumOfObjs)) - + call GetEvents( this, Events, NumThreads ) + + depth = C_1*log(NumOfObjs)/log(2.0_RP) + C_2!1.2 * log2(N) + 2 --> on improving kd tree for ray shooting Havran + this% NumThreads = NumThreads + NumThreads_RP = NumThreads + DepthFirstLevel = floor(log(NumThreads_RP)/log(2.0_RP)) + NumDepthFirst = 2.0_RP**(DepthFirstLevel) + + allocate(Depth_First(NumThreads),ObjsIndx(this% NumOfObjs)) + call KDtree_buildTRIANGLES_BreadthFirst( this, Events, ObjsIndx, DepthFirstLevel, Depth_First ) + + deallocate(ObjsIndx) +!$omp parallel shared(this,Depth_First,k) +!$omp single + do k = 1, count( Depth_First(:)% active ) +!$omp task firstprivate(k) private(ObjsIndx) + allocate(ObjsIndx(this% NumOfObjs)) + call KDtree_buildTRIANGLES_DepthFirst( Depth_First(k)% taskTree, Depth_First(k)% taskEvents, ObjsIndx ) + nullify( Depth_First(k)% taskTree ) + deallocate(ObjsIndx) +!$omp end task + end do +!$omp end single +!$omp end parallel + deallocate(Depth_First) + + case( TRIANGLES_KDTREE_MEDIAN ) + + this% axis = FindAxis(this) + + allocate(Events(NDIM,2*this% NumOfObjs)) + + call GetEvents( this, Events, NumThreads ) + + depth = log(NumOfObjs)/log(2.0_RP) !--> on improving kd tree for ray shooting Havran this% NumThreads = NumThreads NumThreads_RP = NumThreads DepthFirstLevel = floor(log(NumThreads_RP)/log(2.0_RP)) @@ -482,7 +493,7 @@ subroutine KDtree_construct( this, stl, Vertices, isPlot, Min_n_of_Objs, PointLi allocate(Depth_First(NumThreads),ObjsIndx(this% NumOfObjs)) - call KDtree_buildSAH_BreadthFirst( this, Events, ObjsIndx, DepthFirstLevel, Depth_First ) + call KDtree_buildTRIANGLES_BreadthFirst( this, Events, ObjsIndx, DepthFirstLevel, Depth_First ) deallocate(ObjsIndx) @@ -491,7 +502,7 @@ subroutine KDtree_construct( this, stl, Vertices, isPlot, Min_n_of_Objs, PointLi do k = 1, count( Depth_First(:)% active ) !$omp task firstprivate(k) private(ObjsIndx) allocate(ObjsIndx(this% NumOfObjs)) - call KDtree_buildSAH_DepthFirst( Depth_First(k)% taskTree, Depth_First(k)% taskEvents, ObjsIndx ) + call KDtree_buildTRIANGLES_DepthFirst( Depth_First(k)% taskTree, Depth_First(k)% taskEvents, ObjsIndx ) nullify( Depth_First(k)% taskTree ) deallocate(ObjsIndx) !$omp end task @@ -499,14 +510,17 @@ subroutine KDtree_construct( this, stl, Vertices, isPlot, Min_n_of_Objs, PointLi !$omp end single !$omp end parallel deallocate(Depth_First) - case default print *, 'KD tree type not recognized' error stop end select - if( isPlot ) call this% plot() - + if( present(lvl) ) then + if( isPlot ) call this% plot(lvl) + else + if( isPlot ) call this% plot() + end if + end subroutine KDtree_construct ! !///////////////////////////////////////////////////////////////////////////////////////////// @@ -514,68 +528,81 @@ end subroutine KDtree_construct ! ------------------------------------------------- ! This subroutine finds the leaf where Point lies ! ------------------------------------------------ - subroutine KDtree_FindLeaf( this, Point, tree ) + subroutine KDtree_FindLeaf( this, Point, tree, RIGHTCHILD ) implicit none - !-arguments------------------------------------------ - class(KDtree), target, intent(inout) :: this - real(kind=rp), dimension(:), intent(in) :: Point - type(KDtree), pointer, intent(inout) :: tree - !-local-variables------------------------------------ - real(kind=rp), dimension(NDIM) :: vertices - integer :: level - - if( associated(this% parent) ) then - print *, "The starting point of the KDtree is not the root" - error stop - end if + !-arguments---------------------------------------------- + class(KDtree), target, intent(inout) :: this + real(kind=rp), intent(in) :: Point(:) + type(KDtree), pointer, intent(inout) :: tree + logical, intent(in) :: RIGHTCHILD + !-local-variables---------------------------------------- + real(kind=rp) :: vertices(NDIM) + integer :: level tree => this + if( tree% isLast ) return + level = 0 do - if( Point(tree% axis) .le. tree% SplittingPlane ) then !lt - tree => tree% child_L - elseif( Point(tree% axis) .gt. tree% SplittingPlane ) then - tree => tree% child_R - end if + if( RIGHTCHILD ) then + if( Point(tree% axis) .lt. tree% SplittingPlane ) then !lt + tree => tree% child_L + elseif( Point(tree% axis) .ge. tree% SplittingPlane ) then + tree => tree% child_R + end if + else + if( Point(tree% axis) .le. tree% SplittingPlane ) then !lt + tree => tree% child_L + elseif( Point(tree% axis) .gt. tree% SplittingPlane ) then + tree => tree% child_R + end if + endif if( tree% isLast ) return end do end subroutine KDtree_FindLeaf - recursive subroutine KD_treeDestruct( this ) + recursive subroutine KD_treeDestruct( this, isChild ) implicit none - !-arguments---------------------------------- + !-arguments----------------------------- class(KDtree), intent(inout) :: this - !-local-variables---------------------------- - integer :: i + logical, intent(in) :: isChild + !-local-variables----------------------- + integer :: i if( allocated(this% ObjectsList) ) then - do i = 1, this% NumOfObjs - deallocate(this% ObjectsList(i)% vertices) - end do + if( this% which_KDtree .ne. POINTS_KDTREE ) then + do i = 1, this% NumOfObjs + deallocate(this% ObjectsList(i)% vertices) + end do + end if deallocate(this% ObjectsList) end if + if( allocated(this% ObjsIndeces) ) deallocate(this% ObjsIndeces) if( allocated(this% Events) ) deallocate(this% Events) - if( associated(this% child_L) .and. .not. this% isLast ) call this% child_L% destruct - if( associated(this% child_R) .and. .not. this% isLast ) call this% child_R% destruct + if( associated(this% child_L) .and. .not. this% isLast ) call this% child_L% destruct( isChild ) + if( associated(this% child_R) .and. .not. this% isLast ) call this% child_R% destruct( isChild ) - if( associated(this% child_L) ) deallocate(this% child_L) - if( associated(this% child_R) ) deallocate(this% child_R) - - end subroutine KD_treeDestruct + if( .not. isChild ) then + if( associated(this% child_L) ) deallocate(this% child_L) + if( associated(this% child_R) ) deallocate(this% child_R) + if( associated(this% parent) ) nullify(this% parent) + end if + + end subroutine KD_treeDestruct subroutine KD_treeGetArea( tree ) implicit none - + !-arguments--------------------------- class(KDtree), intent(inout) :: tree - + !-local-variables--------------------- real(kind=rp) :: L_x, L_y, L_z L_x = abs(tree% vertices(1,7)-tree% vertices(1,1)) @@ -589,13 +616,12 @@ end subroutine KD_treeGetArea subroutine GetEvents( tree, Events, NumThreads ) use omp_lib implicit none - - type(KDtree), intent(inout) :: tree - type(Event), dimension(:,:), intent(inout) :: Events - integer, intent(out) :: NumThreads - + !-arguments--------------------------------- + type(KDtree), intent(inout) :: tree + type(Event), intent(inout) :: Events(:,:) + integer, intent(out) :: NumThreads + !-local-variables--------------------------- integer :: k - !$omp parallel shared(tree,Events,k) !$omp single #ifdef _OPENMP @@ -611,20 +637,18 @@ subroutine GetEvents( tree, Events, NumThreads ) end do !$omp end single !$omp end parallel - - end subroutine GetEvents + end subroutine GetEvents subroutine GetPointsEvents( tree, Events, PointList, NumThreads ) use omp_lib implicit none - - type(KDtree), intent(inout) :: tree - type(Event), dimension(:,:), intent(inout) :: Events - type(point_type), dimension(:), intent(in) :: PointList - integer, intent(out) :: NumThreads - + !-arguments------------------------------------- + type(KDtree), intent(inout) :: tree + type(Event), intent(inout) :: Events(:,:) + type(point_type), intent(in) :: PointList(:) + integer, intent(out) :: NumThreads + !-local-variables------------------------------- integer :: k - !$omp parallel shared(tree,Events,k,PointList) !$omp single #ifdef _OPENMP @@ -641,54 +665,65 @@ subroutine GetPointsEvents( tree, Events, PointList, NumThreads ) !$omp end single !$omp end parallel - end subroutine GetPointsEvents + end subroutine GetPointsEvents - recursive subroutine KDtree_buildSAH_BreadthFirst( this, Events, ObjsIndx, level, Depth_First ) + recursive subroutine KDtree_buildTRIANGLES_BreadthFirst( this, Events, ObjsIndx, level, Depth_First ) implicit none - - type(KDtree), target, intent(inout) :: this - type(Event), allocatable, intent(inout) :: Events(:,:) - integer, intent(in) :: level - integer, dimension(:), intent(inout) :: ObjsIndx - type(DepthFirst_type), intent(inout) :: Depth_First(:) - - type(KDtree), pointer :: child_L, child_R - type(Event), dimension(:,:), allocatable :: Events_L, Events_R - integer :: j - + !-arguments------------------------------------------------ + type(KDtree), target, intent(inout) :: this + type(Event), allocatable, intent(inout) :: Events(:,:) + integer, intent(in) :: level + integer, intent(inout) :: ObjsIndx(:) + type(DepthFirst_type), intent(inout) :: Depth_First(:) + !-local-variables------------------------------------------ + type(KDtree), pointer :: child_L, child_R + type(Event), allocatable :: Events_L(:,:), Events_R(:,:) + integer :: j + call this% GetArea() BoxIndex = BoxIndex + 1 this% index = BoxIndex - + if( this% level .lt. level .and. this% NumOfObjs .gt. 0 ) then - - call this% EvaluateCost( Events, BREADTHFIRST ) + + if( this% which_KDtree .eq. TRIANGLES_KDTREE_SAH ) then + call this% EvaluateCostSAH( Events, BREADTHFIRST ) + else + call this% EvaluateCostMEDIAN( Events ) + end if if( this% split ) then allocate(this% child_L,this% child_R) - allocate(this% child_L% parent, this% child_R% parent) - - this% child_L% parent => this; this% child_R% parent => this - + child_L => this% child_L child_R => this% child_R + + child_L% parent => this + child_R% parent => this child_L% level = this% level + 1 child_R% level = this% level + 1 this% isLast = .false. + if( this% which_KDtree .eq. TRIANGLES_KDTREE_MEDIAN ) then + child_L% axis = AxisIndex( this% axis ) + child_R% axis = AxisIndex( this% axis ) + endif + call this% BuildChild( child_L, side_L ) call this% BuildChild( child_R, side_R ) child_L% Min_n_of_Objs = this% Min_n_of_Objs child_R% Min_n_of_Objs = this% Min_n_of_Objs - child_L% NumThreads = this% NumThreads - child_R% NumThreads = this% NumThreads + child_L% NumThreads = this% NumThreads + child_R% NumThreads = this% NumThreads + child_L% which_KDtree = this% which_KDtree + child_R% which_KDtree = this% which_KDtree call Event_ClassifyObjs( Events(this% axis,:), this, child_L, child_R, ObjsIndx ) @@ -699,8 +734,8 @@ recursive subroutine KDtree_buildSAH_BreadthFirst( this, Events, ObjsIndx, level deallocate(Events) - call KDtree_buildSAH_BreadthFirst( child_L, Events_L, ObjsIndx, level, Depth_First ) - call KDtree_buildSAH_BreadthFirst( child_R, Events_R, ObjsIndx, level, Depth_First ) + call KDtree_buildTRIANGLES_BreadthFirst( child_L, Events_L, ObjsIndx, level, Depth_First ) + call KDtree_buildTRIANGLES_BreadthFirst( child_R, Events_R, ObjsIndx, level, Depth_First ) else this% isLast = .false. @@ -708,7 +743,7 @@ recursive subroutine KDtree_buildSAH_BreadthFirst( this, Events, ObjsIndx, level do j = 1, size(Depth_First) if( .not. Depth_First(j)% active ) then Depth_First(j)% taskTree => this - allocate(Depth_First(j)% taskEvents(NDIM,2*this% NumOfObjs)) + allocate(Depth_First(j)% taskEvents(NDIM,2*this% NumOfObjs+1)) Depth_First(j)% taskEvents = Events Depth_First(j)% active = .true. deallocate(Events) @@ -731,21 +766,21 @@ recursive subroutine KDtree_buildSAH_BreadthFirst( this, Events, ObjsIndx, level end do end if - if( allocated(events) ) deallocate( events ) + if( allocated(Events) ) deallocate( Events ) - end subroutine KDtree_buildSAH_BreadthFirst + end subroutine KDtree_buildTRIANGLES_BreadthFirst - recursive subroutine KDtree_buildSAH_DepthFirst( this, Events, ObjsIndx ) - use omp_lib + recursive subroutine KDtree_buildTRIANGLES_DepthFirst( this, Events, ObjsIndx ) + use omp_lib implicit none - - type(KDtree), target, intent(inout) :: this - type(Event), allocatable, intent(inout) :: Events(:,:) - integer, dimension(:), intent(inout) :: ObjsIndx - - type(KDtree), pointer :: child_L, child_R - type(Event), dimension(:,:), allocatable :: Events_L, Events_R + !-arguments---------------------------------------------------------- + type(KDtree), target, intent(inout) :: this + type(Event), allocatable, intent(inout) :: Events(:,:) + integer, intent(inout) :: ObjsIndx(:) + !-local-variables--------------------------------------------------- + type(KDtree), pointer :: child_L, child_R + type(Event), allocatable :: Events_L(:,:), Events_R(:,:) call this% GetArea() @@ -756,30 +791,42 @@ recursive subroutine KDtree_buildSAH_DepthFirst( this, Events, ObjsIndx ) this% index = BoxIndex if( this% level .lt. depth .and. this% NumOfObjs .ge. this% Min_n_of_Objs ) then - - call this% EvaluateCost( Events, DEPTHFIRST ) + + if( this% which_KDtree .eq. TRIANGLES_KDTREE_SAH ) then + call this% EvaluateCostSAH( Events, BREADTHFIRST ) + else + call this% EvaluateCostMEDIAN( Events ) + end if if( this% split ) then allocate(this% child_L,this% child_R) - allocate(this% child_L% parent, this% child_R% parent) - this% child_L% parent => this; this% child_R% parent => this child_L => this% child_L child_R => this% child_R + + child_L% parent => this + child_R% parent => this child_L% level = this% level + 1 child_R% level = this% level + 1 this% isLast = .false. + if( this% which_KDtree .eq. TRIANGLES_KDTREE_MEDIAN ) then + child_L% axis = AxisIndex( this% axis ) + child_R% axis = AxisIndex( this% axis ) + endif + call this% BuildChild( child_L, side_L ) call this% BuildChild( child_R, side_R ) child_L% Min_n_of_Objs = this% Min_n_of_Objs child_R% Min_n_of_Objs = this% Min_n_of_Objs - child_L% NumThreads = this% NumThreads - child_R% NumThreads = this% NumThreads + child_L% NumThreads = this% NumThreads + child_R% NumThreads = this% NumThreads + child_L% which_KDtree = this% which_KDtree + child_R% which_KDtree = this% which_KDtree call Event_ClassifyObjs( Events(this% axis,:), this, child_L, child_R, ObjsIndx ) @@ -789,13 +836,13 @@ recursive subroutine KDtree_buildSAH_DepthFirst( this, Events, ObjsIndx ) call Event_BuildLists( Events, this, child_L, child_R, ObjsIndx, Events_L, Events_R, DEPTHFIRST ) deallocate(Events) - - call KDtree_buildSAH_DepthFirst( child_L, Events_L, ObjsIndx ) - call KDtree_buildSAH_DepthFirst( child_R, Events_R, ObjsIndx ) + + call KDtree_buildTRIANGLES_DepthFirst( child_L, Events_L, ObjsIndx ) + call KDtree_buildTRIANGLES_DepthFirst( child_R, Events_R, ObjsIndx ) else this% isLast = .true. - call this% SaveObjsIndeces( Events ) + call this% SaveObjsIndeces( Events ) deallocate(Events) end if else @@ -804,23 +851,22 @@ recursive subroutine KDtree_buildSAH_DepthFirst( this, Events, ObjsIndx ) call this% SaveObjsIndeces( Events ) deallocate(Events) end if + end if - - if( allocated(events) ) deallocate(events) - end subroutine KDtree_buildSAH_DepthFirst - - + if( allocated(Events) ) deallocate(Events) + + end subroutine KDtree_buildTRIANGLES_DepthFirst subroutine ComputeSplitSurface_L(tree, SplittingPlane, axis, S_L) implicit none - + !-arguments------------------------------------- type(KDtree), intent(in) :: tree real(kind=rp), intent(in) :: SplittingPlane integer, intent(in) :: axis real(kind=rp), intent(out) :: S_L - + !-local-variables------------------------------- real(kind=rp) :: L_x, L_y, L_z select case( axis ) @@ -845,12 +891,12 @@ end subroutine ComputeSplitSurface_L subroutine ComputeSplitSurface_R(tree, SplittingPlane, axis, S_R) implicit none - + !-arguments------------------------------------ type(KDtree), intent(in) :: tree real(kind=rp), intent(in) :: SplittingPlane integer, intent(in) :: axis real(kind=rp), intent(out) :: S_R - + !-local-variables------------------------------ real(kind=rp) :: L_x, L_y, L_z select case( axis ) @@ -875,7 +921,7 @@ end subroutine ComputeSplitSurface_R real(kind=rp) function computeSplittingCost(S, S_L, S_R, N_L, N_R) result(SplittingCost) implicit none - + !-arguments------------------------------ real(kind=rp), intent(in) :: S, S_L, S_R integer, intent(in) :: N_L, N_R @@ -883,14 +929,14 @@ real(kind=rp) function computeSplittingCost(S, S_L, S_R, N_L, N_R) result(Splitt end function computeSplittingCost - subroutine KDtree_EvaluateCost( this, Events, parallelization_type ) + subroutine KDtree_EvaluateCostSAH( this, Events, parallelization_type ) use omp_lib implicit none - + !-arguments---------------------------------------------------------------------------- class(KDtree), intent(inout) :: this type(Event), intent(in) :: Events(:,:) integer, intent(in) :: parallelization_type - + !-local-variables---------------------------------------------------------------------- integer :: i, j, k, l, N_L(NDIM), N_R(NDIM), N_P(NDIM), & BestSide(1), pminus, pplus, pvert, axis real(kind=rp) :: SplittingCost(2), S_L, S_R, SplittingPlane @@ -919,39 +965,47 @@ subroutine KDtree_EvaluateCost( this, Events, parallelization_type ) !$omp task private(i,k,pplus,pminus,pvert,SplittingPlane) firstprivate(taskNum) do k = 1, NDIM pplus = 0; pminus = 0; pvert = 0 + SplittingPlane = Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index + & taskPart(taskNum)% taskPartDim(k)% ChunkDim)% plane i = 1 do while(i .le. taskPart(taskNum)% taskPartDim(k)% ChunkDim) if( Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% eType .lt. 0 ) exit - - do while( i .le. taskPart(taskNum)% taskPartDim(k)% ChunkDim .and. & - ( Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% plane .eq. SplittingPlane .or. & - Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% plane .lt. SplittingPlane ) .and. & - Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% eType .eq. END_ ) - pminus = pminus + 1 - i = i + 1 - end do - - do while( i .le. taskPart(taskNum)% taskPartDim(k)% ChunkDim .and. & - (Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% plane .eq. SplittingPlane .or. & - Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% plane .lt. SplittingPlane ) .and. & - Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% eType .eq. PLANAR_ ) - pvert = pvert + 1 - if(Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% plane .eq. SplittingPlane) & - taskPart(taskNum+1)% taskPartDim(k)% N_P = taskPart(taskNum+1)% taskPartDim(k)% N_P + 1 - i = i + 1 - end do - - do while( i .le. taskPart(taskNum)% taskPartDim(k)% ChunkDim .and. & - (Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% plane .eq. SplittingPlane .or. & - Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% plane .lt. SplittingPlane ) .and. & - Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% eType .eq. START_ ) - pplus = pplus + 1 - i = i + 1 - end do + if( i .le. taskPart(taskNum)% taskPartDim(k)% ChunkDim ) then + do while(( Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% plane .eq. SplittingPlane .or. & + Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% plane .lt. SplittingPlane ) .and. & + Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% eType .eq. END_ ) + pminus = pminus + 1 + i = i + 1 + if( i .gt. taskPart(taskNum)% taskPartDim(k)% ChunkDim ) exit + end do + end if + + if( i .le. taskPart(taskNum)% taskPartDim(k)% ChunkDim ) then + do while(( Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% plane .eq. SplittingPlane .or. & + Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% plane .lt. SplittingPlane ) .and. & + Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% eType .eq. PLANAR_ ) + pvert = pvert + 1 + if(Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% plane .eq. SplittingPlane) & + taskPart(taskNum+1)% taskPartDim(k)% N_P = taskPart(taskNum+1)% taskPartDim(k)% N_P + 1 + i = i + 1 + if( i .gt. taskPart(taskNum)% taskPartDim(k)% ChunkDim ) exit + end do + end if + + if( i .le. taskPart(taskNum)% taskPartDim(k)% ChunkDim ) then + do while(( Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% plane .eq. SplittingPlane .or. & + Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% plane .lt. SplittingPlane ) .and. & + Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% eType .eq. START_ ) + pplus = pplus + 1 + i = i + 1 + if( i .gt. taskPart(taskNum)% taskPartDim(k)% ChunkDim ) exit + end do + endif + end do + taskPart(taskNum+1)% taskPartDim(k)% N_R = taskPart(taskNum+1)% taskPartDim(k)% N_R - pminus - pvert taskPart(taskNum+1)% taskPartDim(k)% N_L = taskPart(taskNum+1)% taskPartDim(k)% N_L + pplus + pvert @@ -984,30 +1038,37 @@ subroutine KDtree_EvaluateCost( this, Events, parallelization_type ) i = 1 do while ( i .le. taskPart(taskNum)% taskPartDim(k)% ChunkDim ) pplus = 0; pminus = 0; pvert = 0 + SplittingPlane = Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% plane if( Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% eType .lt. 0 ) exit - - do while( i .le. taskPart(taskNum)% taskPartDim(k)% ChunkDim .and. & - Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% plane .eq. SplittingPlane .and. & - Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% eType .eq. END_ ) - pminus = pminus + 1 - i = i + 1 - end do - - do while( i .le. taskPart(taskNum)% taskPartDim(k)% ChunkDim .and. & - Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% plane .eq. SplittingPlane .and. & - Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% eType .eq. PLANAR_ ) - pvert = pvert + 1 - i = i + 1 - end do + + if( i .le. taskPart(taskNum)% taskPartDim(k)% ChunkDim ) then + do while( Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% plane .eq. SplittingPlane .and. & + Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% eType .eq. END_ ) + pminus = pminus + 1 + i = i + 1 + if( i .gt. taskPart(taskNum)% taskPartDim(k)% ChunkDim ) exit + end do + end if + + if( i .le. taskPart(taskNum)% taskPartDim(k)% ChunkDim ) then + do while( Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% plane .eq. SplittingPlane .and. & + Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% eType .eq. PLANAR_ ) + pvert = pvert + 1 + i = i + 1 + if( i .gt. taskPart(taskNum)% taskPartDim(k)% ChunkDim ) exit + end do + end if - do while( i .le. taskPart(taskNum)% taskPartDim(k)% ChunkDim .and. & - Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% plane .eq. SplittingPlane .and. & - Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% eType .eq. START_ ) - pplus = pplus + 1 - i = i + 1 - end do + if( i .le. taskPart(taskNum)% taskPartDim(k)% ChunkDim ) then + do while( Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% plane .eq. SplittingPlane .and. & + Events(k,taskPart(taskNum)% taskPartDim(k)% Starting_index+i)% eType .eq. START_ ) + pplus = pplus + 1 + i = i + 1 + if( i .gt. taskPart(taskNum)% taskPartDim(k)% ChunkDim ) exit + end do + end if N_R(k) = N_R(k) - pminus - pvert @@ -1066,23 +1127,29 @@ subroutine KDtree_EvaluateCost( this, Events, parallelization_type ) if( Events(k,i)% eType .lt. 0 ) exit - do while( i .le. this% NumOfEvents(k) .and. & - Events(k,i)% plane .eq. SplittingPlane .and. Events(k,i)% eType .eq. END_ ) - pminus = pminus + 1 - i = i + 1 - end do + if( i .le. this% NumOfEvents(k) ) then + do while( Events(k,i)% plane .eq. SplittingPlane .and. Events(k,i)% eType .eq. END_ ) + pminus = pminus + 1 + i = i + 1 + if( i .gt. this% NumOfEvents(k) ) exit + end do + end if - do while( i .le. this% NumOfEvents(k) .and. & - Events(k,i)% plane .eq. SplittingPlane .and. Events(k,i)% eType .eq. PLANAR_ ) - pvert = pvert + 1 - i = i + 1 - end do - - do while( i .le. this% NumOfEvents(k) .and. & - Events(k,i)% plane .eq. SplittingPlane .and. Events(k,i)% eType .eq. START_ ) - pplus = pplus + 1 - i = i + 1 - end do + if( i .le. this% NumOfEvents(k) ) then + do while( Events(k,i)% plane .eq. SplittingPlane .and. Events(k,i)% eType .eq. PLANAR_ ) + pvert = pvert + 1 + i = i + 1 + if( i .gt. this% NumOfEvents(k) ) exit + end do + end if + + if( i .le. this% NumOfEvents(k) ) then + do while( Events(k,i)% plane .eq. SplittingPlane .and. Events(k,i)% eType .eq. START_ ) + pplus = pplus + 1 + i = i + 1 + if( i .gt. this% NumOfEvents(k) ) exit + end do + end if N_R(k) = N_R(k) - pminus - pvert @@ -1107,19 +1174,31 @@ subroutine KDtree_EvaluateCost( this, Events, parallelization_type ) end do end do - end select + end select + + end subroutine KDtree_EvaluateCostSAH + + subroutine KDtree_EvaluateCostMEDIAN( this, Events ) + use omp_lib + implicit none + !-arguments---------------------------------- + class(KDtree), intent(inout) :: this + type(Event), intent(in) :: Events(:,:) + + this% SplittingPlane = sum(Events(this% axis,:)% median)/this% NumOfEvents(this% axis) + this% split = .true. - end subroutine KDtree_EvaluateCost + end subroutine KDtree_EvaluateCostMEDIAN subroutine Event_ClassifyObjs( this, tree, child_L, child_R, ObjsIndx ) implicit none - - type(Event), dimension(:), intent(in) :: this - type(KDtree), intent(inout) :: tree - type(KDtree), intent(inout) :: child_L, child_R - integer, dimension(:), intent(inout) :: ObjsIndx - + !-arguments---------------------------------- + type(Event), intent(in) :: this(:) + type(KDtree), intent(inout) :: tree + type(KDtree), intent(inout) :: child_L, child_R + integer, intent(inout) :: ObjsIndx(:) + !-local-variables---------------------------------- integer :: i, N_B, N_L, N_R ObjsIndx = BOTH @@ -1154,16 +1233,16 @@ subroutine Event_ClassifyObjs( this, tree, child_L, child_R, ObjsIndx ) child_L% NumOfObjs = N_B+N_L child_R% NumOfObjs = N_B+N_R - end subroutine Event_ClassifyObjs + end subroutine Event_ClassifyObjs subroutine KDtree_BuildChild( this, child, side ) implicit none - + !-arguments---------------------------- class(KDtree), intent(inout) :: this type(KDtree), intent(inout) :: child integer, intent(in) :: side - + !-local-variables---------------------- integer :: i child% vertices = this% vertices @@ -1189,14 +1268,14 @@ end subroutine KDtree_BuildChild subroutine Event_BuildLists( this, tree, child_L, child_R, ObjsIndx, Events_L, Events_R, parallelization_type ) use omp_lib implicit none - - type(Event), dimension(:,:), intent(in) :: this - type(KDtree), intent(in) :: tree - type(KDtree), intent(inout) :: child_L, child_R - integer, dimension(:), intent(inout) :: ObjsIndx - type(Event), dimension(:,:), intent(inout) :: Events_L, Events_R - integer, intent(in) :: parallelization_type - + !-arguments--------------------------------------------------------------------------------- + type(Event), intent(in) :: this(:,:) + type(KDtree), intent(in) :: tree + type(KDtree), intent(inout) :: child_L, child_R + integer, intent(inout) :: ObjsIndx(:) + type(Event), intent(inout) :: Events_L(:,:), Events_R(:,:) + integer, intent(in) :: parallelization_type + !-local-variables--------------------------------------------------------------------------- type(taskPart_type), allocatable :: taskPart(:) integer :: i, k, B, L, R, j, level, index, taskNum integer :: index_L, index_R, N_Events_L(NDIM), N_Events_R(NDIM) @@ -1316,10 +1395,11 @@ end subroutine Event_BuildLists subroutine KDtree_SaveObjsIndeces( this, Events ) implicit none - + !-arguments---------------------------------- class(KDtree), intent(inout) :: this type(Event), intent(in) :: Events(:,:) - integer :: i, k + !-local-variables---------------------------- + integer :: i, k allocate(this% ObjsIndeces(this% NumOfObjs)) @@ -1328,7 +1408,7 @@ subroutine KDtree_SaveObjsIndeces( this, Events ) do i = 1, this% NumOfEvents(1) if( Events(1,i)% eType .eq. START_ .or. & Events(1,i)% eType .eq. PLANAR_ ) then - this% ObjsIndeces(k) = Events(1,i)% index + this% ObjsIndeces(k) = Events(1,i)% index k = k + 1 if( k .gt. this% NumOfObjs ) exit end if @@ -1339,12 +1419,12 @@ end subroutine KDtree_SaveObjsIndeces subroutine Event_Construct( this, ObjectsList, tree, axis ) implicit none - - type(Event), dimension(:), intent(inout) :: this - type(object_type), dimension(:), intent(in) :: ObjectsList - type(KDtree), intent(inout) :: tree - integer, intent(in) :: axis - + !-arguments------------------------------------------ + type(Event), intent(inout) :: this(:) + type(object_type), intent(in) :: ObjectsList(:) + type(KDtree), intent(inout) :: tree + integer, intent(in) :: axis + !-local-variables------------------------------------ integer :: i, j, k, shift tree% NumOfEvents(axis) = 0 @@ -1367,26 +1447,27 @@ subroutine Event_Construct( this, ObjectsList, tree, axis ) this(i+tree% NumOfObjs)% eType = END_ tree% NumOfEvents(axis) = tree% NumOfEvents(axis) + 2 end if + this(i)% median = sum(ObjectsList(i)% vertices(:)% coords(axis))/3.0_RP + this(i+tree% NumOfObjs)% median = this(i)% median end do end subroutine Event_Construct - !////////////////// SUBROUTINES FOR KD TREE made of points /////////////////////// recursive subroutine KDtree_buildPoints_BreadthFirst( this, Events, ObjsIndx, level, Depth_First ) implicit none - - type(KDtree), target, intent(inout) :: this - type(Event), allocatable, intent(inout) :: Events(:,:) - integer, intent(in) :: level - integer, dimension(:), intent(inout) :: ObjsIndx - type(DepthFirst_type), intent(inout) :: Depth_First(:) - - type(KDtree), pointer :: child_L, child_R - type(Event), dimension(:,:), allocatable :: Events_L, Events_R - integer :: j + !-arguments--------------------------------------------------- + type(KDtree), target, intent(inout) :: this + type(Event), allocatable, intent(inout) :: Events(:,:) + integer, intent(in) :: level + integer, intent(inout) :: ObjsIndx(:) + type(DepthFirst_type), intent(inout) :: Depth_First(:) + !-local-variables--------------------------------------------- + type(KDtree), pointer :: child_L, child_R + type(Event), allocatable :: Events_L(:,:), Events_R(:,:) + integer :: j BoxIndex = BoxIndex + 1 @@ -1407,9 +1488,6 @@ recursive subroutine KDtree_buildPoints_BreadthFirst( this, Events, ObjsIndx, le this% SplittingPlane = Events(this% axis,this% HalfEvents)% plane allocate(this% child_L,this% child_R) - allocate(this% child_L% parent, this% child_R% parent) - - this% child_L% parent => this; this% child_R% parent => this child_L => this% child_L child_R => this% child_R @@ -1462,15 +1540,15 @@ recursive subroutine KDtree_buildPoints_BreadthFirst( this, Events, ObjsIndx, le end subroutine KDtree_buildPoints_BreadthFirst recursive subroutine KDtree_buildPoints_DepthFirst( this, Events, ObjsIndx ) - use omp_lib + use omp_lib implicit none - - type(KDtree), target, intent(inout) :: this - type(Event), allocatable, intent(inout) :: Events(:,:) - integer, dimension(:), intent(inout) :: ObjsIndx - - type(KDtree), pointer :: child_L, child_R - type(Event), dimension(:,:), allocatable :: Events_L, Events_R + !-arguments------------------------------------------------ + type(KDtree), target, intent(inout) :: this + type(Event), allocatable, intent(inout) :: Events(:,:) + integer, intent(inout) :: ObjsIndx(:) + !-local-variables------------------------------------------ + type(KDtree), pointer :: child_L, child_R + type(Event), allocatable :: Events_L(:,:), Events_R(:,:) !$omp critical BoxIndex = BoxIndex + 1 @@ -1478,7 +1556,7 @@ recursive subroutine KDtree_buildPoints_DepthFirst( this, Events, ObjsIndx ) this% index = BoxIndex this% NumOfEvents(:) = this% NumOfObjs - + if( this% level .lt. depth .and. this% NumOfObjs .ge. this% Min_n_of_Objs ) then if( mod(this% NumOfObjs,2) .eq. 0 ) then @@ -1493,8 +1571,6 @@ recursive subroutine KDtree_buildPoints_DepthFirst( this, Events, ObjsIndx ) this% SplittingPlane = Events(this% axis,this% HalfEvents)% plane allocate(this% child_L,this% child_R) - allocate(this% child_L% parent, this% child_R% parent) - this% child_L% parent => this; this% child_R% parent => this child_L => this% child_L child_R => this% child_R @@ -1543,10 +1619,11 @@ end subroutine KDtree_buildPoints_DepthFirst subroutine KDtree_SavePointsIndeces( this, Events ) implicit none - + !-arguments---------------------------------- class(KDtree), intent(inout) :: this type(Event), intent(in) :: Events(:,:) - integer :: i, k + !-local-variables---------------------------- + integer :: i, k allocate(this% ObjsIndeces(this% NumOfObjs)) @@ -1557,15 +1634,14 @@ subroutine KDtree_SavePointsIndeces( this, Events ) end subroutine KDtree_SavePointsIndeces subroutine Points_Event_ClassifyObjs( this, tree, child_L, child_R, ObjsIndx ) - - use omp_lib + use omp_lib implicit none - - type(Event), dimension(:), intent(in) :: this - type(KDtree), intent(inout) :: tree - type(KDtree), intent(inout) :: child_L, child_R - integer, dimension(:), intent(inout) :: ObjsIndx - + !-arguments---------------------------------------- + type(Event), intent(in) :: this(:) + type(KDtree), intent(inout) :: tree + type(KDtree), intent(inout) :: child_L, child_R + integer, intent(inout) :: ObjsIndx(:) + !-local-variables---------------------------------- integer :: i, N_B, N_L, N_R N_L = 0; N_R = 0; N_B = 0 @@ -1592,17 +1668,17 @@ subroutine Points_Event_ClassifyObjs( this, tree, child_L, child_R, ObjsIndx ) child_L% NumOfObjs = N_L + N_B child_R% NumOfObjs = N_R + N_B - end subroutine Points_Event_ClassifyObjs + end subroutine Points_Event_ClassifyObjs subroutine Points_Event_construct(this, tree, axis, PointList) use MPI_IBMUtilities implicit none - - type(Event), dimension(:), intent(inout) :: this - type(KDtree), intent(inout) :: tree - integer, intent(in) :: axis - type(point_type), dimension(:), intent(in) :: PointList - + !-arguments-------------------------------------- + type(Event), intent(inout) :: this(:) + type(KDtree), intent(inout) :: tree + integer, intent(in) :: axis + type(point_type), intent(in) :: PointList(:) + !-local-varibales-------------------------------- integer :: i tree% NumOfEvents = tree% NumOfObjs @@ -1620,12 +1696,12 @@ end subroutine Points_Event_construct recursive subroutine QsortEvents( Events, startIdx, endIdx ) implicit none - !-arguments------------------------------------------------- - type(Event), dimension(:), intent(inout) :: Events - integer, intent(in) :: startIdx, endIdx - + !-arguments------------------------------------- + type(Event), intent(inout) :: Events(:) + integer, intent(in) :: startIdx, endIdx + !-local-variables------------------------------- type(Event) :: pivot - integer :: left, right, mid + integer :: left, right, mid if( startIdx .gt. endIdx ) return @@ -1656,10 +1732,10 @@ end subroutine QsortEvents subroutine swapEvents( EventA, EventB ) - implicit none - + implicit none + !-arguments------------------------------------ type(Event), intent(inout) :: EventA, EventB - + !-local-variables------------------------------ type(Event) :: temp temp = EventA @@ -1671,7 +1747,7 @@ end subroutine swapEvents logical function EventIsLess( EventA, EventB ) result( IsLess ) implicit none - + !-arguments---------------------------------- type(Event), intent(in) :: EventA, EventB if( EventA% plane .eq. EventB% plane ) then @@ -1691,15 +1767,13 @@ end function EventIsLess subroutine constrct_taskPart( taskPart, TotalChunk, NumOfThreads ) implicit none - + !-arguments---------------------------------------------------------- type(taskPart_type), allocatable, intent(inout) :: taskPart(:) integer, intent(in) :: NumOfThreads - integer, dimension(NDIM), intent(in) :: TotalChunk - - integer, dimension(NDIM,NumOfThreads) :: ChunkDim - integer :: i, k - - + integer, intent(in) :: TotalChunk(NDIM) + !-local-variables---------------------------------------------------- + integer :: ChunkDim(NDIM,NumOfThreads), i, k + ChunkDim = ChunkPartition( TotalChunk, NumOfThreads ) if( allocated(taskPart) ) deallocate(taskPart) @@ -1722,11 +1796,11 @@ end subroutine constrct_taskPart function ChunkPartition( TotalChunk, NumOfThreads ) result(ChunkDim) implicit none - - integer, intent(in) :: NumOfThreads - integer, dimension(NDIM), intent(in) :: TotalChunk - integer, dimension(NDIM,NumOfThreads) :: ChunkDim - + !-arguments----------------------------------------- + integer, intent(in) :: NumOfThreads + integer, intent(in) :: TotalChunk(NDIM) + integer :: ChunkDim(NDIM,NumOfThreads) + !-local-variables-------------------------------------- integer :: Part, i, k do k = 1, NDIM @@ -1742,4 +1816,4 @@ function ChunkPartition( TotalChunk, NumOfThreads ) result(ChunkDim) end function ChunkPartition -end module KDClass +end module KDClass \ No newline at end of file diff --git a/Solver/src/libs/mesh/MPI_IBMUtilities.f90 b/Solver/src/libs/mesh/MPI_IBMUtilities.f90 index 8ddc4b7f7..456e40888 100644 --- a/Solver/src/libs/mesh/MPI_IBMUtilities.f90 +++ b/Solver/src/libs/mesh/MPI_IBMUtilities.f90 @@ -1,4 +1,3 @@ - #include "Includes.h" module MPI_IBMUtilities @@ -11,490 +10,179 @@ module MPI_IBMUtilities use mpi #endif -! amximum 9 points after polygon's been split - -!~ ----> axis -!~ | | -!~ plane1 plane2 - implicit none private - public :: MPI_KDtree_type, KDtree_partition_type - public :: MPI_KDtree_buildPartition, MPI_KDtree_destroy, recvSTLPartition, SendSTLPartitions - public :: MPI_M_Points_type, MPI_Pointpartition, MPI_Pointpartition_destroy - public :: RootSendPointMaskPartition, MaskCandidates, RootRecvrecvPointMaskPartition - public :: sendPointMaskPartition, RecvPointMaskPartition - public :: RootRecvPointMask, RootSendPointMask - public :: recvPointMask, SendPointMask - public :: RootrecvBandPoint, RootSendBandPoint, MPI_BandPointpartition - public :: recvBandPointPartition, sendBandPointPartition - public :: recvGeom, sendGeom, recvIP_NearestPoints, sendIP_NearestPoints - - integer, parameter :: ON_PLANE = 0, IN_FRONT_PLANE = 1, BEHIND_PLANE = 2 - - - type KDtree_partition_type - - real(kind=RP), dimension(2) :: plane - real(kind=RP), dimension(NDIM,8) :: vertices - integer :: prev, axis, ID - type(STLfile) :: stl - - contains - - procedure :: build => KDtree_partition_build - procedure :: SetVertices => KDtree_partition_SetVertices - procedure :: plot => KDtree_partition_plot - procedure :: plotObjs => KDtree_partition_plotObjs + public :: IBMpoints + public :: recvOBB, sendOBB + public :: SendSTL2Partitions, receiveSTLpartitions + public :: GetBRvertices + public :: getmaskcandidates + public :: RecvPointsListRoot, SendPointsList2Root + public :: RecvPointsListPartitions, SendPointsList2partitions + public :: recvPointsMaskRoot, sendPointsMask2Root + public :: recvPointsMaskPartitions, sendPointsMask2Partitions + public :: recvNormalsRoot, sendNormals2Root + public :: recvDistancesANDNormalspartitions, sendDistanceANDNormals2partitions + public :: recvScalarPlotRoot, sendScalarPlotRoot + public :: recvVectorPlotRoot, sendVectorPlotRoot + + type IBMpoints + + type(point_type), allocatable :: x(:) + real(kind=RP), allocatable :: Q(:,:), U_x(:,:), U_y(:,:), U_z(:,:) + integer :: LocNumOfObjs, NumOfObjs + + end type + + type(IBMpoints), public :: Mask - end type KDtree_partition_type - - type MPI_KDtree_type - - type(KDtree_partition_type), dimension(:), allocatable :: partition - real(kind=RP) :: axisLength - integer :: axis - - contains - - procedure :: build => MPI_KDtree_build - procedure :: SplittingPlanes => MPI_KDtree_SplittingPlanes - procedure :: checkObj => MPI_KDtree_checkObj - procedure :: STL_partition => MPI_KDtree_STL_partition - - end type MPI_KDtree_type - - - type MPI_M_Points_type - - type(point_type), dimension(:), allocatable :: x - integer, dimension(:), allocatable :: buffer - integer :: NumOfObjs, & - LocNumOfObjs, & - NumOfF_Points - - contains - - procedure :: destroy => MPI_M_Points_type_destroy - - end type MPI_M_Points_type - - type(MPI_KDtree_type), public :: MPI_KDtree_all - type(KDtree_partition_type), public :: MPI_KDtreePartition - - type(MPI_M_Points_type), public :: MPI_M_Points_ALL - type(MPI_M_Points_type), public :: MPI_M_PointsPartition - - type(MPI_M_Points_type), public :: BandPoints_ALL - contains - subroutine MPI_BandPointpartition(NumOfObjs, BandPoints) - + subroutine recvOBB( STLNum ) + use MPI_Process_Info implicit none - !-arguments----------------------------------------- - integer, intent(in) :: NumOfObjs - type(PointLinkedList), intent(inout) :: BandPoints - !-local-variables----------------------------------- - type(point_type), pointer :: p - integer :: i - - allocate(BandPoints_ALL% buffer(MPI_Process% nProcs)) - allocate(BandPoints_ALL% x(NumOfObjs)) + !-arguments----------------------------------------------------------------- + integer, intent(in) :: STLNum +#ifdef _HAS_MPI_ + !-local-variables----------------------------------------------------------- + real(kind=RP) :: vertex_x(8), vertex_y(8), vertex_z(8), & + angle, center(2), CloudCenter(NDIM), & + R1(NDIM), R2(NDIM), R3(NDIM), Length, & + Width, nMax, nMin + integer :: ierr, recv_req(13), array_of_statuses(MPI_STATUS_SIZE,13) - BandPoints_ALL% buffer = 0 - BandPoints_ALL% NumOfObjs = NumOfObjs - - BandPoints_ALL% buffer(1) = BandPoints% NumOfPoints + if( MPI_Process% isRoot ) return - if( MPI_Process% isRoot ) then - p => BandPoints% head - do i = 1, BandPoints% NumOfPoints - BandPoints_ALL% x(i)% index = p% index - BandPoints_ALL% x(i)% coords(1) = p% coords(1) - BandPoints_ALL% x(i)% coords(2) = p% coords(2) - BandPoints_ALL% x(i)% coords(3) = p% coords(3) - BandPoints_ALL% x(i)% local_Position(1) = p% local_Position(1) - BandPoints_ALL% x(i)% local_Position(2) = p% local_Position(2) - BandPoints_ALL% x(i)% local_Position(3) = p% local_Position(3) - BandPoints_ALL% x(i)% element_index = p% element_index - BandPoints_ALL% x(i)% partition = p% partition - p => p% next - end do - end if - - end subroutine MPI_BandPointpartition - - subroutine MPI_Pointpartition(NumOfObjs) - - implicit none - !-arguments----------------------- - integer, intent(in) :: NumOfObjs - - MPI_M_Points_ALL% NumOfObjs = NumOfObjs - - allocate(MPI_M_Points_ALL% buffer(MPI_Process% nProcs)) - allocate(MPI_M_Points_ALL% x(NumOfObjs)) - - MPI_M_Points_ALL% buffer = 0 - - MPI_M_Points_ALL% buffer(1) = MPI_M_PointsPartition% LocNumOfObjs - MPI_M_Points_ALL% x(:)% isInsideBody = .false. - - if( MPI_Process% isRoot ) then - MPI_M_Points_ALL% x(1:MPI_M_PointsPartition% LocNumOfObjs) = & - MPI_M_PointsPartition% x(1:MPI_M_PointsPartition% LocNumOfObjs) - end if - - end subroutine MPI_Pointpartition - - - - subroutine MPI_Pointpartition_destroy() - - implicit none - - deallocate(BandPoints_ALL% buffer) - deallocate(BandPoints_ALL% x) - - end subroutine MPI_Pointpartition_destroy - - - - - subroutine MPI_KDtree_buildPartition( stl ) - - implicit none - !-arguments--------------------------- - type(STLfile), intent(inout) :: stl - !-local-variables--------------------- - integer :: i - - if( MPI_Process% doMPIRootAction ) then -#ifdef _HAS_MPI_ - call MPI_KDtree_all% build( stl% body ) - call MPI_KDtree_all% SplittingPlanes( stl% body ) - call MPI_KDtree_all% STL_partition( stl% ObjectsList ) -#endif - elseif( MPI_Process% nProcs .eq. 1 ) then - MPI_KDtreePartition% stl = stl - MPI_KDtreePartition% vertices = OBB(stl% body)% LocVertices - end if - - if( MPI_Process% doMPIRootAction ) then - do i = 1, MPI_Process% nProcs - call MPI_KDtree_ALL% partition(i)% stl% DescribePartitions() - end do - end if - - end subroutine MPI_KDtree_buildPartition - - subroutine MPI_KDtree_build( this, STLNum ) - use MPI_Process_Info - implicit none - !-arguments--------------------------------------- - class(MPI_KDtree_type), intent(inout) :: this - integer, intent(in) :: STLNum - !-local-variables--------------------------------- - real(kind=RP), dimension(NDIM) :: axis - integer, dimension(1) :: maxvec - integer :: i - - allocate(this% partition(MPI_Process% nProcs)) - - axis = (/ OBB(STLNum)% MBR% Length,OBB(STLNum)% MBR% Width,abs(OBB(STLNum)% nMax) + abs(OBB(STLNum)% nMin) /) + call mpi_irecv( vertex_x, 8, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(1), ierr ) - maxvec = maxloc( axis ) + call mpi_irecv( vertex_y, 8, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(2), ierr ) - this% axis = maxvec(1) - this% axisLength = axis(this% axis) + call mpi_irecv( vertex_z, 8, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(3), ierr ) - do i = 1, MPI_Process% nProcs - this% partition(i)% axis = this% axis - end do - - end subroutine MPI_KDtree_build - - subroutine KDtree_partition_build( this, rank ) - - implicit none - !-arguments------------------------------------------- - class(KDtree_partition_type), intent(inout) :: this - integer, intent(in) :: rank - - this% plane = 0.0_RP - this% vertices = 0.0_RP - this% prev = 0 - this% axis = 0 - this% ID = rank - - safedeallocate(this% stl% ObjectsList) - - end subroutine KDtree_partition_build - - subroutine MPI_KDtree_destroy() - use MPI_Process_Info - implicit none - !-local-varaibles----------------------------- - integer :: i + call mpi_irecv( angle, 1, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(4), ierr ) - if( MPI_Process% doMPIRootAction ) then -#ifdef _HAS_MPI_ - do i = 1, size(MPI_KDtree_all% partition) - call MPI_KDtree_all% partition(i)% stl% destroy() - end do - deallocate(MPI_KDtree_all% partition) - MPI_KDtree_all% axis = 0 - MPI_KDtree_all% axisLength = 0.0_RP -#endif - end if + call mpi_irecv( center, 2, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(5), ierr ) - call MPI_KDtreePartition% stl% destroy() - MPI_KDtreePartition% plane = 0.0_RP - MPI_KDtreePartition% prev = 0 - MPI_KDtreePartition% axis = 0 - MPI_KDtreePartition% ID = 0 - - end subroutine MPI_KDtree_destroy - - - subroutine KDtree_partition_plot( this ) - use MPI_Process_Info - implicit none - !-arguments----------------------------------------- - class(KDtree_partition_type), intent(inout) :: this - !-local-variables----------------------------------- - real(kind=RP), dimension(NDIM) :: x_g - character(len=LINE_LENGTH) :: filename, myString - integer :: i, j, funit + call mpi_irecv( CloudCenter, NDIM, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(6), ierr ) - funit = UnusedUnit() + call mpi_irecv( R1, NDIM, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(7), ierr ) - write(myString,'(i100)') MPI_Process% rank + call mpi_irecv( R2, NDIM, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(8), ierr ) - filename = 'STL_partition'//trim(adjustl(myString)) - filename = trim(filename) + call mpi_irecv( R3, NDIM, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(9), ierr ) - open(funit,file='IBM/'//trim(filename)//'.tec', status='unknown') - - write(funit,"(a25)") 'TITLE = "Partition Block"' - write(funit,"(a25)") 'VARIABLES = "x", "y", "z"' + call mpi_irecv( Length, 1, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(10), ierr ) - write(funit,"(a69)") 'ZONE NODES=8, ELEMENTS = 6, DATAPACKING=POINT, ZONETYPE=FETETRAHEDRON' - do i = 1, 8 - call OBB(this% stl% body)% ChangeRefFrame( this% vertices(:,i), 'global', x_g ) - write(funit,'(3E13.5)') x_g(1),x_g(2), x_g(3) - end do - - write(funit,'(4i2)') 1, 2, 3, 4 - write(funit,'(4i2)') 1, 5, 8, 4 - write(funit,'(4i2)') 5, 6, 7, 8 - write(funit,'(4i2)') 2, 3, 7, 6 - write(funit,'(4i2)') 4, 8, 7, 3 - write(funit,'(4i2)') 1, 2, 6, 5 - - close(funit) + call mpi_irecv( Width, 1, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(11), ierr ) - end subroutine KDtree_partition_plot - + call mpi_irecv( nMax, 1, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(12), ierr ) + + call mpi_irecv( nMin, 1, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(13), ierr ) + + call mpi_waitall(13, recv_req, array_of_statuses, ierr) + + OBB(STLNum)% LocVertices(1,:) = vertex_x + OBB(STLNum)% LocVertices(2,:) = vertex_y + OBB(STLNum)% LocVertices(3,:) = vertex_z + OBB(STLNum)% MBR% angle = angle + OBB(STLNum)% MBR% center = center + OBB(STLNum)% CloudCenter = CloudCenter + OBB(STLNum)% R(:,1) = R1 + OBB(STLNum)% R(:,2) = R2 + OBB(STLNum)% R(:,3) = R3 + OBB(STLNum)% MBR% Length = Length + OBB(STLNum)% MBR% Width = Width + OBB(STLNum)% nMax = nMax + OBB(STLNum)% nMin = nMin + + OBB(STLNum)% invR(:,1) = OBB(STLNum)% R(1,:) + OBB(STLNum)% invR(:,2) = OBB(STLNum)% R(2,:) + OBB(STLNum)% invR(:,3) = OBB(STLNum)% R(3,:) + + OBB(STLNum)% MBR% t1 = OBB(STLNum)% R(1,:) + OBB(STLNum)% MBR% t2 = OBB(STLNum)% R(2,:) + OBB(STLNum)% MBR% normal = OBB(STLNum)% R(3,:) +#endif + end subroutine recvOBB - subroutine KDtree_partition_plotObjs( this, STLname ) + subroutine sendOBB( STLNum ) use MPI_Process_Info implicit none - !-arguments------------------------------------------ - class(KDtree_partition_type), intent(inout) :: this - character(len=*), intent(in) :: STLname - !-local-variables------------------------------------ - real(kind=RP), dimension(NDIM) :: x_g - character(len=LINE_LENGTH) :: filename, myString - integer :: i, j, funit - - funit = UnusedUnit() - - write(myString,'(i100)') MPI_Process% rank - - if( MPI_Process% nProcs .gt. 1 ) then - filename = trim(STLname)//'_partition'//trim(adjustl(myString)) - filename = trim(filename) - else - filename = trim(STLname) - end if - - open(funit,file='IBM/'//trim(filename)//'.tec', status='unknown') - - write(funit,"(a28)") 'TITLE = "Partition objects"' - write(funit,"(a25)") 'VARIABLES = "x", "y", "z"' + !-arguments---------------------------------------------------------- + integer, intent(in) :: STLNum +#ifdef _HAS_MPI_ + !-local-variables---------------------------------------------------- + real(kind=RP) :: vertex_x(8), vertex_y(8), vertex_z(8), & + angle, center(2), CloudCenter(NDIM), & + R1(NDIM), R2(NDIM), R3(NDIM), Length, & + Width, nMax, nMin + integer, allocatable :: send_req(:,:) + integer :: array_of_statuses(MPI_STATUS_SIZE,13), & + nProcs, ierr + + allocate(send_req(MPI_Process% nProcs-1,13)) + + vertex_x = OBB(STLNum)% LocVertices(1,:) + vertex_y = OBB(STLNum)% LocVertices(2,:) + vertex_z = OBB(STLNum)% LocVertices(3,:) + angle = OBB(STLNum)% MBR% angle + center = OBB(STLNum)% MBR% center + CloudCenter = OBB(STLNum)% CloudCenter + R1 = OBB(STLNum)% R(:,1) + R2 = OBB(STLNum)% R(:,2) + R3 = OBB(STLNum)% R(:,3) + Length = OBB(STLNum)% MBR% Length + Width = OBB(STLNum)% MBR% Width + nMax = OBB(STLNum)% nMax + nMin = OBB(STLNum)% nMin - do i = 1, SIZE(this% stl% ObjectsList) - write(funit,"(a66)") 'ZONE NODES=3, ELEMENTS = 1, DATAPACKING=POINT, ZONETYPE=FETRIANGLE' - do j = 1, this% stl% ObjectsList(i)% NumOfVertices - call OBB(this% stl% body)% ChangeRefFrame( this% stl% ObjectsList(i)% vertices(j)% coords, 'global', x_g ) - write(funit,'(3E13.5)') x_g(1), x_g(2), x_g(3) - end do - - write(funit,'(3i2)') 1, 2, 3 - end do - close(funit) - - end subroutine KDtree_partition_plotObjs + do nProcs = 2, MPI_Process% nProcs - subroutine MPI_KDtree_STL_partition( this, objs ) - use MPI_Process_Info - implicit none - !-arguments-------------------------------------------------------------------- - class(MPI_KDtree_type), intent(inout) :: this - type(Object_type), dimension(:), intent(inout) :: objs - !-local-variables-------------------------------------------------------------- - type(Object_type) :: objTemp, ObjFront, & - ObjBack - type(Object_type), dimension(:), allocatable :: tria - integer, dimension(MPI_Process% nProcs) :: index - integer, dimension(2) :: PARTITION - real(kind=RP), dimension(NDIM) :: plane_normal, plane_point - integer :: i, j, k, n, max_index - - index = 0 - -!$omp parallel shared(this,i,objs,index) -!$omp do schedule(runtime) private(j,PARTITION) - do i = 1, SIZE(objs) + call mpi_isend(vertex_x, 8, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,1), ierr ) - call this% checkObj( maxval(objs(i)% vertices(:)% coords(this% axis)), & - minval(objs(i)% vertices(:)% coords(this% axis)), & - PARTITION ) - - objs(i)% partition(1) = PARTITION(1) - objs(i)% partition(2) = PARTITION(2) - - if( PARTITION(2) - PARTITION(1) .eq. 0 ) then -!$omp critical - index(PARTITION(1)) = index(PARTITION(1)) + 1 -!$omp end critical - elseif( PARTITION(2) - PARTITION(1) .gt. 0 ) then -!$omp critical - do j = 0, PARTITION(2) - PARTITION(1) - index(PARTITION(1)+j) = index(PARTITION(1)+j) + 3 !max number of triagnles is 3 - end do -!$omp end critical - end if + call mpi_isend(vertex_y, 8, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,2), ierr ) - end do -!$omp end do -!$omp end parallel - - do i = 1, MPI_Process% nProcs - allocate(this% partition(i)% stl% ObjectsList(index(i))) - end do + call mpi_isend(vertex_z, 8, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,3), ierr ) - associate( partitions => this% partition ) - - index = 0 - plane_normal = 0.0_RP - plane_normal(this% axis) = 1.0_RP + call mpi_isend(angle, 1, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,4), ierr ) + + call mpi_isend(center, 2, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,5), ierr ) + + call mpi_isend(CloudCenter, NDIM, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,6), ierr ) + + call mpi_isend(R1, NDIM, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,7), ierr ) + + call mpi_isend(R2, NDIM, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,8), ierr ) + + call mpi_isend(R3, NDIM, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,9), ierr ) + + call mpi_isend(Length, 1, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,10), ierr ) + + call mpi_isend(Width, 1, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,11), ierr ) + + call mpi_isend(nMax, 1, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,12), ierr ) + + call mpi_isend(nMin, 1, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,13), ierr ) + + call mpi_waitall(13, send_req(nProcs-1,:), array_of_statuses, ierr) - do i = 1, SIZE(objs) - if( objs(i)% partition(1) - objs(i)% partition(2) .eq. 0 ) then - index(objs(i)% partition(1)) = index(objs(i)% partition(1)) + 1 - partitions(objs(i)% partition(1))% stl% ObjectsList(index(objs(i)% partition(1))) = objs(i) - partitions(objs(i)% partition(1))% stl% ObjectsList(index(objs(i)% partition(1)))% index = index(objs(i)% partition(1)) - else - objTemp = objs(i) - plane_point = 0.0_RP - do j = 0, objs(i)% partition(2) - objs(i)% partition(1) - 1 - plane_point(this% axis) = partitions(objs(i)% partition(1)+j)% plane(2) - call ClipPloy( objTemp, plane_normal, plane_point, ObjFront, ObjBack ) - call Poly2Triangles( ObjBack, tria ) - index(objs(i)% partition(1)+j) = index(objs(i)% partition(1)+j) + 1 - partitions(objs(i)% partition(1)+j)% stl% ObjectsList(index(objs(i)% partition(1)+j)) = ObjBack - partitions(objs(i)% partition(1)+j)% stl% ObjectsList(index(objs(i)% partition(1)+j))% index = index(objs(i)% partition(1)+j) - if( allocated(tria) ) then - do k = 1, size(tria) - index(objs(i)% partition(1)+j) = index(objs(i)% partition(1)+j) + 1 - partitions(objs(i)% partition(1)+j)% stl% ObjectsList(index(objs(i)% partition(1)+j)) = tria(k) - partitions(objs(i)% partition(1)+j)% stl% ObjectsList(index(objs(i)% partition(1)+j))% index = index(objs(i)% partition(1)+j) - end do - deallocate(tria) - end if - objTemp = ObjFront - end do - call Poly2Triangles( ObjFront, tria ) - index(objs(i)% partition(2)) = index(objs(i)% partition(2)) + 1 - partitions(objs(i)% partition(2))% stl% ObjectsList(index(objs(i)% partition(2))) = ObjFront - partitions(objs(i)% partition(2))% stl% ObjectsList(index(objs(i)% partition(2)))% index = index(objs(i)% partition(2)) - if( allocated(tria) ) then - do k = 1, size(tria) - index(objs(i)% partition(2)) = index(objs(i)% partition(2)) + 1 - partitions(objs(i)% partition(2))% stl% ObjectsList(index(objs(i)% partition(2))) = tria(k) - partitions(objs(i)% partition(2))% stl% ObjectsList(index(objs(i)% partition(2)))% index = index(objs(i)% partition(2)) - end do - deallocate(tria) - end if - end if end do - end associate - - do i = 1, MPI_Process% nProcs - this% partition(i)% stl% NumOfObjs = index(i) - this% partition(i)% stl% partition = i - end do - - end subroutine MPI_KDtree_STL_partition - - - subroutine MPI_KDtree_SplittingPlanes( this, STLNum ) - use MPI_Process_Info - implicit none - !-arguments-------------------------------------------------- - class(MPI_KDtree_type), intent(inout) :: this - integer, intent(in) :: STLNum - !-local-variables-------------------------------------------- - real(kind=RP) :: partition, Locpartition, v_max, v_min - integer :: i, j - real(kind=RP) :: eps = 0.001_RP - - do i = 1, MPI_Process% nProcs - do j = 1, 8 - this% partition(i)% vertices(:,j) = OBB(STLNum)% LocVertices(:,j) - end do - end do - - partition = this% axisLength/MPI_Process% nProcs - - v_max = OBB(STLNum)% LocVertices(this% axis,7) - v_min = OBB(STLNum)% LocVertices(this% axis,1) - - this% partition(1)% plane(1) = v_min - this% partition(1)% plane(2) = this% partition(1)% plane(1) + partition - - call this% partition(1)% SetVertices( 1, this% axis, partition ) - - if( MPI_Process% nProcs .eq. 1 ) return + deallocate(send_req) +#endif + end subroutine sendOBB - do i = 2, MPI_Process% nProcs-1 - this% partition(i)% plane(1) = this% partition(i-1)% plane(2) - this% partition(i)% plane(2) = this% partition(i)% plane(1) + partition - call this% partition(i)% SetVertices( i, this% axis, partition ) - end do - - this% partition(MPI_Process% nprocs)% plane(1) = this% partition(MPI_Process% nprocs-1)% plane(2) - this% partition(MPI_Process% nprocs)% plane(2) = v_max - call this% partition(MPI_Process% nprocs)% SetVertices( MPI_Process% nprocs, this% axis, partition ) - - end subroutine MPI_KDtree_SplittingPlanes - - - subroutine KDtree_partition_SetVertices( this, nprocs, axis, Locpartition ) + subroutine GetVertices( vertices, axis, SplittingPlanes ) implicit none !-arguments----------------------------------------------------------- - class(KDtree_partition_type), intent(inout) :: this - real(kind=RP), intent(in) :: Locpartition - integer, intent(in) :: axis, nprocs + real(kind=RP), intent(inout) :: vertices(:,:) + real(kind=RP), intent(in) :: SplittingPlanes(2) + integer, intent(in) :: axis !-local-variables----------------------------------------------------- - integer, dimension(4,2) :: v_indeces + integer :: v_indeces(4,2) if( axis .eq. 1 ) then v_indeces(:,1) = (/1,4,8,5/) @@ -507,504 +195,331 @@ subroutine KDtree_partition_SetVertices( this, nprocs, axis, Locpartition ) v_indeces(:,2) = (/5,6,7,8/) end if - this% vertices(axis,v_indeces(:,2)) = this% vertices(axis,v_indeces(:,1)) + & - (nprocs)*Locpartition - this% vertices(axis,v_indeces(:,1)) = this% vertices(axis,v_indeces(:,1)) + & - (nprocs-1)*Locpartition - - end subroutine KDtree_partition_SetVertices - - - subroutine MPI_KDtree_checkObj( this, coord_max, coord_min, PARTITION ) - use MPI_Process_Info - implicit none - !-arguments----------------------------------------------------------- - class(MPI_KDtree_type), intent(inout) :: this - real(kind=RP), intent(in) :: coord_max, coord_min - integer, dimension(2), intent(out) :: PARTITION - !-local-variables------------------------------------------------------ - integer :: i - - PARTITION = 0 - - do i = 1, MPI_Process% nProcs - if( coord_min .gt. this% partition(i)% plane(1) .and. & - coord_max .lt. this% partition(i)% plane(2) ) then - PARTITION(1) = i; PARTITION(2) = i - exit - elseif( coord_min .lt. this% partition(i)% plane(1) .and. & - coord_max .gt. this% partition(i)% plane(1) ) then -!~ an obj can intersect more the one partition, in this case PARTITION(2)-PARTITION(1) =/ 1 and > 0 - if( PARTITION(1) .eq. 0 ) then - PARTITION(1) = i-1 - end if - PARTITION(2) = i - end if - end do - - end subroutine MPI_KDtree_checkObj - - - subroutine Poly2Triangles( Poly, tria ) + vertices(axis,v_indeces(:,1)) = SplittingPlanes(1) + vertices(axis,v_indeces(:,2)) = SplittingPlanes(2) + end subroutine GetVertices + + subroutine SendSTL2Partitions( rootSTL, STLNum, rootVertices, rootAxis ) implicit none - !-arguments----------------------------------------------------------- - type(object_type), intent(inout) :: Poly - type(object_type), dimension(:), allocatable, intent(out) :: tria - !-local-variables----------------------------------------------------- - real(kind=RP), dimension(NDIM,Poly% NumOfVertices) :: coords - integer :: j, n_vert - - if( Poly% NumOfVertices .eq. 3 ) return - - n_vert = Poly% NumOfVertices - - do j = 1, n_vert - coords(:,j) = Poly% vertices(j)% coords + !-arguments--------------------------------------------------------------------- + type(STLfile), intent(inout) :: rootSTL + integer, intent(in) :: STLNum + real(kind=RP), intent(inout) :: rootVertices(:,:) + integer, intent(inout) :: rootAxis + !-local-variables--------------------------------------------------------------- + integer :: maxvec(1) +#ifdef _HAS_MPI_ + real(kind=RP), allocatable :: locVertices(:,:,:) , Bar(:), coord(:), & + normals_x(:), normals_y(:), normals_z(:), & + vertices_x(:,:), vertices_y(:,:), & + vertices_z(:,:) + real(kind=RP) :: SplittingPlanes(2), kdtreevertices(NDIM,8) + integer :: NumOfObjs, NumOfObjsPP, NumOfObjsPartion, & + start_index, final_index, i, j, & + nProcs, ierr, & + array_of_statuses(MPI_STATUS_SIZE,17) + integer, allocatable :: SortedIndex(:), send_req(:,:) +#endif + maxvec = maxloc((/ OBB(STLNum)% MBR% Length,OBB(STLNum)% MBR% Width,abs(OBB(STLNum)% nMax) + abs(OBB(STLNum)% nMin) /)) + rootAxis = maxvec(1) +#ifdef _HAS_MPI_ + rootSTL% partition = MPI_Process% rank + + NumOfObjs = size(rootSTL% ObjectsList) + + allocate( Bar(NumOfObjs), & + coord(NumOfObjs), & + SortedIndex(NumOfObjs), & + normals_x(NumOfObjs), & + normals_y(NumOfObjs), & + normals_z(NumOfObjs), & + vertices_x(NumOfObjs,3), & + vertices_y(NumOfObjs,3), & + vertices_z(NumOfObjs,3), & + locVertices(8,NDIM,MPI_Process% nProcs), & + send_req(MPI_Process% nProcs-1,17) ) + + do i = 1, NumOfObjs + Bar(i) = 0.0_RP + SortedIndex(i) = rootSTL% ObjectsList(i)% index + do j = 1, size(rootSTL% ObjectsList(i)% vertices) + Bar(i) = Bar(i) + rootSTL% ObjectsList(i)% vertices(j)% coords(rootAxis) + end do + Bar(i) = Bar(i)/size(rootSTL% ObjectsList(i)% vertices) end do +!$omp parallel +!$omp single + call sort( Bar, SortedIndex, coord, coord, coord, 1, NumOfObjs ) +!$omp end single +!$omp end parallel + deallocate(Bar,coord) + + NumOfObjsPP = NumOfObjs/MPI_Process% nProcs + + start_index = 0; final_index = 0 + + do nProcs = 1, MPI_Process% nProcs + start_index = final_index + final_index = start_index + NumOfObjsPP + + if( nProcs .eq. MPI_Process% nProcs ) final_index = NumOfObjs + + SplittingPlanes(1) = huge(1.0_RP) + SplittingPlanes(2) = -huge(1.0_RP) + + do i = 1, (final_index-start_index) + do j = 1, 3 + SplittingPlanes(1) = min(SplittingPlanes(1),rootSTL% ObjectsList(SortedIndex(start_index+i))% vertices(j)% coords(rootAxis)) + SplittingPlanes(2) = max(SplittingPlanes(2),rootSTL% ObjectsList(SortedIndex(start_index+i))% vertices(j)% coords(rootAxis)) + vertices_x(start_index+i,j) = rootSTL% ObjectsList(SortedIndex(start_index+i))% vertices(j)% coords(1) + vertices_y(start_index+i,j) = rootSTL% ObjectsList(SortedIndex(start_index+i))% vertices(j)% coords(2) + vertices_z(start_index+i,j) = rootSTL% ObjectsList(SortedIndex(start_index+i))% vertices(j)% coords(3) + end do + normals_x(start_index+i) = rootSTL% ObjectsList(SortedIndex(start_index+i))% normal(1) + normals_y(start_index+i) = rootSTL% ObjectsList(SortedIndex(start_index+i))% normal(2) + normals_z(start_index+i) = rootSTL% ObjectsList(SortedIndex(start_index+i))% normal(3) + end do + + kdtreevertices = OBB(STLNum)% LocVertices - if( Poly% NumOfVertices .eq. 4 ) then - allocate(tria(1)) - tria(1) = Poly - Poly% NumOfVertices = 3 - tria(1)% NumOfVertices = 3 - deallocate(Poly% vertices, tria(1)% vertices) - allocate(Poly% vertices(3), tria(1)% vertices(3)) - elseif( Poly% NumOfVertices .eq. 5 ) then - allocate(tria(2)) - tria(1) = Poly - tria(2) = Poly - Poly% NumOfVertices = 3 - tria(1)% NumOfVertices = 3 - tria(2)% NumOfVertices = 3 - deallocate(Poly% vertices,tria(1)% vertices,tria(2)% vertices) - allocate(Poly% vertices(3),tria(1)% vertices(3),tria(2)% vertices(3)) - else - print *, 'error in MPI_KDtree, NumOfVertices not recognized', Poly% NumOfVertices - end if - - do j = 1, 3 - Poly% vertices(j)% coords = coords(:,j) - if( j .eq. 3 ) then - tria(1)% vertices(j)% coords = coords(:,1) - else - tria(1)% vertices(j)% coords = coords(:,j+2) - end if - if( size(tria) .eq. 2 ) then - if( j .eq. 3 ) then - tria(2)% vertices(j)% coords = coords(:,1) - else - tria(2)% vertices(j)% coords = coords(:,j+3) - end if - end if - end do - - end subroutine Poly2Triangles - - - - subroutine ClipPloy( obj, plane_normal, plane_point, objFront, objBack ) - - implicit none - !-arguments----------------------------------------------------------------- - type(object_type), intent(in) :: obj - real(kind=rp), dimension(:), intent(in) :: plane_normal, plane_point - type(object_type), intent(out) :: objFront, objBack - !-local-variables----------------------------------------------------------- - real(kind=RP), dimension(NDIM,9) :: PointFront, PointBack - real(kind=RP), dimension(NDIM) :: PointA, PointB, Point_inters - integer :: PointA_Is, PointB_Is, n_front, n_back, i - - n_front = 0; n_back = 0 - - pointA = obj% vertices(obj% NumOfVertices)% coords - - PointA_Is = Point_wrt_Plane( plane_normal, plane_point, pointA ) - - do i = 1, obj% NumOfVertices - PointB = obj% vertices(i)% coords - - PointB_Is = Point_wrt_Plane( plane_normal, plane_point, pointB ) - if( PointB_Is .eq. IN_FRONT_PLANE ) then - if( PointA_Is .eq. BEHIND_PLANE ) then - Point_inters = EdgePlaneIntersection( plane_normal, plane_point, PointA, PointB ) - n_front = n_front + 1 - n_back = n_back + 1 - PointFront(:,n_front) = Point_Inters - PointBack(:,n_back) = Point_Inters - end if - n_front = n_front + 1 - PointFront(:,n_front) = PointB - elseif( PointB_Is .eq. BEHIND_PLANE ) then - if( PointA_Is .eq. IN_FRONT_PLANE ) then - Point_inters = EdgePlaneIntersection( plane_normal, plane_point, PointA, PointB ) - n_front = n_front + 1 - n_back = n_back + 1 - PointFront(:,n_front) = Point_Inters - PointBack(:,n_back) = Point_Inters - elseif( PointA_Is .eq. ON_PLANE ) then - n_back = n_back + 1 - PointBack(:,n_back) = PointA - end if - n_back = n_back + 1 - PointBack(:,n_back) = PointB - else - n_front = n_front + 1 - PointFront(:,n_front) = PointB - if( PointA_Is .eq. BEHIND_PLANE ) then - n_back = n_back + 1 - PointBack(:,n_back) = PointB - end if - end if - PointA = PointB - PointA_Is = PointB_Is + call GetVertices( kdtreevertices, rootAxis, SplittingPlanes ) + + do j = 1, 8 + locVertices(j,:,nProcs) = kdtreevertices(:,j) + end do + + if( rootSTL% show ) call DescribeSTLPartitions(nProcs-1,(final_index-start_index)) + end do - - call objFront% build( PointFront, obj% normal, n_front, obj% index, obj% computeIntegrals ) - call objBack% build( PointBack, obj% normal, n_back, obj% index, obj% computeIntegrals ) - - end subroutine ClipPloy - - - integer function Point_wrt_Plane( plane_normal, plane_point, point ) result( PointIs ) - use MappedGeometryClass - implicit none - !-arguments----------------------------------------------------------------- - real(kind=RP), dimension(:), intent(in) :: plane_normal, plane_point, point - !-local-variables----------------------------------------------------------- - real(kind=RP) :: d - - d = vdot(plane_normal,point) - vdot(plane_normal,plane_point) - - if( AlmostEqual(d,0.0_RP) ) then - PointIs = ON_PLANE - elseif( d > 0.0d0 ) then - PointIs = IN_FRONT_PLANE - elseif( d < 0.0d0 ) then - PointIs = BEHIND_PLANE - end if - - end function Point_wrt_Plane - - function EdgePlaneIntersection( plane_normal, plane_point, PointA, PointB ) result( Point_inters ) - use MappedGeometryClass - implicit none - !-arguments----------------------------------------------------------------- - real(kind=RP), dimension(:), intent(in) :: plane_normal, plane_point, & - PointA, PointB - real(kind=RP), dimension(NDIM) :: Point_inters - !-local-variables----------------------------------------------------------- - real(kind=RP), dimension(NDIM) :: n_AB - real(kind=RP) :: d, t + + start_index = NumOfObjsPP; final_index = NumOfObjsPP + + do nProcs = 2, MPI_Process% nProcs + + start_index = final_index + 1 + final_index = (start_index-1) + NumOfObjsPP + + if( nProcs .eq. MPI_Process% nProcs ) final_index = NumOfObjs + + NumOfObjsPartion = (final_index-start_index) + 1 + + call mpi_isend(NumOfObjsPartion, 1, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,1), ierr ) + + call mpi_wait(send_req(nProcs-1,1),MPI_STATUS_IGNORE,ierr) + + call mpi_isend(normals_x(start_index:final_index), NumOfObjsPartion, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,2), ierr ) + + call mpi_isend(normals_y(start_index:final_index), NumOfObjsPartion, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,3), ierr ) + + call mpi_isend(normals_z(start_index:final_index), NumOfObjsPartion, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,4), ierr ) + + call mpi_isend(vertices_x(start_index:final_index,1), NumOfObjsPartion, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,5), ierr ) + + call mpi_isend(vertices_y(start_index:final_index,1), NumOfObjsPartion, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,6), ierr ) + + call mpi_isend(vertices_z(start_index:final_index,1), NumOfObjsPartion, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,7), ierr ) + + call mpi_isend(vertices_x(start_index:final_index,2), NumOfObjsPartion, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,8), ierr ) + + call mpi_isend(vertices_y(start_index:final_index,2), NumOfObjsPartion, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,9), ierr ) + + call mpi_isend(vertices_z(start_index:final_index,2), NumOfObjsPartion, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,10), ierr ) + + call mpi_isend(vertices_x(start_index:final_index,3), NumOfObjsPartion, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,11), ierr ) + + call mpi_isend(vertices_y(start_index:final_index,3), NumOfObjsPartion, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,12), ierr ) + + call mpi_isend(vertices_z(start_index:final_index,3), NumOfObjsPartion, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,13), ierr ) - n_AB = PointB - PointA - - d = vdot(plane_normal,plane_point) - - t = ( d - vdot(plane_normal,PointA) )/vdot(plane_normal,n_AB) - - if( almostEqual(t,0.0_RP) ) then - Point_inters = PointA - elseif( almostEqual(t,1.0_RP) ) then - Point_inters = PointB - elseif( t .gt. 0.0_RP .and. t .lt. 1.0_RP ) then - Point_inters = PointA + t*n_AB - end if + call mpi_isend(locVertices(:,1,nProcs), 8, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,14), ierr ) - end function EdgePlaneIntersection - - - subroutine recvSTLPartition() - - implicit none - -#ifdef _HAS_MPI_ - !-local-variables------------------------------------------------------------------------------------------- - integer :: ObjsSize, ierr, j, array_of_statuses(MPI_STATUS_SIZE,19), & - i, recv_req(19) - real(kind=RP), dimension(:), allocatable :: normal_x, normal_y, normal_z, COORD - real(kind=RP), dimension(:), allocatable :: COORD_x1, COORD_x2, COORD_x3 - real(kind=RP), dimension(:), allocatable :: COORD_y1, COORD_y2, COORD_y3 - real(kind=RP), dimension(:), allocatable :: COORD_z1, COORD_z2, COORD_z3 - real(kind=RP), dimension(:), allocatable :: vertex1, vertex2, vertex3, vertex4, & - vertex5, vertex6, vertex7, vertex8 - integer, dimension(:), allocatable :: indeces - - if( MPI_Process% isRoot ) return - - ! receive n of objects - call mpi_irecv( ObjsSize, 1, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(1), ierr ) - - call mpi_wait(recv_req(1), MPI_STATUS_IGNORE, ierr) - - MPI_KDtreePartition% stl% NumOfObjs = ObjsSize - - allocate(MPI_KDtreePartition% stl% ObjectsList(ObjsSize)) - - call mpi_irecv( MPI_KDtreePartition% plane, 2, MPI_DOUBLE_PRECISION, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(2), ierr ) - - call mpi_irecv( MPI_KDtreePartition% axis, 1, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(3), ierr ) - - allocate( indeces(ObjsSize), & - normal_x(ObjsSize), & - normal_y(ObjsSize), & - normal_z(ObjsSize), & - COORD_x1(ObjsSize), & - COORD_x2(ObjsSize), & - COORD_x3(ObjsSize), & - COORD_y1(ObjsSize), & - COORD_y2(ObjsSize), & - COORD_y3(ObjsSize), & - COORD_z1(ObjsSize), & - COORD_z2(ObjsSize), & - COORD_z3(ObjsSize), & - vertex1(8), & - vertex2(8), & - vertex3(8) ) - - call mpi_irecv( indeces, ObjsSize, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(4), ierr ) - - call mpi_irecv( normal_x, ObjsSize, MPI_DOUBLE_PRECISION, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(5), ierr ) - - call mpi_irecv( normal_y, ObjsSize, MPI_DOUBLE_PRECISION, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(6), ierr ) - - call mpi_irecv( normal_z, ObjsSize, MPI_DOUBLE_PRECISION, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(7), ierr ) - - call mpi_irecv( COORD_x1, ObjsSize, MPI_DOUBLE_PRECISION, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(8), ierr ) - - call mpi_irecv( COORD_x2, ObjsSize, MPI_DOUBLE_PRECISION, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(9), ierr ) - - call mpi_irecv( COORD_x3, ObjsSize, MPI_DOUBLE_PRECISION, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(10), ierr ) - - call mpi_irecv( COORD_y1, ObjsSize, MPI_DOUBLE_PRECISION, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(11), ierr ) - - call mpi_irecv( COORD_y2, ObjsSize, MPI_DOUBLE_PRECISION, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(12), ierr ) - - call mpi_irecv( COORD_y3, ObjsSize, MPI_DOUBLE_PRECISION, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(13), ierr ) - - call mpi_irecv( COORD_z1, ObjsSize, MPI_DOUBLE_PRECISION, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(14), ierr ) - - call mpi_irecv( COORD_z2, ObjsSize, MPI_DOUBLE_PRECISION, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(15), ierr ) - - call mpi_irecv( COORD_z3, ObjsSize, MPI_DOUBLE_PRECISION, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(16), ierr ) - - call mpi_irecv( vertex1, 8, MPI_DOUBLE_PRECISION, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(17), ierr ) - - call mpi_irecv( vertex2, 8, MPI_DOUBLE_PRECISION, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(18), ierr ) - - call mpi_irecv( vertex3, 8, MPI_DOUBLE_PRECISION, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(19), ierr ) - - call mpi_waitall(19, recv_req, array_of_statuses, ierr) - - do i = 1, MPI_KDtreePartition% stl% NumOfObjs - MPI_KDtreePartition% stl% ObjectsList(i)% NumOfVertices = 3 - allocate( MPI_KDtreePartition% stl% ObjectsList(i)% vertices(3) ) - MPI_KDtreePartition% stl% ObjectsList(i)% index = i - MPI_KDtreePartition% stl% ObjectsList(i)% normal(1) = normal_x(i) - MPI_KDtreePartition% stl% ObjectsList(i)% normal(2) = normal_y(i) - MPI_KDtreePartition% stl% ObjectsList(i)% normal(3) = normal_z(i) - MPI_KDtreePartition% stl% ObjectsList(i)% vertices(1)% coords(1) = COORD_x1(i) - MPI_KDtreePartition% stl% ObjectsList(i)% vertices(2)% coords(1) = COORD_x2(i) - MPI_KDtreePartition% stl% ObjectsList(i)% vertices(3)% coords(1) = COORD_x3(i) - MPI_KDtreePartition% stl% ObjectsList(i)% vertices(1)% coords(2) = COORD_y1(i) - MPI_KDtreePartition% stl% ObjectsList(i)% vertices(2)% coords(2) = COORD_y2(i) - MPI_KDtreePartition% stl% ObjectsList(i)% vertices(3)% coords(2) = COORD_y3(i) - MPI_KDtreePartition% stl% ObjectsList(i)% vertices(1)% coords(3) = COORD_z1(i) - MPI_KDtreePartition% stl% ObjectsList(i)% vertices(2)% coords(3) = COORD_z2(i) - MPI_KDtreePartition% stl% ObjectsList(i)% vertices(3)% coords(3) = COORD_z3(i) - end do - - MPI_KDtreePartition% vertices(1,:) = vertex1 - MPI_KDtreePartition% vertices(2,:) = vertex2 - MPI_KDtreePartition% vertices(3,:) = vertex3 - - deallocate( indeces, & - normal_x, & - normal_y, & - normal_z, & - COORD_x1, & - COORD_x2, & - COORD_x3, & - COORD_y1, & - COORD_y2, & - COORD_y3, & - COORD_z1, & - COORD_z2, & - COORD_z3, & - vertex1, & - vertex2, & - vertex3 ) -#endif + call mpi_isend(locVertices(:,2,nProcs), 8, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,15), ierr ) + + call mpi_isend(locVertices(:,3,nProcs), 8, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,16), ierr ) - end subroutine recvSTLPartition - - subroutine SendSTLPartitions() - - implicit none - -#ifdef _HAS_MPI_ - !-local-variables------------------------------------------------------------------------- - integer :: ObjsSize, PartSize, nProcs, i, j, ierr, & - msg, array_of_statuses(MPI_STATUS_SIZE,19) - real(kind=RP), dimension(:), allocatable :: normal_x, normal_y, normal_z - real(kind=RP), dimension(:), allocatable :: vertex1, vertex2, vertex3 - real(kind=RP), dimension(:), allocatable :: COORD_x1, COORD_x2, COORD_x3 - real(kind=RP), dimension(:), allocatable :: COORD_y1, COORD_y2, COORD_y3 - real(kind=RP), dimension(:), allocatable :: COORD_z1, COORD_z2, COORD_z3 - integer, dimension(:), allocatable :: indeces - integer, dimension(:,:), allocatable :: send_req - - allocate(send_req(MPI_Process% nProcs-1,19)) + call mpi_isend(rootAxis, 1, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,17), ierr ) - do nProcs = 2, MPI_Process% nProcs - - ObjsSize = MPI_KDtree_all% partition(nProcs)% stl% NumOfObjs - call mpi_isend( ObjsSize, 1, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - send_req(nProcs-1,1), ierr ) - - end do - - do nProcs = 2, MPI_Process% nProcs - - partSize = MPI_KDtree_all% partition(nProcs)% stl% NumOfObjs - - call mpi_isend( MPI_KDtree_all% partition(nProcs)% plane, 2, MPI_DOUBLE_PRECISION, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - send_req(nProcs-1,2), ierr) + call mpi_waitall(17, send_req(nProcs-1,:), array_of_statuses, ierr) - call mpi_isend( MPI_KDtree_all% partition(nProcs)% axis, 1, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - send_req(nProcs-1,3), ierr) - - - allocate( indeces(partSize), & - normal_x(partSize), & - normal_y(partSize), & - normal_z(partSize), & - COORD_x1(partSize), & - COORD_x2(partSize), & - COORD_x3(partSize), & - COORD_y1(partSize), & - COORD_y2(partSize), & - COORD_y3(partSize), & - COORD_z1(partSize), & - COORD_z2(partSize), & - COORD_z3(partSize), & - vertex1(8), & - vertex2(8), & - vertex3(8) ) - - do i = 1, partSize - indeces(i) = MPI_KDtree_all% partition(nProcs)% stl% ObjectsList(i)% index - normal_x(i) = MPI_KDtree_all% partition(nProcs)% stl% ObjectsList(i)% normal(1) - normal_y(i) = MPI_KDtree_all% partition(nProcs)% stl% ObjectsList(i)% normal(2) - normal_z(i) = MPI_KDtree_all% partition(nProcs)% stl% ObjectsList(i)% normal(3) - COORD_x1(i) = MPI_KDtree_all% partition(nProcs)% stl% ObjectsList(i)% vertices(1)% coords(1) - COORD_x2(i) = MPI_KDtree_all% partition(nProcs)% stl% ObjectsList(i)% vertices(2)% coords(1) - COORD_x3(i) = MPI_KDtree_all% partition(nProcs)% stl% ObjectsList(i)% vertices(3)% coords(1) - COORD_y1(i) = MPI_KDtree_all% partition(nProcs)% stl% ObjectsList(i)% vertices(1)% coords(2) - COORD_y2(i) = MPI_KDtree_all% partition(nProcs)% stl% ObjectsList(i)% vertices(2)% coords(2) - COORD_y3(i) = MPI_KDtree_all% partition(nProcs)% stl% ObjectsList(i)% vertices(3)% coords(2) - COORD_z1(i) = MPI_KDtree_all% partition(nProcs)% stl% ObjectsList(i)% vertices(1)% coords(3) - COORD_z2(i) = MPI_KDtree_all% partition(nProcs)% stl% ObjectsList(i)% vertices(2)% coords(3) - COORD_z3(i) = MPI_KDtree_all% partition(nProcs)% stl% ObjectsList(i)% vertices(3)% coords(3) + end do + + call rootSTL% destroy() + + allocate(rootSTL% ObjectsList(NumOfObjsPP)) + + do i = 1, NumOfObjsPP + allocate(rootSTL% ObjectsList(i)% vertices(NDIM)) + rootSTL% ObjectsList(i)% normal(1) = normals_x(i) + rootSTL% ObjectsList(i)% normal(2) = normals_y(i) + rootSTL% ObjectsList(i)% normal(3) = normals_z(i) + do j = 1, NDIM + rootSTL% ObjectsList(i)% vertices(j)% coords(1) = vertices_x(i,j) + rootSTL% ObjectsList(i)% vertices(j)% coords(2) = vertices_y(i,j) + rootSTL% ObjectsList(i)% vertices(j)% coords(3) = vertices_z(i,j) + end do + rootSTL% ObjectsList(i)% index = i + end do + + rootSTL% NumOfObjs = NumOfObjsPP + + do j = 1, 8 + rootVertices(:,j) = locVertices(j,:,1) end do - vertex1 = MPI_KDtree_all% partition(nProcs)% vertices(1,:) - vertex2 = MPI_KDtree_all% partition(nProcs)% vertices(2,:) - vertex3 = MPI_KDtree_all% partition(nProcs)% vertices(3,:) + deallocate(send_req, locVertices, vertices_x, vertices_y, vertices_z, normals_x, normals_y, normals_z) +#else + if( rootSTL% show ) call rootSTL% Describe( rootSTL% filename ) +#endif - call mpi_isend( indeces, partSize, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,4), ierr ) + end subroutine SendSTL2Partitions - call mpi_isend( normal_x, partSize, MPI_DOUBLE_PRECISION, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,5), ierr ) - call mpi_isend( normal_y, partSize, MPI_DOUBLE_PRECISION, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,6), ierr ) + subroutine receiveSTLpartitions( partitionSTL, STLNum, partitionVertex, partitionAxis ) + implicit none + !-arguments----------------------------------------------------- + type(STLfile), intent(inout) :: partitionSTL + integer, intent(in) :: STLNum + real(kind=RP), intent(inout) :: partitionVertex(:,:) + integer, intent(inout) :: partitionAxis +#ifdef _HAS_MPI_ + !-local-variables----------------------------------------------- + real(kind=RP), allocatable :: normals_x(:), normals_y(:), normals_z(:), & + vertices_x(:,:), vertices_y(:,:), & + vertices_z(:,:), locVertices(:,:) + integer :: NumOfObjs, ierr, recv_req(17), i, j, & + array_of_statuses(MPI_STATUS_SIZE,17) + + if( MPI_Process% isRoot ) return + + partitionSTL% partition = MPI_Process% rank - call mpi_isend( normal_z, partSize, MPI_DOUBLE_PRECISION, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,7), ierr ) + call mpi_irecv( partitionSTL% NumOfObjs, 1, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(1), ierr ) + + call mpi_wait(recv_req(1), MPI_STATUS_IGNORE, ierr) - call mpi_isend( COORD_x1, partSize, MPI_DOUBLE_PRECISION, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,8), ierr ) + NumOfObjs = partitionSTL% NumOfObjs - call mpi_isend( COORD_x2, partSize, MPI_DOUBLE_PRECISION, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,9), ierr ) + allocate( normals_x(NumOfObjs), & + normals_y(NumOfObjs), & + normals_z(NumOfObjs), & + vertices_x(NumOfObjs,NDIM), & + vertices_y(NumOfObjs,NDIM), & + vertices_z(NumOfObjs,NDIM), & + locVertices(8,NDIM) ) - call mpi_isend( COORD_x3, partSize, MPI_DOUBLE_PRECISION, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,10), ierr ) + call mpi_irecv( normals_x, NumOfObjs, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(2), ierr ) + + call mpi_irecv( normals_y, NumOfObjs, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(3), ierr ) + + call mpi_irecv( normals_z, NumOfObjs, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(4), ierr ) + + call mpi_irecv( vertices_x(:,1), NumOfObjs, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(5), ierr ) - call mpi_isend( COORD_y1, partSize, MPI_DOUBLE_PRECISION, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,11), ierr ) + call mpi_irecv( vertices_y(:,1), NumOfObjs, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(6), ierr ) + + call mpi_irecv( vertices_z(:,1), NumOfObjs, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(7), ierr ) - call mpi_isend( COORD_y2, partSize, MPI_DOUBLE_PRECISION, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,12), ierr ) + call mpi_irecv( vertices_x(:,2), NumOfObjs, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(8), ierr ) - call mpi_isend( COORD_y3, partSize, MPI_DOUBLE_PRECISION, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,13), ierr ) + call mpi_irecv( vertices_y(:,2), NumOfObjs, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(9), ierr ) - call mpi_isend( COORD_z1, partSize, MPI_DOUBLE_PRECISION, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,14), ierr ) + call mpi_irecv( vertices_z(:,2), NumOfObjs, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(10), ierr ) - call mpi_isend( COORD_z2, partSize, MPI_DOUBLE_PRECISION, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,15), ierr ) + call mpi_irecv( vertices_x(:,3), NumOfObjs, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(11), ierr ) + + call mpi_irecv( vertices_y(:,3), NumOfObjs, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(12), ierr ) + + call mpi_irecv( vertices_z(:,3), NumOfObjs, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(13), ierr ) - call mpi_isend( COORD_z3, partSize, MPI_DOUBLE_PRECISION, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,16), ierr ) + call mpi_irecv( locVertices(:,1), 8, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(14), ierr ) + + call mpi_irecv( locVertices(:,2), 8, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(15), ierr ) + + call mpi_irecv( locVertices(:,3), 8, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(16), ierr ) - call mpi_isend( vertex1, 8, MPI_DOUBLE_PRECISION, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,17), ierr ) + call mpi_irecv( partitionAxis, 1, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(17), ierr ) - call mpi_isend( vertex2, 8, MPI_DOUBLE_PRECISION, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,18), ierr ) + call mpi_waitall(17, recv_req, array_of_statuses, ierr) - call mpi_isend( vertex3, 8, MPI_DOUBLE_PRECISION, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,19), ierr ) + allocate(partitionSTL% ObjectsList(NumOfObjs)) - call mpi_waitall(19, send_req(nProcs-1,:), array_of_statuses, ierr) - - deallocate( indeces, & - normal_x, & - normal_y, & - normal_z, & - COORD_x1, & - COORD_x2, & - COORD_x3, & - COORD_y1, & - COORD_y2, & - COORD_y3, & - COORD_z1, & - COORD_z2, & - COORD_z3, & - vertex1, & - vertex2, & - vertex3 ) - + do i = 1, NumOfObjs + partitionSTL% ObjectsList(i)% NumOfVertices = 3 + allocate(partitionSTL% ObjectsList(i)% vertices(3)) + do j = 1, partitionSTL% ObjectsList(i)% NumOfVertices + partitionSTL% ObjectsList(i)% vertices(j)% coords(1) = vertices_x(i,j) + partitionSTL% ObjectsList(i)% vertices(j)% coords(2) = vertices_y(i,j) + partitionSTL% ObjectsList(i)% vertices(j)% coords(3) = vertices_z(i,j) + end do + partitionSTL% ObjectsList(i)% normal(1) = normals_x(i) + partitionSTL% ObjectsList(i)% normal(2) = normals_y(i) + partitionSTL% ObjectsList(i)% normal(3) = normals_z(i) + partitionSTL% ObjectsList(i)% index = i end do - MPI_KDtreePartition = MPI_KDtree_all% partition(1) - - deallocate(send_req) - -#endif + partitionVertex(1,:) = locVertices(:,1) + partitionVertex(2,:) = locVertices(:,2) + partitionVertex(3,:) = locVertices(:,3) + + deallocate( normals_x, & + normals_y, & + normals_z, & + vertices_x, & + vertices_y, & + vertices_z, & + locVertices ) +#endif + end subroutine receiveSTLpartitions - end subroutine SendSTLPartitions + subroutine GetBRvertices( vertices, BandRegionCoeff, axis, STLNum, BRvertices ) + implicit none + !-arguments--------------------------------------------- + real(kind=RP), intent(in) :: vertices(:,:), & + BandRegionCoeff + integer, intent(in) :: axis, STLNum + real(kind=RP), intent(out) :: BRvertices(NDIM,8) + !-local-variables--------------------------------------- + integer :: v_indeces(4,2) + + if( axis .eq. 1 ) then + v_indeces(:,1) = (/1,4,8,5/) + v_indeces(:,2) = (/2,3,7,6/) + elseif( axis .eq. 2 ) then + v_indeces(:,1) = (/1,5,6,2/) + v_indeces(:,2) = (/4,8,7,3/) + else + v_indeces(:,1) = (/1,2,3,4/) + v_indeces(:,2) = (/5,6,7,8/) + end if -! PARTITION FOR MASK POINTS + BRvertices = BandRegionCoeff*OBB(STLNum)% LocVertices - subroutine MPI_M_Points_type_Destroy( this ) + if( MPI_Process% rank .ne. 0 ) then + BRvertices(axis,v_indeces(:,1)) = vertices(axis,v_indeces(:,1)) + end if + if( MPI_Process% rank .ne. (MPI_Process% nProcs-1) ) then + BRvertices(axis,v_indeces(:,2)) = vertices(axis,v_indeces(:,2)) + end if - implicit none - !-arguments------------------------------------- - class(MPI_M_Points_type), intent(inout) :: this - - if( allocated(this% x) ) deallocate(this% x) - if( allocated(this% buffer) ) deallocate(this% buffer) - this% NumOfObjs = 0 - - end subroutine MPI_M_Points_type_Destroy + end subroutine GetBRvertices - subroutine MaskCandidates( elements, no_of_elements, no_of_DoFs, STLNum, NumOfSTL ) + + subroutine GetMaskCandidates( elements, no_of_elements, no_of_DoFs, STLNum, NumOfSTL ) use ElementClass implicit none !-arguments---------------------------------------------------------------- - type(element), dimension(:), intent(inout) :: elements - integer, intent(in) :: no_of_elements, no_of_DoFs, & - STLNum, NumOfSTL + type(element), intent(inout) :: elements(:) + integer, intent(in) :: no_of_elements, no_of_DoFs, & + STLNum, NumOfSTL !-local-variables----------------------------------------------------------- - real(kind=RP) :: Point(NDIM) - integer :: n, eID, i, j, k - - allocate(MPI_M_PointsPartition% x(no_of_DoFs)) - - n = 0 + type(point_type), allocatable :: x(:) + integer :: eID, i, j, k, ierr + + allocate(x(no_of_DoFs)) + Mask% LocNumOfObjs = 0 -!$omp parallel shared(n,eID,elements,no_of_elements,MPI_M_PointsPartition,STLNum,NumOfSTL) -!$omp do schedule(runtime) private(i,j,k) do eID = 1, no_of_elements if( .not. allocated(elements(eID)% isInsideBody) ) then call elements(eID)% ConstructIBM(elements(eID)% Nxyz(1), elements(eID)% Nxyz(2), elements(eID)% Nxyz(3), NumOfSTL ) @@ -1014,874 +529,862 @@ subroutine MaskCandidates( elements, no_of_elements, no_of_DoFs, STLNum, NumOfST if( elements(eID)% isInsideBody(i,j,k) ) cycle - elements(eID)% isInsideBody(i,j,k) = OBB(STLNum)% isPointInside(coords = elements(eID)% geom% x(:,i,j,k) ) + elements(eID)% isInsideBody(i,j,k) = OBB(STLNum)% isPointInside( coords = elements(eID)% geom% x(:,i,j,k) ) if( elements(eID)% isInsideBody(i,j,k) ) then -!$omp critical - n = n + 1 - MPI_M_PointsPartition% x(n)% coords = elements(eID)% geom% x(:,i,j,k) - MPI_M_PointsPartition% x(n)% local_Position(1) = i - MPI_M_PointsPartition% x(n)% local_Position(2) = j - MPI_M_PointsPartition% x(n)% local_Position(3) = k - MPI_M_PointsPartition% x(n)% element_index = eID - MPI_M_PointsPartition% x(n)% partition = MPI_Process% rank - MPI_M_PointsPartition% LocNumOfObjs = n -!$omp end critical + Mask% LocNumOfObjs = Mask% LocNumOfObjs + 1 + x(Mask% LocNumOfObjs)% coords = elements(eID)% geom% x(:,i,j,k) + x(Mask% LocNumOfObjs)% local_Position = (/i,j,k/) + x(Mask% LocNumOfObjs)% element_index = eID + x(Mask% LocNumOfObjs)% partition = MPI_Process% rank end if end do; end do; end do end do -!$omp end do -!$omp end parallel +#ifdef _HAS_MPI_ + call mpi_allreduce(Mask% LocNumOfObjs, Mask% NumOfObjs, 1, MPI_INT, MPI_SUM, MPI_COMM_WORLD, ierr) +#else + Mask% NumOfObjs = Mask% LocNumOfObjs +#endif + allocate(Mask% x(Mask% NumOfObjs)) + + do i = 1, Mask% LocNumOfObjs + Mask% x(i)% coords = x(i)% coords + Mask% x(i)% local_Position = x(i)% local_Position + Mask% x(i)% element_index = x(i)% element_index + Mask% x(i)% partition = x(i)% partition + Mask% x(i)% index = i + end do - end subroutine MaskCandidates - - - subroutine RootRecvrecvPointMaskPartition() - - implicit none - -#ifdef _HAS_MPI_ - !-local-variables---------------------------------------------------------------- - integer :: ObjsSize, nProcs, ierr, i, msg, & - array_of_statuses(MPI_STATUS_SIZE,9) - real(kind=RP), dimension(:), allocatable :: COORD_x, COORD_y, COORD_z - integer, dimension(:), allocatable :: i_v, j_v, k_v, eID, partition, buffer - integer, dimension(:,:), allocatable :: RootMaskrecv_req - - if( MPI_Process% isRoot ) then - - allocate( buffer(MPI_Process% nProcs-1), & - RootMaskrecv_req(MPI_Process% nProcs-1,9) ) - - do nProcs = 2, MPI_Process% nProcs - call mpi_irecv( ObjsSize, 1, MPI_INT, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, RootMaskrecv_req(nProcs-1,1), ierr ) - call mpi_wait(RootMaskrecv_req(nProcs-1,1), MPI_STATUS_IGNORE, ierr) - - MPI_M_Points_All% buffer(nProcs) = MPI_M_Points_All% buffer(nProcs-1) + ObjsSize - buffer(nProcs-1) = ObjsSize - - end do - - do nProcs = 2, MPI_Process% nProcs - - allocate( COORD_x(buffer(nProcs-1)), & - COORD_y(buffer(nProcs-1)), & - COORD_z(buffer(nProcs-1)), & - i_v(buffer(nProcs-1)), & - j_v(buffer(nProcs-1)), & - k_v(buffer(nProcs-1)), & - eID(buffer(nProcs-1)), & - partition(buffer(nProcs-1)) ) - - call mpi_irecv( COORD_x, buffer(nProcs-1), MPI_DOUBLE, nProcs-1, & - MPI_ANY_TAG, MPI_COMM_WORLD, RootMaskrecv_req(nProcs-1,2), ierr ) - - call mpi_irecv( COORD_y, buffer(nProcs-1), MPI_DOUBLE, nProcs-1, & - MPI_ANY_TAG, MPI_COMM_WORLD, RootMaskrecv_req(nProcs-1,3), ierr ) + deallocate(x) - call mpi_irecv( COORD_z, buffer(nProcs-1), MPI_DOUBLE, nProcs-1, & - MPI_ANY_TAG, MPI_COMM_WORLD, RootMaskrecv_req(nProcs-1,4), ierr ) - - call mpi_irecv( i_v, buffer(nProcs-1), MPI_INT, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, RootMaskrecv_req(nProcs-1,5), ierr ) - - call mpi_irecv( j_v, buffer(nProcs-1), MPI_INT, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, RootMaskrecv_req(nProcs-1,6), ierr ) - - call mpi_irecv( k_v, buffer(nProcs-1), MPI_INT, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, RootMaskrecv_req(nProcs-1,7), ierr ) - - call mpi_irecv( eID, buffer(nProcs-1), MPI_INT, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, RootMaskrecv_req(nProcs-1,8), ierr ) - - call mpi_irecv( partition, buffer(nProcs-1), MPI_INT, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, RootMaskrecv_req(nProcs-1,9), ierr ) - - call mpi_waitall(9, RootMaskrecv_req(nProcs-1,:), array_of_statuses, ierr) - - do i = 1, buffer(nProcs-1) - MPI_M_Points_All% x(i+MPI_M_Points_All% buffer(nProcs-1))% coords(1) = COORD_x(i) - MPI_M_Points_All% x(i+MPI_M_Points_All% buffer(nProcs-1))% coords(2) = COORD_y(i) - MPI_M_Points_All% x(i+MPI_M_Points_All% buffer(nProcs-1))% coords(3) = COORD_z(i) - MPI_M_Points_All% x(i+MPI_M_Points_All% buffer(nProcs-1))% local_Position(1) = i_v(i) - MPI_M_Points_All% x(i+MPI_M_Points_All% buffer(nProcs-1))% local_Position(2) = j_v(i) - MPI_M_Points_All% x(i+MPI_M_Points_All% buffer(nProcs-1))% local_Position(3) = k_v(i) - MPI_M_Points_All% x(i+MPI_M_Points_All% buffer(nProcs-1))% element_index = eID(i) - MPI_M_Points_All% x(i+MPI_M_Points_All% buffer(nProcs-1))% partition = partition(i) - end do - - deallocate( COORD_x, COORD_y, COORD_z, i_v, j_v, k_v, eID, partition ) + end subroutine GetMaskCandidates - end do - - deallocate(buffer,RootMaskrecv_req) - end if -#endif - - end subroutine RootRecvrecvPointMaskPartition - - subroutine RootSendPointMaskPartition() - - implicit none - -#ifdef _HAS_MPI_ - !-local-variables---------------------------------------------------------------- - integer :: ObjsSize, i, j, ierr, msg, & - array_of_statuses(MPI_STATUS_SIZE,9), & - RootMasksend_req(9) - real(kind=RP), dimension(:), allocatable :: COORD_x, COORD_y, COORD_z - integer, dimension(:), allocatable :: i_v, j_v, k_v, eID, partition - + subroutine RecvPointsListpartitions( PointsList ) + implicit none + !-arguments----------------------------------------------------------------- + type(IBMpoints), intent(inout) :: PointsList +#ifdef _HAS_MPI_ + !-local-variables----------------------------------------------------------- + real(kind=RP), allocatable :: coords(:,:) + integer, allocatable :: local_position(:,:), element_index(:), & + partition(:), indeces(:) + integer :: i, nProcs, ierr, recv_req(9), & + array_of_statuses(MPI_STATUS_SIZE,9) + if( MPI_Process% isRoot ) return - - ObjsSize = MPI_M_PointsPartition% LocNumOfObjs - - call mpi_isend( ObjsSize, 1, MPI_INT, 0, DEFAULT_TAG, MPI_COMM_WORLD, & - RootMasksend_req(1), ierr ) - - allocate( COORD_x(ObjsSize), & - COORD_y(ObjsSize), & - COORD_z(ObjsSize), & - i_v(ObjsSize), & - j_v(ObjsSize), & - k_v(ObjsSize), & - eID(ObjsSize), & - partition(ObjsSize) ) - - COORD_x = MPI_M_PointsPartition% x(1:ObjsSize)% coords(1) - COORD_y = MPI_M_PointsPartition% x(1:ObjsSize)% coords(2) - COORD_z = MPI_M_PointsPartition% x(1:ObjsSize)% coords(3) - - i_v = MPI_M_PointsPartition% x(1:ObjsSize)% local_Position(1) - j_v = MPI_M_PointsPartition% x(1:ObjsSize)% local_Position(2) - k_v = MPI_M_PointsPartition% x(1:ObjsSize)% local_Position(3) - eID = MPI_M_PointsPartition% x(1:ObjsSize)% element_index - partition = MPI_M_PointsPartition% x(1:ObjsSize)% partition - - call mpi_isend( COORD_x, MPI_M_PointsPartition% LocNumOfObjs, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, & - RootMasksend_req(2), ierr ) - - call mpi_isend( COORD_y, MPI_M_PointsPartition% LocNumOfObjs, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, & - RootMasksend_req(3), ierr ) - - call mpi_isend( COORD_z, MPI_M_PointsPartition% LocNumOfObjs, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, & - RootMasksend_req(4), ierr ) - - call mpi_isend( i_v, MPI_M_PointsPartition% LocNumOfObjs, MPI_INT, 0, DEFAULT_TAG, MPI_COMM_WORLD, & - RootMasksend_req(5), ierr ) - - call mpi_isend( j_v, MPI_M_PointsPartition% LocNumOfObjs, MPI_INT, 0, DEFAULT_TAG, MPI_COMM_WORLD, & - RootMasksend_req(6), ierr ) - - call mpi_isend( k_v, MPI_M_PointsPartition% LocNumOfObjs, MPI_INT, 0, DEFAULT_TAG, MPI_COMM_WORLD, & - RootMasksend_req(7), ierr ) - - call mpi_isend( eID, MPI_M_PointsPartition% LocNumOfObjs, MPI_INT, 0, DEFAULT_TAG, MPI_COMM_WORLD, & - RootMasksend_req(8), ierr ) - - call mpi_isend( partition, MPI_M_PointsPartition% LocNumOfObjs, MPI_INT, 0, DEFAULT_TAG, MPI_COMM_WORLD, & - RootMasksend_req(9), ierr ) - - call mpi_waitall(9, RootMasksend_req, array_of_statuses, ierr) - deallocate( COORD_x, COORD_y, COORD_z, i_v, j_v, k_v, eID, partition ) -#endif + allocate( coords(PointsList% NumOfObjs,NDIM), & + local_position(PointsList% NumOfObjs,NDIM), & + element_index(PointsList% NumOfObjs), & + partition(PointsList% NumOfObjs), & + indeces(PointsList% NumOfObjs) ) - end subroutine RootSendPointMaskPartition - - - subroutine recvPointMaskPartition() - - implicit none - -#ifdef _HAS_MPI_ - !-local-variables----------------------------------------------------------------- - integer :: ObjsSize, ierr, i, & - array_of_statuses(MPI_STATUS_SIZE,8), & - Maskrecv_req(8) - real(kind=RP), dimension(:), allocatable :: COORD_x, COORD_y, COORD_z - integer, dimension(:), allocatable :: i_v, j_v, k_v, eID, partition - - if( MPI_Process% isRoot ) return + call mpi_irecv( coords(:,1), PointsList% NumOfObjs, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(1), ierr ) - ObjsSize = MPI_M_Points_ALL% NumOfObjs + call mpi_irecv( coords(:,2), PointsList% NumOfObjs, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(2), ierr ) - allocate( COORD_x(ObjsSize), & - COORD_y(ObjsSize), & - COORD_z(ObjsSize), & - i_v(ObjsSize), & - j_v(ObjsSize), & - k_v(ObjsSize), & - eID(ObjsSize), & - partition(ObjsSize) ) - - call mpi_irecv( COORD_x, ObjsSize, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, Maskrecv_req(1), ierr ) + call mpi_irecv( coords(:,3), PointsList% NumOfObjs, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(3), ierr ) - call mpi_irecv( COORD_y, ObjsSize, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, Maskrecv_req(2), ierr ) + call mpi_irecv( local_position(:,1), PointsList% NumOfObjs, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(4), ierr ) - call mpi_irecv( COORD_z, ObjsSize, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, Maskrecv_req(3), ierr ) + call mpi_irecv( local_position(:,2), PointsList% NumOfObjs, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(5), ierr ) - call mpi_irecv( i_v, ObjsSize, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, Maskrecv_req(4), ierr ) + call mpi_irecv( local_position(:,3), PointsList% NumOfObjs, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(6), ierr ) - call mpi_irecv( j_v, ObjsSize, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, Maskrecv_req(5), ierr ) + call mpi_irecv( element_index, PointsList% NumOfObjs, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(7), ierr ) - call mpi_irecv( k_v, ObjsSize, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, Maskrecv_req(6), ierr ) + call mpi_irecv( partition, PointsList% NumOfObjs, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(8), ierr ) - call mpi_irecv( eID, ObjsSize, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, Maskrecv_req(7), ierr ) + call mpi_irecv( indeces, PointsList% NumOfObjs, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(9), ierr ) - call mpi_irecv( partition, ObjsSize, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, Maskrecv_req(8), ierr ) + call mpi_waitall(9, recv_req, array_of_statuses, ierr) - call mpi_waitall(8, Maskrecv_req, array_of_statuses, ierr) + do i = 1, PointsList% NumOfObjs + PointsList% x(i)% coords = coords(i,:) + PointsList% x(i)% local_position = local_position(i,:) + PointsList% x(i)% element_index = element_index(i) + PointsList% x(i)% partition = partition(i) + PointsList% x(i)% index = indeces(i) + end do - do i = 1, ObjsSize - MPI_M_Points_All% x(i)% coords(1) = COORD_x(i) - MPI_M_Points_All% x(i)% coords(2) = COORD_y(i) - MPI_M_Points_All% x(i)% coords(3) = COORD_z(i) - MPI_M_Points_All% x(i)% local_Position(1) = i_v(i) - MPI_M_Points_All% x(i)% local_Position(2) = j_v(i) - MPI_M_Points_All% x(i)% local_Position(3) = k_v(i) - MPI_M_Points_All% x(i)% element_index = eID(i) - MPI_M_Points_All% x(i)% partition = partition(i) - end do - - deallocate( COORD_x, COORD_y, COORD_z, i_v, j_v, k_v, eID, partition ) + deallocate( coords, & + local_position, & + element_index, & + partition, & + indeces ) #endif - - end subroutine recvPointMaskPartition + end subroutine RecvPointsListpartitions - subroutine sendPointMaskPartition() - - implicit none - -#ifdef _HAS_MPI_ - !-local-variables---------------------------------------------------------------- - integer :: ObjsSize, nProcs, msg, ierr, & - array_of_statuses(MPI_STATUS_SIZE,9) - real(kind=RP), dimension(:), allocatable :: COORD_x, COORD_y, COORD_z - integer, dimension(:), allocatable :: i_v, j_v, k_v, eID, partition - integer, dimension(:,:), allocatable :: Masksend_req - - ObjsSize = MPI_M_Points_ALL% NumOfObjs - - allocate( COORD_x(ObjsSize), & - COORD_y(ObjsSize), & - COORD_z(ObjsSize), & - i_v(ObjsSize), & - j_v(ObjsSize), & - k_v(ObjsSize), & - eID(ObjsSize), & - partition(ObjsSize), & - Masksend_req(MPI_Process% nProcs-1,8) ) - - COORD_x = MPI_M_Points_ALL% x(:)% coords(1) - COORD_y = MPI_M_Points_ALL% x(:)% coords(2) - COORD_z = MPI_M_Points_ALL% x(:)% coords(3) - i_v = MPI_M_Points_ALL% x(:)% local_Position(1) - j_v = MPI_M_Points_ALL% x(:)% local_Position(2) - k_v = MPI_M_Points_ALL% x(:)% local_Position(3) - eID = MPI_M_Points_ALL% x(:)% element_index - partition = MPI_M_Points_ALL% x(:)% partition - - do nProcs = 2, MPI_Process% nProcs - - call mpi_isend( COORD_x, ObjsSize, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - Masksend_req(nProcs-1,1), ierr ) - - call mpi_isend( COORD_y, ObjsSize, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - Masksend_req(nProcs-1,2), ierr ) - - call mpi_isend( COORD_z, ObjsSize, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - Masksend_req(nProcs-1,3), ierr ) - - call mpi_isend( i_v, ObjsSize, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - Masksend_req(nProcs-1,4), ierr ) - - call mpi_isend( j_v, ObjsSize, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - Masksend_req(nProcs-1,5), ierr ) - - call mpi_isend( k_v, ObjsSize, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - Masksend_req(nProcs-1,6), ierr ) - - call mpi_isend( eID, ObjsSize, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - Masksend_req(nProcs-1,7), ierr ) + + subroutine SendPointsList2partitions( PointsList ) + implicit none + !-arguments---------------------------------------------------------------- + type(IBMPoints), intent(inout) :: PointsList +#ifdef _HAS_MPI_ + !-local-variables---------------------------------------------------------- + real(kind=RP), allocatable :: coords(:,:), normals(:,:), Dist(:) + integer, allocatable :: local_position(:,:), element_index(:), & + partition(:), indeces(:), send_req(:,:) + integer :: i, nProcs, ierr, & + array_of_statuses(MPI_STATUS_SIZE,9) + + allocate( coords(PointsList% NumOfObjs,NDIM), & + local_position(PointsList% NumOfObjs,NDIM), & + element_index(PointsList% NumOfObjs), & + partition(PointsList% NumOfObjs), & + indeces(PointsList% NumOfObjs), & + send_req(MPI_Process% nProcs-1,9) ) + + do i = 1, PointsList% NumOfObjs + coords(i,:) = PointsList% x(i)% coords + local_position(i,:) = PointsList% x(i)% local_position + element_index(i) = PointsList% x(i)% element_index + partition(i) = PointsList% x(i)% partition + indeces(i) = PointsList% x(i)% index + end do + + do nProcs = 2, MPI_Process% nProcs + + call mpi_isend( coords(:,1), PointsList% NumOfObjs, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,1), ierr ) + + call mpi_isend( coords(:,2), PointsList% NumOfObjs, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,2), ierr ) + + call mpi_isend( coords(:,3), PointsList% NumOfObjs, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,3), ierr ) + + call mpi_isend( local_position(:,1), PointsList% NumOfObjs, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,4), ierr ) + + call mpi_isend( local_position(:,2), PointsList% NumOfObjs, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,5), ierr ) + + call mpi_isend( local_position(:,3), PointsList% NumOfObjs, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,6), ierr ) + + call mpi_isend( element_index, PointsList% NumOfObjs, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,7), ierr ) - call mpi_isend( partition, ObjsSize, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - Masksend_req(nProcs-1,8), ierr ) - - call mpi_waitall(8, Masksend_req(nProcs-1,:), array_of_statuses, ierr ) - + call mpi_isend( partition, PointsList% NumOfObjs, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,8), ierr ) + + call mpi_isend( indeces, PointsList% NumOfObjs, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,9), ierr ) + + call mpi_waitall(9, send_req(nProcs-1,:), array_of_statuses, ierr) + end do - - deallocate(COORD_x,COORD_y,COORD_z,i_v,j_v,k_v,eID,partition,Masksend_req) -#endif - - end subroutine sendPointMaskPartition - + + deallocate( coords, & + local_position, & + element_index, & + partition, & + indeces, & + send_req ) +#endif + end subroutine SendPointsList2partitions + + subroutine RecvPointsListRoot( PointsList ) + implicit none + !-arguments------------------------------------------------------------------------- + type(IBMPoints), intent(inout) :: PointsList +#ifdef _HAS_MPI_ + !-local-variables------------------------------------------------------------------- + real(kind=RP), allocatable :: coords(:,:), normals_x(:,:), normals_y(:,:), & + normals_z(:,:) + integer, allocatable :: local_position(:,:), element_index(:), & + partition(:), recv_req(:,:) + integer :: i, LocNumOfObjs, start_index, final_index, ierr, & + rank, nProcs, array_of_statuses(MPI_STATUS_SIZE,9) + + allocate( coords(PointsList% NumOfObjs,NDIM), & + local_position(PointsList% NumOfObjs,NDIM), & + element_index(PointsList% NumOfObjs), & + partition(PointsList% NumOfObjs), & + recv_req(MPI_Process% nProcs-1,9) ) + + start_index = PointsList% LocNumOfObjs; final_index = PointsList% LocNumOfObjs + + do nProcs = 2, MPI_Process% nProcs + + call mpi_irecv( LocNumOfObjs, 1, MPI_INT, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,1), ierr ) + + call mpi_wait(recv_req(nProcs-1,1), MPI_STATUS_IGNORE, ierr) + + if( LocNumOfObjs .eq. 0 ) cycle + + call mpi_irecv( coords(1:LocNumOfObjs,1), LocNumOfObjs, MPI_DOUBLE, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,2), ierr ) + + call mpi_irecv( coords(1:LocNumOfObjs,2), LocNumOfObjs, MPI_DOUBLE, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,3), ierr ) + + call mpi_irecv( coords(1:LocNumOfObjs,3), LocNumOfObjs, MPI_DOUBLE, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,4), ierr ) + + call mpi_irecv( local_position(1:LocNumOfObjs,1), LocNumOfObjs, MPI_INT, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,5), ierr ) + + call mpi_irecv( local_position(1:LocNumOfObjs,2), LocNumOfObjs, MPI_INT, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,6), ierr ) + + call mpi_irecv( local_position(1:LocNumOfObjs,3), LocNumOfObjs, MPI_INT, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,7), ierr ) + + call mpi_irecv( element_index(1:LocNumOfObjs), LocNumOfObjs, MPI_INT, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,8), ierr ) + + call mpi_irecv( partition(1:LocNumOfObjs), LocNumOfObjs, MPI_INT, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,9), ierr ) + + call mpi_waitall(9, recv_req(nProcs-1,:), array_of_statuses, ierr) + + start_index = final_index + final_index = start_index + LocNumOfObjs + + do i = 1, LocNumOfObjs + PointsList% x(start_index+i)% coords = coords(i,:) + PointsList% x(start_index+i)% local_position = local_position(i,:) + PointsList% x(start_index+i)% element_index = element_index(i) + PointsList% x(start_index+i)% partition = partition(i) + PointsList% x(start_index+i)% index = start_index + i + end do + + end do + + deallocate( coords, & + local_position, & + element_index, & + partition, & + recv_req ) +#endif + end subroutine RecvPointsListRoot + + + subroutine sendPointsList2Root( PointsList ) + implicit none + !-arguments----------------------------- + type(IBMPoints), intent(inout) :: PointsList +#ifdef _HAS_MPI_ + !-local-variables-------------- + real(kind=RP), allocatable :: coords(:,:), normals_x(:), normals_y(:), & + normals_z(:) + integer, allocatable :: local_position(:,:), element_index(:), & + partition(:) + integer :: i, send_req(9), ierr, & + array_of_statuses(MPI_STATUS_SIZE,9) + + if( MPI_Process% isRoot ) return + + call mpi_isend( PointsList% LocNumOfObjs, 1, MPI_INT, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(1), ierr ) + + call mpi_wait(send_req(1), MPI_STATUS_IGNORE, ierr) + + if( PointsList% LocNumOfObjs .eq. 0 ) return + + allocate( coords(PointsList% LocNumOfObjs,NDIM), & + local_position(PointsList% LocNumOfObjs,NDIM), & + element_index(PointsList% LocNumOfObjs), & + partition(PointsList% LocNumOfObjs) ) + + do i = 1, PointsList% LocNumOfObjs + coords(i,:) = PointsList% x(i)% coords + local_position(i,:) = PointsList% x(i)% local_position + element_index(i) = PointsList% x(i)% element_index + partition(i) = PointsList% x(i)% partition + end do + + call mpi_isend( coords(:,1), PointsList% LocNumOfObjs, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(2), ierr ) + + call mpi_isend( coords(:,2), PointsList% LocNumOfObjs, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(3), ierr ) + + call mpi_isend( coords(:,3), PointsList% LocNumOfObjs, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(4), ierr ) + + call mpi_isend( local_position(:,1), PointsList% LocNumOfObjs, MPI_INT, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(5), ierr ) + + call mpi_isend( local_position(:,2), PointsList% LocNumOfObjs, MPI_INT, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(6), ierr ) + + call mpi_isend( local_position(:,3), PointsList% LocNumOfObjs, MPI_INT, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(7), ierr ) + + call mpi_isend( element_index, PointsList% LocNumOfObjs, MPI_INT, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(8), ierr ) - subroutine RootRecvPointMask() - + call mpi_isend( partition, PointsList% LocNumOfObjs, MPI_INT, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(9), ierr ) + + call mpi_waitall(9, send_req, array_of_statuses, ierr) + + deallocate( coords, & + local_position, & + element_index, & + partition ) +#endif + end subroutine sendPointsList2Root + + + + subroutine recvPointsMaskRoot() implicit none - + !-local-variables-------------------------------------------------- + integer :: i #ifdef _HAS_MPI_ - !-local-variables--------------------------------------------------------------- - integer :: ObjsSize, nProcs, ierr, i, msg, & - status(MPI_STATUS_SIZE), RootMaskrecv_req - logical, dimension(:), allocatable :: isInsideBody - - if( MPI_Process% isRoot ) then - - allocate( isInsideBody(MPI_M_Points_All% NumOfObjs) ) - - do nProcs = 2, MPI_Process% nProcs - + integer :: nProcs, ierr, recv_req, & + status(MPI_STATUS_SIZE) + integer, allocatable :: NumOfIntersectionsLoc(:), & + NumOfIntersections(:) - call mpi_irecv( isInsideBody, MPI_M_Points_All% NumOfObjs, MPI_LOGICAL, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, RootMaskrecv_req, ierr ) + allocate( NumOfIntersectionsLoc(Mask% NumOfObjs), & + NumOfIntersections(Mask% NumOfObjs) ) + + NumOfIntersections = 0 - call mpi_wait(RootMaskrecv_req, status, ierr) - - do i = 1, MPI_M_Points_All% NumOfObjs - if( MPI_M_Points_All% x(i)% isInsideBody ) cycle - MPI_M_Points_All% x(i)% isInsideBody = isInsideBody(i) - end do + do nProcs = 2, MPI_Process% nProcs + + call mpi_irecv( NumOfIntersectionsLoc, Mask% NumOfObjs, MPI_INT, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req, ierr ) + + call mpi_wait(recv_req, status, ierr) + NumOfIntersections = NumOfIntersections + NumOfIntersectionsLoc - end do + end do - deallocate( isInsideBody ) + do i = 1, Mask% NumOfObjs + Mask% x(i)% NumOfIntersections = Mask% x(i)% NumOfIntersections + NumOfIntersections(i) + Mask% x(i)% isInsideBody = .false. + if(mod(Mask% x(i)% NumOfIntersections,2) .ne. 0 ) Mask% x(i)% isInsideBody = .true. + end do - end if + deallocate(NumOfIntersections,NumOfIntersectionsLoc) +#else + do i = 1, Mask% NumOfObjs + Mask% x(i)% isInsideBody = .false. + if(mod(Mask% x(i)% NumOfIntersections,2) .ne. 0 ) Mask% x(i)% isInsideBody = .true. + end do #endif + end subroutine recvPointsMaskRoot - end subroutine RootRecvPointMask - - subroutine RootSendPointMask() - + subroutine sendPointsMask2Root() implicit none - #ifdef _HAS_MPI_ !-local-variables----------------------------------------------------------- - integer :: ObjsSize, i, j, ierr, msg, & - status(MPI_STATUS_SIZE), RootMasksend_req - logical, dimension(:), allocatable :: isInsideBody + integer :: ierr, send_req, i, & + status(MPI_STATUS_SIZE) + integer, allocatable :: NumOfIntersectionsLoc(:) if( MPI_Process% isRoot ) return - - ObjsSize = MPI_M_Points_ALL% NumOfObjs - - allocate( isInsideBody(ObjsSize) ) + + allocate( NumOfIntersectionsLoc(Mask% NumOfObjs) ) - isInsideBody = MPI_M_Points_ALL% x(:)% isInsideBody + do i = 1, Mask% NumOfObjs + NumOfIntersectionsLoc(i) = Mask% x(i)% NumOfIntersections + end do - call mpi_isend( isInsideBody, MPI_M_Points_ALL% NumOfObjs, MPI_LOGICAL, 0, DEFAULT_TAG, MPI_COMM_WORLD, RootMasksend_req, ierr ) + call mpi_isend( NumOfIntersectionsLoc, Mask% NumOfObjs, MPI_INT, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req, ierr ) - call mpi_wait(RootMasksend_req, status, ierr) + call mpi_wait(send_req, status, ierr) - deallocate( isInsideBody ) + deallocate( NumOfIntersectionsLoc ) #endif - - end subroutine RootSendPointMask + end subroutine sendPointsMask2Root - subroutine recvPointMask() - + subroutine recvPointsMaskPartitions() implicit none - #ifdef _HAS_MPI_ !-local-variables----------------------------------------------------------- - integer :: ObjsSize, ierr, i, & - status(MPI_STATUS_SIZE), Maskrecv_req - logical, dimension(:), allocatable :: isInsideBody + integer :: ierr, i, recv_req, & + status(MPI_STATUS_SIZE) + logical, allocatable :: isInsideBody(:) if( MPI_Process% isRoot ) return - ObjsSize = MPI_M_Points_ALL% NumOfObjs - - allocate( isInsideBody(ObjsSize) ) - - call mpi_irecv( isInsideBody, ObjsSize, MPI_LOGICAL, 0, MPI_ANY_TAG, MPI_COMM_WORLD, Maskrecv_req, ierr ) + allocate( isInsideBody(Mask% NumOfObjs) ) + + call mpi_irecv( isInsideBody, Mask% NumOfObjs, MPI_LOGICAL, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req, ierr ) - call mpi_wait(Maskrecv_req, status, ierr) + call mpi_wait(recv_req, status, ierr) - do i = 1, ObjsSize - MPI_M_Points_All% x(i)% isInsideBody = isInsideBody(i) + do i = 1, Mask% NumOfObjs + Mask% x(i)% isInsideBody = isInsideBody(i) end do deallocate( isInsideBody ) #endif - - end subroutine recvPointMask + end subroutine recvPointsMaskPartitions - subroutine sendPointMask() - + subroutine sendPointsMask2Partitions() implicit none - #ifdef _HAS_MPI_ !-local-variables----------------------------------------------------------------------------- - integer :: ObjsSize, nProcs, msg, ierr, & - array_of_statuses(MPI_STATUS_SIZE,MPI_Process% nProcs-1) - logical, dimension(:), allocatable :: isInsideBody - integer, dimension(:), allocatable :: Masksend_req - - ObjsSize = MPI_M_Points_ALL% NumOfObjs + integer :: nProcs, ierr, i, & + statuses(MPI_STATUS_SIZE) + integer :: send_req + logical, allocatable :: isInsideBody(:) - allocate( isInsideBody(ObjsSize), Masksend_req(MPI_Process% nProcs-1) ) - - isInsideBody = MPI_M_Points_ALL% x(:)% isInsideBody + allocate( isInsideBody(Mask% NumOfObjs) ) + do i = 1, Mask% NumOfObjs + isInsideBody(i) = Mask% x(i)% isInsideBody + end do + do nProcs = 2, MPI_Process% nProcs - call mpi_isend( isInsideBody, ObjsSize, MPI_LOGICAL, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - Masksend_req(nProcs-1), ierr ) + call mpi_isend( isInsideBody, Mask% NumOfObjs, MPI_LOGICAL, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req, ierr ) - end do + call mpi_wait(send_req, statuses, ierr ) - call mpi_waitall(MPI_Process% nProcs-1, Masksend_req, array_of_statuses, ierr ) + end do - deallocate(isInsideBody, Masksend_req) + deallocate( isInsideBody ) #endif - - end subroutine sendPointMask - - - - -! BAND REGION - - subroutine RootrecvBandPoint() - - implicit none - -#ifdef _HAS_MPI_ - !-local-variables----------------------------------------------------------------- - integer :: ObjsSize, nProcs, ierr, i, msg, & - array_of_statuses(MPI_STATUS_SIZE,9) - real(kind=RP), dimension(:), allocatable :: COORD_x, COORD_y, COORD_z - integer, dimension(:), allocatable :: buffer, i_v, j_v, k_v, eID, partition - integer, dimension(:,:), allocatable :: RootBandrecv_req - - if( MPI_Process% isRoot ) then + end subroutine sendPointsMask2Partitions - allocate(buffer(MPI_Process% nProcs-1),RootBandrecv_req(MPI_Process% nProcs-1,9)) + subroutine recvNormalsRoot( PointsList, ranks ) + implicit none + !-arguments------------------------------------------------------------------------- + type(IBMPoints), intent(inout) :: PointsList + real(kind=RP), intent(in) :: ranks(:) + !-local-variables------------------------------------------------------------------- +#ifdef _HAS_MPI_ + real(kind=RP), allocatable :: normals_x(:,:), normals_y(:,:), normals_z(:,:) + integer, allocatable :: recv_req(:,:) + integer :: i, ierr, rank, nProcs, & + array_of_statuses(MPI_STATUS_SIZE,3) + + allocate( normals_x(PointsList% NumOfObjs,MPI_Process% nProcs-1), & + normals_y(PointsList% NumOfObjs,MPI_Process% nProcs-1), & + normals_z(PointsList% NumOfObjs,MPI_Process% nProcs-1), & + recv_req(MPI_Process% nProcs-1,3) ) + + do nProcs = 2, MPI_Process% nProcs + + call mpi_irecv( normals_x(:,nProcs-1), PointsList% NumOfObjs, MPI_DOUBLE, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,1), ierr ) - do nProcs = 2, MPI_Process% nProcs - - call mpi_irecv( ObjsSize, 1, MPI_INT, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, RootBandrecv_req(nProcs-1,1), ierr ) - call mpi_wait(RootBandrecv_req(nProcs-1,1), MPI_STATUS_IGNORE, ierr) - - BandPoints_All% buffer(nProcs) = BandPoints_All% buffer(nProcs-1) + ObjsSize - buffer(nProcs-1) = ObjsSize - - end do - - do nProcs = 2, MPI_Process% nProcs - - allocate( COORD_x(buffer(nProcs-1)), & - COORD_y(buffer(nProcs-1)), & - COORD_z(buffer(nProcs-1)), & - i_v(buffer(nProcs-1)), & - j_v(buffer(nProcs-1)), & - k_v(buffer(nProcs-1)), & - eID(buffer(nProcs-1)), & - partition(buffer(nProcs-1)) ) - - call mpi_irecv( COORD_x, buffer(nProcs-1), MPI_DOUBLE, nProcs-1, & - MPI_ANY_TAG, MPI_COMM_WORLD, RootBandrecv_req(nProcs-1,2), ierr ) - - call mpi_irecv( COORD_y, buffer(nProcs-1), MPI_DOUBLE, nProcs-1, & - MPI_ANY_TAG, MPI_COMM_WORLD, RootBandrecv_req(nProcs-1,3), ierr ) - - call mpi_irecv( COORD_z, buffer(nProcs-1), MPI_DOUBLE, nProcs-1, & - MPI_ANY_TAG, MPI_COMM_WORLD, RootBandrecv_req(nProcs-1,4), ierr ) - - call mpi_irecv( i_v, buffer(nProcs-1), MPI_INT, nProcs-1, & - MPI_ANY_TAG, MPI_COMM_WORLD, RootBandrecv_req(nProcs-1,5), ierr ) - - call mpi_irecv( j_v, buffer(nProcs-1), MPI_INT, nProcs-1, & - MPI_ANY_TAG, MPI_COMM_WORLD, RootBandrecv_req(nProcs-1,6), ierr ) - - call mpi_irecv( k_v, buffer(nProcs-1), MPI_INT, nProcs-1, & - MPI_ANY_TAG, MPI_COMM_WORLD, RootBandrecv_req(nProcs-1,7), ierr ) - - call mpi_irecv( eID, buffer(nProcs-1), MPI_INT, nProcs-1, & - MPI_ANY_TAG, MPI_COMM_WORLD, RootBandrecv_req(nProcs-1,8), ierr ) - - call mpi_irecv( partition, buffer(nProcs-1), MPI_INT, nProcs-1, & - MPI_ANY_TAG, MPI_COMM_WORLD, RootBandrecv_req(nProcs-1,9), ierr ) - - call mpi_waitall(9, RootBandrecv_req(nProcs-1,:), array_of_statuses, ierr) - - do i = 1, buffer(nProcs-1) - BandPoints_All% x(i+BandPoints_All% buffer(nProcs-1))% index = i+BandPoints_All% buffer(nProcs-1) - BandPoints_All% x(i+BandPoints_All% buffer(nProcs-1))% coords(1) = COORD_x(i) - BandPoints_All% x(i+BandPoints_All% buffer(nProcs-1))% coords(2) = COORD_y(i) - BandPoints_All% x(i+BandPoints_All% buffer(nProcs-1))% coords(3) = COORD_z(i) - BandPoints_All% x(i+BandPoints_All% buffer(nProcs-1))% local_Position(1) = i_v(i) - BandPoints_All% x(i+BandPoints_All% buffer(nProcs-1))% local_Position(2) = j_v(i) - BandPoints_All% x(i+BandPoints_All% buffer(nProcs-1))% local_Position(3) = k_v(i) - BandPoints_All% x(i+BandPoints_All% buffer(nProcs-1))% element_index = eID(i) - BandPoints_All% x(i+BandPoints_All% buffer(nProcs-1))% partition = partition(i) - end do - - deallocate( COORD_x, COORD_y, COORD_z, i_v, j_v, k_v, eID, partition ) + call mpi_irecv( normals_y(:,nProcs-1), PointsList% NumOfObjs, MPI_DOUBLE, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,2), ierr ) + + call mpi_irecv( normals_z(:,nProcs-1), PointsList% NumOfObjs, MPI_DOUBLE, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,3), ierr ) + + call mpi_waitall(3, recv_req(nProcs-1,:), array_of_statuses, ierr ) + + end do + + do i = 1, PointsList% NumOfObjs + rank = ranks(i) + if( rank .eq. 0 ) cycle + PointsList% x(i)% normal(1) = normals_x(i,rank) + PointsList% x(i)% normal(2) = normals_y(i,rank) + PointsList% x(i)% normal(3) = normals_z(i,rank) + end do + + deallocate( normals_x, & + normals_y, & + normals_z, & + recv_req ) +#endif + end subroutine recvNormalsRoot - end do + subroutine sendNormals2Root( PointsList ) + implicit none + !-arguments----------------------------------------------------------------- + type(IBMPoints), intent(in) :: PointsList +#ifdef _HAS_MPI_ + !-local-variables---------------------------------------------------------- + real(kind=RP), allocatable :: normals(:,:) + integer :: send_req(3), ierr, i, & + array_of_statuses(MPI_STATUS_SIZE,3) - deallocate(buffer,RootBandrecv_req) + if( MPI_Process% isRoot ) return - end if -#endif - - end subroutine RootrecvBandPoint - - - subroutine RootSendBandPoint( BandPoints ) - + allocate(normals(PointsList% NumOfObjs,NDIM)) + + do i = 1, PointsList% NumOfObjs + normals(i,:) = PointsList% x(i)% normal + end do + + call mpi_isend( normals(:,1), PointsList% NumOfObjs, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(1), ierr ) + + call mpi_isend( normals(:,2), PointsList% NumOfObjs, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(2), ierr ) + + call mpi_isend( normals(:,3), PointsList% NumOfObjs, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(3), ierr ) + + call mpi_waitall(3, send_req, array_of_statuses, ierr) + + deallocate(normals) +#endif + end subroutine sendNormals2Root + + subroutine recvDistancesANDNormalspartitions( PointsList ) implicit none - !-arguments---------------------------------------------------------------------- - type(PointLinkedList), intent(inout) :: BandPoints -#ifdef _HAS_MPI_ - !-local-variables---------------------------------------------------------------- - integer :: ObjsSize, i, ierr, & - array_of_statuses(MPI_STATUS_SIZE,9), & - RootBandsend_req(9) - type(point_type), pointer :: p - real(kind=RP), dimension(:), allocatable :: COORD_x, COORD_y, COORD_z - integer, dimension(:), allocatable :: i_v, j_v, k_v, eID, partition - + !-arguments------------------------------------------------------------------------------ + type(IBMPoints), intent(inout) :: PointsList +#ifdef _HAS_MPI_ + !-local-variables------------------------------------------------------------------------ + real(kind=RP), allocatable :: normals(:,:), Dist(:) + integer :: i, ierr, recv_req(4), & + array_of_statuses(MPI_STATUS_SIZE,4) + if( MPI_Process% isRoot ) return - - ObjsSize = BandPoints% NumOfPoints - - call mpi_isend( ObjsSize, 1, MPI_INT, 0, DEFAULT_TAG, MPI_COMM_WORLD, RootBandsend_req(1), ierr ) ! - - allocate( COORD_x(ObjsSize), & - COORD_y(ObjsSize), & - COORD_z(ObjsSize), & - i_v(ObjsSize), & - j_v(ObjsSize), & - k_v(ObjsSize), & - eID(ObjsSize), & - partition(ObjsSize) ) - - p => BandPoints% head - - do i = 1, ObjsSize - COORD_x(i) = p% coords(1) - COORD_y(i) = p% coords(2) - COORD_z(i) = p% coords(3) - i_v(i) = p% local_Position(1) - j_v(i) = p% local_Position(2) - k_v(i) = p% local_Position(3) - eID(i) = p% element_index - partition(i) = p% partition - p => p% next - end do - call mpi_isend( COORD_x, ObjsSize, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, RootBandsend_req(2), ierr ) - - call mpi_isend( COORD_y, ObjsSize, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, RootBandsend_req(3), ierr ) + allocate( normals(PointsList% NumOfObjs,NDIM), & + Dist(PointsList% NumOfObjs) ) - call mpi_isend( COORD_z, ObjsSize, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, RootBandsend_req(4), ierr ) - - call mpi_isend( i_v, ObjsSize, MPI_INT, 0, DEFAULT_TAG, MPI_COMM_WORLD, RootBandsend_req(5), ierr ) - - call mpi_isend( j_v, ObjsSize, MPI_INT, 0, DEFAULT_TAG, MPI_COMM_WORLD, RootBandsend_req(6), ierr ) - - call mpi_isend( k_v, ObjsSize, MPI_INT, 0, DEFAULT_TAG, MPI_COMM_WORLD, RootBandsend_req(7), ierr ) - - call mpi_isend( eID, ObjsSize, MPI_INT, 0, DEFAULT_TAG, MPI_COMM_WORLD, RootBandsend_req(8), ierr ) + call mpi_irecv( normals(:,1), PointsList% NumOfObjs, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(1), ierr ) + + call mpi_irecv( normals(:,2), PointsList% NumOfObjs, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(2), ierr ) - call mpi_isend( partition, ObjsSize, MPI_INT, 0, DEFAULT_TAG, MPI_COMM_WORLD, RootBandsend_req(9), ierr ) - - call mpi_waitall(9, RootBandsend_req, array_of_statuses, ierr) - - deallocate( COORD_x, & - COORD_y, & - COORD_z, & - i_v, & - j_v, & - k_v, & - eID, & - partition ) -#endif + call mpi_irecv( normals(:,3), PointsList% NumOfObjs, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(3), ierr ) - end subroutine RootSendBandPoint - - subroutine recvBandPointPartition() - + call mpi_irecv( Dist, PointsList% NumOfObjs, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(4), ierr ) + + call mpi_waitall(4, recv_req, array_of_statuses, ierr) + + do i = 1, PointsList% NumOfObjs + PointsList% x(i)% normal = normals(i,:) + PointsList% x(i)% Dist = Dist(i) + end do + + deallocate( normals, & + Dist ) +#endif + end subroutine recvDistancesANDNormalspartitions + + subroutine sendDistanceANDNormals2partitions( PointsList ) implicit none - -#ifdef _HAS_MPI_ - !-local-variables------------------------------------------------------------------- - integer :: ObjsSize, ierr, i, & - array_of_statuses(MPI_STATUS_SIZE,9), & - Bandrecv_req(9) - real(kind=RP), dimension(:), allocatable :: COORD_x, COORD_y, COORD_z - integer, dimension(:), allocatable :: indeces, i_v, j_v, k_v, eID, partition - - if( MPI_Process% isRoot ) return + !-arguments------------------------------------------------------------------------------ + type(IBMPoints), intent(in) :: PointsList +#ifdef _HAS_MPI_ + !-local-variables------------------------------------------------------------------------ + real(kind=RP), allocatable :: normals(:,:), Dist(:) + integer, allocatable :: send_req(:,:) + integer :: i, ierr, nProcs, array_of_statuses(MPI_STATUS_SIZE,4) + + allocate( normals(PointsList% NumOfObjs,NDIM), & + Dist(PointsList% NumOfObjs), & + send_req(MPI_Process% nProcs-1,4) ) + + do i = 1, PointsList% NumOfObjs + normals(i,:) = PointsList% x(i)% normal + Dist(i) = PointsList% x(i)% Dist + end do - ObjsSize = BandPoints_ALL% NumOfObjs - - allocate( indeces(ObjsSize), & - COORD_x(ObjsSize), & - COORD_y(ObjsSize), & - COORD_z(ObjsSize), & - i_v(ObjsSize), & - j_v(ObjsSize), & - k_v(ObjsSize), & - eID(ObjsSize), & - partition(ObjsSize) ) - - call mpi_irecv( indeces, ObjsSize, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, Bandrecv_req(1), ierr ) - - call mpi_irecv( COORD_x, ObjsSize, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, Bandrecv_req(2), ierr ) + do nProcs = 2, MPI_Process% nProcs - call mpi_irecv( COORD_y, ObjsSize, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, Bandrecv_req(3), ierr ) + call mpi_isend( normals(:,1), PointsList% NumOfObjs, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,1), ierr ) - call mpi_irecv( COORD_z, ObjsSize, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, Bandrecv_req(4), ierr ) + call mpi_isend( normals(:,2), PointsList% NumOfObjs, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,2), ierr ) - call mpi_irecv( i_v, ObjsSize, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, Bandrecv_req(5), ierr ) + call mpi_isend( normals(:,3), PointsList% NumOfObjs, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,3), ierr ) - call mpi_irecv( j_v, ObjsSize, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, Bandrecv_req(6), ierr ) - - call mpi_irecv( k_v, ObjsSize, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, Bandrecv_req(7), ierr ) - - call mpi_irecv( eID, ObjsSize, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, Bandrecv_req(8), ierr ) - - call mpi_irecv( partition, ObjsSize, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, Bandrecv_req(9), ierr ) - - call mpi_waitall(9, Bandrecv_req, array_of_statuses, ierr) - - do i = 1, ObjsSize - BandPoints_All% x(i)% index = indeces(i) - BandPoints_All% x(i)% coords(1) = COORD_x(i) - BandPoints_All% x(i)% coords(2) = COORD_y(i) - BandPoints_All% x(i)% coords(3) = COORD_z(i) - BandPoints_All% x(i)% local_Position(1) = i_v(i) - BandPoints_All% x(i)% local_Position(2) = j_v(i) - BandPoints_All% x(i)% local_Position(3) = k_v(i) - BandPoints_All% x(i)% element_index = eID(i) - BandPoints_All% x(i)% partition = partition(i) - end do - - deallocate( indeces, COORD_x, COORD_y, COORD_z, i_v, j_v, k_v, eID, partition ) + call mpi_isend( Dist, PointsList% NumOfObjs, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, send_req(nProcs-1,4), ierr ) + + call mpi_waitall(4, send_req(nProcs-1,:), array_of_statuses, ierr) + + end do + + deallocate( normals, & + Dist, & + send_req ) #endif - - end subroutine recvBandPointPartition + end subroutine sendDistanceANDNormals2partitions + + + subroutine recvScalarPlotRoot( ObjectsList, STLNum, rootScalar, x, y, z, scalar ) - subroutine sendBandPointPartition() - implicit none - -#ifdef _HAS_MPI_ - !-local-variables-------------------------------------------------------------------------- - integer :: ObjsSize, nProcs, msg, ierr, & - array_of_statuses(MPI_STATUS_SIZE,9) - real(kind=RP), dimension(:), allocatable :: COORD_x, COORD_y, COORD_z - integer, dimension(:), allocatable :: indeces, i_v, j_v, k_v, eID, partition - integer, dimension(:,:), allocatable :: Bandsend_req - integer :: i - - ObjsSize = BandPoints_ALL% NumOfObjs - - allocate( indeces(ObjsSize), & - COORD_x(ObjsSize), & - COORD_y(ObjsSize), & - COORD_z(ObjsSize), & - i_v(ObjsSize), & - j_v(ObjsSize), & - k_v(ObjsSize), & - eID(ObjsSize), & - partition(ObjsSize), & - Bandsend_req(MPI_Process% nProcs-1,9) ) - - indeces = BandPoints_ALL% x(:)% index - COORD_x = BandPoints_ALL% x(:)% coords(1) - COORD_y = BandPoints_ALL% x(:)% coords(2) - COORD_z = BandPoints_ALL% x(:)% coords(3) - i_v = BandPoints_ALL% x(:)% local_Position(1) - j_v = BandPoints_ALL% x(:)% local_Position(2) - k_v = BandPoints_ALL% x(:)% local_Position(3) - eID = BandPoints_ALL% x(:)% element_index - partition = BandPoints_ALL% x(:)% partition - - do nProcs = 2, MPI_Process% nProcs - - call mpi_isend( indeces, ObjsSize, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - Bandsend_req(nProcs-1,1), ierr ) - - call mpi_isend( COORD_x, ObjsSize, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - Bandsend_req(nProcs-1,2), ierr ) - - call mpi_isend( COORD_y, ObjsSize, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - Bandsend_req(nProcs-1,3), ierr ) - - call mpi_isend( COORD_z, ObjsSize, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - Bandsend_req(nProcs-1,4), ierr ) - - call mpi_isend( i_v, ObjsSize, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - Bandsend_req(nProcs-1,5), ierr ) - - call mpi_isend( j_v, ObjsSize, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - Bandsend_req(nProcs-1,6), ierr ) - - call mpi_isend( k_v, ObjsSize, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - Bandsend_req(nProcs-1,7), ierr ) - - call mpi_isend( eID, ObjsSize, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - Bandsend_req(nProcs-1,8), ierr ) - - call mpi_isend( partition, ObjsSize, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - Bandsend_req(nProcs-1,9), ierr ) - - call mpi_waitall( 9, Bandsend_req(nProcs-1,:), array_of_statuses, ierr ) + type(Object_type), intent(in) :: ObjectsList(:) + integer, intent(in) :: STLNum + real(kind=RP), intent(in) :: rootScalar(:,:) + real(kind=RP), allocatable, intent(inout) :: x(:), y(:), z(:), scalar(:) + !-local-variables------------------------------------------------------------------- + real(kind=RP) :: coords(NDIM) + integer :: i, j, k, rootNumOfObjs +#ifdef _HAS_MPI_ + integer :: ierr, nProcs, rank, ObjsSize, start_index, & + final_index, array_of_statuses(MPI_STATUS_SIZE,4) + integer, allocatable :: recv_req(:,:), recv_Firstreq(:), NumOfObjs(:) + real(kind=RP), allocatable :: COORD_x(:), COORD_y(:), COORD_z(:), state(:) +#endif + if( .not. MPI_Process% isRoot ) return + + rootNumOfObjs = 3*size(ObjectsList) +#ifdef _HAS_MPI_ + + allocate( NumOfObjs(MPI_Process% nProcs-1), & + recv_Firstreq(MPI_Process% nProcs-1) ) + + do nProcs = 2, MPI_Process% nProcs + call mpi_irecv( ObjsSize, 1, MPI_INT, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_Firstreq(nProcs-1), ierr ) + call mpi_wait( recv_Firstreq(nProcs-1), MPI_STATUS_IGNORE, ierr ) + + NumOfObjs(nProcs-1) = ObjsSize + + end do + + deallocate(recv_Firstreq) + + allocate( x(rootNumOfObjs+sum(NumOfObjs)), & + y(rootNumOfObjs+sum(NumOfObjs)), & + z(rootNumOfObjs+sum(NumOfObjs)), & + scalar(rootNumOfObjs+sum(NumOfObjs)), & + COORD_x(sum(NumOfObjs)), & + COORD_y(sum(NumOfObjs)), & + COORD_z(sum(NumOfObjs)), & + state(sum(NumOfObjs)), & + recv_req(MPI_Process% nProcs-1,4) ) + + do nProcs = 2, MPI_Process% nProcs + + start_index = sum(NumOfObjs(1:nProcs-2)) + 1 + final_index = (start_index-1) + NumOfObjs(nProcs-1) + + call mpi_irecv( COORD_x(start_index:final_index), NumOfObjs(nProcs-1), MPI_DOUBLE, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,1), ierr ) + + call mpi_irecv( COORD_y(start_index:final_index), NumOfObjs(nProcs-1), MPI_DOUBLE, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,2), ierr ) + + call mpi_irecv( COORD_z(start_index:final_index), NumOfObjs(nProcs-1), MPI_DOUBLE, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,3), ierr ) + + call mpi_irecv( state(start_index:final_index), NumOfObjs(nProcs-1), MPI_DOUBLE, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,4), ierr ) + + call mpi_waitall(4, recv_req(nProcs-1,:), array_of_statuses, ierr) + + end do + do i = 1, sum(NumOfObjs) + x(rootNumOfObjs+i) = COORD_x(i) + y(rootNumOfObjs+i) = COORD_y(i) + z(rootNumOfObjs+i) = COORD_z(i) + scalar(rootNumOfObjs+i) = state(i) + end do + + deallocate( NumOfObjs, COORD_x, COORD_y, COORD_z, state, recv_req ) +#else + allocate( x(rootNumOfObjs), & + y(rootNumOfObjs), & + z(rootNumOfObjs), & + scalar(rootNumOfObjs) ) +#endif + k = 0 + do i = 1, size(ObjectsList) + do j = 1, size(ObjectsList(i)% vertices) + call OBB(STLNum)% ChangeRefFrame(ObjectsList(i)% vertices(j)% coords,GLOBAL,coords) + k = k + 1 + x(k) = coords(1) + y(k) = coords(2) + z(k) = coords(3) + scalar(k) = Rootscalar(i,j) + end do end do - - deallocate( indeces, COORD_x, COORD_y, COORD_z, i_v, j_v, k_v, eID, partition, Bandsend_req ) -#endif - - end subroutine sendBandPointPartition - - - - - - - subroutine recvGeom() - implicit none -#ifdef _HAS_MPI_ - real(kind=rp), dimension(:), allocatable :: Dist, ranks - logical, dimension(:), allocatable :: forcingPoints - integer :: NumOfObjs, Distrecv_req(2), & - ierr, array_of_statuses(MPI_STATUS_SIZE,2) - + end subroutine recvScalarPlotRoot + + subroutine sendScalarPlotRoot( ObjectsList, STLNum, partitionScalar ) + implicit none + + !-arguments------------------------------------------------------------------------- + type(Object_type), intent(in) :: ObjectsList(:) + integer, intent(in) :: STLNum + real(kind=RP), intent(in) :: partitionScalar(:,:) +#ifdef _HAS_MPI_ + !-local-variables------------------------------------------------------------------- + integer :: ierr, i, j, k, NumOfObjs, status(MPI_STATUS_SIZE), & + array_of_statuses(MPI_STATUS_SIZE,4), & + send_Firstreq, send_req(4) + real(kind=RP) :: coords(NDIM) + real(kind=RP), allocatable :: COORD_x(:), COORD_y(:), COORD_z(:), state(:) + if( MPI_Process% isRoot ) return - allocate( Dist(BandPoints_ALL% NumOfObjs), & - ranks(BandPoints_ALL% NumOfObjs) ) - - NumOfObjs = BandPoints_ALL% NumOfObjs - - call mpi_irecv( Dist, NumOfObjs, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, Distrecv_req(1), ierr ) - call mpi_irecv( ranks, NumOfObjs, MPI_DOUBLE, 0, MPI_ANY_TAG, MPI_COMM_WORLD, Distrecv_req(2), ierr ) - - call mpi_waitall(2, Distrecv_req, array_of_statuses, ierr ) + NumOfObjs = 3*size(ObjectsList) + + call mpi_isend( NumOfObjs, 1, MPI_INT, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_Firstreq, ierr ) + + call mpi_wait(send_Firstreq, status, ierr) + + allocate( COORD_x(NumOfObjs), & + COORD_y(NumOfObjs), & + COORD_z(NumOfObjs), & + state(NumOfObjs) ) + + k = 0 + do i = 1, size(ObjectsList) + do j = 1, size(ObjectsList(i)% vertices) + call OBB(STLNum)% ChangeRefFrame(ObjectsList(i)% vertices(j)% coords,GLOBAL,coords) + k = k + 1 + COORD_x(k) = coords(1) + COORD_y(k) = coords(2) + COORD_z(k) = coords(3) + state(k) = partitionScalar(i,j) + end do + end do + + call mpi_isend( COORD_x, NumOfObjs, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(1), ierr ) - BandPoints_ALL% x(:)% Dist = Dist - BandPoints_ALL% x(:)% rank = ranks + call mpi_isend( COORD_y, NumOfObjs, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(2), ierr ) - deallocate( Dist, ranks ) -#endif - - end subroutine recvGeom - + call mpi_isend( COORD_z, NumOfObjs, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(3), ierr ) + + call mpi_isend( state, NumOfObjs, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(4), ierr ) + + call mpi_waitall( 4, send_req, array_of_statuses, ierr ) + + deallocate( COORD_x, COORD_y, COORD_z, state ) +#endif + end subroutine sendScalarPlotRoot - subroutine sendGeom() + + subroutine recvVectorPlotRoot( ObjectsList, STLNum, rootVector, x, y, z, vector_x, vector_y, vector_z ) implicit none + type(Object_type), intent(in) :: ObjectsList(:) + integer, intent(in) :: STLNum + real(kind=RP), intent(in) :: rootVector(:,:,:) + real(kind=RP), allocatable, intent(inout) :: x(:), y(:), z(:), vector_x(:), & + vector_y(:), vector_z(:) + !-local-variables------------------------------------------------------------------- + real(kind=RP) :: coords(NDIM) + integer :: i, j, k, rootNumOfObjs #ifdef _HAS_MPI_ - real(kind=rp), dimension(:), allocatable :: Dist, ranks - logical, dimension(:), allocatable :: forcingPoints - integer, dimension(:,:), allocatable :: ranksend_req - integer :: NumOfObjs, nProcs, & - ierr, array_of_statuses(MPI_STATUS_SIZE,2) - + integer :: ierr, nProcs, rank, ObjsSize, start_index, & + final_index, array_of_statuses(MPI_STATUS_SIZE,6) + integer, allocatable :: recv_req(:,:), recv_Firstreq(:), NumOfObjs(:) + real(kind=RP), allocatable :: COORD_x(:), COORD_y(:), COORD_z(:), state_x(:), & + state_y(:), state_z(:) +#endif if( .not. MPI_Process% isRoot ) return - allocate( ranksend_req(MPI_Process% nProcs-1,2), & - Dist(BandPoints_ALL% NumOfObjs), & - ranks(BandPoints_ALL% NumOfObjs) ) - - Dist = BandPoints_ALL% x(:)% Dist - ranks = BandPoints_ALL% x(:)% rank - NumOfObjs = BandPoints_ALL% NumOfObjs - - do nProcs = 2, MPI_Process% nProcs - call mpi_isend( Dist, NumOfObjs, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - ranksend_req(nProcs-1,1), ierr ) - - call mpi_isend( ranks, NumOfObjs, MPI_DOUBLE, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - ranksend_req(nProcs-1,2), ierr ) + rootNumOfObjs = 3*size(ObjectsList) +#ifdef _HAS_MPI_ + + allocate( NumOfObjs(MPI_Process% nProcs-1), & + recv_Firstreq(MPI_Process% nProcs-1) ) + + NumOfObjs = 0 + + do nProcs = 2, MPI_Process% nProcs - call mpi_waitall(2, ranksend_req(nProcs-1,:), array_of_statuses, ierr ) + call mpi_irecv( ObjsSize, 1, MPI_INT, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_Firstreq(nProcs-1), ierr ) + call mpi_wait( recv_Firstreq(nProcs-1), MPI_STATUS_IGNORE, ierr ) + + NumOfObjs(nProcs-1) = ObjsSize + + end do + + deallocate(recv_Firstreq) + + allocate( x(rootNumOfObjs+sum(NumOfObjs)), & + y(rootNumOfObjs+sum(NumOfObjs)), & + z(rootNumOfObjs+sum(NumOfObjs)), & + vector_x(rootNumOfObjs+sum(NumOfObjs)), & + vector_y(rootNumOfObjs+sum(NumOfObjs)), & + vector_z(rootNumOfObjs+sum(NumOfObjs)), & + COORD_x(sum(NumOfObjs)), & + COORD_y(sum(NumOfObjs)), & + COORD_z(sum(NumOfObjs)), & + state_x(sum(NumOfObjs)), & + state_y(sum(NumOfObjs)), & + state_z(sum(NumOfObjs)), & + recv_req(MPI_Process% nProcs-1,6) ) + + do nProcs = 2, MPI_Process% nProcs + + start_index = sum(NumOfObjs(1:nProcs-2)) + 1 + final_index = (start_index-1) + NumOfObjs(nProcs-1) + + call mpi_irecv( COORD_x(start_index:final_index), NumOfObjs(nProcs-1), MPI_DOUBLE, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,1), ierr ) + call mpi_irecv( COORD_y(start_index:final_index), NumOfObjs(nProcs-1), MPI_DOUBLE, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,2), ierr ) + + call mpi_irecv( COORD_z(start_index:final_index), NumOfObjs(nProcs-1), MPI_DOUBLE, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,3), ierr ) + + call mpi_irecv( state_x(start_index:final_index), NumOfObjs(nProcs-1), MPI_DOUBLE, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,4), ierr ) + + call mpi_irecv( state_y(start_index:final_index), NumOfObjs(nProcs-1), MPI_DOUBLE, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,5), ierr ) + + call mpi_irecv( state_z(start_index:final_index), NumOfObjs(nProcs-1), MPI_DOUBLE, nProcs-1, MPI_ANY_TAG, MPI_COMM_WORLD, recv_req(nProcs-1,6), ierr ) + + call mpi_waitall(6, recv_req(nProcs-1,:), array_of_statuses, ierr) + end do - - deallocate( ranksend_req, Dist, ranks ) -#endif - - end subroutine sendGeom - - - - subroutine recvIP_NearestPoints( IP_NearestPoints ) - - implicit none - !-arguments--------------------------------------------------- - integer, dimension(:,:), intent(inout) :: IP_NearestPoints -#ifdef _HAS_MPI_ - integer, dimension(:), allocatable :: IP_NP - integer :: IP_NPrecv_req(1), index, i, NumOfObjs, & - ierr, array_of_statuses(MPI_STATUS_SIZE,1) - - if( MPI_Process% isRoot ) return - NumOfObjs = size(IP_NearestPoints,1)*size(IP_NearestPoints,2) + do i = 1, sum(NumOfObjs) + x(rootNumOfObjs+i) = COORD_x(i) + y(rootNumOfObjs+i) = COORD_y(i) + z(rootNumOfObjs+i) = COORD_z(i) + vector_x(rootNumOfObjs+i) = state_x(i) + vector_y(rootNumOfObjs+i) = state_y(i) + vector_z(rootNumOfObjs+i) = state_z(i) + end do - allocate( IP_NP(NumOfObjs) ) - - call mpi_irecv( IP_NP, NumOfObjs, MPI_INT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, IP_NPrecv_req(1), ierr ) - - call mpi_waitall(1, IP_NPrecv_req, array_of_statuses, ierr ) - - - do i = 1, size(IP_NearestPoints,2) - index = (i-1)*size(IP_NearestPoints,1) - IP_NearestPoints(:,i) = IP_NP(index+1:index+size(IP_NearestPoints,1)) + deallocate( NumOfObjs, COORD_x, COORD_y, COORD_z, state_x, state_y, state_z, recv_req ) +#else + allocate( x(rootNumOfObjs), & + y(rootNumOfObjs), & + z(rootNumOfObjs), & + vector_x(rootNumOfObjs), & + vector_y(rootNumOfObjs), & + vector_z(rootNumOfObjs) ) +#endif + k = 0 + do i = 1, size(ObjectsList) + do j = 1, size(ObjectsList(i)% vertices) + call OBB(STLNum)% ChangeRefFrame(ObjectsList(i)% vertices(j)% coords,GLOBAL,coords) + k = k + 1 + x(k) = coords(1) + y(k) = coords(2) + z(k) = coords(3) + vector_x(k) = rootVector(1,i,j) + vector_y(k) = rootVector(2,i,j) + vector_z(k) = rootVector(3,i,j) + end do end do - - deallocate( IP_NP ) -#endif - - end subroutine recvIP_NearestPoints - - - subroutine sendIP_NearestPoints( IP_NearestPoints ) - - implicit none - - integer, dimension(:,:), intent(in) :: IP_NearestPoints - !-local-variables--------------------------------------------- + + end subroutine recvVectorPlotRoot + + subroutine sendVectorPlotRoot( ObjectsList, STLNum, partitionVector ) + implicit none + + !-arguments------------------------------------------------------------------------- + type(Object_type), intent(in) :: ObjectsList(:) + integer, intent(in) :: STLNum + real(kind=RP), intent(in) :: partitionVector(:,:,:) #ifdef _HAS_MPI_ - integer, dimension(:), allocatable :: IP_NP - integer, dimension(:,:), allocatable :: IP_NPsend_req - integer :: NumOfObjs, nProcs, i, j, index, & - ierr, array_of_statuses(MPI_STATUS_SIZE,1) - - if( .not. MPI_Process% isRoot ) return + !-local-variables------------------------------------------------------------------- + integer :: ierr, i, j, k, NumOfObjs, status(MPI_STATUS_SIZE), & + array_of_statuses(MPI_STATUS_SIZE,6), & + send_Firstreq, send_req(6) + real(kind=RP) :: coords(NDIM) + real(kind=RP), allocatable :: COORD_x(:), COORD_y(:), COORD_z(:), state_x(:), & + state_y(:), state_z(:) - NumOfObjs = size(IP_NearestPoints,1)*size(IP_NearestPoints,2) + if( MPI_Process% isRoot ) return - allocate( IP_NPsend_req(MPI_Process% nProcs-1,1), & - IP_NP(NumOfObjs) ) - - do i = 1, size(IP_NearestPoints,2) - index = (i-1)*size(IP_NearestPoints,1) - IP_NP(index+1:index+size(IP_NearestPoints,1)) = IP_NearestPoints(:,i) + NumOfObjs = 3*size(ObjectsList) + + call mpi_isend( NumOfObjs, 1, MPI_INT, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_Firstreq, ierr ) + + call mpi_wait(send_Firstreq, status, ierr) + + allocate( COORD_x(NumOfObjs), & + COORD_y(NumOfObjs), & + COORD_z(NumOfObjs), & + state_x(NumOfObjs), & + state_y(NumOfObjs), & + state_z(NumOfObjs) ) + + k = 0 + do i = 1, size(ObjectsList) + do j = 1, size(ObjectsList(i)% vertices) + call OBB(STLNum)% ChangeRefFrame(ObjectsList(i)% vertices(j)% coords,GLOBAL,coords) + k = k + 1 + COORD_x(k) = coords(1) + COORD_y(k) = coords(2) + COORD_z(k) = coords(3) + state_x(k) = partitionVector(1,i,j) + state_y(k) = partitionVector(2,i,j) + state_z(k) = partitionVector(3,i,j) + end do end do + + call mpi_isend( COORD_x, NumOfObjs, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(1), ierr ) - do nProcs = 2, MPI_Process% nProcs - call mpi_isend( IP_NP, NumOfObjs, MPI_INT, nProcs-1, DEFAULT_TAG, MPI_COMM_WORLD, & - IP_NPsend_req(nProcs-1,1), ierr ) - - call mpi_waitall(1, IP_NPsend_req(nProcs-1,:), array_of_statuses, ierr ) - - end do + call mpi_isend( COORD_y, NumOfObjs, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(2), ierr ) - deallocate( IP_NPsend_req, IP_NP ) -#endif - - end subroutine sendIP_NearestPoints - - -end module MPI_IBMUtilities + call mpi_isend( COORD_z, NumOfObjs, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(3), ierr ) + + call mpi_isend( state_x, NumOfObjs, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(4), ierr ) + + call mpi_isend( state_y, NumOfObjs, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(5), ierr ) + + call mpi_isend( state_z, NumOfObjs, MPI_DOUBLE, 0, DEFAULT_TAG, MPI_COMM_WORLD, send_req(6), ierr ) + + call mpi_waitall( 6, send_req, array_of_statuses, ierr ) + + deallocate( COORD_x, COORD_y, COORD_z, state_x, state_y, state_z ) +#endif + end subroutine sendVectorPlotRoot + +end module MPI_IBMUtilities \ No newline at end of file diff --git a/Solver/src/libs/mesh/OrientedBoundingBox.f90 b/Solver/src/libs/mesh/OrientedBoundingBox.f90 index f3134d124..d06c87826 100644 --- a/Solver/src/libs/mesh/OrientedBoundingBox.f90 +++ b/Solver/src/libs/mesh/OrientedBoundingBox.f90 @@ -7,10 +7,10 @@ module OrientedBoundingBox implicit none - integer, parameter :: TASK_THRESHOLD = 10000 + integer, parameter :: TASK_THRESHOLD = 10000, LOCAL = 0, GLOBAL =1 real(kind=RP), parameter :: SAFETY_FACTOR = 0.001_RP - public OBB + public :: OBB, sortReal, ElementOBBintersect, LOCAL, GLOBAL ! ! ************************************************** @@ -21,9 +21,6 @@ module OrientedBoundingBox type(point_type), dimension(:), allocatable :: Points integer :: NumOfPoints - - contains - procedure :: ComputeExtremePoint => Hull_ComputeExtremePoint end type ! @@ -69,8 +66,6 @@ module OrientedBoundingBox procedure :: ChangeRefFrame procedure :: ComputeRotationMatrix procedure :: plot => OBB_plot - procedure :: isInsidePolygon => OBB_isInsidePolygon - end type type(OBB_type), allocatable :: OBB(:) @@ -253,8 +248,6 @@ subroutine OBB_ReadStorePoints( this, stl ) end associate - this% filename = stl% filename - end subroutine OBB_ReadStorePoints ! !///////////////////////////////////////////////////////////////////////////////////////////// @@ -302,34 +295,40 @@ subroutine ChangeRefFrame(this, v, FRAME, vNew) !-arguments---------------------------------------------------- class(OBB_type), intent(inout) :: this real(kind=rp), dimension(:), intent(in) :: v - character(len=*), intent(in) :: FRAME - real(kind=rp), dimension(NDIM), intent(out) :: vNew + integer, intent(in) :: FRAME + real(kind=rp), dimension(NDIM), intent(out) :: vNew !-local-variables---------------------------------------------- real(kind=rp), dimension(NDIM) :: b - real(kind=rp), dimension(NDIM,NDIM) :: R, invR + real(kind=rp), dimension(NDIM,NDIM) :: T, invT - R = 0.0_RP - R(NDIM,NDIM) = 1.0_RP - R(1,1) = cos(this% MBR% Angle); R(2,2) = R(1,1) - R(1,2) = -sin(this% MBR% Angle); R(2,1) = -R(1,2) + T = 0.0_RP + T(NDIM,NDIM) = 1.0_RP + T(1,1) = cos(this% MBR% Angle); T(2,2) = T(1,1) + T(1,2) = sin(this% MBR% Angle); T(2,1) = -T(1,2) - invR(:,1) = R(1,:) - invR(:,2) = R(2,:) - invR(:,3) = R(3,:) + invT(:,1) = T(1,:) + invT(:,2) = T(2,:) + invT(:,3) = T(3,:) - select case( trim(FRAME) ) + select case( FRAME ) - case('local') + case(LOCAL) - b = matmul( this% invR,(v - this% CloudCenter)) +!~ b = matmul( this% invR,(v - this% CloudCenter)) +!~ b(1:2) = b(1:2) - this% MBR% Center +!~ vNew = matmul(invR,b) + b = matmul( this% R,(v - this% CloudCenter)) b(1:2) = b(1:2) - this% MBR% Center - vNew = matmul(invR,b) + vNew = matmul(T,b) - case('global') + case(GLOBAL) - b = matmul(R,v) +!~ b = matmul(R,v) +!~ b(1:2) = b(1:2) + this% MBR% center +!~ vNew = this% CloudCenter + matmul(this% R,b) + b = matmul(invT,v) b(1:2) = b(1:2) + this% MBR% center - vNew = this% CloudCenter + matmul(this% R,b) + vNew = this% CloudCenter + matmul(this% invR,b) end select @@ -348,9 +347,9 @@ subroutine ComputeRotationMatrix( this, u, v, w ) class(OBB_type), intent(inout) :: this real(kind=rp), dimension(NDIM), intent(in) :: u, v, w - this% R(:,1) = (/ u(1), u(2), u(3) /) - this% R(:,2) = (/ v(1), v(2), v(3) /) - this% R(:,3) = (/ w(1), w(2), w(3) /) + this% R(1,:) = (/ u(1), u(2), u(3) /) + this% R(2,:) = (/ v(1), v(2), v(3) /) + this% R(3,:) = (/ w(1), w(2), w(3) /) this% invR(:,1) = this% R(1,:) this% invR(:,2) = this% R(2,:) @@ -363,14 +362,14 @@ end subroutine ComputeRotationMatrix ! ------------------------------------------------- ! This subroutine computes the Oriented Bounding Box. ! ------------------------------------------------- - subroutine OBB_construct( this, stl, isPlot ) + subroutine OBB_construct( this, stl, isPlot, AAB ) implicit none - !-arguments------------------------------- + !-arguments----------------------------------- class(OBB_type), intent(inout) :: this type(STLfile), intent(in) :: stl - logical, intent(in) :: isPlot - !-local-variables------------------------- + logical, intent(in) :: isPlot, AAB + !-local-variables----------------------------- type(Hull_type) :: Hull real(kind=rp) :: EigenVal integer :: i @@ -383,11 +382,16 @@ subroutine OBB_construct( this, stl, isPlot ) ! --------------------------------- this% CloudCenter = ComputeCentroid( this ) + if( AAB ) then + this% MBR% t1 = (/ 1.0_RP, 0.0_RP, 0.0_RP /) + this% MBR% t2 = (/ 0.0_RP, 1.0_RP, 0.0_RP /) + this% MBR% normal = (/ 0.0_RP, 0.0_RP, 1.0_RP /) + else ! -! Diagonalization of the cloud -! ------------------------- - call PointsCloudDiagonalization( this, EigenVal, this% MBR% t1, this% MBR% t2, this% MBR% normal ) - +! Diagonalization of the cloud +! ------------------------- + call PointsCloudDiagonalization( this, EigenVal, this% MBR% t1, this% MBR% t2, this% MBR% normal ) + end if ! ! Computing rotation matrix ! ------------------------ @@ -406,7 +410,7 @@ subroutine OBB_construct( this, stl, isPlot ) ! ! Minimum Bounding Rectangle ! --------------------------- - call RotatingCalipers( Hull, this% MBR% Width, this% MBR% Length, this% MBR% Angle, this% MBR% Center ) + call RotatingCalipers( Hull, this% MBR% Width, this% MBR% Length, this% MBR% Angle, this% MBR% Center, AAB ) ! ! Setting vertices of the MBR @@ -420,6 +424,7 @@ subroutine OBB_construct( this, stl, isPlot ) if( isPlot ) call this% plot() + if(allocated(this% HullPoints)) deallocate(this% HullPoints) allocate( this% HullPoints(Hull% NumOfPoints) ) do i = 1, Hull% NumOfPoints @@ -476,25 +481,25 @@ subroutine OBB_ComputeAngle( this, LowestIndex ) integer, intent(in) :: LowestIndex !-local-variables-------------------- real(kind=rp), dimension(NDIM) :: v - integer :: i -! -! had point is always the first, thus it has the lower possible angle, i.e. theta < 0 -! ---------------------------------------------------------------------- + integer :: i -!$omp parallel shared(this, LowestIndex) -!$omp do schedule(runtime) private(i,v) +!$omp parallel shared(this, LowestIndex,i) +!$omp do schedule(runtime) private(v) do i = 1, this% NumOfPoints if( i .eq. LowestIndex ) then this% Points(i)% theta = -2.0_RP cycle end if v = this% Points(i)% coords-this% Points(LowestIndex)% coords + if( almostEqual(norm2(v(1:2)),0.0_RP) ) then + this% Points(i)% theta = -1.0_RP + cycle + end if this% Points(i)% theta = acos(v(1)/norm2(v(1:2))) - if( almostEqual(norm2(v(1:2)), 0.0_RP) ) this% Points(i)% theta = -1.0_RP end do !$omp end do !$omp end parallel - + end subroutine OBB_ComputeAngle ! !///////////////////////////////////////////////////////////////////////////////////////////// @@ -503,11 +508,10 @@ end subroutine OBB_ComputeAngle ! This function returns the index of the left most point of a cloud. ! ------------------------------------------------------------------ - subroutine Hull_ComputeExtremePoint( this, OBB, LowestIndex ) + subroutine ComputeHullExtremePoint( OBB, LowestIndex ) implicit none !-arguments------------------------ - class(Hull_type), intent(inout) :: this class(OBB_type), intent(inout) :: OBB integer, intent(out) :: LowestIndex !-local-variables-------------------- @@ -528,7 +532,7 @@ subroutine Hull_ComputeExtremePoint( this, OBB, LowestIndex ) LowestIndex = LowestPoint% index - end subroutine Hull_ComputeExtremePoint + end subroutine ComputeHullExtremePoint ! !///////////////////////////////////////////////////////////////////////////////////////////// ! @@ -601,25 +605,69 @@ recursive subroutine sort( a, b, coordx, coordy, coordz, left, right ) end do left_cycle = (i-1)-left - right_cycle = right-(j+1) - -!~ if( left .lt. i-1 ) then + right_cycle = right-(j+1) !$omp task shared(a,b,coordx,coordy,coordz,left,i) if(left_cycle > TASK_THRESHOLD) - call sort( a, b, coordx, coordy, coordz, left, i-1 ) + call sort( a, b, coordx, coordy, coordz, left, i-1 ) !$omp end task -!~ !$omp taskwait -!~ end if -!~ if( j+1 .lt. right ) then + !$omp task shared(a,b,coordx,coordy,coordz,j,right) if(right_cycle > TASK_THRESHOLD) call sort( a, b, coordx, coordy, coordz, j+1, right ) !$omp end task !$omp taskwait -!~ end if end subroutine sort ! !///////////////////////////////////////////////////////////////////////////////////////////// ! ! ------------------------------------------------- +! This subroutine sort the elements of a from the lowest to the grates. b saves the old indeces. +! ------------------------------------------------ + recursive subroutine sortReal(a, left, right) + + implicit none + !-arguments------------------------------------------------- + real(kind=rp), dimension(:), intent(inout) :: a + integer, intent(in) :: left, right + !-local-variables------------------------------------------- + real(kind=rp) :: x, t + integer :: i, j, left_cycle, right_cycle + + if( left .ge. right ) return + + x = a( (left + right)/2 ) + + i = left; j = right + + do + do while( a(i) .lt. x ) + i = i+1 + end do + do while( x .lt. a(j) ) + j = j-1 + end do + if( i .ge. j ) exit + t = a(i); a(i) = a(j); a(j) = t + i = i+1 + j = j-1 + end do + + left_cycle = (i-1)-left + right_cycle = right-(j+1) + +!$omp task shared(a,left,i) if(left_cycle > TASK_THRESHOLD) + call sortReal( a, left, i-1 ) +!$omp end task + +!$omp task shared(a,j,right) if(right_cycle > TASK_THRESHOLD) + call sortReal( a, j+1, right ) +!$omp end task +!$omp taskwait + + end subroutine sortReal + +! +!///////////////////////////////////////////////////////////////////////////////////////////// +! +! ------------------------------------------------- ! This function computes the Centroid of the points cloud. ! ------------------------------------------------- @@ -744,11 +792,10 @@ subroutine ConvexHull( Hull, OBB ) type(point_type) ,pointer :: p, p1 integer :: i, LowestIndex, start type(PointLinkedList) :: convPoints - ! ! Compute Left most point & set Hull's head ! ----------------------------------------- - call Hull% ComputeExtremePoint( OBB, LowestIndex ) + call ComputeHullExtremePoint( OBB, LowestIndex ) ! ! Compute the angles @@ -766,7 +813,7 @@ subroutine ConvexHull( Hull, OBB ) !Check duplicate if( almostEqual(OBB% Points(1)% coords(1), OBB% Points(2)% coords(1)) .and. & almostEqual(OBB% Points(1)% coords(2), OBB% Points(2)% coords(2)) ) OBB% Points(2)% delete = .true. - + do i = 2, OBB% NumOfPoints if( .not. OBB% Points(i)% delete ) then call convPoints% add( OBB% Points(i) ) @@ -795,14 +842,14 @@ subroutine ConvexHull( Hull, OBB ) allocate(Hull% Points(Hull% NumOfPoints)) p => convPoints% head - + do i = 1, Hull% NumOfPoints Hull% Points(i) = p p => p% next end do - + call convPoints% destruct() - + end subroutine ConvexHull ! !///////////////////////////////////////////////////////////////////////////////////////////// @@ -901,81 +948,84 @@ real(kind=rp) function ComputeWidth( p1, p2, p3 ) result( width ) ! --------------------- width = norm2( p3% coords(1:2) - vec(1:2) ) - end function ComputeWidth + end function ComputeWidth ! !///////////////////////////////////////////////////////////////////////////////////////////// ! ! ------------------------------------------------- ! This subroutine computes the rotating calipers method. ! ------------------------------------------------- - subroutine RotatingCalipers( Hull, rectWidth, rectLength, rectAngle, rectCenter ) + subroutine RotatingCalipers( Hull, rectWidth, rectLength, rectAngle, rectCenter, AAB ) implicit none !-arguments----------------------------------------------------------------- type(Hull_type), intent(inout) :: Hull real(kind=rp), dimension(:), intent(out) :: rectCenter real(kind=rp), intent(out) :: rectWidth, rectLength, rectAngle + logical, intent(in) :: AAB !-local-variables------------------------------------------------------------- real(kind=rp), dimension(NDIM-1) :: Caliper1, Caliper2, v1, v2, PointMin, PointMax integer, dimension(1) :: loc, MinIndex, MaxIndex real(kind=rp) :: RotAngle, width, minwidth, theta1, theta2, dtheta real(kind=rp), dimension(Hull% NumOfPoints) :: x, y integer :: indexMin1, indexMin2, indexMax1, indexMax2 -! -! Initialization -! ------------ - minwidth = huge(1.0_RP); rectAngle = 0.0_RP; RotAngle = 0.0_RP -! -! Initializing caliper -! ---------------- - Caliper1 = (/ 1.0_RP, 0.0_RP/) - Caliper2 = (/ -1.0_RP, 0.0_RP/) + + if( AAB ) then + rectAngle = 0.0_RP + else + + minwidth = huge(1.0_RP); rectAngle = 0.0_RP; RotAngle = 0.0_RP + + Caliper1 = (/ 1.0_RP, 0.0_RP/) + Caliper2 = (/ -1.0_RP, 0.0_RP/) - MinIndex = minloc(Hull% Points(:)% coords(2)) - MaxIndex = maxloc(Hull% Points(:)% coords(2)) + MinIndex = minloc(Hull% Points(:)% coords(2)) + MaxIndex = maxloc(Hull% Points(:)% coords(2)) - indexMin1 = MinIndex(1); indexMax1 = MaxIndex(1) + indexMin1 = MinIndex(1); indexMax1 = MaxIndex(1) - do while( RotAngle .lt. PI ) + do while( RotAngle .lt. PI ) - indexMin2 = mod(indexMin1, Hull% NumOfPoints) + 1 - indexMax2 = mod(indexMax1, Hull% NumOfPoints) + 1 + indexMin2 = mod(indexMin1, Hull% NumOfPoints) + 1 + indexMax2 = mod(indexMax1, Hull% NumOfPoints) + 1 ! -! Looping Counterclockwise from y-min point (p1) -! and from y-max point (p2). -! ------------------------------------------- - v1 = Hull% Points(indexMin2)% coords(1:2) - Hull% Points(indexMin1)% coords(1:2) - v2 = Hull% Points(indexMax2)% coords(1:2) - Hull% Points(indexMax1)% coords(1:2) +! Looping Counterclockwise from y-min point (p1) +! and from y-max point (p2). +! ------------------------------------------- + v1 = Hull% Points(indexMin2)% coords(1:2) - Hull% Points(indexMin1)% coords(1:2) + v2 = Hull% Points(indexMax2)% coords(1:2) - Hull% Points(indexMax1)% coords(1:2) ! -! Computing the angles between calipers and vectors v1,v2 -! --------------------------------------------------- - theta1 = ComputingAngle( Caliper1, v1 ) - theta2 = ComputingAngle( Caliper2, v2 ) - - dtheta = min(theta1,theta2) - loc = minloc((/ theta1,theta2 /)) - call RotateVector(Caliper1, dtheta) - call RotateVector(Caliper2, dtheta) - - RotAngle = RotAngle + dtheta +! Computing the angles between calipers and vectors v1,v2 +! --------------------------------------------------- + theta1 = ComputingAngle( Caliper1, v1 ) + theta2 = ComputingAngle( Caliper2, v2 ) + + dtheta = min(theta1,theta2) + loc = minloc((/ theta1,theta2 /)) + call RotateVector(Caliper1, dtheta) + call RotateVector(Caliper2, dtheta) + + RotAngle = RotAngle + dtheta - if( loc(1) .eq. 1 ) then - width = ComputeWidth( Hull% Points(indexMin1), Hull% Points(indexMin2), Hull% Points(indexMax1) ) - indexMin1 = mod(indexMin1, Hull% NumOfPoints) + 1 - else - width = ComputeWidth( Hull% Points(indexMax1), Hull% Points(indexMax2), Hull% Points(indexMin1) ) - indexMax1 = mod(indexMax1, Hull% NumOfPoints) + 1 - end if + if( loc(1) .eq. 1 ) then + width = ComputeWidth( Hull% Points(indexMin1), Hull% Points(indexMin2), Hull% Points(indexMax1) ) + indexMin1 = mod(indexMin1, Hull% NumOfPoints) + 1 + else + width = ComputeWidth( Hull% Points(indexMax1), Hull% Points(indexMax2), Hull% Points(indexMin1) ) + indexMax1 = mod(indexMax1, Hull% NumOfPoints) + 1 + end if - if( width .lt. minwidth ) then - minwidth = width - rectAngle = RotAngle - end if + if( width .lt. minwidth ) then + minwidth = width + rectAngle = RotAngle + end if - end do + end do + end if + rectCenter(1) = sum(Hull% Points(:)% coords(1))/Hull% NumOfPoints rectCenter(2) = sum(Hull% Points(:)% coords(2))/Hull% NumOfPoints @@ -1035,15 +1085,15 @@ subroutine ExtrudeMBR( OBB ) ! --------- do i = 1, 4 - call OBB% ChangeRefFrame((/ OBB% MBR% vertices(1,i), OBB% MBR% vertices(2,i), OBB% nMin /), 'global', OBB% vertices(:,i) ) - call OBB% ChangeRefFrame((/ OBB% MBR% vertices(1,i), OBB% MBR% vertices(2,i), OBB% nMax /), 'global', OBB% vertices(:,i+4) ) + call OBB% ChangeRefFrame((/ OBB% MBR% vertices(1,i), OBB% MBR% vertices(2,i), OBB% nMin /), GLOBAL, OBB% vertices(:,i) ) + call OBB% ChangeRefFrame((/ OBB% MBR% vertices(1,i), OBB% MBR% vertices(2,i), OBB% nMax /), GLOBAL, OBB% vertices(:,i+4) ) OBB% LocVertices(:,i) = (/ OBB% MBR% vertices(:,i), OBB% nMin /) OBB% LocVertices(:,i+4) = (/ OBB% MBR% vertices(:,i), OBB% nMax /) end do OBB% LocFrameCenter = OBB% CloudCenter + matmul(OBB% R, (/ OBB% MBR% Center,0.0_RP/)) - end subroutine ExtrudeMBR + end subroutine ExtrudeMBR ! !///////////////////////////////////////////////////////////////////////////////////////////// ! @@ -1070,36 +1120,37 @@ function OBB_isPointInside( this, coords, coeff ) result( isInsideOBB ) Multcoeff = 1.0_RP end if - call this% ChangeRefFrame(coords, 'local', Point) + call this% ChangeRefFrame(coords, LOCAL, Point) isInsideOBB = .false. - !check x y z - if( isInsideBox(Point, Multcoeff*this% LocVertices) ) isInsideOBB = .true. - + !check x y z + if( isInsideBox(Point, Multcoeff*this% LocVertices) ) isInsideOBB = .true. + end function OBB_isPointInside - subroutine OBB_ChangeObjsRefFrame( this, objs ) + subroutine OBB_ChangeObjsRefFrame( this, objs, FRAME ) implicit none !-arguments--------------------------------------------- - class(OBB_type), intent(inout) :: this - type(Object_type), dimension(:), intent(inout) :: objs + class(OBB_type), intent(inout) :: this + type(Object_type), intent(inout) :: objs(:) + integer, intent(in) :: FRAME !-local-variables--------------------------------------- integer :: i, j -!$omp parallel shared(this,objs,i) + +!$omp parallel !$omp do schedule(runtime) private(j) do i = 1, size(objs) do j = 1, size(objs(i)% vertices) - call this% ChangeRefFrame( objs(i)% vertices(j)% coords, 'local', objs(i)% vertices(j)% coords ) + call this% ChangeRefFrame( objs(i)% vertices(j)% coords, FRAME, objs(i)% vertices(j)% coords ) end do end do !$omp end do !$omp end parallel - end subroutine OBB_ChangeObjsRefFrame - + end subroutine OBB_ChangeObjsRefFrame subroutine OBB_STL_rotate( this, stl ) @@ -1110,18 +1161,14 @@ subroutine OBB_STL_rotate( this, stl ) !-local-variables----------------------- real(kind=RP) :: meanCoords(NDIM), meanCoordsNew(NDIM), shiftVec(NDIM) integer :: i, j, NumOfPoints - - meanCoords = 0.0_RP; meanCoordsNew = 0.0_RP; NumOfPoints = 0 - -!$omp parallel shared(this,stl,meanCoords,meanCoordsNew,NumOfPoints,i) + + NumOfPoints = 3*stl% NumOfObjs; meanCoordsNew = 0.0_RP; meanCoords = 0.0_RP +!$omp parallel !$omp do schedule(runtime) private(j) do i = 1, stl% NumOfObjs - do j = 1, size(stl% ObjectsList(i)% vertices) - call this% ChangeRefFrame( stl% ObjectsList(i)% vertices(j)% coords, 'global', & - stl% ObjectsList(i)% vertices(j)% coords ) + do j = 1, stl% ObjectsList(i)% NumOfVertices !$omp critical meanCoords = meanCoords + stl% ObjectsList(i)% vertices(j)% coords - NumOfPoints = NumOfPoints + 1 !$omp end critical stl% ObjectsList(i)% vertices(j)% coords = matmul( stl% rotationMatrix, stl% ObjectsList(i)% vertices(j)% coords ) !$omp critical @@ -1135,15 +1182,15 @@ subroutine OBB_STL_rotate( this, stl ) meanCoords = meanCoords/NumOfPoints; meanCoordsNew = meanCoordsNew/NumOfPoints shiftVec = meanCoordsNew - meanCoords -!$omp parallel shared(i,shiftVec) -!$omp do schedule(runtime) private(j) - do i = 1, stl% NumOfObjs - do j = 1, size(stl% ObjectsList(j)% vertices) +!!$omp parallel +!!$omp do schedule(runtime) private(j) + do i = 1, stl% NumOfObjs + do j = 1, stl% ObjectsList(i)% NumOfVertices stl% ObjectsList(i)% vertices(j)% coords = stl% ObjectsList(i)% vertices(j)% coords - shiftVec end do end do -!$omp end do -!$omp end parallel +!!$omp end do +!!$omp end parallel end subroutine OBB_STL_rotate subroutine OBB_STL_translate( this, stl ) @@ -1162,8 +1209,6 @@ subroutine OBB_STL_translate( this, stl ) !$omp do schedule(runtime) private(j) do i = 1, stl% NumOfObjs do j = 1, size(stl% ObjectsList(i)% vertices) - call this% ChangeRefFrame( stl% ObjectsList(i)% vertices(j)% coords, 'global', & - stl% ObjectsList(i)% vertices(j)% coords ) stl% ObjectsList(i)% vertices(j)% coords(stl% motionAxis) = stl% ObjectsList(i)% vertices(j)% coords(stl% motionAxis) + stl% ds !$omp critical meanCoords = meanCoords + stl% ObjectsList(i)% vertices(j)% coords @@ -1194,113 +1239,48 @@ logical function isInsideBox( Point, vertices, equal ) result( isInside ) optional :: equal isInside = .false. - - if( present(equal) .and. .not. equal ) then - if( (Point(1) > vertices(1,1) .and. Point(1) < vertices(1,7)) .and. & - (Point(2) > vertices(2,1) .and. Point(2) < vertices(2,7)) .and. & - (Point(3) > vertices(3,1) .and. Point(3) < vertices(3,7)) ) then - isInside = .true. - end if - return + + if( present(equal) ) then + if( .not. equal ) then + if( (Point(1) > vertices(1,1) .and. Point(1) < vertices(1,7)) .and. & + (Point(2) > vertices(2,1) .and. Point(2) < vertices(2,7)) .and. & + (Point(3) > vertices(3,1) .and. Point(3) < vertices(3,7)) ) then + isInside = .true. + end if + return + end if end if - + if( (Point(1) >= vertices(1,1) .and. Point(1) <= vertices(1,7)) .and. & (Point(2) >= vertices(2,1) .and. Point(2) <= vertices(2,7)) .and. & (Point(3) >= vertices(3,1) .and. Point(3) <= vertices(3,7)) ) isInside = .true. end function isInsideBox + logical function ElementOBBintersect( corners, coeff, STLNum ) result( intersect ) - - logical function OBB_isInsidePolygon( OBB, Point ) result( isInside ) - use MappedGeometryClass implicit none - - class(OBB_type), intent(inout) :: OBB - real(kind=rp), dimension(:), intent(in) :: Point - !-local-variables------------------------------------------ - real(kind=rp) :: d(NDIM), coords(NDIM), v1(NDIM-1), v2(NDIM-1), & - v3(NDIM-1), v4(NDIM-1), length, N_Point - logical :: Intersection - integer :: NumOfIntersections, i - real(kind=rp), parameter :: coeff = 1.15_RP - - d = Point - OBB% CloudCenter - N_Point = vdot( d, OBB% MBR% normal ) - coords = (/ vdot(d, OBB% MBR% t1), vdot(d, OBB% MBR% t2), 0.0_RP /) - - length = maxval(abs(OBB% HullPoints(:)% coords(1))) - - v1 = coords(1:2) - v2 = coords(1:2); v2(1) = v2(1) + 1000_RP*length - - NumOfIntersections = 0 + !-arguments---------------------------------------------- + real(kind=RP), intent(in) :: corners(NDIM,8), coeff + integer, intent(in) :: STLNum + !-local-variables---------------------------------- + real(kind=RP) :: Loccorners(NDIM,8), LocVertices(NDIM,8) + integer :: i - do i = 1, size(OBB% HullPoints)-1 - - v3 = OBB% HullPoints(i+1)% coords(1:NDIM-1) - v4 = OBB% HullPoints(i)% coords(1:NDIM-1) - - Intersection = TwoD_RayTracing( v1, v2, coeff*v3, coeff*v4 ) - - if( Intersection ) NumOfIntersections = NumOfIntersections + 1 - - end do - - if( mod(NumOfIntersections,2) .eq. 0 ) then - isInside = .false. - else - isInside = .true. - end if - - if( N_Point .gt. coeff*OBB% nMax .or. N_Point .lt. coeff*OBB% nMin ) then - isInside = .false. - end if - - end function OBB_isInsidePolygon - - - logical function TwoD_RayTracing( v1, v2, v3, v4 ) result( Intersection ) - - implicit none - !-arguments-------------------------------------------------------- - real(kind=rp), dimension(NDIM-1), intent(in) :: v1, v2, v3, v4 - !-local-varirables------------------------------------------------ - real(kind=rp) :: a1, a2, b1, b2, c1, c2, d1, d2 - - Intersection = .false. - - a1 = v2(2) - v1(2) - b1 = v1(1) - v2(1) - c1 = (v2(1)*v1(2)) - (v1(1)*v2(2)) - - d1 = a1*v3(1) + b1*v3(2) + c1 - d2 = a1*v4(1) + b1*v4(2) + c1 - - if( d1 * d2 > 0.0_RP ) then - Intersection = .false. - return - end if + intersect = .false. - a2 = v4(2) - v3(2) - b2 = v3(1) - v4(1) - c2 = (v4(1)*v3(2)) - (v3(1)*v4(2)) + do i = 1, 8 + call OBB(STLNum)% ChangeRefFrame(corners(:,i),LOCAL,Loccorners(:,i)) + end do - d1 = a2*v1(1) + b2*v1(2) + c2 - d2 = a2*v2(1) + b2*v2(2) + c2 - - if( d1 * d2 > 0.0_RP ) then - Intersection = .false. - return - end if - - if( AlmostEqual( ((a1*b2) - (a2*b1)) ,0.0_RP) )then - Intersection = .false. - return + LocVertices = coeff*OBB(STLNum)% LocVertices + + if( (maxval(Loccorners(1,:)) >= minval(LocVertices(1,:)) .and. maxval(LocVertices(1,:)) >= minval(Loccorners(1,:)) ) .and. & + (maxval(Loccorners(2,:)) >= minval(LocVertices(2,:)) .and. maxval(LocVertices(2,:)) >= minval(Loccorners(2,:)) ) .and. & + (maxval(Loccorners(3,:)) >= minval(LocVertices(3,:)) .and. maxval(LocVertices(3,:)) >= minval(Loccorners(3,:)) ) ) then + intersect = .true. end if - - Intersection = .true. - - end function TwoD_RayTracing -end module OrientedBoundingBox + end function ElementOBBintersect + +end module OrientedBoundingBox \ No newline at end of file diff --git a/Solver/src/libs/monitors/Monitors.f90 b/Solver/src/libs/monitors/Monitors.f90 index c953b9d02..f20d93404 100644 --- a/Solver/src/libs/monitors/Monitors.f90 +++ b/Solver/src/libs/monitors/Monitors.f90 @@ -317,7 +317,7 @@ subroutine Monitor_WriteValues ( self ) ! Print surface monitors ! ---------------------- do i = 1 , self % no_of_surfaceMonitors - call self % surfaceMonitors(i) % WriteValues ( self % bufferLine ) + if( .not. self % surfaceMonitors(i) % IBM ) call self % surfaceMonitors(i) % WriteValues ( self % bufferLine ) end do call self % stats % WriteValue @@ -337,7 +337,7 @@ subroutine Monitor_WriteValues ( self ) end subroutine Monitor_WriteValues - subroutine Monitor_UpdateValues ( self, mesh, t , iter, maxResiduals ) + subroutine Monitor_UpdateValues ( self, mesh, t , iter, maxResiduals, Autosave ) ! ! *************************************************************** ! This subroutine updates the values for the residuals, @@ -352,6 +352,7 @@ subroutine Monitor_UpdateValues ( self, mesh, t , iter, maxResiduals ) real(kind=RP) :: t integer :: iter real(kind=RP) :: maxResiduals(NCONS) + logical :: Autosave ! ! --------------- ! Local variables @@ -394,7 +395,13 @@ subroutine Monitor_UpdateValues ( self, mesh, t , iter, maxResiduals ) ! Update surface monitors ! ----------------------- do i = 1 , self % no_of_surfaceMonitors - call self % surfaceMonitors(i) % Update( mesh , self % bufferLine ) + if( self% surfaceMonitors(i)% IBM ) then + if( Autosave ) then + call self % surfaceMonitors(i) % Update( mesh , self % bufferLine, iter, t ) + end if + else + call self % surfaceMonitors(i) % Update( mesh , self % bufferLine, iter ) + endif end do ! ! Update statistics @@ -489,7 +496,7 @@ subroutine Monitor_WriteToFile ( self , mesh, force) #if defined(NAVIERSTOKES) do i = 1 , self % no_of_surfaceMonitors - call self % surfaceMonitors(i) % WriteToFile ( self % iter , self % t , self % bufferLine ) + if( .not. self % surfaceMonitors(i) % IBM ) call self % surfaceMonitors(i) % WriteToFile ( self % iter , self % t , self % bufferLine ) end do #endif ! diff --git a/Solver/src/libs/monitors/SurfaceIntegrals.f90 b/Solver/src/libs/monitors/SurfaceIntegrals.f90 index 030132880..4a75f346d 100644 --- a/Solver/src/libs/monitors/SurfaceIntegrals.f90 +++ b/Solver/src/libs/monitors/SurfaceIntegrals.f90 @@ -13,9 +13,9 @@ module SurfaceIntegrals use mpi #endif implicit none - + private - public SURFACE, TOTAL_FORCE, PRESSURE_FORCE, VISCOUS_FORCE, MASS_FLOW, FLOW_RATE + public SURFACE, TOTAL_FORCE, PRESSURE_FORCE, VISCOUS_FORCE, MASS_FLOW, FLOW_RATE, PRESSURE_DISTRIBUTION public ScalarSurfaceIntegral, VectorSurfaceIntegral, ScalarDataReconstruction, VectorDataReconstruction integer, parameter :: SURFACE = 1 @@ -24,6 +24,7 @@ module SurfaceIntegrals integer, parameter :: VISCOUS_FORCE = 4 integer, parameter :: MASS_FLOW = 5 integer, parameter :: FLOW_RATE = 6 + integer, parameter :: PRESSURE_DISTRIBUTION = 7 integer, parameter :: USER_DEFINED = 99 ! ! ======== @@ -36,7 +37,7 @@ module SurfaceIntegrals ! !//////////////////////////////////////////////////////////////////////////////////////// ! - function ScalarSurfaceIntegral(mesh, zoneID, integralType) result(val) + function ScalarSurfaceIntegral(mesh, zoneID, integralType, iter) result(val) ! ! ----------------------------------------------------------- ! This function computes scalar integrals, that is, those @@ -51,19 +52,19 @@ function ScalarSurfaceIntegral(mesh, zoneID, integralType) result(val) implicit none class(HexMesh), intent(inout), target :: mesh integer, intent(in) :: zoneID - integer, intent(in) :: integralType + integer, intent(in) :: integralType, iter real(kind=RP) :: val, localval ! ! --------------- ! Local variables ! --------------- ! - integer :: zonefID, fID, eID, fIDs(6), ierr + integer :: zonefID, fID, eID, fIDs(6), ierr class(Element), pointer :: elements(:) ! ! Initialization -! -------------- - val = 0.0_RP +! -------------- + val = 0.0_RP ! ! Loop the zone to get faces and elements ! --------------------------------------- @@ -99,7 +100,7 @@ function ScalarSurfaceIntegral(mesh, zoneID, integralType) result(val) ! Loop the zone to get faces and elements ! --------------------------------------- !$omp do private(fID) reduction(+:val) schedule(runtime) - do zonefID = 1, mesh % zones(zoneID) % no_of_faces + do zonefID = 1, mesh % zones(zoneID) % no_of_faces ! ! Face global ID ! -------------- @@ -159,7 +160,7 @@ function ScalarSurfaceIntegral_Face(f, integralType) result(val) ! ! *********************************** ! Computes the mass-flow integral -! I = \int rho \vec{v}·\vec{n}dS +! I = \int rho \vec{v}·\vec{n}dS ! *********************************** ! do j = 0, f % Nf(2) ; do i = 0, f % Nf(1) @@ -173,11 +174,11 @@ function ScalarSurfaceIntegral_Face(f, integralType) result(val) end do ; end do - case ( FLOW_RATE ) + case ( FLOW_RATE ) ! ! *********************************** ! Computes the flow integral -! val = \int \vec{v}·\vec{n}dS +! val = \int \vec{v}·\vec{n}dS ! *********************************** ! do j = 0, f % Nf(2) ; do i = 0, f % Nf(1) @@ -187,14 +188,14 @@ function ScalarSurfaceIntegral_Face(f, integralType) result(val) val = val + (1.0_RP / Q(IRHO,i,j))*(Q(IRHOU,i,j) * f % geom % normal(1,i,j) & + Q(IRHOV,i,j) * f % geom % normal(2,i,j) & + Q(IRHOW,i,j) * f % geom % normal(3,i,j) ) & - * spAxi % w(i) * spAeta % w(j) * f % geom % jacobian(i,j) + * spAxi % w(i) * spAeta % w(j) * f % geom % jacobian(i,j) end do ; end do case ( PRESSURE_FORCE ) ! ! *********************************** ! Computes the pressure integral -! val = \int pdS +! val = \int pdS ! *********************************** ! do j = 0, f % Nf(2) ; do i = 0, f % Nf(1) @@ -202,14 +203,14 @@ function ScalarSurfaceIntegral_Face(f, integralType) result(val) ! Compute the integral ! -------------------- p = Pressure(Q(:,i,j)) - val = val + p * spAxi % w(i) * spAeta % w(j) * f % geom % jacobian(i,j) + val = val + p * spAxi % w(i) * spAeta % w(j) * f % geom % jacobian(i,j) end do ; end do - case ( USER_DEFINED ) ! TODO + case ( USER_DEFINED ) end select end associate - + nullify (spAxi, spAeta) end function ScalarSurfaceIntegral_Face ! @@ -219,7 +220,7 @@ end function ScalarSurfaceIntegral_Face ! !//////////////////////////////////////////////////////////////////////////////////////// ! - function VectorSurfaceIntegral(mesh, zoneID, integralType) result(val) + function VectorSurfaceIntegral(mesh, zoneID, integralType, iter) result(val) ! ! ----------------------------------------------------------- ! This function computes scalar integrals, that is, those @@ -235,9 +236,9 @@ function VectorSurfaceIntegral(mesh, zoneID, integralType) result(val) use mpi #endif implicit none - class(HexMesh), intent(inout), target :: mesh + class(HexMesh), intent(inout), target :: mesh integer, intent(in) :: zoneID - integer, intent(in) :: integralType + integer, intent(in) :: integralType, iter real(kind=RP) :: val(NDIM) real(kind=RP) :: localVal(NDIM) real(kind=RP) :: valx, valy, valz @@ -250,11 +251,11 @@ function VectorSurfaceIntegral(mesh, zoneID, integralType) result(val) class(Element), pointer :: elements(:) ! ! Initialization -! -------------- +! -------------- val = 0.0_RP valx = 0.0_RP valy = 0.0_RP - valz = 0.0_RP + valz = 0.0_RP ! ! ************************* ! Perform the interpolation @@ -292,7 +293,7 @@ function VectorSurfaceIntegral(mesh, zoneID, integralType) result(val) ! Loop the zone to get faces and elements ! --------------------------------------- !$omp do private(fID,localVal) reduction(+:valx,valy,valz) schedule(runtime) - do zonefID = 1, mesh % zones(zoneID) % no_of_faces + do zonefID = 1, mesh % zones(zoneID) % no_of_faces ! ! Face global ID ! -------------- @@ -343,7 +344,7 @@ function VectorSurfaceIntegral_Face(f, integralType) result(val) associate( Q => f % storage(1) % Q, & U_x => f % storage(1) % U_x, & U_y => f % storage(1) % U_y, & - U_z => f % storage(1) % U_z ) + U_z => f % storage(1) % U_z ) select case ( integralType ) case ( SURFACE ) ! @@ -360,8 +361,8 @@ function VectorSurfaceIntegral_Face(f, integralType) result(val) case ( TOTAL_FORCE ) ! ! ************************************************ -! Computes the total force experienced by the zone -! F = \int p \vec{n}ds - \int tau'·\vec{n}ds +! Computes the total force experienced by the zone +! F = \int p \vec{n}ds - \int tau'·\vec{n}ds ! ************************************************ ! do j = 0, f % Nf(2) ; do i = 0, f % Nf(1) @@ -376,11 +377,11 @@ function VectorSurfaceIntegral_Face(f, integralType) result(val) end do ; end do - case ( PRESSURE_FORCE ) + case ( PRESSURE_FORCE ) ! ! **************************************************** -! Computes the pressure forces experienced by the zone -! F = \int p \vec{n}ds +! Computes the pressure forces experienced by the zone +! F = \int p \vec{n}ds ! **************************************************** ! do j = 0, f % Nf(2) ; do i = 0, f % Nf(1) @@ -394,11 +395,11 @@ function VectorSurfaceIntegral_Face(f, integralType) result(val) end do ; end do - case ( VISCOUS_FORCE ) + case ( VISCOUS_FORCE ) ! ! ************************************************ -! Computes the total force experienced by the zone -! F = - \int tau'·\vec{n}ds +! Computes the total force experienced by the zone +! F = - \int tau'·\vec{n}ds ! ************************************************ ! do j = 0, f % Nf(2) ; do i = 0, f % Nf(1) @@ -411,13 +412,13 @@ function VectorSurfaceIntegral_Face(f, integralType) result(val) end do ; end do - case ( USER_DEFINED ) ! TODO + case ( USER_DEFINED ) end select end associate nullify (spAxi, spAeta) end function VectorSurfaceIntegral_Face - + ! !//////////////////////////////////////////////////////////////////////////////////////// ! @@ -425,8 +426,8 @@ end function VectorSurfaceIntegral_Face ! ! SURFACE INTEGRALS ! -!//////////////////////////////////////////////////////////////////////////////////////// - subroutine ScalarDataReconstruction( IBM, elements, STLNum, integralType, iter ) +!//////////////////////////////////////////////////////////////////////////////////////// + subroutine ScalarDataReconstruction( IBM, elements, STLNum, integralType, iter ) use TessellationTypes use MappedGeometryClass use IBMClass @@ -443,7 +444,7 @@ subroutine ScalarDataReconstruction( IBM, elements, STLNum, integralType, iter ) ! in the form: ! val = \int \vec{v}·\vec{n}dS ! The data at the boundary point (BP) is computed through a Inverse Distance Weight -! procedure. +! procedure. ! ----------------------------------------------------------------------------------------- implicit none !-arguments-------------------------------------------------------- @@ -454,13 +455,13 @@ subroutine ScalarDataReconstruction( IBM, elements, STLNum, integralType, iter ) real(kind=rp) :: Dist real(kind=rp), allocatable :: InterpolatedValue(:,:) integer :: i, j, k - + if( .not. IBM% Integral(STLNum)% compute ) return - + allocate( InterpolatedValue(size(IBM% root(STLNum)% ObjectsList),3) ) - + call IBM% BandPoint_state(elements, STLNum, .false.) -!$omp parallel +!$omp parallel !$omp do schedule(runtime) private(j,k,Dist) do i = 1, size(IBM% root(STLNum)% ObjectsList) do j = 1, size(IBM% root(STLNum)% ObjectsList(i)% vertices) @@ -468,34 +469,34 @@ subroutine ScalarDataReconstruction( IBM, elements, STLNum, integralType, iter ) IBM% root(STLNum)% ObjectsList(i)% vertices(j)% nearestPoints = 0 do k = 1, IBM% NumOfInterPoints call MinimumDistancePoints( IBM% root(STLNum)% ObjectsList(i)% vertices(j)% coords, & - IBM% rootPoints(STLNum), IBM% BandRegion(STLNum), Dist, k, & - IBM% root(STLNum)% ObjectsList(i)% vertices(j)% nearestPoints ) - end do + IBM% rootPoints(STLNum), IBM% BandRegion(STLNum), Dist, k, & + IBM% root(STLNum)% ObjectsList(i)% vertices(j)% nearestPoints ) + end do call GetMatrixInterpolationSystem( IBM% root(STLNum)% ObjectsList(i)% vertices(j)% coords, & IBM% BandRegion(STLNum)% x(IBM% root(STLNum)% ObjectsList(i)% vertices(j)% nearestPoints), & IBM% root(STLNum)% ObjectsList(i)% vertices(j)% invPhi, & IBM% root(STLNum)% ObjectsList(i)% vertices(j)% b, IBM% InterpolationType ) - end if + end if InterpolatedValue(i,j) = InterpolatedScalarValue( Q = IBM% BandRegion(STLNum)% Q(:,IBM% root(STLNum)% ObjectsList(i)% vertices(j)% nearestPoints), & invPhi = IBM% root(STLNum)% ObjectsList(i)% vertices(j)% invPhi, & b = IBM% root(STLNum)% ObjectsList(i)% vertices(j)% b, & - normal = IBM% root(STLNum)% ObjectsList(i)% normal, & + normal = IBM% root(STLNum)% ObjectsList(i)% normal, & integralType = integralType ) end do end do -!$omp end do -!$omp end parallel +!$omp end do +!$omp end parallel if( IBM% stl(STLNum)% move ) then IBM% Integral(STLNum)% ListComputed = .false. - else + else IBM% Integral(STLNum)% ListComputed = .true. - end if - + end if + call GenerateScalarmonitorTECfile( IBM% root(STLNum)% ObjectsList, InterpolatedValue, STLNum, integralType, iter ) - + deallocate(InterpolatedValue) end subroutine ScalarDataReconstruction @@ -504,8 +505,8 @@ end subroutine ScalarDataReconstruction ! ! VECTOR INTEGRALS ! -!//////////////////////////////////////////////////////////////////////////////////////// - function VectorDataReconstruction( IBM, elements, integralType, STLNum ) result(val) +!//////////////////////////////////////////////////////////////////////////////////////// + subroutine VectorDataReconstruction( IBM, elements, STLNum, integralType, iter ) use TessellationTypes use MappedGeometryClass use IBMClass @@ -516,118 +517,84 @@ function VectorDataReconstruction( IBM, elements, integralType, STLNum ) result( use omp_lib #ifdef _HAS_MPI_ use mpi -#endif +#endif ! ! ----------------------------------------------------------------------------------------- ! This function computes Vector integrals, that is, those ! in the form: ! val = \int \vec{v}·\vec{n}dS ! The data at the boundary point (BP) is computed through a Inverse Distance Weight -! procedure. To do that the closest n points to the BP are selected using a Nearest -! Neighbor Algorithm and their distance is stored in the vector Dist. -! The surface integal is computed on the triangles the body is made of. The BP point -! are computed using a linear map for each triangle. +! procedure. ! ----------------------------------------------------------------------------------------- implicit none !-arguments--------------------------------------------------------------------------------- - type(IBM_type), intent(inout) :: IBM - type(element), dimension(:), intent(in) :: elements - integer, intent(in) :: integralType, STLNum - real(kind=rp), dimension(NDIM) :: val + type(IBM_type), intent(inout) :: IBM + type(element), intent(in) :: elements(:) + integer, intent(in) :: integralType, STLNum, iter !-local-variables--------------------------------------------------------------------------- - real(kind=rp), dimension(NDIM) :: IDW_Value, ObjIntegral, & - localVal, Point, & - tau_w - real(kind=rp) :: LowerBound, Dist - integer :: i, j, k, symPlaneIndex, & - ierr - real(kind=RP), dimension(:,:), allocatable :: bpQ, bpU_x, bpU_y, bpU_z - + real(kind=rp) :: Dist, LocNormal(NDIM), v(NDIM), w(NDIM) + integer :: i, j, k + real(kind=RP), allocatable :: IntegratedValue(:,:,:) - real(kind=rp) :: newdist - integer :: l + if( .not. IBM% Integral(STLNum)% compute ) return - val = 0.0_RP - - allocate( bpQ(NCONS,BandPoints_ALL% NumOfObjs), & - bpU_x(NCONS,BandPoints_ALL% NumOfObjs), & - bpU_y(NCONS,BandPoints_ALL% NumOfObjs), & - bpU_z(NCONS,BandPoints_ALL% NumOfObjs) ) - - call IBM% BandPoint_state(elements, bpQ, bpU_x, bpU_y, bpU_z) + allocate( IntegratedValue(NDIM,size(IBM% root(STLNum)% ObjectsList),3) ) -!$omp parallel shared(IBM,val,bpQ,bpU_x,bpU_y,bpU_z,integralType,STLNum,i) -!$omp do schedule(runtime) private(j,k,Point,IDW_Value,ObjIntegral,LowerBound,Dist,tau_w) + call IBM% BandPoint_state( elements, STLNum, .true. ) +!$omp parallel +!$omp do schedule(runtime) private(j,k,Dist,v,w,LocNormal) do i = 1, size(IBM% root(STLNum)% ObjectsList) + do j = 1, size(IBM% root(STLNum)% ObjectsList(i)% vertices) + if( .not. IBM% Integral(STLNum)% ListComputed ) then + IBM% root(STLNum)% ObjectsList(i)% vertices(j)% nearestPoints = 0 + do k = 1, IBM% NumOfInterPoints + if( IBM% Wallfunction ) then + v = IBM% root(STLNum)% ObjectsList(i)% vertices(2)% coords-IBM% root(STLNum)% ObjectsList(i)% vertices(1)% coords + w = IBM% root(STLNum)% ObjectsList(i)% vertices(3)% coords-IBM% root(STLNum)% ObjectsList(i)% vertices(1)% coords + + LocNormal(1) = v(2)*w(3) - v(3)*w(2); LocNormal(2) = v(3)*w(1) - v(1)*w(3); LocNormal(3) = v(1)*w(2) - v(2)*w(1) + LocNormal = LocNormal/norm2(LocNormal) + call MinimumDistancePoints( IBM% root(STLNum)% ObjectsList(i)% vertices(j)% coords + IBM% IP_Distance*LocNormal, & + IBM% rootPoints(STLNum), IBM% BandRegion(STLNum), Dist, k, & + IBM% root(STLNum)% ObjectsList(i)% vertices(j)% nearestPoints ) + else + call MinimumDistancePoints( IBM% root(STLNum)% ObjectsList(i)% vertices(j)% coords, & + IBM% rootPoints(STLNum), IBM% BandRegion(STLNum), Dist, k, & + IBM% root(STLNum)% ObjectsList(i)% vertices(j)% nearestPoints ) + end if + end do - if( IBM% root(STLNum)% ObjectsList(i)% ComputeIntegrals ) then - - ObjIntegral = 0.0_RP - - do j = 1, IBM% Integral(STLNum)% n_of_Q_points - - if( .not. IBM% Integral(STLNum)% ListComputed ) then - - call OBB(STLNum)% ChangeRefFrame(IBM% Integral(STLNum)% IntegObjs(i)% x(:,j), 'global', Point) - LowerBound = -huge(1.0_RP) - - IBM% Integral(STLNum)% IntegObjs(i)% PointsIndex(:,j) = 0 - - do k = 1, IBM% kdtree_n_of_interPoints - call MinimumDistancePoints( Point, IBM% rootPoints, Dist, LowerBound, k, & - IBM% Integral(STLNum)% IntegObjs(i)% PointsIndex(:,j) ) - LowerBound = POW2(Dist) - end do - - end if - - !should be performed at each iteration? i.e. does the yplus change at each iteration? -!~ if( IBM% Wallfunction ) then -!~ IBM% Integral(STLNum)% NearestPointsTurbulence(IBM% root(STLNum)% ObjectsList(i)% index)% PointsIndex(:,l) = 0 -!~ call GetIDW_value( Point, normal, Qtmp(:,IBM% Integral(STLNum)% NearestPoints(IBM% root(STLNum)% ObjectsList(i)% index)% PointsIndex(:,l)), & -!~ IBM% Integral(STLNum)% NearestPoints(IBM% root(STLNum)% ObjectsList(i)% index)% PointsIndex(:,l), Q_Point ) -!~ call GetIBM_WallShearStress( Point, Q_Point, IBM% root(STLNum)% ObjectsList(i), IBM% rootPoints, STLNum, & -!~ IBM% Integral(STLNum)% NearestPointsTurbulence(IBM% root(STLNum)% ObjectsList(i)% index)% PointsIndex(:,l), & -!~ Qtmp, tau_w ) -!~ else - tau_w = 0.0_RP -!~ end if - - IDW_Value = IDWVectorValue( Point, IBM% Integral(STLNum)% IntegObjs(i)% PointsIndex(:,j), & - IBM% root(STLNum)% ObjectsList(i)% normal, & - bpQ(:,IBM% Integral(STLNum)% IntegObjs(i)% PointsIndex(:,j)), & - bpU_x(:,IBM% Integral(STLNum)% IntegObjs(i)% PointsIndex(:,j)), & - bpU_y(:,IBM% Integral(STLNum)% IntegObjs(i)% PointsIndex(:,j)), & - bpU_z(:,IBM% Integral(STLNum)% IntegObjs(i)% PointsIndex(:,j)), & - tau_w, IBM% Wallfunction, integralType ) - - ObjIntegral = ObjIntegral + IBM% Integral(STLNum)% weights(j) * IDW_Value - - end do - -!$omp critical - val = val + IBM% Integral(STLNum)% IntegObjs(i)% Area * ObjIntegral -!$omp end critical - - end if - end do -!$omp end do + call GetMatrixInterpolationSystem( IBM% root(STLNum)% ObjectsList(i)% vertices(j)% coords, & + IBM% BandRegion(STLNum)% x(IBM% root(STLNum)% ObjectsList(i)% vertices(j)% nearestPoints), & + IBM% root(STLNum)% ObjectsList(i)% vertices(j)% invPhi, & + IBM% root(STLNum)% ObjectsList(i)% vertices(j)% b, IBM% InterpolationType ) + end if + + IntegratedValue(:,i,j) = IntegratedVectorValue( Q = IBM% BandRegion(STLNum)%Q(:,IBM% root(STLNum)% ObjectsList(i)% vertices(j)% nearestPoints), & + U_x = IBM% BandRegion(STLNum)%U_x(:,IBM% root(STLNum)% ObjectsList(i)% vertices(j)% nearestPoints), & + U_y = IBM% BandRegion(STLNum)%U_y(:,IBM% root(STLNum)% ObjectsList(i)% vertices(j)% nearestPoints), & + U_z = IBM% BandRegion(STLNum)%U_z(:,IBM% root(STLNum)% ObjectsList(i)% vertices(j)% nearestPoints), & + invPhi = IBM% root(STLNum)% ObjectsList(i)% vertices(j)% invPhi, & + b = IBM% root(STLNum)% ObjectsList(i)% vertices(j)% b, & + normal = IBM% root(STLNum)% ObjectsList(i)% normal, & + y = IBM% IP_Distance, & + Wallfunction = IBM% Wallfunction, & + integralType = integralType ) + end do + end do +!$omp end do !$omp end parallel - if( IBM% stl(STLNum)% move ) then IBM% Integral(STLNum)% ListComputed = .false. else IBM% Integral(STLNum)% ListComputed = .true. end if - -#ifdef _HAS_MPI_ - localVal = val - call mpi_allreduce(localVal, val, NDIM, MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD, ierr) -#endif - - deallocate(bpQ, bpU_x, bpU_y, bpU_z) - end function VectorDataReconstruction + call GenerateVectormonitorTECfile( IBM% root(STLNum)% ObjectsList, IntegratedValue, STLNum, integralType, iter ) + + deallocate(IntegratedValue) + + end subroutine VectorDataReconstruction ! !//////////////////////////////////////////////////////////////////////////////////////// ! @@ -636,229 +603,285 @@ end function VectorDataReconstruction ! SCALAR INTERPOLATION ! !//////////////////////////////////////////////////////////////////////////////////////// - function IDWScalarValue( Point, PointsIndex, normal, Q, integralType ) result( outvalue ) - use TessellationTypes - use MappedGeometryClass - use KDClass - use MPI_IBMUtilities + function InterpolatedScalarValue( Q, invPhi, b, normal, integralType ) result( outvalue ) + use IBMClass implicit none ! ! ----------------------------------------------------------- -! This function computes the IDW interpolat for a scalar -! quantity in the point "Point". +! This function computes the IDW interpolat for a scalar +! quantity in the point "Point". ! Available scalars are: ! Mass flow ! Flow rate ! Pressure ! ----------------------------------------------------------- !-arguments-------------------------------------------------------------- - integer, dimension(:), intent(in) :: PointsIndex - real(kind=rp), dimension(NDIM), intent(in) :: Point, normal - real(kind=rp), dimension(:,:), intent(in) :: Q - integer, intent(in) :: integralType - real(kind=rp) :: outvalue + real(kind=rp), intent(in) :: Q(:,:), invPhi(:,:), b(:), & + normal(:) + integer, intent(in) :: integralType + real(kind=rp) :: outvalue !-local-variables-------------------------------------------------------- - real(kind=rp), dimension(NDIM) :: DistanceNormal - real(kind=rp) :: sqrd1, d1, d2, num, den, P, & - tau(NDIM,NDIM), distanceSqr - integer :: i, k + real(kind=rp) :: Qi(NCONS), P + integer :: i - num = 0.0_RP; den = 0.0_RP + outvalue = 0.0_RP select case( integralType ) - + case( MASS_FLOW ) - do i = 1, size(PointsIndex) - - DistanceNormal = BandPoints_ALL% x(PointsIndex(i))% coords - Point - d2 = vDot(DistanceNormal, normal) - - distanceSqr = 0.0_RP - do k = 1, NDIM - distanceSqr = distanceSqr + POW2(BandPoints_ALL% x(PointsIndex(i))% coords(k) - Point(k)) - end do - - sqrd1 = distanceSqr - POW2(d2) - if( AlmostEqual(sqrd1,0.0_RP) ) sqrd1 = 0.0_RP - d1 = sqrt(sqrd1) - - num = num - (1.0_RP / Q(1,i))*(Q(2,i)*normal(1) + Q(3,i)*normal(2) + Q(4,i)*normal(3))/d1 - den = den + 1.0_RP/d1 - - end do + do i = 1, NCONS + Qi(i) = GetInterpolatedValue( Q(i,:), invPhi, b ) + end do + + outvalue = - (1.0_RP / Qi(IRHO))*(Qi(IRHOU)*normal(1) + Qi(IRHOV)*normal(2) + Qi(IRHOW)*normal(3)) case ( FLOW_RATE ) - do i = 1, size(PointsIndex) - - DistanceNormal = BandPoints_ALL% x(PointsIndex(i))% coords - Point - d2 = vDot(DistanceNormal, normal) - - distanceSqr = 0.0_RP - do k = 1, NDIM - distanceSqr = distanceSqr + POW2(BandPoints_ALL% x(PointsIndex(i))% coords(k) - Point(k)) - end do - - sqrd1 = distanceSqr - POW2(d2) - if( AlmostEqual(sqrd1,0.0_RP) ) sqrd1 = 0.0_RP - d1 = sqrt(sqrd1) + do i = 1, NCONS + Qi(i) = GetInterpolatedValue( Q(i,:), invPhi, b ) + end do + + outvalue = - (Qi(IRHOU)*normal(1) + Qi(IRHOV)*normal(2) + Qi(IRHOW)*normal(3)) - num = num - (Q(2,i)*normal(1) + Q(3,i)*normal(2) + Q(4,i)*normal(3))/d1 - den = den + 1.0_RP/d1 - - end do - - case( PRESSURE_FORCE ) + case( PRESSURE_DISTRIBUTION ) do i = 1, NCONS Qi(i) = GetInterpolatedValue( Q(i,:), invPhi, b ) end do outvalue = pressure(Qi) - case ( USER_DEFINED ) ! TODO - + case ( USER_DEFINED ) end select - - outvalue = num/den - - end function IDWScalarValue + + end function InterpolatedScalarValue ! !//////////////////////////////////////////////////////////////////////////////////////// ! ! VECTOR INTERPOLATION ! !//////////////////////////////////////////////////////////////////////////////////////// - function IDWVectorValue( Point, PointsIndex, normal, Q, U_x, U_y, U_z, tau_w, Wallfunction, integralType ) result( outvalue ) - use TessellationTypes - use MappedGeometryClass - use KDClass - use MPI_IBMUtilities + function IntegratedVectorValue( Q, U_x, U_y, U_z, invPhi, b, normal, y, Wallfunction, integralType ) result( outvalue ) use IBMClass + use VariableConversion + use FluidData +#if defined(NAVIERSTOKES) + use WallFunctionBC +#endif implicit none ! ! ----------------------------------------------------------- -! This function computes the IDW interpolat for a vector -! quantity in the point "Point". +! This function computes the IDW interpolat for a vector +! quantity in the point "Point". ! Available scalars are: ! Total force ! Pressure force ! Viscous force -! ----------------------------------------------------------- - !-arguments-------------------------------------------------------------- - integer, dimension(:), intent(in) :: PointsIndex - real(kind=rp), dimension(NDIM), intent(in) :: Point, normal, tau_w - real(kind=rp), dimension(:,:), intent(in) :: Q, U_x, U_y, U_z - integer, intent(in) :: integralType - logical, intent(in) :: Wallfunction - real(kind=rp), dimension(NDIM) :: outvalue - !-local-variables-------------------------------------------------------- - real(kind=rp), dimension(NDIM) :: DistanceNormal, num - real(kind=rp) :: sqrd1, d1, d2, den, P, tau(NDIM,NDIM), & - num1, distanceSqr - integer :: i, k - - num = 0.0_RP; den = 0.0_RP; outvalue = 0.0_RP +! ----------------------------------------------------------- + !-arguments----------------------------------------------------------------- + real(kind=rp), intent(in) :: Q(:,:), U_x(:,:), U_y(:,:), & + U_z(:,:), normal(:), invPhi(:,:), & + b(:) + real(kind=rp), intent(in) :: y + logical, intent(in) :: Wallfunction + integer, intent(in) :: integralType + real(kind=rp) :: outvalue(NDIM) + !-local-variables----------------------------------------------------------- + integer :: i + real(kind=rp) :: viscStress(NDIM), U(NDIM), U_t(NDIM), tangent(NDIM), & + Qi(NCONS), U_xi(NCONS), U_yi(NCONS), U_zi(NCONS), & + tau(NDIM,NDIM), P, T, T_w, rho_w, mu, nu, u_II, u_tau, & + tau_w, kappa_ + outvalue = 0.0_RP + select case( integralType ) - + case ( TOTAL_FORCE ) - do i = 1, size(PointsIndex) - - DistanceNormal = BandPoints_ALL% x(PointsIndex(i))% coords - Point - d2 = vDot(DistanceNormal, normal) + do i = 1, NCONS + Qi(i) = GetInterpolatedValue( Q(i,:), invPhi, b ) + end do - distanceSqr = 0.0_RP - do k = 1, NDIM - distanceSqr = distanceSqr + POW2(BandPoints_ALL% x(PointsIndex(i))% coords(k) - Point(k)) - end do + P = pressure(Qi) - sqrd1 = distanceSqr - POW2(d2) - if( AlmostEqual(sqrd1,0.0_RP) ) sqrd1 = 0.0_RP - d1 = sqrt(sqrd1) + if( Wallfunction ) then +#if defined(NAVIERSTOKES) + T = Temperature(Qi) + call get_laminar_mu_kappa(Qi,mu,kappa_) + nu = mu/Qi(IRHO) + + U = Qi(IRHOU:IRHOW)/Qi(IRHO) + U_t = U - ( dot_product(U,normal) * normal ) + + tangent = U_t/norm2(U_t) - P = pressure( Q(:,i) ) + u_II = dot_product(U,tangent) - if( Wallfunction ) then - num = num + (-P * normal)/d1 - else - call getStressTensor(Q(:,i), U_x(:,i), U_y(:,i), U_z(:,i), tau) - num = num + (-P * normal + matmul(tau,normal))/d1 - end if - - den = den + 1.0_RP/d1 - - end do + u_tau = u_tau_f( u_II, y, nu, u_tau0=0.1_RP ) - if( Wallfunction ) then - outvalue = num/den + tau_w + T_w = T + (dimensionless% Pr)**(1._RP/3._RP)/(2.0_RP*thermodynamics% cp) * POW2(u_II) + T_w = T_w * refvalues% T + rho_w = P*refvalues% p/(thermodynamics% R * T_w) + rho_w = rho_w/refvalues% rho +#endif + tau_w = rho_w*POW2(u_tau) + + viscStress = tau_w*tangent else - outvalue = num/den + do i = 1, NCONS + U_xi(i) = GetInterpolatedValue( U_x(i,:), invPhi, b ) + U_yi(i) = GetInterpolatedValue( U_y(i,:), invPhi, b ) + U_zi(i) = GetInterpolatedValue( U_z(i,:), invPhi, b ) + end do + + call getStressTensor(Qi, U_xi, U_yi, U_zi, tau) + + viscStress = matmul(tau,normal) end if + + outvalue = -P * normal + viscStress case( PRESSURE_FORCE ) - do i = 1, size(PointsIndex) - - DistanceNormal = BandPoints_ALL% x(PointsIndex(i))% coords - Point - d2 = vDot(DistanceNormal, normal) + do i = 1, NCONS + Qi(i) = GetInterpolatedValue( Q(i,:), invPhi, b ) + end do - distanceSqr = 0.0_RP - do k = 1, NDIM - distanceSqr = distanceSqr + POW2(BandPoints_ALL% x(PointsIndex(i))% coords(k) - Point(k)) - end do + P = pressure(Qi) + + outvalue = -P * normal + + case( VISCOUS_FORCE ) - sqrd1 = distanceSqr - POW2(d2) - - if( AlmostEqual(sqrd1,0.0_RP) ) sqrd1 = 0.0_RP - d1 = sqrt(sqrd1) - - P = pressure( Q(:,i) ) + if( Wallfunction ) then +#if defined(NAVIERSTOKES) + T = Temperature(Qi) + call get_laminar_mu_kappa(Qi,mu,kappa_) + nu = mu/Qi(IRHO) + + U = Qi(IRHOU:IRHOW)/Qi(IRHO) + U_t = U - ( dot_product(U,normal) * normal ) + + tangent = U_t/norm2(U_t) - num = num - P*normal/d1 - den = den + 1.0_RP/d1 + u_II = dot_product(U,tangent) - end do + u_tau = u_tau_f( u_II, y, nu, u_tau0=0.1_RP ) - outvalue = num/den - - case( VISCOUS_FORCE ) - - if( Wallfunction ) then - outvalue = tau_w - return - end if - - do i = 1, size(PointsIndex) - - DistanceNormal = BandPoints_ALL% x(PointsIndex(i))% coords - Point - d2 = vDot(DistanceNormal, normal) + T_w = T + (dimensionless% Pr)**(1._RP/3._RP)/(2.0_RP*thermodynamics% cp) * POW2(u_II) + T_w = T_w * refvalues% T + rho_w = P*refvalues% p/(thermodynamics% R * T_w) + rho_w = rho_w/refvalues% rho +#endif + tau_w = rho_w*POW2(u_tau) - distanceSqr = 0.0_RP - do k = 1, NDIM - distanceSqr = distanceSqr + POW2(BandPoints_ALL% x(PointsIndex(i))% coords(k) - Point(k)) - end do - - sqrd1 = distanceSqr - POW2(d2) - if( AlmostEqual(sqrd1,0.0_RP) ) sqrd1 = 0.0_RP - d1 = sqrt(sqrd1) + viscStress = tau_w*tangent + else + do i = 1, NCONS + U_xi(i) = GetInterpolatedValue( U_x(i,:), invPhi, b ) + U_yi(i) = GetInterpolatedValue( U_y(i,:), invPhi, b ) + U_zi(i) = GetInterpolatedValue( U_z(i,:), invPhi, b ) + end do - call getStressTensor(Q(:,i), U_x(:,i), U_y(:,i), U_z(:,i), tau) + call getStressTensor(Qi, U_xi, U_yi, U_zi, tau) - num = num + matmul(tau,normal)/d1 - den = den + 1.0_RP/d1 - - end do + viscStress = matmul(tau,normal) + end if - outvalue = num/den + outvalue = viscStress - case ( USER_DEFINED ) ! TODO + case ( USER_DEFINED ) end select + + end function IntegratedVectorValue - end function IDWVectorValue + subroutine GenerateScalarmonitorTECfile( ObjectsList, scalarState, STLNum, integralType, iter ) + use MPI_Process_Info + use TessellationTypes + use MPI_IBMUtilities + use IBMClass + implicit none + !-arguments------------------------------------------------------- + type(Object_type), intent(in) :: ObjectsList(:) + real(kind=RP), intent(in) :: scalarState(:,:) + integer, intent(in) :: STLNum, integralType, iter + !-local-variables------------------------------------------------- + real(kind=RP), allocatable :: x(:), y(:), z(:), scalar(:) + character(len=LINE_LENGTH) :: FileName, FinalName + + if( MPI_Process% doMPIAction ) then + call sendScalarPlotRoot( ObjectsList, STLNum, scalarState ) + end if + if( MPI_Process% isRoot ) then + call recvScalarPlotRoot( ObjectsList, STLNum, scalarState, x, y, z, scalar ) + end if + + if( .not. MPI_Process% isRoot ) return + + select case(integralType) + case( MASS_FLOW ) + FileName = 'MASS_FLOW_' + write(FinalName,'(A,A,I10.10,A)') trim(FileName),trim(OBB(STLNum)% FileName)//'_',iter,'.tec' + call STLScalarTEC( x, y, z, scalar, STLNum, FinalName, 'MASS FLOW', '"x","y","z","MassFlow"' ) + case( FLOW_RATE ) + FileName = 'FLOW_RATE_FORCE_' + write(FinalName,'(A,A,I10.10,A)') trim(FileName),trim(OBB(STLNum)% FileName)//'_',iter,'.tec' + call STLScalarTEC( x, y, z, scalar, STLNum, FinalName, 'FLOW RATE', '"x","y","z","FlowRate"' ) + case( PRESSURE_DISTRIBUTION ) + FileName = 'PRESSURE_' + write(FinalName,'(A,A,I10.10,A)') trim(FileName),trim(OBB(STLNum)% FileName)//'_',iter,'.tec' + call STLScalarTEC( x, y, z, scalar, STLNum, FinalName, 'PRESSURE DISTRIBUTION', '"x","y","z","Pressure"' ) + end select + + deallocate(x, y, z, scalar) + + end subroutine GenerateScalarmonitorTECfile + + subroutine GenerateVectormonitorTECfile( ObjectsList, vectorState, STLNum, integralType, iter ) + use MPI_Process_Info + use TessellationTypes + use MPI_IBMUtilities + use IBMClass + implicit none + !-arguments--------------------------------------------------------- + type(Object_type), intent(in) :: ObjectsList(:) + real(kind=RP), intent(in) :: vectorState(:,:,:) + integer, intent(in) :: STLNum, integralType, iter + !-local-variables--------------------------------------------------- + real(kind=RP), allocatable :: x(:), y(:), z(:), vector_x(:), & + vector_y(:), vector_z(:) + character(len=LINE_LENGTH) :: FileName, FinalName + + if( MPI_Process% doMPIAction ) then + call sendVectorPlotRoot( ObjectsList, STLNum, vectorState ) + end if + if( MPI_Process% isRoot ) then + call recvVectorPlotRoot( ObjectsList, STLNum, vectorState, x, y, z, vector_x, vector_y, vector_z ) + end if + + if( .not. MPI_Process% isRoot ) return + + select case(integralType) + case( TOTAL_FORCE ) + FileName = 'TOTAL_FORCE_' + write(FinalName,'(A,A,I10.10,A)') trim(FileName),trim(OBB(STLNum)% FileName)//'_',iter,'.tec' + call STLvectorTEC( x, y, z, vector_x, vector_y, vector_z, STLNum, FinalName, 'TOTAL FORCE', '"x","y","z","Ftot_x","Ftot_y","Ftot_z"' ) + case( PRESSURE_FORCE ) + FileName = 'PRESSURE_FORCE_' + write(FinalName,'(A,A,I10.10,A)') trim(FileName),trim(OBB(STLNum)% FileName)//'_',iter,'.tec' + call STLvectorTEC( x, y, z, vector_x, vector_y, vector_z, STLNum, FinalName, 'PRESSURE FORCE', '"x","y","z","Fpres_x","Fpres_y","Fpres_z"' ) + case( VISCOUS_FORCE ) + FileName = 'VISCOUS_FORCE_' + write(FinalName,'(A,A,I10.10,A)') trim(FileName),trim(OBB(STLNum)% FileName)//'_',iter,'.tec' + call STLvectorTEC( x, y, z, vector_x, vector_y, vector_z, STLNum, FinalName, 'VISCOUS FORCE', '"x","y","z","Fvisc_x","Fvisc_y","Fvisc_z"' ) + end select + + deallocate(x, y, z, vector_x, vector_y, vector_z) + + end subroutine GenerateVectormonitorTECfile end module SurfaceIntegrals #endif \ No newline at end of file diff --git a/Solver/src/libs/timeintegrator/AnisFASMultigridClass.f90 b/Solver/src/libs/timeintegrator/AnisFASMultigridClass.f90 index cc9b1d9d5..669489d1f 100644 --- a/Solver/src/libs/timeintegrator/AnisFASMultigridClass.f90 +++ b/Solver/src/libs/timeintegrator/AnisFASMultigridClass.f90 @@ -444,16 +444,12 @@ recursive subroutine ConstructFASInOneDirection(Solver, lvl, controlVariables,Di call Child_p % MGStorage(Dir) % p_sem % mesh % storage % PointStorage -!~ Child_p % MGStorage(Dir) % p_sem % mesh % IBM % active = .false. - Child_p% MGStorage(Dir)% p_sem% mesh% IBM% active = Solver% MGStorage(Dir)% p_sem% mesh% IBM% active - if( Child_p% MGStorage(Dir)% p_sem% mesh% IBM% active ) then - Child_p% MGStorage(Dir)% p_sem% mesh% IBM% lvl = lvl - call Child_p% MGStorage(Dir)% p_sem% mesh% IBM% copyKDtree( Solver% MGStorage(Dir)% p_sem% mesh% IBM% root ) - - call Child_p% MGStorage(Dir)% p_sem% mesh% IBM% build( Child_p% MGStorage(Dir)% p_sem% mesh% elements, & - Child_p% MGStorage(Dir)% p_sem% mesh% no_of_elements, & - Child_p% MGStorage(Dir)% p_sem% mesh% NDOF, & - Child_p% MGStorage(Dir)% p_sem% mesh% child ) + if( Solver% p_sem% mesh% IBM% active ) call Child_p% p_sem% mesh% IBM% copy( Solver% p_sem% mesh% IBM, lvl ) + + call Child_p % p_sem % construct (controlVariables = controlVariables, & + Nx_ = N2xAll, Ny_ = N2yAll, Nz_ = N2zAll, & + success = success, & + ChildSem = .TRUE. ) end if diff --git a/Solver/src/libs/timeintegrator/ExplicitMethods.f90 b/Solver/src/libs/timeintegrator/ExplicitMethods.f90 index 053db195a..3b00f179a 100644 --- a/Solver/src/libs/timeintegrator/ExplicitMethods.f90 +++ b/Solver/src/libs/timeintegrator/ExplicitMethods.f90 @@ -68,22 +68,6 @@ SUBROUTINE TakeRK3Step( mesh, particles, t, deltaT, ComputeTimeDerivative, dt_ve INTEGER :: i, j, k, id if (present(dt_vec)) then - if( mesh% IBM% active ) then - if( mesh% IBM% semiImplicit ) then -!$omp parallel do schedule(runtime) - do id = 1, SIZE( mesh % elements ) - if( mesh% IBM% TimePenal ) mesh% IBM% penalization(id) = 0.5_RP*dt_vec(id) - do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) - if( mesh% elements(id)% isInsideBody(i,j,k) ) then - associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) - call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) - end associate - end if - end do; end do; end do - end do -!$omp end parallel do - end if - end if do k = 1,3 tk = t + b(k)*deltaT @@ -108,41 +92,8 @@ SUBROUTINE TakeRK3Step( mesh, particles, t, deltaT, ComputeTimeDerivative, dt_ve end do ! k - if( mesh% IBM% active ) then - if( mesh% IBM% semiImplicit ) then -!$omp parallel do schedule(runtime) - do id = 1, SIZE( mesh % elements ) - do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) - if( mesh% elements(id)% isInsideBody(i,j,k) ) then - associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) - call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) - end associate - end if - end do; end do; end do - end do -!$omp end parallel do - end if - end if - else - if( mesh% IBM% active ) then - if( mesh% IBM% semiImplicit ) then - if( mesh% IBM% TimePenal ) mesh% IBM% penalization = 0.5_RP*deltaT -!$omp parallel do schedule(runtime) - do id = 1, SIZE( mesh % elements ) - do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) - if( mesh% elements(id)% isInsideBody(i,j,k) ) then - associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) - call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) - end associate - end if - end do; end do; end do - end do -!$omp end parallel do - end if - end if - do k = 1,3 tk = t + b(k)*deltaT call ComputeTimeDerivative( mesh, particles, tk, CTD_IGNORE_MODE) @@ -166,21 +117,6 @@ SUBROUTINE TakeRK3Step( mesh, particles, t, deltaT, ComputeTimeDerivative, dt_ve end do ! k - if( mesh% IBM% active ) then - if( mesh% IBM% semiImplicit ) then -!$omp parallel do schedule(runtime) - do id = 1, SIZE( mesh % elements ) - do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) - if( mesh% elements(id)% isInsideBody(i,j,k) ) then - associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) - call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) - end associate - end if - end do; end do; end do - end do -!$omp end parallel do - end if - end if end if ! ! To obtain the updated residuals @@ -222,23 +158,6 @@ SUBROUTINE TakeRK5Step( mesh, particles, t, deltaT, ComputeTimeDerivative , dt_v if (present(dt_vec)) then - - if( mesh% IBM% active ) then - if( mesh% IBM% semiImplicit ) then -!$omp parallel do schedule(runtime) - do id = 1, SIZE( mesh % elements ) - if( mesh% IBM% TimePenal ) mesh% IBM% penalization(id) = 0.5_RP*dt_vec(id) - do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) - if( mesh% elements(id)% isInsideBody(i,j,k) ) then - associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) - call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) - end associate - end if - end do; end do; end do - end do -!$omp end parallel do - end if - end if DO k = 1, N_STAGES @@ -263,41 +182,8 @@ SUBROUTINE TakeRK5Step( mesh, particles, t, deltaT, ComputeTimeDerivative , dt_v !$omp end parallel do END DO - - if( mesh% IBM% active ) then - if( mesh% IBM% semiImplicit ) then -!$omp parallel do schedule(runtime) - do id = 1, SIZE( mesh % elements ) - do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) - if( mesh% elements(id)% isInsideBody(i,j,k) ) then - associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) - call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) - end associate - end if - end do; end do; end do - end do -!$omp end parallel do - end if - end if else - - if( mesh% IBM% active ) then - if( mesh% IBM% semiImplicit ) then - if( mesh% IBM% TimePenal ) mesh% IBM% penalization = 0.5_RP*deltaT -!$omp parallel do schedule(runtime) - do id = 1, SIZE( mesh % elements ) - do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) - if( mesh% elements(id)% isInsideBody(i,j,k) ) then - associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) - call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) - end associate - end if - end do; end do; end do - end do -!$omp end parallel do - end if - end if DO k = 1, N_STAGES @@ -322,22 +208,6 @@ SUBROUTINE TakeRK5Step( mesh, particles, t, deltaT, ComputeTimeDerivative , dt_v !$omp end parallel do END DO - - if( mesh% IBM% active ) then - if( mesh% IBM% semiImplicit ) then -!$omp parallel do schedule(runtime) - do id = 1, SIZE( mesh % elements ) - do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) - if( mesh% elements(id)% isInsideBody(i,j,k) ) then - associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) - call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) - end associate - end if - end do; end do; end do - end do -!$omp end parallel do - end if - end if end if @@ -602,23 +472,6 @@ SUBROUTINE TakeRKOptStep( mesh, particles, t, deltaT, ComputeTimeDerivative , N_ tk = t + deltaT if (present(dt_vec)) then - - if( mesh% IBM% active ) then - if( mesh% IBM% semiImplicit ) then -!$omp parallel do schedule(runtime) - do id = 1, SIZE( mesh % elements ) - if( mesh% IBM% TimePenal ) mesh% IBM% penalization(id) = 0.5_RP*dt_vec(id) - do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) - if( mesh% elements(id)% isInsideBody(i,j,k) ) then - associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) - call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) - end associate - end if - end do; end do; end do - end do -!$omp end parallel do - end if - end if DO k = 1, N_STAGES @@ -642,41 +495,8 @@ SUBROUTINE TakeRKOptStep( mesh, particles, t, deltaT, ComputeTimeDerivative , N_ !$omp end parallel do END DO - - if( mesh% IBM% active ) then - if( mesh% IBM% semiImplicit ) then -!$omp parallel do schedule(runtime) - do id = 1, SIZE( mesh % elements ) - do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) - if( mesh% elements(id)% isInsideBody(i,j,k) ) then - associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) - call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) - end associate - end if - end do; end do; end do - end do -!$omp end parallel do - end if - end if else - - if( mesh% IBM% active ) then - if( mesh% IBM% semiImplicit ) then - if( mesh% IBM% TimePenal ) mesh% IBM% penalization = 0.5_RP*deltaT -!$omp parallel do schedule(runtime) - do id = 1, SIZE( mesh % elements ) - do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) - if( mesh% elements(id)% isInsideBody(i,j,k) ) then - associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) - call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) - end associate - end if - end do; end do; end do - end do -!$omp end parallel do - end if - end if DO k = 1, N_STAGES @@ -700,22 +520,6 @@ SUBROUTINE TakeRKOptStep( mesh, particles, t, deltaT, ComputeTimeDerivative , N_ !$omp end parallel do END DO - - if( mesh% IBM% active ) then - if( mesh% IBM% semiImplicit ) then -!$omp parallel do schedule(runtime) - do id = 1, SIZE( mesh % elements ) - do i = 0, mesh% elements(id)% Nxyz(1); do j = 0, mesh% elements(id)% Nxyz(2); do k = 0, mesh% elements(id)% Nxyz(3) - if( mesh% elements(id)% isInsideBody(i,j,k) ) then - associate( Q => mesh% elements(id)% storage% Q(:,i,j,k) ) - call mesh% IBM% GetSemiImplicitStep( id, 0.5_RP*deltaT, Q ) - end associate - end if - end do; end do; end do - end do -!$omp end parallel do - end if - end if end if diff --git a/Solver/src/libs/timeintegrator/FASMultigridClass.f90 b/Solver/src/libs/timeintegrator/FASMultigridClass.f90 index a62332ecb..1886a3deb 100644 --- a/Solver/src/libs/timeintegrator/FASMultigridClass.f90 +++ b/Solver/src/libs/timeintegrator/FASMultigridClass.f90 @@ -84,8 +84,6 @@ module FASMultigridClass procedure :: destruct procedure :: SetPreviousSolution => FAS_SetPreviousSolution ! For implicit smoothing, it's necessary to store the previous solution(s) in all levels procedure :: TakePseudoStep ! solve for Dual Time Stepping - procedure :: SetIBM => FAS_SetIBM - procedure :: updateMovingBodyIBM => FAS_updateMovingBodyIBM end type FASMultigrid_t ! @@ -719,16 +717,12 @@ recursive subroutine RecursiveConstructor(Solver, N1x, N1y, N1z, lvl, controlVar ! setting the IBM level & saving the KDtree - Child_p% p_sem% mesh% IBM% active = Solver% p_sem% mesh% IBM% active - if( Child_p% p_sem% mesh% IBM% active ) then - Child_p% p_sem% mesh% IBM% lvl = lvl - call Child_p% p_sem% mesh% IBM% copyKDtree( Solver% p_sem% mesh% IBM% root ) - end if - + if( Solver% p_sem% mesh% IBM% active ) call Child_p% p_sem% mesh% IBM% copy( Solver% p_sem% mesh% IBM, lvl ) + call Child_p % p_sem % construct (controlVariables = controlVariables, & Nx_ = N2xAll, Ny_ = N2yAll, Nz_ = N2zAll, & success = success, & - ChildSem = .TRUE. ) + ChildSem = .TRUE. ) if (.NOT. success) ERROR STOP "Multigrid: Problem creating coarse solver." @@ -881,6 +875,10 @@ subroutine TakePseudoStep(this, timestep, t, ComputeTimeDerivative, ComputeTimeD end if end do + if( this% p_sem% mesh% IBM% active ) then + if( any(this% p_sem% mesh% IBM% stl(:)% move) .and. MGlevels-1 > 1 ) call FAS_movingIBM( this% child, dt, MGlevels-1 ) + end if + do i = 1, tau_maxit call this % solve(i, tk, ComputeTimeDerivative, ComputeTimeDerivativeIsolated) @@ -981,14 +979,6 @@ recursive subroutine FASVCycle(this,t,lvl,MGlevels, ComputeTimeDerivative, Compu ! Taking care of Jacobian (for implicit residual relaxation) ! ---------------------------------------------------------- call FAS_ComputeAndFactorizeJacobian(this, lvl, t, invdt, ComputeTimeDerivative, ComputeTimeDerivativeIsolated) - -! -! Setting up the IBM before the pre-smooth procedure -! --------------------------------------------------- - if( this% p_sem% mesh% IBM% active ) then - if( lvl .eq. MGlevels ) call this% SetIBM( this% p_sem% mesh% IBM% penalization ) -!~ if( any(this% p_sem% mesh% IBM% stl(:)% move) ) call this% updateMovingBodyIBM( fasvcycle_dt, lvl ) - end if ! ! ------------------------------------------------------- @@ -1266,7 +1256,7 @@ subroutine MGRestrictToChild(this,lvl,t, ComputeTimeDerivative) !$omp end do !$omp end parallel - if( Child_p% p_sem% mesh% IBM% active ) call Child_p% SetIBM( this% p_sem% mesh% IBM% penalization ) + if( Child_p% p_sem% mesh% IBM% TimePenal ) Child_p% p_sem% mesh% IBM% penalization = dt ! ! ------------------------------------------- @@ -1381,32 +1371,64 @@ subroutine Smooth(this,SmoothSweeps,t, ComputeTimeDerivative) error stop "FASMultigrid :: LTS needs cfd & dcfl." end if - if( this% p_sem% mesh% IBM% active ) call this% SetIBM( this% p_sem% mesh% IBM% penalization ) + if( this% p_sem% mesh% IBM% TimePenal ) this% p_sem% mesh% IBM% penalization = dt select case (Smoother) ! Euler Smoother case (Euler_SMOOTHER) do sweep = 1, SmoothSweeps + if( this% p_sem% mesh% IBM% semiImplicit ) then + call this% p_sem% mesh% IBM% SemiImplicitCorrection( this% p_sem% mesh% elements, dt ) + end if + call TakeExplicitEulerStep ( mesh=this % p_sem % mesh, particles=this % p_sem % particles, t=t, deltaT=smoother_dt, & ComputeTimeDerivative=ComputeTimeDerivative, dt_vec=this % lts_dt, dts=DualTimeStepping, global_dt=dt ) + + if( this% p_sem% mesh% IBM% semiImplicit ) then + call this% p_sem% mesh% IBM% SemiImplicitCorrection( this% p_sem% mesh% elements, dt ) + end if end do ! RK3 smoother case (RK3_SMOOTHER) do sweep = 1, SmoothSweeps + if( this% p_sem% mesh% IBM% semiImplicit ) then + call this% p_sem% mesh% IBM% SemiImplicitCorrection( this% p_sem% mesh% elements, dt ) + end if + call TakeRK3Step ( mesh=this % p_sem % mesh, particles=this % p_sem % particles, t=t, deltaT=smoother_dt, & ComputeTimeDerivative=ComputeTimeDerivative, dt_vec=this % lts_dt, dts=DualTimeStepping, global_dt=dt ) + + if( this% p_sem% mesh% IBM% semiImplicit ) then + call this% p_sem% mesh% IBM% SemiImplicitCorrection( this% p_sem% mesh% elements, dt ) + end if end do ! RK5 smoother case (RK5_SMOOTHER) do sweep = 1, SmoothSweeps + if( this% p_sem% mesh% IBM% semiImplicit ) then + call this% p_sem% mesh% IBM% SemiImplicitCorrection( this% p_sem% mesh% elements, dt ) + end if + call TakeRK5Step ( mesh=this % p_sem % mesh, particles=this % p_sem % particles, t=t, deltaT=smoother_dt, & ComputeTimeDerivative=ComputeTimeDerivative, dt_vec=this % lts_dt, dts=DualTimeStepping, global_dt=dt ) + + if( this% p_sem% mesh% IBM% semiImplicit ) then + call this% p_sem% mesh% IBM% SemiImplicitCorrection( this% p_sem% mesh% elements, dt ) + end if end do ! RK5 smoother opt for Steady State case (RKOpt_SMOOTHER) do sweep = 1, SmoothSweeps + if( this% p_sem% mesh% IBM% semiImplicit ) then + call this% p_sem% mesh% IBM% SemiImplicitCorrection( this% p_sem% mesh% elements, dt ) + end if + call TakeRKOptStep ( mesh=this % p_sem % mesh, particles=this % p_sem % particles, t=t, deltaT=smoother_dt, & ComputeTimeDerivative=ComputeTimeDerivative, N_STAGES=erk_order, dt_vec=this % lts_dt, dts=DualTimeStepping, global_dt=dt ) + + if( this% p_sem% mesh% IBM% semiImplicit ) then + call this% p_sem% mesh% IBM% SemiImplicitCorrection( this% p_sem% mesh% elements, dt ) + end if end do case default error stop "FASMultigrid :: No smoother defined for the multigrid." @@ -1417,29 +1439,69 @@ subroutine Smooth(this,SmoothSweeps,t, ComputeTimeDerivative) case (Euler_SMOOTHER) do sweep = 1, SmoothSweeps if (Compute_dt) call MaxTimeStep(self=this % p_sem, cfl=smoother_cfl, dcfl=smoother_dcfl, MaxDt=smoother_dt ) + + if ( this% p_sem% mesh% IBM% TimePenal ) this% p_sem% mesh% IBM% penalization = dt + if( this% p_sem% mesh% IBM% semiImplicit ) then + call this% p_sem% mesh% IBM% SemiImplicitCorrection( this% p_sem% mesh% elements, dt ) + end if + call TakeExplicitEulerStep ( mesh=this % p_sem % mesh, particles=this % p_sem % particles, t=t, deltaT=smoother_dt, & ComputeTimeDerivative=ComputeTimeDerivative, dts=DualTimeStepping, global_dt=dt ) + + if( this% p_sem% mesh% IBM% semiImplicit ) then + call this% p_sem% mesh% IBM% SemiImplicitCorrection( this% p_sem% mesh% elements, dt ) + end if end do ! RK3 smoother case (RK3_SMOOTHER) do sweep = 1, SmoothSweeps if (Compute_dt) call MaxTimeStep(self=this % p_sem, cfl=smoother_cfl, dcfl=smoother_dcfl, MaxDt=smoother_dt ) + + if ( this% p_sem% mesh% IBM% TimePenal ) this% p_sem% mesh% IBM% penalization = dt + if( this% p_sem% mesh% IBM% semiImplicit ) then + call this% p_sem% mesh% IBM% SemiImplicitCorrection( this% p_sem% mesh% elements, dt ) + end if + call TakeRK3Step ( mesh=this % p_sem % mesh, particles=this % p_sem % particles, t=t, deltaT=smoother_dt, & ComputeTimeDerivative=ComputeTimeDerivative, dts=DualTimeStepping, global_dt=dt ) + + if( this% p_sem% mesh% IBM% semiImplicit ) then + call this% p_sem% mesh% IBM% SemiImplicitCorrection( this% p_sem% mesh% elements, dt ) + end if end do ! RK5 smoother case (RK5_SMOOTHER) do sweep = 1, SmoothSweeps if (Compute_dt) call MaxTimeStep(self=this % p_sem, cfl=smoother_cfl, dcfl=smoother_dcfl, MaxDt=smoother_dt ) + + if ( this% p_sem% mesh% IBM% TimePenal ) this% p_sem% mesh% IBM% penalization = dt + if( this% p_sem% mesh% IBM% semiImplicit ) then + call this% p_sem% mesh% IBM% SemiImplicitCorrection( this% p_sem% mesh% elements, dt ) + end if + call TakeRK5Step ( mesh=this % p_sem % mesh, particles=this % p_sem % particles, t=t, deltaT=smoother_dt, & ComputeTimeDerivative=ComputeTimeDerivative, dts=DualTimeStepping, global_dt=dt ) + + if( this% p_sem% mesh% IBM% semiImplicit ) then + call this% p_sem% mesh% IBM% SemiImplicitCorrection( this% p_sem% mesh% elements, dt ) + end if end do ! RK Opt smoother case (RKOpt_SMOOTHER) do sweep = 1, SmoothSweeps if (Compute_dt) call MaxTimeStep(self=this % p_sem, cfl=smoother_cfl, dcfl=smoother_dcfl, MaxDt=smoother_dt ) + + if ( this% p_sem% mesh% IBM% TimePenal ) this% p_sem% mesh% IBM% penalization = dt + if( this% p_sem% mesh% IBM% semiImplicit ) then + call this% p_sem% mesh% IBM% SemiImplicitCorrection( this% p_sem% mesh% elements, dt ) + end if + call TakeRKOptStep ( mesh=this % p_sem % mesh, particles=this % p_sem % particles, t=t, deltaT=smoother_dt, & ComputeTimeDerivative=ComputeTimeDerivative, N_STAGES=erk_order, dts=DualTimeStepping, global_dt=dt ) + + if( this% p_sem% mesh% IBM% semiImplicit ) then + call this% p_sem% mesh% IBM% SemiImplicitCorrection( this% p_sem% mesh% elements, dt ) + end if end do ! ! Implicit smoothers @@ -1452,6 +1514,7 @@ subroutine Smooth(this,SmoothSweeps,t, ComputeTimeDerivative) do sweep = 1, SmoothSweeps if (Compute_dt) call MaxTimeStep(self=this % p_sem, cfl=smoother_cfl, dcfl=smoother_dcfl, MaxDt=smoother_dt ) + if( this% p_sem% mesh% IBM% TimePenal ) this% p_sem% mesh% IBM% penalization = dt call TakeSGSStep ( this=this, t=t, deltaT=smoother_dt, & ComputeTimeDerivative=ComputeTimeDerivative, dts=DualTimeStepping, global_dt=dt ) end do @@ -1462,6 +1525,7 @@ subroutine Smooth(this,SmoothSweeps,t, ComputeTimeDerivative) do sweep = 1, SmoothSweeps if (Compute_dt) call MaxTimeStep(self=this % p_sem, cfl=smoother_cfl, dcfl=smoother_dcfl, MaxDt=smoother_dt ) + if( this% p_sem% mesh% IBM% TimePenal ) this% p_sem% mesh% IBM% penalization = dt call TakeILUStep ( this=this, t=t, deltaT=smoother_dt, & ComputeTimeDerivative=ComputeTimeDerivative, dts=DualTimeStepping, global_dt=dt ) end do @@ -1472,6 +1536,7 @@ subroutine Smooth(this,SmoothSweeps,t, ComputeTimeDerivative) do sweep = 1, SmoothSweeps if (Compute_dt) call MaxTimeStep(self=this % p_sem, cfl=smoother_cfl, dcfl=smoother_dcfl, MaxDt=smoother_dt ) + if( this% p_sem% mesh% IBM% TimePenal ) this% p_sem% mesh% IBM% penalization = dt call TakeBIRK5Step ( this=this, t=t, deltaT=smoother_dt, & ComputeTimeDerivative=ComputeTimeDerivative, dts=DualTimeStepping, global_dt=dt ) end do @@ -1868,62 +1933,23 @@ end subroutine FAS_ComputeAndFactorizeJacobian ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! - subroutine FAS_SetIBM( this, dt ) - implicit none - !-arguments------------------------------------------ - class(FASMultigrid_t), intent(inout) :: this - real(kind=rp), intent(in) :: dt(:) - !-local-variables------------------------------------ - real(kind=rp) :: MaxDt - - ! Updating the IBM penalization - if (DualTimeStepping) then - if( this% p_sem% mesh% IBM% TimePenal ) call MaxTimeStep(self=this% p_sem, cfl=p_cfl, dcfl=p_dcfl, MaxDt = MaxDt, MaxDtVec = this% p_sem% mesh% IBM% penalization ) - else - if ( Compute_dt .and. this% p_sem% mesh% IBM% TimePenal ) then - call MaxTimeStep(self=this% p_sem, cfl=cfl, dcfl=dcfl, MaxDt=MaxDt ) - this% p_sem% mesh% IBM% penalization = MaxDt - elseif( this% p_sem% mesh% IBM% TimePenal ) then - this% p_sem% mesh% IBM% penalization = dt - end if - end if - - end subroutine FAS_SetIBM - recursive subroutine recursive_IBM_KDtreedestroy( Solver, lvl ) - - implicit none - !-arguments---------------------------------------- - type(FASMultigrid_t), target :: Solver - integer, intent(in) :: lvl - !-local-variables----------------------------------- - type(FASMultigrid_t), pointer :: Child_p - - if( lvl > 1 ) call recursive_IBM_KDtreedestroy( Solver% Child, lvl-1 ) - - call Solver% p_sem% mesh% IBM% DestroyKDtree() - - end subroutine recursive_IBM_KDtreedestroy - - - subroutine FAS_updateMovingBodyIBM( this, dt, lvl ) + recursive subroutine FAS_MovingIBM( this, dt, lvl ) implicit none !-arguments------------------------------------------ class(FASMultigrid_t), intent(inout) :: this real(kind=RP), intent(in) :: dt integer, intent(in) :: lvl - !-local-variables------------------------------------ - type(FASMultigrid_t), pointer :: Child_p - - if( lvl > 1 ) then - Child_p => this% Child - call child_p% p_sem% mesh% IBM% MoveBody( child_p% p_sem% mesh% elements, & - child_p% p_sem% mesh% no_of_elements, & - child_p% p_sem% mesh% NDOF, child_p% p_sem% mesh% child, dt ) - end if + + call Solver% p_sem% mesh% IBM% MoveBody( Solver% p_sem% mesh% elements, & + Solver% p_sem% mesh% no_of_elements, & + Solver% p_sem% mesh% NDOF, & + .true., dt ) + + if( lvl > 1 ) call FAS_movingIBM( Solver% Child, dt, lvl-1 ) - end subroutine FAS_updateMovingBodyIBM + end subroutine FAS_MovingIBM ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// diff --git a/Solver/src/libs/timeintegrator/TimeIntegrator.f90 b/Solver/src/libs/timeintegrator/TimeIntegrator.f90 index 8e7169f75..21aee8ee3 100644 --- a/Solver/src/libs/timeintegrator/TimeIntegrator.f90 +++ b/Solver/src/libs/timeintegrator/TimeIntegrator.f90 @@ -397,8 +397,6 @@ subroutine IntegrateInTime( self, sem, controlVariables, monitors, ComputeTimeDe ! Set up mask's coefficient for IBM ! ---------------------------------- ! - - if( sem % mesh% IBM% active .and. sem % mesh% IBM% TimePenal ) then if ( self % Compute_dt ) then call MaxTimeStep( self=sem, cfl=self % cfl, dcfl=self % dcfl, MaxDt= dt ) @@ -429,7 +427,7 @@ subroutine IntegrateInTime( self, sem, controlVariables, monitors, ComputeTimeDe call ComputeTimeDerivative(sem % mesh, sem % particles, t, CTD_IGNORE_MODE) maxResidual = ComputeMaxResiduals(sem % mesh) sem % maxResidual = maxval(maxResidual) - call Monitors % UpdateValues( sem % mesh, t, sem % numberOfTimeSteps, maxResidual ) + call Monitors % UpdateValues( sem % mesh, t, sem % numberOfTimeSteps, maxResidual, .false. ) call self % Display(sem % mesh, monitors, sem % numberOfTimeSteps) if (self % pAdaptator % adaptation_mode == ADAPT_DYNAMIC_TIME .and. & @@ -547,7 +545,9 @@ subroutine IntegrateInTime( self, sem, controlVariables, monitors, ComputeTimeDe CASE (ROSENBROCK_SOLVER) call RosenbrockSolver % TakeStep (sem, t , dt , ComputeTimeDerivative) CASE (EXPLICIT_SOLVER) + if( sem% mesh% IBM% active ) call sem% mesh% IBM% SemiImplicitCorrection( sem% mesh% elements, dt ) CALL self % RKStep ( sem % mesh, sem % particles, t, dt, ComputeTimeDerivative) + if( sem% mesh% IBM% active ) call sem% mesh% IBM% SemiImplicitCorrection( sem% mesh% elements, dt ) case (FAS_SOLVER) if (self % integratorType .eq. STEADY_STATE) then ! call FASSolver % solve(k, t, ComputeTimeDerivative) @@ -587,7 +587,7 @@ subroutine IntegrateInTime( self, sem, controlVariables, monitors, ComputeTimeDe ! ! Update monitors ! --------------- - call Monitors % UpdateValues( sem % mesh, t, k+1, maxResidual ) + call Monitors % UpdateValues( sem % mesh, t, k+1, maxResidual, self% autosave% Autosave(k+1) ) ! ! Exit if the target is reached ! ----------------------------- From 00f9670aabb40521ea28d7295ca495e9185cd411 Mon Sep 17 00:00:00 2001 From: Stefano Colombo Date: Wed, 1 Feb 2023 11:12:45 +0100 Subject: [PATCH 05/15] merge & compilation bugs fixed + IBM refinement tool --- .../SpatialDiscretization.f90 | 9 +- .../SpatialDiscretization.f90 | 10 +- Solver/src/addons/horses2tecplot/Storage.f90 | 3 - .../addons/tools/LocalIBMRefinementTool.f90 | 202 +++++ .../src/addons/tools/LocalRefinementTool.f90 | 4 +- Solver/src/addons/tools/Makefile | 2 + Solver/src/addons/tools/readGMSH.f90 | 600 +++++++++++++++ Solver/src/addons/tools/readHDF5.f90 | 21 +- Solver/src/addons/tools/readSpecM.f90 | 15 +- Solver/src/libs/mesh/HexElementClass.f90 | 27 +- Solver/src/libs/mesh/HexMesh.f90 | 37 +- Solver/src/libs/mesh/IBMClass.f90 | 18 +- Solver/src/libs/mesh/KDClass.f90 | 4 +- Solver/src/libs/mesh/MPI_IBMUtilities.f90 | 2 +- Solver/src/libs/mesh/MappedGeometry.f90 | 6 +- Solver/src/libs/mesh/Read_GMSH.f90 | 2 + Solver/src/libs/mesh/TessellationTypes.f90 | 687 ++++++++++++++---- Solver/src/libs/monitors/SurfaceMonitor.f90 | 23 +- .../timeintegrator/AnisFASMultigridClass.f90 | 7 +- .../libs/timeintegrator/FASMultigridClass.f90 | 11 +- 20 files changed, 1483 insertions(+), 207 deletions(-) create mode 100644 Solver/src/addons/tools/LocalIBMRefinementTool.f90 create mode 100644 Solver/src/addons/tools/readGMSH.f90 diff --git a/Solver/src/NavierStokesSolver/SpatialDiscretization.f90 b/Solver/src/NavierStokesSolver/SpatialDiscretization.f90 index 779b59e8d..1f9421765 100644 --- a/Solver/src/NavierStokesSolver/SpatialDiscretization.f90 +++ b/Solver/src/NavierStokesSolver/SpatialDiscretization.f90 @@ -357,8 +357,8 @@ subroutine TimeDerivative_ComputeQDot( mesh , particles, t) ! Local variables ! --------------- ! - integer :: eID , i, j, k, ierr, fID, iFace, iEl - real(kind=RP) :: mu_smag, delta, Source(NCONS) + integer :: eID , i, j, k, ierr, fID, iFace, iEl, iP + real(kind=RP) :: mu_smag, delta, Source(NCONS), TurbulentSource(NCONS) ! ! *********************************************** ! Compute the viscosity at the elements and faces @@ -634,6 +634,8 @@ subroutine TimeDerivative_ComputeQDot( mesh , particles, t) end associate end do !$omp end do + end if + end if end if end subroutine TimeDerivative_ComputeQDot @@ -710,8 +712,9 @@ subroutine TimeDerivative_ComputeQDotIsolated( mesh , t ) ! Local variables ! --------------- ! - integer :: eID , i, j, k, fID + integer :: eID , i, j, k, fID, iP procedure(UserDefinedSourceTermNS_f) :: UserDefinedSourceTermNS + real(kind=rp) :: Source(NCONS), TurbulentSource(NCONS) ! ! **************** ! Volume integrals diff --git a/Solver/src/NavierStokesSolverRANS/SpatialDiscretization.f90 b/Solver/src/NavierStokesSolverRANS/SpatialDiscretization.f90 index e1a7352e1..b3d492761 100644 --- a/Solver/src/NavierStokesSolverRANS/SpatialDiscretization.f90 +++ b/Solver/src/NavierStokesSolverRANS/SpatialDiscretization.f90 @@ -386,8 +386,9 @@ subroutine TimeDerivative_ComputeQDot( mesh , particles, t) ! Local variables ! --------------- ! - integer :: eID , i, j, k, ierr, fID, iFace, iEl - real(kind=RP) :: mu_smag, delta, mu_t, eta, kinematic_viscocity, mu_dim, Source(NCONS) + integer :: eID , i, j, k, ierr, fID, iFace, iEl, iP + real(kind=RP) :: mu_smag, delta, mu_t, eta, kinematic_viscocity, mu_dim, & + Source(NCONS), TurbulentSource(NCONS) logical :: isfirst = .TRUE. ! ! *********************************************** @@ -680,6 +681,8 @@ subroutine TimeDerivative_ComputeQDot( mesh , particles, t) end associate end do !$omp end do + end if + end if end if end subroutine TimeDerivative_ComputeQDot @@ -751,8 +754,9 @@ subroutine TimeDerivative_ComputeQDotIsolated( mesh , t ) ! Local variables ! --------------- ! - integer :: eID , i, j, k, fID + integer :: eID , i, j, k, fID, iP procedure(UserDefinedSourceTermNS_f) :: UserDefinedSourceTermNS + real(kind=rp) :: Source(NCONS), TurbulentSource(NCONS) ! ! **************** ! Volume integrals diff --git a/Solver/src/addons/horses2tecplot/Storage.f90 b/Solver/src/addons/horses2tecplot/Storage.f90 index 67f95b6c7..d6f0bc3ad 100644 --- a/Solver/src/addons/horses2tecplot/Storage.f90 +++ b/Solver/src/addons/horses2tecplot/Storage.f90 @@ -249,9 +249,6 @@ subroutine Mesh_ReadSolution(self,solutionName) self % hasSensor = .false. self % hasTimeDeriv = .true. - ! TODO? - case (IBM_MESH) - case (SOLUTION_AND_SENSOR_FILE) dimensionsSize = 4 self % hasGradients = .false. diff --git a/Solver/src/addons/tools/LocalIBMRefinementTool.f90 b/Solver/src/addons/tools/LocalIBMRefinementTool.f90 new file mode 100644 index 000000000..2fccfaad2 --- /dev/null +++ b/Solver/src/addons/tools/LocalIBMRefinementTool.f90 @@ -0,0 +1,202 @@ +module LocalIBMRefinementTool + + use SMConstants + use FTValueDictionaryClass + use LocalRefinementTool + + implicit none + + private + public LocalRef_IBM + +!//////////////////////////////////////////////////////////////////////// + contains +!//////////////////////////////////////////////////////////////////////// +! + subroutine LocalRef_IBM(controlVariables) + + use LocalRefinement + use HexMeshClass + use SMConstants + use FTValueDictionaryClass + use mainKeywordsModule + use Headers + use MPI_Process_Info + use OrientedBoundingBox + use PhysicsStorage + + implicit none + !-arguemnts---------------------------------------------- + type( FTValueDictionary) :: controlVariables + !-local-variables---------------------------------------- + character(len=LINE_LENGTH) :: fileName, meshFileName + type(HexMesh) :: mesh + logical :: success + character(len=LINE_LENGTH) :: msg, fname, MyString, & + STLfilename + integer, allocatable :: Nx(:), Ny(:), Nz(:) + real(kind=RP) :: Naverage + integer :: Nmax, STLnum + + call CheckInputIntegrityIBM(controlVariables, success) + if(.not. success) error stop "Control file reading error" +! +! --------------------------- +! Set up the local refinement +! --------------------------- +! + meshFileName = controlVariables % stringValueForKey("mesh file name", requestedLength = LINE_LENGTH) + fileName = controlVariables % stringValueForKey("solution file name", requestedLength = LINE_LENGTH) + + call GetMeshPolynomialOrders(controlVariables,Nx,Ny,Nz,Nmax) + + call ConstructSimpleMesh_IBM(mesh, meshFileName, Nx, Ny, Nz) +! +! ----------------- +! Describe the mesh +! ----------------- +! + write(STD_OUT,'(/)') + call Section_Header("Job description") + write(msg,'(A,A,A)') 'Mesh file "',trim(meshFileName),'":' + write(STD_OUT,'(/)') + call SubSection_Header(trim(msg)) + write(STD_OUT,'(30X,A,A30,I0)') "->", "Number of elements: ", mesh% no_of_elements + write(STD_OUT,'(/)') + + call mesh% IBM% read_info( controlVariables ) + + allocate( mesh% IBM% stl(mesh% IBM% NumOfSTL), & + mesh% IBM% STLfilename(mesh% IBM% NumOfSTL), & + OBB(mesh% IBM% NumOfSTL) ) + + do STLNum = 1, mesh% IBM% NumOfSTL + write(MyString, '(i100)') STLNum + if( STLNum .eq. 1 ) then + fname = stlFileNameKey + else + fname = trim(stlFileNameKey)//trim(adjustl(MyString)) + end if + mesh% IBM% STLfilename(STLNum) = controlVariables% stringValueForKey(trim(fname), requestedLength = LINE_LENGTH) + mesh% IBM% stl(STLNum)% body = STLNum + OBB(STLNum)% filename = mesh% IBM% STLfilename(STLNum) + call mesh% IBM% stl(STLNum)% ReadTessellation( mesh% IBM% STLfilename(STLNum) ) + call OBB(STLNum)% construct( mesh% IBM% stl(STLNum), .false., .false. ) + end do + + call mesh% IBM% SetPolynomialOrder( mesh% elements ) +! +! --------------------- +! Create the final file +! --------------------- +! + call mesh% ExportOrders(meshFileName) + + do STLNum = 1, mesh% IBM% NumOfSTL + call mesh% IBM% stl(STLNum)% destroy() + end do + + deallocate( mesh% IBM% stl, mesh% IBM% STLfilename, OBB ) + + Naverage = sum( mesh% elements(1:size(mesh% elements))% Nxyz(1) + & + mesh% elements(1:size(mesh% elements))% Nxyz(2) + & + mesh% elements(1:size(mesh% elements))% Nxyz(3) )/(3.0_RP * mesh% no_of_elements) + + call Subsection_Header("omesh file") + + write(STD_OUT,'(30X,A,A30,F5.2)') "-> ", "Average polynomial order: ", Naverage + write(STD_OUT,'(30X,A,A30,I0)') "-> ", "Degrees of Freedom (NDOF): ", & + sum( (mesh% elements(1:size(mesh% elements))% Nxyz(1)+1)* & + (mesh% elements(1:size(mesh% elements))% Nxyz(2)+1)* & + (mesh% elements(1:size(mesh% elements))% Nxyz(3)+1) ) + + end subroutine LocalRef_IBM + + subroutine ConstructSimpleMesh_IBM(mesh, meshFileName, AllNx, AllNy, AllNz) + + use SMConstants + use Headers + use HexMeshClass + use LocalRefinement + use readHDF5 + use readSpecM + use readGMSH + use FileReadingUtilities, only: getFileExtension + implicit none + !-arguments---------------------------------------------- + type(HexMesh) :: mesh + character(len=*) :: meshFileName + integer, intent(in) :: AllNx(:), AllNy(:), AllNz(:) + !-local-variables---------------------------------------- + integer :: gmsh_version + character(len=LINE_LENGTH) :: ext + + ext = getFileExtension(trim(meshFileName)) + if (trim(ext)=='h5') then + call ConstructSimpleMesh_FromHDF5File_(mesh, meshFileName, AllNx=AllNx, AllNy=AllNy, AllNz=AllNz) + elseif (trim(ext)=='mesh') then + call ConstructSimpleMesh_FromSpecFile_(mesh, meshFileName, AllNx=AllNx, AllNy=AllNy, AllNz=AllNz) + elseif (trim(ext)=='msh') then + call CheckGMSHversion (meshFileName, gmsh_version) + select case (gmsh_version) + case (4) + call ConstructSimpleMesh_FromGMSHFile_v4_( mesh, meshFileName, AllNx, AllNy, AllNz ) + case (2) + call ConstructSimpleMesh_FromGMSHFile_v2_( mesh, meshFileName, AllNx, AllNy, AllNz ) + case default + error stop "ReadMeshFile :: Unrecognized GMSH version." + end select + else + error stop 'Mesh file extension not recognized.' + end if + + end subroutine ConstructSimpleMesh_IBM + + subroutine CheckInputIntegrityIBM( controlVariables, success ) + use ParamfileRegions + implicit none + !-arguments-------------------------------------------------- + type(FTValueDictionary), intent(inout) :: controlVariables + logical, intent(out) :: success + !-local-variables-------------------------------------------- + real(kind=rp), allocatable :: BandRegionCoeff_in + integer, allocatable :: Nx_in, Ny_in, Nz_in + character(len=LINE_LENGTH) :: in_label, paramFile + + write(in_label , '(A)') "#define ibm" + call get_command_argument(1, paramFile) + call readValueInRegion( trim( paramFile ), "nx", Nx_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "ny", Ny_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "nz", Nz_in, in_label, "#end" ) + call readValueInRegion( trim( paramFile ), "band region coeff", BandRegionCoeff_in, in_label, "#end" ) + + if( .not. allocated(Nx_in) ) then + print*, "Missing keyword 'nx' in input file" + success = .false. + return + end if + + if( .not. allocated(Ny_in) ) then + print*, "Missing keyword 'ny' in input file" + success = .false. + return + end if + + if( .not. allocated(Nz_in) ) then + print*, "Missing keyword 'nz' in input file" + success = .false. + return + end if + + if( .not. allocated(BandRegionCoeff_in) ) then + print*, "Missing keyword 'band region coeff' in input file" + success = .false. + return + end if + + success = .true. + + end subroutine CheckInputIntegrityIBM + + +end module LocalIBMRefinementTool diff --git a/Solver/src/addons/tools/LocalRefinementTool.f90 b/Solver/src/addons/tools/LocalRefinementTool.f90 index 6f3624f0d..91aeb30ce 100644 --- a/Solver/src/addons/tools/LocalRefinementTool.f90 +++ b/Solver/src/addons/tools/LocalRefinementTool.f90 @@ -201,9 +201,9 @@ Subroutine ConstructSimpleMesh(mesh, meshFileName, locR) ext = getFileExtension(trim(meshFileName)) if (trim(ext)=='h5') then - call ConstructSimpleMesh_FromHDF5File_(mesh, meshFileName, locR) + call ConstructSimpleMesh_FromHDF5File_(mesh, meshFileName, locR=locR) elseif (trim(ext)=='mesh') then - call ConstructSimpleMesh_FromSpecFile_(mesh, meshFileName, locR=locR_) + call ConstructSimpleMesh_FromSpecFile_(mesh, meshFileName, locR=locR) ! elseif (trim(ext)=='msh') then ! call ConstructSimpleMesh_FromGmshFile_(mesh, meshFileName, locR else diff --git a/Solver/src/addons/tools/Makefile b/Solver/src/addons/tools/Makefile index 05d0282bd..87db087ff 100644 --- a/Solver/src/addons/tools/Makefile +++ b/Solver/src/addons/tools/Makefile @@ -32,7 +32,9 @@ OBJS= \ LocalRefinementClass \ readSpecM \ readHDF5 \ + readGMSH \ LocalRefinementTool \ + LocalIBMRefinementTool \ ConverStats \ main \ diff --git a/Solver/src/addons/tools/readGMSH.f90 b/Solver/src/addons/tools/readGMSH.f90 new file mode 100644 index 000000000..af763ce58 --- /dev/null +++ b/Solver/src/addons/tools/readGMSH.f90 @@ -0,0 +1,600 @@ +#include "Includes.h" +module readGMSH + use HexMeshClass + use ElementClass + use SMConstants + use ElementConnectivityDefinitions + use LocalRefinement + use Utilities, only: UnusedUnit + use NodeClass + use Read_GMSH + use FileReadingUtilities , only: getFileName, getRealArrayFromStringNoCommas + + implicit none + + contains + + subroutine ConstructSimpleMesh_FromGMSHFile_v4_(self, fileName, Nx, Ny, Nz) + + !use PhysicsStorage + + implicit none +! --------------- +! Input variables +! --------------- +! + type(HexMesh) :: self + character(len=*) :: fileName + integer, intent(in) :: Nx(:), Ny(:), Nz(:) +! +! --------------- +! Local variables +! --------------- +! + character(len=1024) :: tmps + real(kind=RP) :: tmpd + integer :: tmpi, tmpi1, tmpi2, tmpi3, tmp_eltag + integer :: i, j, k, l + integer :: msh_no_points + integer :: msh_no_curves + integer :: msh_no_surfaces + integer :: msh_no_volumes + integer :: funit, fileStat + + real(kind=RP), allocatable :: msh_entity_vec(:) + + logical :: tmpb + + integer, dimension(EL_MAX_ORDER) :: check_eltype + integer, dimension(:), allocatable :: tmpi_vec1, el_types + + integer :: msh_no_nodeblocks, msh_nodeblock, msh_nodes_per_block, msh_node, msh_global_node + integer :: element_type, org_element_type, org_element_type_2D + integer :: msh_no_elblocks, msh_elblock, msh_els_per_block, msh_el, msh_global_el + integer :: numberOfElements, numberOfElements2D + integer :: numberOfNodes + integer :: bFaceOrder, no_nodes_i + + + type(MSH_node_block_t), dimension(:), allocatable :: msh_node_blocks + type(MSH_element_block_t), dimension(:), allocatable :: msh_element_blocks + type(MSH_point_t), dimension(:), allocatable :: msh_points + + real(kind=RP) :: corners(NDIM,NODES_PER_ELEMENT) + real(kind=RP) :: x(NDIM), L_ref + integer :: nodeIDs(NODES_PER_ELEMENT) + character(len=MSH_LEN) :: msh_entity + + L_ref = 1.0_RP + + funit = UnusedUnit() + open( unit = fUnit, file = fileName, iostat = fileStat ) + if ( fileStat /= 0 ) then + print *, "Error opening file: ", fileName + return + end if + +!-----Read-header-info--------------------------------------------------- + read(fUnit,*) tmps + if (trim(tmps) .ne. '$MeshFormat') error stop "READ_GMSH :: Wrong input file." + read(fUnit,*) tmpd, tmpi, tmpi + read(fUnit,*) tmps + +!-----Read-BC-info------------------------------------------------------- + ! Bc not required, they are skipped + read(fUnit,*) tmps + if (trim(tmps) .ne. '$PhysicalNames') error stop "READ_GMSH :: Wrong input file - no boundary conditions defined." + read(fUnit,*) tmpi + + do i=1, tmpi + read(fUnit,*) + end do + + read(fUnit,*) tmps + if (trim(tmps) .ne. '$EndPhysicalNames') error stop "READ_GMSH :: Wrong input file - not all boundary conditions detected." + +!-----Read-msh-entities-------------------------------------------------- + read(fUnit,*) tmps + if (trim(tmps) .ne. '$Entities') error stop "READ_GMSH :: Wrong input file - no entities found." + read(fUnit,*) msh_no_points, msh_no_curves, msh_no_surfaces, msh_no_volumes + + ! allocate memory for gmsh internal entities + ! msh_no_curves, msh_no_surfaces, msh_no_volumes not required + allocate(msh_points(msh_no_points)) + allocate(msh_entity_vec(32)) ! arbitrary number + +!-----Read-points-------------------------------------------------------- + do i=1, msh_no_points + msh_entity_vec=0.0_RP + read(fUnit,'(4096a)') msh_entity + call getRealArrayFromStringNoCommas(msh_entity,msh_entity_vec) + + msh_points(i)%tag = int(msh_entity_vec(1)) + msh_points(i)%x = msh_entity_vec(2:4) + msh_points(i)%no_ptags = int(msh_entity_vec(5)) + if (msh_points(i)%no_ptags .gt. 0) msh_points(i)%ptags(1:msh_points(i)%no_ptags) = int(msh_entity_vec(6:5+msh_points(i)%no_ptags)) + end do ! msh_no_points +!------------------------------------------------------------------------ + +!-----Read-curves-------------------------------------------------------- + ! Curves not needed + do i=1, msh_no_curves + msh_entity_vec=0.0_RP + read(fUnit,'(4096a)') + end do ! msh_no_curves +!-----Read-surfaces------------------------------------------------------ + ! Surfaces not needed + do i=1, msh_no_surfaces + msh_entity_vec=0.0_RP + read(fUnit,'(4096a)') + end do ! msh_no_surfaces +!-----Read-volumes------------------------------------------------------- + ! Volumes not needed + do i=1, msh_no_volumes + msh_entity_vec=0.0_RP + read(fUnit,'(4096a)') + end do ! msh_no_volumes + + read(fUnit,*) tmps + if (trim(tmps) .ne. '$EndEntities') error stop "READ_GMSH :: Wrong input file - not all entities detected." + +!-----Read-nodes--------------------------------------------------------- + read(fUnit,*) tmps + if (trim(tmps) .ne. '$Nodes') error stop "READ_GMSH :: Wrong input file - no nodes found." + + read(fUnit,*) msh_no_nodeblocks, numberOfNodes, tmpi1, tmpi2 + if (numberOfNodes .ne. tmpi2) error stop "READ_gmsh :: Incoherent node numbering." + + ! allocate nodes storage + allocate(msh_node_blocks(msh_no_nodeblocks)) + + msh_global_node = 0 + do msh_nodeblock=1, msh_no_nodeblocks + read(fUnit,*) tmpi1, tmpi2, tmpi3, msh_nodes_per_block + tmpb=tmpi3 + if (tmpb) error stop "READ_gmsh :: Parametric nodes not supported." + + call msh_node_blocks(msh_nodeblock) % Construct(tmpi1, tmpi2, tmpb, msh_nodes_per_block) + + do msh_node=1, msh_nodes_per_block + read(fUnit,*) msh_node_blocks(msh_nodeblock) % tags(msh_node) + end do ! msh_nodes_per_block /for tags + + do msh_node=1, msh_nodes_per_block + read(fUnit,*) msh_node_blocks(msh_nodeblock) % cords(msh_node,:) + end do ! msh_nodes_per_block /for coordinates + + msh_global_node = msh_global_node + msh_nodes_per_block + + end do ! msh_no_nodeblocks + + read(fUnit,*) tmps + if (trim(tmps) .ne. '$EndNodes') error stop "READ_GMSH :: Wrong input file - not all nodes detected." +!-----Read-elements------------------------------------------------------ + read(fUnit,*) tmps + if (trim(tmps) .ne. '$Elements') error stop "READ_GMSH :: Wrong input file - no elements found." + + read(fUnit,*) msh_no_elblocks, numberOfElements, tmpi1, tmpi2 + if (numberOfElements .ne. tmpi2) error stop "READ_gmsh :: Incoherent element numbering." + + allocate(msh_element_blocks(msh_no_elblocks)) + + msh_global_el = 0 + do msh_elblock=1, msh_no_elblocks + + read(fUnit,*) tmpi1, tmpi2, element_type, msh_els_per_block + + call msh_element_blocks(msh_elblock) % Construct(element_type,msh_els_per_block) + + do msh_el=1, msh_els_per_block + read(fUnit,*) msh_element_blocks(msh_elblock) % tags(msh_el), msh_element_blocks(msh_elblock) % nodes(msh_el,:) + end do ! msh_els_per_block /for tags + + msh_global_el = msh_global_el + msh_els_per_block + + end do ! msh_no_elblocks + + read(fUnit,*) tmps + if (trim(tmps) .ne. '$EndElements') error stop "READ_GMSH :: Wrong input file - not all elements detected." + close( fUnit ) + +!-----Mesh-info---------------------------------------------------------- + ! find order of elements curvature + check_eltype = 0 + do i=1, EL_MAX_ORDER + do msh_elblock=1, msh_no_elblocks + if( msh_element_blocks(msh_elblock)% el_type .eq. SUPPORTED_EL_TYPES(i) ) then !count(msh_element_blocks(:)% el_type .eq. SUPPORTED_EL_TYPES(i)) + check_eltype(i) = check_eltype(i) + 1 + end if + end do + end do + if (sum(check_eltype) .eq. 0) error stop "READ_GMSH :: No 3D elements detected in the mesh." + if (sum(check_eltype) .ne. maxval(check_eltype)) error stop "READ_GMSH :: More than 1 type of hexahedral detected in the mesh." + bFaceOrder = maxloc(check_eltype,1) ! set order of the mesh + org_element_type = SUPPORTED_EL_TYPES(bFaceOrder) + ! find number of elements + numberOfElements = 0 + do msh_elblock=1, msh_no_elblocks + if (msh_element_blocks(msh_elblock) % el_type .eq. org_element_type) then + numberOfElements = numberOfElements + msh_element_blocks(msh_elblock) % no_els + end if + end do + +!-----Reorder-nodes-in-elements------------------------------------------ + allocate(tmpi_vec1((bFaceOrder + 1)**3)) + do msh_elblock=1, msh_no_elblocks + if (msh_element_blocks(msh_elblock) % el_type .eq. org_element_type) then + do j=1, msh_element_blocks(msh_elblock) % no_els + ! re-order nodes within element to match HORSES ordering + tmpi_vec1 = msh_element_blocks(msh_elblock) % nodes(j,:) + call ReorderElement(tmpi_vec1,bFaceOrder) + msh_element_blocks(msh_elblock) % nodes(j,:) = tmpi_vec1 + end do + end if + end do + deallocate(tmpi_vec1) +!-----Assign-new-tags---------------------------------------------------- + tmp_eltag = 0 + do msh_elblock=1, msh_no_elblocks + if (msh_element_blocks(msh_elblock) % el_type .eq. org_element_type) then + do j=1, msh_element_blocks(msh_elblock) % no_els + tmp_eltag = tmp_eltag + 1 + msh_element_blocks(msh_elblock) % tags(j) = tmp_eltag + end do + end if + end do + if (.not. (tmp_eltag .eq. numberOfElements)) error stop "Read_GMSH :: Number of elements inconsistent." + +!-----Build-nodes-------------------------------------------------------- + self % no_of_elements = numberOfElements +!-----Allocate-mem-for-elements-and-nodes-------------------------------- + allocate( self % elements(numberOfelements) ) + allocate( self % nodes(numberOfNodes) ) + allocate( self % Nx(numberOfelements) , self % Ny(numberOfelements) , self % Nz(numberOfelements) ) + self % Nx = Nx + self % Ny = Ny + self % Nz = Nz + +!----Set-nodes----------------------------------------------------------- + do msh_nodeblock=1, msh_no_nodeblocks + do msh_node=1, msh_node_blocks(msh_nodeblock) % no_nodes + x = msh_node_blocks(msh_nodeblock) % cords(msh_node,1:NDIM)!/L_ref + call ConstructNode( self % nodes(msh_node_blocks(msh_nodeblock) % tags(msh_node)), x, msh_node_blocks(msh_nodeblock) % tags(msh_node) ) + end do + end do + +!----Set-elements----------------------------------------------------------- + j = 0 + do msh_elblock=1, msh_no_elblocks + if (msh_element_blocks(msh_elblock) % el_type .eq. org_element_type) then + do msh_el = 1, msh_element_blocks(msh_elblock) % no_els + j = j + 1 + ! setting l'th element + l = msh_element_blocks(msh_elblock) % tags(msh_el) + nodeIDs = msh_element_blocks(msh_elblock) % nodes(msh_el,1:8) ! only non-curved nodes + + if (bFaceOrder .eq. 1) then ! non-curved mesh + do k = 1, NODES_PER_ELEMENT + corners(:,k) = self % nodes(nodeIDs(k)) % x + end do + self % elements(l) % SurfInfo % IsHex8 = .TRUE. + self % elements(l) % SurfInfo % corners = corners + else ! curved mesh + print*, "Curved mesh for IBM p-adaptation not supported" + error stop + end if + + call self % elements(l) % Construct (Nx(l), Ny(l), Nz(l), nodeIDs , l, l) + end do ! msh_element_blocks(msh_elblock) % no_els + end if ! if el_type .eq. org_element_type + end do ! msh_no_elblocks + if (.not. (j .eq. numberOfElements)) error stop "Read_GMSH :: Not all elements assigned." + +!------Deallocate-msh-vairables------------------------------------------- + do msh_nodeblock=1, msh_no_nodeblocks + call msh_node_blocks(msh_nodeblock) % Destruct() + end do + deallocate(msh_node_blocks) + + do msh_elblock=1, msh_no_elblocks + call msh_element_blocks(msh_elblock) % Destruct() + end do + deallocate(msh_element_blocks) + + deallocate(msh_points) + deallocate(msh_entity_vec) + + end subroutine ConstructSimpleMesh_FromGMSHFile_v4_ + + subroutine ConstructSimpleMesh_FromGMSHFile_v2_(self, filename, Nx, Ny, Nz) + + USE Physics + use PartitionedMeshClass + use MPI_Process_Info + + implicit none +! --------------- +! Input variables +! --------------- +! + type(HexMesh) :: self + character(len=*) :: fileName + integer, intent(in) :: Nx(:), Ny(:), Nz(:) +! +! --------------- +! Local variables +! --------------- +! + character(len=1024) :: tmps + real(kind=RP) :: tmpd + integer :: tmpi, tmpi1, tmpi2, tmpi3, tmp_eltag + integer :: i, j, k, l + integer :: msh_no_points + integer :: msh_no_curves + integer :: msh_no_surfaces + integer :: msh_no_volumes + integer :: funit, fileStat + + real(kind=RP), allocatable :: msh_entity_vec(:) + + integer, dimension(EL_MAX_ORDER) :: check_eltype + integer, dimension(:), allocatable :: tmpi_vec1, el_types + + integer :: msh_no_nodeblocks, msh_nodeblock, msh_nodes_per_block, msh_global_node + integer :: element_type, org_element_type, org_element_type_2D + integer :: msh_no_elblocks, msh_elblock, msh_els_per_block, msh_el, msh_global_el + integer :: numberOfElements, numberOfElements2D + integer :: numberOfNodes, numberOfElements_, numberOfElements2D_ + integer :: bFaceOrder, no_nodes_i, msh_node + + type(MSH_element_block_t) :: msh_element_blocks + type(MSH_point_t), dimension(:), allocatable :: msh_points + + type(MSH_node_block_t) :: msh_nodes + type(MSH_element_block_t) :: msh_elements, msh_elements_3D, msh_elements_2D + + real(kind=RP) :: corners(NDIM,NODES_PER_ELEMENT) + real(kind=RP) :: x(NDIM) + integer :: nodeIDs(NODES_PER_ELEMENT) + character(len=MSH_LEN) :: msh_entity + + funit = UnusedUnit() + open( unit = fUnit, file = fileName, iostat = fileStat ) + if ( fileStat /= 0 ) then + print *, "Error opening file: ", fileName + return + end if + +!-----Read-header-info--------------------------------------------------- + read(fUnit,*) tmps + if (trim(tmps) .ne. '$MeshFormat') error stop "READ_GMSH :: Wrong input file." + read(fUnit,*) tmpd, tmpi, tmpi + read(fUnit,*) tmps +!-----Read-BC-info------------------------------------------------------- + ! Bc not needed + read(fUnit,*) tmps + if (trim(tmps) .ne. '$PhysicalNames') error stop "READ_GMSH :: Wrong input file - no boundary conditions defined." + read(fUnit,*) tmpi + + do i=1, tmpi + read(fUnit,*) + end do ! tmpi + + read(fUnit,*) tmps + if (trim(tmps) .ne. '$EndPhysicalNames') error stop "READ_GMSH :: Wrong input file - not all boundary conditions detected." + +!-----Read-nodes--------------------------------------------------------- + read(fUnit,*) tmps + if (trim(tmps) .ne. '$Nodes') error stop "READ_GMSH :: Wrong input file - no nodes found." + read(fUnit,*) numberOfNodes + + call msh_nodes% Construct(0, 0, .false., numberOfNodes) + + do i=1, numberOfNodes + read(fUnit,*) msh_nodes% tags(i), msh_nodes% cords(i,:) + end do + + read(fUnit,*) tmps + if (trim(tmps) .ne. '$EndNodes') error stop "READ_GMSH :: Wrong input file - not all nodes detected." + +!-----Read-elements------------------------------------------------------ + read(fUnit,*) tmps + if (trim(tmps) .ne. '$Elements') error stop "READ_GMSH :: Wrong input file - no elements found." + + read(fUnit,*) numberOfElements + call msh_elements% Construct(element_type,numberOfElements) + allocate(msh_entity_vec(255)) ! arbitrary number + allocate(el_types(numberOfElements)) ! arbitrary number + + do i=1, numberOfElements + + read(fUnit,'(4096a)') msh_entity ! read row + + msh_entity_vec=0.0_RP + + call getRealArrayFromStringNoCommas(msh_entity,msh_entity_vec) + + msh_elements% tags(i) = int(msh_entity_vec(1)) + el_types(i) = int(msh_entity_vec(2)) + msh_elements% no_ptags(i) = int(msh_entity_vec(3)) + if (msh_elements% no_ptags(i) .gt. 0) msh_elements% ptags(i,1:msh_elements% no_ptags(i)) = & + int(msh_entity_vec(4:3+msh_elements % no_ptags(i))) + + select case (el_types(i)) + case (5) ! 3D - 1st order + no_nodes_i = 8 + case (12) ! 3D - 2st order + no_nodes_i = 27 + case (92) ! 3D - 3rd order + no_nodes_i = 64 + case (93) ! 3D - 4th order + no_nodes_i = 125 + case (94) ! 3D - 5th order + no_nodes_i = 216 + case (3) ! 2D - 1st order + no_nodes_i = 4 + case (10) ! 2D - 2st order + no_nodes_i = 9 + case (36) ! 2D - 3rd order + no_nodes_i = 16 + case (37) ! 2D - 4th order + no_nodes_i = 25 + case (38) ! 2D - 5th order + no_nodes_i = 36 + case default + no_nodes_i = 0 + end select + + msh_elements% nodes(i,1:size(msh_entity_vec(4+msh_elements% no_ptags(i):3+msh_elements% no_ptags(i)+no_nodes_i) )) = & + int(msh_entity_vec(4+msh_elements% no_ptags(i):3+msh_elements% no_ptags(i)+no_nodes_i)) + + end do ! numberOfElements + + deallocate(msh_entity_vec) + + read(fUnit,*) tmps + if (trim(tmps) .ne. '$EndElements') error stop "READ_GMSH :: Wrong input file - not all elements detected." + close( fUnit ) + +!-----Mesh-info---------------------------------------------------------- + ! find order of elements curvature + check_eltype = 0 + do i=1, EL_MAX_ORDER + do j = 1, numberOfElements + if( el_types(j) .eq. SUPPORTED_EL_TYPES(i) )then + check_eltype(i) = check_eltype(i) + 1 + end if + end do +!~ check_eltype(i) = count(el_types .eq. SUPPORTED_EL_TYPES(i)) + end do + if (sum(check_eltype) .eq. 0) error stop "READ_GMSH :: No 3D elements detected in the mesh." + if (sum(check_eltype) .ne. maxval(check_eltype)) error stop "READ_GMSH :: More than 1 type of hexahedral detected in the mesh." + bFaceOrder = maxloc(check_eltype,1) ! set order of the mesh + org_element_type = SUPPORTED_EL_TYPES(bFaceOrder) + msh_elements% el_type = org_element_type + + select case (bFaceOrder) + case (1) + org_element_type_2D = 3 + case (2) + org_element_type_2D = 10 + case (3) + org_element_type_2D = 36 + case (4) + org_element_type_2D = 37 + case (5) + org_element_type_2D = 38 + case default + end select + +!~ if (numberOfElements .ne. (count(el_types .eq. org_element_type) + count(el_types .eq. org_element_type_2D)) ) & +!~ error stop "READ_GMSH :: Too many different types of elements." +!~ numberOfElements = count(el_types .eq. org_element_type) +!~ numberOfElements2D = count(el_types .eq. org_element_type_2D) + + numberOfElements_ = 0 + numberOfElements2D_ = 0 + do i = 1, size(el_types) + if( el_types(i) .eq. org_element_type ) then + numberOfElements_ = numberOfElements_ + 1 + elseif( el_types(i) .eq. org_element_type_2D ) then + numberOfElements2D_ = numberOfElements2D_ + 1 + end if + end do + + if( numberOfElements .ne. (numberOfElements_ + numberOfElements2D_) ) & + error stop "READ_GMSH :: Too many different types of elements." + + + numberOfElements = numberOfElements_ + numberOfElements2D = numberOfElements2D_ + + call msh_elements_3D % Construct(org_element_type,numberOfElements) + call msh_elements_2D % Construct(org_element_type_2D,numberOfElements2D) + + j = 0 + k = 0 + do i=1, size(el_types) + + if ( el_types(i) .eq. org_element_type ) then + j = j + 1 + msh_elements_3D % tags(j) = msh_elements% tags(i) + msh_elements_3D % no_ptags(j) = msh_elements% no_ptags(i) + msh_elements_3D % ptags(j,:) = msh_elements% ptags(i,1) + msh_elements_3D % nodes(j,:) = msh_elements% nodes(i,1:size(msh_elements_3D % nodes(j,:))) + elseif ( el_types(i) .eq. org_element_type_2D ) then + k = k + 1 + msh_elements_2D % tags(k) = msh_elements% tags(i) + msh_elements_2D % no_ptags(k) = msh_elements% no_ptags(i) + msh_elements_2D % ptags(k,:) = msh_elements% ptags(i,1) + msh_elements_2D % nodes(k,:) = msh_elements% nodes(i,1:size(msh_elements_2D % nodes(k,:))) + else + error stop "READ_GMSH :: Unknown element type in the mesh." + end if + + end do + + deallocate(el_types) + call msh_elements % Destruct() +!-----Reorder-nodes-in-elements------------------------------------------ + allocate(tmpi_vec1((bFaceOrder + 1)**3)) + do j=1, msh_elements_3D % no_els + ! re-order nodes within element to match HORSES ordering + tmpi_vec1 = msh_elements_3D % nodes(j,:) + call ReorderElement(tmpi_vec1,bFaceOrder) + msh_elements_3D % nodes(j,:) = tmpi_vec1 + end do + deallocate(tmpi_vec1) +!-----Assign-new-tags---------------------------------------------------- + tmp_eltag = 0 + do j=1, msh_elements_3D % no_els + tmp_eltag = tmp_eltag + 1 + msh_elements_3D % tags(j) = tmp_eltag + end do + if (.not. (tmp_eltag .eq. numberOfElements)) error stop "Read_GMSH :: Number of elements inconsistent." +!-----Build-nodes-------------------------------------------------------- + self % no_of_elements = numberOfElements +!-----Allocate-mem-for-elements-and-nodes-------------------------------- + allocate( self % elements(numberOfelements) ) + allocate( self % nodes(numberOfNodes) ) + allocate( self % Nx(numberOfelements) , self % Ny(numberOfelements) , self % Nz(numberOfelements) ) + self % Nx = Nx + self % Ny = Ny + self % Nz = Nz +!~ !----Set-nodes----------------------------------------------------------- + do msh_node=1, msh_nodes % no_nodes + x = msh_nodes % cords(msh_node,1:NDIM)!/L_ref + call ConstructNode( self % nodes(msh_nodes% tags(msh_node)), x, msh_nodes% tags(msh_node) ) + end do ! msh_nodes % no_nodes +!----Set-elements----------------------------------------------------------- + j = 0 + do msh_el = 1, msh_elements_3D % no_els + j = j + 1 + ! setting l'th element + l = msh_elements_3D % tags(msh_el) + nodeIDs = msh_elements_3D % nodes(msh_el,1:8) ! only non-curved nodes + + if (bFaceOrder .eq. 1) then ! non-curved mesh + do k = 1, NODES_PER_ELEMENT + corners(:,k) = self % nodes(nodeIDs(k)) % x + end do + self % elements(l) % SurfInfo % IsHex8 = .TRUE. + self % elements(l) % SurfInfo % corners = corners + else ! curved mesh + print*, "Curved mesh for IBM p-adaptation not supported" + error stop + end if + + call self % elements(l) % Construct (Nx(l), Ny(l), Nz(l), nodeIDs , l, l) + + end do ! msh_elements_3D % no_els + if (.not. (j .eq. numberOfElements)) error stop "Read_GMSH :: Not all elements assigned." + +!~ !-----Deallocate-msh-vairables------------------------------------------- + call msh_nodes% Destruct() + call msh_elements_3D % Destruct() + call msh_elements_2D % Destruct() + + end subroutine ConstructSimpleMesh_FromGMSHFile_v2_ + +end module readGMSH diff --git a/Solver/src/addons/tools/readHDF5.f90 b/Solver/src/addons/tools/readHDF5.f90 index c5ee41afb..86bf0bb48 100644 --- a/Solver/src/addons/tools/readHDF5.f90 +++ b/Solver/src/addons/tools/readHDF5.f90 @@ -65,14 +65,14 @@ end function NumOfElems_HDF5 ! !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - subroutine ConstructSimpleMesh_FromHDF5File_( self, fileName, locR) + subroutine ConstructSimpleMesh_FromHDF5File_( self, fileName, locR, AllNx, AllNy, AllNz ) implicit none !-arguments-------------------------------------------------------------- - class(HexMesh) , intent(inout) :: self + class(HexMesh) , intent(inout) :: self ! class(SimpleHexMesh) , intent(inout) :: self - character(LEN=*), intent(in) :: fileName - type(LocalRef_t), intent(in) :: locR - ! integer , intent(in) :: Nx(:), Ny(:), Nz(:) !< Polynomial orders for all the elements + character(LEN=*), optional, intent(in) :: fileName + type(LocalRef_t), optional, intent(in) :: locR + integer , optional, intent(in) :: AllNx(:), AllNy(:), AllNz(:) !< Polynomial orders for all the elements !-local-variables--------------------------------------------------------- #ifdef HAS_HDF5 ! Variables as called by Kopriva @@ -188,19 +188,16 @@ subroutine ConstructSimpleMesh_FromHDF5File_( self, fileName, locR) HOPRNodeID = ElemInfo(ELEM_FirstNodeInd,l) + HCornerMap(k) falseNodeID(k) = HOPRNodeID corners(:,k) = NodeCoords(:,HOPRNodeID) / Lref - END DO - - call locR%getOrderOfPosition(corners, Nx, Ny, Nz) - if( present(locR) ) then ! set dummy values falseNodeID = 0 - call locR% getOrderOfPosition(corners, Nx_, Ny_, Nz_) - call self % elements(l) % Construct (Nx_, Ny_, Nz_, falseNodeID , l, l) + self % elements(l) % SurfInfo % corners = corners + call locR% getOrderOfPosition(corners, Nx, Ny, Nz) + call self % elements(l) % Construct (Nx, Ny, Nz, falseNodeID , l, l) else - call self % elements(l) % Construct (Nx(l), Ny(l), Nz(l), falseNodeID , l, l) + call self % elements(l) % Construct (AllNx(l), AllNy(l), AllNz(l), falseNodeID , l, l) end if diff --git a/Solver/src/addons/tools/readSpecM.f90 b/Solver/src/addons/tools/readSpecM.f90 index e6384f321..c55cc07fa 100644 --- a/Solver/src/addons/tools/readSpecM.f90 +++ b/Solver/src/addons/tools/readSpecM.f90 @@ -11,7 +11,7 @@ Module readSpecM contains - Subroutine ConstructSimpleMesh_FromSpecFile_(self, fileName, locR) + Subroutine ConstructSimpleMesh_FromSpecFile_(self, fileName, locR, AllNx, AllNy, AllNz) ! --------------- ! Input variables @@ -19,7 +19,8 @@ Subroutine ConstructSimpleMesh_FromSpecFile_(self, fileName, locR) ! type(HexMesh) :: self CHARACTER(LEN=*) :: fileName - type(LocalRef_t), intent(in) :: locR + type(LocalRef_t), optional, intent(in) :: locR + integer , optional, intent(in) :: AllNx(:), AllNy(:), AllNz(:) !< Polynomial orders for all the elements ! ! --------------- ! Local variables @@ -171,9 +172,13 @@ Subroutine ConstructSimpleMesh_FromSpecFile_(self, fileName, locR) ! set dummy values falseNodeID = 0 - call locR % getOrderOfPosition(corners, Nx, Ny, Nz) - ! call self % elements(l) % Construct (Nx, Ny, Nz, falseNodeID , l, l) - call self % elements(l) % Construct (Nx, Ny, Nz, nodeIDs, l, l) + if( present(locR) ) then + call locR % getOrderOfPosition(corners, Nx, Ny, Nz) + ! call self % elements(l) % Construct (Nx, Ny, Nz, falseNodeID , l, l) + call self % elements(l) % Construct (Nx, Ny, Nz, nodeIDs, l, l) + else + call self% elements(l)% Construct(AllNx(l), AllNy(l), AllNz(l), nodeIDs, l, l) + end if READ( fUnit, * ) names END DO diff --git a/Solver/src/libs/mesh/HexElementClass.f90 b/Solver/src/libs/mesh/HexElementClass.f90 index bef2c3e57..d1f9b8010 100644 --- a/Solver/src/libs/mesh/HexElementClass.f90 +++ b/Solver/src/libs/mesh/HexElementClass.f90 @@ -12,8 +12,6 @@ ! One will associate boundary conditions to boundaries in the routine ! "ExternalState". ! -! Modified 2D Code to move solution into element class. 5/14/15, 5:36 PM -! !//////////////////////////////////////////////////////////////////////// ! Module ElementClass @@ -75,8 +73,9 @@ Module ElementClass type(ElementStorage_t), pointer :: storage type(SurfInfo_t) :: SurfInfo ! Information about the geometry of the neighboring faces, as in the mesh file type(TransfiniteHexMap) :: hexMap ! High-order mapper - logical, dimension(:,:,:), allocatable :: isInsideBody != .false. ! Immersed boundaty term -> if InsideBody(i,j,k) = true, the point(i,j,k) is inside the body - integer, dimension(:,:,:,:), allocatable :: STL !STL file the DoFbelongs to if isInsideBody = .true. + logical, dimension(:,:,:), allocatable :: isInsideBody, isForcingPoint ! Immersed boundaty term -> if InsideBody(i,j,k) = true, the point(i,j,k) is inside the body (IB) + integer, dimension(:,:,:), allocatable :: STL !STL file the DoFbelongs to if isInsideBody = .true. (IB) + integer :: IP_index contains procedure :: Construct => HexElement_Construct procedure :: Destruct => HexElement_Destruct @@ -168,6 +167,10 @@ elemental SUBROUTINE HexElement_Destruct( self ) call self % hexMap % destruct call self % SurfInfo % destruct + + if( allocated(self% isInsideBody) ) deallocate(self% isInsideBody) + if( allocated(self% isForcingPoint) ) deallocate(self% isForcingPoint) + if( allocated(self% STL) ) deallocate(self% STL) END SUBROUTINE HexElement_Destruct ! @@ -768,7 +771,6 @@ end function HexElement_EvaluateSolutionAtPoint ! ! -------------------------------------------------------- ! Adapts an element to new polynomial orders NNew -! -> TODO: Previous solutions are not implemented ! -------------------------------------------------------- subroutine HexElement_pAdapt (self, NNew, nodes, saveGradients, prevSol_num) implicit none @@ -804,7 +806,7 @@ subroutine HexElement_pAdapt (self, NNew, nodes, saveGradients, prevSol_num) call tempStorage % InterpolateSolution (self % storage, nodes, saveGradients) if (prevSol_num > 0) then - ! TODO : call InterpolatePrevSol + end if call tempStorage % destruct() @@ -851,11 +853,14 @@ subroutine HexElement_ConstructIBM( self, Nx, Ny, Nz, NumOfSTL ) integer, intent(in) :: Nx, Ny, Nz, NumOfSTL !< Polynomial orders, num of stl files allocate(self% isInsideBody(0:Nx,0:Ny,0:Nz)) - allocate(self% STL(NumOfSTL,0:Nx,0:Ny,0:Nz)) - - self% isInsideBody = .false. - self% STL = 0 + allocate(self% isForcingPoint(0:Nx,0:Ny,0:Nz)) + allocate(self% STL(0:Nx,0:Ny,0:Nz)) + + self% isInsideBody = .false. + self% isForcingPoint = .false. + self% STL = 0 + self% IP_index = 0 end subroutine HexElement_ConstructIBM - END Module ElementClass \ No newline at end of file + END Module ElementClass diff --git a/Solver/src/libs/mesh/HexMesh.f90 b/Solver/src/libs/mesh/HexMesh.f90 index b1d61c189..a5d80c89c 100644 --- a/Solver/src/libs/mesh/HexMesh.f90 +++ b/Solver/src/libs/mesh/HexMesh.f90 @@ -1,3 +1,11 @@ +! +!////////////////////////////////////////////////////// +! +! @File: +! @Last revision commit: db0669408a09b12909b03856ec101a38d42f4e79 +! +!////////////////////////////////////////////////////// +! #include "Includes.h" MODULE HexMeshClass use Utilities , only: toLower, almostEqual, AlmostEqualRelax @@ -198,7 +206,7 @@ SUBROUTINE HexMesh_Destruct( self ) call self% IBM% destruct( .false. ) end if end if - + END SUBROUTINE HexMesh_Destruct ! ! ------------- @@ -1575,7 +1583,6 @@ SUBROUTINE WriteCoordFile(self,nEqn, FileName) ! ! ------------------------------------------------------------------------ ! Determine the number of degrees of freedom -! TODO: Move this to another place if needed in other parts of the code ! ------------------------------------------------------------------------ ! ndof = 0 @@ -2052,7 +2059,6 @@ subroutine HexMesh_SetConnectivitiesAndLinkFaces(self,nodes,facesList) ! ! -------------------------- ! Allocate MPI Faces storage -! TODO: This can be optimized when facesList is present ! -------------------------- ! if ( MPI_Process % doMPIAction ) then @@ -2178,7 +2184,6 @@ end subroutine HexMesh_UpdateFacesWithPartition ! ----------------------------------------------------------------------------- ! Construct geometry of faces and elements ! -> This routine guarantees that the mapping is subparametric or isoparametric -! -> TODO: Additional considerations are needed for p-nonconforming representations with inner curved faces ! ----------------------------------------------------------------------------- subroutine HexMesh_ConstructGeometry(self, facesList, elementList) implicit none @@ -2365,7 +2370,7 @@ subroutine HexMesh_ConstructGeometry(self, facesList, elementList) end if end select - if ( any(CLN < NSurfR) ) then ! TODO JMT: I have added this.. is correct? + if ( any(CLN < NSurfR) ) then allocate(faceCL(1:3,CLN(1)+1,CLN(2)+1)) call ProjectFaceToNewPoints(SurfInfo(eIDRight) % facePatches(SideIDR), CLN(1), NodalStorage(CLN(1)) % xCGL, & CLN(2), NodalStorage(CLN(2)) % xCGL, faceCL) @@ -2410,16 +2415,16 @@ subroutine HexMesh_ConstructGeometry(self, facesList, elementList) if ( SurfInfo(eID) % IsHex8 .or. all(NSurf == 1) ) cycle if (self % elements(eID) % faceSide(side) == LEFT) then - CLN(1) = f % NfLeft(1) ! TODO in MPI faces, p-adaption has - CLN(2) = f % NfLeft(2) ! not been accounted yet. + CLN(1) = f % NfLeft(1) + CLN(2) = f % NfLeft(2) else - CLN(1) = f % NfRight(1) ! TODO in MPI faces, p-adaption has - CLN(2) = f % NfRight(2) ! not been accounted yet. + CLN(1) = f % NfRight(1) + CLN(2) = f % NfRight(2) end if if ( side .eq. 2 ) then ! Right faces need to be rotated select case ( f % rotation ) - case ( 1, 3, 4, 6 ) ! Local x and y axis are perpendicular ! TODO this is correct? + case ( 1, 3, 4, 6 ) ! Local x and y axis are perpendicular if (CLN(1) /= CLN(2)) then buffer = CLN(1) CLN(1) = CLN(2) @@ -3119,7 +3124,7 @@ subroutine HexMesh_LoadSolutionForRestart( self, controlVariables, initial_itera auxMesh % Nz(eID) = Nz (e % globID) e_aux % globID = e % globID e_aux % Nxyz = [Nx(e % globID) , Ny(e % globID) , Nz(e % globID)] - NDOF = NDOF + (Nx(e % globID) + 1) * (Ny(e % globID) + 1) * (Nz(e % globID) + 1) ! TODO: change for new NDOF + NDOF = NDOF + (Nx(e % globID) + 1) * (Ny(e % globID) + 1) * (Nz(e % globID) + 1) end associate end do @@ -3580,7 +3585,9 @@ subroutine HexMesh_ComputeWallDistances(self,facesList,elementList) if( self% IBM% active ) then allocate(e % geom % normal(NDIM, 0:e % Nxyz(1), 0:e % Nxyz(2), 0:e % Nxyz(3))) e % geom % dWall = huge(1.0_RP) - else + endif + + if( .not. self% IBM% active ) then do k = 0, e % Nxyz(3) ; do j = 0, e % Nxyz(2) ; do i = 0, e % Nxyz(1) xP = e % geom % x(:,i,j,k) @@ -3616,7 +3623,9 @@ subroutine HexMesh_ComputeWallDistances(self,facesList,elementList) allocate(fe % geom % dWall(0:fe % Nf(1), 0:fe % Nf(2))) if( self% IBM% active ) then fe % geom % dWall = huge(1.0_RP) - else + endif + + if( .not. self% IBM% active ) then do j = 0, fe % Nf(2) ; do i = 0, fe % Nf(1) xP = fe % geom % x(:,i,j) @@ -4291,4 +4300,4 @@ subroutine HexMesh_Assign (to, from) end subroutine HexMesh_Assign -END MODULE HexMeshClass \ No newline at end of file +END MODULE HexMeshClass diff --git a/Solver/src/libs/mesh/IBMClass.f90 b/Solver/src/libs/mesh/IBMClass.f90 index 44f60bd8a..cf5986ad3 100644 --- a/Solver/src/libs/mesh/IBMClass.f90 +++ b/Solver/src/libs/mesh/IBMClass.f90 @@ -1340,9 +1340,12 @@ subroutine IBM_GetForcingPointsGeom( this, elements ) dz = maxval(elements(eID)% SurfInfo% corners(3,:)) - minval(elements(eID)% SurfInfo% corners(3,:)) d = min(d,min(abs(dx),abs(dy),abs(dz))) end do - d_min = sqrt(3.0_RP)*d + d_min = sqrt(3.0_RP)*d + + write(*,*) 'd_min =', d_min + #ifdef _HAS_MPI_ - call mpi_allreduce(d_min, this% IP_Distance, 1, MPI_DOUBLE, MPI_MIN, MPI_COMM_WORLD, ierr) + call mpi_allreduce(d_min, this% IP_Distance, 1, MPI_DOUBLE, MPI_MIN, MPI_COMM_WORLD, ierr) Dist = this% IP_Distance this% IP_Distance = 1.5_RP*this% IP_Distance #else @@ -1351,9 +1354,11 @@ subroutine IBM_GetForcingPointsGeom( this, elements ) this% IP_Distance = 1.5_RP*this% IP_Distance #endif + write(*,*) 'ip dist=', Dist + do eID = 1, size(elements) do k = 0, elements(eID)% Nxyz(3); do j = 0, elements(eID)% Nxyz(2); do i = 0, elements(eID)% Nxyz(1) - if( elements(eID)% geom% dWall(i,j,k) .gt. this% IP_Distance ) cycle + if( elements(eID)% geom% dWall(i,j,k) .gt. Dist ) cycle elements(eID)% isForcingPoint(i,j,k) = .true. this% NumOfForcingPoints = this% NumOfForcingPoints + 1 end do; end do; end do @@ -1760,7 +1765,7 @@ subroutine IBM_SourceTerm( this, eID, Q, Q_target, Source, Wallfunction ) u = Q(IRHOU)/rho v = Q(IRHOV)/rho w = Q(IRHOW)/rho - + Source(IRHOU) = rho*u-rho_s*u_s Source(IRHOV) = rho*v-rho_s*v_s Source(IRHOW) = rho*w-rho_s*w_s @@ -1776,7 +1781,6 @@ subroutine IBM_SourceTerm( this, eID, Q, Q_target, Source, Wallfunction ) else Source = -1.0_RP/this% penalization(eID) * Source end if - end subroutine IBM_SourceTerm ! ! Analytical jacobian: dS/dQ @@ -1912,7 +1916,7 @@ subroutine IBM_SemiImplicitTurbulenceShiftJacobian( this, dt, invdS_dQ ) end subroutine IBM_SemiImplicitTurbulenceShiftJacobian ! -! Second order Strang splitting correction Q^*. (1 - dS/dQ)^(-1)*Q^* = Q + dt*(S - dS/dQ*Q) +! Second order Strang splitting correction Q^*. (1/dt - dS/dQ)^(-1)*Q^* = Q + dt*(S - dS/dQ*Q^*) ! ------------------------------------------------------------------------------------------------ subroutine IBM_GetSemiImplicitStep( this, eID, dt, Q ) use PhysicsStorage @@ -1935,7 +1939,7 @@ subroutine IBM_GetSemiImplicitStep( this, eID, dt, Q ) end subroutine IBM_GetSemiImplicitStep ! -! Second order Strang splitting correction Q^*. (1 - dS/dQ)^(-1)*Q^* = Q + dt*(S - dS/dQ*Q) +! Second order Strang splitting correction Q^*. (1/dt - dS/dQ)^(-1)*Q^* = Q + dt*(S - dS/dQ*Q^*) ! ------------------------------------------------------------------------------------------------ subroutine IBM_GetSemiImplicitStepTurbulence( this, ImagePoint, dt, Q, normal, dWall, STLNum ) use PhysicsStorage diff --git a/Solver/src/libs/mesh/KDClass.f90 b/Solver/src/libs/mesh/KDClass.f90 index 955b1e083..8ef5ebfc9 100644 --- a/Solver/src/libs/mesh/KDClass.f90 +++ b/Solver/src/libs/mesh/KDClass.f90 @@ -322,7 +322,7 @@ end subroutine KDtree_plotBlock ! ! ------------------------------------------------- ! This subroutine sets up the starting box of the tree which is called root. -! It coincides with the OBB if PointList not present. +! It coincides whit the OBB if PointList not present. ! ------------------------------------------------ subroutine KDtree_SetUpRoot( this, stl, Vertices, PointList ) @@ -1816,4 +1816,4 @@ function ChunkPartition( TotalChunk, NumOfThreads ) result(ChunkDim) end function ChunkPartition -end module KDClass \ No newline at end of file +end module KDClass diff --git a/Solver/src/libs/mesh/MPI_IBMUtilities.f90 b/Solver/src/libs/mesh/MPI_IBMUtilities.f90 index 456e40888..1f473a58a 100644 --- a/Solver/src/libs/mesh/MPI_IBMUtilities.f90 +++ b/Solver/src/libs/mesh/MPI_IBMUtilities.f90 @@ -1387,4 +1387,4 @@ subroutine sendVectorPlotRoot( ObjectsList, STLNum, partitionVector ) #endif end subroutine sendVectorPlotRoot -end module MPI_IBMUtilities \ No newline at end of file +end module MPI_IBMUtilities diff --git a/Solver/src/libs/mesh/MappedGeometry.f90 b/Solver/src/libs/mesh/MappedGeometry.f90 index 8125d442e..9b8b2c710 100644 --- a/Solver/src/libs/mesh/MappedGeometry.f90 +++ b/Solver/src/libs/mesh/MappedGeometry.f90 @@ -27,7 +27,8 @@ Module MappedGeometryClass REAL(KIND=RP), DIMENSION(:,:,:,:) , ALLOCATABLE :: x ! Position of points in absolute coordinates REAL(KIND=RP), DIMENSION(:,:,:) , ALLOCATABLE :: jacobian, invJacobian ! Mapping Jacobian and 1/Jacobian real(kind=RP) :: volume - real(kind=RP), dimension(:,:,:), allocatable :: dWall ! Minimum distance to the nearest wall + real(kind=RP), dimension(:,:,:), allocatable :: dWall ! Minimum distance to the nearest wall + real(kind=RP), dimension(:,:,:,:), allocatable :: normal ! Wall normal, needed for IB real(kind=RP), dimension(:,:,:,:) , allocatable :: ncXi, ncEta, ncZeta ! Normals at the complementary grid nodes real(kind=RP), dimension(:,:,:,:) , allocatable :: t1cXi, t1cEta, t1cZeta ! Tangent vector 1 at the complementary grid nodes real(kind=RP), dimension(:,:,:,:) , allocatable :: t2cXi, t2cEta, t2cZeta ! Tangent vector 2 at the complementary grid nodes @@ -164,6 +165,7 @@ pure SUBROUTINE DestructMappedGeometry(self) safedeallocate( self % JfcXi ) safedeallocate( self % JfcEta ) safedeallocate( self % JfcZeta ) + safedeallocate( self % normal ) END SUBROUTINE DestructMappedGeometry ! @@ -861,4 +863,4 @@ end subroutine SetMappingsToCrossProduct !/////////////////////////////////////////////////////////////////////////////// ! -END Module MappedGeometryClass \ No newline at end of file +END Module MappedGeometryClass diff --git a/Solver/src/libs/mesh/Read_GMSH.f90 b/Solver/src/libs/mesh/Read_GMSH.f90 index be703b5ce..dbdc74c69 100644 --- a/Solver/src/libs/mesh/Read_GMSH.f90 +++ b/Solver/src/libs/mesh/Read_GMSH.f90 @@ -54,6 +54,8 @@ MODULE Read_GMSH private public ConstructMesh_FromGMSHFile_v4_, ConstructMesh_FromGMSHFile_v2_, CheckGMSHversion, NumOfElems_GMSH_v4, NumOfElems_GMSH_v2 + public MSH_node_block_t, MSH_point_t, MSH_element_block_t, EL_MAX_ORDER, SUPPORTED_EL_TYPES, ReorderElement, MSH_LEN + ! ! ------------------------------------------------ ! Local temporary element storage. diff --git a/Solver/src/libs/mesh/TessellationTypes.f90 b/Solver/src/libs/mesh/TessellationTypes.f90 index 2d3d2d0c1..25448c3d7 100644 --- a/Solver/src/libs/mesh/TessellationTypes.f90 +++ b/Solver/src/libs/mesh/TessellationTypes.f90 @@ -1,4 +1,3 @@ - #include "Includes.h" module TessellationTypes @@ -9,6 +8,11 @@ module TessellationTypes implicit none + public :: DescribeSTLPartitions + + integer, parameter :: FORCING_POINT = 1, NOT_FORCING_POINT = 0 + integer, parameter :: POINT_ON_PLANE = 0, POINT_IN_FRONT_PLANE = 1, POINT_BEHIND_PLANE = 2, NumOfVertices = 3 + ! ! ************************************************** ! Main type for a list of points @@ -34,14 +38,17 @@ module TessellationTypes class(point_type), pointer :: next => null(), prev => null() - real(kind=rp), dimension(NDIM) :: coords, ImagePoint_coords, normal + real(kind=rp), dimension(NDIM) :: coords, ImagePoint_coords, normal, xi real(kind=rp) :: theta, dist, Rank - integer :: index, element_index, & - Translate = 0, partition, objIndex + integer :: index, element_index, NumOfIntersections, & + Translate = 0, partition, objIndex, isForcingPoint, & + STLNum, element_in integer, dimension(NDIM) :: local_Position logical :: delete = .false., isInsideBody = .false., & - forcingPoint = .false. - + forcingPoint = .false., isInsideBox = .false. + real(kind=RP), allocatable :: invPhi(:,:), b(:) + integer, allocatable :: nearestPoints(:) + contains procedure :: copy => point_type_copy @@ -54,6 +61,7 @@ module TessellationTypes type ObjectLinkedList class(object_type), pointer :: head => null() + integer :: NumOfObjs contains procedure :: add => ObjectLinkedList_add @@ -73,7 +81,6 @@ module TessellationTypes real(kind=rp), dimension(NDIM) :: normal, tangent, coords integer :: index, NumOfVertices integer, dimension(2) :: partition - logical :: ComputeIntegrals = .true. contains procedure :: copy => object_type_copy @@ -90,24 +97,73 @@ module TessellationTypes type(Object_type), dimension(:), allocatable :: ObjectsList integer :: NumOfObjs, partition, & - motionAxis, body + motionAxis, body, & + NumOfObjs_OLD real(kind=RP) :: angularVelocity, ds, & Velocity, & rotationMatrix(NDIM,NDIM) - logical :: move + logical :: move, show character(len=LINE_LENGTH) :: filename, motionType contains procedure :: ReadTessellation procedure :: getRotationaMatrix => STLfile_getRotationaMatrix procedure :: getDisplacement => STLfile_getDisplacement + procedure :: Clip => STL_Clip + procedure :: updateNormals => STL_updateNormals procedure :: destroy => STLfile_destroy procedure :: Describe => Describe_STLfile procedure :: plot => STLfile_plot - procedure :: DescribePartitions => DescribePartitions_STLfile end type + + + type ObjsDataLinkedList_t + type(ObjData_t), pointer :: head => null() + integer :: no_of_entries = 0 + contains + procedure :: Add => ObjsDataLinkedList_Add + procedure :: check => CheckObj + procedure :: Destruct => ObjsDataLinkedList_Destruct + end type ObjsDataLinkedList_t + + type ObjData_t + integer :: value + type(ObjData_t), pointer :: next + end type ObjData_t + + + type ObjsRealDataLinkedList_t + class(ObjRealData_t), pointer :: head => NULL() + integer :: no_of_entries = 0 + contains + procedure :: Add => ObjsRealDataLinkedList_Add + procedure :: check => CheckReal + procedure :: Destruct => ObjsRealDataLinkedList_Destruct + end type ObjsRealDataLinkedList_t + + type ObjRealData_t + real(kind=RP) :: value + class(ObjRealData_t), pointer :: next + end type ObjRealData_t + + + + interface ObjsDataLinkedList_t + module procedure ConstructObjsDataLinkedList + end interface + + interface ObjsRealDataLinkedList_t + module procedure ConstructObjsRealDataLinkedList + end interface + + + + + + + interface PointLinkedList module procedure :: PointLinkedList_Construct end interface @@ -120,6 +176,165 @@ module TessellationTypes character(len=6) :: LINEAR = "linear" contains + + function ConstructObjsDataLinkedList( ) + implicit none + type(ObjsDataLinkedList_t) :: ConstructObjsDataLinkedList + + ConstructObjsDataLinkedList% head => null() + ConstructObjsDataLinkedList% no_of_entries = 0 + + end function ConstructObjsDataLinkedList + + function ConstructObjsRealDataLinkedList( ) + implicit none + type(ObjsRealDataLinkedList_t) :: ConstructObjsRealDataLinkedList + + ConstructObjsRealDataLinkedList% head => null() + ConstructObjsRealDataLinkedList% no_of_entries = 0 + + end function ConstructObjsRealDataLinkedList + + subroutine ObjsDataLinkedList_Add( this, value ) + implicit none + !-arguments---------------------------------------------- + class(ObjsDataLinkedList_t), intent(inout) :: this + integer, intent(in) :: value + !-local-variables---------------------------------------- + type(ObjData_t), pointer :: current + integer :: i + + if ( this% no_of_entries .eq. 0 ) then + allocate( this% head ) + this% head% value = value + this% no_of_entries = 1 + else + current => this% head + do i = 1, this% no_of_entries-1 + current => current% next + end do + allocate(current% next) + current% next% value = value + this% no_of_entries = this% no_of_entries + 1 + end if + + end subroutine ObjsDataLinkedList_Add + + subroutine ObjsRealDataLinkedList_Add( this, value ) + implicit none + !-arguments--------------------------------------------- + class(ObjsRealDataLinkedList_t), intent(inout) :: this + real(kind=RP), intent(in) :: value + !-local-variables--------------------------------------- + type(ObjRealData_t), pointer :: current + integer :: i + + if ( this% no_of_entries .eq. 0 ) then + allocate( this% head ) + this% head% value = value + this% no_of_entries = 1 + else + current => this% head + do i = 1, this% no_of_entries-1 + current => current% next + end do + allocate(current% next) + current% next% value = value + this% no_of_entries = this% no_of_entries + 1 + end if + + end subroutine ObjsRealDataLinkedList_Add + + logical function CheckObj( this, value ) result( found ) + implicit none + !-arguments--------------------------------------------- + class(ObjsDataLinkedList_t), intent(inout) :: this + integer, intent(in) :: value + !-local-variables--------------------------------------- + type(ObjData_t), pointer :: current + integer :: i + + found = .false. + + if( this% no_of_entries .eq.0 ) return + + current => this% head + + do i = 1, this% no_of_entries + if( current% value .eq. value ) then + found = .true. + exit + end if + current => current% next + end do + + end function CheckObj + + logical function CheckReal( this, value ) result( found ) + implicit none + !-arguments---------------------------------------------- + class(ObjsRealDataLinkedList_t), intent(inout) :: this + real(kind=RP), intent(in) :: value + !-local-variables---------------------------------------- + type(ObjRealData_t), pointer :: current + integer :: i + + found = .false. + + if( this% no_of_entries .eq.0 ) return + + current => this% head + + do i = 1, this% no_of_entries + if( almostEqual(current% value,value) ) then + found = .true. + exit + end if + current => current% next + end do + + end function CheckReal + + elemental subroutine ObjsDataLinkedList_Destruct(this) + implicit none + !-arguments--------------------------------------------- + class(ObjsDataLinkedList_t), intent(inout) :: this + !-local-variables--------------------------------------- + type(ObjData_t), pointer :: data, nextdata + integer :: i + + data => this% head + do i = 1, this% no_of_entries + nextdata => data% next + + deallocate(data) + data => nextdata + end do + + this% no_of_entries = 0 + + end subroutine ObjsDataLinkedList_Destruct + + elemental subroutine ObjsRealDataLinkedList_Destruct(this) + implicit none + !-arguments--------------------------------------------- + class(ObjsRealDataLinkedList_t), intent(inout) :: this + !-local-variables--------------------------------------- + type(ObjRealData_t), pointer :: data, nextdata + integer :: i + + data => this% head + do i = 1, this% no_of_entries + nextdata => data% next + + deallocate(data) + data => nextdata + end do + + this% no_of_entries = 0 + + end subroutine ObjsRealDataLinkedList_Destruct + ! !///////////////////////////////////////////////////////////////////////////////////////////// ! @@ -142,20 +357,19 @@ end function PointLinkedList_Construct ! This subroutine adds a point to a points list ! ------------------------------------------------ subroutine PointLinkedList_Add( this, point ) - implicit none - + !-arguments----------------------------------- class(PointLinkedList) :: this type(point_type) :: point - - type(point_type), pointer :: current => null(), currentNext => null() + !-local-variables----------------------------- + type(point_type), pointer :: current, & + currentNext if( .not. associated(this% head) ) then allocate(this% head) call this% head% copy(point) this% head% next => this% head this% head% prev => this% head - return else current => this% head% prev currentNext => current% next @@ -179,7 +393,6 @@ end subroutine PointLinkedList_Add ! This subroutine deletes the point p from a points list ! ------------------------------------------------ subroutine PointLinkedList_Remove( this, p ) - implicit none !-arguments-------------------------------------------------------------- class(PointLinkedList), intent(inout) :: this @@ -212,11 +425,10 @@ end subroutine PointLinkedList_Remove ! This subroutine deletes the last point from a points list ! ------------------------------------------------ subroutine PointLinkedList_RemoveLast( this ) - implicit none - + !-arguments-------------------------------------------------------- class(PointLinkedList), intent(inout) :: this - + !-local-variables-------------------------------------------------- type(point_type), pointer :: data => null(), dataPrev => null() data => this% head% prev @@ -245,20 +457,19 @@ end subroutine PointLinkedList_RemoveLast ! This subroutine deletes a point from a points list ! ------------------------------------------------ subroutine PointLinkedList_Destruct( this ) - implicit none - + !-arguments-------------------------------------- class(PointLinkedList), intent(inout) :: this - + !-local-variables-------------------------------- class(point_type), pointer :: current, next - integer :: i + integer :: i if( this% NumOfPoints .eq. 0 ) return current => this% head next => current% next - - do i = 1, this% NumOfPoints + + do i = 2, this% NumOfPoints deallocate(current) current => next next => current% next @@ -275,9 +486,8 @@ end subroutine PointLinkedList_Destruct ! ------------------------------------------------ subroutine point_type_copy( this, point ) - implicit none - + !-arguments------------------------------- class(point_type), intent(inout) :: this type(point_type), intent(in) :: point @@ -298,12 +508,12 @@ end subroutine point_type_copy ! This subroutine initializes an objects list ! ------------------------------------------------ function ObjectLinkedList_Construct( ) - implicit none - + !-local-variables------------------------------------- type(ObjectLinkedList) :: ObjectLinkedList_Construct ObjectLinkedList_Construct% head => null() + ObjectLinkedList_Construct% NumOfObjs = 0 end function ObjectLinkedList_Construct ! @@ -314,21 +524,19 @@ end function ObjectLinkedList_Construct ! ------------------------------------------------ subroutine ObjectLinkedList_Add( this, object ) - implicit none - + !arguemnts-------------------------------------------- class(ObjectLinkedList) :: this type(Object_type) :: object - - type(object_type), pointer :: current => null(), currentNext => null() - + !-local-variables------------------------------------- + type(object_type), pointer :: current => null(), & + currentNext => null() if( .not. associated(this% head) ) then allocate(this% head) call this% head% copy(object) this% head% next => this% head this% head% prev => this% head - return else current => this% head% prev currentNext => current% next @@ -340,11 +548,12 @@ subroutine ObjectLinkedList_Add( this, object ) current% next => currentNext nullify(this% head% prev) this% head% prev => currentNext + nullify(current, currentNext) end if - nullify(current, currentNext) + this% NumOfObjs = this% NumOfObjs + 1 - end subroutine ObjectLinkedList_Add + end subroutine ObjectLinkedList_Add ! !///////////////////////////////////////////////////////////////////////////////////////////// ! @@ -352,12 +561,12 @@ end subroutine ObjectLinkedList_Add ! This subroutine destroys an objects list ! ------------------------------------------------ subroutine ObjectLinkedList_Destruct( this ) - implicit none - + !arguemnts---------------------------------------- class(ObjectLinkedList), intent(inout) :: this - - type(object_type), pointer :: data => null(), dataPrev => null() + !-local-variables--------------------------------- + type(object_type), pointer :: data => null(), & + dataPrev => null() if( .not. associated(this% head) ) return @@ -375,6 +584,8 @@ subroutine ObjectLinkedList_Destruct( this ) deallocate(data) + this% NumOfObjs = this% NumOfObjs - 1 + nullify(dataPrev) end subroutine ObjectLinkedList_Destruct @@ -384,16 +595,14 @@ end subroutine ObjectLinkedList_Destruct ! ------------------------------------------------- ! This subroutine builds an object ! ----------------------------------------------- - subroutine object_type_build( this, Points, normal, NumOfVertices, index, computeIntegrals ) - + subroutine object_type_build( this, Points, normal, NumOfVertices, index ) implicit none !-arguments--------------------------- - class(Object_type), intent(inout) :: this - real(kind=RP), dimension(:,:), intent(in) :: Points - real(kind=RP), dimension(:), intent(in) :: normal - integer, intent(in) :: NumOfVertices, index - logical, intent(in) :: computeIntegrals - !-local-variables----------------------- + class(Object_type), intent(inout) :: this + real(kind=RP), intent(in) :: Points(:,:) + real(kind=RP), intent(in) :: normal(:) + integer, intent(in) :: NumOfVertices, index + !-local-variables-------------------------------------- integer :: i if( allocated(this% vertices) ) deallocate(this% vertices) @@ -405,7 +614,6 @@ subroutine object_type_build( this, Points, normal, NumOfVertices, index, comput this% index = index this% normal = normal - this% computeIntegrals = computeIntegrals this% NumOfVertices = NumOfVertices end subroutine object_type_build @@ -419,8 +627,8 @@ subroutine object_type_copy( this, Object ) implicit none !-arguments--------------------------- - class(Object_type), intent(inout) :: this - type(Object_type), intent(in) :: Object + class(Object_type), intent(inout) :: this + type(Object_type), intent(in) :: Object !-local-variables----------------------- integer :: i @@ -432,7 +640,6 @@ subroutine object_type_copy( this, Object ) this% index = Object% index this% normal = Object% normal - this% computeIntegrals = Object% computeIntegrals this% NumOfVertices = Object% NumOfVertices this% partition = Object% partition @@ -447,7 +654,7 @@ subroutine object_type_destruct( this ) implicit none !-arguments--------------------------- - class(Object_type), intent(inout) :: this + class(Object_type), intent(inout) :: this deallocate(this% vertices) @@ -503,7 +710,7 @@ subroutine addObj( ObjList, Object ) nullify(Obj, Objprev) - end subroutine addObj + end subroutine addObj ! !///////////////////////////////////////////////////////////////////////////////////////////// ! @@ -515,10 +722,9 @@ subroutine Describe_STLfile( this, filename ) use MPI_Process_Info use PhysicsStorage implicit none - !-arguments-------------------------------- + !-arguments----------------------------------- class(STLfile), intent(inout) :: this character(len=*), intent(in) :: filename - !-local-variables-------------------------- if( MPI_Process% isRoot) then @@ -527,16 +733,15 @@ subroutine Describe_STLfile( this, filename ) write(STD_OUT,'(/)') call SubSection_Header('Stl file "' // trim(fileName) // '"') - write(STD_OUT,'(30X,A,A32,I10)') "->" , "Number of objects: " , this% NumOfObjs - write(STD_OUT,'(30X,A,A32,I10)') "->" , "Number of stored points: " , 3*this% NumOfObjs + write(STD_OUT,'(30X,A,A35,I10)') "->" , "Number of objects: " , this% NumOfObjs if( this% move ) then - write(STD_OUT,'(30X,A,A32,A10)') "->" , "Motion: " , this% motionType + write(STD_OUT,'(30X,A,A35,A10)') "->" , "Motion: " , this% motionType if( this% motionType .eq. ROTATION ) then - write(STD_OUT,'(30X,A,A32,F10.3,A)') "->" , "Angular Velocity: " , this% angularVelocity/timeref, " rad/s." + write(STD_OUT,'(30X,A,A35,F10.3,A)') "->" , "Angular Velocity: " , abs(this% angularVelocity), " rad/s." elseif( this% motionType .eq. LINEAR ) then - write(STD_OUT,'(30X,A,A32,F10.3,A)') "->" , "Translation Velocity: " , this% Velocity*(Lref/timeref), " m/s." + write(STD_OUT,'(30X,A,A35,F10.3,A)') "->" , "Translation Velocity: " , this% Velocity*(Lref/timeref), " m/s." end if - write(STD_OUT,'(30X,A,A32,I10)') "->" , "Axis of motion: " , this% motionAxis + write(STD_OUT,'(30X,A,A35,I10)') "->" , "Axis of motion: " , this% motionAxis end if end if @@ -548,28 +753,27 @@ end subroutine Describe_STLfile ! ------------------------------------------------- ! This subroutine describes the .stl file ! ----------------------------------------------- - subroutine DescribePartitions_STLfile( this ) + subroutine DescribeSTLPartitions( partition, NumOfObjs ) use Headers use MPI_Process_Info implicit none !-arguments-------------------------------- - class(STLfile), intent(inout) :: this + integer, intent(in) :: partition, NumOfObjs !-local-variables-------------------------- character(len=LINE_LENGTH) :: myString - write(myString,'(i100)') this% partition + write(myString,'(i100)') partition+1 - if( this% partition .eq. 1 ) then + if( partition .eq. 0 ) then write(STD_OUT,'(/)') call Section_Header("stl partitions") write(STD_OUT,'(/)') end if call SubSection_Header('partition ' // trim(adjustl(myString))) - write(STD_OUT,'(30X,A,A32,I10)') "->" , "Number of objects: " , this% NumOfObjs - write(STD_OUT,'(30X,A,A32,I10)') "->" , "Number of stored points: " , 3*this% NumOfObjs + write(STD_OUT,'(30X,A,A32,I10)') "->" , "Number of objects: " , NumOfObjs - end subroutine DescribePartitions_STLfile + end subroutine DescribeSTLPartitions ! !///////////////////////////////////////////////////////////////////////////////////////////// ! @@ -579,11 +783,12 @@ end subroutine DescribePartitions_STLfile subroutine ReadTessellation( this, filename ) use PhysicsStorage implicit none - !-arguments-------------------------------- + !-arguments--------------------------------------- class(STLfile), intent(inout) :: this character(len=*), intent(in) :: filename - !-local-variables--------------------------- - integer :: i, j, funit, NumOfTri, fileStat, NumOfVertices + !-local-variables--------------------------------- + integer :: i, j, funit, NumOfTri, & + fileStat, NumOfVertices integer*2 :: padding real*4, dimension(3) :: norm, vertex character(len=80) :: header @@ -617,7 +822,7 @@ subroutine ReadTessellation( this, filename ) allocate(Objs(i)% vertices(NumOfVertices)) do j = 1, NumOfVertices read(funit) vertex(1), vertex(2), vertex(3) - Objs(i)% vertices(j)% coords = vertex/Lref + Objs(i)% vertices(j)% coords = vertex!/Lref -> always 1 end do read(funit) padding Objs(i)% index = i @@ -628,21 +833,55 @@ subroutine ReadTessellation( this, filename ) end associate close(unit=funit) + + end subroutine ReadTessellation + + subroutine STLfile_plot( this, iter ) + use MPI_Process_Info + use PhysicsStorage + implicit none + !-arguments---------------------------------------------- + class(STLfile), intent(inout) :: this + integer, intent(in) :: iter + !-local-variables---------------------------------------- + character(len=LINE_LENGTH) :: filename + integer :: i, j, funit + integer*2 :: padding = 0 + real*4, dimension(3) :: norm, vertex + character(len=80) :: header = repeat(' ',80) + + funit = UnusedUnit() - call this% describe( filename ) + write(filename,'(A,A,I10.10)') trim(this% filename),'_', iter - end subroutine ReadTessellation + open(funit,file='MESH/'//trim(filename)//'.stl', status='unknown',access='stream',form='unformatted') + + write(funit) header, this% NumOfObjs + + do i = 1, this% NumOfObjs + norm = this% ObjectsList(i)% normal + write(funit) norm(1), norm(2), norm(3) + do j = 1, size(this% ObjectsList(i)% vertices) + vertex = this% ObjectsList(i)% vertices(j)% coords * Lref + write(funit) vertex(1), vertex(2), vertex(3) + end do + write(funit) padding + end do + + close(funit) + end subroutine STLfile_plot + subroutine STLfile_GetMotionInfo( this, STLfilename, NumOfSTL ) use FileReadingUtilities use FTValueDictionaryClass use PhysicsStorage implicit none - !-arguments------------------------------------------ + !-arguments------------------------------------------------------- type(STLfile), intent(inout) :: this character(len=*), intent(in) :: STLfilename integer, intent(in) :: NumOfSTL - !-local-arguments------------------------------------ + !-local-arguments------------------------------------------------- integer :: i integer, allocatable :: motionAxis_STL real(kind=RP), allocatable :: angularVelocity_STL, Velocity_STL @@ -677,14 +916,14 @@ subroutine STLfile_GetMotionInfo( this, STLfilename, NumOfSTL ) end select if( allocated(angularVelocity_STL) ) then - this% angularVelocity = angularVelocity_STL*timeref + this% angularVelocity = angularVelocity_STL elseif( this% motionType .eq. ROTATION ) then print *, "STLfile_GetMotionInfo: 'angular velocity' must be specified for ", ROTATION, " motion." error stop end if if( allocated(Velocity_STL) ) then - this% Velocity = Velocity_STL/(Lref/timeref) + this% Velocity = Velocity_STL elseif( this% motionType .eq. LINEAR ) then print *, "STLfile_GetMotionInfo: 'velocity' must be specified for ", LINEAR, " motion." error stop @@ -708,16 +947,49 @@ subroutine STLfile_GetMotionInfo( this, STLfilename, NumOfSTL ) end subroutine STLfile_GetMotionInfo - subroutine STLfile_getRotationaMatrix( this, dt ) - + subroutine STLfile_getRotationaMatrix( this, dt, angle ) + use PhysicsStorage + use FluidData implicit none !-arguments----------------------------- - class(STLfile), intent(inout):: this - real(kind=RP), intent(in) :: dt + class(STLfile), intent(inout):: this + real(kind=RP), intent(in) :: dt + real(kind=RP), optional, intent(in) :: angle !-local-variables----------------------- - real(kind=RP) :: theta + real(kind=RP) :: time, theta + + if( present(angle) ) then + + this% rotationMatrix = 0.0_RP + theta = PI/180.0_RP*angle + + select case( this% motionAxis ) + case( IX ) + this% rotationMatrix(1,1) = 1.0_RP + this% rotationMatrix(2,2) = cos(theta) + this% rotationMatrix(2,3) = -sin(theta) + this% rotationMatrix(3,2) = sin(theta) + this% rotationMatrix(3,3) = cos(theta) + case( IY ) + this% rotationMatrix(2,2) = 1.0_RP + this% rotationMatrix(1,1) = cos(theta) + this% rotationMatrix(1,3) = sin(theta) + this% rotationMatrix(3,1) = -sin(theta) + this% rotationMatrix(3,3) = cos(theta) + case( IZ ) + this% rotationMatrix(3,3) = 1.0_RP + this% rotationMatrix(1,1) = cos(theta) + this% rotationMatrix(1,2) = -sin(theta) + this% rotationMatrix(2,1) = sin(theta) + this% rotationMatrix(2,2) = cos(theta) + end select + return + end if + +#if defined(NAVIERSTOKES) + time = dt * Lref/refValues%V - theta = this% angularVelocity * dt + theta = this% angularVelocity * time this% rotationMatrix = 0.0_RP @@ -741,11 +1013,10 @@ subroutine STLfile_getRotationaMatrix( this, dt ) this% rotationMatrix(2,1) = sin(theta) this% rotationMatrix(2,2) = cos(theta) end select - +#endif end subroutine STLfile_getRotationaMatrix subroutine STLfile_getDisplacement( this, dt ) - implicit none !-arguments----------------------------- class(STLfile), intent(inout):: this @@ -754,6 +1025,26 @@ subroutine STLfile_getDisplacement( this, dt ) this% ds = this% Velocity * dt end subroutine STLfile_getDisplacement + + subroutine STL_updateNormals( this ) + use MappedGeometryClass + implicit none + !-arguments------------------------------------ + class(STLfile), intent(inout):: this + !-local-variables------------------------------ + real(kind=rp) :: du(NDIM), dv(NDIM), dw(NDIM) + integer :: i +!$omp parallel +!$omp do schedule(runtime) private(du,dv,dw) + do i = 1, this% NumOfObjs + du = this% ObjectsList(i)% vertices(2)% coords - this% ObjectsList(i)% vertices(1)% coords + dw = this% ObjectsList(i)% vertices(3)% coords - this% ObjectsList(i)% vertices(1)% coords + call vcross(du,dw,dv) + this% ObjectsList(i)% normal = dv/norm2(dv) + end do +!$omp end do +!$omp end parallel + end subroutine STL_updateNormals subroutine STLfile_destroy( this ) @@ -770,55 +1061,207 @@ subroutine STLfile_destroy( this ) deallocate(this% ObjectsList) end subroutine STLfile_destroy - - subroutine STLfile_plot( this, timestep ) - use MPI_Process_Info +!////////////////////////////////////////////// +! +! Procedures form STL triangles splitting +! +!////////////////////////////////////////////// +! SPLITTING TRIANGLES + subroutine STL_Clip( this, minplane, maxplane, axis ) implicit none - !-arguments---------------------------------------------- + !-arguments-------------------------------------------------------------------- class(STLfile), intent(inout) :: this - integer, intent(in) :: timestep - !-local-variables---------------------------------------- - character(len=LINE_LENGTH) :: filename, myString - integer :: i, j, funit - - if( .not. MPI_Process% isRoot ) return - - funit = UnusedUnit() - - write(myString,'(i100)') timestep - - filename = trim(this% filename)//'_'//trim(adjustl(myString)) + real(kind=RP), intent(in) :: minplane, maxplane + integer, intent(in) :: axis + !-local-variables-------------------------------------------------------------- + type(ObjectLinkedList) :: ObjectsLinkedList, ObjectsLinkedListFinal + type(object_type), pointer :: obj + real(kind=RP) :: minplane_point(NDIM), maxplane_point(NDIM), & + minplane_normal(NDIM), maxplane_normal(NDIM), & + Objmax, Objmin, vertices(NDIM,3) + integer :: i, j + + minplane_point = 0.0_RP + maxplane_point = 0.0_RP + minplane_normal = 0.0_RP + maxplane_normal = 0.0_RP + + minplane_point(axis) = minplane + maxplane_point(axis) = maxplane + minplane_normal(axis) = -1.0_RP + maxplane_normal(axis) = 1.0_RP + + ObjectsLinkedList = ObjectLinkedList_Construct() + ObjectsLinkedListFinal = ObjectLinkedList_Construct() + + do i = 1, this% NumOfObjs + call ClipPloy( this% ObjectsList(i), maxplane_normal, maxplane_point, ObjectsLinkedList ) + end do + + obj => ObjectsLinkedList% head + + do i = 1, ObjectsLinkedList% NumOfObjs + call ClipPloy( obj, minplane_normal, minplane_point, ObjectsLinkedListFinal ) + obj => obj% next + end do - open(funit,file='IBM/'//trim(filename)//'.tec', status='unknown') + call ObjectsLinkedList% destruct() + + call this% destroy() + + this% partition = 1 + this% NumOfObjs = ObjectsLinkedListFinal% NumOfObjs + + allocate(this% ObjectsList(this% NumOfObjs)) - write(funit,"(a28)") 'TITLE = "Partition objects"' - write(funit,"(a25)") 'VARIABLES = "x", "y", "z"' - - do i = 1, SIZE(this% ObjectsList) - write(funit,"(a66)") 'ZONE NODES=3, ELEMENTS = 1, DATAPACKING=POINT, ZONETYPE=FETRIANGLE' - do j = 1, this% ObjectsList(i)% NumOfVertices - write(funit,'(3E13.5)') this% ObjectsList(i)% vertices(j)% coords(1), & - this% ObjectsList(i)% vertices(j)% coords(2), & - this% ObjectsList(i)% vertices(j)% coords(3) + obj => ObjectsLinkedListFinal% head + + do i = 1, this% NumOfObjs + allocate(this% ObjectsList(i)% vertices(obj% NumOfVertices)) + do j = 1, obj% NumOfVertices + this% ObjectsList(i)% vertices(j)% coords = obj% vertices(j)% coords end do - write(funit,'(3i2)') 1, 2, 3 - end do + this% ObjectsList(i)% normal = obj% normal + this% ObjectsList(i)% index = i + this% ObjectsList(i)% NumOfVertices = obj% NumOfVertices + this% ObjectsList(i)% partition = 1 + obj => obj% next + end do - close(funit) + call ObjectsLinkedListFinal% destruct() + + call this% describe(this% filename) + + call this% plot(0) + + end subroutine STL_Clip + + + subroutine ClipPloy( obj, plane_normal, plane_point, ObjectsLinkedList ) + use MappedGeometryClass + implicit none + !-arguments-------------------------------------------------------------------- + type(object_type), intent(in) :: obj + real(kind=rp), intent(in) :: plane_normal(:), plane_point(:) + type(ObjectLinkedList), intent(inout) :: ObjectsLinkedList + !-local-variables-------------------------------------------------------------- + real(kind=RP) :: PointFront(NDIM,4), PointBack(NDIM,4) + type(object_type) :: objBack + real(kind=RP) :: PointA(NDIM), PointB(NDIM), Point_inters(NDIM), v(NDIM),u(NDIM),W(NDIM) + integer :: PointA_Is, PointB_Is, n_front, n_back, i + + n_front = 0; n_back = 0 + + pointA = obj% vertices(obj% NumOfVertices)% coords + + PointA_Is = Point_wrt_Plane( plane_normal, plane_point, pointA ) - end subroutine STLfile_plot + do i = 1, obj% NumOfVertices + PointB = obj% vertices(i)% coords + PointB_Is = Point_wrt_Plane( plane_normal, plane_point, pointB ) + if( PointB_Is .eq. POINT_IN_FRONT_PLANE ) then + if( PointA_Is .eq. POINT_BEHIND_PLANE ) then + Point_inters = EdgePlaneIntersection( plane_normal, plane_point, PointA, PointB ) + n_front = n_front + 1 + n_back = n_back + 1 + PointFront(:,n_front) = Point_Inters + PointBack(:,n_back) = Point_Inters + end if + n_front = n_front + 1 + PointFront(:,n_front) = PointB + elseif( PointB_Is .eq. POINT_BEHIND_PLANE ) then + if( PointA_Is .eq. POINT_IN_FRONT_PLANE ) then + Point_inters = EdgePlaneIntersection( plane_normal, plane_point, PointA, PointB ) + n_front = n_front + 1 + n_back = n_back + 1 + PointFront(:,n_front) = Point_Inters + PointBack(:,n_back) = Point_Inters + elseif( PointA_Is .eq. POINT_ON_PLANE ) then + n_back = n_back + 1 + PointBack(:,n_back) = PointA + end if + n_back = n_back + 1 + PointBack(:,n_back) = PointB + else + n_front = n_front + 1 + PointFront(:,n_front) = PointB + if( PointA_Is .eq. POINT_BEHIND_PLANE ) then + n_back = n_back + 1 + PointBack(:,n_back) = PointB + end if + end if + PointA = PointB + PointA_Is = PointB_Is + end do + + ! take only back elements !! + if( n_back .eq. 3 ) then + call objBack% build( PointBack(:,1:n_back), obj% normal, obj% NumOfVertices, obj% index ) + call ObjectsLinkedList% add(objBack) + call objBack% destruct() + elseif( n_back .eq. 4 ) then + call objBack% build( PointBack(:,1:n_back-1), obj% normal, obj% NumOfVertices, obj% index ) + call ObjectsLinkedList% add(objBack) + call objBack% destruct() + call objBack% build( PointBack(:,(/n_back-1,n_back,1/)), obj% normal, obj% NumOfVertices, obj% index ) + call ObjectsLinkedList% add(objBack) + call objBack% destruct() + elseif( n_back .eq. 0 ) then + else + print *, "ClipPloy:: wrong number of vertices: ", n_back + error stop + end if + end subroutine ClipPloy -!////////////////////////////////////////////// + integer function Point_wrt_Plane( plane_normal, plane_point, point ) result( PointIs ) + use MappedGeometryClass + implicit none + !-arguments----------------------------------------------------------------- + real(kind=RP), dimension(:), intent(in) :: plane_normal, plane_point, point + !-local-variables----------------------------------------------------------- + real(kind=RP) :: d, eps - subroutine TecFileHeader( FileName, Title, I, J, K, funit, DATAPACKING, ZONETYPE, NO ) + d = dot_product(plane_normal,point) - dot_product(plane_normal,plane_point) + + if( d > EPSILON(eps) ) then + PointIs = POINT_IN_FRONT_PLANE + elseif( d < -EPSILON(eps) ) then + PointIs = POINT_BEHIND_PLANE + else + PointIs = POINT_ON_PLANE + end if + end function Point_wrt_Plane + + function EdgePlaneIntersection( plane_normal, plane_point, PointA, PointB ) result( Point_inters ) + use MappedGeometryClass implicit none + !-arguments----------------------------------------------------------------- + real(kind=RP), intent(in) :: plane_normal(:), plane_point(:), & + PointA(:), PointB(:) + real(kind=RP) :: Point_inters(NDIM) + !-local-variables----------------------------------------------------------- + real(kind=RP) :: B_A(NDIM), d, t + + B_A = PointB - PointA + d = dot_product(plane_normal,plane_point) + + t = ( d - dot_product(plane_normal,PointA) )/dot_product(plane_normal,B_A) + + Point_inters = PointA + t*B_A + + end function EdgePlaneIntersection +!////////////////////////////////////////////// + + subroutine TecFileHeader( FileName, Title, I, J, K, funit, DATAPACKING, ZONETYPE ) + + implicit none + !-arguments------------------------------------------------------ character(len=*), intent(in) :: FileName, Title, DATAPACKING integer, intent(in) :: I, J, K character(len=*), optional :: ZONETYPE - logical, optional :: NO integer, intent(out) :: funit funit = UnusedUnit() @@ -834,5 +1277,5 @@ subroutine TecFileHeader( FileName, Title, I, J, K, funit, DATAPACKING, ZONETYPE end if end subroutine TecFileHeader - + end module TessellationTypes diff --git a/Solver/src/libs/monitors/SurfaceMonitor.f90 b/Solver/src/libs/monitors/SurfaceMonitor.f90 index 914497a27..45bfe5ebc 100644 --- a/Solver/src/libs/monitors/SurfaceMonitor.f90 +++ b/Solver/src/libs/monitors/SurfaceMonitor.f90 @@ -22,7 +22,7 @@ module SurfaceMonitorClass ! type SurfaceMonitor_t logical :: active - logical :: isDimensionless + logical :: isDimensionless, IBM = .false. integer :: ID real(kind=RP) :: direction(NDIM) integer :: marker @@ -81,7 +81,7 @@ subroutine SurfaceMonitor_Initialization( self , mesh , ID, solution_file , Firs character(len=STR_LEN_MONITORS) :: directionName integer, allocatable :: marker character(len=STR_LEN_MONITORS) :: markerName - integer :: pos, i + integer :: pos, i, STLNum integer :: fID integer :: zoneID real(kind=RP) :: directionValue(NDIM) @@ -322,6 +322,7 @@ subroutine SurfaceMonitor_Update ( self, mesh, bufferPosition, iter, t ) ! ******************************************************************* ! use SurfaceIntegrals + use IBMClass implicit none class ( SurfaceMonitor_t ) :: self class ( HexMesh ) :: mesh @@ -359,42 +360,42 @@ subroutine SurfaceMonitor_Update ( self, mesh, bufferPosition, iter, t ) select case ( trim ( self % variable ) ) case ("mass-flow") - self % values(bufferPosition) = ScalarSurfaceIntegral(mesh, self % marker, MASS_FLOW) + self % values(bufferPosition) = ScalarSurfaceIntegral(mesh, self % marker, MASS_FLOW, iter) case ("flow") - self % values(bufferPosition) = ScalarSurfaceIntegral(mesh, self % marker, FLOW_RATE) + self % values(bufferPosition) = ScalarSurfaceIntegral(mesh, self % marker, FLOW_RATE, iter) case ("pressure-force") - F = VectorSurfaceIntegral(mesh, self % marker, PRESSURE_FORCE) + F = VectorSurfaceIntegral(mesh, self % marker, PRESSURE_FORCE, iter) F = refValues % rho * POW2(refValues % V) * POW2(Lref) * F self % values(bufferPosition) = dot_product(F, self % direction) case ("viscous-force") - F = VectorSurfaceIntegral(mesh, self % marker, VISCOUS_FORCE) + F = VectorSurfaceIntegral(mesh, self % marker, VISCOUS_FORCE, iter) F = refValues % rho * POW2(refValues % V) * POW2(Lref) * F self % values(bufferPosition) = dot_product(F, self % direction) case ("force") - F = VectorSurfaceIntegral(mesh, self % marker, TOTAL_FORCE) + F = VectorSurfaceIntegral(mesh, self % marker, TOTAL_FORCE, iter) F = refValues % rho * POW2(refValues % V) * POW2(Lref) * F self % values(bufferPosition) = dot_product(F, self % direction) case ("lift") - F = VectorSurfaceIntegral(mesh, self % marker, TOTAL_FORCE) + F = VectorSurfaceIntegral(mesh, self % marker, TOTAL_FORCE, iter) F = 2.0_RP * POW2(Lref) * F / self % referenceSurface self % values(bufferPosition) = dot_product(F, self % direction) case ("drag") if (flowIsNavierStokes) then - F = VectorSurfaceIntegral(mesh, self % marker, TOTAL_FORCE) + F = VectorSurfaceIntegral(mesh, self % marker, TOTAL_FORCE, iter) else - F = VectorSurfaceIntegral(mesh, self % marker, PRESSURE_FORCE) + F = VectorSurfaceIntegral(mesh, self % marker, PRESSURE_FORCE, iter) end if F = 2.0_RP * POW2(Lref) * F / self % referenceSurface self % values(bufferPosition) = dot_product(F, self % direction) case ("pressure-average") - self % values(bufferPosition) = ScalarSurfaceIntegral(mesh, self % marker, PRESSURE_FORCE) / ScalarSurfaceIntegral(mesh, self % marker, SURFACE) + self % values(bufferPosition) = ScalarSurfaceIntegral(mesh, self % marker, PRESSURE_FORCE, iter) / ScalarSurfaceIntegral(mesh, self % marker, SURFACE, iter) end select diff --git a/Solver/src/libs/timeintegrator/AnisFASMultigridClass.f90 b/Solver/src/libs/timeintegrator/AnisFASMultigridClass.f90 index 669489d1f..aef15595c 100644 --- a/Solver/src/libs/timeintegrator/AnisFASMultigridClass.f90 +++ b/Solver/src/libs/timeintegrator/AnisFASMultigridClass.f90 @@ -444,14 +444,13 @@ recursive subroutine ConstructFASInOneDirection(Solver, lvl, controlVariables,Di call Child_p % MGStorage(Dir) % p_sem % mesh % storage % PointStorage - if( Solver% p_sem% mesh% IBM% active ) call Child_p% p_sem% mesh% IBM% copy( Solver% p_sem% mesh% IBM, lvl ) + if( Solver% MGStorage(Dir) % p_sem% mesh% IBM% active ) & + call Child_p% MGStorage(Dir) % p_sem% mesh% IBM% copy( Solver% MGStorage(Dir) % p_sem% mesh% IBM, lvl ) - call Child_p % p_sem % construct (controlVariables = controlVariables, & + call Child_p % MGStorage(Dir) % p_sem % construct (controlVariables = controlVariables, & Nx_ = N2xAll, Ny_ = N2yAll, Nz_ = N2zAll, & success = success, & ChildSem = .TRUE. ) - - end if !New> diff --git a/Solver/src/libs/timeintegrator/FASMultigridClass.f90 b/Solver/src/libs/timeintegrator/FASMultigridClass.f90 index 1886a3deb..b6b796b3d 100644 --- a/Solver/src/libs/timeintegrator/FASMultigridClass.f90 +++ b/Solver/src/libs/timeintegrator/FASMultigridClass.f90 @@ -627,7 +627,8 @@ recursive subroutine RecursiveConstructor(Solver, N1x, N1y, N1z, lvl, controlVar END DO END DO END IF -#endif! +#endif +! ! ------------------------------------------- ! Assemble Jacobian for implicit smoothing ! ------------------------------------------- @@ -1934,13 +1935,13 @@ end subroutine FAS_ComputeAndFactorizeJacobian !/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ! - recursive subroutine FAS_MovingIBM( this, dt, lvl ) + recursive subroutine FAS_MovingIBM( Solver, dt, lvl ) implicit none !-arguments------------------------------------------ - class(FASMultigrid_t), intent(inout) :: this - real(kind=RP), intent(in) :: dt - integer, intent(in) :: lvl + type(FASMultigrid_t), intent(inout) :: Solver + real(kind=RP), intent(in) :: dt + integer, intent(in) :: lvl call Solver% p_sem% mesh% IBM% MoveBody( Solver% p_sem% mesh% elements, & Solver% p_sem% mesh% no_of_elements, & From 7cc71a1b18aa308005365869f72225296e76b251 Mon Sep 17 00:00:00 2001 From: Stefano Colombo Date: Wed, 1 Feb 2023 11:20:40 +0100 Subject: [PATCH 06/15] IBM mesh test case added --- Solver/test/TestMeshes/IBMCylinder.msh | 26268 +++++++++++++++++++++++ 1 file changed, 26268 insertions(+) create mode 100644 Solver/test/TestMeshes/IBMCylinder.msh diff --git a/Solver/test/TestMeshes/IBMCylinder.msh b/Solver/test/TestMeshes/IBMCylinder.msh new file mode 100644 index 000000000..c494c5b71 --- /dev/null +++ b/Solver/test/TestMeshes/IBMCylinder.msh @@ -0,0 +1,26268 @@ +$MeshFormat +4.1 0 8 +$EndMeshFormat +$PhysicalNames +6 +2 27 "walls" +2 28 "inlet" +2 29 "outlet" +2 30 "up" +2 31 "down" +3 32 "fluid" +$EndPhysicalNames +$Entities +8 12 6 1 +1 -10 -10 0.001 0 +2 -10 10 0.001 0 +3 20 10 0.001 0 +4 20 -10 0.001 0 +5 -10 -10 0.102 0 +6 -10 10 0.102 0 +10 20 10 0.102 0 +14 20 -10 0.102 0 +1 -10 -10 0.001 -10 10 0.001 0 2 1 -2 +2 -10 10 0.001 20 10 0.001 0 2 2 -3 +3 20 -10 0.001 20 10 0.001 0 2 3 -4 +4 -10 -10 0.001 20 -10 0.001 0 2 4 -1 +6 -10 -10 0.102 -10 10 0.102 0 2 5 -6 +7 -10 10 0.102 20 10 0.102 0 2 6 -10 +8 20 -10 0.102 20 10 0.102 0 2 10 -14 +9 -10 -10 0.102 20 -10 0.102 0 2 14 -5 +11 -10 -10 0.001000000000000001 -10 -10 0.102 0 2 1 -5 +12 -10 10 0.001000000000000001 -10 10 0.102 0 2 2 -6 +16 20 10 0.001000000000000001 20 10 0.102 0 2 3 -10 +20 20 -10 0.001000000000000001 20 -10 0.102 0 2 4 -14 +1 -10 -10 0.001 20 10 0.001 1 27 4 1 2 3 4 +13 -10 -10 0.001000000000000001 -10 10 0.102 1 28 4 1 12 -6 -11 +17 -10 10 0.001000000000000001 20 10 0.102 1 30 4 2 16 -7 -12 +21 20 -10 0.001000000000000001 20 10 0.102 1 29 4 3 20 -8 -16 +25 -10 -10 0.001000000000000001 20 -10 0.102 1 31 4 4 11 -9 -20 +26 -10 -10 0.102 20 10 0.102 1 27 4 6 7 8 9 +1 -10 -10 0.001000000000000001 20 10 0.102 1 32 6 -1 26 13 17 21 25 +$EndEntities +$Nodes +23 7498 1 7498 +0 1 0 1 +1 +-10 -10 0.001 +0 2 0 1 +2 +-10 10 0.001 +0 3 0 1 +3 +20 10 0.001 +0 4 0 1 +4 +20 -10 0.001 +0 5 0 1 +5 +-10 -10 0.102 +0 6 0 1 +6 +-10 10 0.102 +0 10 0 1 +7 +20 10 0.102 +0 14 0 1 +8 +20 -10 0.102 +1 1 0 19 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +-10 -8.999999999998767 0.001 +-10 -7.999999999997533 0.001 +-10 -6.99999999999852 0.001 +-10 -6.000000000001727 0.001 +-10 -5.000000000004932 0.001 +-10 -4.000000000008139 0.001 +-10 -3.000000000011345 0.001 +-10 -2.000000000014481 0.001 +-10 -1.000000000013525 0.001 +-10 -1.229061297181033e-11 0.001 +-10 0.999999999988944 0.001 +-10 1.999999999990173 0.001 +-10 2.99999999999141 0.001 +-10 3.999999999992642 0.001 +-10 4.999999999993875 0.001 +-10 5.99999999999511 0.001 +-10 6.99999999999633 0.001 +-10 7.999999999997552 0.001 +-10 8.999999999998778 0.001 +1 2 0 29 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +-8.999999999998209 10 0.001 +-7.999999999996418 10 0.001 +-6.999999999994627 10 0.001 +-5.999999999993576 10 0.001 +-4.999999999994746 10 0.001 +-3.999999999995913 10 0.001 +-2.999999999997082 10 0.001 +-1.999999999998298 10 0.001 +-1.000000000002126 10 0.001 +-6.259881502046483e-12 10 0.001 +0.9999999999896083 10 0.001 +1.999999999985477 10 0.001 +2.999999999981341 10 0.001 +3.999999999977211 10 0.001 +4.999999999973427 10 0.001 +5.999999999974873 10 0.001 +6.999999999976669 10 0.001 +7.999999999978463 10 0.001 +8.999999999980258 10 0.001 +9.999999999982052 10 0.001 +10.99999999998385 10 0.001 +11.99999999998564 10 0.001 +12.99999999998743 10 0.001 +13.99999999998923 10 0.001 +14.99999999999103 10 0.001 +15.99999999999282 10 0.001 +16.99999999999462 10 0.001 +17.99999999999641 10 0.001 +18.99999999999821 10 0.001 +1 3 0 19 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +20 8.999999999998767 0.001 +20 7.999999999997533 0.001 +20 6.99999999999852 0.001 +20 6.000000000001727 0.001 +20 5.000000000004932 0.001 +20 4.000000000008139 0.001 +20 3.000000000011345 0.001 +20 2.000000000014481 0.001 +20 1.000000000013525 0.001 +20 1.229061297181033e-11 0.001 +20 -0.999999999988944 0.001 +20 -1.999999999990173 0.001 +20 -2.99999999999141 0.001 +20 -3.999999999992642 0.001 +20 -4.999999999993875 0.001 +20 -5.99999999999511 0.001 +20 -6.99999999999633 0.001 +20 -7.999999999997552 0.001 +20 -8.999999999998778 0.001 +1 4 0 29 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +100 +101 +102 +103 +104 +18.99999999999864 -10 0.001 +17.99999999999727 -10 0.001 +16.99999999999591 -10 0.001 +15.99999999999455 -10 0.001 +14.99999999999318 -10 0.001 +13.99999999999182 -10 0.001 +12.99999999999046 -10 0.001 +11.99999999998919 -10 0.001 +10.99999999999315 -10 0.001 +9.999999999997705 -10 0.001 +9.000000000002265 -10 0.001 +8.000000000006825 -10 0.001 +7.000000000011385 -10 0.001 +6.000000000015945 -10 0.001 +5.000000000020156 -10 0.001 +4.000000000019138 -10 0.001 +3.000000000017771 -10 0.001 +2.000000000016403 -10 0.001 +1.000000000015039 -10 0.001 +1.367084223602433e-11 -10 0.001 +-0.9999999999876934 -10 0.001 +-1.999999999989065 -10 0.001 +-2.999999999990433 -10 0.001 +-3.999999999991793 -10 0.001 +-4.999999999993165 -10 0.001 +-5.999999999994532 -10 0.001 +-6.9999999999959 -10 0.001 +-7.999999999997264 -10 0.001 +-8.999999999998632 -10 0.001 +1 6 0 19 +105 +106 +107 +108 +109 +110 +111 +112 +113 +114 +115 +116 +117 +118 +119 +120 +121 +122 +123 +-10 -8.999999999998767 0.102 +-10 -7.999999999997533 0.102 +-10 -6.99999999999852 0.102 +-10 -6.000000000001727 0.102 +-10 -5.000000000004932 0.102 +-10 -4.000000000008139 0.102 +-10 -3.000000000011345 0.102 +-10 -2.000000000014481 0.102 +-10 -1.000000000013525 0.102 +-10 -1.229061297181033e-11 0.102 +-10 0.999999999988944 0.102 +-10 1.999999999990173 0.102 +-10 2.99999999999141 0.102 +-10 3.999999999992642 0.102 +-10 4.999999999993875 0.102 +-10 5.99999999999511 0.102 +-10 6.99999999999633 0.102 +-10 7.999999999997552 0.102 +-10 8.999999999998778 0.102 +1 7 0 29 +124 +125 +126 +127 +128 +129 +130 +131 +132 +133 +134 +135 +136 +137 +138 +139 +140 +141 +142 +143 +144 +145 +146 +147 +148 +149 +150 +151 +152 +-8.999999999998209 10 0.102 +-7.999999999996418 10 0.102 +-6.999999999994627 10 0.102 +-5.999999999993576 10 0.102 +-4.999999999994746 10 0.102 +-3.999999999995913 10 0.102 +-2.999999999997082 10 0.102 +-1.999999999998298 10 0.102 +-1.000000000002126 10 0.102 +-6.259881502046483e-12 10 0.102 +0.9999999999896083 10 0.102 +1.999999999985477 10 0.102 +2.999999999981341 10 0.102 +3.999999999977211 10 0.102 +4.999999999973427 10 0.102 +5.999999999974873 10 0.102 +6.999999999976669 10 0.102 +7.999999999978463 10 0.102 +8.999999999980258 10 0.102 +9.999999999982052 10 0.102 +10.99999999998385 10 0.102 +11.99999999998564 10 0.102 +12.99999999998743 10 0.102 +13.99999999998923 10 0.102 +14.99999999999103 10 0.102 +15.99999999999282 10 0.102 +16.99999999999462 10 0.102 +17.99999999999641 10 0.102 +18.99999999999821 10 0.102 +1 8 0 19 +153 +154 +155 +156 +157 +158 +159 +160 +161 +162 +163 +164 +165 +166 +167 +168 +169 +170 +171 +20 8.999999999998767 0.102 +20 7.999999999997533 0.102 +20 6.99999999999852 0.102 +20 6.000000000001727 0.102 +20 5.000000000004932 0.102 +20 4.000000000008139 0.102 +20 3.000000000011345 0.102 +20 2.000000000014481 0.102 +20 1.000000000013525 0.102 +20 1.229061297181033e-11 0.102 +20 -0.999999999988944 0.102 +20 -1.999999999990173 0.102 +20 -2.99999999999141 0.102 +20 -3.999999999992642 0.102 +20 -4.999999999993875 0.102 +20 -5.99999999999511 0.102 +20 -6.99999999999633 0.102 +20 -7.999999999997552 0.102 +20 -8.999999999998778 0.102 +1 9 0 29 +172 +173 +174 +175 +176 +177 +178 +179 +180 +181 +182 +183 +184 +185 +186 +187 +188 +189 +190 +191 +192 +193 +194 +195 +196 +197 +198 +199 +200 +18.99999999999864 -10 0.102 +17.99999999999727 -10 0.102 +16.99999999999591 -10 0.102 +15.99999999999455 -10 0.102 +14.99999999999318 -10 0.102 +13.99999999999182 -10 0.102 +12.99999999999046 -10 0.102 +11.99999999998919 -10 0.102 +10.99999999999315 -10 0.102 +9.999999999997705 -10 0.102 +9.000000000002265 -10 0.102 +8.000000000006825 -10 0.102 +7.000000000011385 -10 0.102 +6.000000000015945 -10 0.102 +5.000000000020156 -10 0.102 +4.000000000019138 -10 0.102 +3.000000000017771 -10 0.102 +2.000000000016403 -10 0.102 +1.000000000015039 -10 0.102 +1.367084223602433e-11 -10 0.102 +-0.9999999999876934 -10 0.102 +-1.999999999989065 -10 0.102 +-2.999999999990433 -10 0.102 +-3.999999999991793 -10 0.102 +-4.999999999993165 -10 0.102 +-5.999999999994532 -10 0.102 +-6.9999999999959 -10 0.102 +-7.999999999997264 -10 0.102 +-8.999999999998632 -10 0.102 +2 1 0 3649 +201 +202 +203 +204 +205 +206 +207 +208 +209 +210 +211 +212 +213 +214 +215 +216 +217 +218 +219 +220 +221 +222 +223 +224 +225 +226 +227 +228 +229 +230 +231 +232 +233 +234 +235 +236 +237 +238 +239 +240 +241 +242 +243 +244 +245 +246 +247 +248 +249 +250 +251 +252 +253 +254 +255 +256 +257 +258 +259 +260 +261 +262 +263 +264 +265 +266 +267 +268 +269 +270 +271 +272 +273 +274 +275 +276 +277 +278 +279 +280 +281 +282 +283 +284 +285 +286 +287 +288 +289 +290 +291 +292 +293 +294 +295 +296 +297 +298 +299 +300 +301 +302 +303 +304 +305 +306 +307 +308 +309 +310 +311 +312 +313 +314 +315 +316 +317 +318 +319 +320 +321 +322 +323 +324 +325 +326 +327 +328 +329 +330 +331 +332 +333 +334 +335 +336 +337 +338 +339 +340 +341 +342 +343 +344 +345 +346 +347 +348 +349 +350 +351 +352 +353 +354 +355 +356 +357 +358 +359 +360 +361 +362 +363 +364 +365 +366 +367 +368 +369 +370 +371 +372 +373 +374 +375 +376 +377 +378 +379 +380 +381 +382 +383 +384 +385 +386 +387 +388 +389 +390 +391 +392 +393 +394 +395 +396 +397 +398 +399 +400 +401 +402 +403 +404 +405 +406 +407 +408 +409 +410 +411 +412 +413 +414 +415 +416 +417 +418 +419 +420 +421 +422 +423 +424 +425 +426 +427 +428 +429 +430 +431 +432 +433 +434 +435 +436 +437 +438 +439 +440 +441 +442 +443 +444 +445 +446 +447 +448 +449 +450 +451 +452 +453 +454 +455 +456 +457 +458 +459 +460 +461 +462 +463 +464 +465 +466 +467 +468 +469 +470 +471 +472 +473 +474 +475 +476 +477 +478 +479 +480 +481 +482 +483 +484 +485 +486 +487 +488 +489 +490 +491 +492 +493 +494 +495 +496 +497 +498 +499 +500 +501 +502 +503 +504 +505 +506 +507 +508 +509 +510 +511 +512 +513 +514 +515 +516 +517 +518 +519 +520 +521 +522 +523 +524 +525 +526 +527 +528 +529 +530 +531 +532 +533 +534 +535 +536 +537 +538 +539 +540 +541 +542 +543 +544 +545 +546 +547 +548 +549 +550 +551 +552 +553 +554 +555 +556 +557 +558 +559 +560 +561 +562 +563 +564 +565 +566 +567 +568 +569 +570 +571 +572 +573 +574 +575 +576 +577 +578 +579 +580 +581 +582 +583 +584 +585 +586 +587 +588 +589 +590 +591 +592 +593 +594 +595 +596 +597 +598 +599 +600 +601 +602 +603 +604 +605 +606 +607 +608 +609 +610 +611 +612 +613 +614 +615 +616 +617 +618 +619 +620 +621 +622 +623 +624 +625 +626 +627 +628 +629 +630 +631 +632 +633 +634 +635 +636 +637 +638 +639 +640 +641 +642 +643 +644 +645 +646 +647 +648 +649 +650 +651 +652 +653 +654 +655 +656 +657 +658 +659 +660 +661 +662 +663 +664 +665 +666 +667 +668 +669 +670 +671 +672 +673 +674 +675 +676 +677 +678 +679 +680 +681 +682 +683 +684 +685 +686 +687 +688 +689 +690 +691 +692 +693 +694 +695 +696 +697 +698 +699 +700 +701 +702 +703 +704 +705 +706 +707 +708 +709 +710 +711 +712 +713 +714 +715 +716 +717 +718 +719 +720 +721 +722 +723 +724 +725 +726 +727 +728 +729 +730 +731 +732 +733 +734 +735 +736 +737 +738 +739 +740 +741 +742 +743 +744 +745 +746 +747 +748 +749 +750 +751 +752 +753 +754 +755 +756 +757 +758 +759 +760 +761 +762 +763 +764 +765 +766 +767 +768 +769 +770 +771 +772 +773 +774 +775 +776 +777 +778 +779 +780 +781 +782 +783 +784 +785 +786 +787 +788 +789 +790 +791 +792 +793 +794 +795 +796 +797 +798 +799 +800 +801 +802 +803 +804 +805 +806 +807 +808 +809 +810 +811 +812 +813 +814 +815 +816 +817 +818 +819 +820 +821 +822 +823 +824 +825 +826 +827 +828 +829 +830 +831 +832 +833 +834 +835 +836 +837 +838 +839 +840 +841 +842 +843 +844 +845 +846 +847 +848 +849 +850 +851 +852 +853 +854 +855 +856 +857 +858 +859 +860 +861 +862 +863 +864 +865 +866 +867 +868 +869 +870 +871 +872 +873 +874 +875 +876 +877 +878 +879 +880 +881 +882 +883 +884 +885 +886 +887 +888 +889 +890 +891 +892 +893 +894 +895 +896 +897 +898 +899 +900 +901 +902 +903 +904 +905 +906 +907 +908 +909 +910 +911 +912 +913 +914 +915 +916 +917 +918 +919 +920 +921 +922 +923 +924 +925 +926 +927 +928 +929 +930 +931 +932 +933 +934 +935 +936 +937 +938 +939 +940 +941 +942 +943 +944 +945 +946 +947 +948 +949 +950 +951 +952 +953 +954 +955 +956 +957 +958 +959 +960 +961 +962 +963 +964 +965 +966 +967 +968 +969 +970 +971 +972 +973 +974 +975 +976 +977 +978 +979 +980 +981 +982 +983 +984 +985 +986 +987 +988 +989 +990 +991 +992 +993 +994 +995 +996 +997 +998 +999 +1000 +1001 +1002 +1003 +1004 +1005 +1006 +1007 +1008 +1009 +1010 +1011 +1012 +1013 +1014 +1015 +1016 +1017 +1018 +1019 +1020 +1021 +1022 +1023 +1024 +1025 +1026 +1027 +1028 +1029 +1030 +1031 +1032 +1033 +1034 +1035 +1036 +1037 +1038 +1039 +1040 +1041 +1042 +1043 +1044 +1045 +1046 +1047 +1048 +1049 +1050 +1051 +1052 +1053 +1054 +1055 +1056 +1057 +1058 +1059 +1060 +1061 +1062 +1063 +1064 +1065 +1066 +1067 +1068 +1069 +1070 +1071 +1072 +1073 +1074 +1075 +1076 +1077 +1078 +1079 +1080 +1081 +1082 +1083 +1084 +1085 +1086 +1087 +1088 +1089 +1090 +1091 +1092 +1093 +1094 +1095 +1096 +1097 +1098 +1099 +1100 +1101 +1102 +1103 +1104 +1105 +1106 +1107 +1108 +1109 +1110 +1111 +1112 +1113 +1114 +1115 +1116 +1117 +1118 +1119 +1120 +1121 +1122 +1123 +1124 +1125 +1126 +1127 +1128 +1129 +1130 +1131 +1132 +1133 +1134 +1135 +1136 +1137 +1138 +1139 +1140 +1141 +1142 +1143 +1144 +1145 +1146 +1147 +1148 +1149 +1150 +1151 +1152 +1153 +1154 +1155 +1156 +1157 +1158 +1159 +1160 +1161 +1162 +1163 +1164 +1165 +1166 +1167 +1168 +1169 +1170 +1171 +1172 +1173 +1174 +1175 +1176 +1177 +1178 +1179 +1180 +1181 +1182 +1183 +1184 +1185 +1186 +1187 +1188 +1189 +1190 +1191 +1192 +1193 +1194 +1195 +1196 +1197 +1198 +1199 +1200 +1201 +1202 +1203 +1204 +1205 +1206 +1207 +1208 +1209 +1210 +1211 +1212 +1213 +1214 +1215 +1216 +1217 +1218 +1219 +1220 +1221 +1222 +1223 +1224 +1225 +1226 +1227 +1228 +1229 +1230 +1231 +1232 +1233 +1234 +1235 +1236 +1237 +1238 +1239 +1240 +1241 +1242 +1243 +1244 +1245 +1246 +1247 +1248 +1249 +1250 +1251 +1252 +1253 +1254 +1255 +1256 +1257 +1258 +1259 +1260 +1261 +1262 +1263 +1264 +1265 +1266 +1267 +1268 +1269 +1270 +1271 +1272 +1273 +1274 +1275 +1276 +1277 +1278 +1279 +1280 +1281 +1282 +1283 +1284 +1285 +1286 +1287 +1288 +1289 +1290 +1291 +1292 +1293 +1294 +1295 +1296 +1297 +1298 +1299 +1300 +1301 +1302 +1303 +1304 +1305 +1306 +1307 +1308 +1309 +1310 +1311 +1312 +1313 +1314 +1315 +1316 +1317 +1318 +1319 +1320 +1321 +1322 +1323 +1324 +1325 +1326 +1327 +1328 +1329 +1330 +1331 +1332 +1333 +1334 +1335 +1336 +1337 +1338 +1339 +1340 +1341 +1342 +1343 +1344 +1345 +1346 +1347 +1348 +1349 +1350 +1351 +1352 +1353 +1354 +1355 +1356 +1357 +1358 +1359 +1360 +1361 +1362 +1363 +1364 +1365 +1366 +1367 +1368 +1369 +1370 +1371 +1372 +1373 +1374 +1375 +1376 +1377 +1378 +1379 +1380 +1381 +1382 +1383 +1384 +1385 +1386 +1387 +1388 +1389 +1390 +1391 +1392 +1393 +1394 +1395 +1396 +1397 +1398 +1399 +1400 +1401 +1402 +1403 +1404 +1405 +1406 +1407 +1408 +1409 +1410 +1411 +1412 +1413 +1414 +1415 +1416 +1417 +1418 +1419 +1420 +1421 +1422 +1423 +1424 +1425 +1426 +1427 +1428 +1429 +1430 +1431 +1432 +1433 +1434 +1435 +1436 +1437 +1438 +1439 +1440 +1441 +1442 +1443 +1444 +1445 +1446 +1447 +1448 +1449 +1450 +1451 +1452 +1453 +1454 +1455 +1456 +1457 +1458 +1459 +1460 +1461 +1462 +1463 +1464 +1465 +1466 +1467 +1468 +1469 +1470 +1471 +1472 +1473 +1474 +1475 +1476 +1477 +1478 +1479 +1480 +1481 +1482 +1483 +1484 +1485 +1486 +1487 +1488 +1489 +1490 +1491 +1492 +1493 +1494 +1495 +1496 +1497 +1498 +1499 +1500 +1501 +1502 +1503 +1504 +1505 +1506 +1507 +1508 +1509 +1510 +1511 +1512 +1513 +1514 +1515 +1516 +1517 +1518 +1519 +1520 +1521 +1522 +1523 +1524 +1525 +1526 +1527 +1528 +1529 +1530 +1531 +1532 +1533 +1534 +1535 +1536 +1537 +1538 +1539 +1540 +1541 +1542 +1543 +1544 +1545 +1546 +1547 +1548 +1549 +1550 +1551 +1552 +1553 +1554 +1555 +1556 +1557 +1558 +1559 +1560 +1561 +1562 +1563 +1564 +1565 +1566 +1567 +1568 +1569 +1570 +1571 +1572 +1573 +1574 +1575 +1576 +1577 +1578 +1579 +1580 +1581 +1582 +1583 +1584 +1585 +1586 +1587 +1588 +1589 +1590 +1591 +1592 +1593 +1594 +1595 +1596 +1597 +1598 +1599 +1600 +1601 +1602 +1603 +1604 +1605 +1606 +1607 +1608 +1609 +1610 +1611 +1612 +1613 +1614 +1615 +1616 +1617 +1618 +1619 +1620 +1621 +1622 +1623 +1624 +1625 +1626 +1627 +1628 +1629 +1630 +1631 +1632 +1633 +1634 +1635 +1636 +1637 +1638 +1639 +1640 +1641 +1642 +1643 +1644 +1645 +1646 +1647 +1648 +1649 +1650 +1651 +1652 +1653 +1654 +1655 +1656 +1657 +1658 +1659 +1660 +1661 +1662 +1663 +1664 +1665 +1666 +1667 +1668 +1669 +1670 +1671 +1672 +1673 +1674 +1675 +1676 +1677 +1678 +1679 +1680 +1681 +1682 +1683 +1684 +1685 +1686 +1687 +1688 +1689 +1690 +1691 +1692 +1693 +1694 +1695 +1696 +1697 +1698 +1699 +1700 +1701 +1702 +1703 +1704 +1705 +1706 +1707 +1708 +1709 +1710 +1711 +1712 +1713 +1714 +1715 +1716 +1717 +1718 +1719 +1720 +1721 +1722 +1723 +1724 +1725 +1726 +1727 +1728 +1729 +1730 +1731 +1732 +1733 +1734 +1735 +1736 +1737 +1738 +1739 +1740 +1741 +1742 +1743 +1744 +1745 +1746 +1747 +1748 +1749 +1750 +1751 +1752 +1753 +1754 +1755 +1756 +1757 +1758 +1759 +1760 +1761 +1762 +1763 +1764 +1765 +1766 +1767 +1768 +1769 +1770 +1771 +1772 +1773 +1774 +1775 +1776 +1777 +1778 +1779 +1780 +1781 +1782 +1783 +1784 +1785 +1786 +1787 +1788 +1789 +1790 +1791 +1792 +1793 +1794 +1795 +1796 +1797 +1798 +1799 +1800 +1801 +1802 +1803 +1804 +1805 +1806 +1807 +1808 +1809 +1810 +1811 +1812 +1813 +1814 +1815 +1816 +1817 +1818 +1819 +1820 +1821 +1822 +1823 +1824 +1825 +1826 +1827 +1828 +1829 +1830 +1831 +1832 +1833 +1834 +1835 +1836 +1837 +1838 +1839 +1840 +1841 +1842 +1843 +1844 +1845 +1846 +1847 +1848 +1849 +1850 +1851 +1852 +1853 +1854 +1855 +1856 +1857 +1858 +1859 +1860 +1861 +1862 +1863 +1864 +1865 +1866 +1867 +1868 +1869 +1870 +1871 +1872 +1873 +1874 +1875 +1876 +1877 +1878 +1879 +1880 +1881 +1882 +1883 +1884 +1885 +1886 +1887 +1888 +1889 +1890 +1891 +1892 +1893 +1894 +1895 +1896 +1897 +1898 +1899 +1900 +1901 +1902 +1903 +1904 +1905 +1906 +1907 +1908 +1909 +1910 +1911 +1912 +1913 +1914 +1915 +1916 +1917 +1918 +1919 +1920 +1921 +1922 +1923 +1924 +1925 +1926 +1927 +1928 +1929 +1930 +1931 +1932 +1933 +1934 +1935 +1936 +1937 +1938 +1939 +1940 +1941 +1942 +1943 +1944 +1945 +1946 +1947 +1948 +1949 +1950 +1951 +1952 +1953 +1954 +1955 +1956 +1957 +1958 +1959 +1960 +1961 +1962 +1963 +1964 +1965 +1966 +1967 +1968 +1969 +1970 +1971 +1972 +1973 +1974 +1975 +1976 +1977 +1978 +1979 +1980 +1981 +1982 +1983 +1984 +1985 +1986 +1987 +1988 +1989 +1990 +1991 +1992 +1993 +1994 +1995 +1996 +1997 +1998 +1999 +2000 +2001 +2002 +2003 +2004 +2005 +2006 +2007 +2008 +2009 +2010 +2011 +2012 +2013 +2014 +2015 +2016 +2017 +2018 +2019 +2020 +2021 +2022 +2023 +2024 +2025 +2026 +2027 +2028 +2029 +2030 +2031 +2032 +2033 +2034 +2035 +2036 +2037 +2038 +2039 +2040 +2041 +2042 +2043 +2044 +2045 +2046 +2047 +2048 +2049 +2050 +2051 +2052 +2053 +2054 +2055 +2056 +2057 +2058 +2059 +2060 +2061 +2062 +2063 +2064 +2065 +2066 +2067 +2068 +2069 +2070 +2071 +2072 +2073 +2074 +2075 +2076 +2077 +2078 +2079 +2080 +2081 +2082 +2083 +2084 +2085 +2086 +2087 +2088 +2089 +2090 +2091 +2092 +2093 +2094 +2095 +2096 +2097 +2098 +2099 +2100 +2101 +2102 +2103 +2104 +2105 +2106 +2107 +2108 +2109 +2110 +2111 +2112 +2113 +2114 +2115 +2116 +2117 +2118 +2119 +2120 +2121 +2122 +2123 +2124 +2125 +2126 +2127 +2128 +2129 +2130 +2131 +2132 +2133 +2134 +2135 +2136 +2137 +2138 +2139 +2140 +2141 +2142 +2143 +2144 +2145 +2146 +2147 +2148 +2149 +2150 +2151 +2152 +2153 +2154 +2155 +2156 +2157 +2158 +2159 +2160 +2161 +2162 +2163 +2164 +2165 +2166 +2167 +2168 +2169 +2170 +2171 +2172 +2173 +2174 +2175 +2176 +2177 +2178 +2179 +2180 +2181 +2182 +2183 +2184 +2185 +2186 +2187 +2188 +2189 +2190 +2191 +2192 +2193 +2194 +2195 +2196 +2197 +2198 +2199 +2200 +2201 +2202 +2203 +2204 +2205 +2206 +2207 +2208 +2209 +2210 +2211 +2212 +2213 +2214 +2215 +2216 +2217 +2218 +2219 +2220 +2221 +2222 +2223 +2224 +2225 +2226 +2227 +2228 +2229 +2230 +2231 +2232 +2233 +2234 +2235 +2236 +2237 +2238 +2239 +2240 +2241 +2242 +2243 +2244 +2245 +2246 +2247 +2248 +2249 +2250 +2251 +2252 +2253 +2254 +2255 +2256 +2257 +2258 +2259 +2260 +2261 +2262 +2263 +2264 +2265 +2266 +2267 +2268 +2269 +2270 +2271 +2272 +2273 +2274 +2275 +2276 +2277 +2278 +2279 +2280 +2281 +2282 +2283 +2284 +2285 +2286 +2287 +2288 +2289 +2290 +2291 +2292 +2293 +2294 +2295 +2296 +2297 +2298 +2299 +2300 +2301 +2302 +2303 +2304 +2305 +2306 +2307 +2308 +2309 +2310 +2311 +2312 +2313 +2314 +2315 +2316 +2317 +2318 +2319 +2320 +2321 +2322 +2323 +2324 +2325 +2326 +2327 +2328 +2329 +2330 +2331 +2332 +2333 +2334 +2335 +2336 +2337 +2338 +2339 +2340 +2341 +2342 +2343 +2344 +2345 +2346 +2347 +2348 +2349 +2350 +2351 +2352 +2353 +2354 +2355 +2356 +2357 +2358 +2359 +2360 +2361 +2362 +2363 +2364 +2365 +2366 +2367 +2368 +2369 +2370 +2371 +2372 +2373 +2374 +2375 +2376 +2377 +2378 +2379 +2380 +2381 +2382 +2383 +2384 +2385 +2386 +2387 +2388 +2389 +2390 +2391 +2392 +2393 +2394 +2395 +2396 +2397 +2398 +2399 +2400 +2401 +2402 +2403 +2404 +2405 +2406 +2407 +2408 +2409 +2410 +2411 +2412 +2413 +2414 +2415 +2416 +2417 +2418 +2419 +2420 +2421 +2422 +2423 +2424 +2425 +2426 +2427 +2428 +2429 +2430 +2431 +2432 +2433 +2434 +2435 +2436 +2437 +2438 +2439 +2440 +2441 +2442 +2443 +2444 +2445 +2446 +2447 +2448 +2449 +2450 +2451 +2452 +2453 +2454 +2455 +2456 +2457 +2458 +2459 +2460 +2461 +2462 +2463 +2464 +2465 +2466 +2467 +2468 +2469 +2470 +2471 +2472 +2473 +2474 +2475 +2476 +2477 +2478 +2479 +2480 +2481 +2482 +2483 +2484 +2485 +2486 +2487 +2488 +2489 +2490 +2491 +2492 +2493 +2494 +2495 +2496 +2497 +2498 +2499 +2500 +2501 +2502 +2503 +2504 +2505 +2506 +2507 +2508 +2509 +2510 +2511 +2512 +2513 +2514 +2515 +2516 +2517 +2518 +2519 +2520 +2521 +2522 +2523 +2524 +2525 +2526 +2527 +2528 +2529 +2530 +2531 +2532 +2533 +2534 +2535 +2536 +2537 +2538 +2539 +2540 +2541 +2542 +2543 +2544 +2545 +2546 +2547 +2548 +2549 +2550 +2551 +2552 +2553 +2554 +2555 +2556 +2557 +2558 +2559 +2560 +2561 +2562 +2563 +2564 +2565 +2566 +2567 +2568 +2569 +2570 +2571 +2572 +2573 +2574 +2575 +2576 +2577 +2578 +2579 +2580 +2581 +2582 +2583 +2584 +2585 +2586 +2587 +2588 +2589 +2590 +2591 +2592 +2593 +2594 +2595 +2596 +2597 +2598 +2599 +2600 +2601 +2602 +2603 +2604 +2605 +2606 +2607 +2608 +2609 +2610 +2611 +2612 +2613 +2614 +2615 +2616 +2617 +2618 +2619 +2620 +2621 +2622 +2623 +2624 +2625 +2626 +2627 +2628 +2629 +2630 +2631 +2632 +2633 +2634 +2635 +2636 +2637 +2638 +2639 +2640 +2641 +2642 +2643 +2644 +2645 +2646 +2647 +2648 +2649 +2650 +2651 +2652 +2653 +2654 +2655 +2656 +2657 +2658 +2659 +2660 +2661 +2662 +2663 +2664 +2665 +2666 +2667 +2668 +2669 +2670 +2671 +2672 +2673 +2674 +2675 +2676 +2677 +2678 +2679 +2680 +2681 +2682 +2683 +2684 +2685 +2686 +2687 +2688 +2689 +2690 +2691 +2692 +2693 +2694 +2695 +2696 +2697 +2698 +2699 +2700 +2701 +2702 +2703 +2704 +2705 +2706 +2707 +2708 +2709 +2710 +2711 +2712 +2713 +2714 +2715 +2716 +2717 +2718 +2719 +2720 +2721 +2722 +2723 +2724 +2725 +2726 +2727 +2728 +2729 +2730 +2731 +2732 +2733 +2734 +2735 +2736 +2737 +2738 +2739 +2740 +2741 +2742 +2743 +2744 +2745 +2746 +2747 +2748 +2749 +2750 +2751 +2752 +2753 +2754 +2755 +2756 +2757 +2758 +2759 +2760 +2761 +2762 +2763 +2764 +2765 +2766 +2767 +2768 +2769 +2770 +2771 +2772 +2773 +2774 +2775 +2776 +2777 +2778 +2779 +2780 +2781 +2782 +2783 +2784 +2785 +2786 +2787 +2788 +2789 +2790 +2791 +2792 +2793 +2794 +2795 +2796 +2797 +2798 +2799 +2800 +2801 +2802 +2803 +2804 +2805 +2806 +2807 +2808 +2809 +2810 +2811 +2812 +2813 +2814 +2815 +2816 +2817 +2818 +2819 +2820 +2821 +2822 +2823 +2824 +2825 +2826 +2827 +2828 +2829 +2830 +2831 +2832 +2833 +2834 +2835 +2836 +2837 +2838 +2839 +2840 +2841 +2842 +2843 +2844 +2845 +2846 +2847 +2848 +2849 +2850 +2851 +2852 +2853 +2854 +2855 +2856 +2857 +2858 +2859 +2860 +2861 +2862 +2863 +2864 +2865 +2866 +2867 +2868 +2869 +2870 +2871 +2872 +2873 +2874 +2875 +2876 +2877 +2878 +2879 +2880 +2881 +2882 +2883 +2884 +2885 +2886 +2887 +2888 +2889 +2890 +2891 +2892 +2893 +2894 +2895 +2896 +2897 +2898 +2899 +2900 +2901 +2902 +2903 +2904 +2905 +2906 +2907 +2908 +2909 +2910 +2911 +2912 +2913 +2914 +2915 +2916 +2917 +2918 +2919 +2920 +2921 +2922 +2923 +2924 +2925 +2926 +2927 +2928 +2929 +2930 +2931 +2932 +2933 +2934 +2935 +2936 +2937 +2938 +2939 +2940 +2941 +2942 +2943 +2944 +2945 +2946 +2947 +2948 +2949 +2950 +2951 +2952 +2953 +2954 +2955 +2956 +2957 +2958 +2959 +2960 +2961 +2962 +2963 +2964 +2965 +2966 +2967 +2968 +2969 +2970 +2971 +2972 +2973 +2974 +2975 +2976 +2977 +2978 +2979 +2980 +2981 +2982 +2983 +2984 +2985 +2986 +2987 +2988 +2989 +2990 +2991 +2992 +2993 +2994 +2995 +2996 +2997 +2998 +2999 +3000 +3001 +3002 +3003 +3004 +3005 +3006 +3007 +3008 +3009 +3010 +3011 +3012 +3013 +3014 +3015 +3016 +3017 +3018 +3019 +3020 +3021 +3022 +3023 +3024 +3025 +3026 +3027 +3028 +3029 +3030 +3031 +3032 +3033 +3034 +3035 +3036 +3037 +3038 +3039 +3040 +3041 +3042 +3043 +3044 +3045 +3046 +3047 +3048 +3049 +3050 +3051 +3052 +3053 +3054 +3055 +3056 +3057 +3058 +3059 +3060 +3061 +3062 +3063 +3064 +3065 +3066 +3067 +3068 +3069 +3070 +3071 +3072 +3073 +3074 +3075 +3076 +3077 +3078 +3079 +3080 +3081 +3082 +3083 +3084 +3085 +3086 +3087 +3088 +3089 +3090 +3091 +3092 +3093 +3094 +3095 +3096 +3097 +3098 +3099 +3100 +3101 +3102 +3103 +3104 +3105 +3106 +3107 +3108 +3109 +3110 +3111 +3112 +3113 +3114 +3115 +3116 +3117 +3118 +3119 +3120 +3121 +3122 +3123 +3124 +3125 +3126 +3127 +3128 +3129 +3130 +3131 +3132 +3133 +3134 +3135 +3136 +3137 +3138 +3139 +3140 +3141 +3142 +3143 +3144 +3145 +3146 +3147 +3148 +3149 +3150 +3151 +3152 +3153 +3154 +3155 +3156 +3157 +3158 +3159 +3160 +3161 +3162 +3163 +3164 +3165 +3166 +3167 +3168 +3169 +3170 +3171 +3172 +3173 +3174 +3175 +3176 +3177 +3178 +3179 +3180 +3181 +3182 +3183 +3184 +3185 +3186 +3187 +3188 +3189 +3190 +3191 +3192 +3193 +3194 +3195 +3196 +3197 +3198 +3199 +3200 +3201 +3202 +3203 +3204 +3205 +3206 +3207 +3208 +3209 +3210 +3211 +3212 +3213 +3214 +3215 +3216 +3217 +3218 +3219 +3220 +3221 +3222 +3223 +3224 +3225 +3226 +3227 +3228 +3229 +3230 +3231 +3232 +3233 +3234 +3235 +3236 +3237 +3238 +3239 +3240 +3241 +3242 +3243 +3244 +3245 +3246 +3247 +3248 +3249 +3250 +3251 +3252 +3253 +3254 +3255 +3256 +3257 +3258 +3259 +3260 +3261 +3262 +3263 +3264 +3265 +3266 +3267 +3268 +3269 +3270 +3271 +3272 +3273 +3274 +3275 +3276 +3277 +3278 +3279 +3280 +3281 +3282 +3283 +3284 +3285 +3286 +3287 +3288 +3289 +3290 +3291 +3292 +3293 +3294 +3295 +3296 +3297 +3298 +3299 +3300 +3301 +3302 +3303 +3304 +3305 +3306 +3307 +3308 +3309 +3310 +3311 +3312 +3313 +3314 +3315 +3316 +3317 +3318 +3319 +3320 +3321 +3322 +3323 +3324 +3325 +3326 +3327 +3328 +3329 +3330 +3331 +3332 +3333 +3334 +3335 +3336 +3337 +3338 +3339 +3340 +3341 +3342 +3343 +3344 +3345 +3346 +3347 +3348 +3349 +3350 +3351 +3352 +3353 +3354 +3355 +3356 +3357 +3358 +3359 +3360 +3361 +3362 +3363 +3364 +3365 +3366 +3367 +3368 +3369 +3370 +3371 +3372 +3373 +3374 +3375 +3376 +3377 +3378 +3379 +3380 +3381 +3382 +3383 +3384 +3385 +3386 +3387 +3388 +3389 +3390 +3391 +3392 +3393 +3394 +3395 +3396 +3397 +3398 +3399 +3400 +3401 +3402 +3403 +3404 +3405 +3406 +3407 +3408 +3409 +3410 +3411 +3412 +3413 +3414 +3415 +3416 +3417 +3418 +3419 +3420 +3421 +3422 +3423 +3424 +3425 +3426 +3427 +3428 +3429 +3430 +3431 +3432 +3433 +3434 +3435 +3436 +3437 +3438 +3439 +3440 +3441 +3442 +3443 +3444 +3445 +3446 +3447 +3448 +3449 +3450 +3451 +3452 +3453 +3454 +3455 +3456 +3457 +3458 +3459 +3460 +3461 +3462 +3463 +3464 +3465 +3466 +3467 +3468 +3469 +3470 +3471 +3472 +3473 +3474 +3475 +3476 +3477 +3478 +3479 +3480 +3481 +3482 +3483 +3484 +3485 +3486 +3487 +3488 +3489 +3490 +3491 +3492 +3493 +3494 +3495 +3496 +3497 +3498 +3499 +3500 +3501 +3502 +3503 +3504 +3505 +3506 +3507 +3508 +3509 +3510 +3511 +3512 +3513 +3514 +3515 +3516 +3517 +3518 +3519 +3520 +3521 +3522 +3523 +3524 +3525 +3526 +3527 +3528 +3529 +3530 +3531 +3532 +3533 +3534 +3535 +3536 +3537 +3538 +3539 +3540 +3541 +3542 +3543 +3544 +3545 +3546 +3547 +3548 +3549 +3550 +3551 +3552 +3553 +3554 +3555 +3556 +3557 +3558 +3559 +3560 +3561 +3562 +3563 +3564 +3565 +3566 +3567 +3568 +3569 +3570 +3571 +3572 +3573 +3574 +3575 +3576 +3577 +3578 +3579 +3580 +3581 +3582 +3583 +3584 +3585 +3586 +3587 +3588 +3589 +3590 +3591 +3592 +3593 +3594 +3595 +3596 +3597 +3598 +3599 +3600 +3601 +3602 +3603 +3604 +3605 +3606 +3607 +3608 +3609 +3610 +3611 +3612 +3613 +3614 +3615 +3616 +3617 +3618 +3619 +3620 +3621 +3622 +3623 +3624 +3625 +3626 +3627 +3628 +3629 +3630 +3631 +3632 +3633 +3634 +3635 +3636 +3637 +3638 +3639 +3640 +3641 +3642 +3643 +3644 +3645 +3646 +3647 +3648 +3649 +3650 +3651 +3652 +3653 +3654 +3655 +3656 +3657 +3658 +3659 +3660 +3661 +3662 +3663 +3664 +3665 +3666 +3667 +3668 +3669 +3670 +3671 +3672 +3673 +3674 +3675 +3676 +3677 +3678 +3679 +3680 +3681 +3682 +3683 +3684 +3685 +3686 +3687 +3688 +3689 +3690 +3691 +3692 +3693 +3694 +3695 +3696 +3697 +3698 +3699 +3700 +3701 +3702 +3703 +3704 +3705 +3706 +3707 +3708 +3709 +3710 +3711 +3712 +3713 +3714 +3715 +3716 +3717 +3718 +3719 +3720 +3721 +3722 +3723 +3724 +3725 +3726 +3727 +3728 +3729 +3730 +3731 +3732 +3733 +3734 +3735 +3736 +3737 +3738 +3739 +3740 +3741 +3742 +3743 +3744 +3745 +3746 +3747 +3748 +3749 +3750 +3751 +3752 +3753 +3754 +3755 +3756 +3757 +3758 +3759 +3760 +3761 +3762 +3763 +3764 +3765 +3766 +3767 +3768 +3769 +3770 +3771 +3772 +3773 +3774 +3775 +3776 +3777 +3778 +3779 +3780 +3781 +3782 +3783 +3784 +3785 +3786 +3787 +3788 +3789 +3790 +3791 +3792 +3793 +3794 +3795 +3796 +3797 +3798 +3799 +3800 +3801 +3802 +3803 +3804 +3805 +3806 +3807 +3808 +3809 +3810 +3811 +3812 +3813 +3814 +3815 +3816 +3817 +3818 +3819 +3820 +3821 +3822 +3823 +3824 +3825 +3826 +3827 +3828 +3829 +3830 +3831 +3832 +3833 +3834 +3835 +3836 +3837 +3838 +3839 +3840 +3841 +3842 +3843 +3844 +3845 +3846 +3847 +3848 +3849 +9.778807897171502 0.05558097101420824 0.001 +-0.3384969699456766 0.2246759655303913 0.001 +4.3171953140971 -3.843336183435499 0.001 +4.64211736451421 4.023039100397666 0.001 +-3.962440810408782 -4.022064256688987 0.001 +-4.353726025360202 3.877264611258266 0.001 +14.26053004338494 4.258806301029247 0.001 +13.92638068866421 -4.073054486028105 0.001 +9.300165611135684 -5.021433419267026 0.001 +9.359981860104012 4.916060108127613 0.001 +0.479083106988861 5.992204283023418 0.001 +0.2616839271001427 -5.116033485553635 0.001 +-5.310001561269612 0.07478896856466866 0.001 +15.79102990734741 -0.0893761575181832 0.001 +5.847099930133955 0.1527569603666403 0.001 +16.47094770708509 6.568382823372293 0.001 +16.65253001106647 -6.34541716185104 0.001 +-6.51957517473234 -6.587312204482456 0.001 +6.48773763682424 -6.659541678870707 0.001 +-6.723859510168295 6.700024777523405 0.001 +6.033536299629761 6.707096631871114 0.001 +12.16726273619705 -6.431076023548391 0.001 +12.07934391654776 6.558989012953081 0.001 +12.39021784323325 1.267358684266742 0.001 +1.620509487334398 -2.357591586607114 0.001 +7.18912607220427 -2.126326349323302 0.001 +3.154661792447822 6.679641077314855 0.001 +2.927004712977335 -6.726361783112851 0.001 +-2.827222346865052 -6.80646723895355 0.001 +7.359267448602184 2.602122003358535 0.001 +2.47184584467556 1.712056624721466 0.001 +11.19000602675133 -2.555768905034229 0.001 +-2.727680904102127 6.834082844977783 0.001 +16.51973961997356 3.160488423349568 0.001 +16.86538030868333 -2.616351518362426 0.001 +-6.938136991502127 -2.63980955369857 0.001 +-1.520756124905371 -2.518260167318587 0.001 +-7.046300888535879 2.730096841800151 0.001 +-3.118990552202356 1.284847046718091 0.001 +10.22414519261333 2.869712338632752 0.001 +-0.8324318131411002 2.724161421979818 0.001 +13.56359638523138 -1.335889148405581 0.001 +8.613110043543568 -7.463358757694778 0.001 +8.900586012996003 7.607998570298383 0.001 +2.102669355968249 3.62458576203 0.001 +-3.873068783922107 -1.563216876502117 0.001 +14.24541875005511 -7.214828232441432 0.001 +14.18363279768171 7.404797131542558 0.001 +3.603609308030055 -1.354623308727185 0.001 +0.8573079008680295 7.63860218858552 0.001 +-0.3394978485953679 -7.720033345763035 0.001 +11.70709944116238 4.466244931022066 0.001 +-1.9451318846254 4.746601909091229 0.001 +-7.729191223110295 -0.4196166046403471 0.001 +-4.695285757974754 -7.794149558379218 0.001 +-4.928555105162137 7.825884205582923 0.001 +17.69509118813632 0.5850265261975738 0.001 +-1.519780623880887 -4.683616999563125 0.001 +6.915507812913066 4.365242284873371 0.001 +-8.091967893810942 -4.764906568052602 0.001 +6.815470157648247 -4.048997096957782 0.001 +-7.917876797607586 5.148504529633155 0.001 +14.14450519291148 1.698802036250893 0.001 +18.17543541731497 4.947484008793628 0.001 +17.84645646814626 -4.596424561936343 0.001 +11.10500222922638 -4.639391462669168 0.001 +-4.972160274263994 2.011422578936783 0.001 +-2.142894545664422 -0.7445579560210616 0.001 +5.69749475428727 2.372628262742814 0.001 +1.747307471777847 -0.3556934718680885 0.001 +0.424026133056503 -1.168697259979461 0.001 +4.214109027175104 8.024215513853466 0.001 +17.90712123938819 8.09860872755803 0.001 +17.83804385065398 -8.090877575112271 0.001 +7.507069494318005 -0.4040610464737135 0.001 +11.45193110512981 -0.8571659044117483 0.001 +10.87109906805544 -8.118062158138931 0.001 +4.540735820079144 -7.985710876238248 0.001 +1.139690382122118 1.046919957596142 0.001 +0.7812662497806541 0.07896091138716885 0.001 +0.3730611395833357 0.7711519600462875 0.001 +0.8725962532098591 0.5873369936698877 0.001 +0.5168151246898666 0.3849386469878797 0.001 +0.7124434827100807 0.9747983238867376 0.001 +0.7901727510507218 0.3351063836799678 0.001 +0.6040073798621349 0.636853074173157 0.001 +0.9567668386767115 0.8541143205421694 0.001 +0.2245396039158117 -0.1416077787856278 0.001 +0.4524430041471698 0.07418954106803989 0.001 +0.6505220602490145 -0.3570844384358338 0.001 +0.6213547653657827 0.206374848474322 0.001 +0.4158070563643809 0.5606048691876355 0.001 +0.1680765097473288 0.2967347448434218 0.001 +0.1045665339122664 0.5848920996499998 0.001 +0.7664760243168962 0.7776354801188299 0.001 +0.3776577435805402 0.251375241245111 0.001 +0.5742206456478236 0.8399965041525894 0.001 +0.3463575978408783 1.266815267921455 0.001 +-1.196145143318557 1.603603496405709 0.001 +0.8689206922248114 1.464259571408791 0.001 +0.2451701100270807 0.4680295627464005 0.001 +0.9076709320541355 1.063567677364788 0.001 +0.7234919176462618 0.5098029584337769 0.001 +0.2761748499447121 0.6292948550263706 0.001 +0.130828323118243 0.8387942494965931 0.001 +-0.3963233078863765 0.6887828757688185 0.001 +0.6280185653968188 0.04402176275446519 0.001 +0.09145400715208059 0.4316321894881257 0.001 +0.2188136849214738 0.08614105214155901 0.001 +0.3683345381116711 0.3998583723560507 0.001 +0.6491909752318274 0.3420990954134713 0.001 +0.5027373279910636 0.7244187753181672 0.001 +0.8335359331952029 0.8931408458957411 0.001 +0.8583606212955731 0.4636895827542016 0.001 +1.219146157657809 0.1846296791533891 0.001 +1.556909378103661 0.5506623626859524 0.001 +0.8935303000664695 0.7296593586995597 0.001 +0.7431033140476894 0.643957135342445 0.001 +0.5478615942895572 0.5307171866465542 0.001 +0.5001288377715265 0.2613825220818154 0.001 +0.1640556830356844 0.7200935103585293 0.001 +-0.02139471023450567 0.735732787888235 0.001 +-0.09869386003565389 0.5393757157724017 0.001 +0.3459817529871992 0.1409806340044271 0.001 +1.149795147476499 0.4869733798004456 0.001 +1.006631807529102 0.3009807198072235 0.001 +0.8699124747149323 0.2117632943959763 0.001 +1.109688099378634 0.7100508328248053 0.001 +1.139373324543485 0.8832282736895051 0.001 +0.7426762106439244 0.2121809986271706 0.001 +0.2578128841267724 0.1980881519969167 0.001 +0.1264274614678327 0.157307365064368 0.001 +-0.04365656840552361 0.292963281663765 0.001 +-0.04033845575114733 0.4181060675283631 0.001 +0.2520758278207708 0.8050046468630437 0.001 +0.9897254232565234 0.638545264103745 0.001 +0.9709226252647365 0.5059138440823161 0.001 +1.016278782713312 0.9737063797528168 0.001 +0.2773578138588181 0.3383651021655311 0.001 +0.4634277160341489 0.8433637541291668 0.001 +0.5244953735356532 1.031583296225929 0.001 +0.3197293682692126 0.9881718520900998 0.001 +0.2292146196727762 0.9132950028205311 0.001 +-0.0452131829484872 1.373422537357332 0.001 +-0.0004912280334828966 0.6171971668816083 0.001 +-0.1286233279736679 0.6598779211307543 0.001 +0.3382446279995521 -0.03252276411481384 0.001 +0.5141335647764772 -0.1109313314380381 0.001 +0.4326261961580243 0.9443124439496492 0.001 +0.4030421318351134 1.067489986683336 0.001 +0.9058863891141704 0.3594973727232573 0.001 +1.037599182904338 -0.004189580999847731 0.001 +0.9133850886624187 0.07161539868421657 0.001 +0.6947813710044063 0.8582623422653861 0.001 +0.6538049868463096 0.7406019448820724 0.001 +0.3420201722870181 0.8800698948122054 0.001 +0.6024822347061016 0.9460360786561908 0.001 +0.6423652457257883 1.060510436975697 0.001 +0.5133877644339907 1.272219652227606 0.001 +0.7696911069289866 1.107782857871021 0.001 +0.61807610276406 0.4403728608398318 0.001 +0.06409634002360967 0.3239190504789655 0.001 +0.02371012078355694 0.51337924637846 0.001 +1.003360251353602 0.7634162516280383 0.001 +0.5382049178171135 0.1636038122914853 0.001 +-0.1945566677866459 -0.05641952431682425 0.001 +-0.0391030600036743 0.09805020944003996 0.001 +0.09566312908149185 0.008985476505909036 0.001 +0.02681779818405991 0.1895340591143252 0.001 +0.6909052840898305 0.1285969927551789 0.001 +0.3817059509476804 0.6605625519443 0.001 +0.5006137558422266 0.6280901478426675 0.001 +0.8157636709831505 0.9995746228909884 0.001 +0.4615157443221047 0.4636324196944308 0.001 +0.07022892599412996 0.7605027081570481 0.001 +-0.01313574590324417 0.8893091898692332 0.001 +-0.1739446310068749 0.820240105614003 0.001 +0.0913435918927723 0.9770671542133333 0.001 +0.2020701495607371 1.046617406956 0.001 +0.3045785041879657 1.109620711728035 0.001 +0.9917860259272819 0.40645695619996 0.001 +0.199744252517849 0.5554331803658492 0.001 +0.3205658313168829 0.540546485157393 0.001 +0.1747404241099047 0.3892871532541547 0.001 +0.4307674212526985 0.1796317079151855 0.001 +0.5196753208393675 0.004156343659810095 0.001 +0.6257377485157596 -0.06996937432786687 0.001 +0.8066488316280985 -0.193595685950414 0.001 +0.7202235514222087 -0.01523763634351834 0.001 +0.8344103880155528 -0.03359941854500965 0.001 +0.9413338210684247 -0.04301772313987808 0.001 +0.4277236618822847 -0.01650634188187173 0.001 +0.3831930953266031 -0.1361389633758801 0.001 +0.6368017088840909 0.5604286975778956 0.001 +0.2219216427440524 2.08455937985675 0.001 +0.4324911413714538 0.3162848346980611 0.001 +0.5285121151327831 0.9162855116470409 0.001 +0.06473661051646083 0.09985713422799226 0.001 +1.006401466185234 1.0741681678656 0.001 +0.9184796005110086 1.287406084071762 0.001 +0.9563119658513929 0.2289040956349079 0.001 +-0.02293348123276077 -0.01284702397579847 0.001 +0.9828919222370649 -0.237094641420951 0.001 +1.386290265087847 -0.1598911714807213 0.001 +1.043799782629146 0.229149562513158 0.001 +1.17996755817908 0.3404545840081533 0.001 +0.7973784356628817 0.6998424563020591 0.001 +0.8416100158278552 0.8027350507965221 0.001 +0.803207741477321 0.5417584268656741 0.001 +0.291402258314941 0.7195663633250237 0.001 +0.08885765579232688 0.2520631842791979 0.001 +0.8489226638682441 0.1260800599010023 0.001 +0.5761498647440907 0.284722269292277 0.001 +0.3030122119360984 0.05342730061847659 0.001 +0.06237933371741597 0.6588794380408469 0.001 +0.1433282454443406 0.07733814744688396 0.001 +0.1880799847751229 -0.01015636108084575 0.001 +0.8587890556760938 0.2975070070432032 0.001 +0.1261511163962301 0.5101574734415503 0.001 +0.9416183138500361 0.1436558712665255 0.001 +1.003302682899799 0.06540238355644094 0.001 +1.119291205107674 0.07354565161700072 0.001 +0.07844672046478118 0.9029568493069992 0.001 +0.3764486404700911 0.4876766715987024 0.001 +0.6072363239203487 0.1223145977589558 0.001 +1.390446511438694 1.589101634797545 0.001 +0.006343026030112557 0.8101485789430353 0.001 +0.6746986595889132 0.2653798836968875 0.001 +0.1796160249036141 0.6372744227042798 0.001 +0.5529030924454934 0.07425204978609068 0.001 +0.5772923631798463 0.7247621657939847 0.001 +0.1101701130149972 -0.08995845234454504 0.001 +-0.04189320647292939 -0.6506903134419275 0.001 +-0.007024139049017263 -0.1549065330194654 0.001 +0.1790845755825639 0.9796798037797591 0.001 +0.384668068082255 0.04147859736693943 0.001 +0.8995219731540804 0.5151804936901725 0.001 +0.05130771176133666 -0.053035664968118 0.001 +0.9240405178190985 0.4572995325198732 0.001 +0.7836251088917795 0.1579866366360379 0.001 +0.3031282817132038 0.406518207749045 0.001 +-0.1225752383016032 0.03613541717609939 0.001 +-0.1401941137638613 0.1169664775359899 0.001 +-0.4684480465309708 0.003124996147966625 0.001 +0.2639820603469262 -0.007700255273623002 0.001 +0.1258456758711975 1.048508687453042 0.001 +0.9405476029323272 0.5916247732736589 0.001 +1.035480958033257 0.56832836452934 0.001 +0.9286361834834808 0.3001996330662547 0.001 +0.4420507559873195 0.6685051746370618 0.001 +0.01927429131375017 0.9488234481629515 0.001 +0.03828677609801002 1.050574968957572 0.001 +-0.1479695999368436 0.9901789492377249 0.001 +0.7672016845371208 0.8476598706179662 0.001 +0.7219648890435916 0.7146854744344324 0.001 +0.9085817803693086 0.6602474031536694 0.001 +0.2538971390978715 0.9868299819340103 0.001 +0.3502150492303563 0.3242569906968465 0.001 +0.846600682933504 0.04617399745512271 0.001 +0.1409800092171672 0.9117539158363921 0.001 +0.7885013064534953 0.4244462065070099 0.001 +0.1841745038358016 0.2299151643494274 0.001 +0.703856240779569 0.572635808261367 0.001 +0.7153230099252943 1.054410367085294 0.001 +0.6898711231981587 1.154715595686391 0.001 +0.1101652057897792 -0.2664045374115766 0.001 +1.160779746359544 0.5959521728474091 0.001 +0.4475988571522495 0.7680723933752928 0.001 +0.5186190628043287 0.7882245678737184 0.001 +0.1746665365602789 0.7870557070760387 0.001 +0.01605234690509771 0.05098919680680389 0.001 +0.1989192430016144 0.1593396421902221 0.001 +0.4596656568633735 0.3982473975774438 0.001 +-0.009938783319590251 0.353051957258141 0.001 +-0.09510296173807146 0.3501985770162923 0.001 +-0.1501085918243583 0.4455711539174304 0.001 +-0.2338527867559902 0.5459151643655887 0.001 +-0.1237873749361008 0.2633230759078813 0.001 +0.2340694105109382 0.2764367872233029 0.001 +0.323889603704679 0.2002776223402084 0.001 +0.2735395255734213 0.1477974042294005 0.001 +0.5910947117774148 0.3936513813276019 0.001 +0.6934826726950305 0.05972365425683124 0.001 +0.5563253256178856 0.4444759753068381 0.001 +0.1817113392057116 0.4676396121435762 0.001 +0.4119292442651195 0.8826053680454881 0.001 +0.7169393151556588 0.3231554163520695 0.001 +0.202933142769147 0.8545452534530249 0.001 +0.7591109793026833 0.9224885196310471 0.001 +0.6831025317080462 0.6695220925835442 0.001 +0.7745899050743794 0.009230330232323905 0.001 +0.7614785210280461 -0.05975908868670261 0.001 +0.6899216978296316 -0.2159787532471563 0.001 +0.6897814220516285 -0.07120400909848938 0.001 +0.9346876663716386 0.7814931881438366 0.001 +1.059087232837671 0.6386136301645875 0.001 +0.5669692446609658 0.5868886706900094 0.001 +0.4808141842049769 0.5586752235983147 0.001 +0.03165589783746873 0.4354318789911508 0.001 +-0.04226482194971903 0.4941963448235486 0.001 +0.2942770390312995 0.9335220215379507 0.001 +0.9530906445297428 1.011404216559076 0.001 +0.8902225951844355 0.8845411115543158 0.001 +0.7963789729468024 0.610763072721084 0.001 +0.2212598783195015 0.6972751821096652 0.001 +0.1331427535718133 0.3482846324509551 0.001 +0.5487114258363841 0.2150411943779777 0.001 +0.5228242135016079 0.3230198528783342 0.001 +0.3211498358670152 0.8013697020689245 0.001 +0.4931692735054347 1.104505592746891 0.001 +0.5576451037657467 1.109820090142668 0.001 +0.8433447378904715 1.066577660309542 0.001 +0.7027498598939567 0.796038335774376 0.001 +0.04283457192254434 0.5720556332362188 0.001 +0.6813838528605198 0.1916222103106892 0.001 +0.7778693423632058 0.2790574893849587 0.001 +0.3891932889753336 0.9974445979889778 0.001 +0.6565493905089237 0.9174392736450603 0.001 +0.3011598848238414 0.2623014428829658 0.001 +0.2719480247000945 0.8664307305351736 0.001 +0.4387671943609781 0.2481414738089867 0.001 +1.049030223976009 0.8246644739590548 0.001 +1.057050761791634 0.9150568304675285 0.001 +1.108952619055955 0.9811748930948742 0.001 +1.076884403800211 0.7769061022619658 0.001 +1.180970472218421 0.7994517858718703 0.001 +0.5860812167959767 1.012736753338615 0.001 +0.06203796051712732 0.8304424990619002 0.001 +0.3082598086487793 -0.4222308803543391 0.001 +0.409384394147713 0.1267732199358421 0.001 +0.6538427490433913 0.9969947536600561 0.001 +0.3700630463384308 0.9502921000246816 0.001 +1.116352121182776 0.1658125311250634 0.001 +0.589376188411028 -0.02549641497604021 0.001 +0.3596941583229384 0.5922452405998669 0.001 +-0.7896436234984363 0.2786418522595888 0.001 +1.032407344368802 0.6992258553629589 0.001 +0.3879367156016787 0.8191363523860012 0.001 +0.02268218568741315 0.263165664514953 0.001 +0.7743771145548526 0.4748703442166658 0.001 +-0.02530511641123456 0.5543847292050157 0.001 +0.6257191417935043 0.8709193046078708 0.001 +0.8149596533148048 0.212354339309837 0.001 +0.6345155495378949 0.8082567708458542 0.001 +0.2146366007307601 0.3427950073461849 0.001 +0.8369381784634213 0.3767867004897618 0.001 +0.9645870455394263 0.6958698203704876 0.001 +0.1168084128807171 0.6582965226197212 0.001 +0.3565695965573242 1.048554088058134 0.001 +0.9645681775360779 0.01640204628328276 0.001 +0.4993134287783916 0.9791201873265323 0.001 +0.3076230762892587 0.4766656166355986 0.001 +0.9635225011188453 0.3533780277508425 0.001 +0.0005799231287858484 0.6920956669158912 0.001 +0.128998475452245 -0.03322861096048939 0.001 +0.1840658722039827 -0.07331511795521048 0.001 +0.5473184114024868 0.6569963132737107 0.001 +0.3996189472105177 0.7138593974270863 0.001 +0.2541991904124539 0.5225540016442687 0.001 +0.6608149813574079 -0.013338602964473 0.001 +0.8941863214673529 -0.003622724591900182 0.001 +0.8779448008368317 0.996727686739788 0.001 +0.239918480308849 0.389220245285828 0.001 +0.267634166121094 1.050986768694268 0.001 +0.2337267591767629 1.123609412183644 0.001 +0.1550981301519445 1.140347451032143 0.001 +0.2256073937565621 1.555943161791936 0.001 +1.049951697377788 1.047096879742919 0.001 +0.4811958047377281 0.1380225764452051 0.001 +0.04298860938556717 0.3940240133740665 0.001 +1.082462678250306 -1.013407482225543 0.001 +0.849463711901592 0.6594909780289419 0.001 +-0.02755964351225103 0.1575645041115972 0.001 +-0.034715795773453 0.2200163489749204 0.001 +0.5980280419474414 0.4906968014046027 0.001 +1.049268957774949 0.4733393029967185 0.001 +0.06631076667450451 0.5026424632901655 0.001 +-0.0543660863342906 1.007680043218459 0.001 +-0.04154230210479165 0.942983386500824 0.001 +0.5880049081202863 0.7703243065070776 0.001 +0.6583350917751025 0.4995129562825864 0.001 +0.08175073859355166 1.125021831258695 0.001 +0.7673152501561624 1.012225462742983 0.001 +0.5625235245437604 -0.06412061246144533 0.001 +0.5981358778534097 -0.1765040525009449 0.001 +0.4962888020035933 -0.2671562167460623 0.001 +-0.04671949496585767 0.04855247524040782 0.001 +0.9993816921119707 0.8057964962691397 0.001 +0.3618930716331833 1.114133432597588 0.001 +0.4296392143889506 1.203302828661542 0.001 +0.2850227455352695 -0.08472654625729603 0.001 +0.6498161477775333 0.3995999855629911 0.001 +0.8205433722158767 0.7546821451017288 0.001 +0.4888862193035557 0.205761306322897 0.001 +0.2192748350451624 0.7546601519037083 0.001 +0.8431065960509427 0.9481274113810045 0.001 +0.2347288817217524 -0.05996853307042574 0.001 +0.5297718872259523 0.8455121371497656 0.001 +0.4939387841575518 -0.04298446523359749 0.001 +0.4217162548006296 0.6268629836191351 0.001 +0.6534038785740557 0.6023930018568247 0.001 +0.07792550349394402 0.1545376183328431 0.001 +0.1191941479289277 0.7858311661051831 0.001 +0.3047938659519762 0.6714078278186627 0.001 +0.5803818505649038 0.9065540899916027 0.001 +0.4624448521604804 0.9034009310734142 0.001 +0.4788647222341896 0.01415875361773028 0.001 +0.6234296135647664 0.6839175258827018 0.001 +0.149921427165828 0.03022168051335106 0.001 +1.067565756429054 0.4016728361632335 0.001 +1.022746550303806 0.3669061717815165 0.001 +0.8701055432064791 0.4188283604291542 0.001 +0.3908469297394476 0.2029620860161648 0.001 +0.8945806270376785 0.8218570055647114 0.001 +0.1048751539432402 0.3023960259137536 0.001 +0.2297747230007587 0.03133237999773097 0.001 +1.005789818632003 0.8850012434793282 0.001 +0.1057178834872428 0.7054271725100825 0.001 +0.002695891909317023 1.004884017618582 0.001 +-0.01892233560883546 1.065836185359383 0.001 +-0.09759182789952726 1.155896609612491 0.001 +-0.4492198367398001 1.195708521019827 0.001 +-0.4397905557654075 1.7777706519234 0.001 +0.7535216965686676 0.1114335319582889 0.001 +0.8977422624909106 -0.05423191644504645 0.001 +0.845271521827172 -0.1175522464424846 0.001 +0.7520422547612688 0.5732676538214982 0.001 +0.5480572858750922 0.971203258009637 0.001 +0.2520783013276017 0.5858570319017509 0.001 +0.3405807122689973 0.7086465288734308 0.001 +-0.155473989083436 0.1990682266638866 0.001 +0.002149918501187229 0.1244531524327908 0.001 +0.5026661694558696 0.432130943778025 0.001 +0.4107505138959902 0.5097468868409334 0.001 +0.4763991647159846 0.3458163723107514 0.001 +0.03506242427721541 0.0005095053315539201 0.001 +0.03409263567390323 0.7287968340522504 0.001 +0.3623891133953109 0.5424050479829601 0.001 +1.02452474161524 0.5222422579782048 0.001 +0.6470016255622097 0.09951963351259825 0.001 +0.9992887674134803 0.4644669582470024 0.001 +0.4057048843854839 0.4450029559622964 0.001 +0.57987892947334 0.1705166591600155 0.001 +0.1560079679585613 0.5661747590443689 0.001 +0.7301648244168467 0.2634500777094693 0.001 +0.6452741560575399 0.1630797164874996 0.001 +0.3058740690844388 0.5995566677076642 0.001 +0.7316938948146354 0.1625335894162003 0.001 +1.088159608585583 1.384384234756329 0.001 +0.4915457566811037 0.5021620605932223 0.001 +0.5717481765166091 0.02359501975554351 0.001 +1.005277653222786 1.021792151741224 0.001 +0.9553993557764555 1.053936514558389 0.001 +0.6721226113673495 0.452502884010907 0.001 +0.9384699880543341 0.3923230292763721 0.001 +0.7397253569692526 0.04154067588091399 0.001 +0.3358627308877761 0.4417319070265639 0.001 +1.0129832296173 0.2026775383134678 0.001 +1.000556865506031 0.2527205517901525 0.001 +-0.07687838317878254 0.6063438706520916 0.001 +-0.05193613927426899 0.6669226459105837 0.001 +0.622878543232898 0.2514265598313795 0.001 +0.9078127283680691 -0.5985926360775126 0.001 +0.08643809238311018 0.5476171751726218 0.001 +17.757554888211 -1.255665254495647 0.001 +-8.068544767207896 -8.027196171999799 0.001 +10.994618041037 8.37648131248263 0.001 +0.9781873179694476 0.118169657452912 0.001 +0.5747556766557746 0.3311262725256905 0.001 +0.9164554108877487 0.2347264616854762 0.001 +0.1312559330151431 0.4048233860583848 0.001 +0.4906648293691703 0.6792233000723263 0.001 +0.009505063252157444 0.3100985311226057 0.001 +0.2085971363442559 0.4992748374251789 0.001 +0.853161500543947 0.5476470412579961 0.001 +16.29850448059283 4.337252358514992 0.001 +15.80327207222707 -4.557738161200698 0.001 +0.07743636962028827 1.028552038048453 0.001 +0.3841945903306124 -0.007081564470304604 0.001 +1.173427278998276 -8.452727862674248 0.001 +0.9828445665388675 -0.01861223556074809 0.001 +1.038223112780168 0.280936017198208 0.001 +1.061104609965141 0.3389315615159967 0.001 +1.149885232602385 0.2623487678753338 0.001 +0.1081847900809573 0.1182589706477441 0.001 +0.0988159614922889 0.05750867288020547 0.001 +8.844915697814908 -2.876050851270409 0.001 +0.1412794956886085 0.2483784275683753 0.001 +0.02673705004986174 0.8706469484290735 0.001 +-8.22721216123362 8.225452208974144 0.001 +0.7219568919348694 0.4562809688605359 0.001 +0.1743027179762723 0.0588297043069733 0.001 +0.8934482902977992 0.1653708374509519 0.001 +0.7818430340195192 0.9675335611726823 0.001 +0.978373888878325 -0.1401742394039512 0.001 +-0.09347171064437287 0.7126736095130068 0.001 +1.060244567975657 0.05704915534639609 0.001 +1.140131026157937 -0.04249985521009116 0.001 +1.075758760779681 0.1160465163389661 0.001 +0.3487020609779954 0.08902986399850638 0.001 +0.03766039899154534 0.6250356668315651 0.001 +0.8574078223721027 0.1777997822228138 0.001 +0.460155693695119 0.591271187384268 0.001 +-1.111681211984331 8.27367973054494 0.001 +0.7525326955423945 0.3653246987019648 0.001 +5.380712697627945 -2.174366917156823 0.001 +0.7651062533761958 0.724390718913174 0.001 +0.8076981317562444 0.8049618243727751 0.001 +-7.974499862375868 0.8516981399823262 0.001 +0.5388892617047125 0.7606634856819279 0.001 +0.889166936127228 0.1278720527426509 0.001 +0.2679850436918327 0.09454645365338531 0.001 +4.317203836404034 -5.774994145235812 0.001 +-5.93320511854806 -5.307261839884852 0.001 +0.3156710161021876 0.7624763961393706 0.001 +0.4470550917149869 0.715403784030939 0.001 +4.800598439403776 5.997402005103853 0.001 +0.2124587799376649 0.4351220153138426 0.001 +0.9302161604098576 0.1849817603605569 0.001 +0.4726131191398842 0.3079313549099764 0.001 +0.8891260317431633 0.779095503162238 0.001 +15.08868282005773 -1.999682698781321 0.001 +-0.05166890451682871 0.3247092020223271 0.001 +0.7142771051904377 0.8999459430448647 0.001 +0.3980535374797339 -3.30662277171864 0.001 +1.808116164062278 0.06534571431081419 0.001 +0.6941128766883642 0.3667999816868054 0.001 +0.3956605942451465 0.3518653344887656 0.001 +0.3915829340299064 0.3034242311599105 0.001 +13.65424069694158 5.97259055424486 0.001 +13.59848516544306 -5.971353804410459 0.001 +0.9727565459208551 0.1714404503466606 0.001 +0.3366408502192449 0.3731403361092567 0.001 +0.7834020741403681 0.6524717611201343 0.001 +0.84848760320539 0.8506833235348176 0.001 +0.1286028983642967 0.4704211081592455 0.001 +0.5666210092052046 1.044891131759017 0.001 +0.3372631132362737 0.01709253960584051 0.001 +0.3308625710269745 -0.0993444765836323 0.001 +0.3204498873079571 -0.2255578272687122 0.001 +0.3921868452398441 -0.07109079336990162 0.001 +0.5845545034819449 0.07617063388606571 0.001 +-3.915671673034128 -5.976357400993689 0.001 +0.8341676017074839 0.07356986261909045 0.001 +1.038868790392037 0.4197029288526438 0.001 +-6.202111483948313 4.93221038726879 0.001 +0.1554627052844396 0.1326202344046655 0.001 +1.120719704637678 0.821444928928785 0.001 +0.5551904321276252 0.1061478193107407 0.001 +0.5816934582994295 0.541849048065524 0.001 +0.7846057525357933 1.058635125423212 0.001 +-0.004867188917760501 0.3864833716083928 0.001 +0.4348883337692118 0.03070405365539314 0.001 +0.9723894223480836 0.5729096809932096 0.001 +0.8446634988467776 0.2615978519550758 0.001 +12.69167049175834 2.997112098282792 0.001 +1.068101352066177 1.083057819912708 0.001 +0.03911749335724582 0.9930762412290947 0.001 +-0.08896824651908822 0.8224217550179135 0.001 +-0.0737069884341139 0.8910458304208667 0.001 +-0.07461647817310066 0.7646751836458671 0.001 +-0.0348096345852045 0.8441382140947905 0.001 +-0.03190208121989908 0.7842029183985354 0.001 +0.8331170566266441 0.3247650187352312 0.001 +0.05817816492128663 0.2878962657974666 0.001 +-0.004857277531253324 1.174250623596437 0.001 +0.09066480889993482 1.205015770714335 0.001 +0.06980759390136419 0.1994812520740403 0.001 +0.5193207379735786 0.1074472362907787 0.001 +0.8574162593407537 0.6905408396355593 0.001 +0.1897136018903703 0.8885908439534761 0.001 +16.12762241048213 -7.869450147954459 0.001 +1.094238149221697 0.540217952072847 0.001 +1.07092500558582 0.5890639078228345 0.001 +15.86818374549289 8.246690735772734 0.001 +1.069606115528855 0.1755859696651299 0.001 +0.4419431846356087 -0.05511365517996437 0.001 +0.6835726848206367 0.5472261458565839 0.001 +0.2223922135365833 0.6212536001689305 0.001 +-4.354919826995978 6.068556567790324 0.001 +1.062470162391958 0.94919520752077 0.001 +0.8988565358888927 0.3118364299254661 0.001 +0.3057620190096025 -0.04307518695524311 0.001 +-0.06173075847876918 0.3772403039651835 0.001 +0.6818709183794026 0.7032846201261942 0.001 +0.8399960994345428 0.5034593060031241 0.001 +0.9141885006140547 0.6142252305995738 0.001 +0.3966279661251977 0.1466489428388675 0.001 +0.06994166831988513 0.9396629919718181 0.001 +0.01625334675517556 0.9107731661485543 0.001 +7.245697152836319 -8.407099969199876 0.001 +-0.08756891076753184 0.0780945544185702 0.001 +-0.07166621240734461 0.005888851507574037 0.001 +-0.07376998392537865 -0.07773624944062853 0.001 +-0.01819828396186026 -0.06392881388255604 0.001 +0.6701285174012706 -0.05352012137696417 0.001 +0.6098557861288759 0.5959564370566059 0.001 +-0.06371447220138229 1.062633124997904 0.001 +0.9841886523063 0.6063176231341389 0.001 +0.6186207171563158 0.2987872207761667 0.001 +0.7473258905186573 0.5278809406908784 0.001 +0.1189895911533663 0.8875928396898538 0.001 +0.9346982743229892 0.4994821267237338 0.001 +0.9336445144888894 0.904962321426366 0.001 +0.9478445626011364 0.9511004971094527 0.001 +1.101440095143802 0.2242836006479824 0.001 +0.1181906493211585 0.204595792706635 0.001 +0.8878869615419058 0.480827363557142 0.001 +6.854126924623968 8.399750002497356 0.001 +0.689683661280883 1.026704010146655 0.001 +0.6991041991171247 0.6178589170961317 0.001 +-6.151787255213478 -8.670256050343889 0.001 +0.2969024897345913 0.2134309137447463 0.001 +0.8921458204714413 0.5701645964554787 0.001 +-5.017833749564296 -2.97153765408504 0.001 +12.93008592500053 -7.994266869158046 0.001 +0.06271017506669752 0.03414430662065576 0.001 +0.142339644434558 0.9922185562561058 0.001 +0.1751920581946828 1.031656492128341 0.001 +0.2732121171464391 0.7588911008961644 0.001 +0.5398200117767217 0.258370645969687 0.001 +0.5257670363854975 1.078758102147628 0.001 +0.5247573324341218 1.168960364518934 0.001 +1.411758350358554 5.660480459824256 0.001 +12.60495635747695 8.678985532347129 0.001 +0.8712945495723455 0.06790885509768078 0.001 +0.938539382560165 0.7357276922145755 0.001 +0.2161391684848372 0.9650591191447803 0.001 +10.47040823214504 -6.23685533366146 0.001 +10.58883888427603 6.208025543454956 0.001 +0.7258640415197422 0.7572515642751755 0.001 +0.7380718095527196 0.815745507056875 0.001 +1.024594212002912 0.7853671020801283 0.001 +0.317862012740282 1.021759729506222 0.001 +0.8344627739944643 0.4164332725976277 0.001 +-3.785997467837496 0.08129739138966105 0.001 +0.243863021287729 0.1672336041649077 0.001 +0.08867092658633852 -0.02695803229783025 0.001 +10.64645486889532 0.8553192335476025 0.001 +0.4758438858325889 0.7909248794555838 0.001 +-6.212827100294987 8.370926962587095 0.001 +0.5131795852875678 0.5836285867027187 0.001 +3.734837523044565 0.2256098737010388 0.001 +0.3470516984868661 0.8234490777281065 0.001 +0.8035283534808753 0.8566941511744465 0.001 +0.7499302195904922 0.684707736964663 0.001 +0.5016253245703111 0.05547266660975167 0.001 +0.0891568491847011 0.3768500457939198 0.001 +0.09119264620221981 0.6338134540703683 0.001 +1.005595590652861 0.03099543294675742 0.001 +0.9314106558840817 0.5334027036963803 0.001 +-2.573916357005505 3.27556335470639 0.001 +7.647944018960027 -6.149343286405649 0.001 +0.8065533816186808 -0.0371225404067548 0.001 +0.2660706848051978 0.6824539980861849 0.001 +-8.043479344020737 6.413016189176403 0.001 +-8.188605697461821 -6.219542757607135 0.001 +0.1754542713270306 0.333286384825221 0.001 +0.8092001567268237 0.9310347133749105 0.001 +2.192474480941008 8.207683084414432 0.001 +1.255639640160788 0.6855239970238181 0.001 +1.299390823531235 0.552457745667148 0.001 +9.353263804011856 1.43273192621627 0.001 +9.038387473324461 3.498358983067383 0.001 +0.05659104441533851 0.7141079976535138 0.001 +14.34858796924284 0.2142354164150892 0.001 +0.1762588797605706 0.540440340013402 0.001 +0.9665475766799445 0.2743924772404054 0.001 +0.4522022576053228 1.530774453228253 0.001 +8.265276789354612 -1.540584558609023 0.001 +0.7303176983430567 -0.05460379454838914 0.001 +0.1871681093354405 0.1085511314842375 0.001 +0.3372825637198734 0.6363266782966632 0.001 +0.5328742841301284 0.7088416476593005 0.001 +0.1933200826690772 0.6805453820115664 0.001 +1.157341057946707 -0.1463398691445315 0.001 +1.018749274049162 -0.05793292353806387 0.001 +0.9766172930482339 -0.06983589148594614 0.001 +0.9268498339772335 -0.07691999737070787 0.001 +0.8775334993517416 -0.1203785481903002 0.001 +0.1673822521256076 1.067406366470413 0.001 +0.6744482652749803 0.3013535643817293 0.001 +0.7703165820772873 0.3107423961264475 0.001 +0.8501728775444963 1.036848969489056 0.001 +0.1884145532890734 0.2723536485303076 0.001 +7.799020113108843 5.840125163172948 0.001 +0.4198476698531936 0.07675112267566063 0.001 +0.03556893015958207 0.7727986999122481 0.001 +0.2500341957163357 0.9563470729754274 0.001 +0.1780867337870665 0.9233328431446349 0.001 +0.6607345361640897 0.2285428107549418 0.001 +0.703420977415432 0.2376710148812655 0.001 +18.0847798296296 6.565325109283293 0.001 +18.42972166275934 -6.118956813736421 0.001 +0.2693997355385181 0.02395310306868684 0.001 +1.104031573684741 -0.07092381555127496 0.001 +0.1375344798560746 0.9530886737381397 0.001 +-1.833617953294117 -8.774163498882283 0.001 +0.2136905692098711 1.016120780895253 0.001 +1.028606801031093 0.7531194252402628 0.001 +0.5618756119063345 0.4144009451688595 0.001 +13.0509388213551 -3.024143913166149 0.001 +0.3001342857638722 -0.01068494148741926 0.001 +2.766611134651537 -3.43330690907655 0.001 +0.3228087047410781 0.9156143398831343 0.001 +0.0594175510978503 -0.1199338724314869 0.001 +0.1854679890499476 0.5845215422554673 0.001 +1.834221198333621 -6.736458292504278 0.001 +3.910056230750206 2.982451067151881 0.001 +0.871956240207822 0.9249784557100649 0.001 +18.16377450179882 2.325465538964919 0.001 +0.8897843417599356 0.2811270968816048 0.001 +0.798564174526617 0.1154489155757264 0.001 +0.1148494159464106 1.092385827509162 0.001 +0.1701690582734593 0.1819243540002829 0.001 +0.1463175469094001 0.6312972632160841 0.001 +0.5964071461129932 1.082985842779227 0.001 +0.6318380501528224 1.149884289336693 0.001 +0.3404456643850424 0.2906919643945269 0.001 +-8.21995470895583 -1.976424297149895 0.001 +-3.036726162499046 8.279581529255175 0.001 +-0.01384080954450631 0.4500754412659645 0.001 +0.1493688322347702 0.7469918416922877 0.001 +0.166692206846466 -0.1419201675328486 0.001 +7.040215257046557 0.7981706837036794 0.001 +1.06505692156696 0.5130048153566155 0.001 +0.286122468559906 0.1794561406448367 0.001 +0.9569692517955557 0.6200306573256203 0.001 +0.2601944703350376 0.4203210912937518 0.001 +0.476446050496345 0.9316955760471402 0.001 +0.8220061736376574 0.007347604552419094 0.001 +0.8025391877587504 0.04346395750094698 0.001 +0.5870048003488721 0.2442948759325508 0.001 +18.5972241508565 -2.895208830796268 0.001 +0.2094110787386306 0.2107833300597123 0.001 +1.101524783958154 0.4830162753810805 0.001 +-1.318002558499414 6.591237874905301 0.001 +-0.05170443849939049 0.7013356900815637 0.001 +0.435254694876213 -0.1307515525326609 0.001 +0.6211403366400673 0.7466922465488222 0.001 +0.1659088720976823 0.8214124111715542 0.001 +0.7390224075288024 0.08985343172582416 0.001 +-8.460643908832607 3.353364128873542 0.001 +-0.06544850348815551 0.250500740148995 0.001 +-0.07296361470320523 0.299634443924512 0.001 +3.116371044918559 -8.383686157619298 0.001 +0.5322808679511185 -0.04720846953627914 0.001 +-1.166961284568557 -6.360320337671025 0.001 +0.9206374844966135 0.7099613608707293 0.001 +0.4644597727766242 0.5226465770242511 0.001 +0.7946029810308557 0.8877074437446199 0.001 +0.7175098570020189 0.6691876723792965 0.001 +-0.04538791132361535 0.5289136221196463 0.001 +0.1088103749271485 0.9140087763276218 0.001 +0.9348379902113991 0.3294222824299715 0.001 +-2.702400462292604 -2.671116458683818 0.001 +0.3131109217155299 0.1048684760566335 0.001 +0.9678720635290946 0.4409329319215508 0.001 +0.3184802188148906 0.1570385499884327 0.001 +1.013647861343827 0.9346850137935038 0.001 +-6.192609092121936 -0.8937798031294012 0.001 +15.94716387472986 1.427664545828306 0.001 +-0.191876839130268 0.7036107954841537 0.001 +0.8272154622986329 0.4509564418586166 0.001 +0.2142311083508279 0.8189580802124153 0.001 +0.9186061044525973 0.02851021777331379 0.001 +0.3111580890763753 0.8602365480350229 0.001 +3.526696842874171 5.045856804247696 0.001 +0.5202269779404142 0.4815482131221492 0.001 +0.7568740408094129 -0.02941165258670687 0.001 +0.5947991954833478 0.6781969358581597 0.001 +0.5636064339095019 0.6302543050822355 0.001 +-6.079859721415898 1.132355641429533 0.001 +0.05018031055036733 0.5281749289111862 0.001 +0.7373611666674568 -0.1013816474292982 0.001 +0.7693881774823065 -0.1296781025204189 0.001 +0.9190237982899652 1.020009132909522 0.001 +-0.03350047551237098 0.6066389366056885 0.001 +0.2208060228326915 -0.02363410589083107 0.001 +0.2239473077883308 0.2411220426069798 0.001 +0.7788779247681619 0.1882884574162535 0.001 +0.6753280752391702 1.055423916308557 0.001 +0.006707582837906088 0.5737954984065952 0.001 +1.136419485833078 0.4101288275786128 0.001 +0.2891790633917443 0.9801664764554753 0.001 +0.340963850933399 0.51104884179521 0.001 +0.3186320948250247 0.3102366616102182 0.001 +-0.01256797781050607 0.9283977425320702 0.001 +0.09924215859547661 3.883000333290253 0.001 +0.6578921064407354 0.8503161674065988 0.001 +0.6507470658582003 -0.1281912857653586 0.001 +0.723602797029984 0.8690719243069313 0.001 +0.8858969562896261 0.03843526462810218 0.001 +0.2288459678838146 0.1382898203158761 0.001 +0.3724537414082836 0.8980581185869045 0.001 +0.2358106657425154 0.88985831365887 0.001 +0.1627298005892039 0.4206474557494609 0.001 +0.3343524966022559 0.2331611060785622 0.001 +0.03845277662837585 0.3624869293312609 0.001 +0.2780100435046421 0.3661092253847136 0.001 +1.039423957328575 0.6138207672362554 0.001 +7.964706101062169 -4.231170699244386 0.001 +0.4631114040412994 0.6396692433637408 0.001 +0.6592047529151153 0.02879012796041385 0.001 +0.2742305688891905 0.2902870754571854 0.001 +0.4338764485043551 0.8223766870909068 0.001 +0.4024104417794399 0.7830915800121336 0.001 +0.02863226447617178 0.1467915688547493 0.001 +0.8215667031667986 0.5747948811688344 0.001 +0.6467233005108972 0.9506720930513443 0.001 +0.5724572977815863 0.8086015427046347 0.001 +0.4959760368616878 1.037391166669967 0.001 +0.6204242109094701 0.9092324061873452 0.001 +0.294681131614885 0.8870297058313866 0.001 +0.06839481229453849 1.063135321533684 0.001 +0.05041181719053199 1.098463856952251 0.001 +0.615994835217179 0.3519269494458502 0.001 +0.4353004354247917 0.3603842863703183 0.001 +0.9550463673229397 0.6666741669075874 0.001 +0.1602322160937221 0.8759436791092985 0.001 +0.8597132256995922 0.7527619805460541 0.001 +1.035869631345303 0.6472774964079691 0.001 +15.29474461588653 3.022337305061984 0.001 +0.2517094579923349 0.8455954631444705 0.001 +0.4453117699992082 1.067142995697861 0.001 +0.4470994356074042 1.118050680411617 0.001 +0.41390331781878 0.9840940359523966 0.001 +0.5966423738764178 0.424361627529357 0.001 +0.07634941686935813 -0.05607720477941423 0.001 +0.448727604049723 0.2205653523127573 0.001 +0.4035676931722358 0.6722027665585276 0.001 +0.4023644272496733 0.9124714926396302 0.001 +1.064370372416274 0.6883138658730744 0.001 +1.103427858470932 0.6539198794631763 0.001 +0.7978224682841559 0.3787408688364906 0.001 +0.6187840387459652 -0.03385748906523621 0.001 +0.4120702805358733 1.033306296778927 0.001 +-0.07126969050019495 0.1311717145434491 0.001 +0.2523474448361863 0.9060394175049868 0.001 +0.420406394733093 0.8529942961710301 0.001 +0.5910454402094514 0.4694817409050221 0.001 +0.7747806679079823 0.2351875484343214 0.001 +0.5548759792638454 0.3657203828481155 0.001 +0.1961494132701873 0.2985703437473723 0.001 +0.08250419419390131 0.7987465085825867 0.001 +-0.06516980987887094 0.5731069879395522 0.001 +-0.1112068510058544 0.5860554669947989 0.001 +0.750568385047341 0.4260581077910779 0.001 +0.630423519384844 0.9807279178306509 0.001 +0.2961517199168571 0.443415333978907 0.001 +0.3862335868387753 1.039748965479155 0.001 +0.363263025183105 0.9767547127402064 0.001 +0.4950026792783427 0.7673030412246689 0.001 +0.5614278660450537 0.9335070649951026 0.001 +0.3496468905598052 0.1678652874864015 0.001 +0.8383333799032833 0.6268197435455712 0.001 +10.31047279775486 3.933239562467382 0.001 +1.00039258465709 0.709967805350801 0.001 +0.7230988580837576 0.5464693343427854 0.001 +-0.007934151574348723 0.0719812105839492 0.001 +-0.08133474892798098 0.9865906082962393 0.001 +0.6656809530029256 -0.0955035869105168 0.001 +-0.05092864954013983 0.9097994719759659 0.001 +0.6255324433570506 1.020432870319999 0.001 +0.2022523988259566 0.7230894479399892 0.001 +-0.01399754614544161 0.9714205753615724 0.001 +0.4901071069585002 0.8671909165137515 0.001 +1.358226925610743 0.3194185900075628 0.001 +1.834963826004787 1.050486358494389 0.001 +0.05556159500145888 0.4591505522824137 0.001 +-1.222772857151518 -0.900731950496335 0.001 +0.7800881246454796 1.258212241376241 0.001 +0.9718901846072465 0.3238015159922653 0.001 +0.4061666741002496 1.120925604584644 0.001 +1.075735178648527 0.7219691647220523 0.001 +1.118786508117866 0.7540957183078699 0.001 +0.9795148656548177 0.7836371570099239 0.001 +0.7254378441689715 0.5964693248632216 0.001 +0.2130356422022045 1.234568996654883 0.001 +1.051662661601616 0.9967500389244082 0.001 +12.89353131590317 -4.8489308382654 0.001 +0.4080964724018646 0.2371848847395779 0.001 +0.4923317787578363 0.3957730467236794 0.001 +-6.080307060735974 3.46216612426033 0.001 +0.3949599505785821 0.9636459273665828 0.001 +0.2546910153855033 0.7220121939383536 0.001 +0.8099107127596135 -0.06779514825798177 0.001 +0.2675943350457363 0.2472403959735573 0.001 +-8.588596095222139 -3.313620997272722 0.001 +0.5140160562628795 0.2289798156052534 0.001 +0.6105902024593746 0.837092784620129 0.001 +0.8591625928427012 0.344991095351516 0.001 +-0.07228860709048199 0.5081775130071923 0.001 +-0.1442234886104708 0.5025773335961105 0.001 +0.5104322609253019 0.8265252218886898 0.001 +0.2755395969874661 0.5451943971624486 0.001 +-0.07565852791549441 0.9281736338183841 0.001 +15.11019341941139 -3.058106909361443 0.001 +0.4334616969065429 0.2743320370651561 0.001 +0.1934024059505877 1.103066164533083 0.001 +0.6619313059303737 0.7737726335860146 0.001 +0.660648839964418 0.8831797833428504 0.001 +16.59345360639814 -1.336978704682112 0.001 +1.061344415110165 -0.03803730060106053 0.001 +1.092682423178668 0.01190963306013584 0.001 +0.3797495193362944 0.8547759664085831 0.001 +-0.05217933505340579 0.8057657309758457 0.001 +1.065752102240369 0.8069860948002751 0.001 +1.124063349018239 0.5168330407056529 0.001 +0.6963377578128984 0.01721530465007257 0.001 +0.6814302498698041 0.9606364435948332 0.001 +-0.008871864128020797 0.02953567877689587 0.001 +0.270409917258399 0.5030838050629208 0.001 +15.40033462979208 -5.821501998293374 0.001 +0.4574833445454909 0.4307488982193713 0.001 +0.2730952194560979 0.8274886058755763 0.001 +0.6862620511223468 0.7351279776198281 0.001 +0.0722341682034556 0.5956004064431479 0.001 +-0.08337118394728997 0.4511250974919089 0.001 +-0.1228716502393357 0.4066994658010571 0.001 +-0.2311043081193704 0.4184580215336213 0.001 +-0.4436807691400644 0.4136461711535688 0.001 +0.4676839028146681 0.9708264088910729 0.001 +0.7273801307490629 0.9364102462244603 0.001 +0.7389118239426796 1.069635189143428 0.001 +0.03738762232017837 0.07788882772477575 0.001 +1.026792950850077 0.3321704159333674 0.001 +0.4101868231681625 0.3996366074865665 0.001 +0.139733247012159 -0.07237993715584343 0.001 +0.2369415651228638 0.6666064480036525 0.001 +15.16484388265159 5.839583633232047 0.001 +0.31730929774273 0.9554212557979309 0.001 +-0.007253994152237891 0.8431950670683235 0.001 +1.057390073754877 0.5464331756335035 0.001 +0.5936315664963341 -0.05011334388656936 0.001 +0.6699054565685576 0.5707545479391903 0.001 +0.8028998568653978 0.3095345652256276 0.001 +0.1135398479006916 -0.1424584695117878 0.001 +-0.006655755371792835 0.4999050177999331 0.001 +0.7085810094468168 0.8258452566770829 0.001 +0.3502932298938661 0.7966923645830922 0.001 +0.6875531536113261 0.4753839369311623 0.001 +0.8897104311845454 0.6359986142215711 0.001 +0.9558071262505454 0.8060703794694337 0.001 +0.1951643970414223 1.14569649335541 0.001 +0.5739500044374556 0.4872988952958242 0.001 +0.5565914683330232 0.8614814905119434 0.001 +0.4710270213197805 0.1630522340775509 0.001 +0.8533261882478824 -0.07087816537104753 0.001 +0.03867287962862603 0.4854954978276603 0.001 +0.5516476908565004 1.00416234251293 0.001 +0.8845966593402225 0.6778644296061221 0.001 +0.6875949229667788 0.09796653952348638 0.001 +1.076473287391416 0.1457147985182653 0.001 +0.4409480882130572 0.1429254450982702 0.001 +0.4921093830302619 -0.01653141201509982 0.001 +0.4941518808270228 1.005759202202424 0.001 +0.2491358504079852 0.3491559939833373 0.001 +1.04827546215493 0.8797543619825204 0.001 +-0.002132297900053256 0.7656052949440219 0.001 +0.6223846270519473 0.004543267382008357 0.001 +-0.07080867940044977 0.8590220923724369 0.001 +-0.1139935127578038 0.8636619854523826 0.001 +-0.01591715426726619 0.3220242148885893 0.001 +0.6295342702123716 0.7778243412773578 0.001 +0.6340244406110018 0.6518991401820092 0.001 +0.8689400801521971 0.9616925990430858 0.001 +18.60237076229318 3.669364701680282 0.001 +0.8146897273332527 1.031385642767551 0.001 +0.5594018173839748 -0.03075029134891504 0.001 +0.4210132304073821 0.740212137895492 0.001 +0.1633250282417406 -0.05123092103630654 0.001 +0.4526484654799187 0.1055249817119901 0.001 +-0.1376012951931625 0.3247518648382184 0.001 +0.9509929871795086 0.4696292190429375 0.001 +0.03132596459360511 0.701682019906117 0.001 +0.7686355784042627 0.625837446730514 0.001 +0.3872984606576039 0.6262780667369109 0.001 +0.9111681188803343 0.8633907227229322 0.001 +-0.2823419308121998 -0.3709663791169926 0.001 +0.2137836756509948 0.4663781818077437 0.001 +0.367341131928782 -0.05956360282948667 0.001 +0.1556317600865576 0.4922205547642893 0.001 +0.3634407567917324 1.002608573434556 0.001 +0.2505627416294001 0.06531960001886571 0.001 +-0.01964502169065437 0.2574460882890261 0.001 +0.2106608932506153 0.3712694525099622 0.001 +0.8064868407311057 0.2720064611341563 0.001 +0.02669527886890338 0.6544717329105969 0.001 +1.01252819142561 -0.09095785568396449 0.001 +1.024581172593363 -0.1222846562976532 0.001 +9.756812981528309 -8.618252181231266 0.001 +-0.06729308599335096 0.7346418746183947 0.001 +0.5275437810385646 0.1967782954578925 0.001 +-0.133220867417717 0.8911005414529163 0.001 +-0.2868175358158642 0.9384277539964212 0.001 +9.197436431569903 8.845195387196249 0.001 +-0.1288621254240122 0.1570638258985378 0.001 +-0.0007613467070235041 0.2191829964858343 0.001 +0.09117749272742171 0.8459625576424985 0.001 +0.3181753523239821 0.3550291179102957 0.001 +1.098762993501947 0.9105407926283311 0.001 +1.080656931095227 0.8800797476903377 0.001 +1.151600807487982 0.93956269901047 0.001 +1.19042366932024 1.028104761055352 0.001 +1.49064861153218 0.8038358266431456 0.001 +1.337348363098759 1.179305619294726 0.001 +0.3891786825053946 0.5877139623180833 0.001 +0.829589653467289 0.140216364702673 0.001 +0.9702309769057975 0.8800379334532565 0.001 +0.04108880974419442 0.8066236084262443 0.001 +0.09745923516954802 0.6813712685748461 0.001 +0.5787730844465494 -0.614565755452893 0.001 +-0.1161710409628493 0.2311497449338443 0.001 +8.11411702685629 4.439847713277366 0.001 +0.5848713462129101 0.8704394627891168 0.001 +0.5212327146404416 0.3500199304493509 0.001 +0.5534521582777922 0.5576372227311269 0.001 +0.6264663938331227 0.3856468744154785 0.001 +0.9879315097676159 0.6755141870766952 0.001 +0.1479283820489308 0.3200160988904874 0.001 +0.1816181737024162 0.7472207663378865 0.001 +0.6043487523756825 0.8084666346819617 0.001 +-0.0612377919985134 -0.03691143067853069 0.001 +5.55305150066344 3.265384206219555 0.001 +0.5409117117420346 0.6067359846242137 0.001 +0.9448490019440775 0.1114063048572106 0.001 +0.5872663826628346 -0.09030913078374472 0.001 +0.5589445439217784 -0.1166398885454689 0.001 +1.002384845165965 1.981013133995039 0.001 +0.3179922052915422 -0.07028673243165247 0.001 +0.317787562507166 -0.1177913982269694 0.001 +0.2781322097792219 -0.1459918553184506 0.001 +-0.02404553925284935 0.6591610062117854 0.001 +14.14217179611502 -2.645664840649078 0.001 +0.2403653415143089 0.3106014708924817 0.001 +0.9182462939301214 0.9682892636667993 0.001 +0.3242272421513692 1.058230722295773 0.001 +-1.960652016716924 2.245672179080432 0.001 +12.83072098779598 -0.475396801333224 0.001 +1.101483921996203 -3.610450515499013 0.001 +0.01349900275450435 0.5408574661317966 0.001 +0.2069666244116644 -0.05470049191251752 0.001 +0.8696454446768508 1.197550933635605 0.001 +0.9477589884132726 1.134979686423857 0.001 +1.043467874807026 1.176603131640895 0.001 +1.14144062859611 1.202907305609724 0.001 +0.8154618389924865 1.138884759787047 0.001 +-3.152920139475147 -5.021445865619472 0.001 +0.344432624679255 0.5589506681958055 0.001 +0.5139306922033671 0.5373814478236136 0.001 +0.7659112150580285 0.38422020197246 0.001 +0.8610130992385829 0.8985420703576502 0.001 +0.4474863633508197 0.5612340315550201 0.001 +0.7098952476595963 -0.1324583415754021 0.001 +0.4200574712218868 0.4683660471165972 0.001 +1.035720974998757 0.06945146482910562 0.001 +0.6131920815171585 0.1713385948149994 0.001 +0.8737011424246018 0.3867729397077385 0.001 +0.006488166212006343 1.077073496644502 0.001 +0.6722569031397454 0.8108363272363001 0.001 +0.5202623040413086 0.2962143179525621 0.001 +0.6343479416088367 0.5120925738223182 0.001 +1.026306994432275 1.063188434273076 0.001 +0.9705059539501845 0.9849777089672392 0.001 +-0.01485934210103668 0.5304364898708342 0.001 +-0.9207699279572246 4.596093614652371 0.001 +6.094181034091901 8.826367892895284 0.001 +0.5736774966673399 0.2015689370712641 0.001 +0.5018061868942394 -0.1734649986655611 0.001 +0.8660519132440904 0.5028942061695596 0.001 +1.039826026265803 0.03303668405870537 0.001 +0.8213975165540918 0.6678100029355482 0.001 +0.9331238542380035 1.087861311688306 0.001 +0.8827209544423164 1.087849703291325 0.001 +0.8666178801094784 1.058775019247557 0.001 +0.6239331532600436 0.4831020572768259 0.001 +0.1761020402986858 0.03848078641639751 0.001 +0.2377240960761408 1.037854044101592 0.001 +0.7281790016853139 0.1878173389356128 0.001 +0.6976984673485559 -0.0409431263390654 0.001 +4.843987818423788 1.249011052193601 0.001 +0.6109005696468061 1.039183478521912 0.001 +0.9870608898083916 0.3702978593542121 0.001 +0.9954516190381952 0.3417572709015562 0.001 +0.955121428539 0.2634404125017757 0.001 +0.6523710556252318 0.1969981811255751 0.001 +3.711798427253298 8.407176000694143 0.001 +0.1423360349181074 0.3730295950012569 0.001 +-2.758830998612175 -1.41254378660796 0.001 +0.654673491611956 0.2877495454756872 0.001 +0.5551290306796631 0.2950780999519759 0.001 +12.3764680803027 -1.65680586742222 0.001 +10.17236124911314 -4.739414429990718 0.001 +0.6579492636303785 0.1404508632040488 0.001 +0.5996800148935519 -8.776610839981936 0.001 +0.4666082946650604 0.2647052439651313 0.001 +-0.02215168314506643 0.3710806023150403 0.001 +-5.607590337641139 6.788048448080141 0.001 +0.8454557992768704 0.9772870635412844 0.001 +0.847023539162729 -0.008654493186159403 0.001 +-0.04000538475347609 1.130856105821381 0.001 +0.5131668609777605 0.9490405693137539 0.001 +0.3839180592690516 0.6872105030130617 0.001 +2.667987018594946 -1.880790413483566 0.001 +5.788083844843712 -3.508307418038595 0.001 +0.627341513959971 0.4173776964725233 0.001 +0.4099149197343233 0.2660916206080295 0.001 +0.1206259226925528 0.00303797455871982 0.001 +0.1513148811528454 -0.001824509420299681 0.001 +0.05060862169198362 0.2532380604562761 0.001 +13.35819627894766 5.001988416913149 0.001 +1.094534493599473 0.2931221408852226 0.001 +1.070023914550199 0.257580848376207 0.001 +0.7963525571282927 1.0929132710792 0.001 +0.7977885490801054 0.5013957931553202 0.001 +-3.289177629040401 5.478579818423091 0.001 +0.1425545957267167 0.2056834871185006 0.001 +0.8041765760288697 0.1808610804352056 0.001 +0.7308677894755559 1.008104358097292 0.001 +0.4427743566823515 0.9126811531036118 0.001 +-0.07920030855195818 0.689478563129822 0.001 +-0.0978793474452246 0.6473704926055626 0.001 +0.4680182642223155 0.6850387517796225 0.001 +0.09805220715239724 0.1792998027847269 0.001 +0.09788148067488313 0.4723894600308216 0.001 +18.49763646419143 -0.2169509420268083 0.001 +0.4928927671302147 0.469344611118068 0.001 +0.2826824932929448 1.018145321581911 0.001 +-0.08384012493632009 9.094095129193063 0.001 +1.026328091069345 0.3927186190299379 0.001 +1.083043828148075 1.000955219729482 0.001 +1.127275675981047 1.008792265213064 0.001 +0.9602469020259662 0.7364467804453456 0.001 +3.803663314320053 -5.046231164599291 0.001 +0.1131264817472653 0.03251269370105841 0.001 +11.32949676557534 1.948621414602537 0.001 +0.112580887172995 0.8158857916937393 0.001 +0.1335587671411999 0.6916005337331925 0.001 +-0.07184276556495055 0.1022622049822824 0.001 +1.019932918540774 0.4834914430501467 0.001 +-5.435103366351435 -7.083590720649043 0.001 +0.04665112088307755 0.4164670688769883 0.001 +0.06691316194478764 0.8727622221631939 0.001 +1.084520278282409 -0.03810642586687297 0.001 +5.74231603763509 -8.896452806164858 0.001 +0.8198039357163914 0.9645112626241524 0.001 +0.33090549525937 -0.1445292732953403 0.001 +0.8138832213767417 0.7262586166270856 0.001 +-0.04399370031616075 0.4545262015856635 0.001 +0.4843915793834516 0.106134863969827 0.001 +1.052578368682224 -0.092967772866698 0.001 +1.100609779747354 -0.1018625036570181 0.001 +0.8802543610765434 0.2471096921852769 0.001 +-0.07594096748622516 0.4121210172155093 0.001 +0.377659765857675 0.4412077009932589 0.001 +0.1645501768294942 0.6627469857808735 0.001 +11.60009112561658 -8.583207491292246 0.001 +0.2955388849063094 0.5208718703040081 0.001 +0.9182783933430811 -0.02735009683491096 0.001 +-0.04025768391015669 0.9829207825980718 0.001 +5.145179847830544 -1.257387062579628 0.001 +9.300477174958932 -6.972130180929619 0.001 +0.2230740403462652 0.5421731696380506 0.001 +0.7717521203371728 0.4442047101779642 0.001 +0.007056514129601477 1.127324595684892 0.001 +-0.007190730781331936 0.1831387660138922 0.001 +0.4729613041637461 0.7426590433253472 0.001 +0.7457846766883769 -0.001649598503408684 0.001 +8.069202820635883 0.7503531524426386 0.001 +0.3799867319665278 0.732917169577155 0.001 +3.037712998091684 3.588369344864535 0.001 +5.512878267861892 4.896666961731214 0.001 +-4.371711122637103 0.8887511037161997 0.001 +0.9699385273677363 0.06107994126649265 0.001 +1.023879431771022 0.8311600629556385 0.001 +0.9800101954538328 0.8291937418050473 0.001 +-0.01643458198954833 0.7132422617351981 0.001 +0.3387085356414689 0.4768667584830653 0.001 +-0.1279414980126923 -0.03005531670807146 0.001 +0.2730939862318934 -0.06096859540250959 0.001 +0.2479304004855231 -0.0904026196159796 0.001 +0.1399859285900693 0.8140584962052568 0.001 +-0.04454853295372357 0.1301428730406784 0.001 +-8.416876802167382 -0.1072003575579385 0.001 +1.085791577677225 0.6314520577547001 0.001 +0.2448611087140054 0.498032073419522 0.001 +0.9462725059932589 -0.008339134590113853 0.001 +0.2702247590135054 1.101440947658945 0.001 +0.2752584149473897 1.145067773996366 0.001 +0.3314015485063926 1.168539661362455 0.001 +0.2433133702040717 1.077172316492726 0.001 +0.002316596242864619 1.044467281860855 0.001 +-0.06428455155537804 0.1608653208438979 0.001 +9.162212097768252 6.129072255299041 0.001 +1.905205066715565 6.376133050286416 0.001 +0.293648255743081 0.7830325583728931 0.001 +0.341412997887611 0.3928651762911161 0.001 +0.8217065923158258 0.7868033196679532 0.001 +0.7817714162382776 0.7482038467713013 0.001 +0.7343953518295311 0.4861493951143955 0.001 +0.7432743638013274 0.9796263040088208 0.001 +0.3007394984078895 0.6494713084749452 0.001 +11.69224324190875 8.473678539992545 0.001 +0.2270313148990362 0.7859868386162395 0.001 +0.09649119675956956 0.5244653179120077 0.001 +14.77160973419899 -8.430713613565722 0.001 +0.02846940520260074 -0.09345931956754226 0.001 +0.5350621877381478 0.4090251327961029 0.001 +0.1043317206553268 0.5564838234158387 0.001 +0.8960513340122334 0.4500328000140459 0.001 +14.69854631598399 8.607570077863189 0.001 +0.0002702067454248556 0.1543156116211969 0.001 +0.522952370941922 0.9982515509975326 0.001 +0.9370828450661463 0.3590634982584209 0.001 +-0.09127884580776793 0.7424730143842739 0.001 +-0.1231965811803389 0.7752864468757049 0.001 +-4.469599105973391 -0.9516632153891424 0.001 +0.3073794046268372 0.6985601473543848 0.001 +0.7022239802721044 0.2895622576563418 0.001 +6.186904874966509 -5.008311603629976 0.001 +0.9013486405875903 0.4216335738762826 0.001 +0.5170017562533084 0.6540201871252501 0.001 +-0.04760900751753789 0.8770065019035015 0.001 +1.053596147858211 0.3744538916035574 0.001 +0.4941813071270096 0.1616002166470538 0.001 +-0.02504556562978768 1.02637619163125 0.001 +-7.118635329777833 3.896241938235404 0.001 +0.4259077959876741 0.2160123453614377 0.001 +0.3993274243633725 -0.02845817838406272 0.001 +8.350571315194673 -8.882748250102891 0.001 +0.8844853449029961 1.034446398984916 0.001 +1.001278562619251 0.9120492222441894 0.001 +0.7387676772127018 1.043445702447455 0.001 +0.1223393906486654 0.4367341840134776 0.001 +0.3575502286958591 0.02983793956670396 0.001 +2.528120433270803 2.766439179203274 0.001 +0.4885105250334666 0.5869659972865261 0.001 +0.3377132643937532 1.090326319860066 0.001 +-6.999592642543465 -3.290547340605555 0.001 +-0.1897436443905243 -2.287925696713677 0.001 +0.7871207691816673 0.5724396144899644 0.001 +0.5815007462325648 0.9794060223695045 0.001 +11.45534921028572 5.455712839215315 0.001 +0.7278516818791119 1.104857874799885 0.001 +0.6632282349206788 1.10115354331699 0.001 +0.6331894957812603 1.114448100681288 0.001 +0.7545467176909738 1.149997304026987 0.001 +-0.6610384143653931 -4.236440851998732 0.001 +0.4779756873726124 0.2297436987939148 0.001 +0.344786914773428 0.6817715432254975 0.001 +-0.05476703892883396 0.6161308240309139 0.001 +0.4127386771928195 0.5332255838671877 0.001 +0.07239658655364946 0.3999722830057872 0.001 +0.5989110832837859 -7.18218388142491 0.001 +-0.07111796976386969 0.2169556890195523 0.001 +0.1369452383302344 0.600244144049522 0.001 +0.05551700831801172 1.1380786287988 0.001 +4.198485056879933 -2.184378830536302 0.001 +18.59798902706955 -2.303262211948983 0.001 +13.30677654652268 -6.884208471716943 0.001 +0.3981524965669228 7.006356701919555 0.001 +0.6760161211080011 0.4234305039274547 0.001 +1.091411912651119 0.3792869015722063 0.001 +0.9137222884794286 0.7567829733067774 0.001 +-2.05235208786081 8.537713520274719 0.001 +13.22765488969345 7.001168637314983 0.001 +0.6583172099278917 0.05858013904902042 0.001 +0.9965080238039919 0.9548700003586629 0.001 +0.06971240482567174 0.3598560619243789 0.001 +0.4745139027871554 -0.02925212376917946 0.001 +0.1024740093574014 1.070671607827326 0.001 +8.113598443404653 8.979343352304136 0.001 +0.08303136231215165 0.1322760384691584 0.001 +0.565212907726912 0.749692089906393 0.001 +0.4702885189726965 -0.07935279834243082 0.001 +0.5404008207474761 0.8199013853766618 0.001 +0.1008538528794393 -0.05674733806477878 0.001 +1.229852704196881 0.4268315839174237 0.001 +0.4228398794892759 0.6925858526821342 0.001 +4.912155078911821 -6.567510827784501 0.001 +0.3651495862143665 1.079167067982006 0.001 +12.05729211786182 -3.752755959193452 0.001 +0.1230792584699414 0.2851832167939404 0.001 +0.259533910541229 0.1184359156416449 0.001 +15.1861785737414 -6.899722301656356 0.001 +18.4214845457514 8.918469509492601 0.001 +18.41943416566018 -8.912701382176147 0.001 +0.5307023811637924 -0.07664984700712844 0.001 +0.9709808443888577 -0.0534845749708632 0.001 +0.4223292660874967 0.5935120136260477 0.001 +0.7844735169245715 0.03465170266504688 0.001 +15.39426707106431 7.074667747980039 0.001 +0.7558900006735531 0.2599861481754417 0.001 +0.2097895888091999 -0.08544409806399536 0.001 +17.0080697912243 -8.950981996144121 0.001 +11.12530697224867 3.55332827600458 0.001 +-6.94439069005077 0.1782940624412575 0.001 +0.3790794323885485 1.152418888241273 0.001 +-0.03105766017077963 0.06840391850197525 0.001 +0.2700288181680386 0.5991148458254358 0.001 +14.00906792152125 2.790363095183508 0.001 +16.9191201132098 8.785405009698522 0.001 +0.7132817692799807 0.1109858712290067 0.001 +14.69072956952309 -0.7563442050121202 0.001 +1.06023927832064 0.08624104387034247 0.001 +0.3566182360593723 0.3733515298561274 0.001 +-0.02203640733693435 0.8165330623677849 0.001 +0.7834179893660873 0.9979520711643767 0.001 +0.1022205943836349 1.12857214122803 0.001 +0.3611999613005091 0.2185350338458335 0.001 +0.4527259743435194 0.881993265179689 0.001 +-5.012130582419204 -8.804129639032414 0.001 +0.1060469215488791 0.134482887912318 0.001 +0.3859354015546601 0.08089917102226928 0.001 +1.58539929870436 8.286900715002799 0.001 +-0.006505352833332502 0.4224970637731558 0.001 +0.6155712928959808 0.08330648329085681 0.001 +0.7553935763033287 0.1354846786410373 0.001 +-0.1111093869270691 1.025836335314449 0.001 +-0.1165888727324544 0.9889146949875562 0.001 +-1.563969652280452 3.816720277504555 0.001 +-0.8950653241369676 -9.256297637515212 0.001 +-0.03738102446867024 0.01690888955932924 0.001 +0.7331651854266967 0.1364036428332207 0.001 +0.9781657767986123 1.026509269006437 0.001 +0.9380477717816086 1.032284740363962 0.001 +-8.969145991803218 2.303531228088473 0.001 +16.72817855907535 -0.3476190575030464 0.001 +-5.287621791870344 8.615970166628312 0.001 +0.9353314112846793 0.05485557899422425 0.001 +0.8729741015641737 -0.03024663696772135 0.001 +-0.09818213863295451 -0.2765826237817327 0.001 +0.7529451382092733 0.8855152412985247 0.001 +17.06140280990951 3.869924012444743 0.001 +17.39753651882037 -3.671603645233377 0.001 +0.5439277593257019 0.8872887349439944 0.001 +1.169744382107039 0.1236405233589768 0.001 +0.6027177050819134 0.9230428020788802 0.001 +0.9048534887337165 0.3904167301062834 0.001 +0.0630445170937233 0.9746965035895648 0.001 +-0.1286183319309165 0.6211939547232389 0.001 +0.07193220828844619 0.00195448188055383 0.001 +0.4351322618500898 0.5360364570463624 0.001 +0.1533087685926942 0.05562104980734781 0.001 +0.6755460189591462 -0.01290140104975221 0.001 +0.6552331201227911 0.3732006045846148 0.001 +17.02753128205546 5.255703031182004 0.001 +17.01749399926164 -5.030080686408212 0.001 +7.530662631623374 -7.228788491402264 0.001 +0.8021401334348802 0.2339247604048569 0.001 +0.5666499802295513 0.1435345597185519 0.001 +-9.016808868176343 -9.009591369158034 0.001 +1.225533874255258 0.2712995766479548 0.001 +-0.01415323812554527 0.2974302486302116 0.001 +0.2079398395356839 0.6510895649370273 0.001 +0.2270215158791463 -0.1964421052333817 0.001 +0.3357270621643579 0.7446355284450332 0.001 +0.6943461643903416 1.07804381064484 0.001 +0.454505091116418 0.04751991319322953 0.001 +-8.896234009904145 5.78347436785122 0.001 +0.5864751224619376 0.3112728477302901 0.001 +0.9575474175244634 0.1895299270463251 0.001 +0.692468182238742 0.9286146072882674 0.001 +0.769344144435583 0.3370938944423672 0.001 +-9.039951936311823 -5.218151386330006 0.001 +0.3655511183905015 0.5686990212929688 0.001 +0.7003092014635409 0.4513895437019537 0.001 +0.8715644970555834 0.8258426847910154 0.001 +0.3933772425042009 0.510159747069979 0.001 +0.9935035218320343 0.2360371386609787 0.001 +0.6075925097427929 0.6175290189203522 0.001 +0.4088535486184248 0.01158562574216388 0.001 +0.650522009082029 1.023482700957302 0.001 +2.343192050485927 -6.069745166412617 0.001 +1.457989173644793 -5.287093663708224 0.001 +0.9267419734180588 0.8300449106161081 0.001 +0.6502940682120677 0.4199863226134086 0.001 +0.6538558009134164 0.473688379270087 0.001 +0.002630515817952957 -0.001518672449347351 0.001 +0.06542269994597025 0.06563394384444664 0.001 +0.3667490209292106 -0.08541827504943264 0.001 +-3.79799351297062 -6.911172779409297 0.001 +0.1982254766804961 0.05957296290752206 0.001 +0.8736775004751195 0.3204506812072919 0.001 +1.003534030176824 0.5501209977966393 0.001 +4.132632611523814 6.927668972318514 0.001 +0.6833224462673008 0.3332829545529836 0.001 +0.7769564936650337 0.7000867985170508 0.001 +0.8234982463904461 0.8301280336108882 0.001 +0.9047422243460602 0.1989355189511278 0.001 +0.1056095797103991 0.09037714909721027 0.001 +-3.752649038167137 2.6553698087938 0.001 +2.468884949648091 0.0611396296900274 0.001 +18.89695395873721 0.977410487328079 0.001 +-7.076564212635787 -5.620357680608281 0.001 +0.5662379976865614 0.51739539481338 0.001 +-1.398612234730285 -3.675061758238208 0.001 +0.6812350263505003 0.5908170552502476 0.001 +0.9680498557653781 0.3910841284487108 0.001 +0.4024951762143575 0.1812926913495063 0.001 +0.02478423517840279 0.8324419415451347 0.001 +-8.700234047325921 -0.8582654333339397 0.001 +7.376888403701322 7.14486502480733 0.001 +0.8771808308726829 0.8532676337067611 0.001 +0.7736851522446871 0.1050185642428197 0.001 +0.4389698427136212 0.6448557309444618 0.001 +0.4916223625315773 0.3254038300799172 0.001 +0.53980631609042 0.3417281487445762 0.001 +0.6750875708515418 0.6130804698887162 0.001 +0.9920028470484129 -0.07118674455319819 0.001 +19.03078005244678 5.729271992141632 0.001 +19.04700140609339 -5.18422583844242 0.001 +0.503798554355536 0.02055114646468435 0.001 +0.1020009037913608 1.012001759360988 0.001 +0.105364807108276 0.2761993282830917 0.001 +0.1407582238302598 0.7234007731197842 0.001 +6.560537771527977 5.461025278096884 0.001 +0.9113919594860077 0.801631330270257 0.001 +-7.204586037976964 -1.581117072392477 0.001 +0.8189846015968643 0.4841159591486797 0.001 +0.6857635721175449 0.5072624700940339 0.001 +-0.02287850111904474 0.1107335884223664 0.001 +1.081387321586655 0.9313426609125828 0.001 +1.096018192659085 0.9471356431199619 0.001 +-0.174332795538684 1.054725027300195 0.001 +-3.702911600069291 7.216263245147602 0.001 +0.4941169306993506 0.8939318639398963 0.001 +0.01647716211967467 0.6051236430237391 0.001 +-0.08320412306078734 0.7922485990184993 0.001 +0.619819907135793 0.6561803974925995 0.001 +-8.95235479843314 8.951388040648581 0.001 +1.03308739832508 0.81594810254066 0.001 +0.8400131691925863 0.9200540131256196 0.001 +-3.07794935955058 4.413825069938697 0.001 +-7.092051875282392 -9.091538359592768 0.001 +0.0810309780778624 0.3039135377302608 0.001 +0.02754634645036845 1.024546076809591 0.001 +13.63244404619177 -8.862498467567439 0.001 +7.389827339393486 3.448014334790996 0.001 +0.9519699418236938 0.9266514249404063 0.001 +1.017832344697392 0.2538979755407149 0.001 +1.017360093488478 0.2297769857400618 0.001 +1.013164425062859 0.276701344121439 0.001 +0.3049997810818056 0.7371662372459358 0.001 +-0.03587315264411105 -0.09948868043591881 0.001 +-0.1425938179961313 -0.1654721573384506 0.001 +13.58153377398454 9.131333670110626 0.001 +0.1631577045053132 0.2608277267638668 0.001 +0.9208036900444367 -0.05056352207360548 0.001 +-7.168902542434772 5.708398010404998 0.001 +-0.02949624250384933 0.6867413755327112 0.001 +2.229670293473725 0.649924786734848 0.001 +-7.57243979979497 9.083822508975896 0.001 +1.183057338574771 0.5469508879183971 0.001 +-0.08035113522046188 0.3214642350868767 0.001 +1.027769354514156 0.4462952025168609 0.001 +0.1829912072454788 0.3585418294726458 0.001 +0.9415259469266852 0.8781225724432127 0.001 +1.031243785429913 0.1639592139966146 0.001 +0.04901815169032636 0.1730953693218751 0.001 +0.8848122733012883 0.5505799531910686 0.001 +15.28006222426211 4.673174548781168 0.001 +0.5883363640187378 0.04218666670558539 0.001 +18.76325566592306 7.565263660579766 0.001 +18.81516299512906 -7.262685442951933 0.001 +14.81485241656946 -4.863916288806903 0.001 +0.1739708896724436 0.8429696202124655 0.001 +0.9087019360063402 0.1449978713073742 0.001 +0.4608852929366657 0.003928937213449783 0.001 +0.4585034834474672 0.4932404763518768 0.001 +0.972613089796166 0.2482412673308733 0.001 +0.458341729800554 0.3300408959729098 0.001 +0.2090225962978356 0.3993103971695504 0.001 +-9.064680639622029 -7.058329762177194 0.001 +0.4031457384964845 0.3309575052864054 0.001 +0.9664622002777717 0.1449150265588766 0.001 +-0.06757868144583207 0.4782387858623861 0.001 +0.6354727700103043 0.5872519411511637 0.001 +-0.08104371617211059 0.04173784895015838 0.001 +0.4961940531009004 0.3637120050153329 0.001 +-4.940015814107675 -5.139603761477398 0.001 +0.5548452027451587 0.00428417741906361 0.001 +0.9885810570751437 1.046679079033384 0.001 +16.7504402890616 1.751270420685172 0.001 +0.664421995151687 0.6853976945107698 0.001 +0.8101361701266893 0.6394299969455643 0.001 +-5.030183414648508 -4.138414420243159 0.001 +0.7406670983896676 0.735195752693676 0.001 +0.7332294660873971 0.7869544347187816 0.001 +0.7711150599135003 0.8120131716712912 0.001 +0.2365329538015411 -0.000902499264988168 0.001 +10.53174981496855 4.916724981611503 0.001 +0.6329714141676138 0.7259030888627606 0.001 +0.6104409942135109 0.7123596562230315 0.001 +0.3669054594194435 0.01382326890438412 0.001 +0.5861186261947646 0.6126080208534365 0.001 +0.7544133570009266 0.06684777920567607 0.001 +0.40371218606126 0.6482827706202968 0.001 +0.3714254612309222 -0.03099009207332511 0.001 +-8.925961002399928 7.429470027023438 0.001 +0.5890397024952622 0.006608820823086418 0.001 +-2.103291825842652 -5.727969340582843 0.001 +0.7931742464725996 0.720653756498439 0.001 +0.03725886376413094 0.2159434033588379 0.001 +0.04462928004370344 0.5073961697824552 0.001 +13.24890934475769 1.506527929270592 0.001 +1.029279608439611 1.019651688791255 0.001 +0.03214648805328973 0.124698982875202 0.001 +-5.237491057039732 4.970733773195158 0.001 +0.5359619813215855 0.4524049609625164 0.001 +0.2494597236244646 -0.0385719614697369 0.001 +15.06867403437387 0.85971043855255 0.001 +0.4311688740087568 0.4275875955488972 0.001 +0.01246604832058371 0.9776080262676435 0.001 +0.7873108241964366 0.7912975204796228 0.001 +0.4088379912117455 0.3715722801512417 0.001 +0.8657500168529627 0.1500111649952977 0.001 +0.8488352674795242 0.7833312180426956 0.001 +0.4162553988037647 -0.1040965262374103 0.001 +17.18932341237749 -7.231329591803869 0.001 +1.011920476923888 0.4313082721595836 0.001 +1.018618822370959 -0.0221377629503469 0.001 +16.79100232173981 7.785856471459351 0.001 +0.989151707700598 0.01455270046259908 0.001 +0.7349839197752539 0.8410295118911643 0.001 +0.9334045828556722 0.2069692483253921 0.001 +-1.492556866058295 -7.436603695512365 0.001 +6.960624080348997 -2.988575919111355 0.001 +0.9268461423897321 0.159598176333844 0.001 +-0.0239106540699136 -0.03668290743686707 0.001 +0.8530761957988938 0.438852568238192 0.001 +0.3028162853139841 0.02103344571043896 0.001 +0.07785432736935233 0.5696614287423029 0.001 +0.3043679711223302 0.1287059999153282 0.001 +-0.04647081935578572 0.2631136383535668 0.001 +0.8141384780514639 0.3522558330106528 0.001 +0.7255752500473048 0.3769889904028764 0.001 +12.03150665588722 -5.596922415942128 0.001 +0.5189644086691316 0.07336862458119527 0.001 +0.7595164251274202 0.954754429876894 0.001 +0.7833067545579936 1.028603494195982 0.001 +4.929461071688761 7.175494915231885 0.001 +0.5699994185480781 0.05829863853952297 0.001 +9.825261128358054 6.859939189421799 0.001 +0.02560299638269922 0.2914497933646706 0.001 +9.749687521404796 -7.634027141291129 0.001 +11.71356129063448 -7.569597626823379 0.001 +0.9702609662094908 1.09123813341853 0.001 +1.111654883283389 0.7908251965880687 0.001 +1.092197254910052 0.8267637561582694 0.001 +0.02000582138705569 0.3473484014396647 0.001 +5.350357477444097 -4.3896529476343 0.001 +-3.848518463452238 -2.755248739628607 0.001 +1.000838410664272 0.7847722460062792 0.001 +0.9590718025301036 0.7593069489579871 0.001 +1.04589944530298 0.1965064834033628 0.001 +0.5771228767093722 0.957114260386923 0.001 +0.5733121992708163 0.7760783642017133 0.001 +0.05686927835124279 0.7828010117706313 0.001 +0.5632306274463773 0.692864916656856 0.001 +0.7131303291468573 0.04118358926145071 0.001 +1.09789819266236 0.1308901706292505 0.001 +0.08669436658803811 -0.1029347622597555 0.001 +0.06206733075056883 -0.08141540605156991 0.001 +1.041834712944733 0.9340490213756204 0.001 +0.5015164884018047 -0.06869592189220158 0.001 +0.1021365694485916 0.9481966225183865 0.001 +1.05585697309764 0.3100745629547401 0.001 +11.89632440722858 7.650256222315119 0.001 +6.540139402165726 2.554473256331192 0.001 +-3.366343199876222 -0.8862013042997157 0.001 +0.03696915027882158 0.03006569364700135 0.001 +0.213882361417193 0.002810370445846375 0.001 +5.610824252428994 -7.637744726980062 0.001 +2.183663320373211 -8.805800127660415 0.001 +10.3681628697527 -5.628198377902726 0.001 +0.8493368201354846 0.5768402713546541 0.001 +-6.013594234941471 2.294936156625182 0.001 +0.987940790811123 0.1475816612127976 0.001 +0.7230958273639145 0.3529613151584845 0.001 +-0.03938710114448021 0.3595992390899448 0.001 +0.9084484750029033 1.090654443972376 0.001 +0.9066466563216684 1.114269192714835 0.001 +3.901965066856954 -9.071459703238498 0.001 +-0.07977499425801211 1.01352461421728 0.001 +-0.07483437376322585 1.032490096867786 0.001 +-0.01208652956875002 -0.08745066099113932 0.001 +0.179764715232278 0.4952988944321961 0.001 +-0.03913360935497192 1.094320233851281 0.001 +-0.06760849473464375 1.125568517270302 0.001 +0.1298006120831059 0.1334561089325895 0.001 +0.1292480585763753 0.1055747567149897 0.001 +0.5688316681991381 0.08981627335813255 0.001 +-1.3653938692432 5.529109627295134 0.001 +0.5545978333931786 0.1895090941970113 0.001 +0.6940671348602553 0.7660718553201 0.001 +-2.546310380295931 -4.00754658322367 0.001 +0.5101376664397601 0.7027618830967785 0.001 +0.7263789656889041 0.572992289303962 0.001 +0.3816761702590529 0.7994911243316192 0.001 +0.9865753485522872 0.5239982415744324 0.001 +0.8302956058318139 0.108741828450999 0.001 +0.07932685207735857 0.992319372369576 0.001 +0.3314554758109416 0.5855160944241764 0.001 +0.1442116526811552 0.7827250242541406 0.001 +0.08454196382068954 0.07808003883127633 0.001 +-0.05061357014027996 0.754580732028406 0.001 +0.3124247354113096 0.3728805951579366 0.001 +0.6827214419895355 0.1568001131624461 0.001 +0.04501316197755686 0.3074619649274806 0.001 +0.8906777898925 0.9772562625841827 0.001 +0.9861273449336105 0.4894551014401529 0.001 +0.7489776451390738 0.1954473323875203 0.001 +0.9996416021841076 0.102738664985074 0.001 +-4.237829873228464 9.030401646331425 0.001 +0.7038976050221394 0.2641171018301346 0.001 +0.7276476967562922 0.2361131595123482 0.001 +0.4601453622222347 0.3644991836495626 0.001 +0.9810721402624299 0.2074899420566776 0.001 +0.6127626182973894 0.2281479620594308 0.001 +0.9295325116824553 1.061962435274558 0.001 +0.9338975063053505 0.4274098575409592 0.001 +-0.03717489759728804 1.049806802068362 0.001 +0.738653915867962 5.161017295955331 0.001 +1.0691404987872 0.2083878117496212 0.001 +0.2792441354345366 0.06890240262984412 0.001 +0.3200551847514397 0.07630541095651899 0.001 +0.1860250158207922 0.4381962326324096 0.001 +0.5913431960025952 0.1416967141288151 0.001 +0.05559458342801599 0.735538496944479 0.001 +0.3023812366205527 1.003354442130112 0.001 +7.384616960091388 -1.244968404920535 0.001 +8.422702140148312 -0.4430170141917182 0.001 +0.9500898278833376 -0.06583641971215551 0.001 +0.6231168148693313 0.1005840716804102 0.001 +18.83383125928967 -4.016313826437042 0.001 +0.09166353017765334 0.2202853755108913 0.001 +0.128942717609249 0.5403882046793547 0.001 +0.8543526926950883 0.4005828448101346 0.001 +0.0171221392492994 0.4060099791706107 0.001 +1.073993347861367 1.053176642232077 0.001 +0.01338638099134519 0.6358805756755967 0.001 +0.6813922352609506 0.9898142406247397 0.001 +0.05012383315445799 1.024989161077379 0.001 +0.06640074277352953 0.6313492116406031 0.001 +0.9058963906732759 0.9152625338686355 0.001 +0.8698879723129869 0.1088904868085696 0.001 +0.8292084053519876 0.2930894384998498 0.001 +0.86795024018602 0.2720756271288048 0.001 +0.0834779141218728 0.742453800583566 0.001 +-9.081170668528479 4.667204751111712 0.001 +7.497686421696209 -4.842413368229504 0.001 +0.8370179782356616 0.5351123295973088 0.001 +0.6031863541782071 0.2693480137550385 0.001 +3.612971459173726 -6.272870124824426 0.001 +0.7490299066832999 0.3990453582335406 0.001 +0.3264400366560094 0.2562565938492498 0.001 +10.84101300089669 -0.2322141558392172 0.001 +11.78289399773971 0.1516942202583183 0.001 +0.175253143674001 0.1578103030681796 0.001 +-7.31536681824792 -6.930909018102309 0.001 +1.003039345222381 0.6186884384641483 0.001 +1.089731856600176 0.06603009839747301 0.001 +0.2784269024848119 0.473417751876888 0.001 +0.9634774249375047 0.5972167297858597 0.001 +0.1678478003433928 0.08190016759681264 0.001 +0.7919961989792619 0.9184836421375906 0.001 +0.7321222879412255 0.2961613862979245 0.001 +0.6407661792967565 0.3094989081166806 0.001 +0.007278413114141952 0.8830510607759713 0.001 +0.04174278912097008 0.8927836634976829 0.001 +0.4116636680621014 0.2860644147854046 0.001 +6.018466242965236 1.305292329129989 0.001 +0.3871109905577804 0.4647780708117107 0.001 +0.5422246284296148 1.047312546800836 0.001 +0.6496276729617307 0.2498445434961026 0.001 +0.8778840238783504 0.6993534965090882 0.001 +-0.6444655385018376 -0.3878546959295998 0.001 +-4.661378411900478 2.941256834315369 0.001 +17.86671943622922 -2.367981222352028 0.001 +5.714990648118173 5.775467597157624 0.001 +0.442178626483336 0.8951108020762419 0.001 +0.8913684080395122 0.08988643024537521 0.001 +0.9332373988432929 0.6397614138071139 0.001 +0.9421356075781284 0.1736404950528249 0.001 +0.5759880457314177 1.158110486151142 0.001 +0.05205439008721122 -0.01840760434831221 0.001 +10.63079925387331 -9.126759462894075 0.001 +12.72523548098331 5.887753772484224 0.001 +4.718531615443069 3.110264678789948 0.001 +0.354172280386753 -0.007649922238552074 0.001 +0.03602551984816917 0.9330727616637122 0.001 +0.04680867786254499 1.07198931889743 0.001 +0.1809028063030811 0.1333739854040154 0.001 +-0.1429222411017557 0.3700717285996447 0.001 +0.6818136414277201 0.9020095414503342 0.001 +0.8172993354468527 0.3976369681244859 0.001 +0.3420640132502837 0.5386195789766295 0.001 +0.2920648854199123 1.076284020257948 0.001 +1.004855541498108 0.1749234864154162 0.001 +0.6981594265843706 0.6872249890884993 0.001 +-7.212420508988012 8.045209990184555 0.001 +0.5144167350900751 0.6793252771761668 0.001 +10.48934540563413 9.072453770032727 0.001 +0.1120794737261226 0.2326896215838478 0.001 +1.021609508701469 0.04988015829487978 0.001 +0.1929130062169757 0.6071821480016169 0.001 +0.1689252527791892 0.6924982028305972 0.001 +1.088097261752415 0.1958328525810552 0.001 +1.067433454405025 0.8579223458533513 0.001 +0.3171034511894687 0.4252362573899063 0.001 +0.1085120610786532 0.4868187383882088 0.001 +0.1208653791666031 0.3816066813040018 0.001 +0.1045112338186724 0.4129365364656201 0.001 +0.2131250533851844 0.9289573962171532 0.001 +0.6249563408874617 0.1514814203032204 0.001 +4.665231985335912 9.013110318299452 0.001 +0.6234088810368175 0.5342498603202435 0.001 +0.08878698015013824 0.02780985284721032 0.001 +10.18172160464222 -2.294135861293926 0.001 +0.1203676515216077 0.06819648870665564 0.001 +1.053626961682059 0.7108235230556911 0.001 +0.3005945606446067 0.5686303587316043 0.001 +1.05908898900014 0.5627799329157104 0.001 +0.7548138832653131 0.5000219995761856 0.001 +0.2720957024308547 0.3954705919813528 0.001 +0.4617445886121971 0.6626084027524232 0.001 +0.5393316085367139 0.124686562920557 0.001 +1.070690697390716 0.229053677578038 0.001 +4.121502592874818 -7.074023478201917 0.001 +0.2049024474082204 0.9922585752979434 0.001 +6.720055167685296 -0.1145080980664919 0.001 +0.3612468883259021 0.301733241387108 0.001 +0.8678324878982959 0.01882340858931587 0.001 +9.969699604546133 0.7420483545891221 0.001 +-0.221204151553616 0.03461792496447647 0.001 +-0.2210175621700569 0.1394002899578408 0.001 +-0.06142296861451493 0.3535211465557462 0.001 +0.8810807414453579 0.1881878194868439 0.001 +1.064861594693376 0.6185326336641409 0.001 +0.9451643353828326 0.5607683083047124 0.001 +-0.01947667773135963 0.8643430484203641 0.001 +-0.1077612421892627 0.4691067673778803 0.001 +0.5365133415207521 0.09042605058578772 0.001 +0.7734974196165114 0.3585896097952639 0.001 +0.2518323890983825 0.2232611660489309 0.001 +0.7206371394605589 0.6428392950958751 0.001 +0.6218346930472139 -0.1056032809843973 0.001 +0.4766625055597168 1.149519470337633 0.001 +1.071840193006725 -0.007428639907918657 0.001 +0.2323029214724864 0.4185239650421395 0.001 +0.1497900688809868 0.4478692849770127 0.001 +0.3342379763880028 1.004364827769733 0.001 +0.01335337926371551 -0.05907690108589859 0.001 +0.9613725881672025 -0.03181052316939598 0.001 +0.5898617359196907 0.5746456788654744 0.001 +0.1707456354225968 0.6161689768873962 0.001 +0.5040843025655692 0.1886288889266448 0.001 +0.3479911422714715 -4.265658930407669 0.001 +0.4886661263980786 0.5302479447181743 0.001 +0.5276777541762442 0.7354677395592564 0.001 +0.5494645678859058 0.7328272839535966 0.001 +0.4207925746348639 0.1610429908387014 0.001 +0.415827256658597 0.0503496820231674 0.001 +0.5420473789321463 0.6303165000777093 0.001 +8.005307534451687 -2.455486032956304 0.001 +0.7187040071176692 1.076739620020753 0.001 +0.2927164612553009 0.7460744442225771 0.001 +-0.02158255670135498 0.05148790574964324 0.001 +0.484578070491905 0.6464618960455326 0.001 +0.5041500588719929 0.9234843698274127 0.001 +0.5259281169397728 0.5100484490252594 0.001 +0.5033512490288007 1.072873413712151 0.001 +0.9224720961337151 0.2695783792733957 0.001 +6.971270900935791 -5.607655875564652 0.001 +0.5792048189626421 0.6511063920148064 0.001 +-0.05630573904725512 0.3046722966222289 0.001 +0.1995097940246118 -0.1188418903929021 0.001 +-0.1989217947100105 1.210769634515655 0.001 +14.60601639089025 6.60570862899085 0.001 +0.3518243397891815 0.9602586254014489 0.001 +3.6839492739191 7.38858962733042 0.001 +0.3350890229932071 0.7808419590061806 0.001 +2.528805900150032 -7.833611317133697 0.001 +1.002525971371819 0.999194949600904 0.001 +0.8682625686495656 0.8028198840980374 0.001 +0.9007161851772197 -0.0821945489094231 0.001 +0.8704020829636943 -0.08378760116080614 0.001 +14.55565317644387 -6.251254947506681 0.001 +0.6775832384467291 0.3932619500724086 0.001 +-0.0265207876264709 0.5122155335126174 0.001 +1.051223393128287 0.1309590278476413 0.001 +6.452841471121585 7.591666287070527 0.001 +0.3834732301520445 0.2270347982166172 0.001 +0.8248640484462437 0.05383247823754685 0.001 +-2.064346139744897 7.513783014457102 0.001 +13.06080052593754 3.89444318666304 0.001 +3.925268724739349 6.224421570470003 0.001 +0.8384563819398991 0.6790659764134204 0.001 +0.5493856171170413 1.076638239974956 0.001 +-2.339481339615408 5.916695542171101 0.001 +0.3082442348589437 -7.944874531379142 0.001 +-0.2726662561498766 -0.1567451563504194 0.001 +0.009699972819629971 0.4676615513162708 0.001 +0.1667032960308696 0.952170374097103 0.001 +-5.685459509688821 -6.2641055577704 0.001 +-0.05256314495885135 0.08230055787741995 0.001 +1.029920136791392 6.14053190739085 0.001 +0.5615009714336004 1.022765029355595 0.001 +0.3258523092952243 0.8292625514722564 0.001 +-7.893219515521899 2.05266051447312 0.001 +0.9947754145309584 0.5823220794906958 0.001 +0.7599510353993397 0.6614727521327601 0.001 +0.8284126389811197 0.8660432054145413 0.001 +0.6131234172893849 0.5657805688307125 0.001 +0.1990082705881299 0.03594050025359753 0.001 +-0.1199101890242685 0.8330133059792253 0.001 +0.4753925269113144 0.4812037122163623 0.001 +0.5525103431221825 0.910621951097264 0.001 +0.5164707403976049 0.7659622716176092 0.001 +0.8698413715734653 0.7231779651492884 0.001 +0.6610656060199087 0.5214233594768277 0.001 +0.9076447416164252 0.5421933542928815 0.001 +-6.099291128574844 -3.220529528805549 0.001 +8.2432306531168 2.561315763497538 0.001 +1.065963561728545 0.983048006564918 0.001 +-0.06142139822698478 0.280753486492838 0.001 +0.1162479816653897 0.6328674089045044 0.001 +1.061905235698743 0.4246804674503863 0.001 +1.055508018443186 0.4489547604737686 0.001 +0.2107241850870361 0.877494063729733 0.001 +0.5810583046092557 0.1009316021758792 0.001 +-0.02075041550823953 0.6278454520046841 0.001 +0.3333012905015132 0.3530206783194783 0.001 +0.8217308987836214 -0.01482968206463149 0.001 +1.084894977390767 0.1618778628792956 0.001 +0.1531503808414833 0.3972251762894781 0.001 +0.9186897795485687 -0.003076773260766792 0.001 +0.582521642087557 0.3615905993883796 0.001 +0.7593806734953952 0.1677287034737271 0.001 +0.0940869440748848 0.8697690732577865 0.001 +6.381942289039519 -1.80120495488176 0.001 +0.7747873958499767 -0.04244334643793288 0.001 +0.3420655794129784 -0.05554107805091239 0.001 +0.5656355144573165 0.2401906821830657 0.001 +0.2897040775412075 0.2880683944490567 0.001 +0.2514651007530567 0.1428150714348735 0.001 +-0.1306357015247848 -0.09685559742121358 0.001 +0.9160820304168861 0.5903282473029697 0.001 +0.8932954891699351 0.5903384157563242 0.001 +-0.005381443529834499 0.7930761567948883 0.001 +0.2036815582117795 0.2334221194415227 0.001 +0.2446096067058613 0.6128488334407168 0.001 +1.076331551313722 0.0319220255157173 0.001 +0.7147078556483452 0.4751611722970529 0.001 +0.9295378855348922 0.09196617456290498 0.001 +0.1052376840955687 1.037255996684375 0.001 +0.2779591043410239 0.2051269411208415 0.001 +0.1674008396311211 1.007319946901284 0.001 +0.7697578516321959 0.5483438904212311 0.001 +0.9100036770294411 0.4923525398168741 0.001 +0.3486018321267293 0.6610319087818234 0.001 +0.7940697134184298 -0.05706021154361546 0.001 +18.81348606540519 -1.275902825775264 0.001 +0.1931042980254156 0.1836686750843257 0.001 +0.7772369151436502 0.9357147342299879 0.001 +-0.1670316728254589 8.006483943694704 0.001 +0.376973009590217 0.1336543318500875 0.001 +-3.005448955224846 -5.877530718101026 0.001 +-0.02712742733089927 0.9988036449020946 0.001 +0.04991321791946542 0.01778396041189431 0.001 +0.3648544640949034 0.8748176358303077 0.001 +1.039347315360003 0.4977458780169354 0.001 +0.6027944965716773 0.8891345985037797 0.001 +0.4225275893583939 0.715514021635832 0.001 +0.1932001787197227 0.08403556934963968 0.001 +-2.296801748469485 -9.215508456278926 0.001 +0.3765121675869311 0.3288628338874183 0.001 +0.7943631267175809 0.8304242229438894 0.001 +0.736722891200067 0.7113139724678799 0.001 +1.007831861148378 0.383870947399571 0.001 +-3.898378695418377 -8.941646497703063 0.001 +0.2407676583478545 0.4402465921841086 0.001 +0.277038847222268 0.9539864744141466 0.001 +0.1606610470563795 0.1071160866718795 0.001 +0.3206625880724026 0.4599774297163197 0.001 +0.1858228615985603 0.313817220751483 0.001 +0.5497133824766386 0.8425583908545643 0.001 +0.3360310165062491 0.1120283280038818 0.001 +17.17185819907441 6.135607404891694 0.001 +17.44620674216537 -5.8731230855046 0.001 +0.4355192614513481 0.05563451356415194 0.001 +0.9158034974462963 0.4785999219003963 0.001 +0.8504547146566334 0.09077148299766639 0.001 +8.939341926659081 -4.230707511982018 0.001 +0.2891121651756117 0.691852711307822 0.001 +0.9224815871981304 0.516821894642306 0.001 +0.08527602796819481 0.2822637251649878 0.001 +0.9686682579358985 0.6803548292326291 0.001 +16.16935138323182 -1.92441180210805 0.001 +0.8368639825086073 -0.3460750846246343 0.001 +0.2653157802326219 0.1730679981633707 0.001 +0.0270760946188012 0.3815646877872453 0.001 +0.8115477913723206 1.061864616556101 0.001 +0.4183852486190144 -0.03776435921183344 0.001 +0.9743977084280507 0.6268875872308138 0.001 +-6.129561182010765 -7.415973406102705 0.001 +-5.867097905504994 7.596676875529412 0.001 +0.9639298130716673 -0.08678334038604774 0.001 +0.1635527828181508 0.2299220462182087 0.001 +0.7603454861495847 0.2850430962033476 0.001 +0.4394640951508928 0.6096263472987657 0.001 +0.6831954843487851 0.2184236540226959 0.001 +-4.03686317412628 4.978099784221484 0.001 +2.020079135448715 -3.931511855660109 0.001 +0.7757063939753414 0.1283055977194755 0.001 +0.9520490437366926 0.520640089397806 0.001 +-2.812240064709194 0.04405185912063003 0.001 +0.1902724344554182 0.9501301754918722 0.001 +0.4735059704197891 0.6170410507395194 0.001 +0.9461306302648174 0.6913036474571829 0.001 +-7.753812209391506 -3.081527670063722 0.001 +1.084764560629407 0.09257644421253591 0.001 +0.5745169723206985 0.4348372346158298 0.001 +1.104488952488172 -2.67588365604837 0.001 +0.07046410483731268 0.5246564280869838 0.001 +17.74576076551784 3.421112210871585 0.001 +0.1678016667625588 0.8998152209460566 0.001 +0.6282448672827365 0.3310090224286175 0.001 +-0.07568134070550336 -0.1324459713886784 0.001 +0.8029927951761749 0.0906105912934182 0.001 +4.653388746325263 4.990392541685623 0.001 +-0.9885462170838657 9.138762392407234 0.001 +0.4846826676293891 0.07292067679232127 0.001 +0.9544516414189407 0.8997967431350352 0.001 +0.1948033166757328 0.7725270420619494 0.001 +0.4934214696482122 0.2840508225564955 0.001 +-7.524337811507655 0.1706468377600342 0.001 +0.7549267027249714 0.751190440298752 0.001 +0.7440821587878058 0.4645072503253276 0.001 +0.1951281270477866 1.073988934696598 0.001 +0.1647261314552752 1.102854709995116 0.001 +1.033798389706252 0.9003187481852507 0.001 +0.4308920871808156 0.4533582268812462 0.001 +0.279050104311142 0.737496854866746 0.001 +0.8801751583153862 0.303774133867993 0.001 +0.9098535378996786 0.2906025552422666 0.001 +0.5910404867789162 -0.1193036715258949 0.001 +0.2716982145018293 0.8473084186595339 0.001 +-1.028408777063104 -1.819747580049571 0.001 +2.005723515995177 4.998322699773632 0.001 +0.7897323661853595 0.6319282918140631 0.001 +0.3753478687560655 0.2793087112438181 0.001 +1.044336368088618 0.7688260790001585 0.001 +0.3186902473421809 -0.02302912625185294 0.001 +-0.1092178782074796 0.6830628100640772 0.001 +-0.1250443404137449 0.7204460789703776 0.001 +0.8603561181791199 1.080322398324593 0.001 +0.845887813505484 1.107875229742741 0.001 +0.6646160737747302 0.177316380822523 0.001 +0.2120304882834047 0.1108291514985252 0.001 +12.95402784606781 -3.930320540828075 0.001 +0.8679703892943439 0.6094060811762314 0.001 +-2.571770831675284 -7.992996353043506 0.001 +0.231087162806398 0.9437321305687484 0.001 +0.1814638897363498 1.04759853659863 0.001 +0.1500606321360519 1.022476224223679 0.001 +0.774702723629566 0.6029818653920992 0.001 +0.3212557978543788 0.03621555133487886 0.001 +1.046329300985286 0.9682627428800368 0.001 +0.7189642919491256 1.033399351798995 0.001 +-0.0639932434146457 0.8345987585486608 0.001 +0.7037988009910482 0.8772271924721743 0.001 +0.04946092773777316 0.6021890684350123 0.001 +-6.357588459551059 5.786015514544834 0.001 +1.021422793871307 0.1286997585892597 0.001 +-0.01994971237004837 0.5766863282000476 0.001 +0.9673395938006122 0.5401260256481897 0.001 +1.003194082503722 -0.00330420476748099 0.001 +0.4062769990931206 0.4873416465671621 0.001 +0.7802723186357711 -0.07820331864033836 0.001 +0.8897017653134642 0.7545696675308765 0.001 +0.05824607574721096 0.1277072405088187 0.001 +-9.047104248461981 1.032402339944464 0.001 +0.2362875932082271 0.9758093749138645 0.001 +0.3075206442944429 0.2456168870666564 0.001 +0.8768281132523584 0.5729644138468635 0.001 +1.043756726696857 0.677749662718116 0.001 +3.799853072471898 1.335558196158239 0.001 +0.8201556005838333 0.5974737069212994 0.001 +-3.779738489381702 0.7103618460741732 0.001 +0.1148286584453374 0.9759236554642028 0.001 +-0.05900287086790516 0.7796877529671111 0.001 +0.8473492158246603 0.4852122610404957 0.001 +1.02064312645359 0.7210968862358564 0.001 +0.9416173233134502 0.7132405688426992 0.001 +0.9144752891184771 0.5660502257316056 0.001 +1.088094109954747 0.565080852461465 0.001 +0.4771101593361969 0.7127834825679135 0.001 +0.4471162213222926 0.7415540105799029 0.001 +0.1378326256117121 1.078753965568126 0.001 +11.34711998530724 -1.554492249079897 0.001 +0.2804189593018265 0.6536260976904118 0.001 +0.2229498733232182 1.060650802239647 0.001 +0.2839805788872084 0.006093841408498772 0.001 +0.5007854577385842 0.1238897001042783 0.001 +0.9865920222556065 -0.09667093587778096 0.001 +0.07156175226202972 0.2692636722841 0.001 +0.7505580481631695 0.5491928559089455 0.001 +1.003604674125852 1.128522835211493 0.001 +1.061529871555977 1.12150265610379 0.001 +-0.03706089242229049 0.7074270430244217 0.001 +0.1889075368147925 1.008132180882074 0.001 +-8.863740629120208 -4.244927154290767 0.001 +0.517538416993615 0.2586915429644594 0.001 +0.4047606875261615 0.09504890235039616 0.001 +0.4727229053234062 0.7673405320856339 0.001 +0.2242357767075791 0.7233902904413774 0.001 +0.8498768166236507 0.06258455971956435 0.001 +-0.05902189187951182 0.02806483470150963 0.001 +0.3850568304503653 0.01383951107421622 0.001 +0.04336326885126685 0.05085583047477357 0.001 +0.7243701168399002 0.006834576779002096 0.001 +0.6835824594701185 0.8373191738124324 0.001 +3.32112550693375 -4.257413147903749 0.001 +0.7531735615662375 0.09558465353846413 0.001 +0.703823499164681 0.5559440358368126 0.001 +0.2437329063675464 0.08977292140973134 0.001 +-0.1472728550224033 0.06752559761463292 0.001 +0.9043064432050258 -0.106715756502062 0.001 +0.8974454231276126 -0.1706544523202884 0.001 +0.9359491304291444 -0.1176383529035585 0.001 +12.7503177703067 -6.314194218387932 0.001 +0.5103427225264116 0.5603839215712868 0.001 +11.07932505293799 -3.621843309557977 0.001 +0.3840830126725161 1.096333560653036 0.001 +1.01868315991687 0.7665327053009361 0.001 +0.1217983942490379 0.9332681521441567 0.001 +0.05635928071063559 0.9167659716471279 0.001 +0.9098186719364323 0.3343408885807494 0.001 +0.1065269698000821 0.3543079932420179 0.001 +0.8781405719894837 0.4582966671438083 0.001 +17.6874759294845 -0.2876464645112912 0.001 +15.95221800779236 2.489067388886619 0.001 +0.1219046680510248 0.9042204789216554 0.001 +-0.004975282936075299 0.549452159098308 0.001 +0.5768339446388993 -0.04193475141714122 0.001 +0.3552410076046985 0.6233520797373109 0.001 +15.64560485479827 -1.12589080354106 0.001 +0.008370096048839841 0.3674705857228365 0.001 +1.192871542149954 -9.213243716993784 0.001 +0.9868375272292774 0.2693538078219858 0.001 +-0.07275516763224471 0.9561980698845212 0.001 +0.6511476715089582 1.132847041569936 0.001 +0.7440143609681834 0.6646214961520071 0.001 +0.8148685450453441 0.8750606279456604 0.001 +0.5254815355478007 1.114703470045628 0.001 +0.7392235314487521 0.9113455649414691 0.001 +13.72648327168342 -5.10589482842742 0.001 +-4.743212485839974 -1.734795301734964 0.001 +-0.009635643429941098 0.9094466461113631 0.001 +-0.04586739540182301 1.190198846302925 0.001 +-0.0464957275588524 0.5551625144820156 0.001 +17.96376051515272 -6.598106279260066 0.001 +0.9528799221484562 1.080709085979945 0.001 +17.29910528816461 7.331295266370464 0.001 +1.079833447463407 0.4543534875467422 0.001 +0.8476996326062154 0.5227903008472192 0.001 +-0.01247008233383725 1.089880839294333 0.001 +0.275538016858628 0.5697228404059334 0.001 +0.02988519529256754 0.9674305507818672 0.001 +0.6697633678878498 1.073595622369342 0.001 +0.355545544801704 0.4606505165905637 0.001 +0.1615276892291176 -0.1025610032244013 0.001 +12.38343533122978 9.288332261413057 0.001 +12.62663597612482 -9.123567624949338 0.001 +1.088574279975153 0.4308230880535886 0.001 +1.095183329404701 0.4052312403669716 0.001 +0.382649175846649 0.1670771360910891 0.001 +0.9309142929314312 0.4755903456294934 0.001 +6.419235465773474 9.294335414786621 0.001 +0.510039479991346 -0.02579203604116242 0.001 +-9.175294607737605 -2.385042792767625 0.001 +6.562766097660887 -8.74549806779277 0.001 +-0.1003371699740055 0.4305204294325854 0.001 +1.484730571411743 -0.7129653805869337 0.001 +0.9644408246981372 0.09650019578157577 0.001 +0.007537046946738627 0.6647870399841722 0.001 +0.1546145481400817 1.04083204091154 0.001 +0.2820291127778201 0.1236053394228321 0.001 +-5.279961046126181 4.058165926286303 0.001 +1.033932239678136 -0.0743128631929383 0.001 +0.2127373402903877 1.07595592699728 0.001 +0.3675695364092224 0.5195781445717652 0.001 +0.9173969479850499 0.8897569547878702 0.001 +0.2679724557668876 0.9357996057799961 0.001 +1.060903477817674 2.965344490704913 0.001 +0.1061278550965252 -0.009160192481103216 0.001 +0.3060686474491698 0.1885228140762396 0.001 +0.7986180517161883 0.6792617823244377 0.001 +0.1996886667283336 0.9099656597159417 0.001 +16.13526808452195 -3.284075073562824 0.001 +0.3815756324240588 0.9208139140616292 0.001 +0.4563003886644562 0.182924903471142 0.001 +0.7803374612339262 0.868634107482923 0.001 +2.626474272136051 5.815807380259517 0.001 +0.2951261111900538 0.9109367830870801 0.001 +11.10830006174621 6.741676903693215 0.001 +0.1568401236693277 0.9362290056612869 0.001 +0.215300538100476 0.1871022312101418 0.001 +0.8146244668530628 0.4305103280129147 0.001 +0.7673549358806513 0.2071914902451766 0.001 +1.077286794430084 0.66505505875481 0.001 +1.132367265662878 0.3075214170002987 0.001 +0.1566487575213514 0.9687362232508568 0.001 +0.786293783798828 -0.02323330989351569 0.001 +0.04429583860431661 0.8525949339256051 0.001 +0.1223261714790633 0.180677944853935 0.001 +0.1996987313055389 0.7019372875286368 0.001 +0.9596468179317565 0.2899338323236232 0.001 +1.031888603403742 0.3052011838573324 0.001 +0.698715330734306 0.7176083213562434 0.001 +0.2268594864952391 0.9910151163512235 0.001 +-0.08184944511186444 0.2687489159483253 0.001 +0.2369329474668804 0.1921822295928172 0.001 +0.5201635131796765 0.9731688372419423 0.001 +0.4582535942955173 0.8191135420603655 0.001 +0.2307624827500741 0.2170712894281512 0.001 +9.494817531712068 -0.8988215370867265 0.001 +15.55503841985768 -8.903131764559669 0.001 +8.195721080781288 1.620795478111474 0.001 +18.90164834450089 4.716281907839661 0.001 +0.2591588937886823 0.3248293262873162 0.001 +10.42372630609536 -7.224273753354056 0.001 +0.07367174105913277 0.1766025720393434 0.001 +0.654332168227883 -0.02724261122632298 0.001 +0.64508269916417 -0.05179363885492752 0.001 +0.7027975587479702 0.5265562982987324 0.001 +1.205427928558732 1.088380960231109 0.001 +0.1943310027692015 0.8312995945273529 0.001 +0.7294181919988747 0.6923941184319395 0.001 +0.8170427626958661 0.03462812372469262 0.001 +0.5135845698407175 0.8674015834742919 0.001 +0.3287184359185924 -0.008744206934935748 0.001 +-1.044434329224047 -5.549621541480737 0.001 +15.48129457977801 9.011328569879733 0.001 +0.5363057861818726 0.05659848639130519 0.001 +0.09951498319955525 0.8931775412002697 0.001 +0.8672191400164867 0.8777568806256493 0.001 +0.3155550003682022 0.223093591103864 0.001 +-5.190534503814772 1.041858544944457 0.001 +0.8470341427443989 1.001508721659109 0.001 +3.213356927893412 -0.7144963628429872 0.001 +0.1942480659854263 1.023639359085881 0.001 +0.984406479514735 1.003483934741554 0.001 +0.1347497034325852 0.8600215429775686 0.001 +0.004929666400391461 0.935353036035236 0.001 +1.073401442462959 0.4801620113675421 0.001 +0.192309202899242 0.5406632921215573 0.001 +0.5677480910983195 0.3022872685405872 0.001 +0.9842354390347535 0.08127095209126936 0.001 +0.7358044868341872 -0.03320473156639423 0.001 +0.8788625112262927 1.123037958360825 0.001 +0.4770462120710596 -0.05549021356392519 0.001 +0.9596863768829039 0.4115437055891563 0.001 +-6.217146338126215 -2.250401314157441 0.001 +0.7709779787708485 1.074116822342283 0.001 +0.6702969268001202 0.008299042598492448 0.001 +0.1247600761654821 0.7636270574320883 0.001 +0.743001290381594 0.51273716357778 0.001 +0.3927079316217419 0.7577449861752115 0.001 +0.1441167960733411 1.099682154359351 0.001 +0.806597093446501 0.01709832328622883 0.001 +0.4229881839956165 0.3505432184046587 0.001 +0.7225483326904147 -0.08555429144621299 0.001 +0.7443671126008244 -0.07383034316586509 0.001 +0.8577354851415905 0.2360262399106167 0.001 +0.8356208793862555 0.2243189114928718 0.001 +1.156588504893149 1.103702209523359 0.001 +0.6108001332505235 0.1445414750017718 0.001 +0.7162214369410326 0.7280524300641489 0.001 +1.047972948375732 0.5909903486068375 0.001 +0.9363038821913003 0.6164008130915966 0.001 +1.045113920541249 0.6343063476838539 0.001 +-7.002270846611558 -0.7130825282768516 0.001 +0.4788293241622374 0.4498499501125467 0.001 +-6.955309641423639 -8.012224443936212 0.001 +0.6854239037796805 -0.05589536535584361 0.001 +1.061511651346486 -0.1537078824826099 0.001 +-7.629166351598128 7.232327005885279 0.001 +0.3600808177923284 0.929189122170764 0.001 +16.7899290551151 0.6770788818224941 0.001 +0.4581590323793327 0.2397481903846011 0.001 +0.2153152404146544 0.2632577192109866 0.001 +0.6614412553145141 0.5588149152544271 0.001 +0.568128078312896 0.9910511920094482 0.001 +-0.02154283855099944 0.4031456598871549 0.001 +0.8105789926306273 0.33021332904734 0.001 +0.07315828483450583 0.6868350399091782 0.001 +0.2960836750754998 0.08246522868872863 0.001 +12.17927467124635 2.113909867988718 0.001 +0.1784188572441634 2.91026847199737 0.001 +11.18411764778566 -5.583071563133455 0.001 +0.4141419434167205 -0.06886766983445636 0.001 +0.2731007966783467 0.8871778904740093 0.001 +0.08987358297621892 0.6110808366979563 0.001 +0.2953532621021248 0.1536091570524093 0.001 +0.7131049974809042 0.08261141300824829 0.001 +1.065859159169893 0.7500414947836399 0.001 +0.4819109368033716 0.03496547357410203 0.001 +0.09712635867968057 0.7687357597160104 0.001 +15.26262953465765 3.930955110944957 0.001 +0.3494478162912892 0.7645610388681261 0.001 +0.1409590052129069 0.2301557655302754 0.001 +0.7022803007535485 0.5944590252563254 0.001 +-0.05356826437365621 0.3985305953861428 0.001 +0.4803325294588225 -0.01028719977200331 0.001 +0.6312489038376354 0.2373752135253852 0.001 +0.647314536673809 0.7047039048903386 0.001 +5.016601960789559 -0.6650626526158003 0.001 +0.5391010611361321 0.3658328766440139 0.001 +0.7884343383999917 0.3190106724841121 0.001 +0.441106476992044 0.8464254190975826 0.001 +0.272477933410624 0.7822071433513947 0.001 +1.131450898059719 0.7780699799801366 0.001 +0.8033381223676149 0.06009877799185609 0.001 +0.003177581538219794 0.7418883709204939 0.001 +19.17444705235081 3.005128916521675 0.001 +0.1849921147117911 0.8088822343914674 0.001 +0.6672990917575263 0.7210162885877704 0.001 +0.5600365783530793 0.54346106889769 0.001 +0.4769650158415438 0.909688233120207 0.001 +0.4367980366657461 0.0908617155104403 0.001 +-6.462157837435833 -9.18359350931823 0.001 +1.055107150755759 0.108546583792186 0.001 +17.85549807467599 -9.314466421696986 0.001 +0.4556818101937002 0.9504231559638229 0.001 +0.9814828265686757 0.2961648885405882 0.001 +0.8470798705772664 0.8282914065884999 0.001 +-8.13012085092952 -5.391093846900919 0.001 +0.5773641636044193 0.927181626980827 0.001 +0.1825527123602224 0.2468967934049285 0.001 +1.43669405087194 7.505211923625392 0.001 +9.7469071617697 3.642051489413825 0.001 +9.56814103080452 4.122095628630859 0.001 +-0.09921043536893548 -0.06052517531600015 0.001 +0.0970052892815156 0.570221023603787 0.001 +0.6407258413160777 0.0181436796625386 0.001 +0.4971831757009485 0.7883118530449971 0.001 +0.637232635314087 0.07132507063255837 0.001 +0.3355235967463995 0.3074070518577713 0.001 +-0.02447447998427484 0.9093613632280519 0.001 +0.3499863621267446 0.9055213542975976 0.001 +0.8293490029207702 1.049377812859848 0.001 +0.6487918094058157 0.8691196311206962 0.001 +0.3222480323184778 0.3978370275866773 0.001 +0.5612753733424579 0.2611794254384518 0.001 +9.189011019538128 2.603693319803721 0.001 +17.84588242958878 9.277592559718075 0.001 +-0.1089753184572371 0.09262414404025629 0.001 +-0.1187417818657154 0.07408093930432433 0.001 +1.103775597746656 1.055099136451508 0.001 +0.7745693899568198 0.5245858656516721 0.001 +0.4498965667786497 0.3495505003886204 0.001 +8.906469634120729 0.4374530859541541 0.001 +0.1636131373739343 0.3654069962699366 0.001 +0.2673728345888327 0.9683354698817231 0.001 +-9.072097752279166 -6.122688270621274 0.001 +-7.642877552627217 2.984823756157889 0.001 +0.6364701954816467 0.3623670469375921 0.001 +0.2991837131843114 0.6275245062166885 0.001 +-0.1026538884600608 0.1903799314532817 0.001 +0.6102236501085996 0.4043336289566215 0.001 +-6.611186745693548 9.181607544193531 0.001 +2.764181296181472 8.86936578082801 0.001 +7.724055417859415 -3.267107706699194 0.001 +0.2521136999167869 0.8668829079086861 0.001 +0.1110442831617409 0.5411244324675173 0.001 +0.680736170999674 0.23602292322164 0.001 +0.9675814064897166 0.6410201196912593 0.001 +1.093899722401037 1.130193464320989 0.001 +0.5871126184033111 0.7937672391039596 0.001 +0.2968753438323532 1.045030174856705 0.001 +0.9883390809791355 0.04656649630571404 0.001 +0.2577173438732333 0.0430279370491383 0.001 +0.1881602959516961 0.2075432953746639 0.001 +-9.299371417363465 6.751144831624871 0.001 +0.890750587391354 0.02082639956607272 0.001 +0.6158321440243175 0.9394286031379849 0.001 +0.1508855492778764 0.1572946358999948 0.001 +0.5832642420837353 0.4096623122419841 0.001 +0.05091929573993723 0.3432921390169212 0.001 +14.02724317568544 4.862617687879036 0.001 +0.1844119436401155 0.2878975391753564 0.001 +0.2488349074325869 0.2528392320085575 0.001 +-2.040832538609755 -3.194090482013704 0.001 +0.3144393074573202 0.2810534685642729 0.001 +0.7271777452577565 0.4360724789455678 0.001 +0.08231181802137214 0.9607057403947158 0.001 +0.8360894778908955 0.3489796997726628 0.001 +0.5720434419277893 1.070134533232911 0.001 +0.7064261931212752 0.1824681296977892 0.001 +14.37254470553041 -1.636740336489112 0.001 +0.1892611411743161 0.4169563020230471 0.001 +0.7153113459816891 0.8493217152047949 0.001 +0.06097549477897127 0.8037935286330911 0.001 +0.6583732180841996 0.9763268163041308 0.001 +-1.51916236126573 -9.286025862474901 0.001 +0.2955579004054695 -0.06434462607651403 0.001 +1.016793954984942 0.5955935219009448 0.001 +0.3093688275572446 0.9753501019228541 0.001 +8.337243263176591 -5.354531782540609 0.001 +0.671190165913239 0.1172763997219988 0.001 +0.02624018130515038 0.7491688705061189 0.001 +10.41650141510515 1.783693681497694 0.001 +0.69739196247892 0.6416900942456768 0.001 +0.7352548217573991 0.9615693988776949 0.001 +1.11968915209096 0.5781981832095135 0.001 +1.103090831254857 0.6088131720153007 0.001 +1.127802647692199 0.5435808497250751 0.001 +0.4621628891871364 1.007439889394554 0.001 +0.8005521138407602 0.1368008871967866 0.001 +0.2380514971219614 0.8244817324113574 0.001 +0.2052393755584746 0.1353538862227811 0.001 +0.7997302716456632 0.9826427786953107 0.001 +0.3769011125787665 0.8296578231627489 0.001 +0.9807720298660588 1.064953599114805 0.001 +8.620508803477275 5.354747240585978 0.001 +0.8971476690696202 0.05177950391901716 0.001 +0.1641782007262561 0.7377826531302263 0.001 +0.4348921345365509 0.3832461451567709 0.001 +0.9044165596283021 0.6826690180052326 0.001 +0.5382650285491803 0.3865587680340987 0.001 +0.3870817540527359 0.4133766139191678 0.001 +0.405311144559039 0.8002096082256356 0.001 +0.850200071517653 -0.09433077467312757 0.001 +0.6003726104007627 0.78037831942376 0.001 +0.8526109664354838 -0.05424235283630582 0.001 +0.01689214194473781 0.02205344484900395 0.001 +0.6373498703959753 -0.01424629473713991 0.001 +0.4495349871820536 -0.08811752908792805 0.001 +0.2908862115823537 0.8649419175043378 0.001 +0.9412880612147523 0.9756465251434678 0.001 +0.9234931903776666 0.9459431415540566 0.001 +0.8219963906103006 0.6996006047486961 0.001 +0.72116740623409 0.8053632533171465 0.001 +19.04800218479315 6.365128818594613 0.001 +19.06814918089913 -6.116943283409157 0.001 +0.08955341821783409 1.049420439535089 0.001 +0.599685839356715 0.4502053597528927 0.001 +0.5025974663095345 0.4841756420159623 0.001 +0.4565818178017681 0.5433612234062267 0.001 +1.100854575662377 0.4616673881045684 0.001 +1.06452186571551 0.2854441124125633 0.001 +0.3846535872327284 0.8699384862765619 0.001 +0.3391315580074784 0.1552967769875073 0.001 +0.3254935728783303 0.6183585319734808 0.001 +0.08742457475305404 0.8223763977953773 0.001 +6.636308684642054 1.88966307708446 0.001 +1.017707915658884 0.4136430614775207 0.001 +14.2648250522623 0.825301738422426 0.001 +0.3164840518103243 0.5181229230441734 0.001 +0.326210724503387 0.1342514097161991 0.001 +-0.102319840309436 0.1593503447139427 0.001 +0.2827078785365321 0.4162540977108168 0.001 +0.6100473219479102 1.123832295385976 0.001 +0.5438716782847069 0.4743027666461794 0.001 +1.085409291228502 0.6994191576512329 0.001 +0.3826114225539403 0.9796306358140576 0.001 +-7.711896684029657 5.696827371837061 0.001 +0.9753039423195946 0.9300191772117159 0.001 +0.2589377870542517 0.6595962626031474 0.001 +0.4448316234869149 1.027997429852091 0.001 +0.3180701425610507 0.004123072470986756 0.001 +0.09987634775894058 1.104536043489105 0.001 +-0.002091335334944452 0.9484496571909313 0.001 +18.15127888830054 -3.211006444856856 0.001 +0.4669623448834327 1.087512502354963 0.001 +-0.06113366775667893 0.434493551457913 0.001 +0.1849787390952033 0.7061573653364028 0.001 +0.8185982879675751 0.9178480522985623 0.001 +0.5488222868143844 0.7898127824626009 0.001 +-0.04662625814837831 0.5816805796744361 0.001 +0.7962295567891758 0.9494910061994744 0.001 +0.1992659200797001 -0.03082171034801681 0.001 +0.04020417585464505 0.7147625419874336 0.001 +-0.09497883128166903 0.01956830797458256 0.001 +-0.1295525478354709 -0.003845925427542196 0.001 +-0.1055554990628304 0.001468532845571197 0.001 +0.45223113797543 0.793870604140153 0.001 +11.52953138002362 1.041689752766177 0.001 +1.083791067731757 -0.07998564825881205 0.001 +-4.510876037375929 0.04211632342326708 0.001 +0.009587599800374181 0.09780561585278988 0.001 +6.885783284486313 -7.636555312735439 0.001 +1.071201748654898 0.540728960907729 0.001 +1.0920345544192 0.682511350635032 0.001 +1.11300450647668 0.6824115097281502 0.001 +1.142205974484622 0.726116712068642 0.001 +1.153718972867364 0.6852083090075008 0.001 +0.7897274875298149 0.2914392120080858 0.001 +0.7229715266838481 0.6197442873884983 0.001 +0.2535199846088481 0.8872701583216385 0.001 +11.91876513073392 3.6909818013082 0.001 +0.507765485124458 0.3073680017468931 0.001 +0.8912864233578233 0.6127575515588297 0.001 +0.7991987284729108 1.014273632121185 0.001 +1.186950923303086 -0.3782708703970166 0.001 +0.2497199567764245 0.7552343730266546 0.001 +0.4218485826651485 0.6552125792261442 0.001 +0.5082282842041057 0.2030585319239893 0.001 +0.1534293829504997 0.5404126787797251 0.001 +0.4824010482613985 1.060241232756622 0.001 +0.4067617460759996 1.004427991593268 0.001 +4.808370703353818 -8.980946412790759 0.001 +0.7646070144502775 -0.09921125485602195 0.001 +0.5129586182221557 0.7496682463067873 0.001 +-0.06468959718721704 0.5978012443351566 0.001 +0.1121865104612098 0.6071814838714888 0.001 +12.48403476462517 -7.227320679118701 0.001 +13.42926828283259 -7.679220433071959 0.001 +4.345128626300896 -4.729214277422338 0.001 +1.088192605051219 0.7503464060325915 0.001 +1.097964052232818 0.7344490822650791 0.001 +1.146441137196254 0.2105805270450357 0.001 +0.2186550325485653 0.8976732717578464 0.001 +0.2149419442777825 0.6736941094661575 0.001 +0.2520899161211285 0.5446433472159951 0.001 +0.8684847315258644 0.04155059133179128 0.001 +-0.09657240978040323 0.2573599564564146 0.001 +0.6840498852251278 0.2864026795924045 0.001 +0.6947856078783603 0.3120443855035798 0.001 +0.7029370007360054 1.00012687017017 0.001 +-0.02141522044094975 0.2045343088709362 0.001 +0.3368106418549219 1.036837125877958 0.001 +0.7482247533580531 0.3153046499900213 0.001 +0.5403545546570535 0.5787908216130003 0.001 +0.7527624470814719 0.01845202566075668 0.001 +0.1093722150392864 -0.03853657396632494 0.001 +12.89343758051655 7.889856033843365 0.001 +0.3340904710525527 0.8543902760050823 0.001 +0.06071761372492344 0.4806613445441744 0.001 +0.03820252962398159 0.2734313753330201 0.001 +0.2784570787547256 -0.03214319397747523 0.001 +-0.04848649716197518 0.7288879969003738 0.001 +7.757384194424878 8.014973273580573 0.001 +0.517284035083645 0.607196569834537 0.001 +0.5119260157919815 0.4050190533713919 0.001 +0.4214219706995534 0.9030862137088913 0.001 +0.7003521999181085 0.4670501734737432 0.001 +0.1021374544904983 0.4526154970368907 0.001 +0.1562449326296112 0.8013510496623863 0.001 +0.01049069385563021 0.7156241757750261 0.001 +0.2447391254052704 0.924582943210719 0.001 +0.1540627392435309 0.5157088885848262 0.001 +0.8691525578842783 0.5280990903126067 0.001 +0.9173740801568806 0.3197325911072919 0.001 +0.7301292771494881 0.05672490935117995 0.001 +0.2332959937517623 0.5154888566520571 0.001 +0.9516085135504967 0.3423469480192957 0.001 +0.5495193758974214 0.4307564015327174 0.001 +0.5556426807330919 0.3196668561678295 0.001 +0.5953878586083845 0.1947290214038162 0.001 +0.6933369751721649 1.054350986429642 0.001 +0.8562208025738827 0.9392148204710012 0.001 +0.8948227696502686 0.9424911862067309 0.001 +0.9744525208333954 0.02917604754432916 0.001 +0.4277102364729445 0.7974357497514403 0.001 +0.7545317724333684 1.057674778749417 0.001 +9.194847378131264 -1.912606657473314 0.001 +0.8302021142836791 0.6484912196433883 0.001 +0.6242595669714295 0.9586262753066778 0.001 +0.6138647040209994 1.062635354053381 0.001 +0.7139206850881917 0.7766337990756689 0.001 +-0.8634886250600855 -3.04981292467716 0.001 +0.2602956474684166 0.375404583452667 0.001 +0.0004797759359811427 0.8673628678652436 0.001 +0.06807123937148678 0.430497080984402 0.001 +0.8282908129420877 0.9413571758418124 0.001 +0.9327248737371219 0.8041620950533586 0.001 +7.925624003482835 -7.958833542909213 0.001 +-0.07162747831952657 0.5333517799742336 0.001 +-0.05403650595095805 0.5094230947399117 0.001 +-2.838568894246688 2.395390758223364 0.001 +0.07981910229444886 0.7116974030758192 0.001 +-0.06671162453484995 0.06309783193764903 0.001 +0.4630464347991687 1.044520755204022 0.001 +0.4148546332644338 0.9367107139308454 0.001 +0.6108939933334729 0.7650705779356227 0.001 +1.022579627471007 0.9533623711544653 0.001 +0.08239085146874761 0.3395629981432517 0.001 +0.4272722349444623 1.048758939108417 0.001 +0.78315801050671 0.2558273781014085 0.001 +0.5432065488938528 0.2363020245330249 0.001 +0.2825568576267356 0.2614715075151146 0.001 +0.1406741469174126 0.6612372799460917 0.001 +0.4755820594885862 0.3810132257984845 0.001 +8.172556309217674 -6.760334773542072 0.001 +0.3177256451797156 0.8850832863690257 0.001 +-0.08750687832985656 0.2405307725680167 0.001 +0.2627001367073442 0.4485888185312509 0.001 +0.08851106647212326 0.4971960275994697 0.001 +0.9581551806884799 0.1303985174861992 0.001 +0.3639435721222323 0.1526075213035109 0.001 +14.86587328272105 2.561783039625833 0.001 +13.46073965803741 0.6254494736591711 0.001 +0.2643445381636291 0.2759767463942537 0.001 +0.1926601125421573 0.3378411233894605 0.001 +-0.01966833946533441 0.4729324955318246 0.001 +0.6352207493374897 1.005112440726371 0.001 +0.05559695717084624 0.5511621931944694 0.001 +0.1479931809773669 0.8319206188555157 0.001 +0.3961613333160432 1.022472850972173 0.001 +0.40038424944235 1.045604425686124 0.001 +0.01927038312856198 0.7893659676536074 0.001 +0.462081245881915 0.5700542137909979 0.001 +13.79385229179702 -0.3276742782578616 0.001 +1.01745242719896 0.8083409220577179 0.001 +9.923645732708099 5.543497061112578 0.001 +0.3905254230692781 0.8448730924252333 0.001 +0.1619911214012173 0.5920750680167715 0.001 +0.2077105409608567 0.5769574231284791 0.001 +-2.445757548498784 9.203541280886252 0.001 +0.6952986763396345 -0.09475074247961007 0.001 +0.1276592762215146 0.3238634773429249 0.001 +0.8439268544434622 0.6033106635371606 0.001 +0.6341790672288445 0.8315386282999141 0.001 +0.6067811944332933 0.4755005472043424 0.001 +16.20090960751611 -5.433285350062798 0.001 +-0.09565820521678582 0.1083020956505599 0.001 +-0.09946453063967223 0.1287744971231553 0.001 +-0.6112706846143277 -1.058107207513819 0.001 +0.7123295425428754 0.7030360959947615 0.001 +0.8395875169347788 0.0192628719552561 0.001 +0.2278472171311232 0.8423207349375215 0.001 +-0.1997008560105283 0.2871375406619835 0.001 +0.8878933875107263 0.3387808924111622 0.001 +0.02057869901797163 0.1699867802477933 0.001 +12.52246802252376 5.231443912914781 0.001 +0.4259642457286966 1.014058412663798 0.001 +0.2766202745750909 0.7028146103250384 0.001 +-0.06411599908004594 0.7106826520458717 0.001 +1.068741777884199 0.8285950670805696 0.001 +0.2984177662116356 0.8345913196706038 0.001 +-0.7920878112603417 3.764931730134246 0.001 +15.05193745216137 -7.56540889166901 0.001 +0.9021904460111132 0.2582171974715617 0.001 +-9.255483194802515 3.725042044645679 0.001 +19.08751525670368 -3.035341268816005 0.001 +0.6469828858652829 0.6656464940871865 0.001 +14.94907923255322 0.05574077758440337 0.001 +0.6737212360383111 -0.03365367996716665 0.001 +-3.442138275574799 3.570405177113309 0.001 +0.1342343726248395 0.04713953412120703 0.001 +7.052875910061219 9.18220706234097 0.001 +0.4782751639021194 0.4135261794839903 0.001 +0.3655815537579921 0.1902264255918257 0.001 +0.6313469218310837 0.8459957718055444 0.001 +0.4118536891933344 0.2118089799228808 0.001 +-4.633722883576699 6.973119229096812 0.001 +-0.01626546628552299 0.9471370772183473 0.001 +-0.09161157539000953 -0.014259563931883 0.001 +-2.299512436379557 4.055672447944207 0.001 +0.04953041355743976 0.7603757702434546 0.001 +-0.1087845654262021 1.093950128092878 0.001 +0.0160227852639278 0.4913955794018333 0.001 +0.4150426567936172 0.9622194087587478 0.001 +0.9586043803033286 0.3733241761650661 0.001 +0.5534446051462543 0.496613845449684 0.001 +0.3681480599921154 1.03016083599637 0.001 +0.3547965869496776 0.3514581567064432 0.001 +0.3864019057961487 -0.09344451017802509 0.001 +0.3778371576349953 0.967973502697138 0.001 +0.6415846742986635 0.7597657772624347 0.001 +15.03880655348038 7.831897780688172 0.001 +15.95961013337935 5.583248877063276 0.001 +2.369223463238524 7.387309258741786 0.001 +0.9720724473099804 0.4645919462498566 0.001 +0.9932491603820108 0.435265037300134 0.001 +0.607346096582088 0.2486052053804146 0.001 +1.029498546580956 0.9911600609466712 0.001 +0.2390969154498761 0.9030903069941292 0.001 +0.8736853442024906 0.6561799736009832 0.001 +0.4870705076618468 0.8436546729270678 0.001 +0.6675996588587081 1.008020693969213 0.001 +0.5700904946371974 0.2186294871007692 0.001 +0.3646118668896535 0.06631471419009599 0.001 +0.6766819332456755 0.04171459148644965 0.001 +19.2315546974662 -0.06356987137064922 0.001 +0.8830540801188577 0.9059078871693366 0.001 +0.489575737600772 0.9581581825136017 0.001 +0.2695975020727587 1.000216205392812 0.001 +12.16654212053445 -2.770305489366014 0.001 +0.513199310949213 1.050123967762328 0.001 +0.7502023868828118 0.5983349868753685 0.001 +0.2363527924593528 0.5919456734672358 0.001 +0.5351519604784025 -0.01880994853728809 0.001 +3.261769647085167 2.255890926160858 0.001 +0.06933812681973486 0.6098510615483098 0.001 +0.5471188633242684 1.028021294657862 0.001 +0.7259287376859233 0.2114350515307378 0.001 +0.6694419261553111 0.9394683290447832 0.001 +0.4223978977599639 0.1083354616445375 0.001 +7.333409252332752 5.05701509925241 0.001 +0.7636893329263325 0.646702724264959 0.001 +13.28410013726076 -2.173535113784053 0.001 +0.6414862917239571 0.2174588840021381 0.001 +0.9483406403844767 0.3104379613332887 0.001 +-1.348193175094909 2.154588053698355 0.001 +0.4515490699168071 0.2908192079390985 0.001 +0.7964840705373717 -0.002498472759010899 0.001 +8.302055859220962 6.66675014973545 0.001 +0.8250422379683451 0.1902196274491707 0.001 +-1.260299920473052 7.440323073508177 0.001 +0.5737963500912273 0.5667595640239858 0.001 +0.3401820707327877 0.8075329984319168 0.001 +0.05794613492072338 1.040927764734643 0.001 +0.634837584184174 0.9293031101934857 0.001 +0.599666061253473 0.7351117750203929 0.001 +3.053776843555375 -9.046563392208288 0.001 +0.9411167092194961 0.2808335213948654 0.001 +0.9115050786608638 0.6375259940264842 0.001 +0.864436047670338 1.016083577471598 0.001 +0.2315974185874672 0.8698039104511878 0.001 +-3.30240812651829 -2.1033441214275 0.001 +0.3490982017246859 0.9892500181313335 0.001 +2.423832028458163 -7.064521225699282 0.001 +-8.988485881050149 -1.581950209438619 0.001 +-3.272978368741512 6.28678077762034 0.001 +0.5352020447688007 0.5471785842709004 0.001 +0.3887063038245128 -0.04836976856782686 0.001 +0.1866113183441247 0.6585018227554059 0.001 +1.021961555677822 0.9206217871460857 0.001 +0.1643296011425767 0.6442724546502127 0.001 +0.1993506904453368 0.5257108328532507 0.001 +0.2217312578072655 0.162975368964727 0.001 +0.1617534671883622 0.7668877463860132 0.001 +0.8350023961029497 0.7358851606393416 0.001 +0.1964147982833478 0.2536713973545371 0.001 +0.729506144888062 -1.976173711564313 0.001 +-0.07471460309715254 0.9085080524681128 0.001 +-0.0570462181836662 0.9277055478966282 0.001 +0.7457968754926597 0.7670684710385703 0.001 +0.2360906760403275 0.1142998126875192 0.001 +0.8023371145908472 0.5952346634738794 0.001 +0.2930094136673295 0.7618067444791164 0.001 +1.117013878823974 0.8534980543925014 0.001 +0.6161361147143893 1.004016881083343 0.001 +0.3899060536632996 0.9429671995384252 0.001 +6.13734075011322 -2.629742886488911 0.001 +7.518023929113437 -9.031787526900482 0.001 +-0.04782550741742842 -0.005832018523667906 0.001 +0.6326031774713905 0.18463357210516 0.001 +0.3194183939520328 0.6450300650932111 0.001 +0.6102375876471404 -0.05739445187002445 0.001 +0.5995668651871491 -0.03648449692427004 0.001 +-8.41405355725006 9.017160267772629 0.001 +1.03434116380567 -0.03940839843197508 0.001 +1.021652810861919 0.01408249840189749 0.001 +0.2721485568649853 0.9092795952601653 0.001 +0.9711231784161906 0.001795226972961966 0.001 +0.1001318815302789 -0.1077178822768657 0.001 +8.213598258384831 3.455070414433742 0.001 +-3.832300074538279 -0.552472264476604 0.001 +0.9263976801831622 1.045169365723258 0.001 +0.2444056234118595 0.6912500691228853 0.001 +-0.05583658999858375 0.9855086260561479 0.001 +0.7458203407006857 -0.04385061434678998 0.001 +4.798028034046517 2.20611099195912 0.001 +-5.660929586929052 -8.089850664262336 0.001 +0.1390136852031543 0.8828974157241355 0.001 +-0.03105219602398273 0.9218899165358261 0.001 +-0.09393929225121975 0.6648103958800556 0.001 +1.130479863555739 0.01917165832118633 0.001 +1.190460142208206 0.03369294709726837 0.001 +1.390901154283543 0.09226284429703376 0.001 +1.242838566404857 -0.09700462408479807 0.001 +0.2010768460225902 0.7407451821363442 0.001 +0.384376064009932 0.5565173961216308 0.001 +0.5502094876905864 -0.04683125834747928 0.001 +4.932975849561672 -2.908945648116909 0.001 +-8.028881924183967 -9.023756032537431 0.001 +0.8344103835930089 0.1686241182780772 0.001 +-0.02685142294020948 0.7602830239988622 0.001 +0.5997198430604266 0.6561040014470577 0.001 +0.6740717015260865 0.7539029187349664 0.001 +0.4519874903868165 0.1337337241818485 0.001 +0.3977092859391118 0.2592348163364798 0.001 +-4.805101336882088 -6.081829484641639 0.001 +0.5380368006267516 0.9419414741299852 0.001 +0.3484122884411834 0.2671857342110067 0.001 +0.3900934593107833 0.6729723138444885 0.001 +-2.002577884422664 1.41224968371516 0.001 +0.6299771532215271 0.2711215930509315 0.001 +2.123859288845654 -2.74464219779951 0.001 +0.02590090280319446 0.5577652207847559 0.001 +0.01409684259954008 0.07457388672997556 0.001 +0.7736041432531078 0.675394965596568 0.001 +0.4411278648225198 0.987226010290947 0.001 +0.1431603445585649 -0.04982839282545112 0.001 +-0.02872075860324821 0.3402600594642616 0.001 +0.674561385474486 1.43083052107119 0.001 +-0.05033376558460761 0.2345582697475677 0.001 +-0.09209713548975838 0.7672533162265961 0.001 +0.7027865520258836 0.949965491874104 0.001 +1.040995633392725 0.8435203022194139 0.001 +-4.077223686500978 1.735183794435941 0.001 +14.95185675096663 -3.992189984615187 0.001 +0.3084547799248155 0.3410861193151041 0.001 +0.9818814751732405 0.7604206907195367 0.001 +-0.02065742834464327 -5.969462818476583 0.001 +0.1412757572251244 0.4269665567033762 0.001 +0.9287777449251927 0.9224407610451471 0.001 +1.056537545776844 0.01389617656974547 0.001 +-7.009620156885881 2.039425842487121 0.001 +0.3637078309945752 0.8130209371318008 0.001 +0.9975111616704406 0.9331780502995096 0.001 +0.3811052781615174 0.3792764483672987 0.001 +0.3947396827856773 0.9812344092727803 0.001 +-1.61448491314832 -1.340556299293288 0.001 +-0.04878486790533172 -0.07035685772505235 0.001 +0.2498902985298936 0.01064556313393834 0.001 +-0.08931194033602376 0.5658748230384002 0.001 +-0.07689158208472671 0.5834262718220328 0.001 +-0.09030521492828306 0.6000377128840112 0.001 +-0.09787082144200644 0.6228202580427171 0.001 +-0.09209525155064442 0.9054851114004384 0.001 +-0.4952463643977179 -6.934032794168542 0.001 +0.8043338163913413 0.46235344710904 0.001 +-0.1793777829117212 0.6075497302568517 0.001 +0.509734252148763 0.8455688529378786 0.001 +0.5641841727053141 0.6088595899447001 0.001 +1.041300340222993 0.3531746138731287 0.001 +0.595181023005863 0.3413793026365183 0.001 +1.097674699531989 0.7671733854647368 0.001 +0.08173121205064293 0.4759588123928126 0.001 +0.4301679464542102 0.8741027045628782 0.001 +0.3688663698331227 0.6425719684085218 0.001 +0.2934734917189289 0.3539661150783464 0.001 +1.018294231958215 0.08481997717632465 0.001 +0.5653642902275786 0.3834722974289575 0.001 +0.6883015594740984 0.8822816366467052 0.001 +0.4966645227146316 0.7458263433654599 0.001 +19.06618436209985 2.099606447800743 0.001 +0.1464718251765037 0.1813731856636973 0.001 +0.5833532983257111 1.096390870906199 0.001 +-0.0752071898285591 0.6655835748880186 0.001 +0.2228616346276563 0.2955015395353733 0.001 +3.786231511922756 3.874907050784327 0.001 +18.11682020025515 5.558504942638788 0.001 +18.20293246363397 -5.452640747118894 0.001 +0.2854045435112634 0.6757075665563341 0.001 +0.5538490690365316 0.04000158426046296 0.001 +0.9364689904659613 0.7583898480179051 0.001 +0.3418270715167137 0.05154882255666506 0.001 +0.7540871074330504 0.2299897594503791 0.001 +0.6064212790153316 0.02409919639694342 0.001 +0.000851620294750103 0.8247032535347893 0.001 +0.930994525061503 0.9988534662697638 0.001 +-7.488446689343003 -2.339791547949029 0.001 +0.2059749257864064 0.2824101097910861 0.001 +0.3556399668102412 0.2428252206081701 0.001 +0.694956207844991 0.8106164922443424 0.001 +0.03145128270516977 0.5331749907657075 0.001 +1.512600884538076 -7.537957786183737 0.001 +0.2927529437801126 0.3167154864096302 0.001 +0.2694123187059059 1.075575535602955 0.001 +0.9572965197574758 0.7825858624360019 0.001 +1.042248020655622 0.2554465475326609 0.001 +3.698758961408318 -8.223993610136192 0.001 +-0.05301898849801359 0.6867409995218846 0.001 +0.4451387926806357 0.1571175839614598 0.001 +0.1150819271882726 0.676469882633422 0.001 +7.580398468877172 0.1522656024955986 0.001 +0.648904272763279 0.7923465360386011 0.001 +0.4180201971834094 0.7694876273315989 0.001 +0.03366463231684202 0.4628506715284514 0.001 +-4.006783785499273 -5.066952266975938 0.001 +1.058172769001607 1.019027668195748 0.001 +0.2284738637775327 -0.04456324600148904 0.001 +0.8257446435106723 0.8510124970185544 0.001 +0.5729151205334808 -0.01146217086128063 0.001 +-0.8915609323463637 -8.328853798840253 0.001 +0.1982700591327781 0.4503373792858603 0.001 +0.4020963558102231 0.8623326035469956 0.001 +0.4308078643155882 0.2298492247911783 0.001 +0.2528436233782738 0.8256282170652131 0.001 +0.4452429344906106 0.6905243598343819 0.001 +0.8592814250946303 0.9847488642563118 0.001 +-2.871424581728117 7.440637044242095 0.001 +-3.975292511635448 8.073261672702003 0.001 +1.079442995038509 0.3198260068872779 0.001 +0.2118025802361891 0.3124627381607333 0.001 +0.6952824824188941 1.109025500771364 0.001 +-3.784641750097876 -7.905865509510978 0.001 +0.3354996384950535 0.1818483250527611 0.001 +0.1628501370601191 0.3170269082047119 0.001 +-0.09988030398560481 0.5086745497730291 0.001 +-0.1346809444855921 0.559002978943522 0.001 +0.003861757859510459 0.5212738068404049 0.001 +1.057324364780489 0.787689525158106 0.001 +0.6015954029743251 0.5208232448561128 0.001 +0.4790280563099648 1.023701153454312 0.001 +0.8383976759981449 -0.07956467371713155 0.001 +1.023894869278342 0.666560555047475 0.001 +1.005722235998542 0.6530826328074817 0.001 +0.8276342028766861 -0.05436805904832519 0.001 +0.323534890360633 0.4914494418684803 0.001 +0.3510231370814055 0.4913858447675211 0.001 +0.5185230426309593 0.6300165010100612 0.001 +0.3972220437464574 0.7363580292501942 0.001 +0.3109543979024729 0.9348539335084822 0.001 +0.6032927764688077 0.3730210215155473 0.001 +0.8263190613061885 0.5531936911406565 0.001 +0.9819852222736335 0.7010204010618312 0.001 +1.079485192319875 -0.1053105058632268 0.001 +4.772488456747026 -1.618299614768513 0.001 +-0.0171771364913575 0.1417918930469864 0.001 +9.604981832032912 -5.845700524306658 0.001 +-0.01758161157016152 0.2341846901199362 0.001 +0.7687569635510519 0.4188720127267216 0.001 +0.9471516012369681 -6.331108797129163 0.001 +0.898233040309388 1.009345582651525 0.001 +0.374853283956531 0.9888348176367306 0.001 +1.004057417167153 0.5047150522267438 0.001 +0.7298846394498075 0.884245621564809 0.001 +0.2864828892946286 0.8496863904545828 0.001 +-4.678431568774211 -6.958302587601392 0.001 +0.3556671132465425 0.3890391531691598 0.001 +14.8089645446393 -2.566107217037557 0.001 +0.7682942853652041 0.9831777214098014 0.001 +-0.1042158914473803 4.846992763736628 0.001 +11.17645937518584 -6.611522110210093 0.001 +15.21015381280379 1.819046044740745 0.001 +0.2870139113184424 0.03740580016992156 0.001 +0.7462002666533103 0.6220336944057161 0.001 +0.788647847016841 0.1753815587141227 0.001 +0.7958235848826563 0.2008898753089499 0.001 +0.7517021711910225 1.027384965735066 0.001 +1.221064995189259 6.72641536845155 0.001 +-7.968517923891079 -1.201481567687528 0.001 +0.5193672437143881 0.03841349129149459 0.001 +17.30690160644514 2.687947232011577 0.001 +17.87838785383522 1.437237507275129 0.001 +1.097358698620561 0.8548272826896383 0.001 +0.6709188435714182 0.4890327933145134 0.001 +-0.08894145684274583 0.3867891897059609 0.001 +17.00454320194591 -1.739396385444246 0.001 +0.08836316858504259 -0.04820647350090235 0.001 +-9.039880124423583 -8.02395058241302 0.001 +0.0001782077190061799 -0.03093959126060519 0.001 +0.5867973065389565 0.7018002232416807 0.001 +-2.931334791395551 -9.079764450670551 0.001 +0.2897903680687997 0.2365252884402762 0.001 +0.1332018817138338 -0.1003607759620538 0.001 +0.8931400687058078 0.2228213725062848 0.001 +0.9844665048593948 0.8576732938327226 0.001 +0.8659281457848418 0.7804622700757962 0.001 +0.2052431296865505 0.796120083717741 0.001 +0.6767908238150401 0.8695826340037609 0.001 +0.324291251309834 0.5637672016846496 0.001 +0.1318654756705394 1.017589076941117 0.001 +12.05291744909356 -0.6832657874145954 0.001 +1.009874592288906 0.7425148085256692 0.001 +0.576394335050216 0.1164945777250802 0.001 +13.67232752527311 -3.231271962172212 0.001 +1.056203305561531 0.1543133982186871 0.001 +0.004825738148713968 0.274956172208184 0.001 +6.467468475963648 3.560716225629994 0.001 +0.749012466680406 0.4423246163577439 0.001 +7.275643176661924 1.750416787231487 0.001 +0.6413266863397393 0.8960033766174224 0.001 +0.2179992943824705 1.032480811199004 0.001 +0.1621515060774899 -0.07466633271166438 0.001 +-0.5082484088106305 6.691290420670461 0.001 +0.3927559631673987 0.8906465673508468 0.001 +-9.006927851367061 8.421203006854148 0.001 +0.7832200626918593 0.398910624820669 0.001 +0.588687993546015 0.5915766612451114 0.001 +0.4205643237007612 -0.1831084889352936 0.001 +0.5630601256157635 -0.09138317402740277 0.001 +0.5319265071089332 0.2122387196137785 0.001 +1.157153961226709 0.9907665738073098 0.001 +0.5873997455489288 0.4821636770213063 0.001 +0.5160852525089172 0.8086391943769684 0.001 +1.07118588261206 0.8953778419231995 0.001 +1.011751726700339 0.6879810878577951 0.001 +0.7521130265544124 0.7981591794628851 0.001 +0.2523737726073252 0.635868085506574 0.001 +-6.96825444270115 1.092008532067397 0.001 +6.945386668176819 6.285964406131661 0.001 +0.4257293461949246 1.092796461951394 0.001 +0.427382935171464 1.140998383617239 0.001 +6.249898505991201 4.686624128011568 0.001 +0.4358691910047883 0.9596594459202384 0.001 +0.5990718689007529 0.8545177381256657 0.001 +0.7812594979759401 0.06182158759943617 0.001 +9.84378794723793 -3.552225450832381 0.001 +0.4054811032647447 0.6096459616735804 0.001 +0.710662519821564 -0.06380816106619668 0.001 +0.5093113929192219 -0.04585758182940256 0.001 +0.989565859101541 1.246280544982071 0.001 +-0.09491541224593603 0.8687915622450846 0.001 +-0.08875969346968547 0.8485195539730634 0.001 +16.1402419546941 -9.288584858619963 0.001 +0.2291385621275288 0.4828422329720803 0.001 +1.076823760720131 1.032605261150643 0.001 +0.4876038616601587 0.1860235843622283 0.001 +0.9261433474406082 0.127307802641011 0.001 +0.5695667811958007 0.4643013592167393 0.001 +-0.01219446142629519 0.5980482962547772 0.001 +-0.02767095411273646 0.08706634324573327 0.001 +0.9498932271082673 0.07611340941409345 0.001 +0.7659100405749744 -0.0113783069457465 0.001 +0.9210144126008566 0.3451366832003814 0.001 +0.2006143185445169 0.6292211072811611 0.001 +0.08694664851628835 -0.07863548981084902 0.001 +1.053204562592152 0.6574721252790809 0.001 +9.31831670301899 -9.269052655348702 0.001 +15.90279427710466 0.7586495508611347 0.001 +0.9477206242167177 0.01980905980067011 0.001 +0.4547827355278532 0.92013397999533 0.001 +-3.255942061807984 -3.32457838864043 0.001 +0.114238703502404 0.7323956539010845 0.001 +0.03997429576125974 -0.07396648993772546 0.001 +0.4070392488694037 0.8276003548235789 0.001 +0.6213798510170114 0.8217109118547297 0.001 +0.3495533884790644 0.4176113338239004 0.001 +3.051252278565011 -5.520190517532042 0.001 +-5.356734441950567 -0.9311654317874548 0.001 +0.4675126675574044 0.8857245859056547 0.001 +0.8445423716132641 0.871095490620487 0.001 +-0.02778963405968743 0.538197635662651 0.001 +1.029416107654905 1.100622579215222 0.001 +0.5412169452721198 0.9918378631825526 0.001 +0.04965349345715022 0.9541213915169801 0.001 +0.9441829235739082 0.4485340742716601 0.001 +0.05520359758169168 0.3782980288980887 0.001 +0.5369293363610088 0.02133843740413649 0.001 +16.07750058860253 9.31513392241305 0.001 +0.3393161182660765 0.9403527905498053 0.001 +0.8666720599155154 0.670231829948056 0.001 +19.17897783128079 8.435095925908344 0.001 +19.18137035374323 -8.386653847683558 0.001 +12.01975357535241 -4.706035217261407 0.001 +0.8514449748585438 9.118926752158096 0.001 +0.03954648552778803 0.6732699315143856 0.001 +10.9328256394876 4.238432086113592 0.001 +0.5190536321322052 0.1429323920882088 0.001 +-0.07253550226189036 0.8730984000148392 0.001 +0.4023048018435426 0.6919949982069187 0.001 +-8.166539981797001 4.293014019673764 0.001 +1.096661008344345 1.024419061599746 0.001 +1.042891517384006 1.073026800023396 0.001 +0.335226644443249 0.9735503187409542 0.001 +0.4934447442692967 0.6976262367439972 0.001 +1.044856640585846 0.5375452418073456 0.001 +5.604815569576124 -5.855126125933277 0.001 +0.8640233950012912 0.3669489532184669 0.001 +0.6999224643336061 0.2087302692326533 0.001 +0.1731804173164066 0.014632961388476 0.001 +0.705553987519929 0.3445759509208514 0.001 +0.6702294046893476 0.209180511580767 0.001 +0.880360676843235 0.3612270510409555 0.001 +0.3608530639742097 0.8474869653933805 0.001 +1.552473542084919 -1.628890032457932 0.001 +0.1836186808516378 -0.05279748781483065 0.001 +1.129428542119484 0.3693297578628611 0.001 +0.6439991248461558 0.4405023088828989 0.001 +15.64967961020031 -2.549638902370547 0.001 +0.6828001602309529 0.7857335705564458 0.001 +0.4865341140430269 0.8165291702509534 0.001 +0.7843958643833139 0.2201397338343797 0.001 +0.4387778384246254 0.5091809544140051 0.001 +0.5718348483603782 0.8580274748411099 0.001 +0.01970894380242838 0.6834057654458165 0.001 +0.5662073405272406 0.8812045210630751 0.001 +0.7750840636318967 0.9038768283716274 0.001 +4.896060216550261 0.245543614980983 0.001 +0.544763648572824 -0.0928566236927417 0.001 +0.5397519848959985 -0.1039590773007516 0.001 +0.5376966483042533 -0.1496739319063598 0.001 +0.4793010553683376 -0.1506943035667565 0.001 +-9.24160406901499 -0.5870084649164546 0.001 +0.1376272360161714 0.4907240526629385 0.001 +0.6022733909848713 -0.07003502420108151 0.001 +0.5875742560437178 -0.06864293430950891 0.001 +10.44640473159706 -1.269282328629923 0.001 +-2.147113051340399 -1.980371898523448 0.001 +0.2690155512294237 0.3513871746661379 0.001 +0.7309018634007877 1.055787947266241 0.001 +0.5625978454884739 0.8214835782851484 0.001 +-0.07539870842076266 0.6219290716010283 0.001 +0.372575111729816 0.608151317801704 0.001 +0.07407470084929882 0.8492113360981957 0.001 +0.9300448741569731 0.6633115745001796 0.001 +-0.9149569425906172 0.8706173189514529 0.001 +-1.780562584543458 0.5578554080394649 0.001 +-0.1031624792778016 0.9203782358790504 0.001 +-0.05489563287886348 0.8534331015100269 0.001 +0.4920742705741813 0.2210648263897186 0.001 +0.2716097295006187 0.2292170705281886 0.001 +6.558275806235622 -0.9720643162051663 0.001 +7.543296126187593 -3.844355008049735 0.001 +0.09232929540975449 0.6578016333194432 0.001 +0.3458346820512121 1.068550798570311 0.001 +0.8087060235212157 -0.09627059746331673 0.001 +0.03474851741292669 0.1008301781214338 0.001 +0.6033034295953152 0.9871247561965991 0.001 +-6.134598431923787 0.1264031773784663 0.001 +0.8416380184863574 0.1529447016614283 0.001 +-0.0350041033964789 0.9643459389582985 0.001 +5.613756737624264 9.234301089333862 0.001 +-0.06782085998482482 0.5571773339865645 0.001 +0.1035183296502183 0.7915329935416135 0.001 +0.0108752298254922 0.1431464670316605 0.001 +0.5716416857221387 0.6705821387981652 0.001 +0.564230370563962 0.6456120665461385 0.001 +0.3745776101055893 0.7116888797349445 0.001 +0.7686006194483097 1.043217358995022 0.001 +-0.01413548459106631 0.6978685042373076 0.001 +0.9584344490039884 0.4885549748770223 0.001 +4.308695115458109 -0.8934571381647711 0.001 +0.3706421136947555 0.1014544857621554 0.001 +-1.861071188735614 -6.583548062975553 0.001 +0.326913196439841 -0.05070695329446635 0.001 +0.8185779224618142 0.5206955838894358 0.001 +0.6646595788709972 1.041743120027519 0.001 +0.9854740527180659 0.7327650047538656 0.001 +0.4219567652563221 0.2575150059092022 0.001 +0.591630751509828 0.2223816479924787 0.001 +1.068720078718058 -0.06809794568879637 0.001 +0.4630344785754185 0.1493056308215013 0.001 +0.5133560676944665 0.4592890678942567 0.001 +-7.0944339598977 4.93622370269353 0.001 +0.06633475161791637 -0.0378411194291493 0.001 +0.4701748508687043 0.5063916225629144 0.001 +0.05308862937197689 0.1507933590643531 0.001 +0.07217384493598926 0.5410388813932396 0.001 +0.8632301800775743 0.483225076876485 0.001 +0.16601133039951 -0.0260340219976684 0.001 +0.1833948956530741 0.7220860520750404 0.001 +0.3793528015380992 1.013172042527815 0.001 +1.218900078473384 -4.218007857602957 0.001 +1.091918008315763 0.04542553397008554 0.001 +0.3876814706498106 0.7770591239493805 0.001 +0.5384918776035701 0.2795690479647188 0.001 +0.228461275824213 0.3284283634201002 0.001 +0.6112012031225049 1.018419503530684 0.001 +0.3305844562885591 0.6882766865550968 0.001 +0.1044298693773777 0.3891594892550946 0.001 +0.7937406951924105 0.3551669986472444 0.001 +0.6421123238305465 -0.08526915846614969 0.001 +0.7319063409212762 0.5285247999061669 0.001 +0.8673877323288927 1.043599259687903 0.001 +-9.196828605350706 -3.301384045054147 0.001 +5.583286233588859 8.132471543910805 0.001 +0.06807556773851234 0.2280801100239216 0.001 +-1.30868236813467 -0.2513858548112706 0.001 +14.58477324813968 -3.496473777354255 0.001 +0.1600833356007459 0.04098029924967549 0.001 +0.6526270305659914 -0.07113335633736173 0.001 +-7.549755536876352 -6.288554751820412 0.001 +0.01033947757767466 -0.09439887653709933 0.001 +8.773722911413017 9.26269087037813 0.001 +0.9786556505342113 0.806092979728365 0.001 +0.290227828523402 0.100162265157785 0.001 +19.40009437244521 -0.7632613736996375 0.001 +0.4681894188826877 0.2107628197445974 0.001 +0.2298698522716391 0.5704012770088063 0.001 +0.4041725711484007 0.4664098107001697 0.001 +0.2620233535329712 1.028804954970954 0.001 +-0.07717696875607802 -0.1051125224238978 0.001 +0.1792278125044822 0.5619382969071939 0.001 +0.6353386606066176 0.1293262969112513 0.001 +14.34816966033572 -5.368641609573531 0.001 +0.2427107075965296 -0.0170986232998251 0.001 +1.0416427565807 0.7334208373655253 0.001 +0.8316973523487755 1.017021737873027 0.001 +0.1544925205906184 0.4695840537792904 0.001 +0.1098038778626482 0.01391983930047576 0.001 +0.02031268945044444 0.7696802229891397 0.001 +0.5371970303124176 1.016858543928475 0.001 +0.9794025731037338 0.3476141402728243 0.001 +0.02144471398507077 0.2410417737536795 0.001 +0.003433265802442818 0.5931083264251769 0.001 +-0.03038914755032016 0.3085299621848163 0.001 +0.7446649306127124 0.8598709399387329 0.001 +0.8539137357014869 1.055244399760387 0.001 +0.8905636996704981 0.8012536813453325 0.001 +1.75618136766811 2.274633626060107 0.001 +0.5818985327294143 0.2650204081253416 0.001 +5.462440840971893 4.083959135789006 0.001 +14.4353117975146 9.190464844208504 0.001 +-1.626533794430057 9.202604612403608 0.001 +-0.1048618810977648 0.808031130055064 0.001 +0.2935567156011654 0.4656719331138763 0.001 +0.4224932800702474 0.6711203396684398 0.001 +1.202471907535681 4.12099957902988 0.001 +0.8577004877775294 0.9139334653068288 0.001 +3.495716798300894 -2.828691628203357 0.001 +-0.1131472998771782 0.9503766594758615 0.001 +0.2932604927844182 0.4956401524013374 0.001 +0.9347192678887351 -0.02698572928244393 0.001 +0.4433464113900112 0.9344392938046788 0.001 +2.395358372588628 -0.7408322909397657 0.001 +0.02502720401911674 1.09311583591084 0.001 +0.921825636005543 0.3753226113896986 0.001 +0.8991252913480671 0.7054628799146986 0.001 +14.53362584591297 5.345952658426843 0.001 +0.001134272048471755 0.3339836707550674 0.001 +7.259979892813922 -6.676312923414963 0.001 +0.6687163108422467 -0.07265484119130181 0.001 +0.4802287301478788 0.9906163887994082 0.001 +0.09177299959379245 0.1108211866434551 0.001 +-0.167744427329139 0.9386873195678884 0.001 +3.35626571852775 -7.44946443067122 0.001 +0.6905483300801292 0.9752198412703998 0.001 +0.6431108372738661 0.492343907900206 0.001 +0.4369935500353715 0.2047752987134729 0.001 +0.7108357882097707 0.4046083024632793 0.001 +1.086402125061597 0.8006153651200877 0.001 +10.73531643815901 7.580895753148545 0.001 +-0.05090101936713343 0.1095458239915713 0.001 +1.10510269291171 0.3382619026835906 0.001 +0.8832556993874583 0.5001870587815461 0.001 +-6.14126136123951 4.081140175921711 0.001 +14.48636102314864 -9.05855902802152 0.001 +0.4566313610455313 0.647894918000839 0.001 +0.7114064996517724 0.1342589001799741 0.001 +1.103652338749768 0.2591307441414509 0.001 +0.06369726397560692 -0.0634706396793665 0.001 +5.772311737062023 -0.7384933274306886 0.001 +0.9834971551690971 0.8903615352899139 0.001 +0.2564304228449178 0.5078521109387485 0.001 +0.2600077988470996 0.4850119876324748 0.001 +1.050499637168605 -0.054189892883446 0.001 +0.5835410715383201 0.6325170009364387 0.001 +0.001783082882889187 0.9849191014651748 0.001 +0.2577911872384874 0.4023982503358973 0.001 +0.2280223803373545 0.3624552519783991 0.001 +0.9091920370054715 0.1092255705461514 0.001 +0.6619949068514975 0.3214865685318121 0.001 +0.8231813180133467 0.8134477890576437 0.001 +0.6136893038623671 0.4279673730415542 0.001 +0.2510318096989027 1.1019501969846 0.001 +0.4363440287028461 0.5772359096936153 0.001 +0.5957518237411966 0.09459706035225408 0.001 +-6.565207557130075 3.094900688853008 0.001 +0.08990207056736516 0.9261896974752516 0.001 +0.6980009427518309 0.6594467082096954 0.001 +-0.03240636994564889 0.8966583893989737 0.001 +0.8386604401644346 0.4713298602232137 0.001 +0.0298634370566577 0.5890981386741556 0.001 +0.4321217013223136 0.4055132940554752 0.001 +0.3936892638891403 0.3974832158254067 0.001 +-0.006396553121712865 0.6469226124219976 0.001 +0.1120468220023299 0.84231461434849 0.001 +0.4684459118529874 0.08975475796887483 0.001 +0.4675179935316762 0.1208638421869524 0.001 +0.8507521113638836 -0.03192776415818097 0.001 +1.007702053532325 0.3526164167214915 0.001 +0.6347512953496107 0.401544059670814 0.001 +0.5383403559105361 0.3026246091101211 0.001 +10.57700583595184 3.489124472868084 0.001 +0.08096338997421909 1.09353486171181 0.001 +-0.09905003375962354 0.2116819604274527 0.001 +0.4454214968294839 0.2625333689386808 0.001 +0.7941029633699798 0.4401377669940423 0.001 +-0.006678586577442067 -0.01518390468295184 0.001 +0.1442536222464184 0.2980146846781553 0.001 +0.7417490387196 0.3384218953671949 0.001 +0.7102407308656998 0.9215507945531702 0.001 +15.81238223343394 -6.702456485643512 0.001 +1.103241892287284 0.8836845012609971 0.001 +0.5017876803403221 0.08999238782222879 0.001 +-0.04408597676723033 0.1495064952045013 0.001 +0.6525192165025147 -0.0006874328418949904 0.001 +0.7059664676764333 0.7464823247906336 0.001 +0.2881635212052857 1.097296027935671 0.001 +0.01846258135180009 -0.01723943470060402 0.001 +-5.388129621590625 5.902075045510418 0.001 +0.02095608013872518 1.062279204309393 0.001 +2.766363833682563 0.8328015345535302 0.001 +-5.506153158083522 3.218898314261664 0.001 +0.8425423121796057 0.5585835354518839 0.001 +15.64728877269609 6.513776804572331 0.001 +0.03689496103181349 0.5473350342733775 0.001 +-6.062497236072337 -4.256226549239607 0.001 +-0.09596903766846641 0.8899262736255511 0.001 +0.4278315177919144 0.1373664194115097 0.001 +0.2927674275910861 0.9549365510653981 0.001 +0.4552888518676247 0.6214806162828818 0.001 +0.03439754860370845 -0.03643604842474971 0.001 +9.958919969002357 -9.49022087454178 0.001 +1.048902116470286 0.326715808367822 0.001 +-9.175013630857775 0.05671605461087931 0.001 +-3.122179339991003 9.136773586607982 0.001 +0.04526325127978215 0.1944317396523422 0.001 +0.6839707724410702 0.5713108037043885 0.001 +0.2007242965951276 0.3271964713249306 0.001 +0.6976143975682945 0.112017775895614 0.001 +0.6144515128441368 0.5016407821571744 0.001 +0.2908353776077647 0.3855458059200272 0.001 +0.2734288257692464 0.8055401878675247 0.001 +0.09426883453344592 0.2021797690845128 0.001 +-8.203975360737884 7.622265478278671 0.001 +8.777762051279668 8.461656925219593 0.001 +0.04150943499234853 0.6464045500094229 0.001 +-7.293044723212749 -4.337020458482763 0.001 +9.126398348878666 -8.125948125428682 0.001 +0.9166122283691358 0.733099668690001 0.001 +18.90013959419867 -2.445260959181074 0.001 +0.9752361218199906 0.6537846507254284 0.001 +0.2515275885642637 0.2917876659266809 0.001 +0.4386258588977298 0.1209083339982552 0.001 +-0.04354113822940969 -9.278495795940596 0.001 +0.05039048216118368 0.6933604472438416 0.001 +0.2697921111076939 -0.07813618494972299 0.001 +0.2695418235522796 -0.1044015366787261 0.001 +0.247302821344959 -0.1261647658469016 0.001 +0.2951788599064696 -0.1144985091333556 0.001 +-0.0256520689197784 0.4370192706377137 0.001 +0.6046810416342192 -0.01109711746212147 0.001 +-0.10483765320993 0.2944105084556761 0.001 +-0.09904484645499026 0.3177117722498118 0.001 +-0.1089682003533508 0.3284424047463818 0.001 +0.2980346796940326 0.5437265881273164 0.001 +0.3538044655005887 -0.1081901078676993 0.001 +-0.03567925805846997 0.8012504009817417 0.001 +-0.0442066146147655 0.8255715234273761 0.001 +0.003960350879463675 0.4441514984770295 0.001 +0.6261477504746422 0.6006282215293466 0.001 +1.068228241050651 0.131075345992938 0.001 +0.8326074979253126 0.986098458815913 0.001 +0.6725588743608512 0.07863651739276255 0.001 +0.1962742735022617 0.01842864077218737 0.001 +0.4090078682088834 0.5808113446871074 0.001 +9.816780441498841 8.264054922413598 0.001 +8.398378872577203 -3.637867995935083 0.001 +5.65310359983955 -1.485843879706497 0.001 +0.6087797863682904 -0.08359326299835573 0.001 +-0.03594514532355966 0.1750919415692389 0.001 +0.5632208182790743 0.3509072670083918 0.001 +0.3739155976399762 -0.1118534666087589 0.001 +-0.01123164336835232 0.1641253570375305 0.001 +16.16746434792528 7.482976771776231 0.001 +0.7533449939354185 0.9959394248669444 0.001 +-0.05400672223942483 0.9694130085066848 0.001 +0.5280126258338179 0.5612367009321763 0.001 +0.5047883304057083 0.9940792840028464 0.001 +0.8883613750263545 0.6574476935827982 0.001 +0.3448210158026064 -0.07366246747833859 0.001 +0.50027890460449 0.8036712206779484 0.001 +0.5812945732858535 0.4485440292343202 0.001 +0.2017288323582006 0.4772919065723223 0.001 +0.8857104058228521 1.061963882607688 0.001 +0.7396171402077144 -0.02024602034065589 0.001 +0.2379303600641832 1.007836361280384 0.001 +0.06194326020621643 1.010845386835153 0.001 +0.07648928392387348 0.4553117747674356 0.001 +-0.03951995501726305 1.067182917048727 0.001 +0.8160941392529246 0.3687441323675544 0.001 +0.3268035511052961 0.3323723403112119 0.001 +0.314671633223387 0.6296109717333199 0.001 +-8.083493965766062 -3.928260442920831 0.001 +-0.02840157670708104 0.03733466132705887 0.001 +-0.0164776079664663 0.008471580461626303 0.001 +0.2961274773387005 0.8059956190462275 0.001 +0.9557215198124032 0.8303487692785689 0.001 +0.6486252317956794 0.8250558576398134 0.001 +-0.07063261577459053 0.1901285459642657 0.001 +0.611759942309111 0.4627203504985387 0.001 +0.1265437077312765 0.5698511848512714 0.001 +0.5031613986883793 -0.008786917456815377 0.001 +-6.559759028223468 7.449253676259016 0.001 +0.0760463110088293 0.7766025979528253 0.001 +0.5927678158897266 1.064953653119419 0.001 +1.561852976818329 -3.270273861619489 0.001 +-0.004528439266395805 0.2515508954118513 0.001 +0.5911383964777163 0.8233723227422104 0.001 +0.1774256187041241 0.5188692266183769 0.001 +0.8874466748330345 0.4043718719812988 0.001 +0.9011723452657456 0.9636475727882443 0.001 +0.31506024467295 1.083022663896226 0.001 +19.16608870988672 3.825193194226088 0.001 +1.111619066846387 0.03525139862145586 0.001 +16.9631695724183 -0.9547505452992912 0.001 +0.2192876701020317 0.3868527820645089 0.001 +0.04262362747399559 0.8226744671552548 0.001 +0.350606780867312 1.018439409957086 0.001 +-0.07970125426619522 0.7240837309426754 0.001 +-0.07065278373021859 0.7493840252359409 0.001 +0.6975069526885069 -0.01316908744437163 0.001 +-0.0943789035914496 0.4856753818578069 0.001 +16.41416943820321 -0.9221588436680762 0.001 +0.6371243883041218 1.093039817001565 0.001 +0.4505161883361419 0.4498900892836844 0.001 +-0.0488681572371432 0.2102231941191471 0.001 +0.7351853914957316 0.4165076263718676 0.001 +0.3573740599856611 0.1220594377350371 0.001 +0.5261165432578119 0.8312346128706505 0.001 +0.4899088462460988 0.2477010012008902 0.001 +-0.007791277348802175 0.3102739956227186 0.001 +0.4314379840920679 0.9205706599083893 0.001 +0.93380317155279 0.8570559295004252 0.001 +0.5553787137841579 0.7158218892278405 0.001 +19.42117212200689 9.086696892514162 0.001 +19.43060340570777 -9.089563327819375 0.001 +1.052610901895332 0.8107475654135394 0.001 +1.042625019538626 0.8006617254613756 0.001 +0.2289467118638427 0.4517074350927829 0.001 +0.7786339775145504 0.7159321506076284 0.001 +10.0999212437932 -8.134371895299374 0.001 +0.9024914956427226 0.8421455622229828 0.001 +1.007274406787108 -0.07271027009202916 0.001 +12.81715649426559 -5.71345048295814 0.001 +0.4025818030636187 0.0624916653596068 0.001 +0.4675013359012093 0.05757138466289902 0.001 +0.4926226382136655 -0.02919103688786425 0.001 +0.4859626144985825 -0.09347286087083552 0.001 +1.005898742101872 1.045432379589489 0.001 +0.05524489609264628 0.0798328722865328 0.001 +0.5187508494648159 0.2804955975125116 0.001 +12.04014855379172 2.915272710432183 0.001 +0.6453017859283303 0.5454635697848715 0.001 +1.09893776372861 0.5129084215652541 0.001 +13.99664484082971 -7.994338464922977 0.001 +0.9255617481718558 0.6867175861714228 0.001 +0.6451116406749795 0.3858945779998249 0.001 +2.62931055464253 4.303127737381381 0.001 +1.120879660405573 0.4452995147011318 0.001 +12.98944917119186 2.382654768795303 0.001 +0.893893869408565 0.8680278554611754 0.001 +-0.03286683713476306 0.2478634586278891 0.001 +0.2743632531313548 0.5229195473284809 0.001 +15.80815033838983 3.626581000676809 0.001 +0.2509949207297853 -0.06064826675026212 0.001 +0.1288714565549208 0.7980576134106876 0.001 +0.004407465171097659 0.9606763427508795 0.001 +18.21890619299941 4.030916674437076 0.001 +0.01490266573446954 0.20210224504629 0.001 +0.1194391417827671 -0.02385148200791558 0.001 +0.813831887419188 0.6812815390631785 0.001 +0.3123741100353044 0.5020705990222321 0.001 +0.824739242249141 1.083025933009222 0.001 +0.4906313942629233 0.004781508443222202 0.001 +1.013929749596318 0.8218449069503584 0.001 +0.6299524576189732 0.460274449907901 0.001 +0.8567998320236004 0.321737585551189 0.001 +-0.0354713438444502 0.6697919299533682 0.001 +0.3904725561574067 0.1142492426117132 0.001 +3.802777605506023 9.058903972916616 0.001 +0.4566791060818727 0.03073399796145911 0.001 +0.5391829130442568 0.6849217987688198 0.001 +0.756726634165951 0.03983450526613452 0.001 +1.77267885938707 -0.9720526831416421 0.001 +0.1419465713478723 -0.0304551139064292 0.001 +0.6182770103205187 0.6406304144744851 0.001 +0.6352592006597551 0.6268382265397452 0.001 +1.027927180105113 1.044660045913207 0.001 +0.9566769082279669 0.8709860690760505 0.001 +0.3329597411810071 1.11967248464186 0.001 +0.2688044221412304 0.3051354902652072 0.001 +0.7323961753522468 0.02735127479648403 0.001 +0.4052527065149342 -0.009971985627693835 0.001 +0.912252701541878 0.7797860003609061 0.001 +0.2501905438365081 1.055080568895854 0.001 +0.3499969062030049 0.5764777835261656 0.001 +1.033357735361897 0.3780243936178208 0.001 +0.2746773891410613 0.0490073770623943 0.001 +13.83865241017728 8.230178182718149 0.001 +0.9984181278533912 0.9772980440266832 0.001 +1.073917701307576 0.6443198692853612 0.001 +0.2570327350623259 1.012873453135497 0.001 +0.4213481806068977 0.1931549423150881 0.001 +0.5360288392191099 0.8653271559616373 0.001 +-0.07282826581528498 0.8143274896368725 0.001 +1.072089243230244 0.5568938655838137 0.001 +0.460380312782061 -0.1168263102697475 0.001 +0.8164372550880583 0.6189251390453089 0.001 +1.000761471244434 0.8255134609922363 0.001 +0.8035217122935596 0.7714919604632541 0.001 +0.05304892049333987 0.4040907684487054 0.001 +0.8373271565136596 0.7704827861627918 0.001 +18.42754018515865 3.122450389211549 0.001 +0.08573494688490273 0.5913915403572987 0.001 +0.5988301561414673 0.1556936373729346 0.001 +0.6035544268868036 0.06172884004101189 0.001 +6.036246696238408 4.134188341784547 0.001 +0.4326878807335857 0.007459597343122893 0.001 +0.1545615598130203 0.3421886115859357 0.001 +1.085713067602374 0.9634008280061255 0.001 +0.9096930054610421 0.9886398495797768 0.001 +0.7293955182017827 0.9869349515895951 0.001 +0.9795580408085621 0.9073802500092254 0.001 +0.1284795385896336 0.8233314880900648 0.001 +0.844303595404603 0.9628988296257224 0.001 +-0.05133510330969268 1.035467810763981 0.001 +0.5891202328729537 1.041372106407507 0.001 +0.9967380692568618 -0.04418708710076308 0.001 +0.01030740189134293 0.8543126983195322 0.001 +0.02166010612006079 0.8087317361034343 0.001 +0.6293013638702272 0.4337811979996667 0.001 +0.2192976498024258 1.094981720534212 0.001 +-0.006789052732041972 1.024659021459799 0.001 +9.052913829501861 4.242708496489239 0.001 +0.7218230952904486 -0.03576793277278235 0.001 +0.1840007315071019 -0.03716585486059888 0.001 +0.6633634910427539 0.5834995274305691 0.001 +-0.04411582117168213 0.1950255435599282 0.001 +0.7534728784812624 0.8291325001399836 0.001 +0.9613319018581765 0.715394093678862 0.001 +1.104239219372022 1.096710257904162 0.001 +12.36569955469531 4.593003916853243 0.001 +0.9727833125953081 0.4806442590760974 0.001 +-0.00380381271601719 1.063582388772831 0.001 +-0.0009752720678936971 0.2934086340874666 0.001 +0.9067132365837818 0.4666073572787422 0.001 +0.8095980054841615 0.1558626656334011 0.001 +0.4479870090650451 0.8677076543710962 0.001 +0.03118205268968761 1.075595625922502 0.001 +0.2520859252482444 0.5683380171409952 0.001 +1.009267002240033 0.8444804907346785 0.001 +0.7781901617837274 0.3737486798979384 0.001 +0.7667243114897265 0.0871843505760462 0.001 +0.226392484660178 -0.104661784175721 0.001 +18.33354268803418 0.4268053783655325 0.001 +-0.09095652198521496 1.051883877581653 0.001 +0.4676783378214978 0.8660715317201947 0.001 +0.8219857125904857 0.2484155499658658 0.001 +0.807232181677449 0.742938743650895 0.001 +-0.1182843591889337 0.4496044535163482 0.001 +0.6682225130454201 0.6434316465218378 0.001 +-0.654776661103921 7.345002338479638 0.001 +-9.434002850856153 3.045308670066341 0.001 +-2.314492112652577 -4.905808070016811 0.001 +2.491205434166989 -4.728339217359546 0.001 +3.897373660784888 2.075693194530234 0.001 +0.3287678765885685 0.4136235620044806 0.001 +1.000153160632483 0.3248868652032977 0.001 +9.558172852950706 9.256159700946272 0.001 +-9.258157610440573 9.259039188160301 0.001 +-2.685163269960619 5.163683091237494 0.001 +0.01476261330027425 0.9925321615560255 0.001 +-0.3891015894476906 -3.495348170853045 0.001 +0.3763406209577965 0.3114737143874716 0.001 +0.9908855195441209 1.098425829313474 0.001 +0.4336165603483545 0.5522395680421798 0.001 +0.1150151878096641 0.8650892023833266 0.001 +0.9724954618799556 0.9545627157646267 0.001 +0.1335611458544947 -0.01309377737686458 0.001 +0.7532356937675814 1.090787196568914 0.001 +0.7026809704208775 0.4919322052526455 0.001 +0.708904083299104 0.1585720781137499 0.001 +0.4516351907858436 -0.02420161381960647 0.001 +3.184228865275823 2.84566154343993 0.001 +6.398251593154233 -8.001928467974672 0.001 +0.9564095902012193 0.1578574310802009 0.001 +0.6171621767063811 0.7936324852230792 0.001 +1.285318477449683 0.946269392203163 0.001 +0.6386724083186208 1.233141173698402 0.001 +-0.3390063620276783 5.78432624470176 0.001 +0.3559665266030929 0.6934630713734035 0.001 +15.46951179925328 -3.740481973550131 0.001 +-0.05814274474653034 0.8927214447125055 0.001 +0.3681431913505561 0.6761227752694434 0.001 +-0.02442435297965723 0.2767028593187282 0.001 +-5.32200932568231 -1.920782775354262 0.001 +0.2253187182061292 -0.07190436804711391 0.001 +0.5091275450429482 1.019006042512907 0.001 +0.408582808456372 0.4223763666144168 0.001 +0.06046787080812914 0.585167930846716 0.001 +0.3094287065515564 0.7826250676728252 0.001 +0.3417299652233796 0.2108247294530371 0.001 +0.1816676323476148 0.8655882899782024 0.001 +1.046274142826415 0.3980585080552848 0.001 +1.020255813512517 0.6334335485050621 0.001 +0.8466334828735843 0.7130491616477294 0.001 +4.877853910577635 -5.165999905365104 0.001 +0.3901031504495231 0.5282790204834789 0.001 +0.5900044430512806 0.9372515367934012 0.001 +0.8670652363509264 0.5617187915240757 0.001 +-2.135991860049681 6.699157718788075 0.001 +0.8639735630665503 0.6378883371250426 0.001 +-1.475180433992987 4.404430548500377 0.001 +0.1703843207308177 0.44270213371374 0.001 +-0.4540764375587499 -4.972410729618869 0.001 +0.591591009922499 0.7556844464706578 0.001 +1.114470748530845 -0.008996205077734994 0.001 +0.3779328882652872 0.3518816270220597 0.001 +0.7492537227052627 0.937332890051022 0.001 +0.1188356123679641 -0.0664341870804793 0.001 +0.3750787068723074 -0.07171317833792591 0.001 +1.0440078511077 0.08451917344457263 0.001 +0.05196552039656915 0.4427757254413033 0.001 +-1.77563734875267 -4.123765343083278 0.001 +7.956033657350556 0.1944725519182986 0.001 +0.1661094216960859 0.2061540159202146 0.001 +-0.01689967055313783 -0.3745548623787127 0.001 +-1.757965118639924 3.040757335044328 0.001 +0.4450119722372696 0.4748139950885583 0.001 +0.8728786004692483 0.443891077065808 0.001 +0.5194787414335124 0.3651899585972604 0.001 +-8.436952609458936 -2.726253388825421 0.001 +2.558400887662611 3.32876381719307 0.001 +0.9534969529709691 0.6412588716420392 0.001 +9.930472216296558 4.456786130130669 0.001 +0.9101645679088276 0.8172243327122222 0.001 +0.3843602583308797 -0.02209764836160789 0.001 +0.8002235844019456 0.4131772647408432 0.001 +-0.02164380556439795 1.046866549158034 0.001 +0.3465182484728069 0.1946248396971732 0.001 +0.5963467977168135 0.2906765837991147 0.001 +0.9138341400723905 0.4392099771884809 0.001 +0.7341338019043637 0.11206716321576 0.001 +0.9758324951784483 0.7156950303875942 0.001 +0.7140487426004879 8.371211076690832 0.001 +8.409704656516624 -4.570961941608299 0.001 +-0.07379648723736276 0.643621918633183 0.001 +1.051788253992463 -0.02314482268974721 0.001 +-5.638850830934981 9.312161058824852 0.001 +-4.265926619520437 -3.242694544721529 0.001 +0.8029816237904494 0.6595304397877209 0.001 +0.1256521916580455 0.2580180642044703 0.001 +0.7976323632063856 1.069828400626325 0.001 +0.4270174443171613 0.4835737879131496 0.001 +0.8470836262777051 0.2010428082921774 0.001 +0.5324187755766224 0.4310556992576573 0.001 +-5.716959814817447 -9.134015442749302 0.001 +0.4947409323534525 0.6108268726164396 0.001 +0.6026891015469427 0.9612150112731608 0.001 +0.2500397266991482 0.7819850836201699 0.001 +0.1246432235748472 0.3014213791500217 0.001 +-0.06897577770442025 1.095887602740569 0.001 +0.9375296532990981 0.2489313738761192 0.001 +0.1999282405013848 0.352023615243354 0.001 +-3.217726894734954 -4.380313863891306 0.001 +0.8844461802907649 0.4341294588031855 0.001 +-0.02117228608701804 0.8358098598252287 0.001 +0.2331183453850262 0.8094226577098927 0.001 +0.3707512759373242 0.5820356652876917 0.001 +0.7567027652023347 0.7049989164079048 0.001 +0.3946598963386674 0.2745561488140953 0.001 +0.05191972870358415 -8.608466264623374 0.001 +-0.1031044648625869 0.05843776030426209 0.001 +0.3634628366377431 0.7820969340733036 0.001 +0.4086662122580188 -0.05153160977096217 0.001 +0.2241907359532729 0.06135438857398592 0.001 +0.5846700245931666 0.5045524431046179 0.001 +0.1271064308594214 1.117680252385818 0.001 +0.6317578830276254 1.034556935822309 0.001 +3.190732074664473 8.022659843671372 0.001 +-8.156536744105194 -7.076391671587808 0.001 +0.5264992214157886 1.059010579841061 0.001 +0.8701380807765751 -0.005659979923426409 0.001 +0.9199738999280165 0.4079007211139358 0.001 +0.3072778010302978 -0.09149569722771562 0.001 +1.026470702579327 0.8627142146192449 0.001 +1.035339121011989 0.1001379811660832 0.001 +0.3767050284562551 1.059105746012347 0.001 +0.1886971098738967 -0.09603762148100303 0.001 +0.1998680700324866 -0.07188033073373568 0.001 +-0.03592078286816035 0.3861619182626662 0.001 +0.3580368630424647 0.5568344618425816 0.001 +0.7268061540666899 -9.295708665627902 0.001 +8.86150894928646 -6.251704352025702 0.001 +0.03174225136805854 0.3272636054274665 0.001 +0.8094828015384445 0.9050652617785485 0.001 +12.19902467064077 -8.334421018242388 0.001 +0.4341966200444809 0.3393978220651242 0.001 +11.20997216741088 2.804044574903888 0.001 +0.193892416171531 0.3798784608625451 0.001 +0.6704393880682096 0.3543447253748888 0.001 +0.3547154424578157 1.094392379113612 0.001 +0.1542591165133803 0.8526462383149015 0.001 +0.9564444438857305 0.04138402465239644 0.001 +0.8958773100543691 -0.02875504260934753 0.001 +12.94931401463806 9.501720500162101 0.001 +-0.006096682116399862 0.05091948585845706 0.001 +0.5164983811480395 0.1785238766099319 0.001 +0.09051590322087075 0.3242697299330916 0.001 +1.774631973547626 9.095821499475548 0.001 +0.1021504336940191 0.1563464023564275 0.001 +1.032031789126122 0.4685641685858398 0.001 +12.96146492253799 -1.124652999421157 0.001 +0.9794134143265902 0.5547465408113073 0.001 +-4.366691380574006 -2.191103834524453 0.001 +0.5088325196711028 0.3404323243193862 0.001 +9.977734397012039 -6.554098874787448 0.001 +0.7985284647265269 1.044776996130497 0.001 +0.9862622925029544 0.1830740548841286 0.001 +0.6071060071315939 0.3206912749288912 0.001 +-0.01264336595454272 0.09186003087119554 0.001 +0.8740931597292986 -0.05488190265159681 0.001 +1.134601229962439 0.6386454422608208 0.001 +0.1066236080232103 0.3252542573153707 0.001 +0.3544953481865145 -0.04476503791000654 0.001 +-5.004337911068982 9.477821308871318 0.001 +-7.314993091720609 6.257961655244352 0.001 +1.846310450314371 2.866159239415613 0.001 +1.117829686327658 0.1019784809243096 0.001 +7.426499679884867 4.067725358169524 0.001 +0.7281199405376613 0.8277364139217124 0.001 +11.72306817078561 -9.185373705516605 0.001 +-0.04510980722668219 0.6424522126813972 0.001 +0.3535216432073459 0.7286436772796787 0.001 +0.07881788557096972 0.04644079929671022 0.001 +0.6905050164331269 0.1784328396856335 0.001 +0.7030444923474167 0.4290268242271242 0.001 +0.07450450181081317 0.02252664824157037 0.001 +0.5202051526554532 0.8913324447469368 0.001 +-0.1234646991279848 -1.498103620096371 0.001 +11.39451956737456 9.226751029079445 0.001 +0.1333656757494565 0.4509676852328215 0.001 +0.3247601402760939 0.6664211185604699 0.001 +1.071351112352742 0.3854523260450177 0.001 +1.078435154749443 0.3573535043523121 0.001 +0.214945251483463 0.599320618711035 0.001 +17.66648048365973 4.518288136101808 0.001 +16.59031136134645 -4.129871445945652 0.001 +0.6479493893929633 0.571976669869213 0.001 +0.4491934170508419 0.4104842604499033 0.001 +0.7569062894909286 0.9733327386375602 0.001 +0.1252869485272163 -0.04652449613602686 0.001 +0.8129078265177598 0.1252630452690358 0.001 +0.6495401914938527 0.04382645779892536 0.001 +0.1350337888034109 0.01595142911985888 0.001 +12.62798109109423 0.3896541414656993 0.001 +0.3694580364706588 0.7505379330028361 0.001 +0.03822617380082326 0.7871414034483059 0.001 +0.3424781272020611 0.6049013512925832 0.001 +0.2298373130185615 0.6436811991481319 0.001 +14.71793561369016 3.564858583972694 0.001 +0.1375753654066265 0.2771698433903336 0.001 +0.9147112339663896 0.1776275544638454 0.001 +0.6136467203453284 1.088176165208669 0.001 +-0.04562155622782141 0.3742419222435517 0.001 +0.5018790343792797 0.3823973360484836 0.001 +0.3223999178048598 0.7231019765133682 0.001 +0.9104957114066978 1.040911873726189 0.001 +0.03669225353647303 0.4060795279236145 0.001 +-0.0105444712362293 0.6751690689841949 0.001 +0.5574837107744998 0.2807996957874028 0.001 +0.8908415652661875 0.3735187541817171 0.001 +0.979948326383552 0.3894443276560609 0.001 +0.412139319316028 0.0339747056332175 0.001 +-5.26756190222695 -7.67490496214807 0.001 +2 13 0 0 +2 17 0 0 +2 21 0 0 +2 25 0 0 +2 26 0 3649 +3850 +3851 +3852 +3853 +3854 +3855 +3856 +3857 +3858 +3859 +3860 +3861 +3862 +3863 +3864 +3865 +3866 +3867 +3868 +3869 +3870 +3871 +3872 +3873 +3874 +3875 +3876 +3877 +3878 +3879 +3880 +3881 +3882 +3883 +3884 +3885 +3886 +3887 +3888 +3889 +3890 +3891 +3892 +3893 +3894 +3895 +3896 +3897 +3898 +3899 +3900 +3901 +3902 +3903 +3904 +3905 +3906 +3907 +3908 +3909 +3910 +3911 +3912 +3913 +3914 +3915 +3916 +3917 +3918 +3919 +3920 +3921 +3922 +3923 +3924 +3925 +3926 +3927 +3928 +3929 +3930 +3931 +3932 +3933 +3934 +3935 +3936 +3937 +3938 +3939 +3940 +3941 +3942 +3943 +3944 +3945 +3946 +3947 +3948 +3949 +3950 +3951 +3952 +3953 +3954 +3955 +3956 +3957 +3958 +3959 +3960 +3961 +3962 +3963 +3964 +3965 +3966 +3967 +3968 +3969 +3970 +3971 +3972 +3973 +3974 +3975 +3976 +3977 +3978 +3979 +3980 +3981 +3982 +3983 +3984 +3985 +3986 +3987 +3988 +3989 +3990 +3991 +3992 +3993 +3994 +3995 +3996 +3997 +3998 +3999 +4000 +4001 +4002 +4003 +4004 +4005 +4006 +4007 +4008 +4009 +4010 +4011 +4012 +4013 +4014 +4015 +4016 +4017 +4018 +4019 +4020 +4021 +4022 +4023 +4024 +4025 +4026 +4027 +4028 +4029 +4030 +4031 +4032 +4033 +4034 +4035 +4036 +4037 +4038 +4039 +4040 +4041 +4042 +4043 +4044 +4045 +4046 +4047 +4048 +4049 +4050 +4051 +4052 +4053 +4054 +4055 +4056 +4057 +4058 +4059 +4060 +4061 +4062 +4063 +4064 +4065 +4066 +4067 +4068 +4069 +4070 +4071 +4072 +4073 +4074 +4075 +4076 +4077 +4078 +4079 +4080 +4081 +4082 +4083 +4084 +4085 +4086 +4087 +4088 +4089 +4090 +4091 +4092 +4093 +4094 +4095 +4096 +4097 +4098 +4099 +4100 +4101 +4102 +4103 +4104 +4105 +4106 +4107 +4108 +4109 +4110 +4111 +4112 +4113 +4114 +4115 +4116 +4117 +4118 +4119 +4120 +4121 +4122 +4123 +4124 +4125 +4126 +4127 +4128 +4129 +4130 +4131 +4132 +4133 +4134 +4135 +4136 +4137 +4138 +4139 +4140 +4141 +4142 +4143 +4144 +4145 +4146 +4147 +4148 +4149 +4150 +4151 +4152 +4153 +4154 +4155 +4156 +4157 +4158 +4159 +4160 +4161 +4162 +4163 +4164 +4165 +4166 +4167 +4168 +4169 +4170 +4171 +4172 +4173 +4174 +4175 +4176 +4177 +4178 +4179 +4180 +4181 +4182 +4183 +4184 +4185 +4186 +4187 +4188 +4189 +4190 +4191 +4192 +4193 +4194 +4195 +4196 +4197 +4198 +4199 +4200 +4201 +4202 +4203 +4204 +4205 +4206 +4207 +4208 +4209 +4210 +4211 +4212 +4213 +4214 +4215 +4216 +4217 +4218 +4219 +4220 +4221 +4222 +4223 +4224 +4225 +4226 +4227 +4228 +4229 +4230 +4231 +4232 +4233 +4234 +4235 +4236 +4237 +4238 +4239 +4240 +4241 +4242 +4243 +4244 +4245 +4246 +4247 +4248 +4249 +4250 +4251 +4252 +4253 +4254 +4255 +4256 +4257 +4258 +4259 +4260 +4261 +4262 +4263 +4264 +4265 +4266 +4267 +4268 +4269 +4270 +4271 +4272 +4273 +4274 +4275 +4276 +4277 +4278 +4279 +4280 +4281 +4282 +4283 +4284 +4285 +4286 +4287 +4288 +4289 +4290 +4291 +4292 +4293 +4294 +4295 +4296 +4297 +4298 +4299 +4300 +4301 +4302 +4303 +4304 +4305 +4306 +4307 +4308 +4309 +4310 +4311 +4312 +4313 +4314 +4315 +4316 +4317 +4318 +4319 +4320 +4321 +4322 +4323 +4324 +4325 +4326 +4327 +4328 +4329 +4330 +4331 +4332 +4333 +4334 +4335 +4336 +4337 +4338 +4339 +4340 +4341 +4342 +4343 +4344 +4345 +4346 +4347 +4348 +4349 +4350 +4351 +4352 +4353 +4354 +4355 +4356 +4357 +4358 +4359 +4360 +4361 +4362 +4363 +4364 +4365 +4366 +4367 +4368 +4369 +4370 +4371 +4372 +4373 +4374 +4375 +4376 +4377 +4378 +4379 +4380 +4381 +4382 +4383 +4384 +4385 +4386 +4387 +4388 +4389 +4390 +4391 +4392 +4393 +4394 +4395 +4396 +4397 +4398 +4399 +4400 +4401 +4402 +4403 +4404 +4405 +4406 +4407 +4408 +4409 +4410 +4411 +4412 +4413 +4414 +4415 +4416 +4417 +4418 +4419 +4420 +4421 +4422 +4423 +4424 +4425 +4426 +4427 +4428 +4429 +4430 +4431 +4432 +4433 +4434 +4435 +4436 +4437 +4438 +4439 +4440 +4441 +4442 +4443 +4444 +4445 +4446 +4447 +4448 +4449 +4450 +4451 +4452 +4453 +4454 +4455 +4456 +4457 +4458 +4459 +4460 +4461 +4462 +4463 +4464 +4465 +4466 +4467 +4468 +4469 +4470 +4471 +4472 +4473 +4474 +4475 +4476 +4477 +4478 +4479 +4480 +4481 +4482 +4483 +4484 +4485 +4486 +4487 +4488 +4489 +4490 +4491 +4492 +4493 +4494 +4495 +4496 +4497 +4498 +4499 +4500 +4501 +4502 +4503 +4504 +4505 +4506 +4507 +4508 +4509 +4510 +4511 +4512 +4513 +4514 +4515 +4516 +4517 +4518 +4519 +4520 +4521 +4522 +4523 +4524 +4525 +4526 +4527 +4528 +4529 +4530 +4531 +4532 +4533 +4534 +4535 +4536 +4537 +4538 +4539 +4540 +4541 +4542 +4543 +4544 +4545 +4546 +4547 +4548 +4549 +4550 +4551 +4552 +4553 +4554 +4555 +4556 +4557 +4558 +4559 +4560 +4561 +4562 +4563 +4564 +4565 +4566 +4567 +4568 +4569 +4570 +4571 +4572 +4573 +4574 +4575 +4576 +4577 +4578 +4579 +4580 +4581 +4582 +4583 +4584 +4585 +4586 +4587 +4588 +4589 +4590 +4591 +4592 +4593 +4594 +4595 +4596 +4597 +4598 +4599 +4600 +4601 +4602 +4603 +4604 +4605 +4606 +4607 +4608 +4609 +4610 +4611 +4612 +4613 +4614 +4615 +4616 +4617 +4618 +4619 +4620 +4621 +4622 +4623 +4624 +4625 +4626 +4627 +4628 +4629 +4630 +4631 +4632 +4633 +4634 +4635 +4636 +4637 +4638 +4639 +4640 +4641 +4642 +4643 +4644 +4645 +4646 +4647 +4648 +4649 +4650 +4651 +4652 +4653 +4654 +4655 +4656 +4657 +4658 +4659 +4660 +4661 +4662 +4663 +4664 +4665 +4666 +4667 +4668 +4669 +4670 +4671 +4672 +4673 +4674 +4675 +4676 +4677 +4678 +4679 +4680 +4681 +4682 +4683 +4684 +4685 +4686 +4687 +4688 +4689 +4690 +4691 +4692 +4693 +4694 +4695 +4696 +4697 +4698 +4699 +4700 +4701 +4702 +4703 +4704 +4705 +4706 +4707 +4708 +4709 +4710 +4711 +4712 +4713 +4714 +4715 +4716 +4717 +4718 +4719 +4720 +4721 +4722 +4723 +4724 +4725 +4726 +4727 +4728 +4729 +4730 +4731 +4732 +4733 +4734 +4735 +4736 +4737 +4738 +4739 +4740 +4741 +4742 +4743 +4744 +4745 +4746 +4747 +4748 +4749 +4750 +4751 +4752 +4753 +4754 +4755 +4756 +4757 +4758 +4759 +4760 +4761 +4762 +4763 +4764 +4765 +4766 +4767 +4768 +4769 +4770 +4771 +4772 +4773 +4774 +4775 +4776 +4777 +4778 +4779 +4780 +4781 +4782 +4783 +4784 +4785 +4786 +4787 +4788 +4789 +4790 +4791 +4792 +4793 +4794 +4795 +4796 +4797 +4798 +4799 +4800 +4801 +4802 +4803 +4804 +4805 +4806 +4807 +4808 +4809 +4810 +4811 +4812 +4813 +4814 +4815 +4816 +4817 +4818 +4819 +4820 +4821 +4822 +4823 +4824 +4825 +4826 +4827 +4828 +4829 +4830 +4831 +4832 +4833 +4834 +4835 +4836 +4837 +4838 +4839 +4840 +4841 +4842 +4843 +4844 +4845 +4846 +4847 +4848 +4849 +4850 +4851 +4852 +4853 +4854 +4855 +4856 +4857 +4858 +4859 +4860 +4861 +4862 +4863 +4864 +4865 +4866 +4867 +4868 +4869 +4870 +4871 +4872 +4873 +4874 +4875 +4876 +4877 +4878 +4879 +4880 +4881 +4882 +4883 +4884 +4885 +4886 +4887 +4888 +4889 +4890 +4891 +4892 +4893 +4894 +4895 +4896 +4897 +4898 +4899 +4900 +4901 +4902 +4903 +4904 +4905 +4906 +4907 +4908 +4909 +4910 +4911 +4912 +4913 +4914 +4915 +4916 +4917 +4918 +4919 +4920 +4921 +4922 +4923 +4924 +4925 +4926 +4927 +4928 +4929 +4930 +4931 +4932 +4933 +4934 +4935 +4936 +4937 +4938 +4939 +4940 +4941 +4942 +4943 +4944 +4945 +4946 +4947 +4948 +4949 +4950 +4951 +4952 +4953 +4954 +4955 +4956 +4957 +4958 +4959 +4960 +4961 +4962 +4963 +4964 +4965 +4966 +4967 +4968 +4969 +4970 +4971 +4972 +4973 +4974 +4975 +4976 +4977 +4978 +4979 +4980 +4981 +4982 +4983 +4984 +4985 +4986 +4987 +4988 +4989 +4990 +4991 +4992 +4993 +4994 +4995 +4996 +4997 +4998 +4999 +5000 +5001 +5002 +5003 +5004 +5005 +5006 +5007 +5008 +5009 +5010 +5011 +5012 +5013 +5014 +5015 +5016 +5017 +5018 +5019 +5020 +5021 +5022 +5023 +5024 +5025 +5026 +5027 +5028 +5029 +5030 +5031 +5032 +5033 +5034 +5035 +5036 +5037 +5038 +5039 +5040 +5041 +5042 +5043 +5044 +5045 +5046 +5047 +5048 +5049 +5050 +5051 +5052 +5053 +5054 +5055 +5056 +5057 +5058 +5059 +5060 +5061 +5062 +5063 +5064 +5065 +5066 +5067 +5068 +5069 +5070 +5071 +5072 +5073 +5074 +5075 +5076 +5077 +5078 +5079 +5080 +5081 +5082 +5083 +5084 +5085 +5086 +5087 +5088 +5089 +5090 +5091 +5092 +5093 +5094 +5095 +5096 +5097 +5098 +5099 +5100 +5101 +5102 +5103 +5104 +5105 +5106 +5107 +5108 +5109 +5110 +5111 +5112 +5113 +5114 +5115 +5116 +5117 +5118 +5119 +5120 +5121 +5122 +5123 +5124 +5125 +5126 +5127 +5128 +5129 +5130 +5131 +5132 +5133 +5134 +5135 +5136 +5137 +5138 +5139 +5140 +5141 +5142 +5143 +5144 +5145 +5146 +5147 +5148 +5149 +5150 +5151 +5152 +5153 +5154 +5155 +5156 +5157 +5158 +5159 +5160 +5161 +5162 +5163 +5164 +5165 +5166 +5167 +5168 +5169 +5170 +5171 +5172 +5173 +5174 +5175 +5176 +5177 +5178 +5179 +5180 +5181 +5182 +5183 +5184 +5185 +5186 +5187 +5188 +5189 +5190 +5191 +5192 +5193 +5194 +5195 +5196 +5197 +5198 +5199 +5200 +5201 +5202 +5203 +5204 +5205 +5206 +5207 +5208 +5209 +5210 +5211 +5212 +5213 +5214 +5215 +5216 +5217 +5218 +5219 +5220 +5221 +5222 +5223 +5224 +5225 +5226 +5227 +5228 +5229 +5230 +5231 +5232 +5233 +5234 +5235 +5236 +5237 +5238 +5239 +5240 +5241 +5242 +5243 +5244 +5245 +5246 +5247 +5248 +5249 +5250 +5251 +5252 +5253 +5254 +5255 +5256 +5257 +5258 +5259 +5260 +5261 +5262 +5263 +5264 +5265 +5266 +5267 +5268 +5269 +5270 +5271 +5272 +5273 +5274 +5275 +5276 +5277 +5278 +5279 +5280 +5281 +5282 +5283 +5284 +5285 +5286 +5287 +5288 +5289 +5290 +5291 +5292 +5293 +5294 +5295 +5296 +5297 +5298 +5299 +5300 +5301 +5302 +5303 +5304 +5305 +5306 +5307 +5308 +5309 +5310 +5311 +5312 +5313 +5314 +5315 +5316 +5317 +5318 +5319 +5320 +5321 +5322 +5323 +5324 +5325 +5326 +5327 +5328 +5329 +5330 +5331 +5332 +5333 +5334 +5335 +5336 +5337 +5338 +5339 +5340 +5341 +5342 +5343 +5344 +5345 +5346 +5347 +5348 +5349 +5350 +5351 +5352 +5353 +5354 +5355 +5356 +5357 +5358 +5359 +5360 +5361 +5362 +5363 +5364 +5365 +5366 +5367 +5368 +5369 +5370 +5371 +5372 +5373 +5374 +5375 +5376 +5377 +5378 +5379 +5380 +5381 +5382 +5383 +5384 +5385 +5386 +5387 +5388 +5389 +5390 +5391 +5392 +5393 +5394 +5395 +5396 +5397 +5398 +5399 +5400 +5401 +5402 +5403 +5404 +5405 +5406 +5407 +5408 +5409 +5410 +5411 +5412 +5413 +5414 +5415 +5416 +5417 +5418 +5419 +5420 +5421 +5422 +5423 +5424 +5425 +5426 +5427 +5428 +5429 +5430 +5431 +5432 +5433 +5434 +5435 +5436 +5437 +5438 +5439 +5440 +5441 +5442 +5443 +5444 +5445 +5446 +5447 +5448 +5449 +5450 +5451 +5452 +5453 +5454 +5455 +5456 +5457 +5458 +5459 +5460 +5461 +5462 +5463 +5464 +5465 +5466 +5467 +5468 +5469 +5470 +5471 +5472 +5473 +5474 +5475 +5476 +5477 +5478 +5479 +5480 +5481 +5482 +5483 +5484 +5485 +5486 +5487 +5488 +5489 +5490 +5491 +5492 +5493 +5494 +5495 +5496 +5497 +5498 +5499 +5500 +5501 +5502 +5503 +5504 +5505 +5506 +5507 +5508 +5509 +5510 +5511 +5512 +5513 +5514 +5515 +5516 +5517 +5518 +5519 +5520 +5521 +5522 +5523 +5524 +5525 +5526 +5527 +5528 +5529 +5530 +5531 +5532 +5533 +5534 +5535 +5536 +5537 +5538 +5539 +5540 +5541 +5542 +5543 +5544 +5545 +5546 +5547 +5548 +5549 +5550 +5551 +5552 +5553 +5554 +5555 +5556 +5557 +5558 +5559 +5560 +5561 +5562 +5563 +5564 +5565 +5566 +5567 +5568 +5569 +5570 +5571 +5572 +5573 +5574 +5575 +5576 +5577 +5578 +5579 +5580 +5581 +5582 +5583 +5584 +5585 +5586 +5587 +5588 +5589 +5590 +5591 +5592 +5593 +5594 +5595 +5596 +5597 +5598 +5599 +5600 +5601 +5602 +5603 +5604 +5605 +5606 +5607 +5608 +5609 +5610 +5611 +5612 +5613 +5614 +5615 +5616 +5617 +5618 +5619 +5620 +5621 +5622 +5623 +5624 +5625 +5626 +5627 +5628 +5629 +5630 +5631 +5632 +5633 +5634 +5635 +5636 +5637 +5638 +5639 +5640 +5641 +5642 +5643 +5644 +5645 +5646 +5647 +5648 +5649 +5650 +5651 +5652 +5653 +5654 +5655 +5656 +5657 +5658 +5659 +5660 +5661 +5662 +5663 +5664 +5665 +5666 +5667 +5668 +5669 +5670 +5671 +5672 +5673 +5674 +5675 +5676 +5677 +5678 +5679 +5680 +5681 +5682 +5683 +5684 +5685 +5686 +5687 +5688 +5689 +5690 +5691 +5692 +5693 +5694 +5695 +5696 +5697 +5698 +5699 +5700 +5701 +5702 +5703 +5704 +5705 +5706 +5707 +5708 +5709 +5710 +5711 +5712 +5713 +5714 +5715 +5716 +5717 +5718 +5719 +5720 +5721 +5722 +5723 +5724 +5725 +5726 +5727 +5728 +5729 +5730 +5731 +5732 +5733 +5734 +5735 +5736 +5737 +5738 +5739 +5740 +5741 +5742 +5743 +5744 +5745 +5746 +5747 +5748 +5749 +5750 +5751 +5752 +5753 +5754 +5755 +5756 +5757 +5758 +5759 +5760 +5761 +5762 +5763 +5764 +5765 +5766 +5767 +5768 +5769 +5770 +5771 +5772 +5773 +5774 +5775 +5776 +5777 +5778 +5779 +5780 +5781 +5782 +5783 +5784 +5785 +5786 +5787 +5788 +5789 +5790 +5791 +5792 +5793 +5794 +5795 +5796 +5797 +5798 +5799 +5800 +5801 +5802 +5803 +5804 +5805 +5806 +5807 +5808 +5809 +5810 +5811 +5812 +5813 +5814 +5815 +5816 +5817 +5818 +5819 +5820 +5821 +5822 +5823 +5824 +5825 +5826 +5827 +5828 +5829 +5830 +5831 +5832 +5833 +5834 +5835 +5836 +5837 +5838 +5839 +5840 +5841 +5842 +5843 +5844 +5845 +5846 +5847 +5848 +5849 +5850 +5851 +5852 +5853 +5854 +5855 +5856 +5857 +5858 +5859 +5860 +5861 +5862 +5863 +5864 +5865 +5866 +5867 +5868 +5869 +5870 +5871 +5872 +5873 +5874 +5875 +5876 +5877 +5878 +5879 +5880 +5881 +5882 +5883 +5884 +5885 +5886 +5887 +5888 +5889 +5890 +5891 +5892 +5893 +5894 +5895 +5896 +5897 +5898 +5899 +5900 +5901 +5902 +5903 +5904 +5905 +5906 +5907 +5908 +5909 +5910 +5911 +5912 +5913 +5914 +5915 +5916 +5917 +5918 +5919 +5920 +5921 +5922 +5923 +5924 +5925 +5926 +5927 +5928 +5929 +5930 +5931 +5932 +5933 +5934 +5935 +5936 +5937 +5938 +5939 +5940 +5941 +5942 +5943 +5944 +5945 +5946 +5947 +5948 +5949 +5950 +5951 +5952 +5953 +5954 +5955 +5956 +5957 +5958 +5959 +5960 +5961 +5962 +5963 +5964 +5965 +5966 +5967 +5968 +5969 +5970 +5971 +5972 +5973 +5974 +5975 +5976 +5977 +5978 +5979 +5980 +5981 +5982 +5983 +5984 +5985 +5986 +5987 +5988 +5989 +5990 +5991 +5992 +5993 +5994 +5995 +5996 +5997 +5998 +5999 +6000 +6001 +6002 +6003 +6004 +6005 +6006 +6007 +6008 +6009 +6010 +6011 +6012 +6013 +6014 +6015 +6016 +6017 +6018 +6019 +6020 +6021 +6022 +6023 +6024 +6025 +6026 +6027 +6028 +6029 +6030 +6031 +6032 +6033 +6034 +6035 +6036 +6037 +6038 +6039 +6040 +6041 +6042 +6043 +6044 +6045 +6046 +6047 +6048 +6049 +6050 +6051 +6052 +6053 +6054 +6055 +6056 +6057 +6058 +6059 +6060 +6061 +6062 +6063 +6064 +6065 +6066 +6067 +6068 +6069 +6070 +6071 +6072 +6073 +6074 +6075 +6076 +6077 +6078 +6079 +6080 +6081 +6082 +6083 +6084 +6085 +6086 +6087 +6088 +6089 +6090 +6091 +6092 +6093 +6094 +6095 +6096 +6097 +6098 +6099 +6100 +6101 +6102 +6103 +6104 +6105 +6106 +6107 +6108 +6109 +6110 +6111 +6112 +6113 +6114 +6115 +6116 +6117 +6118 +6119 +6120 +6121 +6122 +6123 +6124 +6125 +6126 +6127 +6128 +6129 +6130 +6131 +6132 +6133 +6134 +6135 +6136 +6137 +6138 +6139 +6140 +6141 +6142 +6143 +6144 +6145 +6146 +6147 +6148 +6149 +6150 +6151 +6152 +6153 +6154 +6155 +6156 +6157 +6158 +6159 +6160 +6161 +6162 +6163 +6164 +6165 +6166 +6167 +6168 +6169 +6170 +6171 +6172 +6173 +6174 +6175 +6176 +6177 +6178 +6179 +6180 +6181 +6182 +6183 +6184 +6185 +6186 +6187 +6188 +6189 +6190 +6191 +6192 +6193 +6194 +6195 +6196 +6197 +6198 +6199 +6200 +6201 +6202 +6203 +6204 +6205 +6206 +6207 +6208 +6209 +6210 +6211 +6212 +6213 +6214 +6215 +6216 +6217 +6218 +6219 +6220 +6221 +6222 +6223 +6224 +6225 +6226 +6227 +6228 +6229 +6230 +6231 +6232 +6233 +6234 +6235 +6236 +6237 +6238 +6239 +6240 +6241 +6242 +6243 +6244 +6245 +6246 +6247 +6248 +6249 +6250 +6251 +6252 +6253 +6254 +6255 +6256 +6257 +6258 +6259 +6260 +6261 +6262 +6263 +6264 +6265 +6266 +6267 +6268 +6269 +6270 +6271 +6272 +6273 +6274 +6275 +6276 +6277 +6278 +6279 +6280 +6281 +6282 +6283 +6284 +6285 +6286 +6287 +6288 +6289 +6290 +6291 +6292 +6293 +6294 +6295 +6296 +6297 +6298 +6299 +6300 +6301 +6302 +6303 +6304 +6305 +6306 +6307 +6308 +6309 +6310 +6311 +6312 +6313 +6314 +6315 +6316 +6317 +6318 +6319 +6320 +6321 +6322 +6323 +6324 +6325 +6326 +6327 +6328 +6329 +6330 +6331 +6332 +6333 +6334 +6335 +6336 +6337 +6338 +6339 +6340 +6341 +6342 +6343 +6344 +6345 +6346 +6347 +6348 +6349 +6350 +6351 +6352 +6353 +6354 +6355 +6356 +6357 +6358 +6359 +6360 +6361 +6362 +6363 +6364 +6365 +6366 +6367 +6368 +6369 +6370 +6371 +6372 +6373 +6374 +6375 +6376 +6377 +6378 +6379 +6380 +6381 +6382 +6383 +6384 +6385 +6386 +6387 +6388 +6389 +6390 +6391 +6392 +6393 +6394 +6395 +6396 +6397 +6398 +6399 +6400 +6401 +6402 +6403 +6404 +6405 +6406 +6407 +6408 +6409 +6410 +6411 +6412 +6413 +6414 +6415 +6416 +6417 +6418 +6419 +6420 +6421 +6422 +6423 +6424 +6425 +6426 +6427 +6428 +6429 +6430 +6431 +6432 +6433 +6434 +6435 +6436 +6437 +6438 +6439 +6440 +6441 +6442 +6443 +6444 +6445 +6446 +6447 +6448 +6449 +6450 +6451 +6452 +6453 +6454 +6455 +6456 +6457 +6458 +6459 +6460 +6461 +6462 +6463 +6464 +6465 +6466 +6467 +6468 +6469 +6470 +6471 +6472 +6473 +6474 +6475 +6476 +6477 +6478 +6479 +6480 +6481 +6482 +6483 +6484 +6485 +6486 +6487 +6488 +6489 +6490 +6491 +6492 +6493 +6494 +6495 +6496 +6497 +6498 +6499 +6500 +6501 +6502 +6503 +6504 +6505 +6506 +6507 +6508 +6509 +6510 +6511 +6512 +6513 +6514 +6515 +6516 +6517 +6518 +6519 +6520 +6521 +6522 +6523 +6524 +6525 +6526 +6527 +6528 +6529 +6530 +6531 +6532 +6533 +6534 +6535 +6536 +6537 +6538 +6539 +6540 +6541 +6542 +6543 +6544 +6545 +6546 +6547 +6548 +6549 +6550 +6551 +6552 +6553 +6554 +6555 +6556 +6557 +6558 +6559 +6560 +6561 +6562 +6563 +6564 +6565 +6566 +6567 +6568 +6569 +6570 +6571 +6572 +6573 +6574 +6575 +6576 +6577 +6578 +6579 +6580 +6581 +6582 +6583 +6584 +6585 +6586 +6587 +6588 +6589 +6590 +6591 +6592 +6593 +6594 +6595 +6596 +6597 +6598 +6599 +6600 +6601 +6602 +6603 +6604 +6605 +6606 +6607 +6608 +6609 +6610 +6611 +6612 +6613 +6614 +6615 +6616 +6617 +6618 +6619 +6620 +6621 +6622 +6623 +6624 +6625 +6626 +6627 +6628 +6629 +6630 +6631 +6632 +6633 +6634 +6635 +6636 +6637 +6638 +6639 +6640 +6641 +6642 +6643 +6644 +6645 +6646 +6647 +6648 +6649 +6650 +6651 +6652 +6653 +6654 +6655 +6656 +6657 +6658 +6659 +6660 +6661 +6662 +6663 +6664 +6665 +6666 +6667 +6668 +6669 +6670 +6671 +6672 +6673 +6674 +6675 +6676 +6677 +6678 +6679 +6680 +6681 +6682 +6683 +6684 +6685 +6686 +6687 +6688 +6689 +6690 +6691 +6692 +6693 +6694 +6695 +6696 +6697 +6698 +6699 +6700 +6701 +6702 +6703 +6704 +6705 +6706 +6707 +6708 +6709 +6710 +6711 +6712 +6713 +6714 +6715 +6716 +6717 +6718 +6719 +6720 +6721 +6722 +6723 +6724 +6725 +6726 +6727 +6728 +6729 +6730 +6731 +6732 +6733 +6734 +6735 +6736 +6737 +6738 +6739 +6740 +6741 +6742 +6743 +6744 +6745 +6746 +6747 +6748 +6749 +6750 +6751 +6752 +6753 +6754 +6755 +6756 +6757 +6758 +6759 +6760 +6761 +6762 +6763 +6764 +6765 +6766 +6767 +6768 +6769 +6770 +6771 +6772 +6773 +6774 +6775 +6776 +6777 +6778 +6779 +6780 +6781 +6782 +6783 +6784 +6785 +6786 +6787 +6788 +6789 +6790 +6791 +6792 +6793 +6794 +6795 +6796 +6797 +6798 +6799 +6800 +6801 +6802 +6803 +6804 +6805 +6806 +6807 +6808 +6809 +6810 +6811 +6812 +6813 +6814 +6815 +6816 +6817 +6818 +6819 +6820 +6821 +6822 +6823 +6824 +6825 +6826 +6827 +6828 +6829 +6830 +6831 +6832 +6833 +6834 +6835 +6836 +6837 +6838 +6839 +6840 +6841 +6842 +6843 +6844 +6845 +6846 +6847 +6848 +6849 +6850 +6851 +6852 +6853 +6854 +6855 +6856 +6857 +6858 +6859 +6860 +6861 +6862 +6863 +6864 +6865 +6866 +6867 +6868 +6869 +6870 +6871 +6872 +6873 +6874 +6875 +6876 +6877 +6878 +6879 +6880 +6881 +6882 +6883 +6884 +6885 +6886 +6887 +6888 +6889 +6890 +6891 +6892 +6893 +6894 +6895 +6896 +6897 +6898 +6899 +6900 +6901 +6902 +6903 +6904 +6905 +6906 +6907 +6908 +6909 +6910 +6911 +6912 +6913 +6914 +6915 +6916 +6917 +6918 +6919 +6920 +6921 +6922 +6923 +6924 +6925 +6926 +6927 +6928 +6929 +6930 +6931 +6932 +6933 +6934 +6935 +6936 +6937 +6938 +6939 +6940 +6941 +6942 +6943 +6944 +6945 +6946 +6947 +6948 +6949 +6950 +6951 +6952 +6953 +6954 +6955 +6956 +6957 +6958 +6959 +6960 +6961 +6962 +6963 +6964 +6965 +6966 +6967 +6968 +6969 +6970 +6971 +6972 +6973 +6974 +6975 +6976 +6977 +6978 +6979 +6980 +6981 +6982 +6983 +6984 +6985 +6986 +6987 +6988 +6989 +6990 +6991 +6992 +6993 +6994 +6995 +6996 +6997 +6998 +6999 +7000 +7001 +7002 +7003 +7004 +7005 +7006 +7007 +7008 +7009 +7010 +7011 +7012 +7013 +7014 +7015 +7016 +7017 +7018 +7019 +7020 +7021 +7022 +7023 +7024 +7025 +7026 +7027 +7028 +7029 +7030 +7031 +7032 +7033 +7034 +7035 +7036 +7037 +7038 +7039 +7040 +7041 +7042 +7043 +7044 +7045 +7046 +7047 +7048 +7049 +7050 +7051 +7052 +7053 +7054 +7055 +7056 +7057 +7058 +7059 +7060 +7061 +7062 +7063 +7064 +7065 +7066 +7067 +7068 +7069 +7070 +7071 +7072 +7073 +7074 +7075 +7076 +7077 +7078 +7079 +7080 +7081 +7082 +7083 +7084 +7085 +7086 +7087 +7088 +7089 +7090 +7091 +7092 +7093 +7094 +7095 +7096 +7097 +7098 +7099 +7100 +7101 +7102 +7103 +7104 +7105 +7106 +7107 +7108 +7109 +7110 +7111 +7112 +7113 +7114 +7115 +7116 +7117 +7118 +7119 +7120 +7121 +7122 +7123 +7124 +7125 +7126 +7127 +7128 +7129 +7130 +7131 +7132 +7133 +7134 +7135 +7136 +7137 +7138 +7139 +7140 +7141 +7142 +7143 +7144 +7145 +7146 +7147 +7148 +7149 +7150 +7151 +7152 +7153 +7154 +7155 +7156 +7157 +7158 +7159 +7160 +7161 +7162 +7163 +7164 +7165 +7166 +7167 +7168 +7169 +7170 +7171 +7172 +7173 +7174 +7175 +7176 +7177 +7178 +7179 +7180 +7181 +7182 +7183 +7184 +7185 +7186 +7187 +7188 +7189 +7190 +7191 +7192 +7193 +7194 +7195 +7196 +7197 +7198 +7199 +7200 +7201 +7202 +7203 +7204 +7205 +7206 +7207 +7208 +7209 +7210 +7211 +7212 +7213 +7214 +7215 +7216 +7217 +7218 +7219 +7220 +7221 +7222 +7223 +7224 +7225 +7226 +7227 +7228 +7229 +7230 +7231 +7232 +7233 +7234 +7235 +7236 +7237 +7238 +7239 +7240 +7241 +7242 +7243 +7244 +7245 +7246 +7247 +7248 +7249 +7250 +7251 +7252 +7253 +7254 +7255 +7256 +7257 +7258 +7259 +7260 +7261 +7262 +7263 +7264 +7265 +7266 +7267 +7268 +7269 +7270 +7271 +7272 +7273 +7274 +7275 +7276 +7277 +7278 +7279 +7280 +7281 +7282 +7283 +7284 +7285 +7286 +7287 +7288 +7289 +7290 +7291 +7292 +7293 +7294 +7295 +7296 +7297 +7298 +7299 +7300 +7301 +7302 +7303 +7304 +7305 +7306 +7307 +7308 +7309 +7310 +7311 +7312 +7313 +7314 +7315 +7316 +7317 +7318 +7319 +7320 +7321 +7322 +7323 +7324 +7325 +7326 +7327 +7328 +7329 +7330 +7331 +7332 +7333 +7334 +7335 +7336 +7337 +7338 +7339 +7340 +7341 +7342 +7343 +7344 +7345 +7346 +7347 +7348 +7349 +7350 +7351 +7352 +7353 +7354 +7355 +7356 +7357 +7358 +7359 +7360 +7361 +7362 +7363 +7364 +7365 +7366 +7367 +7368 +7369 +7370 +7371 +7372 +7373 +7374 +7375 +7376 +7377 +7378 +7379 +7380 +7381 +7382 +7383 +7384 +7385 +7386 +7387 +7388 +7389 +7390 +7391 +7392 +7393 +7394 +7395 +7396 +7397 +7398 +7399 +7400 +7401 +7402 +7403 +7404 +7405 +7406 +7407 +7408 +7409 +7410 +7411 +7412 +7413 +7414 +7415 +7416 +7417 +7418 +7419 +7420 +7421 +7422 +7423 +7424 +7425 +7426 +7427 +7428 +7429 +7430 +7431 +7432 +7433 +7434 +7435 +7436 +7437 +7438 +7439 +7440 +7441 +7442 +7443 +7444 +7445 +7446 +7447 +7448 +7449 +7450 +7451 +7452 +7453 +7454 +7455 +7456 +7457 +7458 +7459 +7460 +7461 +7462 +7463 +7464 +7465 +7466 +7467 +7468 +7469 +7470 +7471 +7472 +7473 +7474 +7475 +7476 +7477 +7478 +7479 +7480 +7481 +7482 +7483 +7484 +7485 +7486 +7487 +7488 +7489 +7490 +7491 +7492 +7493 +7494 +7495 +7496 +7497 +7498 +9.778807897171502 0.05558097101420824 0.102 +-0.3384969699456766 0.2246759655303913 0.102 +4.3171953140971 -3.843336183435499 0.102 +4.64211736451421 4.023039100397666 0.102 +-3.962440810408782 -4.022064256688987 0.102 +-4.353726025360202 3.877264611258266 0.102 +14.26053004338494 4.258806301029247 0.102 +13.92638068866421 -4.073054486028105 0.102 +9.300165611135684 -5.021433419267026 0.102 +9.359981860104012 4.916060108127613 0.102 +0.479083106988861 5.992204283023418 0.102 +0.2616839271001427 -5.116033485553635 0.102 +-5.310001561269612 0.07478896856466866 0.102 +15.79102990734741 -0.0893761575181832 0.102 +5.847099930133955 0.1527569603666403 0.102 +16.47094770708509 6.568382823372293 0.102 +16.65253001106647 -6.34541716185104 0.102 +-6.51957517473234 -6.587312204482456 0.102 +6.48773763682424 -6.659541678870707 0.102 +-6.723859510168295 6.700024777523405 0.102 +6.033536299629761 6.707096631871114 0.102 +12.16726273619705 -6.431076023548391 0.102 +12.07934391654776 6.558989012953081 0.102 +12.39021784323325 1.267358684266742 0.102 +1.620509487334398 -2.357591586607114 0.102 +7.18912607220427 -2.126326349323302 0.102 +3.154661792447822 6.679641077314855 0.102 +2.927004712977335 -6.726361783112851 0.102 +-2.827222346865052 -6.80646723895355 0.102 +7.359267448602184 2.602122003358535 0.102 +2.47184584467556 1.712056624721466 0.102 +11.19000602675133 -2.555768905034229 0.102 +-2.727680904102127 6.834082844977783 0.102 +16.51973961997356 3.160488423349568 0.102 +16.86538030868333 -2.616351518362426 0.102 +-6.938136991502127 -2.63980955369857 0.102 +-1.520756124905371 -2.518260167318587 0.102 +-7.046300888535879 2.730096841800151 0.102 +-3.118990552202356 1.284847046718091 0.102 +10.22414519261333 2.869712338632752 0.102 +-0.8324318131411002 2.724161421979818 0.102 +13.56359638523138 -1.335889148405581 0.102 +8.613110043543568 -7.463358757694778 0.102 +8.900586012996003 7.607998570298383 0.102 +2.102669355968249 3.62458576203 0.102 +-3.873068783922107 -1.563216876502117 0.102 +14.24541875005511 -7.214828232441432 0.102 +14.18363279768171 7.404797131542558 0.102 +3.603609308030055 -1.354623308727185 0.102 +0.8573079008680295 7.63860218858552 0.102 +-0.3394978485953679 -7.720033345763035 0.102 +11.70709944116238 4.466244931022066 0.102 +-1.9451318846254 4.746601909091229 0.102 +-7.729191223110295 -0.4196166046403471 0.102 +-4.695285757974754 -7.794149558379218 0.102 +-4.928555105162137 7.825884205582923 0.102 +17.69509118813632 0.5850265261975738 0.102 +-1.519780623880887 -4.683616999563125 0.102 +6.915507812913066 4.365242284873371 0.102 +-8.091967893810942 -4.764906568052602 0.102 +6.815470157648247 -4.048997096957782 0.102 +-7.917876797607586 5.148504529633155 0.102 +14.14450519291148 1.698802036250893 0.102 +18.17543541731497 4.947484008793628 0.102 +17.84645646814626 -4.596424561936343 0.102 +11.10500222922638 -4.639391462669168 0.102 +-4.972160274263994 2.011422578936783 0.102 +-2.142894545664422 -0.7445579560210616 0.102 +5.69749475428727 2.372628262742814 0.102 +1.747307471777847 -0.3556934718680885 0.102 +0.424026133056503 -1.168697259979461 0.102 +4.214109027175104 8.024215513853466 0.102 +17.90712123938819 8.09860872755803 0.102 +17.83804385065398 -8.090877575112271 0.102 +7.507069494318005 -0.4040610464737135 0.102 +11.45193110512981 -0.8571659044117483 0.102 +10.87109906805544 -8.118062158138931 0.102 +4.540735820079144 -7.985710876238248 0.102 +1.139690382122118 1.046919957596142 0.102 +0.7812662497806541 0.07896091138716885 0.102 +0.3730611395833357 0.7711519600462875 0.102 +0.8725962532098591 0.5873369936698877 0.102 +0.5168151246898666 0.3849386469878797 0.102 +0.7124434827100807 0.9747983238867376 0.102 +0.7901727510507218 0.3351063836799678 0.102 +0.6040073798621349 0.636853074173157 0.102 +0.9567668386767115 0.8541143205421694 0.102 +0.2245396039158117 -0.1416077787856278 0.102 +0.4524430041471698 0.07418954106803989 0.102 +0.6505220602490145 -0.3570844384358338 0.102 +0.6213547653657827 0.206374848474322 0.102 +0.4158070563643809 0.5606048691876355 0.102 +0.1680765097473288 0.2967347448434218 0.102 +0.1045665339122664 0.5848920996499998 0.102 +0.7664760243168962 0.7776354801188299 0.102 +0.3776577435805402 0.251375241245111 0.102 +0.5742206456478236 0.8399965041525894 0.102 +0.3463575978408783 1.266815267921455 0.102 +-1.196145143318557 1.603603496405709 0.102 +0.8689206922248114 1.464259571408791 0.102 +0.2451701100270807 0.4680295627464005 0.102 +0.9076709320541355 1.063567677364788 0.102 +0.7234919176462618 0.5098029584337769 0.102 +0.2761748499447121 0.6292948550263706 0.102 +0.130828323118243 0.8387942494965931 0.102 +-0.3963233078863765 0.6887828757688185 0.102 +0.6280185653968188 0.04402176275446519 0.102 +0.09145400715208059 0.4316321894881257 0.102 +0.2188136849214738 0.08614105214155901 0.102 +0.3683345381116711 0.3998583723560507 0.102 +0.6491909752318274 0.3420990954134713 0.102 +0.5027373279910636 0.7244187753181672 0.102 +0.8335359331952029 0.8931408458957411 0.102 +0.8583606212955731 0.4636895827542016 0.102 +1.219146157657809 0.1846296791533891 0.102 +1.556909378103661 0.5506623626859524 0.102 +0.8935303000664695 0.7296593586995597 0.102 +0.7431033140476894 0.643957135342445 0.102 +0.5478615942895572 0.5307171866465542 0.102 +0.5001288377715265 0.2613825220818154 0.102 +0.1640556830356844 0.7200935103585293 0.102 +-0.02139471023450567 0.735732787888235 0.102 +-0.09869386003565389 0.5393757157724017 0.102 +0.3459817529871992 0.1409806340044271 0.102 +1.149795147476499 0.4869733798004456 0.102 +1.006631807529102 0.3009807198072235 0.102 +0.8699124747149323 0.2117632943959763 0.102 +1.109688099378634 0.7100508328248053 0.102 +1.139373324543485 0.8832282736895051 0.102 +0.7426762106439244 0.2121809986271706 0.102 +0.2578128841267724 0.1980881519969167 0.102 +0.1264274614678327 0.157307365064368 0.102 +-0.04365656840552361 0.292963281663765 0.102 +-0.04033845575114733 0.4181060675283631 0.102 +0.2520758278207708 0.8050046468630437 0.102 +0.9897254232565234 0.638545264103745 0.102 +0.9709226252647365 0.5059138440823161 0.102 +1.016278782713312 0.9737063797528168 0.102 +0.2773578138588181 0.3383651021655311 0.102 +0.4634277160341489 0.8433637541291668 0.102 +0.5244953735356532 1.031583296225929 0.102 +0.3197293682692126 0.9881718520900998 0.102 +0.2292146196727762 0.9132950028205311 0.102 +-0.0452131829484872 1.373422537357332 0.102 +-0.0004912280334828966 0.6171971668816083 0.102 +-0.1286233279736679 0.6598779211307543 0.102 +0.3382446279995521 -0.03252276411481384 0.102 +0.5141335647764772 -0.1109313314380381 0.102 +0.4326261961580243 0.9443124439496492 0.102 +0.4030421318351134 1.067489986683336 0.102 +0.9058863891141704 0.3594973727232573 0.102 +1.037599182904338 -0.004189580999847731 0.102 +0.9133850886624187 0.07161539868421657 0.102 +0.6947813710044063 0.8582623422653861 0.102 +0.6538049868463096 0.7406019448820724 0.102 +0.3420201722870181 0.8800698948122054 0.102 +0.6024822347061016 0.9460360786561908 0.102 +0.6423652457257883 1.060510436975697 0.102 +0.5133877644339907 1.272219652227606 0.102 +0.7696911069289866 1.107782857871021 0.102 +0.61807610276406 0.4403728608398318 0.102 +0.06409634002360967 0.3239190504789655 0.102 +0.02371012078355694 0.51337924637846 0.102 +1.003360251353602 0.7634162516280383 0.102 +0.5382049178171135 0.1636038122914853 0.102 +-0.1945566677866459 -0.05641952431682425 0.102 +-0.0391030600036743 0.09805020944003996 0.102 +0.09566312908149185 0.008985476505909036 0.102 +0.02681779818405991 0.1895340591143252 0.102 +0.6909052840898305 0.1285969927551789 0.102 +0.3817059509476804 0.6605625519443 0.102 +0.5006137558422266 0.6280901478426675 0.102 +0.8157636709831505 0.9995746228909884 0.102 +0.4615157443221047 0.4636324196944308 0.102 +0.07022892599412996 0.7605027081570481 0.102 +-0.01313574590324417 0.8893091898692332 0.102 +-0.1739446310068749 0.820240105614003 0.102 +0.0913435918927723 0.9770671542133333 0.102 +0.2020701495607371 1.046617406956 0.102 +0.3045785041879657 1.109620711728035 0.102 +0.9917860259272819 0.40645695619996 0.102 +0.199744252517849 0.5554331803658492 0.102 +0.3205658313168829 0.540546485157393 0.102 +0.1747404241099047 0.3892871532541547 0.102 +0.4307674212526985 0.1796317079151855 0.102 +0.5196753208393675 0.004156343659810095 0.102 +0.6257377485157596 -0.06996937432786687 0.102 +0.8066488316280985 -0.193595685950414 0.102 +0.7202235514222087 -0.01523763634351834 0.102 +0.8344103880155528 -0.03359941854500965 0.102 +0.9413338210684247 -0.04301772313987808 0.102 +0.4277236618822847 -0.01650634188187173 0.102 +0.3831930953266031 -0.1361389633758801 0.102 +0.6368017088840909 0.5604286975778956 0.102 +0.2219216427440524 2.08455937985675 0.102 +0.4324911413714538 0.3162848346980611 0.102 +0.5285121151327831 0.9162855116470409 0.102 +0.06473661051646083 0.09985713422799226 0.102 +1.006401466185234 1.0741681678656 0.102 +0.9184796005110086 1.287406084071762 0.102 +0.9563119658513929 0.2289040956349079 0.102 +-0.02293348123276077 -0.01284702397579847 0.102 +0.9828919222370649 -0.237094641420951 0.102 +1.386290265087847 -0.1598911714807213 0.102 +1.043799782629146 0.229149562513158 0.102 +1.17996755817908 0.3404545840081533 0.102 +0.7973784356628817 0.6998424563020591 0.102 +0.8416100158278552 0.8027350507965221 0.102 +0.803207741477321 0.5417584268656741 0.102 +0.291402258314941 0.7195663633250237 0.102 +0.08885765579232688 0.2520631842791979 0.102 +0.8489226638682441 0.1260800599010023 0.102 +0.5761498647440907 0.284722269292277 0.102 +0.3030122119360984 0.05342730061847659 0.102 +0.06237933371741597 0.6588794380408469 0.102 +0.1433282454443406 0.07733814744688396 0.102 +0.1880799847751229 -0.01015636108084575 0.102 +0.8587890556760938 0.2975070070432032 0.102 +0.1261511163962301 0.5101574734415503 0.102 +0.9416183138500361 0.1436558712665255 0.102 +1.003302682899799 0.06540238355644094 0.102 +1.119291205107674 0.07354565161700072 0.102 +0.07844672046478118 0.9029568493069992 0.102 +0.3764486404700911 0.4876766715987024 0.102 +0.6072363239203487 0.1223145977589558 0.102 +1.390446511438694 1.589101634797545 0.102 +0.006343026030112557 0.8101485789430353 0.102 +0.6746986595889132 0.2653798836968875 0.102 +0.1796160249036141 0.6372744227042798 0.102 +0.5529030924454934 0.07425204978609068 0.102 +0.5772923631798463 0.7247621657939847 0.102 +0.1101701130149972 -0.08995845234454504 0.102 +-0.04189320647292939 -0.6506903134419275 0.102 +-0.007024139049017263 -0.1549065330194654 0.102 +0.1790845755825639 0.9796798037797591 0.102 +0.384668068082255 0.04147859736693943 0.102 +0.8995219731540804 0.5151804936901725 0.102 +0.05130771176133666 -0.053035664968118 0.102 +0.9240405178190985 0.4572995325198732 0.102 +0.7836251088917795 0.1579866366360379 0.102 +0.3031282817132038 0.406518207749045 0.102 +-0.1225752383016032 0.03613541717609939 0.102 +-0.1401941137638613 0.1169664775359899 0.102 +-0.4684480465309708 0.003124996147966625 0.102 +0.2639820603469262 -0.007700255273623002 0.102 +0.1258456758711975 1.048508687453042 0.102 +0.9405476029323272 0.5916247732736589 0.102 +1.035480958033257 0.56832836452934 0.102 +0.9286361834834808 0.3001996330662547 0.102 +0.4420507559873195 0.6685051746370618 0.102 +0.01927429131375017 0.9488234481629515 0.102 +0.03828677609801002 1.050574968957572 0.102 +-0.1479695999368436 0.9901789492377249 0.102 +0.7672016845371208 0.8476598706179662 0.102 +0.7219648890435916 0.7146854744344324 0.102 +0.9085817803693086 0.6602474031536694 0.102 +0.2538971390978715 0.9868299819340103 0.102 +0.3502150492303563 0.3242569906968465 0.102 +0.846600682933504 0.04617399745512271 0.102 +0.1409800092171672 0.9117539158363921 0.102 +0.7885013064534953 0.4244462065070099 0.102 +0.1841745038358016 0.2299151643494274 0.102 +0.703856240779569 0.572635808261367 0.102 +0.7153230099252943 1.054410367085294 0.102 +0.6898711231981587 1.154715595686391 0.102 +0.1101652057897792 -0.2664045374115766 0.102 +1.160779746359544 0.5959521728474091 0.102 +0.4475988571522495 0.7680723933752928 0.102 +0.5186190628043287 0.7882245678737184 0.102 +0.1746665365602789 0.7870557070760387 0.102 +0.01605234690509771 0.05098919680680389 0.102 +0.1989192430016144 0.1593396421902221 0.102 +0.4596656568633735 0.3982473975774438 0.102 +-0.009938783319590251 0.353051957258141 0.102 +-0.09510296173807146 0.3501985770162923 0.102 +-0.1501085918243583 0.4455711539174304 0.102 +-0.2338527867559902 0.5459151643655887 0.102 +-0.1237873749361008 0.2633230759078813 0.102 +0.2340694105109382 0.2764367872233029 0.102 +0.323889603704679 0.2002776223402084 0.102 +0.2735395255734213 0.1477974042294005 0.102 +0.5910947117774148 0.3936513813276019 0.102 +0.6934826726950305 0.05972365425683124 0.102 +0.5563253256178856 0.4444759753068381 0.102 +0.1817113392057116 0.4676396121435762 0.102 +0.4119292442651195 0.8826053680454881 0.102 +0.7169393151556588 0.3231554163520695 0.102 +0.202933142769147 0.8545452534530249 0.102 +0.7591109793026833 0.9224885196310471 0.102 +0.6831025317080462 0.6695220925835442 0.102 +0.7745899050743794 0.009230330232323905 0.102 +0.7614785210280461 -0.05975908868670261 0.102 +0.6899216978296316 -0.2159787532471563 0.102 +0.6897814220516285 -0.07120400909848938 0.102 +0.9346876663716386 0.7814931881438366 0.102 +1.059087232837671 0.6386136301645875 0.102 +0.5669692446609658 0.5868886706900094 0.102 +0.4808141842049769 0.5586752235983147 0.102 +0.03165589783746873 0.4354318789911508 0.102 +-0.04226482194971903 0.4941963448235486 0.102 +0.2942770390312995 0.9335220215379507 0.102 +0.9530906445297428 1.011404216559076 0.102 +0.8902225951844355 0.8845411115543158 0.102 +0.7963789729468024 0.610763072721084 0.102 +0.2212598783195015 0.6972751821096652 0.102 +0.1331427535718133 0.3482846324509551 0.102 +0.5487114258363841 0.2150411943779777 0.102 +0.5228242135016079 0.3230198528783342 0.102 +0.3211498358670152 0.8013697020689245 0.102 +0.4931692735054347 1.104505592746891 0.102 +0.5576451037657467 1.109820090142668 0.102 +0.8433447378904715 1.066577660309542 0.102 +0.7027498598939567 0.796038335774376 0.102 +0.04283457192254434 0.5720556332362188 0.102 +0.6813838528605198 0.1916222103106892 0.102 +0.7778693423632058 0.2790574893849587 0.102 +0.3891932889753336 0.9974445979889778 0.102 +0.6565493905089237 0.9174392736450603 0.102 +0.3011598848238414 0.2623014428829658 0.102 +0.2719480247000945 0.8664307305351736 0.102 +0.4387671943609781 0.2481414738089867 0.102 +1.049030223976009 0.8246644739590548 0.102 +1.057050761791634 0.9150568304675285 0.102 +1.108952619055955 0.9811748930948742 0.102 +1.076884403800211 0.7769061022619658 0.102 +1.180970472218421 0.7994517858718703 0.102 +0.5860812167959767 1.012736753338615 0.102 +0.06203796051712732 0.8304424990619002 0.102 +0.3082598086487793 -0.4222308803543391 0.102 +0.409384394147713 0.1267732199358421 0.102 +0.6538427490433913 0.9969947536600561 0.102 +0.3700630463384308 0.9502921000246816 0.102 +1.116352121182776 0.1658125311250634 0.102 +0.589376188411028 -0.02549641497604021 0.102 +0.3596941583229384 0.5922452405998669 0.102 +-0.7896436234984363 0.2786418522595888 0.102 +1.032407344368802 0.6992258553629589 0.102 +0.3879367156016787 0.8191363523860012 0.102 +0.02268218568741315 0.263165664514953 0.102 +0.7743771145548526 0.4748703442166658 0.102 +-0.02530511641123456 0.5543847292050157 0.102 +0.6257191417935043 0.8709193046078708 0.102 +0.8149596533148048 0.212354339309837 0.102 +0.6345155495378949 0.8082567708458542 0.102 +0.2146366007307601 0.3427950073461849 0.102 +0.8369381784634213 0.3767867004897618 0.102 +0.9645870455394263 0.6958698203704876 0.102 +0.1168084128807171 0.6582965226197212 0.102 +0.3565695965573242 1.048554088058134 0.102 +0.9645681775360779 0.01640204628328276 0.102 +0.4993134287783916 0.9791201873265323 0.102 +0.3076230762892587 0.4766656166355986 0.102 +0.9635225011188453 0.3533780277508425 0.102 +0.0005799231287858484 0.6920956669158912 0.102 +0.128998475452245 -0.03322861096048939 0.102 +0.1840658722039827 -0.07331511795521048 0.102 +0.5473184114024868 0.6569963132737107 0.102 +0.3996189472105177 0.7138593974270863 0.102 +0.2541991904124539 0.5225540016442687 0.102 +0.6608149813574079 -0.013338602964473 0.102 +0.8941863214673529 -0.003622724591900182 0.102 +0.8779448008368317 0.996727686739788 0.102 +0.239918480308849 0.389220245285828 0.102 +0.267634166121094 1.050986768694268 0.102 +0.2337267591767629 1.123609412183644 0.102 +0.1550981301519445 1.140347451032143 0.102 +0.2256073937565621 1.555943161791936 0.102 +1.049951697377788 1.047096879742919 0.102 +0.4811958047377281 0.1380225764452051 0.102 +0.04298860938556717 0.3940240133740665 0.102 +1.082462678250306 -1.013407482225543 0.102 +0.849463711901592 0.6594909780289419 0.102 +-0.02755964351225103 0.1575645041115972 0.102 +-0.034715795773453 0.2200163489749204 0.102 +0.5980280419474414 0.4906968014046027 0.102 +1.049268957774949 0.4733393029967185 0.102 +0.06631076667450451 0.5026424632901655 0.102 +-0.0543660863342906 1.007680043218459 0.102 +-0.04154230210479165 0.942983386500824 0.102 +0.5880049081202863 0.7703243065070776 0.102 +0.6583350917751025 0.4995129562825864 0.102 +0.08175073859355166 1.125021831258695 0.102 +0.7673152501561624 1.012225462742983 0.102 +0.5625235245437604 -0.06412061246144533 0.102 +0.5981358778534097 -0.1765040525009449 0.102 +0.4962888020035933 -0.2671562167460623 0.102 +-0.04671949496585767 0.04855247524040782 0.102 +0.9993816921119707 0.8057964962691397 0.102 +0.3618930716331833 1.114133432597588 0.102 +0.4296392143889506 1.203302828661542 0.102 +0.2850227455352695 -0.08472654625729603 0.102 +0.6498161477775333 0.3995999855629911 0.102 +0.8205433722158767 0.7546821451017288 0.102 +0.4888862193035557 0.205761306322897 0.102 +0.2192748350451624 0.7546601519037083 0.102 +0.8431065960509427 0.9481274113810045 0.102 +0.2347288817217524 -0.05996853307042574 0.102 +0.5297718872259523 0.8455121371497656 0.102 +0.4939387841575518 -0.04298446523359749 0.102 +0.4217162548006296 0.6268629836191351 0.102 +0.6534038785740557 0.6023930018568247 0.102 +0.07792550349394402 0.1545376183328431 0.102 +0.1191941479289277 0.7858311661051831 0.102 +0.3047938659519762 0.6714078278186627 0.102 +0.5803818505649038 0.9065540899916027 0.102 +0.4624448521604804 0.9034009310734142 0.102 +0.4788647222341896 0.01415875361773028 0.102 +0.6234296135647664 0.6839175258827018 0.102 +0.149921427165828 0.03022168051335106 0.102 +1.067565756429054 0.4016728361632335 0.102 +1.022746550303806 0.3669061717815165 0.102 +0.8701055432064791 0.4188283604291542 0.102 +0.3908469297394476 0.2029620860161648 0.102 +0.8945806270376785 0.8218570055647114 0.102 +0.1048751539432402 0.3023960259137536 0.102 +0.2297747230007587 0.03133237999773097 0.102 +1.005789818632003 0.8850012434793282 0.102 +0.1057178834872428 0.7054271725100825 0.102 +0.002695891909317023 1.004884017618582 0.102 +-0.01892233560883546 1.065836185359383 0.102 +-0.09759182789952726 1.155896609612491 0.102 +-0.4492198367398001 1.195708521019827 0.102 +-0.4397905557654075 1.7777706519234 0.102 +0.7535216965686676 0.1114335319582889 0.102 +0.8977422624909106 -0.05423191644504645 0.102 +0.845271521827172 -0.1175522464424846 0.102 +0.7520422547612688 0.5732676538214982 0.102 +0.5480572858750922 0.971203258009637 0.102 +0.2520783013276017 0.5858570319017509 0.102 +0.3405807122689973 0.7086465288734308 0.102 +-0.155473989083436 0.1990682266638866 0.102 +0.002149918501187229 0.1244531524327908 0.102 +0.5026661694558696 0.432130943778025 0.102 +0.4107505138959902 0.5097468868409334 0.102 +0.4763991647159846 0.3458163723107514 0.102 +0.03506242427721541 0.0005095053315539201 0.102 +0.03409263567390323 0.7287968340522504 0.102 +0.3623891133953109 0.5424050479829601 0.102 +1.02452474161524 0.5222422579782048 0.102 +0.6470016255622097 0.09951963351259825 0.102 +0.9992887674134803 0.4644669582470024 0.102 +0.4057048843854839 0.4450029559622964 0.102 +0.57987892947334 0.1705166591600155 0.102 +0.1560079679585613 0.5661747590443689 0.102 +0.7301648244168467 0.2634500777094693 0.102 +0.6452741560575399 0.1630797164874996 0.102 +0.3058740690844388 0.5995566677076642 0.102 +0.7316938948146354 0.1625335894162003 0.102 +1.088159608585583 1.384384234756329 0.102 +0.4915457566811037 0.5021620605932223 0.102 +0.5717481765166091 0.02359501975554351 0.102 +1.005277653222786 1.021792151741224 0.102 +0.9553993557764555 1.053936514558389 0.102 +0.6721226113673495 0.452502884010907 0.102 +0.9384699880543341 0.3923230292763721 0.102 +0.7397253569692526 0.04154067588091399 0.102 +0.3358627308877761 0.4417319070265639 0.102 +1.0129832296173 0.2026775383134678 0.102 +1.000556865506031 0.2527205517901525 0.102 +-0.07687838317878254 0.6063438706520916 0.102 +-0.05193613927426899 0.6669226459105837 0.102 +0.622878543232898 0.2514265598313795 0.102 +0.9078127283680691 -0.5985926360775126 0.102 +0.08643809238311018 0.5476171751726218 0.102 +17.757554888211 -1.255665254495647 0.102 +-8.068544767207896 -8.027196171999799 0.102 +10.994618041037 8.37648131248263 0.102 +0.9781873179694476 0.118169657452912 0.102 +0.5747556766557746 0.3311262725256905 0.102 +0.9164554108877487 0.2347264616854762 0.102 +0.1312559330151431 0.4048233860583848 0.102 +0.4906648293691703 0.6792233000723263 0.102 +0.009505063252157444 0.3100985311226057 0.102 +0.2085971363442559 0.4992748374251789 0.102 +0.853161500543947 0.5476470412579961 0.102 +16.29850448059283 4.337252358514992 0.102 +15.80327207222707 -4.557738161200698 0.102 +0.07743636962028827 1.028552038048453 0.102 +0.3841945903306124 -0.007081564470304604 0.102 +1.173427278998276 -8.452727862674248 0.102 +0.9828445665388675 -0.01861223556074809 0.102 +1.038223112780168 0.280936017198208 0.102 +1.061104609965141 0.3389315615159967 0.102 +1.149885232602385 0.2623487678753338 0.102 +0.1081847900809573 0.1182589706477441 0.102 +0.0988159614922889 0.05750867288020547 0.102 +8.844915697814908 -2.876050851270409 0.102 +0.1412794956886085 0.2483784275683753 0.102 +0.02673705004986174 0.8706469484290735 0.102 +-8.22721216123362 8.225452208974144 0.102 +0.7219568919348694 0.4562809688605359 0.102 +0.1743027179762723 0.0588297043069733 0.102 +0.8934482902977992 0.1653708374509519 0.102 +0.7818430340195192 0.9675335611726823 0.102 +0.978373888878325 -0.1401742394039512 0.102 +-0.09347171064437287 0.7126736095130068 0.102 +1.060244567975657 0.05704915534639609 0.102 +1.140131026157937 -0.04249985521009116 0.102 +1.075758760779681 0.1160465163389661 0.102 +0.3487020609779954 0.08902986399850638 0.102 +0.03766039899154534 0.6250356668315651 0.102 +0.8574078223721027 0.1777997822228138 0.102 +0.460155693695119 0.591271187384268 0.102 +-1.111681211984331 8.27367973054494 0.102 +0.7525326955423945 0.3653246987019648 0.102 +5.380712697627945 -2.174366917156823 0.102 +0.7651062533761958 0.724390718913174 0.102 +0.8076981317562444 0.8049618243727751 0.102 +-7.974499862375868 0.8516981399823262 0.102 +0.5388892617047125 0.7606634856819279 0.102 +0.889166936127228 0.1278720527426509 0.102 +0.2679850436918327 0.09454645365338531 0.102 +4.317203836404034 -5.774994145235812 0.102 +-5.93320511854806 -5.307261839884852 0.102 +0.3156710161021876 0.7624763961393706 0.102 +0.4470550917149869 0.715403784030939 0.102 +4.800598439403776 5.997402005103853 0.102 +0.2124587799376649 0.4351220153138426 0.102 +0.9302161604098576 0.1849817603605569 0.102 +0.4726131191398842 0.3079313549099764 0.102 +0.8891260317431633 0.779095503162238 0.102 +15.08868282005773 -1.999682698781321 0.102 +-0.05166890451682871 0.3247092020223271 0.102 +0.7142771051904377 0.8999459430448647 0.102 +0.3980535374797339 -3.30662277171864 0.102 +1.808116164062278 0.06534571431081419 0.102 +0.6941128766883642 0.3667999816868054 0.102 +0.3956605942451465 0.3518653344887656 0.102 +0.3915829340299064 0.3034242311599105 0.102 +13.65424069694158 5.97259055424486 0.102 +13.59848516544306 -5.971353804410459 0.102 +0.9727565459208551 0.1714404503466606 0.102 +0.3366408502192449 0.3731403361092567 0.102 +0.7834020741403681 0.6524717611201343 0.102 +0.84848760320539 0.8506833235348176 0.102 +0.1286028983642967 0.4704211081592455 0.102 +0.5666210092052046 1.044891131759017 0.102 +0.3372631132362737 0.01709253960584051 0.102 +0.3308625710269745 -0.0993444765836323 0.102 +0.3204498873079571 -0.2255578272687122 0.102 +0.3921868452398441 -0.07109079336990162 0.102 +0.5845545034819449 0.07617063388606571 0.102 +-3.915671673034128 -5.976357400993689 0.102 +0.8341676017074839 0.07356986261909045 0.102 +1.038868790392037 0.4197029288526438 0.102 +-6.202111483948313 4.93221038726879 0.102 +0.1554627052844396 0.1326202344046655 0.102 +1.120719704637678 0.821444928928785 0.102 +0.5551904321276252 0.1061478193107407 0.102 +0.5816934582994295 0.541849048065524 0.102 +0.7846057525357933 1.058635125423212 0.102 +-0.004867188917760501 0.3864833716083928 0.102 +0.4348883337692118 0.03070405365539314 0.102 +0.9723894223480836 0.5729096809932096 0.102 +0.8446634988467776 0.2615978519550758 0.102 +12.69167049175834 2.997112098282792 0.102 +1.068101352066177 1.083057819912708 0.102 +0.03911749335724582 0.9930762412290947 0.102 +-0.08896824651908822 0.8224217550179135 0.102 +-0.0737069884341139 0.8910458304208667 0.102 +-0.07461647817310066 0.7646751836458671 0.102 +-0.0348096345852045 0.8441382140947905 0.102 +-0.03190208121989908 0.7842029183985354 0.102 +0.8331170566266441 0.3247650187352312 0.102 +0.05817816492128663 0.2878962657974666 0.102 +-0.004857277531253324 1.174250623596437 0.102 +0.09066480889993482 1.205015770714335 0.102 +0.06980759390136419 0.1994812520740403 0.102 +0.5193207379735786 0.1074472362907787 0.102 +0.8574162593407537 0.6905408396355593 0.102 +0.1897136018903703 0.8885908439534761 0.102 +16.12762241048213 -7.869450147954459 0.102 +1.094238149221697 0.540217952072847 0.102 +1.07092500558582 0.5890639078228345 0.102 +15.86818374549289 8.246690735772734 0.102 +1.069606115528855 0.1755859696651299 0.102 +0.4419431846356087 -0.05511365517996437 0.102 +0.6835726848206367 0.5472261458565839 0.102 +0.2223922135365833 0.6212536001689305 0.102 +-4.354919826995978 6.068556567790324 0.102 +1.062470162391958 0.94919520752077 0.102 +0.8988565358888927 0.3118364299254661 0.102 +0.3057620190096025 -0.04307518695524311 0.102 +-0.06173075847876918 0.3772403039651835 0.102 +0.6818709183794026 0.7032846201261942 0.102 +0.8399960994345428 0.5034593060031241 0.102 +0.9141885006140547 0.6142252305995738 0.102 +0.3966279661251977 0.1466489428388675 0.102 +0.06994166831988513 0.9396629919718181 0.102 +0.01625334675517556 0.9107731661485543 0.102 +7.245697152836319 -8.407099969199876 0.102 +-0.08756891076753184 0.0780945544185702 0.102 +-0.07166621240734461 0.005888851507574037 0.102 +-0.07376998392537865 -0.07773624944062853 0.102 +-0.01819828396186026 -0.06392881388255604 0.102 +0.6701285174012706 -0.05352012137696417 0.102 +0.6098557861288759 0.5959564370566059 0.102 +-0.06371447220138229 1.062633124997904 0.102 +0.9841886523063 0.6063176231341389 0.102 +0.6186207171563158 0.2987872207761667 0.102 +0.7473258905186573 0.5278809406908784 0.102 +0.1189895911533663 0.8875928396898538 0.102 +0.9346982743229892 0.4994821267237338 0.102 +0.9336445144888894 0.904962321426366 0.102 +0.9478445626011364 0.9511004971094527 0.102 +1.101440095143802 0.2242836006479824 0.102 +0.1181906493211585 0.204595792706635 0.102 +0.8878869615419058 0.480827363557142 0.102 +6.854126924623968 8.399750002497356 0.102 +0.689683661280883 1.026704010146655 0.102 +0.6991041991171247 0.6178589170961317 0.102 +-6.151787255213478 -8.670256050343889 0.102 +0.2969024897345913 0.2134309137447463 0.102 +0.8921458204714413 0.5701645964554787 0.102 +-5.017833749564296 -2.97153765408504 0.102 +12.93008592500053 -7.994266869158046 0.102 +0.06271017506669752 0.03414430662065576 0.102 +0.142339644434558 0.9922185562561058 0.102 +0.1751920581946828 1.031656492128341 0.102 +0.2732121171464391 0.7588911008961644 0.102 +0.5398200117767217 0.258370645969687 0.102 +0.5257670363854975 1.078758102147628 0.102 +0.5247573324341218 1.168960364518934 0.102 +1.411758350358554 5.660480459824256 0.102 +12.60495635747695 8.678985532347129 0.102 +0.8712945495723455 0.06790885509768078 0.102 +0.938539382560165 0.7357276922145755 0.102 +0.2161391684848372 0.9650591191447803 0.102 +10.47040823214504 -6.23685533366146 0.102 +10.58883888427603 6.208025543454956 0.102 +0.7258640415197422 0.7572515642751755 0.102 +0.7380718095527196 0.815745507056875 0.102 +1.024594212002912 0.7853671020801283 0.102 +0.317862012740282 1.021759729506222 0.102 +0.8344627739944643 0.4164332725976277 0.102 +-3.785997467837496 0.08129739138966105 0.102 +0.243863021287729 0.1672336041649077 0.102 +0.08867092658633852 -0.02695803229783025 0.102 +10.64645486889532 0.8553192335476025 0.102 +0.4758438858325889 0.7909248794555838 0.102 +-6.212827100294987 8.370926962587095 0.102 +0.5131795852875678 0.5836285867027187 0.102 +3.734837523044565 0.2256098737010388 0.102 +0.3470516984868661 0.8234490777281065 0.102 +0.8035283534808753 0.8566941511744465 0.102 +0.7499302195904922 0.684707736964663 0.102 +0.5016253245703111 0.05547266660975167 0.102 +0.0891568491847011 0.3768500457939198 0.102 +0.09119264620221981 0.6338134540703683 0.102 +1.005595590652861 0.03099543294675742 0.102 +0.9314106558840817 0.5334027036963803 0.102 +-2.573916357005505 3.27556335470639 0.102 +7.647944018960027 -6.149343286405649 0.102 +0.8065533816186808 -0.0371225404067548 0.102 +0.2660706848051978 0.6824539980861849 0.102 +-8.043479344020737 6.413016189176403 0.102 +-8.188605697461821 -6.219542757607135 0.102 +0.1754542713270306 0.333286384825221 0.102 +0.8092001567268237 0.9310347133749105 0.102 +2.192474480941008 8.207683084414432 0.102 +1.255639640160788 0.6855239970238181 0.102 +1.299390823531235 0.552457745667148 0.102 +9.353263804011856 1.43273192621627 0.102 +9.038387473324461 3.498358983067383 0.102 +0.05659104441533851 0.7141079976535138 0.102 +14.34858796924284 0.2142354164150892 0.102 +0.1762588797605706 0.540440340013402 0.102 +0.9665475766799445 0.2743924772404054 0.102 +0.4522022576053228 1.530774453228253 0.102 +8.265276789354612 -1.540584558609023 0.102 +0.7303176983430567 -0.05460379454838914 0.102 +0.1871681093354405 0.1085511314842375 0.102 +0.3372825637198734 0.6363266782966632 0.102 +0.5328742841301284 0.7088416476593005 0.102 +0.1933200826690772 0.6805453820115664 0.102 +1.157341057946707 -0.1463398691445315 0.102 +1.018749274049162 -0.05793292353806387 0.102 +0.9766172930482339 -0.06983589148594614 0.102 +0.9268498339772335 -0.07691999737070787 0.102 +0.8775334993517416 -0.1203785481903002 0.102 +0.1673822521256076 1.067406366470413 0.102 +0.6744482652749803 0.3013535643817293 0.102 +0.7703165820772873 0.3107423961264475 0.102 +0.8501728775444963 1.036848969489056 0.102 +0.1884145532890734 0.2723536485303076 0.102 +7.799020113108843 5.840125163172948 0.102 +0.4198476698531936 0.07675112267566063 0.102 +0.03556893015958207 0.7727986999122481 0.102 +0.2500341957163357 0.9563470729754274 0.102 +0.1780867337870665 0.9233328431446349 0.102 +0.6607345361640897 0.2285428107549418 0.102 +0.703420977415432 0.2376710148812655 0.102 +18.0847798296296 6.565325109283293 0.102 +18.42972166275934 -6.118956813736421 0.102 +0.2693997355385181 0.02395310306868684 0.102 +1.104031573684741 -0.07092381555127496 0.102 +0.1375344798560746 0.9530886737381397 0.102 +-1.833617953294117 -8.774163498882283 0.102 +0.2136905692098711 1.016120780895253 0.102 +1.028606801031093 0.7531194252402628 0.102 +0.5618756119063345 0.4144009451688595 0.102 +13.0509388213551 -3.024143913166149 0.102 +0.3001342857638722 -0.01068494148741926 0.102 +2.766611134651537 -3.43330690907655 0.102 +0.3228087047410781 0.9156143398831343 0.102 +0.0594175510978503 -0.1199338724314869 0.102 +0.1854679890499476 0.5845215422554673 0.102 +1.834221198333621 -6.736458292504278 0.102 +3.910056230750206 2.982451067151881 0.102 +0.871956240207822 0.9249784557100649 0.102 +18.16377450179882 2.325465538964919 0.102 +0.8897843417599356 0.2811270968816048 0.102 +0.798564174526617 0.1154489155757264 0.102 +0.1148494159464106 1.092385827509162 0.102 +0.1701690582734593 0.1819243540002829 0.102 +0.1463175469094001 0.6312972632160841 0.102 +0.5964071461129932 1.082985842779227 0.102 +0.6318380501528224 1.149884289336693 0.102 +0.3404456643850424 0.2906919643945269 0.102 +-8.21995470895583 -1.976424297149895 0.102 +-3.036726162499046 8.279581529255175 0.102 +-0.01384080954450631 0.4500754412659645 0.102 +0.1493688322347702 0.7469918416922877 0.102 +0.166692206846466 -0.1419201675328486 0.102 +7.040215257046557 0.7981706837036794 0.102 +1.06505692156696 0.5130048153566155 0.102 +0.286122468559906 0.1794561406448367 0.102 +0.9569692517955557 0.6200306573256203 0.102 +0.2601944703350376 0.4203210912937518 0.102 +0.476446050496345 0.9316955760471402 0.102 +0.8220061736376574 0.007347604552419094 0.102 +0.8025391877587504 0.04346395750094698 0.102 +0.5870048003488721 0.2442948759325508 0.102 +18.5972241508565 -2.895208830796268 0.102 +0.2094110787386306 0.2107833300597123 0.102 +1.101524783958154 0.4830162753810805 0.102 +-1.318002558499414 6.591237874905301 0.102 +-0.05170443849939049 0.7013356900815637 0.102 +0.435254694876213 -0.1307515525326609 0.102 +0.6211403366400673 0.7466922465488222 0.102 +0.1659088720976823 0.8214124111715542 0.102 +0.7390224075288024 0.08985343172582416 0.102 +-8.460643908832607 3.353364128873542 0.102 +-0.06544850348815551 0.250500740148995 0.102 +-0.07296361470320523 0.299634443924512 0.102 +3.116371044918559 -8.383686157619298 0.102 +0.5322808679511185 -0.04720846953627914 0.102 +-1.166961284568557 -6.360320337671025 0.102 +0.9206374844966135 0.7099613608707293 0.102 +0.4644597727766242 0.5226465770242511 0.102 +0.7946029810308557 0.8877074437446199 0.102 +0.7175098570020189 0.6691876723792965 0.102 +-0.04538791132361535 0.5289136221196463 0.102 +0.1088103749271485 0.9140087763276218 0.102 +0.9348379902113991 0.3294222824299715 0.102 +-2.702400462292604 -2.671116458683818 0.102 +0.3131109217155299 0.1048684760566335 0.102 +0.9678720635290946 0.4409329319215508 0.102 +0.3184802188148906 0.1570385499884327 0.102 +1.013647861343827 0.9346850137935038 0.102 +-6.192609092121936 -0.8937798031294012 0.102 +15.94716387472986 1.427664545828306 0.102 +-0.191876839130268 0.7036107954841537 0.102 +0.8272154622986329 0.4509564418586166 0.102 +0.2142311083508279 0.8189580802124153 0.102 +0.9186061044525973 0.02851021777331379 0.102 +0.3111580890763753 0.8602365480350229 0.102 +3.526696842874171 5.045856804247696 0.102 +0.5202269779404142 0.4815482131221492 0.102 +0.7568740408094129 -0.02941165258670687 0.102 +0.5947991954833478 0.6781969358581597 0.102 +0.5636064339095019 0.6302543050822355 0.102 +-6.079859721415898 1.132355641429533 0.102 +0.05018031055036733 0.5281749289111862 0.102 +0.7373611666674568 -0.1013816474292982 0.102 +0.7693881774823065 -0.1296781025204189 0.102 +0.9190237982899652 1.020009132909522 0.102 +-0.03350047551237098 0.6066389366056885 0.102 +0.2208060228326915 -0.02363410589083107 0.102 +0.2239473077883308 0.2411220426069798 0.102 +0.7788779247681619 0.1882884574162535 0.102 +0.6753280752391702 1.055423916308557 0.102 +0.006707582837906088 0.5737954984065952 0.102 +1.136419485833078 0.4101288275786128 0.102 +0.2891790633917443 0.9801664764554753 0.102 +0.340963850933399 0.51104884179521 0.102 +0.3186320948250247 0.3102366616102182 0.102 +-0.01256797781050607 0.9283977425320702 0.102 +0.09924215859547661 3.883000333290253 0.102 +0.6578921064407354 0.8503161674065988 0.102 +0.6507470658582003 -0.1281912857653586 0.102 +0.723602797029984 0.8690719243069313 0.102 +0.8858969562896261 0.03843526462810218 0.102 +0.2288459678838146 0.1382898203158761 0.102 +0.3724537414082836 0.8980581185869045 0.102 +0.2358106657425154 0.88985831365887 0.102 +0.1627298005892039 0.4206474557494609 0.102 +0.3343524966022559 0.2331611060785622 0.102 +0.03845277662837585 0.3624869293312609 0.102 +0.2780100435046421 0.3661092253847136 0.102 +1.039423957328575 0.6138207672362554 0.102 +7.964706101062169 -4.231170699244386 0.102 +0.4631114040412994 0.6396692433637408 0.102 +0.6592047529151153 0.02879012796041385 0.102 +0.2742305688891905 0.2902870754571854 0.102 +0.4338764485043551 0.8223766870909068 0.102 +0.4024104417794399 0.7830915800121336 0.102 +0.02863226447617178 0.1467915688547493 0.102 +0.8215667031667986 0.5747948811688344 0.102 +0.6467233005108972 0.9506720930513443 0.102 +0.5724572977815863 0.8086015427046347 0.102 +0.4959760368616878 1.037391166669967 0.102 +0.6204242109094701 0.9092324061873452 0.102 +0.294681131614885 0.8870297058313866 0.102 +0.06839481229453849 1.063135321533684 0.102 +0.05041181719053199 1.098463856952251 0.102 +0.615994835217179 0.3519269494458502 0.102 +0.4353004354247917 0.3603842863703183 0.102 +0.9550463673229397 0.6666741669075874 0.102 +0.1602322160937221 0.8759436791092985 0.102 +0.8597132256995922 0.7527619805460541 0.102 +1.035869631345303 0.6472774964079691 0.102 +15.29474461588653 3.022337305061984 0.102 +0.2517094579923349 0.8455954631444705 0.102 +0.4453117699992082 1.067142995697861 0.102 +0.4470994356074042 1.118050680411617 0.102 +0.41390331781878 0.9840940359523966 0.102 +0.5966423738764178 0.424361627529357 0.102 +0.07634941686935813 -0.05607720477941423 0.102 +0.448727604049723 0.2205653523127573 0.102 +0.4035676931722358 0.6722027665585276 0.102 +0.4023644272496733 0.9124714926396302 0.102 +1.064370372416274 0.6883138658730744 0.102 +1.103427858470932 0.6539198794631763 0.102 +0.7978224682841559 0.3787408688364906 0.102 +0.6187840387459652 -0.03385748906523621 0.102 +0.4120702805358733 1.033306296778927 0.102 +-0.07126969050019495 0.1311717145434491 0.102 +0.2523474448361863 0.9060394175049868 0.102 +0.420406394733093 0.8529942961710301 0.102 +0.5910454402094514 0.4694817409050221 0.102 +0.7747806679079823 0.2351875484343214 0.102 +0.5548759792638454 0.3657203828481155 0.102 +0.1961494132701873 0.2985703437473723 0.102 +0.08250419419390131 0.7987465085825867 0.102 +-0.06516980987887094 0.5731069879395522 0.102 +-0.1112068510058544 0.5860554669947989 0.102 +0.750568385047341 0.4260581077910779 0.102 +0.630423519384844 0.9807279178306509 0.102 +0.2961517199168571 0.443415333978907 0.102 +0.3862335868387753 1.039748965479155 0.102 +0.363263025183105 0.9767547127402064 0.102 +0.4950026792783427 0.7673030412246689 0.102 +0.5614278660450537 0.9335070649951026 0.102 +0.3496468905598052 0.1678652874864015 0.102 +0.8383333799032833 0.6268197435455712 0.102 +10.31047279775486 3.933239562467382 0.102 +1.00039258465709 0.709967805350801 0.102 +0.7230988580837576 0.5464693343427854 0.102 +-0.007934151574348723 0.0719812105839492 0.102 +-0.08133474892798098 0.9865906082962393 0.102 +0.6656809530029256 -0.0955035869105168 0.102 +-0.05092864954013983 0.9097994719759659 0.102 +0.6255324433570506 1.020432870319999 0.102 +0.2022523988259566 0.7230894479399892 0.102 +-0.01399754614544161 0.9714205753615724 0.102 +0.4901071069585002 0.8671909165137515 0.102 +1.358226925610743 0.3194185900075628 0.102 +1.834963826004787 1.050486358494389 0.102 +0.05556159500145888 0.4591505522824137 0.102 +-1.222772857151518 -0.900731950496335 0.102 +0.7800881246454796 1.258212241376241 0.102 +0.9718901846072465 0.3238015159922653 0.102 +0.4061666741002496 1.120925604584644 0.102 +1.075735178648527 0.7219691647220523 0.102 +1.118786508117866 0.7540957183078699 0.102 +0.9795148656548177 0.7836371570099239 0.102 +0.7254378441689715 0.5964693248632216 0.102 +0.2130356422022045 1.234568996654883 0.102 +1.051662661601616 0.9967500389244082 0.102 +12.89353131590317 -4.8489308382654 0.102 +0.4080964724018646 0.2371848847395779 0.102 +0.4923317787578363 0.3957730467236794 0.102 +-6.080307060735974 3.46216612426033 0.102 +0.3949599505785821 0.9636459273665828 0.102 +0.2546910153855033 0.7220121939383536 0.102 +0.8099107127596135 -0.06779514825798177 0.102 +0.2675943350457363 0.2472403959735573 0.102 +-8.588596095222139 -3.313620997272722 0.102 +0.5140160562628795 0.2289798156052534 0.102 +0.6105902024593746 0.837092784620129 0.102 +0.8591625928427012 0.344991095351516 0.102 +-0.07228860709048199 0.5081775130071923 0.102 +-0.1442234886104708 0.5025773335961105 0.102 +0.5104322609253019 0.8265252218886898 0.102 +0.2755395969874661 0.5451943971624486 0.102 +-0.07565852791549441 0.9281736338183841 0.102 +15.11019341941139 -3.058106909361443 0.102 +0.4334616969065429 0.2743320370651561 0.102 +0.1934024059505877 1.103066164533083 0.102 +0.6619313059303737 0.7737726335860146 0.102 +0.660648839964418 0.8831797833428504 0.102 +16.59345360639814 -1.336978704682112 0.102 +1.061344415110165 -0.03803730060106053 0.102 +1.092682423178668 0.01190963306013584 0.102 +0.3797495193362944 0.8547759664085831 0.102 +-0.05217933505340579 0.8057657309758457 0.102 +1.065752102240369 0.8069860948002751 0.102 +1.124063349018239 0.5168330407056529 0.102 +0.6963377578128984 0.01721530465007257 0.102 +0.6814302498698041 0.9606364435948332 0.102 +-0.008871864128020797 0.02953567877689587 0.102 +0.270409917258399 0.5030838050629208 0.102 +15.40033462979208 -5.821501998293374 0.102 +0.4574833445454909 0.4307488982193713 0.102 +0.2730952194560979 0.8274886058755763 0.102 +0.6862620511223468 0.7351279776198281 0.102 +0.0722341682034556 0.5956004064431479 0.102 +-0.08337118394728997 0.4511250974919089 0.102 +-0.1228716502393357 0.4066994658010571 0.102 +-0.2311043081193704 0.4184580215336213 0.102 +-0.4436807691400644 0.4136461711535688 0.102 +0.4676839028146681 0.9708264088910729 0.102 +0.7273801307490629 0.9364102462244603 0.102 +0.7389118239426796 1.069635189143428 0.102 +0.03738762232017837 0.07788882772477575 0.102 +1.026792950850077 0.3321704159333674 0.102 +0.4101868231681625 0.3996366074865665 0.102 +0.139733247012159 -0.07237993715584343 0.102 +0.2369415651228638 0.6666064480036525 0.102 +15.16484388265159 5.839583633232047 0.102 +0.31730929774273 0.9554212557979309 0.102 +-0.007253994152237891 0.8431950670683235 0.102 +1.057390073754877 0.5464331756335035 0.102 +0.5936315664963341 -0.05011334388656936 0.102 +0.6699054565685576 0.5707545479391903 0.102 +0.8028998568653978 0.3095345652256276 0.102 +0.1135398479006916 -0.1424584695117878 0.102 +-0.006655755371792835 0.4999050177999331 0.102 +0.7085810094468168 0.8258452566770829 0.102 +0.3502932298938661 0.7966923645830922 0.102 +0.6875531536113261 0.4753839369311623 0.102 +0.8897104311845454 0.6359986142215711 0.102 +0.9558071262505454 0.8060703794694337 0.102 +0.1951643970414223 1.14569649335541 0.102 +0.5739500044374556 0.4872988952958242 0.102 +0.5565914683330232 0.8614814905119434 0.102 +0.4710270213197805 0.1630522340775509 0.102 +0.8533261882478824 -0.07087816537104753 0.102 +0.03867287962862603 0.4854954978276603 0.102 +0.5516476908565004 1.00416234251293 0.102 +0.8845966593402225 0.6778644296061221 0.102 +0.6875949229667788 0.09796653952348638 0.102 +1.076473287391416 0.1457147985182653 0.102 +0.4409480882130572 0.1429254450982702 0.102 +0.4921093830302619 -0.01653141201509982 0.102 +0.4941518808270228 1.005759202202424 0.102 +0.2491358504079852 0.3491559939833373 0.102 +1.04827546215493 0.8797543619825204 0.102 +-0.002132297900053256 0.7656052949440219 0.102 +0.6223846270519473 0.004543267382008357 0.102 +-0.07080867940044977 0.8590220923724369 0.102 +-0.1139935127578038 0.8636619854523826 0.102 +-0.01591715426726619 0.3220242148885893 0.102 +0.6295342702123716 0.7778243412773578 0.102 +0.6340244406110018 0.6518991401820092 0.102 +0.8689400801521971 0.9616925990430858 0.102 +18.60237076229318 3.669364701680282 0.102 +0.8146897273332527 1.031385642767551 0.102 +0.5594018173839748 -0.03075029134891504 0.102 +0.4210132304073821 0.740212137895492 0.102 +0.1633250282417406 -0.05123092103630654 0.102 +0.4526484654799187 0.1055249817119901 0.102 +-0.1376012951931625 0.3247518648382184 0.102 +0.9509929871795086 0.4696292190429375 0.102 +0.03132596459360511 0.701682019906117 0.102 +0.7686355784042627 0.625837446730514 0.102 +0.3872984606576039 0.6262780667369109 0.102 +0.9111681188803343 0.8633907227229322 0.102 +-0.2823419308121998 -0.3709663791169926 0.102 +0.2137836756509948 0.4663781818077437 0.102 +0.367341131928782 -0.05956360282948667 0.102 +0.1556317600865576 0.4922205547642893 0.102 +0.3634407567917324 1.002608573434556 0.102 +0.2505627416294001 0.06531960001886571 0.102 +-0.01964502169065437 0.2574460882890261 0.102 +0.2106608932506153 0.3712694525099622 0.102 +0.8064868407311057 0.2720064611341563 0.102 +0.02669527886890338 0.6544717329105969 0.102 +1.01252819142561 -0.09095785568396449 0.102 +1.024581172593363 -0.1222846562976532 0.102 +9.756812981528309 -8.618252181231266 0.102 +-0.06729308599335096 0.7346418746183947 0.102 +0.5275437810385646 0.1967782954578925 0.102 +-0.133220867417717 0.8911005414529163 0.102 +-0.2868175358158642 0.9384277539964212 0.102 +9.197436431569903 8.845195387196249 0.102 +-0.1288621254240122 0.1570638258985378 0.102 +-0.0007613467070235041 0.2191829964858343 0.102 +0.09117749272742171 0.8459625576424985 0.102 +0.3181753523239821 0.3550291179102957 0.102 +1.098762993501947 0.9105407926283311 0.102 +1.080656931095227 0.8800797476903377 0.102 +1.151600807487982 0.93956269901047 0.102 +1.19042366932024 1.028104761055352 0.102 +1.49064861153218 0.8038358266431456 0.102 +1.337348363098759 1.179305619294726 0.102 +0.3891786825053946 0.5877139623180833 0.102 +0.829589653467289 0.140216364702673 0.102 +0.9702309769057975 0.8800379334532565 0.102 +0.04108880974419442 0.8066236084262443 0.102 +0.09745923516954802 0.6813712685748461 0.102 +0.5787730844465494 -0.614565755452893 0.102 +-0.1161710409628493 0.2311497449338443 0.102 +8.11411702685629 4.439847713277366 0.102 +0.5848713462129101 0.8704394627891168 0.102 +0.5212327146404416 0.3500199304493509 0.102 +0.5534521582777922 0.5576372227311269 0.102 +0.6264663938331227 0.3856468744154785 0.102 +0.9879315097676159 0.6755141870766952 0.102 +0.1479283820489308 0.3200160988904874 0.102 +0.1816181737024162 0.7472207663378865 0.102 +0.6043487523756825 0.8084666346819617 0.102 +-0.0612377919985134 -0.03691143067853069 0.102 +5.55305150066344 3.265384206219555 0.102 +0.5409117117420346 0.6067359846242137 0.102 +0.9448490019440775 0.1114063048572106 0.102 +0.5872663826628346 -0.09030913078374472 0.102 +0.5589445439217784 -0.1166398885454689 0.102 +1.002384845165965 1.981013133995039 0.102 +0.3179922052915422 -0.07028673243165247 0.102 +0.317787562507166 -0.1177913982269694 0.102 +0.2781322097792219 -0.1459918553184506 0.102 +-0.02404553925284935 0.6591610062117854 0.102 +14.14217179611502 -2.645664840649078 0.102 +0.2403653415143089 0.3106014708924817 0.102 +0.9182462939301214 0.9682892636667993 0.102 +0.3242272421513692 1.058230722295773 0.102 +-1.960652016716924 2.245672179080432 0.102 +12.83072098779598 -0.475396801333224 0.102 +1.101483921996203 -3.610450515499013 0.102 +0.01349900275450435 0.5408574661317966 0.102 +0.2069666244116644 -0.05470049191251752 0.102 +0.8696454446768508 1.197550933635605 0.102 +0.9477589884132726 1.134979686423857 0.102 +1.043467874807026 1.176603131640895 0.102 +1.14144062859611 1.202907305609724 0.102 +0.8154618389924865 1.138884759787047 0.102 +-3.152920139475147 -5.021445865619472 0.102 +0.344432624679255 0.5589506681958055 0.102 +0.5139306922033671 0.5373814478236136 0.102 +0.7659112150580285 0.38422020197246 0.102 +0.8610130992385829 0.8985420703576502 0.102 +0.4474863633508197 0.5612340315550201 0.102 +0.7098952476595963 -0.1324583415754021 0.102 +0.4200574712218868 0.4683660471165972 0.102 +1.035720974998757 0.06945146482910562 0.102 +0.6131920815171585 0.1713385948149994 0.102 +0.8737011424246018 0.3867729397077385 0.102 +0.006488166212006343 1.077073496644502 0.102 +0.6722569031397454 0.8108363272363001 0.102 +0.5202623040413086 0.2962143179525621 0.102 +0.6343479416088367 0.5120925738223182 0.102 +1.026306994432275 1.063188434273076 0.102 +0.9705059539501845 0.9849777089672392 0.102 +-0.01485934210103668 0.5304364898708342 0.102 +-0.9207699279572246 4.596093614652371 0.102 +6.094181034091901 8.826367892895284 0.102 +0.5736774966673399 0.2015689370712641 0.102 +0.5018061868942394 -0.1734649986655611 0.102 +0.8660519132440904 0.5028942061695596 0.102 +1.039826026265803 0.03303668405870537 0.102 +0.8213975165540918 0.6678100029355482 0.102 +0.9331238542380035 1.087861311688306 0.102 +0.8827209544423164 1.087849703291325 0.102 +0.8666178801094784 1.058775019247557 0.102 +0.6239331532600436 0.4831020572768259 0.102 +0.1761020402986858 0.03848078641639751 0.102 +0.2377240960761408 1.037854044101592 0.102 +0.7281790016853139 0.1878173389356128 0.102 +0.6976984673485559 -0.0409431263390654 0.102 +4.843987818423788 1.249011052193601 0.102 +0.6109005696468061 1.039183478521912 0.102 +0.9870608898083916 0.3702978593542121 0.102 +0.9954516190381952 0.3417572709015562 0.102 +0.955121428539 0.2634404125017757 0.102 +0.6523710556252318 0.1969981811255751 0.102 +3.711798427253298 8.407176000694143 0.102 +0.1423360349181074 0.3730295950012569 0.102 +-2.758830998612175 -1.41254378660796 0.102 +0.654673491611956 0.2877495454756872 0.102 +0.5551290306796631 0.2950780999519759 0.102 +12.3764680803027 -1.65680586742222 0.102 +10.17236124911314 -4.739414429990718 0.102 +0.6579492636303785 0.1404508632040488 0.102 +0.5996800148935519 -8.776610839981936 0.102 +0.4666082946650604 0.2647052439651313 0.102 +-0.02215168314506643 0.3710806023150403 0.102 +-5.607590337641139 6.788048448080141 0.102 +0.8454557992768704 0.9772870635412844 0.102 +0.847023539162729 -0.008654493186159403 0.102 +-0.04000538475347609 1.130856105821381 0.102 +0.5131668609777605 0.9490405693137539 0.102 +0.3839180592690516 0.6872105030130617 0.102 +2.667987018594946 -1.880790413483566 0.102 +5.788083844843712 -3.508307418038595 0.102 +0.627341513959971 0.4173776964725233 0.102 +0.4099149197343233 0.2660916206080295 0.102 +0.1206259226925528 0.00303797455871982 0.102 +0.1513148811528454 -0.001824509420299681 0.102 +0.05060862169198362 0.2532380604562761 0.102 +13.35819627894766 5.001988416913149 0.102 +1.094534493599473 0.2931221408852226 0.102 +1.070023914550199 0.257580848376207 0.102 +0.7963525571282927 1.0929132710792 0.102 +0.7977885490801054 0.5013957931553202 0.102 +-3.289177629040401 5.478579818423091 0.102 +0.1425545957267167 0.2056834871185006 0.102 +0.8041765760288697 0.1808610804352056 0.102 +0.7308677894755559 1.008104358097292 0.102 +0.4427743566823515 0.9126811531036118 0.102 +-0.07920030855195818 0.689478563129822 0.102 +-0.0978793474452246 0.6473704926055626 0.102 +0.4680182642223155 0.6850387517796225 0.102 +0.09805220715239724 0.1792998027847269 0.102 +0.09788148067488313 0.4723894600308216 0.102 +18.49763646419143 -0.2169509420268083 0.102 +0.4928927671302147 0.469344611118068 0.102 +0.2826824932929448 1.018145321581911 0.102 +-0.08384012493632009 9.094095129193063 0.102 +1.026328091069345 0.3927186190299379 0.102 +1.083043828148075 1.000955219729482 0.102 +1.127275675981047 1.008792265213064 0.102 +0.9602469020259662 0.7364467804453456 0.102 +3.803663314320053 -5.046231164599291 0.102 +0.1131264817472653 0.03251269370105841 0.102 +11.32949676557534 1.948621414602537 0.102 +0.112580887172995 0.8158857916937393 0.102 +0.1335587671411999 0.6916005337331925 0.102 +-0.07184276556495055 0.1022622049822824 0.102 +1.019932918540774 0.4834914430501467 0.102 +-5.435103366351435 -7.083590720649043 0.102 +0.04665112088307755 0.4164670688769883 0.102 +0.06691316194478764 0.8727622221631939 0.102 +1.084520278282409 -0.03810642586687297 0.102 +5.74231603763509 -8.896452806164858 0.102 +0.8198039357163914 0.9645112626241524 0.102 +0.33090549525937 -0.1445292732953403 0.102 +0.8138832213767417 0.7262586166270856 0.102 +-0.04399370031616075 0.4545262015856635 0.102 +0.4843915793834516 0.106134863969827 0.102 +1.052578368682224 -0.092967772866698 0.102 +1.100609779747354 -0.1018625036570181 0.102 +0.8802543610765434 0.2471096921852769 0.102 +-0.07594096748622516 0.4121210172155093 0.102 +0.377659765857675 0.4412077009932589 0.102 +0.1645501768294942 0.6627469857808735 0.102 +11.60009112561658 -8.583207491292246 0.102 +0.2955388849063094 0.5208718703040081 0.102 +0.9182783933430811 -0.02735009683491096 0.102 +-0.04025768391015669 0.9829207825980718 0.102 +5.145179847830544 -1.257387062579628 0.102 +9.300477174958932 -6.972130180929619 0.102 +0.2230740403462652 0.5421731696380506 0.102 +0.7717521203371728 0.4442047101779642 0.102 +0.007056514129601477 1.127324595684892 0.102 +-0.007190730781331936 0.1831387660138922 0.102 +0.4729613041637461 0.7426590433253472 0.102 +0.7457846766883769 -0.001649598503408684 0.102 +8.069202820635883 0.7503531524426386 0.102 +0.3799867319665278 0.732917169577155 0.102 +3.037712998091684 3.588369344864535 0.102 +5.512878267861892 4.896666961731214 0.102 +-4.371711122637103 0.8887511037161997 0.102 +0.9699385273677363 0.06107994126649265 0.102 +1.023879431771022 0.8311600629556385 0.102 +0.9800101954538328 0.8291937418050473 0.102 +-0.01643458198954833 0.7132422617351981 0.102 +0.3387085356414689 0.4768667584830653 0.102 +-0.1279414980126923 -0.03005531670807146 0.102 +0.2730939862318934 -0.06096859540250959 0.102 +0.2479304004855231 -0.0904026196159796 0.102 +0.1399859285900693 0.8140584962052568 0.102 +-0.04454853295372357 0.1301428730406784 0.102 +-8.416876802167382 -0.1072003575579385 0.102 +1.085791577677225 0.6314520577547001 0.102 +0.2448611087140054 0.498032073419522 0.102 +0.9462725059932589 -0.008339134590113853 0.102 +0.2702247590135054 1.101440947658945 0.102 +0.2752584149473897 1.145067773996366 0.102 +0.3314015485063926 1.168539661362455 0.102 +0.2433133702040717 1.077172316492726 0.102 +0.002316596242864619 1.044467281860855 0.102 +-0.06428455155537804 0.1608653208438979 0.102 +9.162212097768252 6.129072255299041 0.102 +1.905205066715565 6.376133050286416 0.102 +0.293648255743081 0.7830325583728931 0.102 +0.341412997887611 0.3928651762911161 0.102 +0.8217065923158258 0.7868033196679532 0.102 +0.7817714162382776 0.7482038467713013 0.102 +0.7343953518295311 0.4861493951143955 0.102 +0.7432743638013274 0.9796263040088208 0.102 +0.3007394984078895 0.6494713084749452 0.102 +11.69224324190875 8.473678539992545 0.102 +0.2270313148990362 0.7859868386162395 0.102 +0.09649119675956956 0.5244653179120077 0.102 +14.77160973419899 -8.430713613565722 0.102 +0.02846940520260074 -0.09345931956754226 0.102 +0.5350621877381478 0.4090251327961029 0.102 +0.1043317206553268 0.5564838234158387 0.102 +0.8960513340122334 0.4500328000140459 0.102 +14.69854631598399 8.607570077863189 0.102 +0.0002702067454248556 0.1543156116211969 0.102 +0.522952370941922 0.9982515509975326 0.102 +0.9370828450661463 0.3590634982584209 0.102 +-0.09127884580776793 0.7424730143842739 0.102 +-0.1231965811803389 0.7752864468757049 0.102 +-4.469599105973391 -0.9516632153891424 0.102 +0.3073794046268372 0.6985601473543848 0.102 +0.7022239802721044 0.2895622576563418 0.102 +6.186904874966509 -5.008311603629976 0.102 +0.9013486405875903 0.4216335738762826 0.102 +0.5170017562533084 0.6540201871252501 0.102 +-0.04760900751753789 0.8770065019035015 0.102 +1.053596147858211 0.3744538916035574 0.102 +0.4941813071270096 0.1616002166470538 0.102 +-0.02504556562978768 1.02637619163125 0.102 +-7.118635329777833 3.896241938235404 0.102 +0.4259077959876741 0.2160123453614377 0.102 +0.3993274243633725 -0.02845817838406272 0.102 +8.350571315194673 -8.882748250102891 0.102 +0.8844853449029961 1.034446398984916 0.102 +1.001278562619251 0.9120492222441894 0.102 +0.7387676772127018 1.043445702447455 0.102 +0.1223393906486654 0.4367341840134776 0.102 +0.3575502286958591 0.02983793956670396 0.102 +2.528120433270803 2.766439179203274 0.102 +0.4885105250334666 0.5869659972865261 0.102 +0.3377132643937532 1.090326319860066 0.102 +-6.999592642543465 -3.290547340605555 0.102 +-0.1897436443905243 -2.287925696713677 0.102 +0.7871207691816673 0.5724396144899644 0.102 +0.5815007462325648 0.9794060223695045 0.102 +11.45534921028572 5.455712839215315 0.102 +0.7278516818791119 1.104857874799885 0.102 +0.6632282349206788 1.10115354331699 0.102 +0.6331894957812603 1.114448100681288 0.102 +0.7545467176909738 1.149997304026987 0.102 +-0.6610384143653931 -4.236440851998732 0.102 +0.4779756873726124 0.2297436987939148 0.102 +0.344786914773428 0.6817715432254975 0.102 +-0.05476703892883396 0.6161308240309139 0.102 +0.4127386771928195 0.5332255838671877 0.102 +0.07239658655364946 0.3999722830057872 0.102 +0.5989110832837859 -7.18218388142491 0.102 +-0.07111796976386969 0.2169556890195523 0.102 +0.1369452383302344 0.600244144049522 0.102 +0.05551700831801172 1.1380786287988 0.102 +4.198485056879933 -2.184378830536302 0.102 +18.59798902706955 -2.303262211948983 0.102 +13.30677654652268 -6.884208471716943 0.102 +0.3981524965669228 7.006356701919555 0.102 +0.6760161211080011 0.4234305039274547 0.102 +1.091411912651119 0.3792869015722063 0.102 +0.9137222884794286 0.7567829733067774 0.102 +-2.05235208786081 8.537713520274719 0.102 +13.22765488969345 7.001168637314983 0.102 +0.6583172099278917 0.05858013904902042 0.102 +0.9965080238039919 0.9548700003586629 0.102 +0.06971240482567174 0.3598560619243789 0.102 +0.4745139027871554 -0.02925212376917946 0.102 +0.1024740093574014 1.070671607827326 0.102 +8.113598443404653 8.979343352304136 0.102 +0.08303136231215165 0.1322760384691584 0.102 +0.565212907726912 0.749692089906393 0.102 +0.4702885189726965 -0.07935279834243082 0.102 +0.5404008207474761 0.8199013853766618 0.102 +0.1008538528794393 -0.05674733806477878 0.102 +1.229852704196881 0.4268315839174237 0.102 +0.4228398794892759 0.6925858526821342 0.102 +4.912155078911821 -6.567510827784501 0.102 +0.3651495862143665 1.079167067982006 0.102 +12.05729211786182 -3.752755959193452 0.102 +0.1230792584699414 0.2851832167939404 0.102 +0.259533910541229 0.1184359156416449 0.102 +15.1861785737414 -6.899722301656356 0.102 +18.4214845457514 8.918469509492601 0.102 +18.41943416566018 -8.912701382176147 0.102 +0.5307023811637924 -0.07664984700712844 0.102 +0.9709808443888577 -0.0534845749708632 0.102 +0.4223292660874967 0.5935120136260477 0.102 +0.7844735169245715 0.03465170266504688 0.102 +15.39426707106431 7.074667747980039 0.102 +0.7558900006735531 0.2599861481754417 0.102 +0.2097895888091999 -0.08544409806399536 0.102 +17.0080697912243 -8.950981996144121 0.102 +11.12530697224867 3.55332827600458 0.102 +-6.94439069005077 0.1782940624412575 0.102 +0.3790794323885485 1.152418888241273 0.102 +-0.03105766017077963 0.06840391850197525 0.102 +0.2700288181680386 0.5991148458254358 0.102 +14.00906792152125 2.790363095183508 0.102 +16.9191201132098 8.785405009698522 0.102 +0.7132817692799807 0.1109858712290067 0.102 +14.69072956952309 -0.7563442050121202 0.102 +1.06023927832064 0.08624104387034247 0.102 +0.3566182360593723 0.3733515298561274 0.102 +-0.02203640733693435 0.8165330623677849 0.102 +0.7834179893660873 0.9979520711643767 0.102 +0.1022205943836349 1.12857214122803 0.102 +0.3611999613005091 0.2185350338458335 0.102 +0.4527259743435194 0.881993265179689 0.102 +-5.012130582419204 -8.804129639032414 0.102 +0.1060469215488791 0.134482887912318 0.102 +0.3859354015546601 0.08089917102226928 0.102 +1.58539929870436 8.286900715002799 0.102 +-0.006505352833332502 0.4224970637731558 0.102 +0.6155712928959808 0.08330648329085681 0.102 +0.7553935763033287 0.1354846786410373 0.102 +-0.1111093869270691 1.025836335314449 0.102 +-0.1165888727324544 0.9889146949875562 0.102 +-1.563969652280452 3.816720277504555 0.102 +-0.8950653241369676 -9.256297637515212 0.102 +-0.03738102446867024 0.01690888955932924 0.102 +0.7331651854266967 0.1364036428332207 0.102 +0.9781657767986123 1.026509269006437 0.102 +0.9380477717816086 1.032284740363962 0.102 +-8.969145991803218 2.303531228088473 0.102 +16.72817855907535 -0.3476190575030464 0.102 +-5.287621791870344 8.615970166628312 0.102 +0.9353314112846793 0.05485557899422425 0.102 +0.8729741015641737 -0.03024663696772135 0.102 +-0.09818213863295451 -0.2765826237817327 0.102 +0.7529451382092733 0.8855152412985247 0.102 +17.06140280990951 3.869924012444743 0.102 +17.39753651882037 -3.671603645233377 0.102 +0.5439277593257019 0.8872887349439944 0.102 +1.169744382107039 0.1236405233589768 0.102 +0.6027177050819134 0.9230428020788802 0.102 +0.9048534887337165 0.3904167301062834 0.102 +0.0630445170937233 0.9746965035895648 0.102 +-0.1286183319309165 0.6211939547232389 0.102 +0.07193220828844619 0.00195448188055383 0.102 +0.4351322618500898 0.5360364570463624 0.102 +0.1533087685926942 0.05562104980734781 0.102 +0.6755460189591462 -0.01290140104975221 0.102 +0.6552331201227911 0.3732006045846148 0.102 +17.02753128205546 5.255703031182004 0.102 +17.01749399926164 -5.030080686408212 0.102 +7.530662631623374 -7.228788491402264 0.102 +0.8021401334348802 0.2339247604048569 0.102 +0.5666499802295513 0.1435345597185519 0.102 +-9.016808868176343 -9.009591369158034 0.102 +1.225533874255258 0.2712995766479548 0.102 +-0.01415323812554527 0.2974302486302116 0.102 +0.2079398395356839 0.6510895649370273 0.102 +0.2270215158791463 -0.1964421052333817 0.102 +0.3357270621643579 0.7446355284450332 0.102 +0.6943461643903416 1.07804381064484 0.102 +0.454505091116418 0.04751991319322953 0.102 +-8.896234009904145 5.78347436785122 0.102 +0.5864751224619376 0.3112728477302901 0.102 +0.9575474175244634 0.1895299270463251 0.102 +0.692468182238742 0.9286146072882674 0.102 +0.769344144435583 0.3370938944423672 0.102 +-9.039951936311823 -5.218151386330006 0.102 +0.3655511183905015 0.5686990212929688 0.102 +0.7003092014635409 0.4513895437019537 0.102 +0.8715644970555834 0.8258426847910154 0.102 +0.3933772425042009 0.510159747069979 0.102 +0.9935035218320343 0.2360371386609787 0.102 +0.6075925097427929 0.6175290189203522 0.102 +0.4088535486184248 0.01158562574216388 0.102 +0.650522009082029 1.023482700957302 0.102 +2.343192050485927 -6.069745166412617 0.102 +1.457989173644793 -5.287093663708224 0.102 +0.9267419734180588 0.8300449106161081 0.102 +0.6502940682120677 0.4199863226134086 0.102 +0.6538558009134164 0.473688379270087 0.102 +0.002630515817952957 -0.001518672449347351 0.102 +0.06542269994597025 0.06563394384444664 0.102 +0.3667490209292106 -0.08541827504943264 0.102 +-3.79799351297062 -6.911172779409297 0.102 +0.1982254766804961 0.05957296290752206 0.102 +0.8736775004751195 0.3204506812072919 0.102 +1.003534030176824 0.5501209977966393 0.102 +4.132632611523814 6.927668972318514 0.102 +0.6833224462673008 0.3332829545529836 0.102 +0.7769564936650337 0.7000867985170508 0.102 +0.8234982463904461 0.8301280336108882 0.102 +0.9047422243460602 0.1989355189511278 0.102 +0.1056095797103991 0.09037714909721027 0.102 +-3.752649038167137 2.6553698087938 0.102 +2.468884949648091 0.0611396296900274 0.102 +18.89695395873721 0.977410487328079 0.102 +-7.076564212635787 -5.620357680608281 0.102 +0.5662379976865614 0.51739539481338 0.102 +-1.398612234730285 -3.675061758238208 0.102 +0.6812350263505003 0.5908170552502476 0.102 +0.9680498557653781 0.3910841284487108 0.102 +0.4024951762143575 0.1812926913495063 0.102 +0.02478423517840279 0.8324419415451347 0.102 +-8.700234047325921 -0.8582654333339397 0.102 +7.376888403701322 7.14486502480733 0.102 +0.8771808308726829 0.8532676337067611 0.102 +0.7736851522446871 0.1050185642428197 0.102 +0.4389698427136212 0.6448557309444618 0.102 +0.4916223625315773 0.3254038300799172 0.102 +0.53980631609042 0.3417281487445762 0.102 +0.6750875708515418 0.6130804698887162 0.102 +0.9920028470484129 -0.07118674455319819 0.102 +19.03078005244678 5.729271992141632 0.102 +19.04700140609339 -5.18422583844242 0.102 +0.503798554355536 0.02055114646468435 0.102 +0.1020009037913608 1.012001759360988 0.102 +0.105364807108276 0.2761993282830917 0.102 +0.1407582238302598 0.7234007731197842 0.102 +6.560537771527977 5.461025278096884 0.102 +0.9113919594860077 0.801631330270257 0.102 +-7.204586037976964 -1.581117072392477 0.102 +0.8189846015968643 0.4841159591486797 0.102 +0.6857635721175449 0.5072624700940339 0.102 +-0.02287850111904474 0.1107335884223664 0.102 +1.081387321586655 0.9313426609125828 0.102 +1.096018192659085 0.9471356431199619 0.102 +-0.174332795538684 1.054725027300195 0.102 +-3.702911600069291 7.216263245147602 0.102 +0.4941169306993506 0.8939318639398963 0.102 +0.01647716211967467 0.6051236430237391 0.102 +-0.08320412306078734 0.7922485990184993 0.102 +0.619819907135793 0.6561803974925995 0.102 +-8.95235479843314 8.951388040648581 0.102 +1.03308739832508 0.81594810254066 0.102 +0.8400131691925863 0.9200540131256196 0.102 +-3.07794935955058 4.413825069938697 0.102 +-7.092051875282392 -9.091538359592768 0.102 +0.0810309780778624 0.3039135377302608 0.102 +0.02754634645036845 1.024546076809591 0.102 +13.63244404619177 -8.862498467567439 0.102 +7.389827339393486 3.448014334790996 0.102 +0.9519699418236938 0.9266514249404063 0.102 +1.017832344697392 0.2538979755407149 0.102 +1.017360093488478 0.2297769857400618 0.102 +1.013164425062859 0.276701344121439 0.102 +0.3049997810818056 0.7371662372459358 0.102 +-0.03587315264411105 -0.09948868043591881 0.102 +-0.1425938179961313 -0.1654721573384506 0.102 +13.58153377398454 9.131333670110626 0.102 +0.1631577045053132 0.2608277267638668 0.102 +0.9208036900444367 -0.05056352207360548 0.102 +-7.168902542434772 5.708398010404998 0.102 +-0.02949624250384933 0.6867413755327112 0.102 +2.229670293473725 0.649924786734848 0.102 +-7.57243979979497 9.083822508975896 0.102 +1.183057338574771 0.5469508879183971 0.102 +-0.08035113522046188 0.3214642350868767 0.102 +1.027769354514156 0.4462952025168609 0.102 +0.1829912072454788 0.3585418294726458 0.102 +0.9415259469266852 0.8781225724432127 0.102 +1.031243785429913 0.1639592139966146 0.102 +0.04901815169032636 0.1730953693218751 0.102 +0.8848122733012883 0.5505799531910686 0.102 +15.28006222426211 4.673174548781168 0.102 +0.5883363640187378 0.04218666670558539 0.102 +18.76325566592306 7.565263660579766 0.102 +18.81516299512906 -7.262685442951933 0.102 +14.81485241656946 -4.863916288806903 0.102 +0.1739708896724436 0.8429696202124655 0.102 +0.9087019360063402 0.1449978713073742 0.102 +0.4608852929366657 0.003928937213449783 0.102 +0.4585034834474672 0.4932404763518768 0.102 +0.972613089796166 0.2482412673308733 0.102 +0.458341729800554 0.3300408959729098 0.102 +0.2090225962978356 0.3993103971695504 0.102 +-9.064680639622029 -7.058329762177194 0.102 +0.4031457384964845 0.3309575052864054 0.102 +0.9664622002777717 0.1449150265588766 0.102 +-0.06757868144583207 0.4782387858623861 0.102 +0.6354727700103043 0.5872519411511637 0.102 +-0.08104371617211059 0.04173784895015838 0.102 +0.4961940531009004 0.3637120050153329 0.102 +-4.940015814107675 -5.139603761477398 0.102 +0.5548452027451587 0.00428417741906361 0.102 +0.9885810570751437 1.046679079033384 0.102 +16.7504402890616 1.751270420685172 0.102 +0.664421995151687 0.6853976945107698 0.102 +0.8101361701266893 0.6394299969455643 0.102 +-5.030183414648508 -4.138414420243159 0.102 +0.7406670983896676 0.735195752693676 0.102 +0.7332294660873971 0.7869544347187816 0.102 +0.7711150599135003 0.8120131716712912 0.102 +0.2365329538015411 -0.000902499264988168 0.102 +10.53174981496855 4.916724981611503 0.102 +0.6329714141676138 0.7259030888627606 0.102 +0.6104409942135109 0.7123596562230315 0.102 +0.3669054594194435 0.01382326890438412 0.102 +0.5861186261947646 0.6126080208534365 0.102 +0.7544133570009266 0.06684777920567607 0.102 +0.40371218606126 0.6482827706202968 0.102 +0.3714254612309222 -0.03099009207332511 0.102 +-8.925961002399928 7.429470027023438 0.102 +0.5890397024952622 0.006608820823086418 0.102 +-2.103291825842652 -5.727969340582843 0.102 +0.7931742464725996 0.720653756498439 0.102 +0.03725886376413094 0.2159434033588379 0.102 +0.04462928004370344 0.5073961697824552 0.102 +13.24890934475769 1.506527929270592 0.102 +1.029279608439611 1.019651688791255 0.102 +0.03214648805328973 0.124698982875202 0.102 +-5.237491057039732 4.970733773195158 0.102 +0.5359619813215855 0.4524049609625164 0.102 +0.2494597236244646 -0.0385719614697369 0.102 +15.06867403437387 0.85971043855255 0.102 +0.4311688740087568 0.4275875955488972 0.102 +0.01246604832058371 0.9776080262676435 0.102 +0.7873108241964366 0.7912975204796228 0.102 +0.4088379912117455 0.3715722801512417 0.102 +0.8657500168529627 0.1500111649952977 0.102 +0.8488352674795242 0.7833312180426956 0.102 +0.4162553988037647 -0.1040965262374103 0.102 +17.18932341237749 -7.231329591803869 0.102 +1.011920476923888 0.4313082721595836 0.102 +1.018618822370959 -0.0221377629503469 0.102 +16.79100232173981 7.785856471459351 0.102 +0.989151707700598 0.01455270046259908 0.102 +0.7349839197752539 0.8410295118911643 0.102 +0.9334045828556722 0.2069692483253921 0.102 +-1.492556866058295 -7.436603695512365 0.102 +6.960624080348997 -2.988575919111355 0.102 +0.9268461423897321 0.159598176333844 0.102 +-0.0239106540699136 -0.03668290743686707 0.102 +0.8530761957988938 0.438852568238192 0.102 +0.3028162853139841 0.02103344571043896 0.102 +0.07785432736935233 0.5696614287423029 0.102 +0.3043679711223302 0.1287059999153282 0.102 +-0.04647081935578572 0.2631136383535668 0.102 +0.8141384780514639 0.3522558330106528 0.102 +0.7255752500473048 0.3769889904028764 0.102 +12.03150665588722 -5.596922415942128 0.102 +0.5189644086691316 0.07336862458119527 0.102 +0.7595164251274202 0.954754429876894 0.102 +0.7833067545579936 1.028603494195982 0.102 +4.929461071688761 7.175494915231885 0.102 +0.5699994185480781 0.05829863853952297 0.102 +9.825261128358054 6.859939189421799 0.102 +0.02560299638269922 0.2914497933646706 0.102 +9.749687521404796 -7.634027141291129 0.102 +11.71356129063448 -7.569597626823379 0.102 +0.9702609662094908 1.09123813341853 0.102 +1.111654883283389 0.7908251965880687 0.102 +1.092197254910052 0.8267637561582694 0.102 +0.02000582138705569 0.3473484014396647 0.102 +5.350357477444097 -4.3896529476343 0.102 +-3.848518463452238 -2.755248739628607 0.102 +1.000838410664272 0.7847722460062792 0.102 +0.9590718025301036 0.7593069489579871 0.102 +1.04589944530298 0.1965064834033628 0.102 +0.5771228767093722 0.957114260386923 0.102 +0.5733121992708163 0.7760783642017133 0.102 +0.05686927835124279 0.7828010117706313 0.102 +0.5632306274463773 0.692864916656856 0.102 +0.7131303291468573 0.04118358926145071 0.102 +1.09789819266236 0.1308901706292505 0.102 +0.08669436658803811 -0.1029347622597555 0.102 +0.06206733075056883 -0.08141540605156991 0.102 +1.041834712944733 0.9340490213756204 0.102 +0.5015164884018047 -0.06869592189220158 0.102 +0.1021365694485916 0.9481966225183865 0.102 +1.05585697309764 0.3100745629547401 0.102 +11.89632440722858 7.650256222315119 0.102 +6.540139402165726 2.554473256331192 0.102 +-3.366343199876222 -0.8862013042997157 0.102 +0.03696915027882158 0.03006569364700135 0.102 +0.213882361417193 0.002810370445846375 0.102 +5.610824252428994 -7.637744726980062 0.102 +2.183663320373211 -8.805800127660415 0.102 +10.3681628697527 -5.628198377902726 0.102 +0.8493368201354846 0.5768402713546541 0.102 +-6.013594234941471 2.294936156625182 0.102 +0.987940790811123 0.1475816612127976 0.102 +0.7230958273639145 0.3529613151584845 0.102 +-0.03938710114448021 0.3595992390899448 0.102 +0.9084484750029033 1.090654443972376 0.102 +0.9066466563216684 1.114269192714835 0.102 +3.901965066856954 -9.071459703238498 0.102 +-0.07977499425801211 1.01352461421728 0.102 +-0.07483437376322585 1.032490096867786 0.102 +-0.01208652956875002 -0.08745066099113932 0.102 +0.179764715232278 0.4952988944321961 0.102 +-0.03913360935497192 1.094320233851281 0.102 +-0.06760849473464375 1.125568517270302 0.102 +0.1298006120831059 0.1334561089325895 0.102 +0.1292480585763753 0.1055747567149897 0.102 +0.5688316681991381 0.08981627335813255 0.102 +-1.3653938692432 5.529109627295134 0.102 +0.5545978333931786 0.1895090941970113 0.102 +0.6940671348602553 0.7660718553201 0.102 +-2.546310380295931 -4.00754658322367 0.102 +0.5101376664397601 0.7027618830967785 0.102 +0.7263789656889041 0.572992289303962 0.102 +0.3816761702590529 0.7994911243316192 0.102 +0.9865753485522872 0.5239982415744324 0.102 +0.8302956058318139 0.108741828450999 0.102 +0.07932685207735857 0.992319372369576 0.102 +0.3314554758109416 0.5855160944241764 0.102 +0.1442116526811552 0.7827250242541406 0.102 +0.08454196382068954 0.07808003883127633 0.102 +-0.05061357014027996 0.754580732028406 0.102 +0.3124247354113096 0.3728805951579366 0.102 +0.6827214419895355 0.1568001131624461 0.102 +0.04501316197755686 0.3074619649274806 0.102 +0.8906777898925 0.9772562625841827 0.102 +0.9861273449336105 0.4894551014401529 0.102 +0.7489776451390738 0.1954473323875203 0.102 +0.9996416021841076 0.102738664985074 0.102 +-4.237829873228464 9.030401646331425 0.102 +0.7038976050221394 0.2641171018301346 0.102 +0.7276476967562922 0.2361131595123482 0.102 +0.4601453622222347 0.3644991836495626 0.102 +0.9810721402624299 0.2074899420566776 0.102 +0.6127626182973894 0.2281479620594308 0.102 +0.9295325116824553 1.061962435274558 0.102 +0.9338975063053505 0.4274098575409592 0.102 +-0.03717489759728804 1.049806802068362 0.102 +0.738653915867962 5.161017295955331 0.102 +1.0691404987872 0.2083878117496212 0.102 +0.2792441354345366 0.06890240262984412 0.102 +0.3200551847514397 0.07630541095651899 0.102 +0.1860250158207922 0.4381962326324096 0.102 +0.5913431960025952 0.1416967141288151 0.102 +0.05559458342801599 0.735538496944479 0.102 +0.3023812366205527 1.003354442130112 0.102 +7.384616960091388 -1.244968404920535 0.102 +8.422702140148312 -0.4430170141917182 0.102 +0.9500898278833376 -0.06583641971215551 0.102 +0.6231168148693313 0.1005840716804102 0.102 +18.83383125928967 -4.016313826437042 0.102 +0.09166353017765334 0.2202853755108913 0.102 +0.128942717609249 0.5403882046793547 0.102 +0.8543526926950883 0.4005828448101346 0.102 +0.0171221392492994 0.4060099791706107 0.102 +1.073993347861367 1.053176642232077 0.102 +0.01338638099134519 0.6358805756755967 0.102 +0.6813922352609506 0.9898142406247397 0.102 +0.05012383315445799 1.024989161077379 0.102 +0.06640074277352953 0.6313492116406031 0.102 +0.9058963906732759 0.9152625338686355 0.102 +0.8698879723129869 0.1088904868085696 0.102 +0.8292084053519876 0.2930894384998498 0.102 +0.86795024018602 0.2720756271288048 0.102 +0.0834779141218728 0.742453800583566 0.102 +-9.081170668528479 4.667204751111712 0.102 +7.497686421696209 -4.842413368229504 0.102 +0.8370179782356616 0.5351123295973088 0.102 +0.6031863541782071 0.2693480137550385 0.102 +3.612971459173726 -6.272870124824426 0.102 +0.7490299066832999 0.3990453582335406 0.102 +0.3264400366560094 0.2562565938492498 0.102 +10.84101300089669 -0.2322141558392172 0.102 +11.78289399773971 0.1516942202583183 0.102 +0.175253143674001 0.1578103030681796 0.102 +-7.31536681824792 -6.930909018102309 0.102 +1.003039345222381 0.6186884384641483 0.102 +1.089731856600176 0.06603009839747301 0.102 +0.2784269024848119 0.473417751876888 0.102 +0.9634774249375047 0.5972167297858597 0.102 +0.1678478003433928 0.08190016759681264 0.102 +0.7919961989792619 0.9184836421375906 0.102 +0.7321222879412255 0.2961613862979245 0.102 +0.6407661792967565 0.3094989081166806 0.102 +0.007278413114141952 0.8830510607759713 0.102 +0.04174278912097008 0.8927836634976829 0.102 +0.4116636680621014 0.2860644147854046 0.102 +6.018466242965236 1.305292329129989 0.102 +0.3871109905577804 0.4647780708117107 0.102 +0.5422246284296148 1.047312546800836 0.102 +0.6496276729617307 0.2498445434961026 0.102 +0.8778840238783504 0.6993534965090882 0.102 +-0.6444655385018376 -0.3878546959295998 0.102 +-4.661378411900478 2.941256834315369 0.102 +17.86671943622922 -2.367981222352028 0.102 +5.714990648118173 5.775467597157624 0.102 +0.442178626483336 0.8951108020762419 0.102 +0.8913684080395122 0.08988643024537521 0.102 +0.9332373988432929 0.6397614138071139 0.102 +0.9421356075781284 0.1736404950528249 0.102 +0.5759880457314177 1.158110486151142 0.102 +0.05205439008721122 -0.01840760434831221 0.102 +10.63079925387331 -9.126759462894075 0.102 +12.72523548098331 5.887753772484224 0.102 +4.718531615443069 3.110264678789948 0.102 +0.354172280386753 -0.007649922238552074 0.102 +0.03602551984816917 0.9330727616637122 0.102 +0.04680867786254499 1.07198931889743 0.102 +0.1809028063030811 0.1333739854040154 0.102 +-0.1429222411017557 0.3700717285996447 0.102 +0.6818136414277201 0.9020095414503342 0.102 +0.8172993354468527 0.3976369681244859 0.102 +0.3420640132502837 0.5386195789766295 0.102 +0.2920648854199123 1.076284020257948 0.102 +1.004855541498108 0.1749234864154162 0.102 +0.6981594265843706 0.6872249890884993 0.102 +-7.212420508988012 8.045209990184555 0.102 +0.5144167350900751 0.6793252771761668 0.102 +10.48934540563413 9.072453770032727 0.102 +0.1120794737261226 0.2326896215838478 0.102 +1.021609508701469 0.04988015829487978 0.102 +0.1929130062169757 0.6071821480016169 0.102 +0.1689252527791892 0.6924982028305972 0.102 +1.088097261752415 0.1958328525810552 0.102 +1.067433454405025 0.8579223458533513 0.102 +0.3171034511894687 0.4252362573899063 0.102 +0.1085120610786532 0.4868187383882088 0.102 +0.1208653791666031 0.3816066813040018 0.102 +0.1045112338186724 0.4129365364656201 0.102 +0.2131250533851844 0.9289573962171532 0.102 +0.6249563408874617 0.1514814203032204 0.102 +4.665231985335912 9.013110318299452 0.102 +0.6234088810368175 0.5342498603202435 0.102 +0.08878698015013824 0.02780985284721032 0.102 +10.18172160464222 -2.294135861293926 0.102 +0.1203676515216077 0.06819648870665564 0.102 +1.053626961682059 0.7108235230556911 0.102 +0.3005945606446067 0.5686303587316043 0.102 +1.05908898900014 0.5627799329157104 0.102 +0.7548138832653131 0.5000219995761856 0.102 +0.2720957024308547 0.3954705919813528 0.102 +0.4617445886121971 0.6626084027524232 0.102 +0.5393316085367139 0.124686562920557 0.102 +1.070690697390716 0.229053677578038 0.102 +4.121502592874818 -7.074023478201917 0.102 +0.2049024474082204 0.9922585752979434 0.102 +6.720055167685296 -0.1145080980664919 0.102 +0.3612468883259021 0.301733241387108 0.102 +0.8678324878982959 0.01882340858931587 0.102 +9.969699604546133 0.7420483545891221 0.102 +-0.221204151553616 0.03461792496447647 0.102 +-0.2210175621700569 0.1394002899578408 0.102 +-0.06142296861451493 0.3535211465557462 0.102 +0.8810807414453579 0.1881878194868439 0.102 +1.064861594693376 0.6185326336641409 0.102 +0.9451643353828326 0.5607683083047124 0.102 +-0.01947667773135963 0.8643430484203641 0.102 +-0.1077612421892627 0.4691067673778803 0.102 +0.5365133415207521 0.09042605058578772 0.102 +0.7734974196165114 0.3585896097952639 0.102 +0.2518323890983825 0.2232611660489309 0.102 +0.7206371394605589 0.6428392950958751 0.102 +0.6218346930472139 -0.1056032809843973 0.102 +0.4766625055597168 1.149519470337633 0.102 +1.071840193006725 -0.007428639907918657 0.102 +0.2323029214724864 0.4185239650421395 0.102 +0.1497900688809868 0.4478692849770127 0.102 +0.3342379763880028 1.004364827769733 0.102 +0.01335337926371551 -0.05907690108589859 0.102 +0.9613725881672025 -0.03181052316939598 0.102 +0.5898617359196907 0.5746456788654744 0.102 +0.1707456354225968 0.6161689768873962 0.102 +0.5040843025655692 0.1886288889266448 0.102 +0.3479911422714715 -4.265658930407669 0.102 +0.4886661263980786 0.5302479447181743 0.102 +0.5276777541762442 0.7354677395592564 0.102 +0.5494645678859058 0.7328272839535966 0.102 +0.4207925746348639 0.1610429908387014 0.102 +0.415827256658597 0.0503496820231674 0.102 +0.5420473789321463 0.6303165000777093 0.102 +8.005307534451687 -2.455486032956304 0.102 +0.7187040071176692 1.076739620020753 0.102 +0.2927164612553009 0.7460744442225771 0.102 +-0.02158255670135498 0.05148790574964324 0.102 +0.484578070491905 0.6464618960455326 0.102 +0.5041500588719929 0.9234843698274127 0.102 +0.5259281169397728 0.5100484490252594 0.102 +0.5033512490288007 1.072873413712151 0.102 +0.9224720961337151 0.2695783792733957 0.102 +6.971270900935791 -5.607655875564652 0.102 +0.5792048189626421 0.6511063920148064 0.102 +-0.05630573904725512 0.3046722966222289 0.102 +0.1995097940246118 -0.1188418903929021 0.102 +-0.1989217947100105 1.210769634515655 0.102 +14.60601639089025 6.60570862899085 0.102 +0.3518243397891815 0.9602586254014489 0.102 +3.6839492739191 7.38858962733042 0.102 +0.3350890229932071 0.7808419590061806 0.102 +2.528805900150032 -7.833611317133697 0.102 +1.002525971371819 0.999194949600904 0.102 +0.8682625686495656 0.8028198840980374 0.102 +0.9007161851772197 -0.0821945489094231 0.102 +0.8704020829636943 -0.08378760116080614 0.102 +14.55565317644387 -6.251254947506681 0.102 +0.6775832384467291 0.3932619500724086 0.102 +-0.0265207876264709 0.5122155335126174 0.102 +1.051223393128287 0.1309590278476413 0.102 +6.452841471121585 7.591666287070527 0.102 +0.3834732301520445 0.2270347982166172 0.102 +0.8248640484462437 0.05383247823754685 0.102 +-2.064346139744897 7.513783014457102 0.102 +13.06080052593754 3.89444318666304 0.102 +3.925268724739349 6.224421570470003 0.102 +0.8384563819398991 0.6790659764134204 0.102 +0.5493856171170413 1.076638239974956 0.102 +-2.339481339615408 5.916695542171101 0.102 +0.3082442348589437 -7.944874531379142 0.102 +-0.2726662561498766 -0.1567451563504194 0.102 +0.009699972819629971 0.4676615513162708 0.102 +0.1667032960308696 0.952170374097103 0.102 +-5.685459509688821 -6.2641055577704 0.102 +-0.05256314495885135 0.08230055787741995 0.102 +1.029920136791392 6.14053190739085 0.102 +0.5615009714336004 1.022765029355595 0.102 +0.3258523092952243 0.8292625514722564 0.102 +-7.893219515521899 2.05266051447312 0.102 +0.9947754145309584 0.5823220794906958 0.102 +0.7599510353993397 0.6614727521327601 0.102 +0.8284126389811197 0.8660432054145413 0.102 +0.6131234172893849 0.5657805688307125 0.102 +0.1990082705881299 0.03594050025359753 0.102 +-0.1199101890242685 0.8330133059792253 0.102 +0.4753925269113144 0.4812037122163623 0.102 +0.5525103431221825 0.910621951097264 0.102 +0.5164707403976049 0.7659622716176092 0.102 +0.8698413715734653 0.7231779651492884 0.102 +0.6610656060199087 0.5214233594768277 0.102 +0.9076447416164252 0.5421933542928815 0.102 +-6.099291128574844 -3.220529528805549 0.102 +8.2432306531168 2.561315763497538 0.102 +1.065963561728545 0.983048006564918 0.102 +-0.06142139822698478 0.280753486492838 0.102 +0.1162479816653897 0.6328674089045044 0.102 +1.061905235698743 0.4246804674503863 0.102 +1.055508018443186 0.4489547604737686 0.102 +0.2107241850870361 0.877494063729733 0.102 +0.5810583046092557 0.1009316021758792 0.102 +-0.02075041550823953 0.6278454520046841 0.102 +0.3333012905015132 0.3530206783194783 0.102 +0.8217308987836214 -0.01482968206463149 0.102 +1.084894977390767 0.1618778628792956 0.102 +0.1531503808414833 0.3972251762894781 0.102 +0.9186897795485687 -0.003076773260766792 0.102 +0.582521642087557 0.3615905993883796 0.102 +0.7593806734953952 0.1677287034737271 0.102 +0.0940869440748848 0.8697690732577865 0.102 +6.381942289039519 -1.80120495488176 0.102 +0.7747873958499767 -0.04244334643793288 0.102 +0.3420655794129784 -0.05554107805091239 0.102 +0.5656355144573165 0.2401906821830657 0.102 +0.2897040775412075 0.2880683944490567 0.102 +0.2514651007530567 0.1428150714348735 0.102 +-0.1306357015247848 -0.09685559742121358 0.102 +0.9160820304168861 0.5903282473029697 0.102 +0.8932954891699351 0.5903384157563242 0.102 +-0.005381443529834499 0.7930761567948883 0.102 +0.2036815582117795 0.2334221194415227 0.102 +0.2446096067058613 0.6128488334407168 0.102 +1.076331551313722 0.0319220255157173 0.102 +0.7147078556483452 0.4751611722970529 0.102 +0.9295378855348922 0.09196617456290498 0.102 +0.1052376840955687 1.037255996684375 0.102 +0.2779591043410239 0.2051269411208415 0.102 +0.1674008396311211 1.007319946901284 0.102 +0.7697578516321959 0.5483438904212311 0.102 +0.9100036770294411 0.4923525398168741 0.102 +0.3486018321267293 0.6610319087818234 0.102 +0.7940697134184298 -0.05706021154361546 0.102 +18.81348606540519 -1.275902825775264 0.102 +0.1931042980254156 0.1836686750843257 0.102 +0.7772369151436502 0.9357147342299879 0.102 +-0.1670316728254589 8.006483943694704 0.102 +0.376973009590217 0.1336543318500875 0.102 +-3.005448955224846 -5.877530718101026 0.102 +-0.02712742733089927 0.9988036449020946 0.102 +0.04991321791946542 0.01778396041189431 0.102 +0.3648544640949034 0.8748176358303077 0.102 +1.039347315360003 0.4977458780169354 0.102 +0.6027944965716773 0.8891345985037797 0.102 +0.4225275893583939 0.715514021635832 0.102 +0.1932001787197227 0.08403556934963968 0.102 +-2.296801748469485 -9.215508456278926 0.102 +0.3765121675869311 0.3288628338874183 0.102 +0.7943631267175809 0.8304242229438894 0.102 +0.736722891200067 0.7113139724678799 0.102 +1.007831861148378 0.383870947399571 0.102 +-3.898378695418377 -8.941646497703063 0.102 +0.2407676583478545 0.4402465921841086 0.102 +0.277038847222268 0.9539864744141466 0.102 +0.1606610470563795 0.1071160866718795 0.102 +0.3206625880724026 0.4599774297163197 0.102 +0.1858228615985603 0.313817220751483 0.102 +0.5497133824766386 0.8425583908545643 0.102 +0.3360310165062491 0.1120283280038818 0.102 +17.17185819907441 6.135607404891694 0.102 +17.44620674216537 -5.8731230855046 0.102 +0.4355192614513481 0.05563451356415194 0.102 +0.9158034974462963 0.4785999219003963 0.102 +0.8504547146566334 0.09077148299766639 0.102 +8.939341926659081 -4.230707511982018 0.102 +0.2891121651756117 0.691852711307822 0.102 +0.9224815871981304 0.516821894642306 0.102 +0.08527602796819481 0.2822637251649878 0.102 +0.9686682579358985 0.6803548292326291 0.102 +16.16935138323182 -1.92441180210805 0.102 +0.8368639825086073 -0.3460750846246343 0.102 +0.2653157802326219 0.1730679981633707 0.102 +0.0270760946188012 0.3815646877872453 0.102 +0.8115477913723206 1.061864616556101 0.102 +0.4183852486190144 -0.03776435921183344 0.102 +0.9743977084280507 0.6268875872308138 0.102 +-6.129561182010765 -7.415973406102705 0.102 +-5.867097905504994 7.596676875529412 0.102 +0.9639298130716673 -0.08678334038604774 0.102 +0.1635527828181508 0.2299220462182087 0.102 +0.7603454861495847 0.2850430962033476 0.102 +0.4394640951508928 0.6096263472987657 0.102 +0.6831954843487851 0.2184236540226959 0.102 +-4.03686317412628 4.978099784221484 0.102 +2.020079135448715 -3.931511855660109 0.102 +0.7757063939753414 0.1283055977194755 0.102 +0.9520490437366926 0.520640089397806 0.102 +-2.812240064709194 0.04405185912063003 0.102 +0.1902724344554182 0.9501301754918722 0.102 +0.4735059704197891 0.6170410507395194 0.102 +0.9461306302648174 0.6913036474571829 0.102 +-7.753812209391506 -3.081527670063722 0.102 +1.084764560629407 0.09257644421253591 0.102 +0.5745169723206985 0.4348372346158298 0.102 +1.104488952488172 -2.67588365604837 0.102 +0.07046410483731268 0.5246564280869838 0.102 +17.74576076551784 3.421112210871585 0.102 +0.1678016667625588 0.8998152209460566 0.102 +0.6282448672827365 0.3310090224286175 0.102 +-0.07568134070550336 -0.1324459713886784 0.102 +0.8029927951761749 0.0906105912934182 0.102 +4.653388746325263 4.990392541685623 0.102 +-0.9885462170838657 9.138762392407234 0.102 +0.4846826676293891 0.07292067679232127 0.102 +0.9544516414189407 0.8997967431350352 0.102 +0.1948033166757328 0.7725270420619494 0.102 +0.4934214696482122 0.2840508225564955 0.102 +-7.524337811507655 0.1706468377600342 0.102 +0.7549267027249714 0.751190440298752 0.102 +0.7440821587878058 0.4645072503253276 0.102 +0.1951281270477866 1.073988934696598 0.102 +0.1647261314552752 1.102854709995116 0.102 +1.033798389706252 0.9003187481852507 0.102 +0.4308920871808156 0.4533582268812462 0.102 +0.279050104311142 0.737496854866746 0.102 +0.8801751583153862 0.303774133867993 0.102 +0.9098535378996786 0.2906025552422666 0.102 +0.5910404867789162 -0.1193036715258949 0.102 +0.2716982145018293 0.8473084186595339 0.102 +-1.028408777063104 -1.819747580049571 0.102 +2.005723515995177 4.998322699773632 0.102 +0.7897323661853595 0.6319282918140631 0.102 +0.3753478687560655 0.2793087112438181 0.102 +1.044336368088618 0.7688260790001585 0.102 +0.3186902473421809 -0.02302912625185294 0.102 +-0.1092178782074796 0.6830628100640772 0.102 +-0.1250443404137449 0.7204460789703776 0.102 +0.8603561181791199 1.080322398324593 0.102 +0.845887813505484 1.107875229742741 0.102 +0.6646160737747302 0.177316380822523 0.102 +0.2120304882834047 0.1108291514985252 0.102 +12.95402784606781 -3.930320540828075 0.102 +0.8679703892943439 0.6094060811762314 0.102 +-2.571770831675284 -7.992996353043506 0.102 +0.231087162806398 0.9437321305687484 0.102 +0.1814638897363498 1.04759853659863 0.102 +0.1500606321360519 1.022476224223679 0.102 +0.774702723629566 0.6029818653920992 0.102 +0.3212557978543788 0.03621555133487886 0.102 +1.046329300985286 0.9682627428800368 0.102 +0.7189642919491256 1.033399351798995 0.102 +-0.0639932434146457 0.8345987585486608 0.102 +0.7037988009910482 0.8772271924721743 0.102 +0.04946092773777316 0.6021890684350123 0.102 +-6.357588459551059 5.786015514544834 0.102 +1.021422793871307 0.1286997585892597 0.102 +-0.01994971237004837 0.5766863282000476 0.102 +0.9673395938006122 0.5401260256481897 0.102 +1.003194082503722 -0.00330420476748099 0.102 +0.4062769990931206 0.4873416465671621 0.102 +0.7802723186357711 -0.07820331864033836 0.102 +0.8897017653134642 0.7545696675308765 0.102 +0.05824607574721096 0.1277072405088187 0.102 +-9.047104248461981 1.032402339944464 0.102 +0.2362875932082271 0.9758093749138645 0.102 +0.3075206442944429 0.2456168870666564 0.102 +0.8768281132523584 0.5729644138468635 0.102 +1.043756726696857 0.677749662718116 0.102 +3.799853072471898 1.335558196158239 0.102 +0.8201556005838333 0.5974737069212994 0.102 +-3.779738489381702 0.7103618460741732 0.102 +0.1148286584453374 0.9759236554642028 0.102 +-0.05900287086790516 0.7796877529671111 0.102 +0.8473492158246603 0.4852122610404957 0.102 +1.02064312645359 0.7210968862358564 0.102 +0.9416173233134502 0.7132405688426992 0.102 +0.9144752891184771 0.5660502257316056 0.102 +1.088094109954747 0.565080852461465 0.102 +0.4771101593361969 0.7127834825679135 0.102 +0.4471162213222926 0.7415540105799029 0.102 +0.1378326256117121 1.078753965568126 0.102 +11.34711998530724 -1.554492249079897 0.102 +0.2804189593018265 0.6536260976904118 0.102 +0.2229498733232182 1.060650802239647 0.102 +0.2839805788872084 0.006093841408498772 0.102 +0.5007854577385842 0.1238897001042783 0.102 +0.9865920222556065 -0.09667093587778096 0.102 +0.07156175226202972 0.2692636722841 0.102 +0.7505580481631695 0.5491928559089455 0.102 +1.003604674125852 1.128522835211493 0.102 +1.061529871555977 1.12150265610379 0.102 +-0.03706089242229049 0.7074270430244217 0.102 +0.1889075368147925 1.008132180882074 0.102 +-8.863740629120208 -4.244927154290767 0.102 +0.517538416993615 0.2586915429644594 0.102 +0.4047606875261615 0.09504890235039616 0.102 +0.4727229053234062 0.7673405320856339 0.102 +0.2242357767075791 0.7233902904413774 0.102 +0.8498768166236507 0.06258455971956435 0.102 +-0.05902189187951182 0.02806483470150963 0.102 +0.3850568304503653 0.01383951107421622 0.102 +0.04336326885126685 0.05085583047477357 0.102 +0.7243701168399002 0.006834576779002096 0.102 +0.6835824594701185 0.8373191738124324 0.102 +3.32112550693375 -4.257413147903749 0.102 +0.7531735615662375 0.09558465353846413 0.102 +0.703823499164681 0.5559440358368126 0.102 +0.2437329063675464 0.08977292140973134 0.102 +-0.1472728550224033 0.06752559761463292 0.102 +0.9043064432050258 -0.106715756502062 0.102 +0.8974454231276126 -0.1706544523202884 0.102 +0.9359491304291444 -0.1176383529035585 0.102 +12.7503177703067 -6.314194218387932 0.102 +0.5103427225264116 0.5603839215712868 0.102 +11.07932505293799 -3.621843309557977 0.102 +0.3840830126725161 1.096333560653036 0.102 +1.01868315991687 0.7665327053009361 0.102 +0.1217983942490379 0.9332681521441567 0.102 +0.05635928071063559 0.9167659716471279 0.102 +0.9098186719364323 0.3343408885807494 0.102 +0.1065269698000821 0.3543079932420179 0.102 +0.8781405719894837 0.4582966671438083 0.102 +17.6874759294845 -0.2876464645112912 0.102 +15.95221800779236 2.489067388886619 0.102 +0.1219046680510248 0.9042204789216554 0.102 +-0.004975282936075299 0.549452159098308 0.102 +0.5768339446388993 -0.04193475141714122 0.102 +0.3552410076046985 0.6233520797373109 0.102 +15.64560485479827 -1.12589080354106 0.102 +0.008370096048839841 0.3674705857228365 0.102 +1.192871542149954 -9.213243716993784 0.102 +0.9868375272292774 0.2693538078219858 0.102 +-0.07275516763224471 0.9561980698845212 0.102 +0.6511476715089582 1.132847041569936 0.102 +0.7440143609681834 0.6646214961520071 0.102 +0.8148685450453441 0.8750606279456604 0.102 +0.5254815355478007 1.114703470045628 0.102 +0.7392235314487521 0.9113455649414691 0.102 +13.72648327168342 -5.10589482842742 0.102 +-4.743212485839974 -1.734795301734964 0.102 +-0.009635643429941098 0.9094466461113631 0.102 +-0.04586739540182301 1.190198846302925 0.102 +-0.0464957275588524 0.5551625144820156 0.102 +17.96376051515272 -6.598106279260066 0.102 +0.9528799221484562 1.080709085979945 0.102 +17.29910528816461 7.331295266370464 0.102 +1.079833447463407 0.4543534875467422 0.102 +0.8476996326062154 0.5227903008472192 0.102 +-0.01247008233383725 1.089880839294333 0.102 +0.275538016858628 0.5697228404059334 0.102 +0.02988519529256754 0.9674305507818672 0.102 +0.6697633678878498 1.073595622369342 0.102 +0.355545544801704 0.4606505165905637 0.102 +0.1615276892291176 -0.1025610032244013 0.102 +12.38343533122978 9.288332261413057 0.102 +12.62663597612482 -9.123567624949338 0.102 +1.088574279975153 0.4308230880535886 0.102 +1.095183329404701 0.4052312403669716 0.102 +0.382649175846649 0.1670771360910891 0.102 +0.9309142929314312 0.4755903456294934 0.102 +6.419235465773474 9.294335414786621 0.102 +0.510039479991346 -0.02579203604116242 0.102 +-9.175294607737605 -2.385042792767625 0.102 +6.562766097660887 -8.74549806779277 0.102 +-0.1003371699740055 0.4305204294325854 0.102 +1.484730571411743 -0.7129653805869337 0.102 +0.9644408246981372 0.09650019578157577 0.102 +0.007537046946738627 0.6647870399841722 0.102 +0.1546145481400817 1.04083204091154 0.102 +0.2820291127778201 0.1236053394228321 0.102 +-5.279961046126181 4.058165926286303 0.102 +1.033932239678136 -0.0743128631929383 0.102 +0.2127373402903877 1.07595592699728 0.102 +0.3675695364092224 0.5195781445717652 0.102 +0.9173969479850499 0.8897569547878702 0.102 +0.2679724557668876 0.9357996057799961 0.102 +1.060903477817674 2.965344490704913 0.102 +0.1061278550965252 -0.009160192481103216 0.102 +0.3060686474491698 0.1885228140762396 0.102 +0.7986180517161883 0.6792617823244377 0.102 +0.1996886667283336 0.9099656597159417 0.102 +16.13526808452195 -3.284075073562824 0.102 +0.3815756324240588 0.9208139140616292 0.102 +0.4563003886644562 0.182924903471142 0.102 +0.7803374612339262 0.868634107482923 0.102 +2.626474272136051 5.815807380259517 0.102 +0.2951261111900538 0.9109367830870801 0.102 +11.10830006174621 6.741676903693215 0.102 +0.1568401236693277 0.9362290056612869 0.102 +0.215300538100476 0.1871022312101418 0.102 +0.8146244668530628 0.4305103280129147 0.102 +0.7673549358806513 0.2071914902451766 0.102 +1.077286794430084 0.66505505875481 0.102 +1.132367265662878 0.3075214170002987 0.102 +0.1566487575213514 0.9687362232508568 0.102 +0.786293783798828 -0.02323330989351569 0.102 +0.04429583860431661 0.8525949339256051 0.102 +0.1223261714790633 0.180677944853935 0.102 +0.1996987313055389 0.7019372875286368 0.102 +0.9596468179317565 0.2899338323236232 0.102 +1.031888603403742 0.3052011838573324 0.102 +0.698715330734306 0.7176083213562434 0.102 +0.2268594864952391 0.9910151163512235 0.102 +-0.08184944511186444 0.2687489159483253 0.102 +0.2369329474668804 0.1921822295928172 0.102 +0.5201635131796765 0.9731688372419423 0.102 +0.4582535942955173 0.8191135420603655 0.102 +0.2307624827500741 0.2170712894281512 0.102 +9.494817531712068 -0.8988215370867265 0.102 +15.55503841985768 -8.903131764559669 0.102 +8.195721080781288 1.620795478111474 0.102 +18.90164834450089 4.716281907839661 0.102 +0.2591588937886823 0.3248293262873162 0.102 +10.42372630609536 -7.224273753354056 0.102 +0.07367174105913277 0.1766025720393434 0.102 +0.654332168227883 -0.02724261122632298 0.102 +0.64508269916417 -0.05179363885492752 0.102 +0.7027975587479702 0.5265562982987324 0.102 +1.205427928558732 1.088380960231109 0.102 +0.1943310027692015 0.8312995945273529 0.102 +0.7294181919988747 0.6923941184319395 0.102 +0.8170427626958661 0.03462812372469262 0.102 +0.5135845698407175 0.8674015834742919 0.102 +0.3287184359185924 -0.008744206934935748 0.102 +-1.044434329224047 -5.549621541480737 0.102 +15.48129457977801 9.011328569879733 0.102 +0.5363057861818726 0.05659848639130519 0.102 +0.09951498319955525 0.8931775412002697 0.102 +0.8672191400164867 0.8777568806256493 0.102 +0.3155550003682022 0.223093591103864 0.102 +-5.190534503814772 1.041858544944457 0.102 +0.8470341427443989 1.001508721659109 0.102 +3.213356927893412 -0.7144963628429872 0.102 +0.1942480659854263 1.023639359085881 0.102 +0.984406479514735 1.003483934741554 0.102 +0.1347497034325852 0.8600215429775686 0.102 +0.004929666400391461 0.935353036035236 0.102 +1.073401442462959 0.4801620113675421 0.102 +0.192309202899242 0.5406632921215573 0.102 +0.5677480910983195 0.3022872685405872 0.102 +0.9842354390347535 0.08127095209126936 0.102 +0.7358044868341872 -0.03320473156639423 0.102 +0.8788625112262927 1.123037958360825 0.102 +0.4770462120710596 -0.05549021356392519 0.102 +0.9596863768829039 0.4115437055891563 0.102 +-6.217146338126215 -2.250401314157441 0.102 +0.7709779787708485 1.074116822342283 0.102 +0.6702969268001202 0.008299042598492448 0.102 +0.1247600761654821 0.7636270574320883 0.102 +0.743001290381594 0.51273716357778 0.102 +0.3927079316217419 0.7577449861752115 0.102 +0.1441167960733411 1.099682154359351 0.102 +0.806597093446501 0.01709832328622883 0.102 +0.4229881839956165 0.3505432184046587 0.102 +0.7225483326904147 -0.08555429144621299 0.102 +0.7443671126008244 -0.07383034316586509 0.102 +0.8577354851415905 0.2360262399106167 0.102 +0.8356208793862555 0.2243189114928718 0.102 +1.156588504893149 1.103702209523359 0.102 +0.6108001332505235 0.1445414750017718 0.102 +0.7162214369410326 0.7280524300641489 0.102 +1.047972948375732 0.5909903486068375 0.102 +0.9363038821913003 0.6164008130915966 0.102 +1.045113920541249 0.6343063476838539 0.102 +-7.002270846611558 -0.7130825282768516 0.102 +0.4788293241622374 0.4498499501125467 0.102 +-6.955309641423639 -8.012224443936212 0.102 +0.6854239037796805 -0.05589536535584361 0.102 +1.061511651346486 -0.1537078824826099 0.102 +-7.629166351598128 7.232327005885279 0.102 +0.3600808177923284 0.929189122170764 0.102 +16.7899290551151 0.6770788818224941 0.102 +0.4581590323793327 0.2397481903846011 0.102 +0.2153152404146544 0.2632577192109866 0.102 +0.6614412553145141 0.5588149152544271 0.102 +0.568128078312896 0.9910511920094482 0.102 +-0.02154283855099944 0.4031456598871549 0.102 +0.8105789926306273 0.33021332904734 0.102 +0.07315828483450583 0.6868350399091782 0.102 +0.2960836750754998 0.08246522868872863 0.102 +12.17927467124635 2.113909867988718 0.102 +0.1784188572441634 2.91026847199737 0.102 +11.18411764778566 -5.583071563133455 0.102 +0.4141419434167205 -0.06886766983445636 0.102 +0.2731007966783467 0.8871778904740093 0.102 +0.08987358297621892 0.6110808366979563 0.102 +0.2953532621021248 0.1536091570524093 0.102 +0.7131049974809042 0.08261141300824829 0.102 +1.065859159169893 0.7500414947836399 0.102 +0.4819109368033716 0.03496547357410203 0.102 +0.09712635867968057 0.7687357597160104 0.102 +15.26262953465765 3.930955110944957 0.102 +0.3494478162912892 0.7645610388681261 0.102 +0.1409590052129069 0.2301557655302754 0.102 +0.7022803007535485 0.5944590252563254 0.102 +-0.05356826437365621 0.3985305953861428 0.102 +0.4803325294588225 -0.01028719977200331 0.102 +0.6312489038376354 0.2373752135253852 0.102 +0.647314536673809 0.7047039048903386 0.102 +5.016601960789559 -0.6650626526158003 0.102 +0.5391010611361321 0.3658328766440139 0.102 +0.7884343383999917 0.3190106724841121 0.102 +0.441106476992044 0.8464254190975826 0.102 +0.272477933410624 0.7822071433513947 0.102 +1.131450898059719 0.7780699799801366 0.102 +0.8033381223676149 0.06009877799185609 0.102 +0.003177581538219794 0.7418883709204939 0.102 +19.17444705235081 3.005128916521675 0.102 +0.1849921147117911 0.8088822343914674 0.102 +0.6672990917575263 0.7210162885877704 0.102 +0.5600365783530793 0.54346106889769 0.102 +0.4769650158415438 0.909688233120207 0.102 +0.4367980366657461 0.0908617155104403 0.102 +-6.462157837435833 -9.18359350931823 0.102 +1.055107150755759 0.108546583792186 0.102 +17.85549807467599 -9.314466421696986 0.102 +0.4556818101937002 0.9504231559638229 0.102 +0.9814828265686757 0.2961648885405882 0.102 +0.8470798705772664 0.8282914065884999 0.102 +-8.13012085092952 -5.391093846900919 0.102 +0.5773641636044193 0.927181626980827 0.102 +0.1825527123602224 0.2468967934049285 0.102 +1.43669405087194 7.505211923625392 0.102 +9.7469071617697 3.642051489413825 0.102 +9.56814103080452 4.122095628630859 0.102 +-0.09921043536893548 -0.06052517531600015 0.102 +0.0970052892815156 0.570221023603787 0.102 +0.6407258413160777 0.0181436796625386 0.102 +0.4971831757009485 0.7883118530449971 0.102 +0.637232635314087 0.07132507063255837 0.102 +0.3355235967463995 0.3074070518577713 0.102 +-0.02447447998427484 0.9093613632280519 0.102 +0.3499863621267446 0.9055213542975976 0.102 +0.8293490029207702 1.049377812859848 0.102 +0.6487918094058157 0.8691196311206962 0.102 +0.3222480323184778 0.3978370275866773 0.102 +0.5612753733424579 0.2611794254384518 0.102 +9.189011019538128 2.603693319803721 0.102 +17.84588242958878 9.277592559718075 0.102 +-0.1089753184572371 0.09262414404025629 0.102 +-0.1187417818657154 0.07408093930432433 0.102 +1.103775597746656 1.055099136451508 0.102 +0.7745693899568198 0.5245858656516721 0.102 +0.4498965667786497 0.3495505003886204 0.102 +8.906469634120729 0.4374530859541541 0.102 +0.1636131373739343 0.3654069962699366 0.102 +0.2673728345888327 0.9683354698817231 0.102 +-9.072097752279166 -6.122688270621274 0.102 +-7.642877552627217 2.984823756157889 0.102 +0.6364701954816467 0.3623670469375921 0.102 +0.2991837131843114 0.6275245062166885 0.102 +-0.1026538884600608 0.1903799314532817 0.102 +0.6102236501085996 0.4043336289566215 0.102 +-6.611186745693548 9.181607544193531 0.102 +2.764181296181472 8.86936578082801 0.102 +7.724055417859415 -3.267107706699194 0.102 +0.2521136999167869 0.8668829079086861 0.102 +0.1110442831617409 0.5411244324675173 0.102 +0.680736170999674 0.23602292322164 0.102 +0.9675814064897166 0.6410201196912593 0.102 +1.093899722401037 1.130193464320989 0.102 +0.5871126184033111 0.7937672391039596 0.102 +0.2968753438323532 1.045030174856705 0.102 +0.9883390809791355 0.04656649630571404 0.102 +0.2577173438732333 0.0430279370491383 0.102 +0.1881602959516961 0.2075432953746639 0.102 +-9.299371417363465 6.751144831624871 0.102 +0.890750587391354 0.02082639956607272 0.102 +0.6158321440243175 0.9394286031379849 0.102 +0.1508855492778764 0.1572946358999948 0.102 +0.5832642420837353 0.4096623122419841 0.102 +0.05091929573993723 0.3432921390169212 0.102 +14.02724317568544 4.862617687879036 0.102 +0.1844119436401155 0.2878975391753564 0.102 +0.2488349074325869 0.2528392320085575 0.102 +-2.040832538609755 -3.194090482013704 0.102 +0.3144393074573202 0.2810534685642729 0.102 +0.7271777452577565 0.4360724789455678 0.102 +0.08231181802137214 0.9607057403947158 0.102 +0.8360894778908955 0.3489796997726628 0.102 +0.5720434419277893 1.070134533232911 0.102 +0.7064261931212752 0.1824681296977892 0.102 +14.37254470553041 -1.636740336489112 0.102 +0.1892611411743161 0.4169563020230471 0.102 +0.7153113459816891 0.8493217152047949 0.102 +0.06097549477897127 0.8037935286330911 0.102 +0.6583732180841996 0.9763268163041308 0.102 +-1.51916236126573 -9.286025862474901 0.102 +0.2955579004054695 -0.06434462607651403 0.102 +1.016793954984942 0.5955935219009448 0.102 +0.3093688275572446 0.9753501019228541 0.102 +8.337243263176591 -5.354531782540609 0.102 +0.671190165913239 0.1172763997219988 0.102 +0.02624018130515038 0.7491688705061189 0.102 +10.41650141510515 1.783693681497694 0.102 +0.69739196247892 0.6416900942456768 0.102 +0.7352548217573991 0.9615693988776949 0.102 +1.11968915209096 0.5781981832095135 0.102 +1.103090831254857 0.6088131720153007 0.102 +1.127802647692199 0.5435808497250751 0.102 +0.4621628891871364 1.007439889394554 0.102 +0.8005521138407602 0.1368008871967866 0.102 +0.2380514971219614 0.8244817324113574 0.102 +0.2052393755584746 0.1353538862227811 0.102 +0.7997302716456632 0.9826427786953107 0.102 +0.3769011125787665 0.8296578231627489 0.102 +0.9807720298660588 1.064953599114805 0.102 +8.620508803477275 5.354747240585978 0.102 +0.8971476690696202 0.05177950391901716 0.102 +0.1641782007262561 0.7377826531302263 0.102 +0.4348921345365509 0.3832461451567709 0.102 +0.9044165596283021 0.6826690180052326 0.102 +0.5382650285491803 0.3865587680340987 0.102 +0.3870817540527359 0.4133766139191678 0.102 +0.405311144559039 0.8002096082256356 0.102 +0.850200071517653 -0.09433077467312757 0.102 +0.6003726104007627 0.78037831942376 0.102 +0.8526109664354838 -0.05424235283630582 0.102 +0.01689214194473781 0.02205344484900395 0.102 +0.6373498703959753 -0.01424629473713991 0.102 +0.4495349871820536 -0.08811752908792805 0.102 +0.2908862115823537 0.8649419175043378 0.102 +0.9412880612147523 0.9756465251434678 0.102 +0.9234931903776666 0.9459431415540566 0.102 +0.8219963906103006 0.6996006047486961 0.102 +0.72116740623409 0.8053632533171465 0.102 +19.04800218479315 6.365128818594613 0.102 +19.06814918089913 -6.116943283409157 0.102 +0.08955341821783409 1.049420439535089 0.102 +0.599685839356715 0.4502053597528927 0.102 +0.5025974663095345 0.4841756420159623 0.102 +0.4565818178017681 0.5433612234062267 0.102 +1.100854575662377 0.4616673881045684 0.102 +1.06452186571551 0.2854441124125633 0.102 +0.3846535872327284 0.8699384862765619 0.102 +0.3391315580074784 0.1552967769875073 0.102 +0.3254935728783303 0.6183585319734808 0.102 +0.08742457475305404 0.8223763977953773 0.102 +6.636308684642054 1.88966307708446 0.102 +1.017707915658884 0.4136430614775207 0.102 +14.2648250522623 0.825301738422426 0.102 +0.3164840518103243 0.5181229230441734 0.102 +0.326210724503387 0.1342514097161991 0.102 +-0.102319840309436 0.1593503447139427 0.102 +0.2827078785365321 0.4162540977108168 0.102 +0.6100473219479102 1.123832295385976 0.102 +0.5438716782847069 0.4743027666461794 0.102 +1.085409291228502 0.6994191576512329 0.102 +0.3826114225539403 0.9796306358140576 0.102 +-7.711896684029657 5.696827371837061 0.102 +0.9753039423195946 0.9300191772117159 0.102 +0.2589377870542517 0.6595962626031474 0.102 +0.4448316234869149 1.027997429852091 0.102 +0.3180701425610507 0.004123072470986756 0.102 +0.09987634775894058 1.104536043489105 0.102 +-0.002091335334944452 0.9484496571909313 0.102 +18.15127888830054 -3.211006444856856 0.102 +0.4669623448834327 1.087512502354963 0.102 +-0.06113366775667893 0.434493551457913 0.102 +0.1849787390952033 0.7061573653364028 0.102 +0.8185982879675751 0.9178480522985623 0.102 +0.5488222868143844 0.7898127824626009 0.102 +-0.04662625814837831 0.5816805796744361 0.102 +0.7962295567891758 0.9494910061994744 0.102 +0.1992659200797001 -0.03082171034801681 0.102 +0.04020417585464505 0.7147625419874336 0.102 +-0.09497883128166903 0.01956830797458256 0.102 +-0.1295525478354709 -0.003845925427542196 0.102 +-0.1055554990628304 0.001468532845571197 0.102 +0.45223113797543 0.793870604140153 0.102 +11.52953138002362 1.041689752766177 0.102 +1.083791067731757 -0.07998564825881205 0.102 +-4.510876037375929 0.04211632342326708 0.102 +0.009587599800374181 0.09780561585278988 0.102 +6.885783284486313 -7.636555312735439 0.102 +1.071201748654898 0.540728960907729 0.102 +1.0920345544192 0.682511350635032 0.102 +1.11300450647668 0.6824115097281502 0.102 +1.142205974484622 0.726116712068642 0.102 +1.153718972867364 0.6852083090075008 0.102 +0.7897274875298149 0.2914392120080858 0.102 +0.7229715266838481 0.6197442873884983 0.102 +0.2535199846088481 0.8872701583216385 0.102 +11.91876513073392 3.6909818013082 0.102 +0.507765485124458 0.3073680017468931 0.102 +0.8912864233578233 0.6127575515588297 0.102 +0.7991987284729108 1.014273632121185 0.102 +1.186950923303086 -0.3782708703970166 0.102 +0.2497199567764245 0.7552343730266546 0.102 +0.4218485826651485 0.6552125792261442 0.102 +0.5082282842041057 0.2030585319239893 0.102 +0.1534293829504997 0.5404126787797251 0.102 +0.4824010482613985 1.060241232756622 0.102 +0.4067617460759996 1.004427991593268 0.102 +4.808370703353818 -8.980946412790759 0.102 +0.7646070144502775 -0.09921125485602195 0.102 +0.5129586182221557 0.7496682463067873 0.102 +-0.06468959718721704 0.5978012443351566 0.102 +0.1121865104612098 0.6071814838714888 0.102 +12.48403476462517 -7.227320679118701 0.102 +13.42926828283259 -7.679220433071959 0.102 +4.345128626300896 -4.729214277422338 0.102 +1.088192605051219 0.7503464060325915 0.102 +1.097964052232818 0.7344490822650791 0.102 +1.146441137196254 0.2105805270450357 0.102 +0.2186550325485653 0.8976732717578464 0.102 +0.2149419442777825 0.6736941094661575 0.102 +0.2520899161211285 0.5446433472159951 0.102 +0.8684847315258644 0.04155059133179128 0.102 +-0.09657240978040323 0.2573599564564146 0.102 +0.6840498852251278 0.2864026795924045 0.102 +0.6947856078783603 0.3120443855035798 0.102 +0.7029370007360054 1.00012687017017 0.102 +-0.02141522044094975 0.2045343088709362 0.102 +0.3368106418549219 1.036837125877958 0.102 +0.7482247533580531 0.3153046499900213 0.102 +0.5403545546570535 0.5787908216130003 0.102 +0.7527624470814719 0.01845202566075668 0.102 +0.1093722150392864 -0.03853657396632494 0.102 +12.89343758051655 7.889856033843365 0.102 +0.3340904710525527 0.8543902760050823 0.102 +0.06071761372492344 0.4806613445441744 0.102 +0.03820252962398159 0.2734313753330201 0.102 +0.2784570787547256 -0.03214319397747523 0.102 +-0.04848649716197518 0.7288879969003738 0.102 +7.757384194424878 8.014973273580573 0.102 +0.517284035083645 0.607196569834537 0.102 +0.5119260157919815 0.4050190533713919 0.102 +0.4214219706995534 0.9030862137088913 0.102 +0.7003521999181085 0.4670501734737432 0.102 +0.1021374544904983 0.4526154970368907 0.102 +0.1562449326296112 0.8013510496623863 0.102 +0.01049069385563021 0.7156241757750261 0.102 +0.2447391254052704 0.924582943210719 0.102 +0.1540627392435309 0.5157088885848262 0.102 +0.8691525578842783 0.5280990903126067 0.102 +0.9173740801568806 0.3197325911072919 0.102 +0.7301292771494881 0.05672490935117995 0.102 +0.2332959937517623 0.5154888566520571 0.102 +0.9516085135504967 0.3423469480192957 0.102 +0.5495193758974214 0.4307564015327174 0.102 +0.5556426807330919 0.3196668561678295 0.102 +0.5953878586083845 0.1947290214038162 0.102 +0.6933369751721649 1.054350986429642 0.102 +0.8562208025738827 0.9392148204710012 0.102 +0.8948227696502686 0.9424911862067309 0.102 +0.9744525208333954 0.02917604754432916 0.102 +0.4277102364729445 0.7974357497514403 0.102 +0.7545317724333684 1.057674778749417 0.102 +9.194847378131264 -1.912606657473314 0.102 +0.8302021142836791 0.6484912196433883 0.102 +0.6242595669714295 0.9586262753066778 0.102 +0.6138647040209994 1.062635354053381 0.102 +0.7139206850881917 0.7766337990756689 0.102 +-0.8634886250600855 -3.04981292467716 0.102 +0.2602956474684166 0.375404583452667 0.102 +0.0004797759359811427 0.8673628678652436 0.102 +0.06807123937148678 0.430497080984402 0.102 +0.8282908129420877 0.9413571758418124 0.102 +0.9327248737371219 0.8041620950533586 0.102 +7.925624003482835 -7.958833542909213 0.102 +-0.07162747831952657 0.5333517799742336 0.102 +-0.05403650595095805 0.5094230947399117 0.102 +-2.838568894246688 2.395390758223364 0.102 +0.07981910229444886 0.7116974030758192 0.102 +-0.06671162453484995 0.06309783193764903 0.102 +0.4630464347991687 1.044520755204022 0.102 +0.4148546332644338 0.9367107139308454 0.102 +0.6108939933334729 0.7650705779356227 0.102 +1.022579627471007 0.9533623711544653 0.102 +0.08239085146874761 0.3395629981432517 0.102 +0.4272722349444623 1.048758939108417 0.102 +0.78315801050671 0.2558273781014085 0.102 +0.5432065488938528 0.2363020245330249 0.102 +0.2825568576267356 0.2614715075151146 0.102 +0.1406741469174126 0.6612372799460917 0.102 +0.4755820594885862 0.3810132257984845 0.102 +8.172556309217674 -6.760334773542072 0.102 +0.3177256451797156 0.8850832863690257 0.102 +-0.08750687832985656 0.2405307725680167 0.102 +0.2627001367073442 0.4485888185312509 0.102 +0.08851106647212326 0.4971960275994697 0.102 +0.9581551806884799 0.1303985174861992 0.102 +0.3639435721222323 0.1526075213035109 0.102 +14.86587328272105 2.561783039625833 0.102 +13.46073965803741 0.6254494736591711 0.102 +0.2643445381636291 0.2759767463942537 0.102 +0.1926601125421573 0.3378411233894605 0.102 +-0.01966833946533441 0.4729324955318246 0.102 +0.6352207493374897 1.005112440726371 0.102 +0.05559695717084624 0.5511621931944694 0.102 +0.1479931809773669 0.8319206188555157 0.102 +0.3961613333160432 1.022472850972173 0.102 +0.40038424944235 1.045604425686124 0.102 +0.01927038312856198 0.7893659676536074 0.102 +0.462081245881915 0.5700542137909979 0.102 +13.79385229179702 -0.3276742782578616 0.102 +1.01745242719896 0.8083409220577179 0.102 +9.923645732708099 5.543497061112578 0.102 +0.3905254230692781 0.8448730924252333 0.102 +0.1619911214012173 0.5920750680167715 0.102 +0.2077105409608567 0.5769574231284791 0.102 +-2.445757548498784 9.203541280886252 0.102 +0.6952986763396345 -0.09475074247961007 0.102 +0.1276592762215146 0.3238634773429249 0.102 +0.8439268544434622 0.6033106635371606 0.102 +0.6341790672288445 0.8315386282999141 0.102 +0.6067811944332933 0.4755005472043424 0.102 +16.20090960751611 -5.433285350062798 0.102 +-0.09565820521678582 0.1083020956505599 0.102 +-0.09946453063967223 0.1287744971231553 0.102 +-0.6112706846143277 -1.058107207513819 0.102 +0.7123295425428754 0.7030360959947615 0.102 +0.8395875169347788 0.0192628719552561 0.102 +0.2278472171311232 0.8423207349375215 0.102 +-0.1997008560105283 0.2871375406619835 0.102 +0.8878933875107263 0.3387808924111622 0.102 +0.02057869901797163 0.1699867802477933 0.102 +12.52246802252376 5.231443912914781 0.102 +0.4259642457286966 1.014058412663798 0.102 +0.2766202745750909 0.7028146103250384 0.102 +-0.06411599908004594 0.7106826520458717 0.102 +1.068741777884199 0.8285950670805696 0.102 +0.2984177662116356 0.8345913196706038 0.102 +-0.7920878112603417 3.764931730134246 0.102 +15.05193745216137 -7.56540889166901 0.102 +0.9021904460111132 0.2582171974715617 0.102 +-9.255483194802515 3.725042044645679 0.102 +19.08751525670368 -3.035341268816005 0.102 +0.6469828858652829 0.6656464940871865 0.102 +14.94907923255322 0.05574077758440337 0.102 +0.6737212360383111 -0.03365367996716665 0.102 +-3.442138275574799 3.570405177113309 0.102 +0.1342343726248395 0.04713953412120703 0.102 +7.052875910061219 9.18220706234097 0.102 +0.4782751639021194 0.4135261794839903 0.102 +0.3655815537579921 0.1902264255918257 0.102 +0.6313469218310837 0.8459957718055444 0.102 +0.4118536891933344 0.2118089799228808 0.102 +-4.633722883576699 6.973119229096812 0.102 +-0.01626546628552299 0.9471370772183473 0.102 +-0.09161157539000953 -0.014259563931883 0.102 +-2.299512436379557 4.055672447944207 0.102 +0.04953041355743976 0.7603757702434546 0.102 +-0.1087845654262021 1.093950128092878 0.102 +0.0160227852639278 0.4913955794018333 0.102 +0.4150426567936172 0.9622194087587478 0.102 +0.9586043803033286 0.3733241761650661 0.102 +0.5534446051462543 0.496613845449684 0.102 +0.3681480599921154 1.03016083599637 0.102 +0.3547965869496776 0.3514581567064432 0.102 +0.3864019057961487 -0.09344451017802509 0.102 +0.3778371576349953 0.967973502697138 0.102 +0.6415846742986635 0.7597657772624347 0.102 +15.03880655348038 7.831897780688172 0.102 +15.95961013337935 5.583248877063276 0.102 +2.369223463238524 7.387309258741786 0.102 +0.9720724473099804 0.4645919462498566 0.102 +0.9932491603820108 0.435265037300134 0.102 +0.607346096582088 0.2486052053804146 0.102 +1.029498546580956 0.9911600609466712 0.102 +0.2390969154498761 0.9030903069941292 0.102 +0.8736853442024906 0.6561799736009832 0.102 +0.4870705076618468 0.8436546729270678 0.102 +0.6675996588587081 1.008020693969213 0.102 +0.5700904946371974 0.2186294871007692 0.102 +0.3646118668896535 0.06631471419009599 0.102 +0.6766819332456755 0.04171459148644965 0.102 +19.2315546974662 -0.06356987137064922 0.102 +0.8830540801188577 0.9059078871693366 0.102 +0.489575737600772 0.9581581825136017 0.102 +0.2695975020727587 1.000216205392812 0.102 +12.16654212053445 -2.770305489366014 0.102 +0.513199310949213 1.050123967762328 0.102 +0.7502023868828118 0.5983349868753685 0.102 +0.2363527924593528 0.5919456734672358 0.102 +0.5351519604784025 -0.01880994853728809 0.102 +3.261769647085167 2.255890926160858 0.102 +0.06933812681973486 0.6098510615483098 0.102 +0.5471188633242684 1.028021294657862 0.102 +0.7259287376859233 0.2114350515307378 0.102 +0.6694419261553111 0.9394683290447832 0.102 +0.4223978977599639 0.1083354616445375 0.102 +7.333409252332752 5.05701509925241 0.102 +0.7636893329263325 0.646702724264959 0.102 +13.28410013726076 -2.173535113784053 0.102 +0.6414862917239571 0.2174588840021381 0.102 +0.9483406403844767 0.3104379613332887 0.102 +-1.348193175094909 2.154588053698355 0.102 +0.4515490699168071 0.2908192079390985 0.102 +0.7964840705373717 -0.002498472759010899 0.102 +8.302055859220962 6.66675014973545 0.102 +0.8250422379683451 0.1902196274491707 0.102 +-1.260299920473052 7.440323073508177 0.102 +0.5737963500912273 0.5667595640239858 0.102 +0.3401820707327877 0.8075329984319168 0.102 +0.05794613492072338 1.040927764734643 0.102 +0.634837584184174 0.9293031101934857 0.102 +0.599666061253473 0.7351117750203929 0.102 +3.053776843555375 -9.046563392208288 0.102 +0.9411167092194961 0.2808335213948654 0.102 +0.9115050786608638 0.6375259940264842 0.102 +0.864436047670338 1.016083577471598 0.102 +0.2315974185874672 0.8698039104511878 0.102 +-3.30240812651829 -2.1033441214275 0.102 +0.3490982017246859 0.9892500181313335 0.102 +2.423832028458163 -7.064521225699282 0.102 +-8.988485881050149 -1.581950209438619 0.102 +-3.272978368741512 6.28678077762034 0.102 +0.5352020447688007 0.5471785842709004 0.102 +0.3887063038245128 -0.04836976856782686 0.102 +0.1866113183441247 0.6585018227554059 0.102 +1.021961555677822 0.9206217871460857 0.102 +0.1643296011425767 0.6442724546502127 0.102 +0.1993506904453368 0.5257108328532507 0.102 +0.2217312578072655 0.162975368964727 0.102 +0.1617534671883622 0.7668877463860132 0.102 +0.8350023961029497 0.7358851606393416 0.102 +0.1964147982833478 0.2536713973545371 0.102 +0.729506144888062 -1.976173711564313 0.102 +-0.07471460309715254 0.9085080524681128 0.102 +-0.0570462181836662 0.9277055478966282 0.102 +0.7457968754926597 0.7670684710385703 0.102 +0.2360906760403275 0.1142998126875192 0.102 +0.8023371145908472 0.5952346634738794 0.102 +0.2930094136673295 0.7618067444791164 0.102 +1.117013878823974 0.8534980543925014 0.102 +0.6161361147143893 1.004016881083343 0.102 +0.3899060536632996 0.9429671995384252 0.102 +6.13734075011322 -2.629742886488911 0.102 +7.518023929113437 -9.031787526900482 0.102 +-0.04782550741742842 -0.005832018523667906 0.102 +0.6326031774713905 0.18463357210516 0.102 +0.3194183939520328 0.6450300650932111 0.102 +0.6102375876471404 -0.05739445187002445 0.102 +0.5995668651871491 -0.03648449692427004 0.102 +-8.41405355725006 9.017160267772629 0.102 +1.03434116380567 -0.03940839843197508 0.102 +1.021652810861919 0.01408249840189749 0.102 +0.2721485568649853 0.9092795952601653 0.102 +0.9711231784161906 0.001795226972961966 0.102 +0.1001318815302789 -0.1077178822768657 0.102 +8.213598258384831 3.455070414433742 0.102 +-3.832300074538279 -0.552472264476604 0.102 +0.9263976801831622 1.045169365723258 0.102 +0.2444056234118595 0.6912500691228853 0.102 +-0.05583658999858375 0.9855086260561479 0.102 +0.7458203407006857 -0.04385061434678998 0.102 +4.798028034046517 2.20611099195912 0.102 +-5.660929586929052 -8.089850664262336 0.102 +0.1390136852031543 0.8828974157241355 0.102 +-0.03105219602398273 0.9218899165358261 0.102 +-0.09393929225121975 0.6648103958800556 0.102 +1.130479863555739 0.01917165832118633 0.102 +1.190460142208206 0.03369294709726837 0.102 +1.390901154283543 0.09226284429703376 0.102 +1.242838566404857 -0.09700462408479807 0.102 +0.2010768460225902 0.7407451821363442 0.102 +0.384376064009932 0.5565173961216308 0.102 +0.5502094876905864 -0.04683125834747928 0.102 +4.932975849561672 -2.908945648116909 0.102 +-8.028881924183967 -9.023756032537431 0.102 +0.8344103835930089 0.1686241182780772 0.102 +-0.02685142294020948 0.7602830239988622 0.102 +0.5997198430604266 0.6561040014470577 0.102 +0.6740717015260865 0.7539029187349664 0.102 +0.4519874903868165 0.1337337241818485 0.102 +0.3977092859391118 0.2592348163364798 0.102 +-4.805101336882088 -6.081829484641639 0.102 +0.5380368006267516 0.9419414741299852 0.102 +0.3484122884411834 0.2671857342110067 0.102 +0.3900934593107833 0.6729723138444885 0.102 +-2.002577884422664 1.41224968371516 0.102 +0.6299771532215271 0.2711215930509315 0.102 +2.123859288845654 -2.74464219779951 0.102 +0.02590090280319446 0.5577652207847559 0.102 +0.01409684259954008 0.07457388672997556 0.102 +0.7736041432531078 0.675394965596568 0.102 +0.4411278648225198 0.987226010290947 0.102 +0.1431603445585649 -0.04982839282545112 0.102 +-0.02872075860324821 0.3402600594642616 0.102 +0.674561385474486 1.43083052107119 0.102 +-0.05033376558460761 0.2345582697475677 0.102 +-0.09209713548975838 0.7672533162265961 0.102 +0.7027865520258836 0.949965491874104 0.102 +1.040995633392725 0.8435203022194139 0.102 +-4.077223686500978 1.735183794435941 0.102 +14.95185675096663 -3.992189984615187 0.102 +0.3084547799248155 0.3410861193151041 0.102 +0.9818814751732405 0.7604206907195367 0.102 +-0.02065742834464327 -5.969462818476583 0.102 +0.1412757572251244 0.4269665567033762 0.102 +0.9287777449251927 0.9224407610451471 0.102 +1.056537545776844 0.01389617656974547 0.102 +-7.009620156885881 2.039425842487121 0.102 +0.3637078309945752 0.8130209371318008 0.102 +0.9975111616704406 0.9331780502995096 0.102 +0.3811052781615174 0.3792764483672987 0.102 +0.3947396827856773 0.9812344092727803 0.102 +-1.61448491314832 -1.340556299293288 0.102 +-0.04878486790533172 -0.07035685772505235 0.102 +0.2498902985298936 0.01064556313393834 0.102 +-0.08931194033602376 0.5658748230384002 0.102 +-0.07689158208472671 0.5834262718220328 0.102 +-0.09030521492828306 0.6000377128840112 0.102 +-0.09787082144200644 0.6228202580427171 0.102 +-0.09209525155064442 0.9054851114004384 0.102 +-0.4952463643977179 -6.934032794168542 0.102 +0.8043338163913413 0.46235344710904 0.102 +-0.1793777829117212 0.6075497302568517 0.102 +0.509734252148763 0.8455688529378786 0.102 +0.5641841727053141 0.6088595899447001 0.102 +1.041300340222993 0.3531746138731287 0.102 +0.595181023005863 0.3413793026365183 0.102 +1.097674699531989 0.7671733854647368 0.102 +0.08173121205064293 0.4759588123928126 0.102 +0.4301679464542102 0.8741027045628782 0.102 +0.3688663698331227 0.6425719684085218 0.102 +0.2934734917189289 0.3539661150783464 0.102 +1.018294231958215 0.08481997717632465 0.102 +0.5653642902275786 0.3834722974289575 0.102 +0.6883015594740984 0.8822816366467052 0.102 +0.4966645227146316 0.7458263433654599 0.102 +19.06618436209985 2.099606447800743 0.102 +0.1464718251765037 0.1813731856636973 0.102 +0.5833532983257111 1.096390870906199 0.102 +-0.0752071898285591 0.6655835748880186 0.102 +0.2228616346276563 0.2955015395353733 0.102 +3.786231511922756 3.874907050784327 0.102 +18.11682020025515 5.558504942638788 0.102 +18.20293246363397 -5.452640747118894 0.102 +0.2854045435112634 0.6757075665563341 0.102 +0.5538490690365316 0.04000158426046296 0.102 +0.9364689904659613 0.7583898480179051 0.102 +0.3418270715167137 0.05154882255666506 0.102 +0.7540871074330504 0.2299897594503791 0.102 +0.6064212790153316 0.02409919639694342 0.102 +0.000851620294750103 0.8247032535347893 0.102 +0.930994525061503 0.9988534662697638 0.102 +-7.488446689343003 -2.339791547949029 0.102 +0.2059749257864064 0.2824101097910861 0.102 +0.3556399668102412 0.2428252206081701 0.102 +0.694956207844991 0.8106164922443424 0.102 +0.03145128270516977 0.5331749907657075 0.102 +1.512600884538076 -7.537957786183737 0.102 +0.2927529437801126 0.3167154864096302 0.102 +0.2694123187059059 1.075575535602955 0.102 +0.9572965197574758 0.7825858624360019 0.102 +1.042248020655622 0.2554465475326609 0.102 +3.698758961408318 -8.223993610136192 0.102 +-0.05301898849801359 0.6867409995218846 0.102 +0.4451387926806357 0.1571175839614598 0.102 +0.1150819271882726 0.676469882633422 0.102 +7.580398468877172 0.1522656024955986 0.102 +0.648904272763279 0.7923465360386011 0.102 +0.4180201971834094 0.7694876273315989 0.102 +0.03366463231684202 0.4628506715284514 0.102 +-4.006783785499273 -5.066952266975938 0.102 +1.058172769001607 1.019027668195748 0.102 +0.2284738637775327 -0.04456324600148904 0.102 +0.8257446435106723 0.8510124970185544 0.102 +0.5729151205334808 -0.01146217086128063 0.102 +-0.8915609323463637 -8.328853798840253 0.102 +0.1982700591327781 0.4503373792858603 0.102 +0.4020963558102231 0.8623326035469956 0.102 +0.4308078643155882 0.2298492247911783 0.102 +0.2528436233782738 0.8256282170652131 0.102 +0.4452429344906106 0.6905243598343819 0.102 +0.8592814250946303 0.9847488642563118 0.102 +-2.871424581728117 7.440637044242095 0.102 +-3.975292511635448 8.073261672702003 0.102 +1.079442995038509 0.3198260068872779 0.102 +0.2118025802361891 0.3124627381607333 0.102 +0.6952824824188941 1.109025500771364 0.102 +-3.784641750097876 -7.905865509510978 0.102 +0.3354996384950535 0.1818483250527611 0.102 +0.1628501370601191 0.3170269082047119 0.102 +-0.09988030398560481 0.5086745497730291 0.102 +-0.1346809444855921 0.559002978943522 0.102 +0.003861757859510459 0.5212738068404049 0.102 +1.057324364780489 0.787689525158106 0.102 +0.6015954029743251 0.5208232448561128 0.102 +0.4790280563099648 1.023701153454312 0.102 +0.8383976759981449 -0.07956467371713155 0.102 +1.023894869278342 0.666560555047475 0.102 +1.005722235998542 0.6530826328074817 0.102 +0.8276342028766861 -0.05436805904832519 0.102 +0.323534890360633 0.4914494418684803 0.102 +0.3510231370814055 0.4913858447675211 0.102 +0.5185230426309593 0.6300165010100612 0.102 +0.3972220437464574 0.7363580292501942 0.102 +0.3109543979024729 0.9348539335084822 0.102 +0.6032927764688077 0.3730210215155473 0.102 +0.8263190613061885 0.5531936911406565 0.102 +0.9819852222736335 0.7010204010618312 0.102 +1.079485192319875 -0.1053105058632268 0.102 +4.772488456747026 -1.618299614768513 0.102 +-0.0171771364913575 0.1417918930469864 0.102 +9.604981832032912 -5.845700524306658 0.102 +-0.01758161157016152 0.2341846901199362 0.102 +0.7687569635510519 0.4188720127267216 0.102 +0.9471516012369681 -6.331108797129163 0.102 +0.898233040309388 1.009345582651525 0.102 +0.374853283956531 0.9888348176367306 0.102 +1.004057417167153 0.5047150522267438 0.102 +0.7298846394498075 0.884245621564809 0.102 +0.2864828892946286 0.8496863904545828 0.102 +-4.678431568774211 -6.958302587601392 0.102 +0.3556671132465425 0.3890391531691598 0.102 +14.8089645446393 -2.566107217037557 0.102 +0.7682942853652041 0.9831777214098014 0.102 +-0.1042158914473803 4.846992763736628 0.102 +11.17645937518584 -6.611522110210093 0.102 +15.21015381280379 1.819046044740745 0.102 +0.2870139113184424 0.03740580016992156 0.102 +0.7462002666533103 0.6220336944057161 0.102 +0.788647847016841 0.1753815587141227 0.102 +0.7958235848826563 0.2008898753089499 0.102 +0.7517021711910225 1.027384965735066 0.102 +1.221064995189259 6.72641536845155 0.102 +-7.968517923891079 -1.201481567687528 0.102 +0.5193672437143881 0.03841349129149459 0.102 +17.30690160644514 2.687947232011577 0.102 +17.87838785383522 1.437237507275129 0.102 +1.097358698620561 0.8548272826896383 0.102 +0.6709188435714182 0.4890327933145134 0.102 +-0.08894145684274583 0.3867891897059609 0.102 +17.00454320194591 -1.739396385444246 0.102 +0.08836316858504259 -0.04820647350090235 0.102 +-9.039880124423583 -8.02395058241302 0.102 +0.0001782077190061799 -0.03093959126060519 0.102 +0.5867973065389565 0.7018002232416807 0.102 +-2.931334791395551 -9.079764450670551 0.102 +0.2897903680687997 0.2365252884402762 0.102 +0.1332018817138338 -0.1003607759620538 0.102 +0.8931400687058078 0.2228213725062848 0.102 +0.9844665048593948 0.8576732938327226 0.102 +0.8659281457848418 0.7804622700757962 0.102 +0.2052431296865505 0.796120083717741 0.102 +0.6767908238150401 0.8695826340037609 0.102 +0.324291251309834 0.5637672016846496 0.102 +0.1318654756705394 1.017589076941117 0.102 +12.05291744909356 -0.6832657874145954 0.102 +1.009874592288906 0.7425148085256692 0.102 +0.576394335050216 0.1164945777250802 0.102 +13.67232752527311 -3.231271962172212 0.102 +1.056203305561531 0.1543133982186871 0.102 +0.004825738148713968 0.274956172208184 0.102 +6.467468475963648 3.560716225629994 0.102 +0.749012466680406 0.4423246163577439 0.102 +7.275643176661924 1.750416787231487 0.102 +0.6413266863397393 0.8960033766174224 0.102 +0.2179992943824705 1.032480811199004 0.102 +0.1621515060774899 -0.07466633271166438 0.102 +-0.5082484088106305 6.691290420670461 0.102 +0.3927559631673987 0.8906465673508468 0.102 +-9.006927851367061 8.421203006854148 0.102 +0.7832200626918593 0.398910624820669 0.102 +0.588687993546015 0.5915766612451114 0.102 +0.4205643237007612 -0.1831084889352936 0.102 +0.5630601256157635 -0.09138317402740277 0.102 +0.5319265071089332 0.2122387196137785 0.102 +1.157153961226709 0.9907665738073098 0.102 +0.5873997455489288 0.4821636770213063 0.102 +0.5160852525089172 0.8086391943769684 0.102 +1.07118588261206 0.8953778419231995 0.102 +1.011751726700339 0.6879810878577951 0.102 +0.7521130265544124 0.7981591794628851 0.102 +0.2523737726073252 0.635868085506574 0.102 +-6.96825444270115 1.092008532067397 0.102 +6.945386668176819 6.285964406131661 0.102 +0.4257293461949246 1.092796461951394 0.102 +0.427382935171464 1.140998383617239 0.102 +6.249898505991201 4.686624128011568 0.102 +0.4358691910047883 0.9596594459202384 0.102 +0.5990718689007529 0.8545177381256657 0.102 +0.7812594979759401 0.06182158759943617 0.102 +9.84378794723793 -3.552225450832381 0.102 +0.4054811032647447 0.6096459616735804 0.102 +0.710662519821564 -0.06380816106619668 0.102 +0.5093113929192219 -0.04585758182940256 0.102 +0.989565859101541 1.246280544982071 0.102 +-0.09491541224593603 0.8687915622450846 0.102 +-0.08875969346968547 0.8485195539730634 0.102 +16.1402419546941 -9.288584858619963 0.102 +0.2291385621275288 0.4828422329720803 0.102 +1.076823760720131 1.032605261150643 0.102 +0.4876038616601587 0.1860235843622283 0.102 +0.9261433474406082 0.127307802641011 0.102 +0.5695667811958007 0.4643013592167393 0.102 +-0.01219446142629519 0.5980482962547772 0.102 +-0.02767095411273646 0.08706634324573327 0.102 +0.9498932271082673 0.07611340941409345 0.102 +0.7659100405749744 -0.0113783069457465 0.102 +0.9210144126008566 0.3451366832003814 0.102 +0.2006143185445169 0.6292211072811611 0.102 +0.08694664851628835 -0.07863548981084902 0.102 +1.053204562592152 0.6574721252790809 0.102 +9.31831670301899 -9.269052655348702 0.102 +15.90279427710466 0.7586495508611347 0.102 +0.9477206242167177 0.01980905980067011 0.102 +0.4547827355278532 0.92013397999533 0.102 +-3.255942061807984 -3.32457838864043 0.102 +0.114238703502404 0.7323956539010845 0.102 +0.03997429576125974 -0.07396648993772546 0.102 +0.4070392488694037 0.8276003548235789 0.102 +0.6213798510170114 0.8217109118547297 0.102 +0.3495533884790644 0.4176113338239004 0.102 +3.051252278565011 -5.520190517532042 0.102 +-5.356734441950567 -0.9311654317874548 0.102 +0.4675126675574044 0.8857245859056547 0.102 +0.8445423716132641 0.871095490620487 0.102 +-0.02778963405968743 0.538197635662651 0.102 +1.029416107654905 1.100622579215222 0.102 +0.5412169452721198 0.9918378631825526 0.102 +0.04965349345715022 0.9541213915169801 0.102 +0.9441829235739082 0.4485340742716601 0.102 +0.05520359758169168 0.3782980288980887 0.102 +0.5369293363610088 0.02133843740413649 0.102 +16.07750058860253 9.31513392241305 0.102 +0.3393161182660765 0.9403527905498053 0.102 +0.8666720599155154 0.670231829948056 0.102 +19.17897783128079 8.435095925908344 0.102 +19.18137035374323 -8.386653847683558 0.102 +12.01975357535241 -4.706035217261407 0.102 +0.8514449748585438 9.118926752158096 0.102 +0.03954648552778803 0.6732699315143856 0.102 +10.9328256394876 4.238432086113592 0.102 +0.5190536321322052 0.1429323920882088 0.102 +-0.07253550226189036 0.8730984000148392 0.102 +0.4023048018435426 0.6919949982069187 0.102 +-8.166539981797001 4.293014019673764 0.102 +1.096661008344345 1.024419061599746 0.102 +1.042891517384006 1.073026800023396 0.102 +0.335226644443249 0.9735503187409542 0.102 +0.4934447442692967 0.6976262367439972 0.102 +1.044856640585846 0.5375452418073456 0.102 +5.604815569576124 -5.855126125933277 0.102 +0.8640233950012912 0.3669489532184669 0.102 +0.6999224643336061 0.2087302692326533 0.102 +0.1731804173164066 0.014632961388476 0.102 +0.705553987519929 0.3445759509208514 0.102 +0.6702294046893476 0.209180511580767 0.102 +0.880360676843235 0.3612270510409555 0.102 +0.3608530639742097 0.8474869653933805 0.102 +1.552473542084919 -1.628890032457932 0.102 +0.1836186808516378 -0.05279748781483065 0.102 +1.129428542119484 0.3693297578628611 0.102 +0.6439991248461558 0.4405023088828989 0.102 +15.64967961020031 -2.549638902370547 0.102 +0.6828001602309529 0.7857335705564458 0.102 +0.4865341140430269 0.8165291702509534 0.102 +0.7843958643833139 0.2201397338343797 0.102 +0.4387778384246254 0.5091809544140051 0.102 +0.5718348483603782 0.8580274748411099 0.102 +0.01970894380242838 0.6834057654458165 0.102 +0.5662073405272406 0.8812045210630751 0.102 +0.7750840636318967 0.9038768283716274 0.102 +4.896060216550261 0.245543614980983 0.102 +0.544763648572824 -0.0928566236927417 0.102 +0.5397519848959985 -0.1039590773007516 0.102 +0.5376966483042533 -0.1496739319063598 0.102 +0.4793010553683376 -0.1506943035667565 0.102 +-9.24160406901499 -0.5870084649164546 0.102 +0.1376272360161714 0.4907240526629385 0.102 +0.6022733909848713 -0.07003502420108151 0.102 +0.5875742560437178 -0.06864293430950891 0.102 +10.44640473159706 -1.269282328629923 0.102 +-2.147113051340399 -1.980371898523448 0.102 +0.2690155512294237 0.3513871746661379 0.102 +0.7309018634007877 1.055787947266241 0.102 +0.5625978454884739 0.8214835782851484 0.102 +-0.07539870842076266 0.6219290716010283 0.102 +0.372575111729816 0.608151317801704 0.102 +0.07407470084929882 0.8492113360981957 0.102 +0.9300448741569731 0.6633115745001796 0.102 +-0.9149569425906172 0.8706173189514529 0.102 +-1.780562584543458 0.5578554080394649 0.102 +-0.1031624792778016 0.9203782358790504 0.102 +-0.05489563287886348 0.8534331015100269 0.102 +0.4920742705741813 0.2210648263897186 0.102 +0.2716097295006187 0.2292170705281886 0.102 +6.558275806235622 -0.9720643162051663 0.102 +7.543296126187593 -3.844355008049735 0.102 +0.09232929540975449 0.6578016333194432 0.102 +0.3458346820512121 1.068550798570311 0.102 +0.8087060235212157 -0.09627059746331673 0.102 +0.03474851741292669 0.1008301781214338 0.102 +0.6033034295953152 0.9871247561965991 0.102 +-6.134598431923787 0.1264031773784663 0.102 +0.8416380184863574 0.1529447016614283 0.102 +-0.0350041033964789 0.9643459389582985 0.102 +5.613756737624264 9.234301089333862 0.102 +-0.06782085998482482 0.5571773339865645 0.102 +0.1035183296502183 0.7915329935416135 0.102 +0.0108752298254922 0.1431464670316605 0.102 +0.5716416857221387 0.6705821387981652 0.102 +0.564230370563962 0.6456120665461385 0.102 +0.3745776101055893 0.7116888797349445 0.102 +0.7686006194483097 1.043217358995022 0.102 +-0.01413548459106631 0.6978685042373076 0.102 +0.9584344490039884 0.4885549748770223 0.102 +4.308695115458109 -0.8934571381647711 0.102 +0.3706421136947555 0.1014544857621554 0.102 +-1.861071188735614 -6.583548062975553 0.102 +0.326913196439841 -0.05070695329446635 0.102 +0.8185779224618142 0.5206955838894358 0.102 +0.6646595788709972 1.041743120027519 0.102 +0.9854740527180659 0.7327650047538656 0.102 +0.4219567652563221 0.2575150059092022 0.102 +0.591630751509828 0.2223816479924787 0.102 +1.068720078718058 -0.06809794568879637 0.102 +0.4630344785754185 0.1493056308215013 0.102 +0.5133560676944665 0.4592890678942567 0.102 +-7.0944339598977 4.93622370269353 0.102 +0.06633475161791637 -0.0378411194291493 0.102 +0.4701748508687043 0.5063916225629144 0.102 +0.05308862937197689 0.1507933590643531 0.102 +0.07217384493598926 0.5410388813932396 0.102 +0.8632301800775743 0.483225076876485 0.102 +0.16601133039951 -0.0260340219976684 0.102 +0.1833948956530741 0.7220860520750404 0.102 +0.3793528015380992 1.013172042527815 0.102 +1.218900078473384 -4.218007857602957 0.102 +1.091918008315763 0.04542553397008554 0.102 +0.3876814706498106 0.7770591239493805 0.102 +0.5384918776035701 0.2795690479647188 0.102 +0.228461275824213 0.3284283634201002 0.102 +0.6112012031225049 1.018419503530684 0.102 +0.3305844562885591 0.6882766865550968 0.102 +0.1044298693773777 0.3891594892550946 0.102 +0.7937406951924105 0.3551669986472444 0.102 +0.6421123238305465 -0.08526915846614969 0.102 +0.7319063409212762 0.5285247999061669 0.102 +0.8673877323288927 1.043599259687903 0.102 +-9.196828605350706 -3.301384045054147 0.102 +5.583286233588859 8.132471543910805 0.102 +0.06807556773851234 0.2280801100239216 0.102 +-1.30868236813467 -0.2513858548112706 0.102 +14.58477324813968 -3.496473777354255 0.102 +0.1600833356007459 0.04098029924967549 0.102 +0.6526270305659914 -0.07113335633736173 0.102 +-7.549755536876352 -6.288554751820412 0.102 +0.01033947757767466 -0.09439887653709933 0.102 +8.773722911413017 9.26269087037813 0.102 +0.9786556505342113 0.806092979728365 0.102 +0.290227828523402 0.100162265157785 0.102 +19.40009437244521 -0.7632613736996375 0.102 +0.4681894188826877 0.2107628197445974 0.102 +0.2298698522716391 0.5704012770088063 0.102 +0.4041725711484007 0.4664098107001697 0.102 +0.2620233535329712 1.028804954970954 0.102 +-0.07717696875607802 -0.1051125224238978 0.102 +0.1792278125044822 0.5619382969071939 0.102 +0.6353386606066176 0.1293262969112513 0.102 +14.34816966033572 -5.368641609573531 0.102 +0.2427107075965296 -0.0170986232998251 0.102 +1.0416427565807 0.7334208373655253 0.102 +0.8316973523487755 1.017021737873027 0.102 +0.1544925205906184 0.4695840537792904 0.102 +0.1098038778626482 0.01391983930047576 0.102 +0.02031268945044444 0.7696802229891397 0.102 +0.5371970303124176 1.016858543928475 0.102 +0.9794025731037338 0.3476141402728243 0.102 +0.02144471398507077 0.2410417737536795 0.102 +0.003433265802442818 0.5931083264251769 0.102 +-0.03038914755032016 0.3085299621848163 0.102 +0.7446649306127124 0.8598709399387329 0.102 +0.8539137357014869 1.055244399760387 0.102 +0.8905636996704981 0.8012536813453325 0.102 +1.75618136766811 2.274633626060107 0.102 +0.5818985327294143 0.2650204081253416 0.102 +5.462440840971893 4.083959135789006 0.102 +14.4353117975146 9.190464844208504 0.102 +-1.626533794430057 9.202604612403608 0.102 +-0.1048618810977648 0.808031130055064 0.102 +0.2935567156011654 0.4656719331138763 0.102 +0.4224932800702474 0.6711203396684398 0.102 +1.202471907535681 4.12099957902988 0.102 +0.8577004877775294 0.9139334653068288 0.102 +3.495716798300894 -2.828691628203357 0.102 +-0.1131472998771782 0.9503766594758615 0.102 +0.2932604927844182 0.4956401524013374 0.102 +0.9347192678887351 -0.02698572928244393 0.102 +0.4433464113900112 0.9344392938046788 0.102 +2.395358372588628 -0.7408322909397657 0.102 +0.02502720401911674 1.09311583591084 0.102 +0.921825636005543 0.3753226113896986 0.102 +0.8991252913480671 0.7054628799146986 0.102 +14.53362584591297 5.345952658426843 0.102 +0.001134272048471755 0.3339836707550674 0.102 +7.259979892813922 -6.676312923414963 0.102 +0.6687163108422467 -0.07265484119130181 0.102 +0.4802287301478788 0.9906163887994082 0.102 +0.09177299959379245 0.1108211866434551 0.102 +-0.167744427329139 0.9386873195678884 0.102 +3.35626571852775 -7.44946443067122 0.102 +0.6905483300801292 0.9752198412703998 0.102 +0.6431108372738661 0.492343907900206 0.102 +0.4369935500353715 0.2047752987134729 0.102 +0.7108357882097707 0.4046083024632793 0.102 +1.086402125061597 0.8006153651200877 0.102 +10.73531643815901 7.580895753148545 0.102 +-0.05090101936713343 0.1095458239915713 0.102 +1.10510269291171 0.3382619026835906 0.102 +0.8832556993874583 0.5001870587815461 0.102 +-6.14126136123951 4.081140175921711 0.102 +14.48636102314864 -9.05855902802152 0.102 +0.4566313610455313 0.647894918000839 0.102 +0.7114064996517724 0.1342589001799741 0.102 +1.103652338749768 0.2591307441414509 0.102 +0.06369726397560692 -0.0634706396793665 0.102 +5.772311737062023 -0.7384933274306886 0.102 +0.9834971551690971 0.8903615352899139 0.102 +0.2564304228449178 0.5078521109387485 0.102 +0.2600077988470996 0.4850119876324748 0.102 +1.050499637168605 -0.054189892883446 0.102 +0.5835410715383201 0.6325170009364387 0.102 +0.001783082882889187 0.9849191014651748 0.102 +0.2577911872384874 0.4023982503358973 0.102 +0.2280223803373545 0.3624552519783991 0.102 +0.9091920370054715 0.1092255705461514 0.102 +0.6619949068514975 0.3214865685318121 0.102 +0.8231813180133467 0.8134477890576437 0.102 +0.6136893038623671 0.4279673730415542 0.102 +0.2510318096989027 1.1019501969846 0.102 +0.4363440287028461 0.5772359096936153 0.102 +0.5957518237411966 0.09459706035225408 0.102 +-6.565207557130075 3.094900688853008 0.102 +0.08990207056736516 0.9261896974752516 0.102 +0.6980009427518309 0.6594467082096954 0.102 +-0.03240636994564889 0.8966583893989737 0.102 +0.8386604401644346 0.4713298602232137 0.102 +0.0298634370566577 0.5890981386741556 0.102 +0.4321217013223136 0.4055132940554752 0.102 +0.3936892638891403 0.3974832158254067 0.102 +-0.006396553121712865 0.6469226124219976 0.102 +0.1120468220023299 0.84231461434849 0.102 +0.4684459118529874 0.08975475796887483 0.102 +0.4675179935316762 0.1208638421869524 0.102 +0.8507521113638836 -0.03192776415818097 0.102 +1.007702053532325 0.3526164167214915 0.102 +0.6347512953496107 0.401544059670814 0.102 +0.5383403559105361 0.3026246091101211 0.102 +10.57700583595184 3.489124472868084 0.102 +0.08096338997421909 1.09353486171181 0.102 +-0.09905003375962354 0.2116819604274527 0.102 +0.4454214968294839 0.2625333689386808 0.102 +0.7941029633699798 0.4401377669940423 0.102 +-0.006678586577442067 -0.01518390468295184 0.102 +0.1442536222464184 0.2980146846781553 0.102 +0.7417490387196 0.3384218953671949 0.102 +0.7102407308656998 0.9215507945531702 0.102 +15.81238223343394 -6.702456485643512 0.102 +1.103241892287284 0.8836845012609971 0.102 +0.5017876803403221 0.08999238782222879 0.102 +-0.04408597676723033 0.1495064952045013 0.102 +0.6525192165025147 -0.0006874328418949904 0.102 +0.7059664676764333 0.7464823247906336 0.102 +0.2881635212052857 1.097296027935671 0.102 +0.01846258135180009 -0.01723943470060402 0.102 +-5.388129621590625 5.902075045510418 0.102 +0.02095608013872518 1.062279204309393 0.102 +2.766363833682563 0.8328015345535302 0.102 +-5.506153158083522 3.218898314261664 0.102 +0.8425423121796057 0.5585835354518839 0.102 +15.64728877269609 6.513776804572331 0.102 +0.03689496103181349 0.5473350342733775 0.102 +-6.062497236072337 -4.256226549239607 0.102 +-0.09596903766846641 0.8899262736255511 0.102 +0.4278315177919144 0.1373664194115097 0.102 +0.2927674275910861 0.9549365510653981 0.102 +0.4552888518676247 0.6214806162828818 0.102 +0.03439754860370845 -0.03643604842474971 0.102 +9.958919969002357 -9.49022087454178 0.102 +1.048902116470286 0.326715808367822 0.102 +-9.175013630857775 0.05671605461087931 0.102 +-3.122179339991003 9.136773586607982 0.102 +0.04526325127978215 0.1944317396523422 0.102 +0.6839707724410702 0.5713108037043885 0.102 +0.2007242965951276 0.3271964713249306 0.102 +0.6976143975682945 0.112017775895614 0.102 +0.6144515128441368 0.5016407821571744 0.102 +0.2908353776077647 0.3855458059200272 0.102 +0.2734288257692464 0.8055401878675247 0.102 +0.09426883453344592 0.2021797690845128 0.102 +-8.203975360737884 7.622265478278671 0.102 +8.777762051279668 8.461656925219593 0.102 +0.04150943499234853 0.6464045500094229 0.102 +-7.293044723212749 -4.337020458482763 0.102 +9.126398348878666 -8.125948125428682 0.102 +0.9166122283691358 0.733099668690001 0.102 +18.90013959419867 -2.445260959181074 0.102 +0.9752361218199906 0.6537846507254284 0.102 +0.2515275885642637 0.2917876659266809 0.102 +0.4386258588977298 0.1209083339982552 0.102 +-0.04354113822940969 -9.278495795940596 0.102 +0.05039048216118368 0.6933604472438416 0.102 +0.2697921111076939 -0.07813618494972299 0.102 +0.2695418235522796 -0.1044015366787261 0.102 +0.247302821344959 -0.1261647658469016 0.102 +0.2951788599064696 -0.1144985091333556 0.102 +-0.0256520689197784 0.4370192706377137 0.102 +0.6046810416342192 -0.01109711746212147 0.102 +-0.10483765320993 0.2944105084556761 0.102 +-0.09904484645499026 0.3177117722498118 0.102 +-0.1089682003533508 0.3284424047463818 0.102 +0.2980346796940326 0.5437265881273164 0.102 +0.3538044655005887 -0.1081901078676993 0.102 +-0.03567925805846997 0.8012504009817417 0.102 +-0.0442066146147655 0.8255715234273761 0.102 +0.003960350879463675 0.4441514984770295 0.102 +0.6261477504746422 0.6006282215293466 0.102 +1.068228241050651 0.131075345992938 0.102 +0.8326074979253126 0.986098458815913 0.102 +0.6725588743608512 0.07863651739276255 0.102 +0.1962742735022617 0.01842864077218737 0.102 +0.4090078682088834 0.5808113446871074 0.102 +9.816780441498841 8.264054922413598 0.102 +8.398378872577203 -3.637867995935083 0.102 +5.65310359983955 -1.485843879706497 0.102 +0.6087797863682904 -0.08359326299835573 0.102 +-0.03594514532355966 0.1750919415692389 0.102 +0.5632208182790743 0.3509072670083918 0.102 +0.3739155976399762 -0.1118534666087589 0.102 +-0.01123164336835232 0.1641253570375305 0.102 +16.16746434792528 7.482976771776231 0.102 +0.7533449939354185 0.9959394248669444 0.102 +-0.05400672223942483 0.9694130085066848 0.102 +0.5280126258338179 0.5612367009321763 0.102 +0.5047883304057083 0.9940792840028464 0.102 +0.8883613750263545 0.6574476935827982 0.102 +0.3448210158026064 -0.07366246747833859 0.102 +0.50027890460449 0.8036712206779484 0.102 +0.5812945732858535 0.4485440292343202 0.102 +0.2017288323582006 0.4772919065723223 0.102 +0.8857104058228521 1.061963882607688 0.102 +0.7396171402077144 -0.02024602034065589 0.102 +0.2379303600641832 1.007836361280384 0.102 +0.06194326020621643 1.010845386835153 0.102 +0.07648928392387348 0.4553117747674356 0.102 +-0.03951995501726305 1.067182917048727 0.102 +0.8160941392529246 0.3687441323675544 0.102 +0.3268035511052961 0.3323723403112119 0.102 +0.314671633223387 0.6296109717333199 0.102 +-8.083493965766062 -3.928260442920831 0.102 +-0.02840157670708104 0.03733466132705887 0.102 +-0.0164776079664663 0.008471580461626303 0.102 +0.2961274773387005 0.8059956190462275 0.102 +0.9557215198124032 0.8303487692785689 0.102 +0.6486252317956794 0.8250558576398134 0.102 +-0.07063261577459053 0.1901285459642657 0.102 +0.611759942309111 0.4627203504985387 0.102 +0.1265437077312765 0.5698511848512714 0.102 +0.5031613986883793 -0.008786917456815377 0.102 +-6.559759028223468 7.449253676259016 0.102 +0.0760463110088293 0.7766025979528253 0.102 +0.5927678158897266 1.064953653119419 0.102 +1.561852976818329 -3.270273861619489 0.102 +-0.004528439266395805 0.2515508954118513 0.102 +0.5911383964777163 0.8233723227422104 0.102 +0.1774256187041241 0.5188692266183769 0.102 +0.8874466748330345 0.4043718719812988 0.102 +0.9011723452657456 0.9636475727882443 0.102 +0.31506024467295 1.083022663896226 0.102 +19.16608870988672 3.825193194226088 0.102 +1.111619066846387 0.03525139862145586 0.102 +16.9631695724183 -0.9547505452992912 0.102 +0.2192876701020317 0.3868527820645089 0.102 +0.04262362747399559 0.8226744671552548 0.102 +0.350606780867312 1.018439409957086 0.102 +-0.07970125426619522 0.7240837309426754 0.102 +-0.07065278373021859 0.7493840252359409 0.102 +0.6975069526885069 -0.01316908744437163 0.102 +-0.0943789035914496 0.4856753818578069 0.102 +16.41416943820321 -0.9221588436680762 0.102 +0.6371243883041218 1.093039817001565 0.102 +0.4505161883361419 0.4498900892836844 0.102 +-0.0488681572371432 0.2102231941191471 0.102 +0.7351853914957316 0.4165076263718676 0.102 +0.3573740599856611 0.1220594377350371 0.102 +0.5261165432578119 0.8312346128706505 0.102 +0.4899088462460988 0.2477010012008902 0.102 +-0.007791277348802175 0.3102739956227186 0.102 +0.4314379840920679 0.9205706599083893 0.102 +0.93380317155279 0.8570559295004252 0.102 +0.5553787137841579 0.7158218892278405 0.102 +19.42117212200689 9.086696892514162 0.102 +19.43060340570777 -9.089563327819375 0.102 +1.052610901895332 0.8107475654135394 0.102 +1.042625019538626 0.8006617254613756 0.102 +0.2289467118638427 0.4517074350927829 0.102 +0.7786339775145504 0.7159321506076284 0.102 +10.0999212437932 -8.134371895299374 0.102 +0.9024914956427226 0.8421455622229828 0.102 +1.007274406787108 -0.07271027009202916 0.102 +12.81715649426559 -5.71345048295814 0.102 +0.4025818030636187 0.0624916653596068 0.102 +0.4675013359012093 0.05757138466289902 0.102 +0.4926226382136655 -0.02919103688786425 0.102 +0.4859626144985825 -0.09347286087083552 0.102 +1.005898742101872 1.045432379589489 0.102 +0.05524489609264628 0.0798328722865328 0.102 +0.5187508494648159 0.2804955975125116 0.102 +12.04014855379172 2.915272710432183 0.102 +0.6453017859283303 0.5454635697848715 0.102 +1.09893776372861 0.5129084215652541 0.102 +13.99664484082971 -7.994338464922977 0.102 +0.9255617481718558 0.6867175861714228 0.102 +0.6451116406749795 0.3858945779998249 0.102 +2.62931055464253 4.303127737381381 0.102 +1.120879660405573 0.4452995147011318 0.102 +12.98944917119186 2.382654768795303 0.102 +0.893893869408565 0.8680278554611754 0.102 +-0.03286683713476306 0.2478634586278891 0.102 +0.2743632531313548 0.5229195473284809 0.102 +15.80815033838983 3.626581000676809 0.102 +0.2509949207297853 -0.06064826675026212 0.102 +0.1288714565549208 0.7980576134106876 0.102 +0.004407465171097659 0.9606763427508795 0.102 +18.21890619299941 4.030916674437076 0.102 +0.01490266573446954 0.20210224504629 0.102 +0.1194391417827671 -0.02385148200791558 0.102 +0.813831887419188 0.6812815390631785 0.102 +0.3123741100353044 0.5020705990222321 0.102 +0.824739242249141 1.083025933009222 0.102 +0.4906313942629233 0.004781508443222202 0.102 +1.013929749596318 0.8218449069503584 0.102 +0.6299524576189732 0.460274449907901 0.102 +0.8567998320236004 0.321737585551189 0.102 +-0.0354713438444502 0.6697919299533682 0.102 +0.3904725561574067 0.1142492426117132 0.102 +3.802777605506023 9.058903972916616 0.102 +0.4566791060818727 0.03073399796145911 0.102 +0.5391829130442568 0.6849217987688198 0.102 +0.756726634165951 0.03983450526613452 0.102 +1.77267885938707 -0.9720526831416421 0.102 +0.1419465713478723 -0.0304551139064292 0.102 +0.6182770103205187 0.6406304144744851 0.102 +0.6352592006597551 0.6268382265397452 0.102 +1.027927180105113 1.044660045913207 0.102 +0.9566769082279669 0.8709860690760505 0.102 +0.3329597411810071 1.11967248464186 0.102 +0.2688044221412304 0.3051354902652072 0.102 +0.7323961753522468 0.02735127479648403 0.102 +0.4052527065149342 -0.009971985627693835 0.102 +0.912252701541878 0.7797860003609061 0.102 +0.2501905438365081 1.055080568895854 0.102 +0.3499969062030049 0.5764777835261656 0.102 +1.033357735361897 0.3780243936178208 0.102 +0.2746773891410613 0.0490073770623943 0.102 +13.83865241017728 8.230178182718149 0.102 +0.9984181278533912 0.9772980440266832 0.102 +1.073917701307576 0.6443198692853612 0.102 +0.2570327350623259 1.012873453135497 0.102 +0.4213481806068977 0.1931549423150881 0.102 +0.5360288392191099 0.8653271559616373 0.102 +-0.07282826581528498 0.8143274896368725 0.102 +1.072089243230244 0.5568938655838137 0.102 +0.460380312782061 -0.1168263102697475 0.102 +0.8164372550880583 0.6189251390453089 0.102 +1.000761471244434 0.8255134609922363 0.102 +0.8035217122935596 0.7714919604632541 0.102 +0.05304892049333987 0.4040907684487054 0.102 +0.8373271565136596 0.7704827861627918 0.102 +18.42754018515865 3.122450389211549 0.102 +0.08573494688490273 0.5913915403572987 0.102 +0.5988301561414673 0.1556936373729346 0.102 +0.6035544268868036 0.06172884004101189 0.102 +6.036246696238408 4.134188341784547 0.102 +0.4326878807335857 0.007459597343122893 0.102 +0.1545615598130203 0.3421886115859357 0.102 +1.085713067602374 0.9634008280061255 0.102 +0.9096930054610421 0.9886398495797768 0.102 +0.7293955182017827 0.9869349515895951 0.102 +0.9795580408085621 0.9073802500092254 0.102 +0.1284795385896336 0.8233314880900648 0.102 +0.844303595404603 0.9628988296257224 0.102 +-0.05133510330969268 1.035467810763981 0.102 +0.5891202328729537 1.041372106407507 0.102 +0.9967380692568618 -0.04418708710076308 0.102 +0.01030740189134293 0.8543126983195322 0.102 +0.02166010612006079 0.8087317361034343 0.102 +0.6293013638702272 0.4337811979996667 0.102 +0.2192976498024258 1.094981720534212 0.102 +-0.006789052732041972 1.024659021459799 0.102 +9.052913829501861 4.242708496489239 0.102 +0.7218230952904486 -0.03576793277278235 0.102 +0.1840007315071019 -0.03716585486059888 0.102 +0.6633634910427539 0.5834995274305691 0.102 +-0.04411582117168213 0.1950255435599282 0.102 +0.7534728784812624 0.8291325001399836 0.102 +0.9613319018581765 0.715394093678862 0.102 +1.104239219372022 1.096710257904162 0.102 +12.36569955469531 4.593003916853243 0.102 +0.9727833125953081 0.4806442590760974 0.102 +-0.00380381271601719 1.063582388772831 0.102 +-0.0009752720678936971 0.2934086340874666 0.102 +0.9067132365837818 0.4666073572787422 0.102 +0.8095980054841615 0.1558626656334011 0.102 +0.4479870090650451 0.8677076543710962 0.102 +0.03118205268968761 1.075595625922502 0.102 +0.2520859252482444 0.5683380171409952 0.102 +1.009267002240033 0.8444804907346785 0.102 +0.7781901617837274 0.3737486798979384 0.102 +0.7667243114897265 0.0871843505760462 0.102 +0.226392484660178 -0.104661784175721 0.102 +18.33354268803418 0.4268053783655325 0.102 +-0.09095652198521496 1.051883877581653 0.102 +0.4676783378214978 0.8660715317201947 0.102 +0.8219857125904857 0.2484155499658658 0.102 +0.807232181677449 0.742938743650895 0.102 +-0.1182843591889337 0.4496044535163482 0.102 +0.6682225130454201 0.6434316465218378 0.102 +-0.654776661103921 7.345002338479638 0.102 +-9.434002850856153 3.045308670066341 0.102 +-2.314492112652577 -4.905808070016811 0.102 +2.491205434166989 -4.728339217359546 0.102 +3.897373660784888 2.075693194530234 0.102 +0.3287678765885685 0.4136235620044806 0.102 +1.000153160632483 0.3248868652032977 0.102 +9.558172852950706 9.256159700946272 0.102 +-9.258157610440573 9.259039188160301 0.102 +-2.685163269960619 5.163683091237494 0.102 +0.01476261330027425 0.9925321615560255 0.102 +-0.3891015894476906 -3.495348170853045 0.102 +0.3763406209577965 0.3114737143874716 0.102 +0.9908855195441209 1.098425829313474 0.102 +0.4336165603483545 0.5522395680421798 0.102 +0.1150151878096641 0.8650892023833266 0.102 +0.9724954618799556 0.9545627157646267 0.102 +0.1335611458544947 -0.01309377737686458 0.102 +0.7532356937675814 1.090787196568914 0.102 +0.7026809704208775 0.4919322052526455 0.102 +0.708904083299104 0.1585720781137499 0.102 +0.4516351907858436 -0.02420161381960647 0.102 +3.184228865275823 2.84566154343993 0.102 +6.398251593154233 -8.001928467974672 0.102 +0.9564095902012193 0.1578574310802009 0.102 +0.6171621767063811 0.7936324852230792 0.102 +1.285318477449683 0.946269392203163 0.102 +0.6386724083186208 1.233141173698402 0.102 +-0.3390063620276783 5.78432624470176 0.102 +0.3559665266030929 0.6934630713734035 0.102 +15.46951179925328 -3.740481973550131 0.102 +-0.05814274474653034 0.8927214447125055 0.102 +0.3681431913505561 0.6761227752694434 0.102 +-0.02442435297965723 0.2767028593187282 0.102 +-5.32200932568231 -1.920782775354262 0.102 +0.2253187182061292 -0.07190436804711391 0.102 +0.5091275450429482 1.019006042512907 0.102 +0.408582808456372 0.4223763666144168 0.102 +0.06046787080812914 0.585167930846716 0.102 +0.3094287065515564 0.7826250676728252 0.102 +0.3417299652233796 0.2108247294530371 0.102 +0.1816676323476148 0.8655882899782024 0.102 +1.046274142826415 0.3980585080552848 0.102 +1.020255813512517 0.6334335485050621 0.102 +0.8466334828735843 0.7130491616477294 0.102 +4.877853910577635 -5.165999905365104 0.102 +0.3901031504495231 0.5282790204834789 0.102 +0.5900044430512806 0.9372515367934012 0.102 +0.8670652363509264 0.5617187915240757 0.102 +-2.135991860049681 6.699157718788075 0.102 +0.8639735630665503 0.6378883371250426 0.102 +-1.475180433992987 4.404430548500377 0.102 +0.1703843207308177 0.44270213371374 0.102 +-0.4540764375587499 -4.972410729618869 0.102 +0.591591009922499 0.7556844464706578 0.102 +1.114470748530845 -0.008996205077734994 0.102 +0.3779328882652872 0.3518816270220597 0.102 +0.7492537227052627 0.937332890051022 0.102 +0.1188356123679641 -0.0664341870804793 0.102 +0.3750787068723074 -0.07171317833792591 0.102 +1.0440078511077 0.08451917344457263 0.102 +0.05196552039656915 0.4427757254413033 0.102 +-1.77563734875267 -4.123765343083278 0.102 +7.956033657350556 0.1944725519182986 0.102 +0.1661094216960859 0.2061540159202146 0.102 +-0.01689967055313783 -0.3745548623787127 0.102 +-1.757965118639924 3.040757335044328 0.102 +0.4450119722372696 0.4748139950885583 0.102 +0.8728786004692483 0.443891077065808 0.102 +0.5194787414335124 0.3651899585972604 0.102 +-8.436952609458936 -2.726253388825421 0.102 +2.558400887662611 3.32876381719307 0.102 +0.9534969529709691 0.6412588716420392 0.102 +9.930472216296558 4.456786130130669 0.102 +0.9101645679088276 0.8172243327122222 0.102 +0.3843602583308797 -0.02209764836160789 0.102 +0.8002235844019456 0.4131772647408432 0.102 +-0.02164380556439795 1.046866549158034 0.102 +0.3465182484728069 0.1946248396971732 0.102 +0.5963467977168135 0.2906765837991147 0.102 +0.9138341400723905 0.4392099771884809 0.102 +0.7341338019043637 0.11206716321576 0.102 +0.9758324951784483 0.7156950303875942 0.102 +0.7140487426004879 8.371211076690832 0.102 +8.409704656516624 -4.570961941608299 0.102 +-0.07379648723736276 0.643621918633183 0.102 +1.051788253992463 -0.02314482268974721 0.102 +-5.638850830934981 9.312161058824852 0.102 +-4.265926619520437 -3.242694544721529 0.102 +0.8029816237904494 0.6595304397877209 0.102 +0.1256521916580455 0.2580180642044703 0.102 +0.7976323632063856 1.069828400626325 0.102 +0.4270174443171613 0.4835737879131496 0.102 +0.8470836262777051 0.2010428082921774 0.102 +0.5324187755766224 0.4310556992576573 0.102 +-5.716959814817447 -9.134015442749302 0.102 +0.4947409323534525 0.6108268726164396 0.102 +0.6026891015469427 0.9612150112731608 0.102 +0.2500397266991482 0.7819850836201699 0.102 +0.1246432235748472 0.3014213791500217 0.102 +-0.06897577770442025 1.095887602740569 0.102 +0.9375296532990981 0.2489313738761192 0.102 +0.1999282405013848 0.352023615243354 0.102 +-3.217726894734954 -4.380313863891306 0.102 +0.8844461802907649 0.4341294588031855 0.102 +-0.02117228608701804 0.8358098598252287 0.102 +0.2331183453850262 0.8094226577098927 0.102 +0.3707512759373242 0.5820356652876917 0.102 +0.7567027652023347 0.7049989164079048 0.102 +0.3946598963386674 0.2745561488140953 0.102 +0.05191972870358415 -8.608466264623374 0.102 +-0.1031044648625869 0.05843776030426209 0.102 +0.3634628366377431 0.7820969340733036 0.102 +0.4086662122580188 -0.05153160977096217 0.102 +0.2241907359532729 0.06135438857398592 0.102 +0.5846700245931666 0.5045524431046179 0.102 +0.1271064308594214 1.117680252385818 0.102 +0.6317578830276254 1.034556935822309 0.102 +3.190732074664473 8.022659843671372 0.102 +-8.156536744105194 -7.076391671587808 0.102 +0.5264992214157886 1.059010579841061 0.102 +0.8701380807765751 -0.005659979923426409 0.102 +0.9199738999280165 0.4079007211139358 0.102 +0.3072778010302978 -0.09149569722771562 0.102 +1.026470702579327 0.8627142146192449 0.102 +1.035339121011989 0.1001379811660832 0.102 +0.3767050284562551 1.059105746012347 0.102 +0.1886971098738967 -0.09603762148100303 0.102 +0.1998680700324866 -0.07188033073373568 0.102 +-0.03592078286816035 0.3861619182626662 0.102 +0.3580368630424647 0.5568344618425816 0.102 +0.7268061540666899 -9.295708665627902 0.102 +8.86150894928646 -6.251704352025702 0.102 +0.03174225136805854 0.3272636054274665 0.102 +0.8094828015384445 0.9050652617785485 0.102 +12.19902467064077 -8.334421018242388 0.102 +0.4341966200444809 0.3393978220651242 0.102 +11.20997216741088 2.804044574903888 0.102 +0.193892416171531 0.3798784608625451 0.102 +0.6704393880682096 0.3543447253748888 0.102 +0.3547154424578157 1.094392379113612 0.102 +0.1542591165133803 0.8526462383149015 0.102 +0.9564444438857305 0.04138402465239644 0.102 +0.8958773100543691 -0.02875504260934753 0.102 +12.94931401463806 9.501720500162101 0.102 +-0.006096682116399862 0.05091948585845706 0.102 +0.5164983811480395 0.1785238766099319 0.102 +0.09051590322087075 0.3242697299330916 0.102 +1.774631973547626 9.095821499475548 0.102 +0.1021504336940191 0.1563464023564275 0.102 +1.032031789126122 0.4685641685858398 0.102 +12.96146492253799 -1.124652999421157 0.102 +0.9794134143265902 0.5547465408113073 0.102 +-4.366691380574006 -2.191103834524453 0.102 +0.5088325196711028 0.3404323243193862 0.102 +9.977734397012039 -6.554098874787448 0.102 +0.7985284647265269 1.044776996130497 0.102 +0.9862622925029544 0.1830740548841286 0.102 +0.6071060071315939 0.3206912749288912 0.102 +-0.01264336595454272 0.09186003087119554 0.102 +0.8740931597292986 -0.05488190265159681 0.102 +1.134601229962439 0.6386454422608208 0.102 +0.1066236080232103 0.3252542573153707 0.102 +0.3544953481865145 -0.04476503791000654 0.102 +-5.004337911068982 9.477821308871318 0.102 +-7.314993091720609 6.257961655244352 0.102 +1.846310450314371 2.866159239415613 0.102 +1.117829686327658 0.1019784809243096 0.102 +7.426499679884867 4.067725358169524 0.102 +0.7281199405376613 0.8277364139217124 0.102 +11.72306817078561 -9.185373705516605 0.102 +-0.04510980722668219 0.6424522126813972 0.102 +0.3535216432073459 0.7286436772796787 0.102 +0.07881788557096972 0.04644079929671022 0.102 +0.6905050164331269 0.1784328396856335 0.102 +0.7030444923474167 0.4290268242271242 0.102 +0.07450450181081317 0.02252664824157037 0.102 +0.5202051526554532 0.8913324447469368 0.102 +-0.1234646991279848 -1.498103620096371 0.102 +11.39451956737456 9.226751029079445 0.102 +0.1333656757494565 0.4509676852328215 0.102 +0.3247601402760939 0.6664211185604699 0.102 +1.071351112352742 0.3854523260450177 0.102 +1.078435154749443 0.3573535043523121 0.102 +0.214945251483463 0.599320618711035 0.102 +17.66648048365973 4.518288136101808 0.102 +16.59031136134645 -4.129871445945652 0.102 +0.6479493893929633 0.571976669869213 0.102 +0.4491934170508419 0.4104842604499033 0.102 +0.7569062894909286 0.9733327386375602 0.102 +0.1252869485272163 -0.04652449613602686 0.102 +0.8129078265177598 0.1252630452690358 0.102 +0.6495401914938527 0.04382645779892536 0.102 +0.1350337888034109 0.01595142911985888 0.102 +12.62798109109423 0.3896541414656993 0.102 +0.3694580364706588 0.7505379330028361 0.102 +0.03822617380082326 0.7871414034483059 0.102 +0.3424781272020611 0.6049013512925832 0.102 +0.2298373130185615 0.6436811991481319 0.102 +14.71793561369016 3.564858583972694 0.102 +0.1375753654066265 0.2771698433903336 0.102 +0.9147112339663896 0.1776275544638454 0.102 +0.6136467203453284 1.088176165208669 0.102 +-0.04562155622782141 0.3742419222435517 0.102 +0.5018790343792797 0.3823973360484836 0.102 +0.3223999178048598 0.7231019765133682 0.102 +0.9104957114066978 1.040911873726189 0.102 +0.03669225353647303 0.4060795279236145 0.102 +-0.0105444712362293 0.6751690689841949 0.102 +0.5574837107744998 0.2807996957874028 0.102 +0.8908415652661875 0.3735187541817171 0.102 +0.979948326383552 0.3894443276560609 0.102 +0.412139319316028 0.0339747056332175 0.102 +-5.26756190222695 -7.67490496214807 0.102 +3 1 0 0 +$EndNodes +$Elements +7 11194 1 11194 +2 1 3 3698 +1 1878 1152 3143 770 +2 2428 322 2885 1160 +3 914 2202 446 1472 +4 417 3242 1310 3162 +5 463 1800 1059 2228 +6 653 1526 502 1527 +7 3068 776 2037 1154 +8 1616 411 2209 2099 +9 363 1706 1150 2767 +10 1394 3444 573 3378 +11 428 1877 2895 1291 +12 786 1621 1316 3228 +13 635 1608 720 1673 +14 1602 3604 427 2959 +15 1488 76 77 2437 +16 3189 2203 232 1921 +17 569 3234 1148 1426 +18 2393 1529 214 3121 +19 604 2953 2097 1419 +20 1078 1800 463 2416 +21 772 1721 274 1496 +22 498 1438 842 2235 +23 3003 1919 1263 3404 +24 707 1400 1704 3514 +25 3617 1813 641 2779 +26 1487 2460 55 56 +27 1274 1245 1749 2266 +28 2469 12 13 1566 +29 1306 261 1421 1753 +30 256 2109 841 1530 +31 1026 1950 510 2579 +32 3444 1394 3473 3612 +33 2565 2473 3473 1394 +34 474 1298 752 2251 +35 2638 842 2648 1226 +36 3478 2412 1851 375 +37 428 1291 882 2632 +38 604 1403 2204 2953 +39 2723 3271 1364 382 +40 362 1637 765 1811 +41 764 1849 1137 2399 +42 1827 1185 2229 712 +43 730 1890 223 1467 +44 3047 581 2023 1622 +45 2803 1564 1897 518 +46 1470 848 2242 2692 +47 1384 1038 1394 3378 +48 1650 1360 3305 391 +49 2277 1639 81 82 +50 1340 1038 1384 3325 +51 822 2258 511 2001 +52 215 1874 925 1933 +53 1212 618 1339 2974 +54 1341 3786 1657 641 +55 1809 733 2035 1201 +56 3300 1825 824 2152 +57 1678 500 2710 1350 +58 592 3364 1307 1578 +59 371 1699 1178 2939 +60 546 1898 835 1840 +61 3323 1108 2744 1751 +62 1661 3239 1008 2739 +63 1720 2405 777 2542 +64 1874 1282 2870 269 +65 1642 1643 1571 659 +66 1796 507 2787 1269 +67 201 1859 3189 2330 +68 416 1545 2755 1922 +69 504 2169 1177 2153 +70 1519 2117 1606 624 +71 1421 261 1853 1976 +72 2854 1258 2664 291 +73 24 1561 1852 23 +74 226 2043 3204 1833 +75 2108 2388 1862 218 +76 2726 3798 2242 506 +77 700 1828 957 2090 +78 1513 255 2996 2083 +79 1782 1939 784 3839 +80 1814 1280 2802 330 +81 2549 1613 71 72 +82 1336 3282 368 1920 +83 723 1978 945 1656 +84 2694 1494 2112 516 +85 1638 1393 3384 452 +86 1564 3374 724 1897 +87 619 3607 1393 1638 +88 1961 1251 1973 650 +89 1114 1667 677 2730 +90 353 1531 966 2530 +91 2854 291 2808 1287 +92 1460 934 2578 1881 +93 1636 102 103 2883 +94 1772 1290 2826 246 +95 1731 1224 2853 402 +96 1796 1269 2664 643 +97 2484 834 1832 1329 +98 835 1732 612 1840 +99 2270 620 3463 1790 +100 714 1682 2890 2007 +101 1053 2218 840 2450 +102 1449 3647 725 1960 +103 1528 943 2470 2012 +104 1623 367 3325 1384 +105 584 1489 947 2881 +106 2273 1559 2665 982 +107 2057 1227 2288 3114 +108 3820 2723 907 1908 +109 2892 2963 998 1858 +110 1351 3361 569 2207 +111 1476 2542 777 2365 +112 2807 902 2794 1293 +113 2765 1831 637 2515 +114 239 2685 1239 2894 +115 3107 1387 3337 301 +116 3736 1791 1302 1790 +117 1907 421 2941 1257 +118 830 2309 223 1444 +119 408 1987 3059 1719 +120 1351 2207 769 3377 +121 632 1709 3209 2595 +122 2071 1066 3213 1361 +123 1419 3251 3817 604 +124 1466 1997 2991 921 +125 1093 2684 500 1678 +126 997 2505 384 2038 +127 1297 2138 320 3504 +128 742 1744 430 1794 +129 1678 1350 2580 1119 +130 1284 3285 553 2769 +131 731 1990 247 1461 +132 2323 2734 1902 785 +133 2954 651 1683 3140 +134 730 1467 248 1981 +135 1363 1747 3412 243 +136 355 2431 2420 1694 +137 874 1799 312 1962 +138 1449 1960 212 3689 +139 1753 203 2882 1306 +140 1928 450 2989 1324 +141 2070 743 2979 1249 +142 1961 498 2235 1251 +143 2743 938 2972 1322 +144 2791 503 2350 1253 +145 923 1617 3125 2370 +146 2580 1355 2286 1119 +147 93 1776 2821 92 +148 595 2610 1086 2219 +149 1785 2616 90 91 +150 2410 1075 1923 3279 +151 540 2930 3370 1365 +152 3494 761 2194 1808 +153 786 2195 3354 1621 +154 1721 217 2092 2265 +155 3831 2372 3012 1371 +156 1914 671 2038 1289 +157 1217 1609 508 3790 +158 2875 3488 422 2876 +159 1436 1696 1892 738 +160 653 1527 2866 1822 +161 2348 430 1744 2954 +162 302 1783 1274 1822 +163 2654 554 3222 1378 +164 1384 3378 573 3019 +165 3109 2305 3270 594 +166 1617 321 1909 1339 +167 3064 1860 3830 1240 +168 953 3134 1266 1992 +169 2288 668 1815 2362 +170 1522 3687 1267 2746 +171 1151 2010 527 2397 +172 2182 2617 2377 492 +173 1266 3134 541 2247 +174 2074 1341 3026 639 +175 2807 1293 3787 242 +176 2387 374 2019 1328 +177 1788 1646 2922 795 +178 540 1316 1621 2930 +179 1340 3325 367 2008 +180 419 1913 2703 1406 +181 546 1840 1259 3160 +182 2000 572 2672 1273 +183 1272 2860 850 1907 +184 1526 653 2528 1684 +185 1013 2075 605 1539 +186 3180 843 2190 1282 +187 758 1638 1845 3461 +188 3523 3562 1708 652 +189 409 1442 1009 3015 +190 1420 1817 428 2632 +191 1810 370 2514 1295 +192 1490 878 2110 1835 +193 1870 1291 2895 800 +194 3190 1290 268 2921 +195 3220 558 3152 1304 +196 1078 2796 627 1800 +197 3475 294 2620 1457 +198 1555 3288 1164 3505 +199 472 1861 915 2066 +200 746 2176 3383 1710 +201 1882 1373 2133 717 +202 1613 1837 70 71 +203 226 1833 870 1967 +204 2409 2659 1762 483 +205 635 1819 2698 1681 +206 878 1490 3602 1611 +207 1775 1346 2616 278 +208 1482 3776 589 2237 +209 2514 640 3276 1295 +210 1758 628 2397 1443 +211 3129 657 2274 1356 +212 1463 654 1568 3811 +213 1093 2999 323 2683 +214 872 2086 747 1895 +215 2813 1604 2647 244 +216 1941 1386 2520 774 +217 2583 1759 1475 710 +218 3064 276 1859 1860 +219 1683 651 1702 2983 +220 3286 539 2644 1311 +221 2665 1559 1968 464 +222 1757 1660 1901 658 +223 419 1839 2613 2656 +224 1346 89 90 2616 +225 1792 1514 3785 332 +226 744 2095 826 2220 +227 725 2126 3480 1241 +228 979 2586 417 1774 +229 632 1623 1384 3019 +230 1817 1420 1869 645 +231 1469 3574 338 2691 +232 1386 1941 496 3575 +233 1459 3302 1305 249 +234 781 1624 523 1766 +235 717 1743 221 1882 +236 1383 3598 305 2713 +237 1727 401 1820 1563 +238 2352 1374 2594 213 +239 1561 262 3153 1852 +240 664 1406 2127 3240 +241 1503 54 55 2460 +242 1496 2437 77 78 +243 1672 1571 1820 401 +244 1552 365 1796 643 +245 1624 781 3594 1625 +246 1850 1354 2378 755 +247 3057 327 2378 1354 +248 2319 1325 3407 807 +249 1497 3366 1057 3149 +250 1501 629 2797 2054 +251 229 2165 2996 1583 +252 2409 1504 3717 942 +253 2882 706 2851 1306 +254 1869 1420 2633 487 +255 3473 1456 3500 3612 +256 1465 2183 721 3568 +257 1178 1699 600 3100 +258 2946 1318 3700 915 +259 1238 2636 834 2484 +260 3022 1365 3370 461 +261 466 3701 1533 434 +262 2209 411 3259 1311 +263 646 2854 1287 2161 +264 484 2662 3730 1711 +265 893 2267 273 1665 +266 201 1936 839 1859 +267 2068 704 2134 1330 +268 645 1494 2957 1818 +269 3220 1371 3012 558 +270 2007 1342 2108 218 +271 368 2299 838 1543 +272 1998 1312 2494 207 +273 1247 2482 2212 1246 +274 1330 2134 36 37 +275 2989 716 2200 1324 +276 11 1675 3051 10 +277 1927 2677 563 3341 +278 1611 2208 2110 878 +279 2115 780 2830 1317 +280 1664 2958 1702 651 +281 891 1877 428 2480 +282 785 1902 490 1686 +283 2464 409 3228 1316 +284 1883 1321 3123 606 +285 1904 1423 1971 672 +286 2065 665 2244 1327 +287 1872 1344 2318 689 +288 1983 272 1743 1587 +289 275 1834 870 1833 +290 2039 966 3122 1388 +291 2218 1053 2944 1368 +292 2905 1630 2194 761 +293 1226 2933 497 2638 +294 810 2172 1320 2634 +295 628 1758 1054 2891 +296 2710 922 3424 1350 +297 1913 736 2652 1326 +298 1124 2906 284 2518 +299 3019 1413 3217 632 +300 834 1954 342 1832 +301 2200 716 2201 1368 +302 551 3452 1414 2327 +303 1519 624 3717 1525 +304 2780 641 1657 1722 +305 2019 650 2552 1328 +306 2020 1537 3813 397 +307 2071 1361 2868 578 +308 2623 1335 2226 203 +309 1909 875 2833 1357 +310 3310 2533 1152 1878 +311 337 1802 3026 1813 +312 1546 2753 2337 560 +313 1161 2958 307 2449 +314 1929 1552 3066 749 +315 1607 600 1699 2611 +316 1021 2183 317 2022 +317 1102 3073 518 1897 +318 2447 2049 366 1380 +319 254 1385 709 2139 +320 2365 1471 3521 599 +321 3054 2165 898 2078 +322 2516 1337 2592 839 +323 1571 1672 2253 659 +324 2071 578 3600 1427 +325 912 1850 418 2147 +326 1557 924 1979 288 +327 232 2236 3099 1921 +328 1251 2831 319 1973 +329 2193 378 1804 1615 +330 2087 552 3009 1379 +331 2274 1379 3010 424 +332 483 1762 1110 2789 +333 1054 2442 605 2020 +334 475 3048 784 1939 +335 3645 1635 2115 1317 +336 2679 308 1915 1454 +337 2447 794 3274 2049 +338 692 1545 416 1867 +339 605 2075 1216 3178 +340 3114 1375 3778 1531 +341 3757 561 3779 1532 +342 1850 912 2748 1354 +343 1286 868 2253 1672 +344 1530 1816 2992 256 +345 638 2295 986 1899 +346 2407 849 2029 2620 +347 2119 239 2894 3199 +348 1188 2694 516 2602 +349 890 2302 771 2129 +350 376 1943 1424 3353 +351 1633 1376 2907 522 +352 1154 1763 699 3435 +353 1212 3206 415 2400 +354 547 2100 1019 2122 +355 2451 1518 1836 640 +356 1487 3144 1665 273 +357 1488 274 1666 3145 +358 611 3363 1284 2082 +359 1535 676 1548 3821 +360 1536 265 1549 3822 +361 3316 685 1793 1592 +362 285 2423 883 1565 +363 715 1558 3841 1645 +364 674 2660 1387 3107 +365 2680 859 2585 1347 +366 658 1643 405 1757 +367 729 1676 396 1873 +368 265 2952 2092 1549 +369 1704 1349 2546 407 +370 1278 3262 1545 692 +371 654 1579 3047 1142 +372 353 1884 3343 2057 +373 2177 1780 1901 1660 +374 1486 1990 1114 3375 +375 249 1305 3307 2354 +376 3048 1120 2286 1355 +377 1061 1521 1520 1786 +378 2594 1374 2192 836 +379 3152 558 2076 1480 +380 2201 468 2218 1368 +381 879 1650 391 1835 +382 732 1563 1820 3793 +383 1926 540 2141 1401 +384 1775 278 1931 1481 +385 683 2934 1425 3819 +386 2307 1396 2778 227 +387 625 3779 1360 1650 +388 408 1399 708 3345 +389 2660 1364 2629 559 +390 1976 219 3159 1421 +391 256 2761 1299 2109 +392 1643 658 1820 1571 +393 968 1999 717 2133 +394 2746 241 3702 1522 +395 59 1665 3144 58 +396 73 74 3145 1666 +397 2352 267 2908 1374 +398 2951 264 3821 1548 +399 1422 3484 612 3740 +400 2739 1367 3543 369 +401 3484 1422 3758 1540 +402 916 1958 2722 1457 +403 3429 383 2563 1359 +404 1514 1792 1793 685 +405 2056 1401 2141 691 +406 1595 2945 64 65 +407 1194 3083 507 1796 +408 1841 752 2398 1517 +409 3540 1806 2370 603 +410 3022 1048 3071 1365 +411 446 2058 2550 1472 +412 1438 3732 2648 842 +413 230 1771 3070 1640 +414 1801 2917 2527 538 +415 2646 1193 3494 1808 +416 2451 640 3437 1468 +417 2789 1468 3437 483 +418 1488 2437 1496 274 +419 664 3240 2712 1734 +420 321 1617 923 2531 +421 1835 391 1956 1490 +422 1224 2922 794 2447 +423 1895 2525 2162 872 +424 1669 711 1718 693 +425 2471 1547 3775 311 +426 1525 648 2041 1519 +427 1487 273 1503 2460 +428 2332 863 2466 1370 +429 1578 1463 1991 592 +430 1705 3400 369 3543 +431 1373 3294 204 2133 +432 3473 2473 3368 1456 +433 3548 1614 386 3476 +434 3602 1490 1956 681 +435 1099 1873 396 2811 +436 1821 2419 2808 291 +437 1500 1970 3468 587 +438 2923 1692 1774 616 +439 2087 1379 2274 657 +440 3058 1377 3471 287 +441 2392 3142 1982 532 +442 1807 1592 1922 686 +443 1250 1899 383 3062 +444 1219 3014 482 2474 +445 801 3255 1059 2210 +446 824 1825 211 2009 +447 2362 421 2485 1375 +448 1998 1502 3534 756 +449 655 2769 1415 3309 +450 3841 1558 3808 630 +451 732 3660 1886 1563 +452 1463 1578 3170 654 +453 1450 3270 1030 2394 +454 2472 304 2204 1403 +455 2184 1474 3316 398 +456 345 1843 701 1629 +457 2918 1433 3597 2572 +458 1727 1563 1886 719 +459 1482 3762 549 3207 +460 611 2082 1331 3571 +461 1021 2022 3680 2839 +462 1861 2491 2946 915 +463 1286 1672 401 3737 +464 2172 464 3192 1434 +465 709 2012 2916 3091 +466 3494 1416 2905 761 +467 1745 1395 2813 244 +468 2314 3119 2189 1033 +469 1252 705 1738 1857 +470 1167 2990 562 1812 +471 2222 1573 3567 679 +472 1489 348 3522 1767 +473 3043 3140 386 1614 +474 1513 2083 99 100 +475 743 2070 229 1583 +476 1956 391 3305 1388 +477 1265 502 1526 2356 +478 2713 941 2653 1383 +479 2510 1381 2645 783 +480 3309 351 3846 1540 +481 1892 1696 2222 679 +482 220 3477 2109 1299 +483 1881 665 2065 1460 +484 1442 409 2464 2061 +485 3726 3836 1649 688 +486 56 3509 3144 1487 +487 76 1488 3145 3510 +488 2529 1395 2720 210 +489 1745 830 2720 1395 +490 723 1656 475 1939 +491 2215 260 2441 1566 +492 2469 1566 2441 857 +493 1940 702 3729 327 +494 502 2960 977 1527 +495 1009 2191 2727 1778 +496 551 2327 1303 2792 +497 1175 2779 958 3138 +498 645 1818 892 1817 +499 3235 969 2568 1711 +500 2331 80 3329 1407 +501 537 1923 1033 2189 +502 2132 1606 2117 913 +503 972 2933 1226 1966 +504 3113 1500 2008 367 +505 1493 3388 1131 1981 +506 790 1872 689 1871 +507 1290 1772 2119 268 +508 371 2893 1031 1699 +509 1926 1401 303 2371 +510 2408 959 2564 1735 +511 1081 2163 208 2260 +512 1404 825 2641 1770 +513 209 2096 3099 1294 +514 2347 1412 3295 52 +515 2490 1539 3683 357 +516 2425 1397 2847 820 +517 1794 749 3066 2033 +518 1253 3301 910 2791 +519 2163 1483 2794 902 +520 757 3155 3135 2212 +521 3348 292 3439 1491 +522 3384 3623 1894 452 +523 2127 1406 2703 577 +524 1793 416 1922 1592 +525 2443 2840 2053 462 +526 3309 1415 3116 351 +527 1667 2909 3666 677 +528 3729 2379 2378 327 +529 1743 717 1999 1587 +530 1991 727 3775 1547 +531 3051 666 2883 1553 +532 2724 35 3296 1466 +533 1410 2479 1406 664 +534 2159 512 3547 2160 +535 2331 1407 2747 772 +536 2330 3189 1921 2671 +537 1278 692 1584 2017 +538 2032 771 2302 2627 +539 279 1333 3154 2463 +540 2132 913 3827 1803 +541 1535 234 3538 676 +542 1757 1826 1910 776 +543 2180 681 2862 1725 +544 1952 1674 2505 718 +545 2619 660 3194 1452 +546 1553 2883 103 104 +547 405 2970 1314 1930 +548 1171 2977 468 2201 +549 2942 2040 3445 1043 +550 1086 2867 505 2219 +551 2366 1600 2769 655 +552 252 3149 1693 1444 +553 2534 283 2649 1409 +554 704 1466 3296 2134 +555 63 64 2945 2429 +556 2118 851 1942 2179 +557 583 1742 2608 1509 +558 3475 1410 2448 294 +559 1514 685 3316 1474 +560 3554 41 42 1918 +561 613 1995 1082 2760 +562 2347 775 2776 1412 +563 682 2555 1314 2970 +564 2583 1477 3193 1011 +565 2880 638 3766 1567 +566 1279 3460 899 3074 +567 778 2396 1136 3401 +568 714 2007 218 1596 +569 1544 3650 1254 2553 +570 364 2911 1077 1755 +571 3754 2476 3554 1288 +572 1001 2385 496 1941 +573 1453 292 3650 1544 +574 1669 693 3837 1730 +575 276 3064 1293 2203 +576 3401 1599 2416 463 +577 1971 1423 3011 372 +578 223 1890 2740 1444 +579 1654 2858 28 29 +580 3716 1823 3758 1422 +581 2063 2939 2249 873 +582 2633 1420 2632 882 +583 3153 262 3236 1428 +584 1644 2253 2439 326 +585 1757 776 3068 1660 +586 1396 2307 2152 824 +587 2113 703 3348 1491 +588 1930 1826 1757 405 +589 848 1454 1915 3252 +590 595 2219 1065 2879 +591 2706 1023 2245 3035 +592 2317 2812 2036 854 +593 3152 1480 3299 1031 +594 1940 327 3057 1591 +595 1536 2578 1837 265 +596 1964 788 2280 1601 +597 1389 1390 380 3381 +598 2279 2278 3533 984 +599 2361 1562 3715 413 +600 1050 1912 441 2566 +601 2076 716 2989 1480 +602 3498 1447 2255 1446 +603 319 2831 1218 2432 +604 1644 682 2970 1642 +605 2223 1581 3809 817 +606 2151 1441 2676 237 +607 2215 3467 3411 260 +608 2590 2589 442 2588 +609 1999 227 1983 1587 +610 1915 1435 2913 671 +611 1303 2891 397 1972 +612 3288 1555 3669 333 +613 1546 2369 1110 3495 +614 1139 2710 500 1992 +615 2064 1087 3208 2182 +616 1790 1302 1366 2270 +617 1718 711 1848 412 +618 2978 2005 2767 1150 +619 1200 3359 1338 2559 +620 2305 3109 1426 1148 +621 3258 1918 3214 1268 +622 3782 365 3150 1426 +623 1332 524 3594 2027 +624 393 3081 740 1348 +625 1121 1122 306 477 +626 3523 1684 2528 399 +627 3259 1705 3286 1311 +628 2048 481 2291 1485 +629 3271 3624 2629 1364 +630 1884 826 2095 1848 +631 2052 763 3431 1508 +632 1996 2427 2132 744 +633 3557 2639 3566 656 +634 2386 254 2139 1498 +635 2918 960 2834 1433 +636 2769 1600 3847 1284 +637 2366 381 3847 1600 +638 2694 1188 3632 1551 +639 799 2013 754 1866 +640 3331 1504 3403 370 +641 1888 636 2072 1543 +642 3649 1749 1245 2211 +643 430 1945 749 1794 +644 331 2059 927 2103 +645 935 2487 462 2053 +646 2880 1567 3743 1208 +647 2852 791 2682 1431 +648 1053 2450 469 2021 +649 1496 3106 2331 772 +650 2041 440 2117 1519 +651 342 2512 985 1832 +652 3822 677 3666 2303 +653 2013 1586 3788 754 +654 322 2428 2654 1378 +655 3758 1823 2366 655 +656 1759 580 3690 1475 +657 1915 308 2652 1435 +658 3713 1427 3600 1824 +659 703 1438 498 2717 +660 1572 1697 3339 286 +661 2273 1446 2995 1559 +662 2221 1680 2687 587 +663 1504 2409 1153 3403 +664 2687 1680 3747 792 +665 2777 216 2091 1548 +666 2730 1549 2092 217 +667 2966 1455 3023 908 +668 1718 702 1940 693 +669 2794 1483 2236 232 +670 1898 1035 3079 3712 +671 1503 775 2347 3141 +672 1780 668 2704 1677 +673 1516 2444 250 3719 +674 1738 727 1991 3322 +675 1260 3618 620 2270 +676 493 290 586 585 +677 633 3730 1409 2649 +678 3635 1610 601 3561 +679 1459 249 3224 3018 +680 1674 1952 563 3490 +681 1122 536 3198 306 +682 1841 1517 3433 499 +683 967 2700 356 2642 +684 1610 811 2416 1599 +685 787 2607 1143 2823 +686 272 1288 3554 1918 +687 2882 1459 3018 706 +688 402 3371 3052 1731 +689 1663 676 3538 2413 +690 1404 1770 3324 667 +691 1894 1016 3367 1015 +692 634 1570 3682 1453 +693 3475 1839 2479 1410 +694 1985 946 2821 1776 +695 3682 2880 292 1453 +696 2089 1477 3503 598 +697 625 1650 879 1988 +698 600 2113 1491 3100 +699 885 1649 293 2495 +700 262 1561 856 2571 +701 437 3327 1271 2657 +702 1541 758 3461 1804 +703 925 3072 2332 1370 +704 990 2225 1261 3472 +705 2853 1524 3469 402 +706 2221 587 3468 1524 +707 774 2520 2519 2199 +708 3516 1577 3710 614 +709 1802 337 2118 2179 +710 1811 765 2644 1746 +711 3493 696 2158 1416 +712 725 1441 2841 2126 +713 2003 251 2929 1455 +714 1867 2077 1584 692 +715 230 3072 2560 1771 +716 2237 589 1499 1074 +717 3354 2195 3241 314 +718 933 2046 2458 3293 +719 389 2224 1369 3459 +720 1775 1481 3159 219 +721 1219 2474 1307 3364 +722 2683 3215 2264 953 +723 1528 2185 19 20 +724 1482 3207 1439 3776 +725 724 2174 2943 1897 +726 805 1641 2914 2545 +727 586 290 1213 529 +728 509 2817 1141 1984 +729 1827 2401 1828 414 +730 1209 3212 1718 412 +731 1934 2154 2892 919 +732 2080 1590 3345 708 +733 2718 1505 2504 242 +734 1616 2099 1637 615 +735 947 1489 1767 3102 +736 2236 1483 3146 266 +737 963 306 1196 377 +738 364 1755 833 2238 +739 2012 709 2185 1528 +740 2929 251 2984 1728 +741 3568 495 2955 1465 +742 2904 1456 2701 944 +743 2213 1652 2972 938 +744 1616 615 3735 1484 +745 3713 1824 3463 620 +746 2296 1659 3507 1179 +747 633 2649 1083 2757 +748 1117 2431 355 2887 +749 2583 469 3086 1477 +750 1908 907 2722 1958 +751 447 1866 754 1942 +752 3454 1182 3695 1582 +753 2102 663 1213 290 +754 2077 1867 2086 872 +755 1200 2559 528 3196 +756 2065 68 3414 1460 +757 708 1399 3584 1716 +758 1900 3381 380 3486 +759 1183 1789 485 3281 +760 2234 1461 2621 222 +761 2789 1004 3828 1468 +762 2711 1064 3753 1574 +763 2691 960 2918 1469 +764 3502 3225 700 2090 +765 3091 973 3211 1498 +766 1050 2566 929 2702 +767 3118 1029 3050 1478 +768 1398 3030 1507 733 +769 1280 1814 2041 648 +770 3413 1465 2955 827 +771 1904 672 3157 1799 +772 3078 1632 2858 690 +773 2540 1773 2072 636 +774 1410 664 1734 2448 +775 3390 714 1596 3411 +776 2798 1683 2983 1170 +777 1998 207 3835 1502 +778 1799 874 3556 1904 +779 904 2226 3639 2116 +780 1454 848 1470 3139 +781 3367 1472 2550 1015 +782 1951 1105 3691 1345 +783 647 1805 3062 1924 +784 2102 403 2609 663 +785 1325 2319 332 3785 +786 1507 2772 2035 733 +787 1442 627 2796 2169 +788 2883 666 2388 1636 +789 2186 828 1932 2324 +790 1655 467 861 862 +791 1553 9 10 3051 +792 704 2068 3636 2815 +793 2958 1161 3425 1702 +794 2756 1473 2647 809 +795 470 2137 1222 2838 +796 1592 1807 398 3316 +797 1935 2489 561 3757 +798 228 2828 908 1575 +799 3190 2921 2151 237 +800 587 2687 2008 1500 +801 600 1607 3394 2113 +802 1910 1826 1930 806 +803 634 2181 424 1570 +804 1903 690 2858 1654 +805 1729 2851 2043 226 +806 2119 3199 3260 268 +807 43 2282 1268 3214 +808 577 1706 974 2127 +809 1690 2675 513 2547 +810 505 2320 1065 2219 +811 2664 3232 1821 291 +812 3375 772 2747 1486 +813 2628 1130 3834 1556 +814 1449 258 3698 1598 +815 1589 3514 1704 407 +816 399 3649 2211 3135 +817 370 1810 3656 3331 +818 2367 236 2961 1620 +819 2969 1756 2955 495 +820 3039 981 2313 3174 +821 1727 719 3837 1591 +822 2048 1485 2845 994 +823 1347 3599 596 2680 +824 769 1929 749 1945 +825 3118 1764 906 1765 +826 2072 1773 2223 817 +827 239 2119 836 2192 +828 3448 1493 2776 775 +829 304 2472 647 1501 +830 2147 1585 2738 782 +831 1013 3073 542 2075 +832 3822 2303 235 1536 +833 1225 1891 204 3294 +834 419 2656 1183 3186 +835 2017 1584 3750 616 +836 1990 1486 2747 247 +837 2255 918 3663 465 +838 1308 1873 1099 3231 +839 411 1616 3726 1906 +840 2694 1042 2957 1494 +841 1475 1963 1962 710 +842 3200 3303 2254 1097 +843 613 2760 3577 1601 +844 2124 1506 2436 699 +845 543 2814 1319 3039 +846 2244 1529 2393 257 +847 1295 646 2161 1810 +848 1140 2225 354 2506 +849 3757 1532 3362 1301 +850 2963 1511 3676 998 +851 1786 1520 3630 1787 +852 3557 1492 491 2639 +853 697 1506 2124 1864 +854 2382 1689 2081 455 +855 1945 430 2348 1740 +856 1804 378 2500 1541 +857 336 1863 799 2107 +858 415 3206 849 1846 +859 1981 248 2776 1493 +860 1192 3515 277 1889 +861 3149 252 2605 1497 +862 3836 3726 1616 1484 +863 2250 722 2504 1505 +864 2080 708 1716 1691 +865 1324 672 1971 1928 +866 60 61 2333 1612 +867 3411 3467 2123 1440 +868 1863 336 3007 3679 +869 945 1978 333 2028 +870 363 2965 974 1706 +871 3320 1579 3550 1277 +872 1987 408 2440 1569 +873 1883 606 3132 1512 +874 562 3024 3595 1812 +875 1995 613 2758 1511 +876 3032 1509 2526 694 +877 3590 1518 2451 307 +878 2506 1726 3805 1140 +879 595 2879 1222 2137 +880 296 2154 3745 2889 +881 674 3107 1181 3457 +882 1968 1445 3654 1125 +883 588 1755 1077 3267 +884 2766 1626 1980 621 +885 1776 680 2966 1985 +886 1159 3087 1203 1911 +887 1406 2479 1839 419 +888 2526 1509 2608 373 +889 1698 2659 2409 942 +890 1160 2885 763 2052 +891 2052 1508 2959 427 +892 680 1296 3746 2003 +893 221 1743 3258 1994 +894 1610 1599 3611 601 +895 3401 1136 3611 1599 +896 3469 1580 3371 402 +897 2718 866 2752 1505 +898 212 1960 3245 1576 +899 3516 1179 3507 1577 +900 577 2643 1150 1706 +901 828 2120 435 1932 +902 781 1766 2691 2171 +903 1232 739 3430 1348 +904 1637 2099 2209 765 +905 2132 280 3627 1606 +906 3568 1619 2681 495 +907 2182 492 2044 2064 +908 293 2088 1044 2495 +909 2827 1052 1982 3156 +910 1364 2660 674 2836 +911 3509 57 58 3144 +912 3510 3145 74 75 +913 3022 1857 3501 1048 +914 1951 2915 2055 1105 +915 3347 565 1390 1389 +916 3539 597 2981 1712 +917 1634 2582 859 2680 +918 410 1645 3841 1419 +919 1701 26 27 3078 +920 1356 2274 424 1875 +921 1355 2580 334 2417 +922 2959 1133 3603 1602 +923 2318 1602 3603 689 +924 940 2775 355 1694 +925 2093 1560 3555 753 +926 210 3608 1215 2529 +927 1607 2611 3299 450 +928 3204 3334 215 1933 +929 1657 745 2561 1722 +930 1259 1840 612 3484 +931 3424 922 3433 1517 +932 3731 812 2871 1513 +933 1657 2031 2030 745 +934 1964 1601 3577 385 +935 2259 489 3179 1534 +936 2023 778 2339 1622 +937 2906 1124 3374 1564 +938 1441 3814 271 2841 +939 1329 1832 985 2793 +940 2788 1515 3519 436 +941 1828 2956 2170 414 +942 614 3291 1987 1569 +943 309 2077 872 2162 +944 2147 418 3551 1585 +945 3146 1081 3518 1739 +946 1400 707 1689 2140 +947 1329 3273 564 2484 +948 1991 1547 3531 592 +949 1934 458 2079 3648 +950 2864 1640 3804 1215 +951 3838 917 2947 2567 +952 2500 789 3137 1541 +953 3289 992 3027 1534 +954 2509 898 2984 1523 +955 2910 1201 2035 3465 +956 3117 429 2833 1556 +957 2628 1556 2833 875 +958 1453 1544 3175 634 +959 93 2252 680 1776 +960 983 2247 541 2178 +961 2671 870 1834 2330 +962 2466 201 2330 1834 +963 1620 2961 920 3042 +964 811 1610 3635 2517 +965 1881 2578 1536 235 +966 1769 2322 1127 3397 +967 952 2256 318 1948 +968 628 3136 1151 2397 +969 2223 1773 2540 471 +970 3486 1238 2484 1900 +971 540 1926 2464 1316 +972 1505 2752 214 2250 +973 2313 981 2041 1814 +974 1298 474 2902 1782 +975 954 2239 460 2246 +976 2754 852 2685 1593 +977 2908 1593 2685 239 +978 1130 2628 505 2867 +979 642 3272 1256 2145 +980 1694 1695 2820 940 +981 2122 1019 3197 3530 +982 2553 950 3175 1544 +983 654 1142 2651 1568 +984 2221 1524 2853 793 +985 3047 1622 3655 1142 +986 2339 303 3655 1622 +987 1887 2567 2947 511 +988 623 622 3198 299 +989 667 1905 3815 1404 +990 966 2039 561 2489 +991 231 1069 1207 426 +992 2177 1993 2436 3761 +993 1208 3439 292 2880 +994 887 3519 1515 2217 +995 1297 2811 720 2138 +996 1605 1569 2440 735 +997 1642 659 2253 1644 +998 3314 3263 2338 796 +999 1792 747 2086 1793 +1000 1398 733 1809 2457 +1001 2770 1597 3751 1146 +1002 2130 3794 2935 1017 +1003 1569 1605 3516 614 +1004 1803 412 1848 2095 +1005 3248 3845 2458 821 +1006 2196 1058 3230 3065 +1007 1508 3432 762 3741 +1008 1946 1565 3373 705 +1009 2738 1585 3551 1092 +1010 1400 3584 593 3633 +1011 2682 791 2596 1550 +1012 242 2504 1235 2807 +1013 1577 3507 287 3471 +1014 1906 807 3407 1838 +1015 3426 478 2737 1174 +1016 1086 2146 410 2742 +1017 2132 1803 2095 744 +1018 1994 809 2647 1604 +1019 2540 636 3382 1580 +1020 3811 1568 691 2499 +1021 2031 1657 3786 576 +1022 1080 2980 1332 2027 +1023 2411 1614 3548 607 +1024 2350 503 3535 1605 +1025 2177 1660 3068 1993 +1026 1565 1946 3253 285 +1027 3078 27 3644 1632 +1028 2858 1632 3644 28 +1029 279 2463 3615 2380 +1030 510 1950 823 2258 +1031 2699 1550 3313 853 +1032 796 2753 1281 2389 +1033 2489 1935 2630 993 +1034 2699 243 2682 1550 +1035 3174 1042 2694 1551 +1036 2711 1574 2786 531 +1037 1478 3694 432 3118 +1038 533 2037 776 1910 +1039 3602 877 3517 1611 +1040 2408 1735 2291 481 +1041 795 2922 1224 1731 +1042 1117 2323 785 2431 +1043 1663 2777 1548 676 +1044 1780 2177 1815 668 +1045 319 2432 750 1597 +1046 1501 2271 3624 629 +1047 623 241 2403 395 +1048 1436 436 2222 1696 +1049 914 1472 3367 2576 +1050 2441 260 3411 1596 +1051 3291 1619 3568 721 +1052 3592 1573 3848 753 +1053 983 2897 1242 2247 +1054 2907 1911 2744 522 +1055 1847 2296 503 2791 +1056 1793 2086 1867 416 +1057 2136 1659 2296 804 +1058 1267 3687 253 1795 +1059 2606 1608 3790 508 +1060 1952 2084 2702 929 +1061 2408 481 2103 927 +1062 995 2073 356 2454 +1063 616 1774 3438 2017 +1064 701 1843 1189 3410 +1065 326 2322 682 1644 +1066 1356 642 3673 2535 +1067 2193 1615 3063 818 +1068 2367 1620 2386 961 +1069 1154 2037 533 1763 +1070 1575 908 3023 1576 +1071 29 30 2475 1654 +1072 2302 890 2120 1916 +1073 2166 1916 2120 828 +1074 1723 352 3722 2859 +1075 2440 408 3345 1590 +1076 1901 3793 1820 658 +1077 1942 851 2024 2198 +1078 1759 2483 2538 580 +1079 1204 1625 3594 524 +1080 392 2106 1430 3567 +1081 3469 1112 2540 1580 +1082 1367 2739 1413 3447 +1083 1289 506 2242 1914 +1084 619 1638 758 3646 +1085 1566 13 14 2215 +1086 1968 1559 2995 1445 +1087 3803 422 1864 2124 +1088 2093 289 3520 1560 +1089 554 2654 1176 3177 +1090 232 2203 1293 2794 +1091 2194 1630 3579 1107 +1092 2422 1043 3445 1609 +1093 2663 1609 3445 669 +1094 1807 686 3809 1581 +1095 285 2399 1137 2423 +1096 1494 645 1869 2112 +1097 1462 2068 3719 250 +1098 2064 2044 2317 854 +1099 2676 1598 2497 237 +1100 558 3012 1171 2076 +1101 532 1982 1052 2774 +1102 2803 1111 2906 1564 +1103 2707 1707 263 2562 +1104 2981 979 3278 1712 +1105 1871 689 3603 2678 +1106 448 1925 1134 3158 +1107 1932 2214 2355 899 +1108 1876 737 2010 2801 +1109 2175 701 1846 2800 +1110 3035 1713 2562 263 +1111 1669 3110 3343 711 +1112 1483 2163 1081 3146 +1113 441 1912 3641 2457 +1114 3376 1202 1204 329 +1115 1385 254 3042 1603 +1116 581 3320 1263 2023 +1117 3230 1334 1756 2911 +1118 2351 2187 1858 998 +1119 1666 274 1721 2265 +1120 1216 2075 542 3097 +1121 3471 1144 2681 1577 +1122 3592 753 3555 1670 +1123 1346 2285 88 89 +1124 3132 606 2433 1628 +1125 17 2829 2284 16 +1126 2316 2006 2310 897 +1127 1576 3639 3130 1575 +1128 792 2461 2731 1340 +1129 428 1817 892 2480 +1130 1962 2618 2021 710 +1131 657 1912 1050 2087 +1132 1984 1141 3748 2414 +1133 1473 45 46 3266 +1134 2077 309 3750 1584 +1135 458 1934 919 2452 +1136 679 3567 1430 3711 +1137 2001 511 2947 2502 +1138 3017 2390 1191 1352 +1139 2148 449 2822 1975 +1140 2487 935 2311 2066 +1141 2967 2910 3465 987 +1142 2115 206 2292 1710 +1143 1503 273 2267 1724 +1144 3775 727 3163 1588 +1145 1532 3779 625 3796 +1146 1028 2492 901 2125 +1147 3359 3651 2357 305 +1148 1673 2465 1819 635 +1149 282 2188 3684 1778 +1150 3394 1607 3330 1003 +1151 2388 812 2435 1636 +1152 203 3302 1459 2882 +1153 1462 250 2444 3041 +1154 1082 1995 296 2889 +1155 3547 2105 3727 1315 +1156 1645 410 2146 1969 +1157 2028 333 3669 1736 +1158 2761 1627 2830 780 +1159 2410 2624 2625 1075 +1160 3320 581 3047 1579 +1161 3744 1589 2899 846 +1162 639 1586 448 3158 +1163 966 1531 3778 3122 +1164 897 2193 818 2316 +1165 1807 1581 3524 398 +1166 1717 2375 1676 728 +1167 2016 394 3527 1919 +1168 2019 374 3703 1671 +1169 3513 2084 1952 718 +1170 678 2818 1015 2550 +1171 3029 1583 2996 255 +1172 650 1973 969 2552 +1173 2336 1661 3400 768 +1174 277 1358 3806 1889 +1175 3677 1020 2129 771 +1176 3393 2085 2468 985 +1177 1727 1591 3057 670 +1178 2024 437 2657 1662 +1179 2080 845 2982 1590 +1180 1730 1886 3660 420 +1181 1375 3114 2288 2362 +1182 2511 1863 3679 1001 +1183 3323 1751 748 1750 +1184 2829 17 3185 1603 +1185 2751 608 2420 1686 +1186 1017 2471 311 2130 +1187 627 2210 1059 1800 +1188 1880 1593 2908 267 +1189 608 1631 2886 971 +1190 1188 2602 1137 1849 +1191 1481 713 3681 3159 +1192 2193 897 2239 1768 +1193 1501 647 1924 2271 +1194 693 1940 1591 3837 +1195 59 2548 893 1665 +1196 2265 894 2549 1666 +1197 425 3276 640 1836 +1198 601 3611 3823 1679 +1199 3045 911 2945 1595 +1200 2272 1715 3646 758 +1201 2136 804 2914 1641 +1202 1903 1654 2475 841 +1203 3140 3043 2348 2954 +1204 1681 3790 1608 635 +1205 3042 920 2829 1603 +1206 1418 2865 1772 246 +1207 831 2844 2140 1689 +1208 906 1764 2863 1138 +1209 2083 2996 2165 3054 +1210 1725 850 2860 2180 +1211 3350 1779 2916 238 +1212 1572 797 3080 1697 +1213 235 2101 1103 3049 +1214 2813 886 3092 1604 +1215 2206 903 2645 445 +1216 520 2150 1024 2478 +1217 356 2073 3166 2642 +1218 1994 1604 3092 221 +1219 1008 1709 632 3217 +1220 803 2098 851 2118 +1221 858 2709 3402 2088 +1222 1703 2070 1249 3638 +1223 2333 264 2951 1612 +1224 2548 1612 2951 893 +1225 1837 1613 2952 265 +1226 2549 894 2952 1613 +1227 1989 1988 2231 880 +1228 1895 747 2491 1861 +1229 3660 1677 2704 420 +1230 3172 513 2675 1797 +1231 1200 3196 1344 2042 +1232 1170 2881 947 2798 +1233 3507 1659 3563 287 +1234 1066 2071 619 3340 +1235 2115 1635 2754 206 +1236 2832 1182 3799 1700 +1237 1892 1700 3799 347 +1238 515 2161 1287 3164 +1239 1713 3035 962 3121 +1240 1780 1677 3660 732 +1241 653 1822 1274 2266 +1242 3790 1681 3705 1217 +1243 436 1436 2956 2788 +1244 1280 648 3656 2503 +1245 1695 1694 2420 608 +1246 1744 742 3590 1664 +1247 1251 2235 3451 2831 +1248 2710 1139 2767 2005 +1249 851 2098 437 2024 +1250 653 2266 1749 2528 +1251 1337 2516 240 3773 +1252 2498 1858 2187 519 +1253 1075 2625 328 2569 +1254 3765 3839 784 2417 +1255 950 2553 498 1961 +1256 884 3280 1169 2455 +1257 3236 262 2571 1651 +1258 3259 768 3400 1705 +1259 362 2493 1470 2692 +1260 2672 1687 3725 1273 +1261 3146 1739 2404 266 +1262 3645 253 2764 1635 +1263 2754 1635 2764 852 +1264 2967 987 2498 2047 +1265 3774 384 2505 1674 +1266 1339 618 3125 1617 +1267 421 1907 850 2485 +1268 820 2610 3734 2425 +1269 1409 901 2942 2534 +1270 3355 983 3287 1629 +1271 1882 221 3092 1618 +1272 269 1225 3070 1771 +1273 222 1739 3518 2234 +1274 2805 259 3095 1618 +1275 1357 2833 429 2835 +1276 2805 1618 3092 886 +1277 2666 1634 2680 596 +1278 1530 841 2475 3723 +1279 608 2751 1166 1631 +1280 1561 2488 1701 856 +1281 26 1701 2488 25 +1282 709 1385 3398 2185 +1283 1102 2456 542 3073 +1284 3034 222 2621 1748 +1285 3059 1987 3291 721 +1286 3034 1748 277 2335 +1287 1717 728 3692 2919 +1288 1504 3331 1525 3717 +1289 2543 3028 2150 520 +1290 1220 3007 336 3415 +1291 2930 1621 3354 964 +1292 2386 1620 3042 254 +1293 3324 1770 223 2309 +1294 313 1634 3301 1253 +1295 523 1624 1202 3087 +1296 1523 3418 95 96 +1297 1056 2672 572 3686 +1298 652 1708 2782 1986 +1299 1344 1872 2240 423 +1300 803 2062 437 2098 +1301 1686 2420 2431 785 +1302 1972 397 3813 1628 +1303 1562 2361 2663 669 +1304 2646 1808 2885 322 +1305 415 3410 1189 3148 +1306 1687 2153 734 3725 +1307 1576 3245 2116 3639 +1308 2940 1000 3405 1809 +1309 1503 1724 3448 775 +1310 3560 286 2886 1631 +1311 2830 1627 2991 233 +1312 2761 256 2992 1627 +1313 953 1992 500 2684 +1314 926 2359 576 2074 +1315 2588 442 3747 1680 +1316 528 2318 1344 3196 +1317 373 3436 1347 2526 +1318 2016 797 3434 1679 +1319 807 1318 2946 2319 +1320 2921 268 3260 1071 +1321 3440 1197 3643 1905 +1322 951 2306 1534 3179 +1323 1100 2142 881 2143 +1324 396 3772 2465 1673 +1325 3807 1234 3358 2034 +1326 397 2891 1054 2020 +1327 1439 3486 380 3564 +1328 1294 266 2404 1777 +1329 720 2811 396 1673 +1330 690 1903 2391 3408 +1331 1588 2633 882 3344 +1332 2176 1651 3801 220 +1333 1659 2136 1210 3563 +1334 399 1264 3562 3523 +1335 328 2625 1076 2600 +1336 1614 2411 847 3043 +1337 1368 2944 312 2200 +1338 1670 3555 2411 607 +1339 3454 1582 3430 739 +1340 267 2352 973 1779 +1341 3539 1712 2645 1381 +1342 2080 1691 3613 454 +1343 1892 2345 2575 738 +1344 1558 715 1984 2414 +1345 1340 2008 2687 792 +1346 2895 1877 2419 662 +1347 2739 369 3400 1661 +1348 790 1871 376 2262 +1349 3774 1674 3490 1187 +1350 1381 2510 591 3420 +1351 543 1551 3632 2379 +1352 815 3724 205 1688 +1353 2657 2269 1854 675 +1354 3777 1020 3677 1668 +1355 2576 1510 3752 914 +1356 1643 1642 2970 405 +1357 2176 746 3236 1651 +1358 3125 618 2686 1851 +1359 2375 1717 2532 1018 +1360 1388 3122 550 2862 +1361 1872 790 1893 2240 +1362 1747 3515 1192 3412 +1363 897 2310 460 2239 +1364 1159 2144 523 3087 +1365 1454 3585 1343 2679 +1366 3528 773 2521 1109 +1367 1442 2061 2210 627 +1368 379 2167 881 2142 +1369 3238 1671 3175 950 +1370 301 3513 1181 3107 +1371 2346 1703 3638 258 +1372 292 3348 1254 3650 +1373 1526 1684 3523 652 +1374 3051 1675 3755 666 +1375 3275 382 2360 867 +1376 762 3201 1424 1943 +1377 1305 2896 225 3167 +1378 2752 866 2562 1713 +1379 616 2486 895 2923 +1380 1400 3633 1349 1704 +1381 1185 3750 309 2229 +1382 1212 2974 548 3206 +1383 1685 2393 3121 962 +1384 3089 832 3613 1691 +1385 863 2459 240 2516 +1386 2777 1663 3311 1131 +1387 1467 223 1770 2641 +1388 1079 298 1391 1390 +1389 516 2112 883 2602 +1390 1886 1730 3837 719 +1391 2062 803 2281 2094 +1392 1892 679 3711 1700 +1393 1675 2469 857 3755 +1394 2629 1096 3537 559 +1395 2322 1769 2555 682 +1396 1848 711 3343 1884 +1397 1615 1804 3461 678 +1398 1444 1693 2720 830 +1399 2336 602 3239 1661 +1400 1662 814 2198 2024 +1401 314 2243 3704 1732 +1402 782 2148 912 2147 +1403 2399 1737 2501 764 +1404 2419 1821 2781 662 +1405 2820 1695 3053 431 +1406 2145 1714 3673 642 +1407 3131 1418 2261 3670 +1408 1906 1838 3259 411 +1409 2992 1816 3399 921 +1410 1061 1786 578 2868 +1411 2844 1690 3089 295 +1412 2657 675 3684 1662 +1413 2153 1687 3582 504 +1414 3590 307 2958 1664 +1415 3304 1865 3337 1113 +1416 2461 792 3747 2462 +1417 1364 2836 2360 382 +1418 2659 1698 3557 656 +1419 3133 2015 2257 313 +1420 2341 1668 3677 488 +1421 2999 1093 1678 3496 +1422 352 2860 1272 2915 +1423 1431 3120 86 87 +1424 2016 1679 3823 394 +1425 1268 2282 2756 809 +1426 1501 2054 3090 304 +1427 889 2166 828 2186 +1428 959 2557 324 2564 +1429 3821 3542 2128 1535 +1430 497 2816 1218 2638 +1431 1628 2433 930 1972 +1432 988 2358 790 2262 +1433 1918 3258 1743 272 +1434 452 1894 1015 2818 +1435 1733 2170 738 2575 +1436 1730 420 3110 1669 +1437 1929 769 2207 3150 +1438 2051 2050 2198 814 +1439 1521 453 1626 1520 +1440 498 2553 1254 2717 +1441 2050 2051 2607 787 +1442 1552 1830 425 3066 +1443 2980 1708 3562 568 +1444 263 1707 3534 1502 +1445 2468 2085 2297 889 +1446 2698 1083 3840 1681 +1447 2206 1733 2575 903 +1448 2263 766 1366 1302 +1449 639 3158 926 2074 +1450 1736 944 2325 2028 +1451 2979 743 2890 1682 +1452 3545 1273 3725 2301 +1453 1282 1874 215 3180 +1454 220 1299 3383 2176 +1455 2675 1690 2844 831 +1456 47 48 3815 1905 +1457 1322 2157 2158 696 +1458 506 3593 1221 2726 +1459 3032 694 1741 3825 +1460 2818 678 3461 1845 +1461 2370 1806 2838 923 +1462 1344 423 2349 2042 +1463 814 2188 282 2051 +1464 1056 3582 1687 2672 +1465 2980 1080 2782 1708 +1466 295 1716 3584 1400 +1467 2193 1768 2500 378 +1468 744 2220 459 1996 +1469 1688 205 2979 1682 +1470 1399 3586 593 3584 +1471 2472 3466 2558 647 +1472 1932 435 2060 2214 +1473 901 1409 3730 2662 +1474 3118 1765 3333 1029 +1475 1115 1714 2145 3499 +1476 987 2452 919 2498 +1477 1774 1692 3278 979 +1478 2923 445 3278 1692 +1479 1394 1038 2732 2565 +1480 408 1719 3586 1399 +1481 799 1866 928 2107 +1482 2120 2006 2316 435 +1483 1958 429 3117 1908 +1484 906 1408 3126 1765 +1485 341 2795 3756 1876 +1486 1608 2606 2138 720 +1487 3221 751 3792 1742 +1488 2245 234 3044 1685 +1489 2393 1685 3045 257 +1490 350 2237 1074 3093 +1491 2798 386 3140 1683 +1492 2922 1646 3274 794 +1493 1942 2198 2050 447 +1494 1526 652 1986 2356 +1495 1738 705 3373 1781 +1496 638 1899 1250 3766 +1497 1502 2706 3035 263 +1498 774 1925 448 2383 +1499 3686 2164 2727 1056 +1500 1291 1870 3344 882 +1501 2125 484 3111 3456 +1502 3613 832 3805 1726 +1503 2027 2171 2782 1080 +1504 2180 1723 3602 681 +1505 822 1974 510 2258 +1506 568 3155 757 1842 +1507 1507 3030 310 2919 +1508 84 85 3396 1889 +1509 641 2780 958 2779 +1510 3078 690 3408 1701 +1511 2834 960 2691 1766 +1512 454 2306 845 2080 +1513 992 2506 354 2174 +1514 1682 714 3390 1688 +1515 1169 2608 1742 3792 +1516 222 3034 2404 1739 +1517 598 3578 1147 2089 +1518 2541 1161 2449 3379 +1519 3579 1630 3297 759 +1520 2547 832 3089 1690 +1521 2561 381 2780 1722 +1522 747 1792 332 2491 +1523 610 2279 1464 3818 +1524 1418 3131 213 2594 +1525 297 2089 1147 3176 +1526 703 2121 3732 1438 +1527 619 2071 1427 3607 +1528 1171 2201 716 2076 +1529 2343 932 2427 1996 +1530 208 1667 3277 2260 +1531 3041 2444 2778 1396 +1532 446 2202 881 2290 +1533 846 2256 952 2342 +1534 2384 787 2823 1885 +1535 3163 1781 3373 487 +1536 2483 1759 2583 1011 +1537 3724 1754 3124 205 +1538 2826 956 3124 1754 +1539 2205 379 2142 2294 +1540 2616 1785 2971 278 +1541 845 2306 951 2257 +1542 3276 425 2381 1917 +1543 2355 2214 2060 819 +1544 3540 1383 2653 1806 +1545 2838 1806 2653 470 +1546 3425 534 2983 1702 +1547 451 1893 790 2358 +1548 561 2039 1360 3779 +1549 3069 1746 2644 539 +1550 2165 1728 2984 898 +1551 2933 972 3339 1697 +1552 1545 3262 609 2755 +1553 1542 1047 3000 2931 +1554 3098 1698 3627 280 +1555 3020 3768 2513 209 +1556 1786 1787 3600 578 +1557 2115 1710 3383 780 +1558 2532 1819 2465 1018 +1559 287 3563 1210 3058 +1560 2712 514 3674 1734 +1561 3588 1734 3674 1118 +1562 3543 1199 3286 1705 +1563 865 2587 637 1831 +1564 1863 2511 2013 799 +1565 2321 2439 2253 868 +1566 725 1241 3245 1960 +1567 3578 598 2932 2344 +1568 670 3737 401 1727 +1569 2335 1747 1363 3791 +1570 1318 807 1906 2415 +1571 3602 1723 2859 877 +1572 2272 451 3541 1715 +1573 3203 1947 2496 1088 +1574 2346 948 3226 1703 +1575 1060 3781 1970 1500 +1576 2070 1703 3226 229 +1577 257 3629 1327 2244 +1578 978 2034 345 3112 +1579 201 2466 863 1936 +1580 494 2725 1062 3314 +1581 1761 3508 431 3053 +1582 1865 3304 552 3298 +1583 1568 2651 2056 691 +1584 2506 992 3289 1726 +1585 1289 2038 384 2467 +1586 231 2799 3640 2190 +1587 2518 1741 3693 1124 +1588 2067 489 3693 1741 +1589 1597 2770 1973 319 +1590 1516 3784 2476 860 +1591 2184 398 3209 1709 +1592 1228 3082 584 3188 +1593 277 1748 3771 1358 +1594 1741 694 2585 2067 +1595 3622 2938 1883 1512 +1596 2362 1815 2941 421 +1597 772 3375 217 1721 +1598 2668 1725 2862 550 +1599 1735 2564 2090 957 +1600 1554 1068 2877 315 +1601 3422 1233 1557 288 +1602 1581 2223 1126 3524 +1603 1841 3843 570 2104 +1604 2507 1760 3832 1211 +1605 2645 1712 3278 445 +1606 2112 1869 2637 883 +1607 1658 858 3593 2467 +1608 2752 1713 3121 214 +1609 710 2021 469 2583 +1610 1323 2927 1542 346 +1611 2333 3542 3821 264 +1612 3600 1787 3630 798 +1613 261 1306 2851 1729 +1614 3221 2670 2368 751 +1615 3586 1719 3059 1021 +1616 1334 827 2955 1756 +1617 588 2719 833 1755 +1618 2031 2268 2278 2030 +1619 2267 216 3448 1724 +1620 1636 2435 101 102 +1621 1448 360 3654 1445 +1622 1215 3608 864 2864 +1623 2555 1769 2993 1313 +1624 2016 750 2816 1957 +1625 2461 2462 2230 443 +1626 1615 678 2550 2058 +1627 1871 2678 1943 376 +1628 1237 2544 805 2545 +1629 3789 1754 3724 815 +1630 968 2307 227 1999 +1631 2296 1847 2914 804 +1632 833 2719 1633 3512 +1633 1126 2223 471 2898 +1634 2120 890 2310 2006 +1635 1947 331 2326 2329 +1636 2895 1855 3715 800 +1637 2508 531 2786 1844 +1638 774 2383 1001 1941 +1639 633 2387 1328 3235 +1640 2696 519 2187 3055 +1641 2016 1919 3003 750 +1642 425 1836 1518 3349 +1643 3726 688 2415 1906 +1644 2642 2011 2745 967 +1645 713 1856 3130 1335 +1646 368 3282 1309 2299 +1647 2250 2101 3171 722 +1648 1841 2104 2251 752 +1649 2170 1733 3036 414 +1650 2785 3173 2328 340 +1651 2164 282 1778 2727 +1652 244 3409 1197 3440 +1653 310 3129 1356 2535 +1654 3069 3619 673 1746 +1655 1738 1781 3163 727 +1656 2016 1957 3080 797 +1657 216 2267 893 2091 +1658 2210 2061 2464 801 +1659 422 3488 3246 1864 +1660 238 2470 1428 3350 +1661 1976 1853 2513 853 +1662 1471 2418 1156 3521 +1663 1955 795 1731 3052 +1664 1124 2259 724 3374 +1665 1432 3024 562 2824 +1666 618 1212 2400 2686 +1667 3669 1186 3536 1736 +1668 2233 2232 880 2231 +1669 2104 999 1752 2251 +1670 2334 339 2967 3565 +1671 1648 825 2276 3780 +1672 2206 895 3036 1733 +1673 2280 788 2069 2705 +1674 2410 525 2936 2624 +1675 3275 867 2613 644 +1676 1411 2243 808 3620 +1677 2588 793 2763 2590 +1678 2589 2590 2763 1380 +1679 1131 3311 730 1981 +1680 3625 3760 2907 1376 +1681 340 2328 1006 2424 +1682 2165 229 3226 1728 +1683 2929 1728 3226 948 +1684 1831 1851 2686 865 +1685 1726 3289 454 3613 +1686 3574 1265 2356 1986 +1687 460 2310 890 2129 +1688 1523 96 97 2509 +1689 2501 1737 3464 546 +1690 1664 651 2954 1744 +1691 1450 2394 1297 3504 +1692 3811 2499 3501 3322 +1693 424 2181 3272 1875 +1694 3053 971 3218 1761 +1695 2365 599 3102 1767 +1696 2477 3205 261 1729 +1697 3506 1321 1883 2650 +1698 1898 3712 2312 835 +1699 1892 347 2156 2345 +1700 1732 835 2312 964 +1701 2030 2278 2279 610 +1702 353 2530 826 1884 +1703 2439 2321 2809 1073 +1704 904 2116 3480 2896 +1705 3218 557 3556 1761 +1706 900 2238 833 2155 +1707 3105 2173 3579 759 +1708 824 2009 3041 1396 +1709 2969 1077 2911 1756 +1710 1021 2839 593 3586 +1711 1667 1114 1990 3277 +1712 323 3000 1047 2924 +1713 1680 2221 793 2588 +1714 1434 3192 1125 2670 +1715 1002 3720 2513 1853 +1716 2507 1045 3478 1760 +1717 2765 1760 3478 375 +1718 2837 472 2066 2311 +1719 435 2316 818 2060 +1720 2968 1900 2484 564 +1721 1222 2531 923 2838 +1722 1576 3023 2912 212 +1723 1945 1740 3377 769 +1724 1859 839 2592 1860 +1725 990 3061 354 2225 +1726 2371 801 2464 1926 +1727 1224 2763 793 2853 +1728 3733 357 3683 1758 +1729 641 1813 3026 1341 +1730 3248 821 2216 3525 +1731 3349 2033 3066 425 +1732 980 2329 935 2053 +1733 3395 3382 636 1888 +1734 3570 1250 3062 1805 +1735 1331 2082 381 2561 +1736 3312 1752 3769 673 +1737 2335 277 3515 1747 +1738 3162 1278 2017 3438 +1739 3200 1195 3317 3303 +1740 697 1272 1907 1257 +1741 957 3268 2291 1735 +1742 1341 2074 576 3786 +1743 1266 2247 1242 3001 +1744 2119 1772 2865 836 +1745 1771 2560 1874 269 +1746 838 2299 3544 2640 +1747 3475 644 2613 1839 +1748 3651 2042 2349 802 +1749 1991 1463 3811 3322 +1750 1073 2809 955 2661 +1751 1861 472 2525 1895 +1752 1779 3350 1084 3386 +1753 681 1956 1388 2862 +1754 1440 236 2367 2025 +1755 1222 2879 1065 3243 +1756 2957 330 2802 1818 +1757 3161 892 1818 2802 +1758 837 2048 994 2837 +1759 261 3205 1002 1853 +1760 2239 954 3351 1768 +1761 2971 1785 2821 946 +1762 1265 3652 805 2544 +1763 1760 2765 888 3832 +1764 1294 1777 3020 209 +1765 1105 2055 3246 3488 +1766 3508 1761 3556 874 +1767 2256 2014 2806 318 +1768 2532 473 2698 1819 +1769 1697 3080 497 2933 +1770 97 2078 898 2509 +1771 1336 1920 3809 686 +1772 803 3223 1175 2281 +1773 2146 820 2847 1969 +1774 23 1852 2749 22 +1775 579 2843 1097 2254 +1776 1939 1782 2902 723 +1777 331 2103 837 2326 +1778 2567 918 2255 1447 +1779 2311 935 2329 2326 +1780 3105 1162 3201 2173 +1781 816 2622 3529 1639 +1782 3379 560 2337 2541 +1783 2338 1036 2541 2337 +1784 863 2516 839 1936 +1785 3606 2294 2142 1100 +1786 2630 1935 2735 459 +1787 825 1648 3573 2641 +1788 253 3645 2002 1795 +1789 2773 1720 393 3446 +1790 2264 2584 2178 541 +1791 2659 656 3566 1762 +1792 683 3397 1127 2934 +1793 2937 2703 1913 1326 +1794 1947 3203 2059 331 +1795 383 1899 986 2563 +1796 2298 1230 395 2403 +1797 713 1481 1931 1856 +1798 2329 980 2496 1947 +1799 787 2384 447 2050 +1800 1737 2399 285 3253 +1801 2060 2168 2290 819 +1802 819 2290 881 2167 +1803 2048 837 2103 481 +1804 1334 3614 2197 827 +1805 412 1803 3827 1209 +1806 1729 226 1967 2477 +1807 1138 924 1557 466 +1808 3172 1797 2887 1101 +1809 3442 2043 2851 706 +1810 1260 2270 1366 3308 +1811 3090 2573 2204 304 +1812 2455 2105 3547 512 +1813 3180 2421 3224 843 +1814 2718 2707 2562 866 +1815 2143 881 2202 2373 +1816 2179 3788 1586 1802 +1817 2320 2581 3243 1065 +1818 1964 385 2305 2973 +1819 643 2664 1258 3589 +1820 2366 1823 3138 958 +1821 3716 439 3138 1823 +1822 3748 1141 2917 1801 +1823 671 2913 997 2038 +1824 492 2377 871 2869 +1825 553 2661 1415 2769 +1826 1962 312 2944 2618 +1827 2365 1767 3522 1476 +1828 1033 1923 1075 2569 +1829 2194 763 2885 1808 +1830 3148 3419 2400 415 +1831 2993 1769 3397 683 +1832 1851 1831 2765 375 +1833 3782 1426 3109 1959 +1834 723 2902 1164 3288 +1835 3676 1511 2758 3714 +1836 1834 3699 1370 2466 +1837 300 400 1244 1072 +1838 1648 3780 50 51 +1839 2031 576 2359 2268 +1840 3337 1865 2702 301 +1841 2281 439 3620 2094 +1842 864 2445 240 2459 +1843 1078 2416 811 2603 +1844 2788 2956 1828 700 +1845 2271 1924 3429 1096 +1846 3413 827 2197 949 +1847 1595 3629 257 3045 +1848 2388 666 3755 1862 +1849 1531 353 2057 3114 +1850 3162 3438 1774 417 +1851 1062 991 1949 3254 +1852 1286 2822 2321 868 +1853 2750 1837 2578 934 +1854 891 3164 1287 2808 +1855 3638 1798 3698 258 +1856 927 2300 959 2408 +1857 1649 2443 462 2111 +1858 2010 1151 3284 2801 +1859 2634 1844 2786 810 +1860 1266 3001 1139 1992 +1861 1876 2001 2502 737 +1862 1880 267 1779 3386 +1863 1753 1421 3159 3681 +1864 3498 358 2674 3838 +1865 2332 2026 2459 863 +1866 3771 2277 3806 1358 +1867 2617 975 2376 2377 +1868 2667 1847 2791 910 +1869 1785 91 92 2821 +1870 1586 639 3026 1802 +1871 3147 38 39 3784 +1872 302 3458 1275 1783 +1873 1275 3458 1276 2159 +1874 508 3365 1262 2606 +1875 686 1922 2755 1336 +1876 1638 452 2818 1845 +1877 2101 235 2303 3171 +1878 1230 869 567 395 +1879 778 2023 3527 2396 +1880 802 2349 954 2246 +1881 887 2434 289 2093 +1882 2177 3761 2941 1815 +1883 1914 3252 1915 671 +1884 228 1575 3130 1856 +1885 2536 1007 3247 1801 +1886 3012 2372 2977 1171 +1887 1828 2401 3268 957 +1888 1004 2789 1110 2369 +1889 2497 1798 3124 956 +1890 448 2511 1001 2383 +1891 1746 673 3769 1811 +1892 1264 399 3135 3155 +1893 2695 821 2458 2046 +1894 730 1312 2740 1890 +1895 2395 2962 2949 479 +1896 1225 269 2870 1891 +1897 2422 2534 2942 1043 +1898 1615 2058 446 3063 +1899 440 2041 981 3038 +1900 1434 3040 1320 2172 +1901 2935 2040 3014 1017 +1902 2942 482 3014 2040 +1903 1219 2471 1017 3014 +1904 379 2355 819 2167 +1905 1593 1880 206 2754 +1906 3300 2152 3532 245 +1907 1689 707 3744 2081 +1908 2517 1948 2603 811 +1909 3279 900 2155 2410 +1910 1586 2013 2511 448 +1911 2569 2598 2314 1033 +1912 674 3457 485 1789 +1913 1634 2666 910 3301 +1914 1515 3225 3553 2217 +1915 224 2402 3534 1707 +1916 3700 1318 2415 2111 +1917 1649 2111 2415 688 +1918 1471 2365 777 3657 +1919 1675 11 12 2469 +1920 2148 1975 2748 912 +1921 540 1365 3071 2141 +1922 952 1948 2517 3352 +1923 1265 2544 2960 502 +1924 381 2366 958 2780 +1925 703 2717 1254 3348 +1926 1135 2248 534 2857 +1927 1228 3443 1949 2149 +1928 2806 2014 2899 734 +1929 1220 3016 1058 3088 +1930 97 98 3054 2078 +1931 1057 3709 1693 3149 +1932 2887 1797 3380 1117 +1933 3638 1249 3739 1798 +1934 472 2837 994 2525 +1935 3570 1805 3833 535 +1936 2667 2545 2914 1847 +1937 1090 2216 821 2695 +1938 3203 1088 2696 3055 +1939 2181 634 3175 3728 +1940 2781 1855 2895 662 +1941 2498 919 2892 1858 +1942 2505 1829 2985 718 +1943 726 1594 3307 270 +1944 1720 2773 741 2405 +1945 1331 2561 745 3678 +1946 983 2178 3112 3287 +1947 3142 2392 2454 905 +1948 2130 311 3344 1870 +1949 3000 1094 477 2931 +1950 2696 2047 2498 519 +1951 1244 2364 2160 1248 +1952 1460 3414 2750 934 +1953 2995 465 1448 1445 +1954 778 2228 1059 2339 +1955 2935 669 3445 2040 +1956 1954 2827 3156 342 +1957 3485 1812 3595 1237 +1958 464 1968 1125 3192 +1959 1561 24 25 2488 +1960 2060 818 3063 2168 +1961 3033 1825 3300 989 +1962 1543 2072 817 3812 +1963 847 2135 3377 1740 +1964 3632 755 2378 2379 +1965 413 3845 1292 2361 +1966 1338 3216 1045 2559 +1967 1990 731 2260 3277 +1968 548 2697 916 2029 +1969 767 1458 1366 766 +1970 2457 1809 3405 441 +1971 1552 643 3589 1830 +1972 834 2636 3492 1954 +1973 1668 2341 2430 941 +1974 1640 2864 2026 230 +1975 1008 3217 1413 2739 +1976 3228 409 3015 1854 +1977 1955 3052 3382 3395 +1978 984 3533 325 1479 +1979 2861 1039 2655 2297 +1980 1528 20 21 3637 +1981 687 1967 870 2671 +1982 2781 1821 3232 933 +1983 1849 418 1850 755 +1984 2166 889 2297 2655 +1985 774 2199 3580 1925 +1986 424 3010 986 2295 +1987 1423 1904 3556 557 +1988 429 1958 916 2835 +1989 1639 2277 3771 816 +1990 1717 1128 3356 2532 +1991 3778 1375 2485 2668 +1992 1165 2775 940 2690 +1993 617 1433 2834 2144 +1994 1243 2586 979 2981 +1995 2505 997 3688 1829 +1996 1686 490 3635 2751 +1997 640 2514 1153 3437 +1998 2963 2892 2154 296 +1999 825 1404 3815 2276 +2000 1518 3590 742 3349 +2001 2650 1883 2938 486 +2002 347 3227 783 2156 +2003 1618 3095 1373 1882 +2004 552 2087 1050 3298 +2005 1649 885 2840 2443 +2006 1933 275 1833 3204 +2007 2736 2825 2478 1024 +2008 2508 1844 3319 1111 +2009 3600 798 3463 1824 +2010 2824 2353 3280 884 +2011 568 3562 1264 3155 +2012 2592 224 3830 1860 +2013 1647 1533 1180 2004 +2014 418 1849 764 3551 +2015 1612 2548 59 60 +2016 1666 2549 72 73 +2017 475 1896 1120 3048 +2018 204 1891 909 2950 +2019 2290 2168 3063 446 +2020 2991 1997 3685 233 +2021 3470 1397 2425 3406 +2022 2749 1852 3153 943 +2023 1851 2412 2370 3125 +2024 2483 1223 3661 2538 +2025 2734 2323 2382 455 +2026 902 2807 1235 3067 +2027 1028 2474 482 2492 +2028 1893 451 2272 3137 +2029 838 3237 1888 1543 +2030 3407 768 3259 1838 +2031 1230 2298 3802 3292 +2032 2985 1829 3688 485 +2033 1868 2067 2585 859 +2034 1837 2750 69 70 +2035 2626 684 1554 315 +2036 2034 3358 1843 345 +2037 3061 1102 1897 2943 +2038 2022 317 3310 1878 +2039 991 585 2149 1949 +2040 82 83 3806 2277 +2041 1962 1963 3508 874 +2042 1337 2402 224 2592 +2043 2454 2392 2304 995 +2044 1457 2620 2029 916 +2045 1465 3413 317 2183 +2046 235 3049 665 1881 +2047 499 1343 3843 1841 +2048 2825 2032 2627 996 +2049 1461 2622 816 2621 +2050 2203 3189 1859 276 +2051 2067 1868 3179 489 +2052 1856 1931 3318 228 +2053 718 2985 1181 3513 +2054 3293 413 3715 1855 +2055 2269 786 3228 1854 +2056 1835 2110 2233 879 +2057 1231 3759 591 2510 +2058 1896 1174 2737 1121 +2059 1179 3535 503 2296 +2060 3264 1862 3755 857 +2061 1108 3511 522 2744 +2062 1276 3290 512 2159 +2063 520 2406 1014 2543 +2064 3848 436 3519 1965 +2065 457 2468 889 2186 +2066 1535 2128 3044 234 +2067 1973 2770 2568 969 +2068 415 1846 701 3410 +2069 843 1594 1653 3385 +2070 1547 2471 1219 3531 +2071 1284 3847 381 2082 +2072 3395 438 3126 1955 +2073 275 1933 925 2975 +2074 1737 3253 1035 3464 +2075 2342 2081 3744 846 +2076 2802 1280 2503 3161 +2077 557 1966 3011 1423 +2078 2614 1974 2795 1012 +2079 436 3848 1573 2222 +2080 1492 932 2343 2374 +2081 1596 218 1862 3264 +2082 1609 2663 3365 508 +2083 1775 3659 2285 1346 +2084 2525 994 2845 2162 +2085 1602 3491 1211 3604 +2086 3800 3723 31 32 +2087 1942 754 3788 2179 +2088 3179 1868 3770 951 +2089 2256 846 2899 2014 +2090 420 2704 1227 3110 +2091 3017 1352 3233 2593 +2092 1345 896 2593 3233 +2093 1442 2846 2191 1009 +2094 2625 2624 2936 1076 +2095 1738 3322 3501 1857 +2096 3376 3046 1911 1203 +2097 2744 1911 3046 1751 +2098 1135 3188 584 2248 +2099 675 1854 3015 3387 +2100 729 3648 2079 1676 +2101 3574 1986 2782 338 +2102 2702 1865 3298 1050 +2103 1330 37 38 3147 +2104 1495 3628 1979 3763 +2105 1645 1969 2847 715 +2106 1340 2731 2732 1038 +2107 2158 963 377 1417 +2108 1474 2184 3239 602 +2109 1813 3617 3223 337 +2110 2001 1876 3756 822 +2111 1313 3332 1314 2555 +2112 1466 921 3399 2724 +2113 521 3369 1297 2394 +2114 1652 3552 661 2972 +2115 528 2559 1045 2507 +2116 2240 1893 3137 789 +2117 2787 507 2695 2046 +2118 2823 456 3197 1885 +2119 1356 1875 3272 642 +2120 1279 3569 564 3273 +2121 325 1655 862 1479 +2122 980 2395 479 2496 +2123 3696 3761 2436 1506 +2124 2156 903 2575 2345 +2125 1528 3637 2749 943 +2126 2566 1927 3341 929 +2127 3429 1924 3062 383 +2128 1466 704 2815 1997 +2129 595 2137 3060 1405 +2130 687 3441 2477 1967 +2131 758 1541 3137 2272 +2132 2671 1921 3099 687 +2133 1903 841 2109 3477 +2134 1382 3628 1495 3671 +2135 1513 100 101 3731 +2136 3081 586 529 740 +2137 1357 2697 1339 1909 +2138 1473 2756 44 45 +2139 844 2817 509 2011 +2140 1028 3346 1307 2474 +2141 1816 3800 32 33 +2142 468 2591 840 2218 +2143 2051 282 2164 2607 +2144 2384 1885 3708 928 +2145 1601 2280 2758 613 +2146 458 2772 3692 2079 +2147 419 3186 736 1913 +2148 492 2869 970 2044 +2149 2007 2890 3029 1342 +2150 1583 3029 2890 743 +2151 3274 2131 1647 2049 +2152 855 2867 1086 2742 +2153 3525 2138 2606 1262 +2154 244 3440 3324 1745 +2155 1905 667 3324 3440 +2156 1552 1929 3150 365 +2157 2197 2122 3530 949 +2158 2480 892 3161 2114 +2159 2480 2114 3164 891 +2160 2059 813 2300 927 +2161 3237 438 3395 1888 +2162 1988 1989 3796 625 +2163 2338 2337 2753 796 +2164 1780 732 3793 1901 +2165 3676 3714 2997 480 +2166 1431 87 88 2852 +2167 537 3088 1058 2196 +2168 1158 3191 339 2334 +2169 546 3464 1035 1898 +2170 318 2806 1177 3037 +2171 559 3336 1387 2660 +2172 2135 847 2411 3520 +2173 1176 2654 637 2587 +2174 1971 1003 3330 1928 +2175 1607 450 1928 3330 +2176 56 3 57 3509 +2177 76 3510 75 4 +2178 3117 779 3820 1908 +2179 1582 3695 741 2773 +2180 820 2146 1086 2610 +2181 2388 2108 2871 812 +2182 2242 848 3252 1914 +2183 1641 2572 3597 2136 +2184 1010 2508 1111 2803 +2185 2868 3450 2254 1061 +2186 1758 1443 3210 3733 +2187 2217 2804 2434 887 +2188 762 1943 1133 3741 +2189 1641 805 3652 2572 +2190 901 2662 484 2125 +2191 646 1295 3276 1917 +2192 490 1902 952 3352 +2193 2459 2026 2864 864 +2194 2968 1389 3381 1900 +2195 1966 1226 2648 3011 +2196 800 3715 1562 3794 +2197 1543 3812 1920 368 +2198 1419 2097 2742 410 +2199 2278 2268 2554 3533 +2200 1595 65 66 2790 +2201 3812 817 3809 1920 +2202 1386 3575 2314 1034 +2203 447 2384 928 1866 +2204 2470 238 2916 2012 +2205 1864 3246 2055 697 +2206 2537 626 3208 3005 +2207 644 3475 1457 2722 +2208 2816 497 3080 1957 +2209 2391 1903 3477 220 +2210 2770 1146 3111 2568 +2211 1537 3178 1147 3578 +2212 715 2847 1397 3675 +2213 1511 2963 296 1995 +2214 569 1426 3150 2207 +2215 3105 759 3297 2018 +2216 2064 854 3008 1087 +2217 1639 3329 80 81 +2218 736 3816 1435 2652 +2219 2262 2453 2873 988 +2220 3129 3641 1912 657 +2221 2156 783 2645 903 +2222 2612 1959 3109 594 +2223 2028 2325 3426 945 +2224 1455 2966 680 2003 +2225 826 2530 993 2630 +2226 449 2148 782 2658 +2227 989 2746 1267 3033 +2228 2982 2015 3133 735 +2229 504 2846 1442 2169 +2230 2566 441 3405 1927 +2231 3411 1440 2025 3390 +2232 1932 899 3460 2324 +2233 3725 734 2899 2301 +2234 2677 1927 3405 1000 +2235 996 2783 1039 2604 +2236 1482 2237 350 3762 +2237 661 2948 1322 2972 +2238 1916 2166 2655 343 +2239 1400 2140 2844 295 +2240 1953 2913 1435 3816 +2241 617 2144 1159 3760 +2242 2710 2005 3433 922 +2243 374 2387 1115 3499 +2244 1480 2989 450 3299 +2245 2257 2015 2982 845 +2246 2351 480 2300 813 +2247 2359 936 2554 2268 +2248 211 1462 3041 2009 +2249 3391 760 3151 3104 +2250 3668 371 2939 2063 +2251 1143 3453 456 2823 +2252 843 2354 3307 1594 +2253 2735 1935 3757 1301 +2254 2392 532 2850 2304 +2255 2654 2428 2515 637 +2256 1723 2180 2860 352 +2257 736 3186 1183 3281 +2258 2631 478 3426 2325 +2259 968 2133 204 2950 +2260 810 2665 464 2172 +2261 2036 2812 2374 931 +2262 392 3657 777 2106 +2263 1799 3157 2200 312 +2264 1648 51 52 3295 +2265 2735 1301 2036 931 +2266 1378 2213 2646 322 +2267 1778 3684 675 3387 +2268 1996 459 2735 2343 +2269 2154 1934 3648 729 +2270 1923 537 2196 3279 +2271 2601 2599 328 2600 +2272 697 2055 2915 1272 +2273 765 2209 1311 2644 +2274 2742 2097 2953 855 +2275 3061 2943 2174 354 +2276 2157 1322 2948 2874 +2277 2782 2171 2691 338 +2278 972 1966 557 3219 +2279 2275 3763 1979 924 +2280 2772 458 3465 2035 +2281 1231 2510 783 3227 +2282 1788 795 1955 3265 +2283 2066 915 3700 2487 +2284 1795 2002 3685 937 +2285 826 2630 459 2220 +2286 2579 2614 2688 1025 +2287 284 3596 1402 2518 +2288 2249 3833 2558 873 +2289 1279 3074 379 2205 +2290 1974 2614 2579 510 +2291 650 3238 950 1961 +2292 213 3211 973 2352 +2293 3126 1408 3265 1955 +2294 3142 1132 3156 1982 +2295 1032 2650 486 3077 +2296 788 1964 3392 530 +2297 673 3505 1164 3312 +2298 3564 1391 1499 589 +2299 858 2998 1221 3593 +2300 815 1688 3390 2025 +2301 387 2856 1036 2338 +2302 2886 1977 3218 971 +2303 2651 1142 3655 2056 +2304 1401 2056 3655 303 +2305 574 3021 1199 2635 +2306 929 3341 563 1952 +2307 310 3030 1398 3129 +2308 844 2917 1141 2817 +2309 3227 347 3799 2045 +2310 1846 849 2407 2800 +2311 3219 1977 3339 972 +2312 2861 2406 2604 1039 +2313 1948 318 3037 2603 +2314 3281 485 3688 1953 +2315 2872 460 2129 1020 +2316 770 3143 572 2000 +2317 1492 3098 2427 932 +2318 1993 3435 699 2436 +2319 1742 583 3040 3221 +2320 570 3139 999 2104 +2321 2125 3456 2551 1028 +2322 1909 2581 2320 875 +2323 1763 3803 2124 699 +2324 1144 3267 1077 2969 +2325 930 2792 1303 1972 +2326 1140 2964 1261 2225 +2327 1537 2020 605 3178 +2328 239 2192 1374 2908 +2329 2609 404 270 2287 +2330 1021 3059 721 2183 +2331 533 1538 3803 1763 +2332 705 1252 3626 1946 +2333 474 3312 1164 2902 +2334 1916 343 2627 2302 +2335 3281 1953 3816 736 +2336 2915 1951 3722 352 +2337 1345 1104 3722 1951 +2338 1521 1061 2254 3303 +2339 595 1405 3734 2610 +2340 905 2454 356 2700 +2341 1740 2348 3043 847 +2342 2669 1006 2328 2591 +2343 513 2964 1140 2547 +2344 1671 3238 650 2019 +2345 734 2153 1177 2806 +2346 2827 1954 3492 1184 +2347 1548 2091 893 2951 +2348 2265 2092 2952 894 +2349 1170 2983 534 2248 +2350 485 3457 1181 2985 +2351 2973 1155 3392 1964 +2352 314 3241 808 2243 +2353 1814 330 2957 2313 +2354 723 3288 333 1978 +2355 2913 1953 3688 997 +2356 853 3313 219 1976 +2357 777 2405 3749 2106 +2358 1766 523 2144 2834 +2359 3553 3225 3502 2069 +2360 2705 2069 3502 324 +2361 786 2269 2657 1271 +2362 1030 3321 1429 2987 +2363 362 1811 3769 2493 +2364 253 3687 1522 2764 +2365 2886 286 3339 1977 +2366 2612 1194 3782 1959 +2367 98 99 2083 3054 +2368 2093 753 3848 1965 +2369 2230 2462 3747 442 +2370 809 1994 3258 1268 +2371 293 2998 858 2088 +2372 1989 2537 3005 1149 +2373 1691 1716 295 3089 +2374 1475 431 3508 1963 +2375 2297 501 2308 2861 +2376 910 2666 1167 2667 +2377 2093 1965 3519 887 +2378 875 2320 505 2628 +2379 2021 2618 2944 1053 +2380 2828 228 3318 1985 +2381 3122 3778 2668 550 +2382 1039 2783 343 2655 +2383 992 2174 724 3027 +2384 1503 3141 53 54 +2385 43 44 2756 2282 +2386 1877 891 2808 2419 +2387 1090 3083 1194 2612 +2388 993 2530 966 2489 +2389 3468 1970 3781 1112 +2390 28 3644 27 2 +2391 2658 782 2738 2241 +2392 1496 78 79 3106 +2393 712 2229 2845 1485 +2394 2162 2845 2229 309 +2395 1220 2100 547 3016 +2396 1546 3495 1281 2753 +2397 1014 2700 967 2543 +2398 869 2903 3663 359 +2399 2527 2721 3127 538 +2400 2155 833 3512 3002 +2401 303 2339 1059 3255 +2402 849 3206 548 2029 +2403 1869 487 3373 2637 +2404 677 3822 1549 2730 +2405 3467 2215 3257 1089 +2406 624 1606 3627 2227 +2407 585 991 1255 493 +2408 1093 2683 953 2684 +2409 2748 1975 3737 670 +2410 1745 3324 2309 830 +2411 1902 2734 2342 952 +2412 668 2288 1227 2704 +2413 1137 2602 883 2423 +2414 1116 2988 1024 2150 +2415 1440 2123 2961 236 +2416 2478 2604 2406 520 +2417 1676 2375 3772 396 +2418 582 1458 767 1510 +2419 780 3383 1299 2761 +2420 3360 1351 3377 2135 +2421 350 3093 1025 2693 +2422 788 530 3553 2069 +2423 3068 1154 3435 1993 +2424 2573 855 2953 2204 +2425 1988 879 2233 2231 +2426 1754 3789 246 2826 +2427 1034 3797 2520 1386 +2428 1710 2292 3328 746 +2429 272 1983 3754 1288 +2430 905 2700 1014 2308 +2431 1220 3415 1019 2100 +2432 969 3235 1328 2552 +2433 1464 2279 984 3169 +2434 701 2175 3355 1629 +2435 1069 231 3385 1653 +2436 3209 1126 2898 2595 +2437 715 3675 509 1984 +2438 3242 417 2586 3610 +2439 1634 313 3770 2582 +2440 3055 813 2059 3203 +2441 216 2777 1131 3388 +2442 3454 1231 3227 2045 +2443 2978 499 3433 2005 +2444 334 2580 1350 3424 +2445 3365 2663 2361 1292 +2446 2062 2094 3620 808 +2447 3550 3474 2729 1277 +2448 68 2065 3269 67 +2449 985 2512 1132 3393 +2450 2032 2825 2736 488 +2451 2705 1055 2758 2280 +2452 1025 3093 1026 2579 +2453 1550 2596 219 3313 +2454 2556 1106 3166 2073 +2455 549 2636 1238 3207 +2456 1693 3709 210 2720 +2457 1874 2560 3072 925 +2458 1085 2850 532 2774 +2459 1124 3693 489 2259 +2460 2297 2085 3393 501 +2461 633 2757 1115 2387 +2462 3791 829 3034 2335 +2463 1303 2327 628 2891 +2464 3579 2173 3432 1107 +2465 3201 762 3432 2173 +2466 1529 3489 1103 3497 +2467 911 3045 1685 3044 +2468 432 2863 1764 3118 +2469 316 1068 1479 862 +2470 1975 2822 1286 3737 +2471 608 971 3053 1695 +2472 3129 1398 2457 3641 +2473 2325 944 2701 2631 +2474 2738 351 3116 2241 +2475 1090 2695 507 3083 +2476 2830 2002 3645 1317 +2477 1794 2033 3349 742 +2478 2830 233 3685 2002 +2479 1388 3305 1360 2039 +2480 738 2170 2956 1436 +2481 3728 1256 3272 2181 +2482 2819 2490 2673 1010 +2483 1918 42 43 3214 +2484 2670 1125 3654 2368 +2485 1032 3077 995 2304 +2486 1150 2643 1070 2978 +2487 1347 2585 694 2526 +2488 380 1390 1391 3564 +2489 2716 3283 1160 2052 +2490 1477 2089 297 3193 +2491 2410 2155 3002 525 +2492 737 3601 527 2010 +2493 2081 2342 2734 455 +2494 2374 2343 2735 931 +2495 1842 757 3615 2463 +2496 965 2341 488 2736 +2497 2925 2619 2584 1046 +2498 814 1662 3684 2188 +2499 3624 3271 2797 629 +2500 941 2430 470 2653 +2501 217 3375 1114 2730 +2502 1099 2811 1297 3369 +2503 1816 33 34 3399 +2504 857 2441 1596 3264 +2505 1919 3527 2023 1263 +2506 2065 1327 2790 3269 +2507 67 3269 2790 66 +2508 1796 365 3782 1194 +2509 266 1294 3099 2236 +2510 1797 2675 831 3380 +2511 460 2872 802 2246 +2512 449 2658 955 2809 +2513 3310 949 3530 2533 +2514 445 2923 895 2206 +2515 1454 3139 570 3585 +2516 1879 1180 433 2733 +2517 271 571 3167 2841 +2518 2042 3651 3359 1200 +2519 1750 2426 1076 2936 +2520 926 3158 1134 2597 +2521 1880 3386 2292 206 +2522 2888 3417 3392 1155 +2523 2741 1037 2693 2574 +2524 548 2974 1339 2697 +2525 3101 2376 2725 494 +2526 1170 2248 584 2881 +2527 876 698 2876 2878 +2528 437 2062 808 3327 +2529 2215 14 15 3257 +2530 2619 2925 2926 660 +2531 1878 770 3680 2022 +2532 320 2216 1090 3504 +2533 3110 1227 2057 3343 +2534 1777 2404 3034 829 +2535 763 2194 1107 3431 +2536 1162 3151 1424 3201 +2537 2450 3455 3086 469 +2538 631 1214 3368 2473 +2539 989 2403 241 2746 +2540 2377 2376 3101 871 +2541 1498 2139 709 3091 +2542 1223 3128 544 3661 +2543 3008 3005 3208 1087 +2544 3161 515 3164 2114 +2545 1235 2504 722 3031 +2546 791 2852 88 2285 +2547 2438 3096 2900 1123 +2548 35 36 2134 3296 +2549 2171 2027 3594 781 +2550 1905 3643 46 47 +2551 479 2949 1236 3416 +2552 902 3067 208 2163 +2553 3727 2105 3792 751 +2554 2455 1169 3792 2105 +2555 3799 1182 3454 2045 +2556 1873 1308 2889 3745 +2557 2809 2321 2822 449 +2558 1026 3094 590 1950 +2559 1725 2668 2485 850 +2560 424 2295 3682 1570 +2561 2880 3682 2295 638 +2562 563 2677 1158 3342 +2563 2326 837 2837 2311 +2564 1709 1008 3239 2184 +2565 3555 1560 3520 2411 +2566 2000 2546 3680 770 +2567 771 2032 488 3677 +2568 2025 2367 3670 815 +2569 610 3678 745 2030 +2570 2137 470 2430 3060 +2571 311 3775 1588 3344 +2572 1876 2801 3284 341 +2573 1146 3085 1041 3111 +2574 978 1452 3807 2034 +2575 3195 2249 2939 1178 +2576 1701 3408 2391 856 +2577 2351 813 3055 2187 +2578 1144 2969 495 2681 +2579 337 3223 803 2118 +2580 1458 582 3367 1016 +2581 982 3229 358 2273 +2582 1985 2966 908 2828 +2583 329 2848 3046 3376 +2584 941 2713 3777 1668 +2585 1452 978 2584 2619 +2586 1085 2920 1027 2768 +2587 633 3235 1711 3730 +2588 877 2293 1190 3517 +2589 1414 3136 628 2327 +2590 247 2747 1407 3529 +2591 3127 2721 2986 1040 +2592 2053 2840 2395 980 +2593 1492 2374 2812 491 +2594 1139 3001 363 2767 +2595 2768 2689 2850 1085 +2596 2584 978 3112 2178 +2597 1594 726 316 1653 +2598 1640 3070 259 3804 +2599 3006 2189 3119 1022 +2600 511 2258 823 1887 +2601 2307 968 3532 2152 +2602 2539 1149 3005 3008 +2603 2240 789 3351 423 +2604 407 2301 2899 1589 +2605 1971 372 3732 2121 +2606 2036 390 3008 854 +2607 2839 3680 2546 1349 +2608 18 19 2185 3398 +2609 1242 2965 363 3001 +2610 2812 2317 3115 491 +2611 546 3160 1092 2501 +2612 227 2778 3754 1983 +2613 542 2456 990 2759 +2614 2283 3476 386 2798 +2615 1224 2447 1380 2763 +2616 1816 1530 3723 3800 +2617 1036 2857 534 3425 +2618 1082 2889 1308 3231 +2619 2508 1010 2673 1049 +2620 3076 3636 2068 1462 +2621 2113 3394 2121 703 +2622 2438 930 3123 3306 +2623 1516 860 2778 2444 +2624 3099 2096 3441 687 +2625 2920 1085 2774 2570 +2626 3251 1451 2063 3817 +2627 1127 3363 611 2934 +2628 1685 962 3035 2245 +2629 1428 2470 943 3153 +2630 855 2573 1130 2867 +2631 326 3642 1127 2322 +2632 1998 756 3526 2605 +2633 1676 2079 3692 728 +2634 1123 2792 930 2438 +2635 2688 2574 2693 1025 +2636 1037 2715 350 2693 +2637 324 2557 1055 2705 +2638 2702 2084 3513 301 +2639 2476 40 41 3554 +2640 1534 3027 724 2259 +2641 1529 2244 665 3489 +2642 3102 599 3521 2283 +2643 2741 2615 2714 1037 +2644 1779 973 3091 2916 +2645 900 3065 364 2238 +2646 1110 1762 3566 2224 +2647 2508 1049 2711 531 +2648 2564 324 3502 2090 +2649 3789 815 3670 2261 +2650 457 2793 985 2468 +2651 750 2432 1218 2816 +2652 2491 332 2319 2946 +2653 1129 3075 2275 3056 +2654 2804 2217 3553 530 +2655 722 3171 1098 3031 +2656 1652 2213 1378 3222 +2657 3200 2928 3391 1195 +2658 619 3646 1715 3340 +2659 594 3270 1450 3202 +2660 936 2359 926 3528 +2661 2054 2797 3820 779 +2662 1052 2827 1184 3025 +2663 1315 3727 751 2368 +2664 2614 1012 3004 2688 +2665 342 3156 1132 2512 +2666 1030 2987 521 2394 +2667 1204 3084 1205 3662 +2668 248 3573 1412 2776 +2669 2308 1014 2406 2861 +2670 3094 1074 1499 590 +2671 2674 1283 3601 3479 +2672 1909 321 3243 2581 +2673 480 2997 959 2300 +2674 2536 2669 2977 1007 +2675 1639 3529 1407 3329 +2676 289 2434 1173 3360 +2677 1277 2729 575 3404 +2678 1539 2490 2819 1013 +2679 1206 316 862 861 +2680 672 1324 2200 3157 +2681 1889 3806 83 84 +2682 2276 3815 48 49 +2683 1412 3573 1648 3295 +2684 61 62 3487 2333 +2685 3542 2333 3487 1168 +2686 1040 2424 1006 3127 +2687 3652 1469 2918 2572 +2688 1971 2121 3394 1003 +2689 2658 2241 3116 955 +2690 3151 1162 3105 3104 +2691 1580 3382 3052 3371 +2692 2911 364 3065 3230 +2693 2604 2478 2825 996 +2694 1189 1843 3358 2289 +2695 3609 389 3459 2363 +2696 1605 735 3133 2350 +2697 2073 995 3077 2556 +2698 905 2308 501 3013 +2699 2169 2796 3037 1177 +2700 2603 3037 2796 1078 +2701 2965 3389 2712 974 +2702 2496 2708 2696 1088 +2703 1656 945 3426 3427 +2704 3441 2096 3720 1002 +2705 3245 1241 3480 2116 +2706 1082 2987 1429 2760 +2707 2635 3612 3500 574 +2708 886 2529 1215 2805 +2709 3706 2123 3467 1089 +2710 2900 1027 2615 2741 +2711 1748 2621 816 3771 +2712 2358 988 2762 2577 +2713 2199 2519 2521 773 +2714 1013 2819 518 3073 +2715 1010 2803 518 2819 +2716 1037 2714 1051 2715 +2717 786 1271 3241 2195 +2718 1369 3115 970 3459 +2719 1110 2224 389 3495 +2720 2798 947 3102 2283 +2721 1714 3356 1128 3673 +2722 2047 2696 2708 1005 +2723 2213 938 2743 2646 +2724 1489 584 3082 3181 +2725 885 2495 1044 2962 +2726 478 2631 2701 1214 +2727 439 3716 1411 3620 +2728 953 2264 541 3134 +2729 1313 2993 3326 2315 +2730 2900 3096 2768 1027 +2731 1431 2682 243 3412 +2732 1741 2518 1402 3825 +2733 16 2284 3257 15 +2734 2403 989 3300 2298 +2735 2428 1160 3283 2515 +2736 2765 2515 3283 888 +2737 1809 1201 2910 2940 +2738 2967 339 2940 2910 +2739 2584 2264 3215 1046 +2740 1151 3136 1414 3284 +2741 2840 885 2962 2395 +2742 942 2227 3627 1698 +2743 80 2331 3106 79 +2744 3065 900 3279 2196 +2745 1175 3138 439 2281 +2746 1211 3491 528 2507 +2747 1195 377 1196 3317 +2748 2563 986 3009 3546 +2749 52 53 3141 2347 +2750 2496 479 3416 2708 +2751 2026 2332 3072 230 +2752 3173 2785 2932 1095 +2753 2669 2536 3127 1006 +2754 3831 2414 3748 281 +2755 2426 526 2600 1076 +2756 996 2627 343 2783 +2757 3360 2135 3520 289 +2758 316 726 2877 1068 +2759 1946 3626 1035 3253 +2760 1485 2291 3268 712 +2761 326 2439 1073 3642 +2762 3542 1168 3587 2128 +2763 3315 2522 3004 1157 +2764 1699 1031 3299 2611 +2765 1362 3442 706 3018 +2766 1467 2641 3573 248 +2767 2044 970 3115 2317 +2768 3703 374 3499 2145 +2769 1283 3753 1064 3250 +2770 1153 2409 483 3437 +2771 1857 3022 3079 1252 +2772 2921 1071 2733 2151 +2773 3429 1359 3537 1096 +2774 379 3074 899 2355 +2775 207 2494 3311 1663 +2776 1312 730 3311 2494 +2777 3177 2289 3844 554 +2778 3182 3181 3082 1229 +2779 1777 829 3791 3020 +2780 1529 3497 2250 214 +2781 2101 2250 3497 1103 +2782 1305 3302 904 2896 +2783 735 2440 1590 2982 +2784 3040 1434 2670 3221 +2785 2736 1024 2988 2524 +2786 573 3447 1413 3019 +2787 3479 2502 2947 917 +2788 1184 3244 517 3025 +2789 2917 844 3166 2527 +2790 2721 2527 3166 1106 +2791 1123 3315 551 2792 +2792 1319 3038 981 3039 +2793 1320 3596 284 2634 +2794 1461 247 3529 2622 +2795 843 3385 231 2190 +2796 425 1830 3589 2381 +2797 2757 1083 2698 473 +2798 1698 3098 1492 3557 +2799 901 2492 482 2942 +2800 921 2991 1627 2992 +2801 1228 2149 1229 3082 +2802 1943 2678 3603 1133 +2803 1431 3412 1192 3120 +2804 1418 2594 836 2865 +2805 2607 2164 3686 1143 +2806 2703 2937 2643 577 +2807 2977 2372 3247 1007 +2808 680 2252 3767 1296 +2809 93 94 3767 2252 +2810 3355 2175 3674 514 +2811 2800 1118 3674 2175 +2812 203 2226 904 3302 +2813 1405 3060 965 3742 +2814 1870 800 3794 2130 +2815 784 3048 1355 2417 +2816 244 2647 1473 3409 +2817 843 3224 249 2354 +2818 2957 1042 3174 2313 +2819 1055 2557 959 2997 +2820 1768 3351 789 2500 +2821 313 1253 2350 3133 +2822 3242 1172 2901 3559 +2823 611 3571 1425 2934 +2824 2003 3746 2984 251 +2825 2926 2927 3194 660 +2826 494 2389 1281 3101 +2827 3526 756 3534 2402 +2828 1551 543 3039 3174 +2829 2591 2328 3173 840 +2830 255 3849 1342 3029 +2831 1357 2835 916 2697 +2832 513 3172 1261 2964 +2833 2202 914 3752 2373 +2834 1022 3119 496 2385 +2835 2341 965 3060 2430 +2836 2323 1117 3380 2382 +2837 1689 2382 3380 831 +2838 1279 2205 1392 3569 +2839 2304 2850 2689 1032 +2840 1182 2832 741 3695 +2841 2846 504 3582 2191 +2842 3183 1229 2149 585 +2843 237 2497 956 3190 +2844 1067 1628 3813 2344 +2845 3742 2524 2988 335 +2846 1873 3745 2154 729 +2847 873 2855 3817 2063 +2848 293 3372 1221 2998 +2849 3286 1199 3021 3481 +2850 1369 2639 491 3115 +2851 1102 3061 990 2456 +2852 2141 3071 2499 691 +2853 1432 2824 884 3256 +2854 2690 940 2820 3690 +2855 1782 3839 3765 1298 +2856 2591 468 2977 2669 +2857 1239 2810 299 2894 +2858 3307 1305 3167 3558 +2859 778 3401 463 2228 +2860 1135 2857 1036 2856 +2861 1098 3261 1235 3031 +2862 3312 474 2251 1752 +2863 1652 3222 554 3844 +2864 3522 348 3184 3581 +2865 3022 461 3712 3079 +2866 621 1791 3736 2766 +2867 3630 2766 3736 798 +2868 3270 2305 3321 1030 +2869 2132 2427 3098 280 +2870 2189 3006 3088 537 +2871 3007 1220 3088 3006 +2872 517 2615 1027 2920 +2873 373 2608 1169 3280 +2874 1063 2842 1097 2843 +2875 574 3500 1456 2904 +2876 245 3532 1372 3707 +2877 259 2805 1215 3804 +2878 1810 2161 515 3810 +2879 3496 1944 1094 2999 +2880 1827 712 3268 2401 +2881 2349 423 3351 954 +2882 2727 2191 3582 1056 +2883 433 271 3814 2733 +2884 2543 967 2745 3028 +2885 2150 3028 2745 1116 +2886 302 3842 1432 3458 +2887 606 3123 930 2433 +2888 3708 1019 3415 2481 +2889 2106 3749 2832 1430 +2890 1236 3249 1158 2334 +2891 988 2873 579 2762 +2892 1468 3828 307 2451 +2893 2011 2642 3166 844 +2894 2369 3379 2449 1004 +2895 231 426 1230 3292 +2896 2920 2570 3025 517 +2897 2774 1052 3025 2570 +2898 905 3013 1132 3142 +2899 2122 2197 3614 547 +2900 1197 3409 1473 3266 +2901 3628 1382 3421 3422 +2902 2138 3525 2216 320 +2903 526 2426 1750 748 +2904 2646 2743 3493 1193 +2905 1062 2725 1255 991 +2906 3119 2314 3575 496 +2907 614 3710 1619 3291 +2908 2522 2900 2741 2574 +2909 499 3697 2679 1343 +2910 1234 3807 661 3552 +2911 370 3403 1153 2514 +2912 2370 2412 3216 603 +2913 1822 2866 3842 302 +2914 527 3210 1443 2397 +2915 1195 3391 3104 1163 +2916 3844 2289 3358 1234 +2917 2088 3402 2994 1044 +2918 1461 2234 3518 731 +2919 2888 1155 2973 3234 +2920 1517 2398 334 3424 +2921 1172 3075 1129 2901 +2922 2711 1049 3210 2849 +2923 2565 1198 631 2473 +2924 2652 3462 2937 1326 +2925 1239 2685 852 3702 +2926 1063 2843 579 2873 +2927 3334 2421 3180 215 +2928 3831 281 3247 2372 +2929 3006 1022 3679 3007 +2930 543 2379 3729 2814 +2931 2884 2814 3729 702 +2932 2567 1447 3498 3838 +2933 2235 842 2638 3451 +2934 2338 3263 3254 387 +2935 3314 1062 3254 3263 +2936 2650 1032 2689 3506 +2937 2639 1369 2224 3566 +2938 2926 2925 2924 1047 +2939 2450 840 3173 3455 +2940 406 1479 1068 1554 +2941 801 2371 303 3255 +2942 3436 373 3280 2353 +2943 2534 2422 3705 283 +2944 1609 1217 3705 2422 +2945 1478 3050 838 2640 +2946 3621 2884 3212 1209 +2947 1718 3212 2884 702 +2948 62 63 2429 3487 +2949 1081 2260 731 3518 +2950 1732 964 3354 314 +2951 2036 1301 3362 390 +2952 2986 2556 3077 486 +2953 2117 440 3621 2523 +2954 348 1489 3181 3182 +2955 2832 3749 2405 741 +2956 2930 964 2312 3370 +2957 3310 317 3413 949 +2958 3050 1029 3237 838 +2959 3018 3224 2421 1362 +2960 2599 2601 3797 1034 +2961 2344 2932 2785 1067 +2962 2127 974 2712 3240 +2963 3521 1156 3476 2283 +2964 1446 2273 358 3498 +2965 1801 538 3127 2536 +2966 387 3254 1949 3443 +2967 3237 1029 3333 438 +2968 2522 2574 2688 3004 +2969 2018 1163 3104 3105 +2970 2556 2986 2721 1106 +2971 1670 607 3548 2418 +2972 3476 1156 2418 3548 +2973 2434 2804 3417 1173 +2974 1190 1191 695 2208 +2975 2732 2731 2461 443 +2976 3614 3718 3016 547 +2977 2286 3634 1944 1119 +2978 1109 2521 1655 325 +2979 2925 1046 3215 2924 +2980 1711 2568 3111 484 +2981 3391 2928 2842 760 +2982 3200 1097 2842 2928 +2983 3436 2353 2990 1300 +2984 624 2227 942 3717 +2985 1827 3572 2486 1185 +2986 3784 1516 3719 3147 +2987 2068 1330 3147 3719 +2988 1091 3128 1223 3482 +2989 3271 2723 3820 2797 +2990 3023 1455 2929 2912 +2991 366 2004 444 1937 +2992 2714 3244 2771 1051 +2993 278 2971 3318 1931 +2994 1998 3616 2740 1312 +2995 1444 2740 3616 252 +2996 856 2391 220 3801 +2997 796 2389 494 3314 +2998 768 3407 1325 2336 +2999 1176 2587 865 3419 +3000 2186 2324 3460 457 +3001 2476 3754 2778 860 +3002 1105 3488 2875 3691 +3003 2945 911 3587 2429 +3004 1152 2533 456 3453 +3005 1798 2497 1598 3698 +3006 1000 3191 1158 2677 +3007 1101 2976 1261 3172 +3008 1670 2418 1471 3657 +3009 3635 490 3352 2517 +3010 2829 920 3706 2284 +3011 2346 2912 2929 948 +3012 2126 2841 3167 225 +3013 1546 560 3379 2369 +3014 2938 3622 2424 1040 +3015 1283 2674 358 3753 +3016 1602 2318 528 3491 +3017 1379 3009 986 3010 +3018 2683 323 2924 3215 +3019 593 2839 1349 3633 +3020 2212 2482 3615 757 +3021 350 2715 1051 3762 +3022 647 2558 3833 1805 +3023 2711 2849 3250 1064 +3024 1619 3710 1577 2681 +3025 670 3057 1354 2748 +3026 3195 535 3833 2249 +3027 3561 1166 2751 3635 +3028 313 2257 951 3770 +3029 2205 2294 3606 1392 +3030 797 1572 3561 3434 +3031 1679 3434 3561 601 +3032 746 3328 1428 3236 +3033 3076 937 2815 3636 +3034 3673 1128 3357 2535 +3035 3096 2438 3306 349 +3036 1603 3185 3398 1385 +3037 17 18 3398 3185 +3038 884 2455 512 3290 +3039 3326 3169 406 2315 +3040 2869 2363 3459 970 +3041 1844 2634 284 3319 +3042 3430 1582 2773 3446 +3043 3404 575 3751 3003 +3044 750 3003 3751 1597 +3045 1418 246 3789 2261 +3046 575 2729 1041 3085 +3047 216 3388 1493 3448 +3048 3384 1260 3308 3623 +3049 1894 3623 3308 1016 +3050 2262 376 3353 2453 +3051 594 3202 1090 2612 +3052 1630 2905 1417 3297 +3053 3257 2284 3706 1089 +3054 3249 1236 2949 2994 +3055 2855 3466 2472 1403 +3056 1222 3243 321 2531 +3057 355 2775 1101 2887 +3058 1997 2815 937 3685 +3059 49 50 3780 2276 +3060 542 2759 1091 3097 +3061 529 1213 271 433 +3062 2686 2400 3419 865 +3063 1040 2986 486 2938 +3064 3527 394 3823 2396 +3065 3205 2477 3441 1002 +3066 1084 3350 1428 3328 +3067 1116 3406 335 2988 +3068 2759 2728 3128 1091 +3069 487 2633 1588 3163 +3070 2638 1218 2831 3451 +3071 1432 3256 1276 3458 +3072 2962 1044 2994 2949 +3073 3171 2303 3666 1098 +3074 1333 3084 1204 524 +3075 859 2582 3770 1868 +3076 2445 2446 3709 1057 +3077 2689 2768 3096 349 +3078 3472 544 3128 2728 +3079 3210 1049 2673 3733 +3080 1023 2706 1502 3835 +3081 2873 2453 3353 1063 +3082 2609 2287 571 663 +3083 1203 3087 1202 3376 +3084 1322 696 3493 2743 +3085 2375 1018 2465 3772 +3086 2143 2373 3752 566 +3087 240 2445 1057 3366 +3088 3734 335 3406 2425 +3089 3835 2413 3538 1023 +3090 2738 1092 3160 3165 +3091 1336 2755 609 3829 +3092 1320 3040 583 3449 +3093 3328 2292 3386 1084 +3094 3768 3020 3791 1363 +3095 700 3225 1515 2788 +3096 3370 2312 3712 461 +3097 1855 2781 933 3293 +3098 2398 3765 2417 334 +3099 3300 245 3802 2298 +3100 3669 1555 3619 3069 +3101 2096 209 2513 3720 +3102 646 1917 1258 2854 +3103 1382 3671 597 3539 +3104 1066 2762 579 3213 +3105 219 2596 3659 1775 +3106 2900 2522 3315 1123 +3107 3216 2412 3478 1045 +3108 525 3323 1750 2936 +3109 884 3290 1276 3256 +3110 3796 2539 3362 1532 +3111 3697 1070 3462 2679 +3112 1574 3229 810 2786 +3113 2869 871 3609 2363 +3114 1670 3657 392 3592 +3115 2551 1041 2729 3474 +3116 1424 3667 1063 3353 +3117 1372 2950 909 3658 +3118 3663 918 2567 1887 +3119 2538 2690 3690 580 +3120 1917 2381 3589 1258 +3121 1842 3108 2980 568 +3122 669 2935 3794 1562 +3123 810 3229 982 2665 +3124 2872 2357 3651 802 +3125 998 3676 480 2351 +3126 1789 1183 2656 3483 +3127 2613 867 3483 2656 +3128 258 1449 3689 2346 +3129 1101 2775 1165 2976 +3130 1849 755 3632 1188 +3131 231 1437 3658 2799 +3132 458 2452 987 3465 +3133 3587 1168 3487 2429 +3134 2107 2481 3415 336 +3135 2898 1060 3795 2595 +3136 1522 3702 852 2764 +3137 475 1656 3427 3428 +3138 1456 3368 1214 2701 +3139 1315 2368 3654 360 +3140 382 3275 907 2723 +3141 2285 3659 2596 791 +3142 648 1525 3331 3656 +3143 2876 2877 404 2878 +3144 3131 3670 2367 961 +3145 2800 2407 3588 1118 +3146 2620 294 3588 2407 +3147 361 3346 1028 2551 +3148 3008 390 3362 2539 +3149 1595 2790 1327 3629 +3150 3071 1048 3501 2499 +3151 297 3176 1216 3097 +3152 2357 3777 2713 305 +3153 2126 225 2896 3480 +3154 3578 2344 3813 1537 +3155 1985 3318 2971 946 +3156 1001 3679 1022 2385 +3157 1157 3452 551 3315 +3158 35 2724 3399 34 +3159 3250 2849 3210 527 +3160 609 3262 1278 3162 +3161 2872 1020 3777 2357 +3162 2615 517 3244 2714 +3163 3583 588 3267 1377 +3164 956 2826 1290 3190 +3165 241 623 299 2810 +3166 2046 933 3232 2787 +3167 2293 877 2859 3338 +3168 1304 3152 1031 2893 +3169 1178 3100 1208 3195 +3170 2690 2538 3661 1165 +3171 3807 3721 2948 661 +3172 1510 2576 3367 582 +3173 609 3162 1310 3829 +3174 1073 2661 553 3285 +3175 1036 3425 1161 2541 +3176 3169 3326 3819 1464 +3177 2993 683 3819 3326 +3178 2245 1023 3538 234 +3179 1247 2380 3615 2482 +3180 3601 737 2502 3479 +3181 2664 1269 2787 3232 +3182 3760 3625 3058 617 +3183 1054 1758 3683 2442 +3184 2128 3587 911 3044 +3185 2762 1066 3541 2577 +3186 1734 3588 294 2448 +3187 1629 3287 3112 345 +3188 1238 3486 1439 3207 +3189 644 2722 907 3275 +3190 999 2493 3769 1752 +3191 1834 275 2975 3699 +3192 925 1370 3699 2975 +3193 3111 1041 2551 3456 +3194 2445 864 3608 2446 +3195 2856 3187 3188 1135 +3196 1783 1275 2364 1784 +3197 1289 2467 3593 506 +3198 559 3537 1113 3336 +3199 752 1298 3765 2398 +3200 2358 2577 3541 451 +3201 1387 3336 1113 3337 +3202 1812 3485 2667 1167 +3203 1237 2545 2667 3485 +3204 2855 873 2558 3466 +3205 2424 3622 3631 340 +3206 3738 545 3402 2709 +3207 1000 2940 339 3191 +3208 3550 361 2551 3474 +3209 1285 3642 1073 3285 +3210 883 2637 3373 1565 +3211 2386 1498 3211 961 +3212 557 3218 1977 3219 +3213 3611 1136 2396 3823 +3214 2314 2598 2599 1034 +3215 605 2442 3683 1539 +3216 1273 3545 2546 2000 +3217 2301 407 2546 3545 +3218 1092 3551 764 2501 +3219 3161 2503 3810 515 +3220 1810 3810 2503 3656 +3221 2643 2937 3462 1070 +3222 367 1623 3795 3113 +3223 2047 1005 3565 2967 +3224 1534 2306 454 3289 +3225 2011 509 3470 2745 +3226 1216 3176 1147 3178 +3227 812 3731 101 2435 +3228 392 3567 1573 3592 +3229 3304 3546 3009 552 +3230 2063 1451 3665 3668 +3231 3608 210 3709 2446 +3232 1172 3168 556 3075 +3233 2712 3389 2897 514 +3234 1663 2413 3835 207 +3235 371 3668 1304 2893 +3236 871 3101 1281 3609 +3237 3621 1209 3827 2523 +3238 2117 2523 3827 913 +3239 2289 3177 3148 1189 +3240 673 3619 1555 3505 +3241 1658 3774 1187 3738 +3242 2636 549 2771 3492 +3243 3244 1184 3492 2771 +3244 2980 3108 3154 1332 +3245 1842 2463 3154 3108 +3246 2052 427 3604 2716 +3247 1235 3261 208 3067 +3248 1628 1067 3631 3132 +3249 2533 3530 3197 456 +3250 2107 928 3708 2481 +3251 544 3472 1261 2976 +3252 30 31 3723 2475 +3253 2111 462 2487 3700 +3254 1667 208 3261 2909 +3255 2054 779 3834 3090 +3256 2305 1148 3234 2973 +3257 3304 1359 2563 3546 +3258 2190 3640 2870 1282 +3259 1891 2870 3640 909 +3260 1230 300 2903 869 +3261 307 3828 1004 2449 +3262 1533 3701 433 1180 +3263 2652 308 2679 3462 +3264 399 2528 1749 3649 +3265 773 3528 926 2597 +3266 3095 3591 3294 1373 +3267 2199 773 2597 3580 +3268 1185 2486 616 3750 +3269 40 2476 3784 39 +3270 3267 1144 3471 1377 +3271 3293 2458 3845 413 +3272 1449 1598 2676 3647 +3273 467 1655 2521 2519 +3274 3234 569 3361 2888 +3275 3419 3148 3177 1176 +3276 1138 3056 2275 924 +3277 68 69 2750 3414 +3278 1128 1717 2919 3357 +3279 440 3038 1319 3621 +3280 1323 346 2157 2874 +3281 335 3734 1405 3742 +3282 1524 3468 1112 3469 +3283 1589 3744 707 3514 +3284 203 1753 3681 2623 +3285 1658 2467 384 3774 +3286 1158 3249 545 3342 +3287 1925 3580 2597 1134 +3288 1348 3430 3446 393 +3289 3454 739 3759 1231 +3290 1234 3552 1652 3844 +3291 1348 740 1557 1233 +3292 240 3366 1497 3773 +3293 2779 1175 3223 3617 +3294 2736 2524 3742 965 +3295 1111 3319 284 2906 +3296 1367 2635 1199 3543 +3297 1210 3335 617 3058 +3298 1099 3369 521 3231 +3299 2305 385 3577 3321 +3300 2760 1429 3321 3577 +3301 3826 2640 3544 555 +3302 1508 3431 1107 3432 +3303 2759 990 3472 2728 +3304 674 1789 3483 2836 +3305 1376 1633 2719 3549 +3306 3406 1116 2745 3470 +3307 471 2540 1112 3781 +3308 1998 2605 252 3616 +3309 1477 3086 1095 3503 +3310 3663 2903 300 1072 +3311 2542 1476 3522 3581 +3312 3143 1152 3453 2784 +3313 983 3355 514 2897 +3314 1167 2666 596 3599 +3315 3249 2994 3402 545 +3316 2984 3746 3418 1523 +3317 617 3335 3597 1433 +3318 2586 1243 3168 3610 +3319 2159 2160 2364 1275 +3320 944 1736 3536 2904 +3321 2535 3357 2919 310 +3322 1989 1149 2539 3796 +3323 1527 977 3842 2866 +3324 858 1658 3738 2709 +3325 2965 1242 2897 3389 +3326 2271 1096 2629 3624 +3327 522 3511 3512 1633 +3328 389 3609 1281 3495 +3329 3261 1098 3666 2909 +3330 1108 3323 525 3002 +3331 1240 2718 242 3787 +3332 2346 3689 212 2912 +3333 1500 3113 3795 1060 +3334 1271 3327 808 3241 +3335 832 2547 1140 3805 +3336 760 3667 1424 3151 +3337 1389 2968 1392 3347 +3338 3361 1173 3417 2888 +3339 241 2810 1239 3702 +3340 3525 1262 3365 3248 +3341 3845 3248 3365 1292 +3342 3453 1143 3686 2784 +3343 2793 3576 3273 1329 +3344 2804 530 3392 3417 +3345 1335 2623 3681 713 +3346 1509 3032 3449 583 +3347 3825 1402 3449 3032 +3348 856 3801 1651 2571 +3349 2360 2836 3483 867 +3350 603 3216 1338 3540 +3351 1441 725 3647 2676 +3352 1285 3363 1127 3642 +3353 663 571 271 1213 +3354 3511 1108 3002 3512 +3355 1173 3361 1351 3360 +3356 1437 3707 1372 3658 +3357 2226 1335 3130 3639 +3358 414 3036 3572 1827 +3359 2486 3572 3036 895 +3360 1637 362 2692 3783 +3361 2242 3798 3783 2692 +3362 2110 2208 695 2233 +3363 1623 632 2595 3795 +3364 3622 1512 3132 3631 +3365 323 2999 1094 3000 +3366 1778 3387 3015 1009 +3367 1345 3233 3338 1104 +3368 2293 3338 3233 1352 +3369 501 3393 1132 3013 +3370 2513 3768 2699 853 +3371 3123 1321 3506 3306 +3372 3011 2648 3732 372 +3373 438 3333 1765 3126 +3374 2874 2948 3721 1323 +3375 85 86 3120 3396 +3376 2490 357 3733 2673 +3377 1403 604 3817 2855 +3378 443 1198 2565 2732 +3379 1247 1246 3103 649 +3380 1470 2493 999 3139 +3381 1441 2151 2733 3814 +3382 22 2749 3637 21 +3383 2640 3826 3694 1478 +3384 1157 3672 1414 3452 +3385 2544 1237 3595 2960 +3386 3024 977 2960 3595 +3387 1450 3504 1090 3202 +3388 1250 3570 1567 3766 +3389 3669 3069 3481 1186 +3390 1095 2932 598 3503 +3391 1067 2785 340 3631 +3392 1707 2707 3830 224 +3393 2718 1240 3830 2707 +3394 3135 2211 1246 2212 +3395 2353 2824 562 2990 +3396 2758 1055 2997 3714 +3397 1119 1944 3496 1678 +3398 3735 615 3798 2726 +3399 2483 1011 3482 1223 +3400 1889 3396 3120 1192 +3401 1083 2649 283 3840 +3402 968 2950 1372 3532 +3403 243 2699 3768 1363 +3404 1113 3537 1359 3304 +3405 2532 3356 3824 473 +3406 2689 349 3306 3506 +3407 3640 2799 3658 909 +3408 573 3444 1367 3447 +3409 3481 3021 3536 1186 +3410 361 3605 1307 3346 +3411 1416 3494 1193 3493 +3412 2795 341 3672 1012 +3413 2919 3692 2772 1507 +3414 2421 3334 3442 1362 +3415 3826 555 3559 2901 +3416 3479 917 3838 2674 +3417 3143 2784 3686 572 +3418 1187 3490 563 3342 +3419 1094 1944 3634 476 +3420 2868 1361 3213 3450 +3421 2254 3450 3213 579 +3422 2334 3565 3416 1236 +3423 1259 3484 1540 3846 +3424 665 3049 1103 3489 +3425 1649 3836 3372 293 +3426 3735 3372 3836 1484 +3427 3604 1211 3832 2716 +3428 3283 2716 3832 888 +3429 1825 3033 3664 211 +3430 1795 3664 3033 1267 +3431 3286 3481 3069 539 +3432 431 1475 3690 2820 +3433 2814 2884 3621 1319 +3434 760 2842 1063 3667 +3435 886 2813 1395 2529 +3436 575 3085 1146 3751 +3437 822 3756 2795 1974 +3438 1342 3849 2871 2108 +3439 779 3117 1556 3834 +3440 1051 2771 549 3762 +3441 1243 2981 597 3671 +3442 2123 3706 920 2961 +3443 1392 2968 564 3569 +3444 1700 3711 1430 2832 +3445 2904 3536 3021 574 +3446 1091 3482 297 3097 +3447 2856 387 3443 3187 +3448 3188 3187 3443 1228 +3449 3086 3455 3173 1095 +3450 2927 1323 3721 3194 +3451 3759 3423 3421 591 +3452 615 1637 3783 3798 +3453 937 3076 3664 1795 +3454 630 3251 1419 3841 +3455 1300 2990 1167 3599 +3456 3338 2859 3722 1104 +3457 1382 3420 591 3421 +3458 358 3229 1574 3753 +3459 3696 1257 2941 3761 +3460 286 3560 3561 1572 +3461 1631 1166 3561 3560 +3462 3423 1233 3422 3421 +3463 1252 3079 1035 3626 +3464 1277 3404 1263 3320 +3465 654 3170 3550 1579 +3466 3550 3170 3605 361 +3467 1307 3605 3170 1578 +3468 3095 259 3070 3591 +3469 1320 3449 1402 3596 +3470 1165 3661 544 2976 +3471 527 3601 1283 3250 +3472 3004 1012 3672 1157 +3473 509 3675 1397 3470 +3474 205 3739 1249 2979 +3475 1285 3285 1284 3363 +3476 1265 3574 1469 3652 +3477 2569 328 2599 2598 +3478 2402 1337 3773 3526 +3479 2605 3526 3773 1497 +3480 1911 2907 3760 1159 +3481 2275 3075 556 3763 +3482 499 2978 1070 3697 +3483 2043 3442 3334 3204 +3484 471 3781 1060 2898 +3485 1310 3653 1309 3829 +3486 3273 3576 3460 1279 +3487 398 3524 1126 3209 +3488 3614 1334 3230 3718 +3489 1513 2871 3849 255 +3490 1508 3741 1133 2959 +3491 3808 3220 3665 630 +3492 3668 3665 3220 1304 +3493 2757 473 3824 1115 +3494 556 3764 1495 3763 +3495 3694 3826 2901 1129 +3496 1506 697 1257 3696 +3497 1393 3713 620 3618 +3498 1462 211 3664 3076 +3499 3230 1058 3016 3718 +3500 1129 3056 432 3694 +3501 955 3116 1415 2661 +3502 3242 3610 3168 1172 +3503 3242 3559 3653 1310 +3504 305 3598 1338 3359 +3505 388 2102 290 493 +3506 444 1879 3260 536 +3507 2635 1367 3444 3612 +3508 2299 1309 3653 3544 +3509 348 3182 1229 3183 +3510 1293 3064 1240 3787 +3511 1066 3340 1715 3541 +3512 231 3292 3802 1437 +3513 1798 3739 205 3124 +3514 977 3024 1432 3842 +3515 443 2230 1937 1938 +3516 592 3531 1219 3364 +3517 2738 3165 3846 351 +3518 3070 1225 3294 3591 +3519 1019 3708 1885 3197 +3520 94 95 3418 3767 +3521 535 3195 1208 3743 +3522 655 3309 1540 3758 +3523 521 2987 1082 3231 +3524 1451 3251 630 3665 +3525 3807 1452 3194 3721 +3526 1381 3420 1382 3539 +3527 2136 3597 3335 1210 +3528 46 3643 1197 3266 +3529 2573 3090 3834 1130 +3530 565 3347 1392 3606 +3531 2708 3416 3565 1005 +3532 1495 3764 1243 3671 +3533 556 3168 1243 3764 +3534 1347 3436 1300 3599 +3535 3211 213 3131 961 +3536 341 3284 1414 3672 +3537 526 861 2601 2600 +3538 1122 1121 2737 202 +3539 2793 457 3460 3576 +3540 1605 3535 1179 3516 +3541 1393 3618 1260 3384 +3542 1474 602 3785 1514 +3543 2336 1325 3785 602 +3544 432 3056 1138 2863 +3545 2719 588 3583 3549 +3546 3260 1879 2733 1071 +3547 1801 3247 281 3748 +3548 3160 1259 3846 3165 +3549 1115 3824 3356 1714 +3550 1245 1244 400 3103 +3551 3081 939 3581 3184 +3552 3549 3583 3625 1376 +3553 1427 3713 1393 3607 +3554 1383 3540 1338 3598 +3555 545 3738 1187 3342 +3556 1047 1542 2927 2926 +3557 2726 1221 3372 3735 +3558 3198 536 3260 3199 +3559 1309 3282 1336 3829 +3560 3058 3625 3583 1377 +3561 3559 555 3544 3653 +3562 3663 1887 823 359 +3563 1790 3463 798 3736 +3564 3746 1296 3767 3418 +3565 1425 3571 1331 3678 +3566 1026 3093 1074 3094 +3567 1425 3678 610 3818 +3568 1208 3100 1491 3439 +3569 535 3743 1567 3570 +3570 3175 1671 3703 3728 +3571 3193 297 3482 1011 +3572 3423 3759 739 1232 +3573 1732 3704 3740 612 +3574 2145 1256 3728 3703 +3575 2243 1411 3740 3704 +3576 1411 3716 1422 3740 +3577 283 3705 1681 3840 +3578 245 3707 1437 3802 +3579 377 2018 3297 1417 +3580 1343 3585 570 3843 +3581 621 1980 344 2263 +3582 1979 3628 3422 288 +3583 1464 3819 1425 3818 +3584 2414 3831 3808 1558 +3585 3220 3808 3831 1371 +3586 3426 1174 3428 3427 +3587 1938 202 2737 631 +3588 1245 1784 2364 1244 +3589 2519 2520 3797 467 +3590 3307 3558 2287 270 +3591 2876 698 3691 2875 +3592 3167 571 2287 3558 +3593 3184 1270 586 3081 +3594 2894 299 3198 3199 +3595 348 3183 1270 3184 +3596 536 1122 202 444 +3597 1937 444 202 1938 +3598 3084 1333 279 1205 +3599 2340 1205 279 2380 +3600 590 298 869 359 +3601 869 298 1079 567 +3602 1391 298 590 1499 +3603 3103 400 300 649 +3604 1230 426 649 300 +3605 3198 622 1196 306 +3606 2877 2876 1538 315 +3607 1653 316 1206 1069 +3608 1204 3662 526 329 +3609 526 748 2848 329 +3610 395 567 344 623 +3611 1079 767 344 567 +3612 623 344 1980 622 +3613 2263 344 767 766 +3614 963 346 1542 2931 +3615 963 2158 2157 346 +3616 1315 360 1448 1248 +3617 2004 366 2049 1647 +3618 1380 366 1937 2589 +3619 2018 377 1195 1163 +3620 2102 388 2232 403 +3621 3081 393 1720 939 +3622 2390 403 695 1191 +3623 2233 695 403 2232 +3624 2609 403 2390 876 +3625 270 404 2877 726 +3626 2878 404 2609 876 +3627 1554 684 2315 406 +3628 3169 984 1479 406 +3629 3803 1538 2876 422 +3630 1247 649 426 1207 +3631 466 434 906 1138 +3632 1408 906 434 3265 +3633 3274 1646 434 2131 +3634 1533 1647 2131 434 +3635 1937 2230 442 2589 +3636 1938 631 1198 443 +3637 1879 444 2004 1180 +3638 3317 453 1521 3303 +3639 3317 1196 1626 453 +3640 3663 1072 1448 465 +3641 740 529 466 1557 +3642 433 3701 466 529 +3643 3797 2601 861 467 +3644 1094 476 1121 477 +3645 1121 476 1120 1896 +3646 3634 2286 1120 476 +3647 306 963 2931 477 +3648 2737 478 1214 631 +3649 388 493 1255 976 +3650 1333 524 1332 3154 +3651 3662 1206 861 526 +3652 2626 533 1910 806 +3653 315 1538 533 2626 +3654 1145 565 3606 1100 +3655 1079 1390 565 1145 +3656 1079 1145 566 767 +3657 3752 1510 767 566 +3658 1145 1100 2143 566 +3659 3183 585 586 1270 +3660 3564 589 3776 1439 +3661 359 823 1950 590 +3662 1302 1791 621 2263 +3663 1980 1626 1196 622 +3664 388 626 880 2232 +3665 1989 880 626 2537 +3666 388 976 3208 626 +3667 2626 806 3332 684 +3668 2315 684 3332 1313 +3669 3691 698 896 1345 +3670 3046 2848 748 1751 +3671 1314 3332 806 1930 +3672 2293 1352 1191 1190 +3673 698 876 1353 896 +3674 3017 1353 876 2390 +3675 3017 2593 896 1353 +3676 325 936 3528 1109 +3677 325 3533 2554 936 +3678 3581 939 1720 2542 +3679 2376 975 1255 2725 +3680 975 2617 976 1255 +3681 2617 2182 3208 976 +3682 1458 1016 3308 1366 +3683 1448 1072 1244 1248 +3684 475 3428 1174 1896 +3685 3517 1190 2208 1611 +3686 1624 1625 1204 1202 +3687 1069 1206 3662 1207 +3688 1205 2340 1207 3662 +3689 1348 1233 3423 1232 +3690 3103 1246 2211 1245 +3691 1783 1784 1245 1274 +3692 1207 2340 2380 1247 +3693 3547 1315 1248 2160 +3694 1416 2158 1417 2905 +3695 465 2995 1446 2255 +3696 3630 1520 1626 2766 +3697 434 1646 1788 3265 +3698 1553 104 1 9 +2 13 3 20 +3699 1 9 105 5 +3700 9 10 106 105 +3701 10 11 107 106 +3702 11 12 108 107 +3703 12 13 109 108 +3704 13 14 110 109 +3705 14 15 111 110 +3706 15 16 112 111 +3707 16 17 113 112 +3708 17 18 114 113 +3709 18 19 115 114 +3710 19 20 116 115 +3711 20 21 117 116 +3712 21 22 118 117 +3713 22 23 119 118 +3714 23 24 120 119 +3715 24 25 121 120 +3716 25 26 122 121 +3717 26 27 123 122 +3718 27 2 6 123 +2 17 3 30 +3719 2 28 124 6 +3720 28 29 125 124 +3721 29 30 126 125 +3722 30 31 127 126 +3723 31 32 128 127 +3724 32 33 129 128 +3725 33 34 130 129 +3726 34 35 131 130 +3727 35 36 132 131 +3728 36 37 133 132 +3729 37 38 134 133 +3730 38 39 135 134 +3731 39 40 136 135 +3732 40 41 137 136 +3733 41 42 138 137 +3734 42 43 139 138 +3735 43 44 140 139 +3736 44 45 141 140 +3737 45 46 142 141 +3738 46 47 143 142 +3739 47 48 144 143 +3740 48 49 145 144 +3741 49 50 146 145 +3742 50 51 147 146 +3743 51 52 148 147 +3744 52 53 149 148 +3745 53 54 150 149 +3746 54 55 151 150 +3747 55 56 152 151 +3748 56 3 7 152 +2 21 3 20 +3749 3 57 153 7 +3750 57 58 154 153 +3751 58 59 155 154 +3752 59 60 156 155 +3753 60 61 157 156 +3754 61 62 158 157 +3755 62 63 159 158 +3756 63 64 160 159 +3757 64 65 161 160 +3758 65 66 162 161 +3759 66 67 163 162 +3760 67 68 164 163 +3761 68 69 165 164 +3762 69 70 166 165 +3763 70 71 167 166 +3764 71 72 168 167 +3765 72 73 169 168 +3766 73 74 170 169 +3767 74 75 171 170 +3768 75 4 8 171 +2 25 3 30 +3769 4 76 172 8 +3770 76 77 173 172 +3771 77 78 174 173 +3772 78 79 175 174 +3773 79 80 176 175 +3774 80 81 177 176 +3775 81 82 178 177 +3776 82 83 179 178 +3777 83 84 180 179 +3778 84 85 181 180 +3779 85 86 182 181 +3780 86 87 183 182 +3781 87 88 184 183 +3782 88 89 185 184 +3783 89 90 186 185 +3784 90 91 187 186 +3785 91 92 188 187 +3786 92 93 189 188 +3787 93 94 190 189 +3788 94 95 191 190 +3789 95 96 192 191 +3790 96 97 193 192 +3791 97 98 194 193 +3792 98 99 195 194 +3793 99 100 196 195 +3794 100 101 197 196 +3795 101 102 198 197 +3796 102 103 199 198 +3797 103 104 200 199 +3798 104 1 5 200 +2 26 3 3698 +3799 5527 4801 6792 4419 +3800 6077 3971 6534 4809 +3801 4563 5851 4095 5121 +3802 4066 6891 4959 6811 +3803 4112 5449 4708 5877 +3804 4302 5175 4151 5176 +3805 6717 4425 5686 4803 +3806 5265 4060 5858 5748 +3807 4012 5355 4799 6416 +3808 5043 7093 4222 7027 +3809 4077 5526 6544 4940 +3810 4435 5270 4965 6877 +3811 4284 5257 4369 5322 +3812 5251 7253 4076 6608 +3813 5137 172 173 6086 +3814 6838 5852 3881 5570 +3815 4218 6883 4797 5075 +3816 6042 5178 3863 6770 +3817 4253 6602 5746 5068 +3818 4727 5449 4112 6065 +3819 4421 5370 3923 5145 +3820 4147 5087 4491 5884 +3821 6652 5568 4912 7053 +3822 4356 5049 5353 7163 +3823 7266 5462 4290 6428 +3824 5136 6109 151 152 +3825 4923 4894 5398 5915 +3826 6118 108 109 5215 +3827 4955 3910 5070 5402 +3828 3905 5758 4490 5179 +3829 4675 5599 4159 6228 +3830 7093 5043 7122 7261 +3831 6214 6122 7122 5043 +3832 4123 4947 4401 5900 +3833 6287 4491 6297 4875 +3834 7127 6061 5500 4024 +3835 4077 4940 4531 6281 +3836 4253 5052 5853 6602 +3837 6372 6920 5013 4031 +3838 4011 5286 4414 5460 +3839 4413 5498 4786 6048 +3840 5476 4834 5878 4361 +3841 4379 5539 3872 5116 +3842 6696 4230 5672 5271 +3843 6452 5213 5546 4167 +3844 5119 4497 5891 6341 +3845 5033 4687 5043 7027 +3846 5299 5009 6954 4040 +3847 5926 5288 177 178 +3848 4989 4687 5033 6974 +3849 4471 5907 4160 5650 +3850 3864 5523 4574 5582 +3851 4861 4267 4988 6623 +3852 4990 7435 5306 4290 +3853 5458 4382 5684 4850 +3854 6949 5474 4473 5801 +3855 5327 4149 6359 4999 +3856 4241 7013 4956 5227 +3857 4020 5348 4827 6588 +3858 4195 5547 4484 5489 +3859 6972 4757 6393 5400 +3860 5310 6888 4657 6388 +3861 5369 6054 4426 6191 +3862 5523 4931 6519 3918 +3863 5291 5292 5220 4308 +3864 5445 4156 6436 4918 +3865 3850 5508 6838 5979 +3866 4065 5194 6404 5571 +3867 4153 5818 4826 5802 +3868 5168 5766 5255 4273 +3869 5070 3910 5502 5625 +3870 6503 4907 6313 3940 +3871 120 5210 5501 119 +3872 3875 5692 6853 5482 +3873 5757 6037 5511 3867 +3874 6375 7447 5891 4155 +3875 4349 5477 4606 5739 +3876 5162 3904 6645 5732 +3877 5431 5588 4433 7488 +3878 5463 4929 6451 3979 +3879 6198 5262 167 168 +3880 4985 6931 4017 5569 +3881 4372 5627 4594 5305 +3882 6343 5143 5761 4165 +3883 5287 5042 7033 4101 +3884 5213 7023 4373 5546 +3885 4268 7256 5042 5287 +3886 5610 4900 5622 4299 +3887 4763 5316 4326 6379 +3888 4002 5180 4615 6179 +3889 6503 3940 6457 4936 +3890 5109 4583 6227 5530 +3891 5285 198 199 6532 +3892 5421 4939 6475 3895 +3893 5380 4873 6502 4051 +3894 5445 4918 6313 4292 +3895 6133 4483 5481 4978 +3896 4484 5381 4261 5489 +3897 5919 4269 7112 5439 +3898 4363 5331 6539 5656 +3899 4702 5867 4489 6099 +3900 5098 7296 4374 5609 +3901 5177 4592 6119 5661 +3902 5272 4016 6974 5033 +3903 4233 5138 4596 6530 +3904 5922 5208 6314 4631 +3905 5706 4876 5937 6763 +3906 7469 6372 4556 5557 +3907 6541 6612 4647 5507 +3908 5000 7010 4218 5856 +3909 5125 6191 4426 6014 +3910 6456 4551 6443 4942 +3911 6414 5480 4286 6164 +3912 3888 6334 4888 6543 +3913 6756 5036 6986 3950 +3914 7385 5440 4951 5439 +3915 5556 4070 6590 4906 +3916 4479 5958 3872 5093 +3917 4057 5636 6708 5368 +3918 5000 5856 4418 7026 +3919 4281 5358 6858 6244 +3920 5720 4715 6862 5010 +3921 5068 6900 7466 4253 +3922 5115 5646 6640 4570 +3923 4742 6333 4149 5327 +3924 4646 6154 4033 5687 +3925 4946 5787 3969 7153 +3926 4391 5393 4079 5443 +3927 5327 4999 6229 4768 +3928 4933 6934 4202 6418 +3929 4380 5639 3896 5110 +3930 5972 6383 5551 4434 +3931 6603 4300 5332 6789 +3932 4379 5116 3897 5630 +3933 5012 5396 7061 3892 +3934 4004 6080 6069 5343 +3935 4523 5448 3961 5611 +3936 5098 5609 3861 7338 +3937 5402 3852 6531 4955 +3938 5577 4099 6638 4973 +3939 5719 4392 6628 4898 +3940 5610 4147 5884 4900 +3941 6392 4587 6621 4971 +3942 6440 4152 5999 4902 +3943 4572 5266 6774 6019 +3944 6229 5004 5935 4768 +3945 189 5425 6470 188 +3946 4244 6259 4735 5868 +3947 5434 6265 186 187 +3948 6059 4724 5572 6928 +3949 4189 6579 7019 5014 +3950 7143 4410 5843 5457 +3951 4435 5844 7003 5270 +3952 5370 3866 5741 5914 +3953 7480 6021 6661 5020 +3954 5563 4320 5687 4938 +3955 4866 5258 4157 7439 +3956 6524 7137 4071 6525 +3957 5085 5345 5541 4387 +3958 4302 5176 6515 5471 +3959 5997 4079 5393 6603 +3960 3951 5432 4923 5471 +3961 6303 4203 6871 5027 +3962 5033 7027 4222 6668 +3963 6758 5954 6919 4243 +3964 5266 3970 5558 4988 +3965 6713 5509 7479 4889 +3966 4602 6783 4915 5641 +3967 5937 4317 5464 6011 +3968 5171 7336 4916 6395 +3969 4800 5659 4176 6046 +3970 5831 6266 6026 4141 +3971 4915 6783 4190 5896 +3972 5723 4990 6675 4288 +3973 6456 4942 7436 3891 +3974 6036 4023 5668 4977 +3975 5437 5295 6571 4444 +3976 4189 4965 5270 6579 +3977 4989 6974 4016 5657 +3978 4068 5562 6352 5055 +3979 4195 5489 4908 6809 +3980 5649 4221 6321 4922 +3981 4921 6509 4499 5556 +3982 5175 4302 6177 5333 +3983 4662 5724 4254 5188 +3984 6829 4492 5839 4931 +3985 4407 5287 5494 7110 +3986 7172 7211 5357 4301 +3987 4058 5091 4658 6664 +3988 5069 5466 4077 6281 +3989 5459 4019 6163 4944 +3990 5139 4527 5759 5484 +3991 5519 4940 6544 4449 +3992 6839 4939 3917 6570 +3993 6869 4207 6801 4953 +3994 4727 6445 4276 5449 +3995 7124 3943 6269 5106 +3996 5204 6937 4813 7154 +3997 4121 5510 4564 5715 +3998 4395 5825 7032 5359 +3999 5531 5022 5782 4366 +4000 5262 5486 166 167 +4001 3875 5482 4519 5616 +4002 6058 6308 5411 4132 +4003 4284 5468 6347 5330 +4004 4527 5139 7251 5260 +4005 5424 4995 6265 3927 +4006 5131 7425 4238 5886 +4007 6163 4289 6925 4944 +4008 5407 4277 6046 5092 +4009 6778 4306 5923 5005 +4010 5112 4303 5217 7460 +4011 4742 6648 3972 6332 +4012 4521 5735 4396 5544 +4013 6462 5253 6296 3893 +4014 5590 5035 6169 4423 +4015 6232 5408 5124 4359 +4016 6713 3925 5508 5509 +4017 5332 4300 5351 6632 +4018 6935 4188 6293 4960 +4019 6314 5208 5617 4113 +4020 5406 5309 5550 4307 +4021 4068 5488 6262 6305 +4022 4995 185 186 6265 +4023 5441 5163 7434 3981 +4024 4393 5744 4475 5869 +4025 4374 5775 7129 4890 +4026 4628 6235 4066 5423 +4027 4281 5272 5033 6668 +4028 5466 5069 5518 4294 +4029 5118 7223 3987 6340 +4030 5035 5590 4145 7224 +4031 5108 6951 4954 3898 +4032 4430 5273 4172 5415 +4033 4366 5392 3870 5531 +4034 5032 7247 3954 6362 +4035 5376 4050 5469 5212 +4036 6001 5023 6243 3862 +4037 5210 3911 6802 5501 +4038 4313 5055 5776 6889 +4039 5152 150 151 6109 +4040 5145 6086 173 174 +4041 5321 5220 5469 4050 +4042 5201 4014 5445 4292 +4043 5273 4430 7243 5274 +4044 5499 5003 6027 4404 +4045 6706 3976 6027 5003 +4046 5968 4974 7056 4456 +4047 5146 7015 4706 6798 +4048 5150 4278 6446 5703 +4049 3878 5814 6645 5232 +4050 6058 5153 7366 4591 +4051 6531 4355 6500 4955 +4052 5518 5069 6282 4136 +4053 7122 5105 7149 7261 +4054 5114 5832 4370 7217 +4055 4827 5348 4249 6749 +4056 6595 4967 7349 4564 +4057 4887 6285 4483 6133 +4058 6671 5014 7019 4110 +4059 4115 7350 5182 4083 +4060 5858 4060 6908 4960 +4061 4295 6503 4936 5810 +4062 4133 6311 7379 5360 +4063 4542 5916 3922 5314 +4064 3850 5585 4488 5508 +4065 5717 4353 5783 4979 +4066 4294 5143 6606 5467 +4067 6869 5020 6661 4207 +4068 5656 4991 5757 3867 +4069 4017 5948 4487 5192 +4070 5647 4961 6143 3856 +4071 4896 6131 5861 4895 +4072 4979 5783 132 133 +4073 6638 4365 5849 4973 +4074 107 5324 6700 106 +4075 5576 6326 4212 6990 +4076 5260 5857 5759 4527 +4077 5764 4429 6479 4966 +4078 5313 6607 5351 4300 +4079 4540 5526 4077 6129 +4080 4434 5551 4139 5335 +4081 6113 4058 6877 4965 +4082 5532 4970 6772 4255 +4083 5553 5072 5620 4321 +4084 5714 4314 5893 4976 +4085 5521 4993 5967 4338 +4086 5632 3921 5392 5236 +4087 3924 5483 4519 5482 +4088 5688 4615 6771 5037 +4089 5867 4702 6593 5017 +4090 6554 5279 5843 4410 +4091 4875 6582 4146 6287 +4092 4459 5821 4969 6283 +4093 4277 5407 4703 6540 +4094 6359 4571 7073 4999 +4095 5562 4385 6301 4975 +4096 4773 6555 3933 6167 +4097 6668 5062 6866 4281 +4098 4483 5603 3991 5481 +4099 5849 4365 5850 5017 +4100 4200 7101 5063 5976 +4101 5168 4273 7366 5174 +4102 6429 4290 5306 5371 +4103 5668 4299 6201 4977 +4104 5669 5186 7462 4046 +4105 5720 5010 6517 4227 +4106 6272 4984 5875 3852 +4107 5558 4524 6482 5006 +4108 6959 6182 4801 5527 +4109 3986 5451 6675 5462 +4110 5195 6402 5986 4209 +4111 4810 6607 3956 6098 +4112 5578 5201 6715 4398 +4113 5256 4249 5348 6260 +4114 4670 5832 3966 5671 +4115 4751 6722 4167 5546 +4116 6096 5698 4015 5029 +4117 3903 5034 4358 5788 +4118 6014 5120 7170 4248 +4119 6703 5814 4547 5727 +4120 6165 4986 6241 4488 +4121 5220 5321 5902 4308 +4122 5720 4227 7249 5076 +4123 4561 5499 4067 5796 +4124 5206 4573 5628 3937 +4125 3881 5885 6748 5570 +4126 4900 6480 3968 5622 +4127 5842 4027 5453 5264 +4128 5736 4201 6658 5028 +4129 5923 5028 6659 4073 +4130 4132 5411 4759 6438 +4131 4703 6091 4254 5669 +4132 4124 6697 4433 5588 +4133 7294 5284 5764 4966 +4134 6328 3957 5564 5103 +4135 6096 4443 6923 5698 +4136 4341 5194 4065 5516 +4137 4254 5724 4865 6827 +4138 6763 5024 7427 5180 +4139 7406 4210 7428 5181 +4140 5499 4561 6397 5003 +4141 4935 4517 5902 5321 +4142 5179 5465 6641 3905 +4143 4287 5944 4635 5548 +4144 6056 4498 5678 6269 +4145 5768 3888 6543 6848 +4146 4837 6343 4165 6251 +4147 4539 5951 4420 5778 +4148 4025 5592 5073 7002 +4149 5282 5025 6556 4171 +4150 4803 5412 4348 7084 +4151 4861 6855 4064 6049 +4152 4196 5749 4668 5771 +4153 6100 5167 5485 4289 +4154 5136 6793 5314 3922 +4155 5137 3923 5315 6794 +4156 4260 7012 4933 5731 +4157 5184 4325 5197 7470 +4158 5185 3914 5198 7471 +4159 6965 4334 5442 5241 +4160 3934 6072 4532 5214 +4161 4364 5207 7490 5294 +4162 4323 6309 5036 6756 +4163 6329 4508 6234 4996 +4164 4307 5292 4054 5406 +4165 4378 5325 4045 5522 +4166 3914 6601 5741 5198 +4167 5353 4998 6195 4056 +4168 4927 6911 5194 4341 +4169 4303 5228 6696 4791 +4170 4002 5533 6992 5706 +4171 5826 5429 5550 5309 +4172 5135 5639 4763 7024 +4173 3898 4954 6956 6003 +4174 6697 4769 5935 5004 +4175 4710 5170 5169 5435 +4176 6243 5023 5841 4485 +4177 6801 4207 5725 5129 +4178 5850 4117 5867 5017 +4179 4528 5299 4040 5484 +4180 4381 5212 5469 7442 +4181 5575 4189 5790 5050 +4182 5424 3927 5580 5130 +4183 4332 6583 5074 7468 +4184 5956 5045 6427 3876 +4185 4274 7428 5009 5299 +4186 4057 5048 4357 6994 +4187 6309 5013 6278 4208 +4188 5625 3868 6808 5070 +4189 3905 6410 4948 5758 +4190 5292 4307 5469 5220 +4191 4617 5648 4366 5782 +4192 6395 3890 7351 5171 +4193 155 5314 6793 154 +4194 169 170 6794 5315 +4195 6001 3916 6557 5023 +4196 6600 3913 7470 5197 +4197 5071 7133 4261 7389 +4198 6388 5016 7192 4018 +4199 7133 5071 7407 5189 +4200 4565 5607 6371 5106 +4201 7078 4032 6212 5008 +4202 5163 5441 5442 4334 +4203 5705 5050 5790 4340 +4204 5244 6594 160 161 +4205 4843 6732 4156 5445 +4206 5490 4401 6047 5166 +4207 7189 5455 6019 4252 +4208 6671 4697 6720 5014 +4209 4095 5707 6199 5121 +4210 5087 7381 6297 4491 +4211 3879 5420 6719 5289 +4212 5450 6566 6176 4187 +4213 6295 4842 7143 5457 +4214 6100 4289 7086 5117 +4215 6438 5117 7086 4132 +4216 5137 6086 5145 3923 +4217 4313 6889 6361 5383 +4218 3970 5266 4572 6180 +4219 5484 4040 5605 5139 +4220 4873 6571 4443 6096 +4221 5544 6174 5811 4521 +4222 5318 4360 5367 4342 +4223 6120 5196 7424 3960 +4224 5174 4297 5690 5168 +4225 5136 3922 5152 6109 +4226 5981 4512 6115 5019 +4227 5227 5112 5640 4241 +4228 5354 7049 4018 7192 +4229 5022 6943 3853 5782 +4230 7122 6122 7017 5105 +4231 7197 5263 4035 7125 +4232 7251 5139 5605 4330 +4233 4748 5522 4045 6460 +4234 5470 6068 6457 3940 +4235 5149 5619 7117 4236 +4236 6572 5341 5423 4265 +4237 5736 5028 5923 4306 +4238 6707 5026 7120 3936 +4239 6041 6791 5631 4181 +4240 5456 5241 5571 4335 +4241 4899 5548 4032 6711 +4242 4868 6663 4131 6123 +4243 4450 6904 4708 5859 +4244 4473 5474 3860 5658 +4245 6011 4070 6134 5024 +4246 5647 5151 7183 4405 +4247 4304 6418 5064 6958 +4248 7490 5207 7457 4279 +4249 4381 7309 5535 5212 +4250 5112 5227 6819 4303 +4251 5099 6919 4679 6043 +4252 6121 3953 5853 5052 +4253 5833 5123 6965 4047 +4254 3994 5492 4350 5278 +4255 6567 5082 7246 6221 +4256 5376 5212 5535 4368 +4257 5131 7411 4198 6856 +4258 4260 5731 4980 7220 +4259 4670 5671 7329 6488 +4260 5510 6140 6595 4564 +4261 4935 5321 4050 7386 +4262 5821 4113 6841 5083 +4263 4358 5661 6565 6740 +4264 7143 5065 6554 4410 +4265 5394 5044 6462 3893 +4266 5963 6768 5838 4682 +4267 4901 4354 5387 5506 +4268 4816 6639 4211 5461 +4269 5871 5222 7216 4328 +4270 5138 3997 7171 5416 +4271 6692 6789 4035 5263 +4272 5162 5732 195 196 +4273 4392 5719 3878 5232 +4274 5605 4040 6954 5037 +4275 4914 4151 5175 6005 +4276 6362 4590 6302 5032 +4277 6159 5030 6294 4432 +4278 6958 4000 7495 5189 +4279 5541 5345 5871 4328 +4280 3869 7126 5758 4948 +4281 5530 4314 5714 5109 +4282 5091 4058 6113 5710 +4283 7375 7485 5298 4337 +4284 152 7158 6793 5136 +4285 172 5137 6794 7159 +4286 6178 5044 6369 3859 +4287 5394 4479 6369 5044 +4288 4372 5305 4124 5588 +4289 5864 3909 6090 5215 +4290 6118 5215 6090 4506 +4291 5589 4351 7378 3976 +4292 4151 6609 4626 5176 +4293 4658 5840 6376 5427 +4294 4200 5976 4952 6441 +4295 4824 6428 4607 6787 +4296 4294 5467 4541 5466 +4297 6884 4618 6217 5360 +4298 5980 176 6978 5056 +4299 4186 5572 4682 5838 +4300 5781 5255 5766 4562 +4301 4621 6582 4875 5615 +4302 6762 5149 5657 4016 +4303 5142 7037 4780 5630 +4304 4439 5521 4338 5520 +4305 4939 5421 5768 3917 +4306 4020 6542 4680 5348 +4307 5575 5050 3952 6020 +4308 6057 4608 6213 5384 +4309 4730 5812 3857 5909 +4310 5053 4474 6290 5419 +4311 3858 5745 6748 4943 +4312 5996 5061 6944 148 +4313 6139 5188 7332 4006 +4314 6074 5046 6496 4469 +4315 5443 4398 6715 5682 +4316 4902 6950 4559 6440 +4317 5812 5132 6443 4551 +4318 4406 6804 6784 5861 +4319 6997 3941 7088 5140 +4320 7033 7272 5543 4101 +4321 5776 5055 6352 4226 +4322 5442 4065 5571 5241 +4323 6092 6489 5702 4111 +4324 6958 5064 6765 4000 +4325 5316 6558 7315 4326 +4326 7378 6028 6027 3976 +4327 5392 4366 5648 5236 +4328 5640 4376 7424 5196 +4329 6700 4315 6532 5202 +4330 6373 131 6945 5115 +4331 5059 6128 5055 4313 +4332 5808 4161 7196 5809 +4333 5980 5056 6396 4421 +4334 5979 6838 5570 6320 +4335 4927 4341 5233 5666 +4336 5681 4420 5951 6276 +4337 3928 4982 6803 6112 +4338 5781 4562 7476 5452 +4339 5184 3883 7187 4325 +4340 5406 5475 5559 4425 +4341 5829 4330 6511 5374 +4342 5601 5323 6154 4367 +4343 6268 4309 6843 5101 +4344 5202 6532 199 200 +4345 4054 6619 4963 5579 +4346 4820 6626 4117 5850 +4347 6591 5689 7094 4692 +4348 4735 6516 4154 5868 +4349 6015 5249 6418 4304 +4350 3901 6798 5342 5093 +4351 6183 3932 6298 5058 +4352 4353 5115 6945 5783 +4353 159 160 6594 6078 +4354 5767 4500 5591 5828 +4355 4232 5391 6257 5158 +4356 7124 5059 6097 3943 +4357 5163 4334 6965 5123 +4358 7203 137 138 5567 +4359 4262 5644 4731 6409 +4360 5996 4424 6425 5061 +4361 4331 6204 4963 6619 +4362 6232 5126 6842 4660 +4363 6529 4287 7415 5216 +4364 4928 7109 4548 6723 +4365 4427 6045 4785 7050 +4366 4363 5656 3867 5245 +4367 5193 7299 4903 6202 +4368 4013 6560 4726 5404 +4369 7403 6125 7203 4937 +4370 4650 6034 4145 5590 +4371 5102 3941 7299 5193 +4372 5318 4342 7486 5379 +4373 3925 6713 4942 5852 +4374 7050 5248 6065 4112 +4375 5620 5072 6660 4021 +4376 3872 5539 6389 5093 +4377 5303 6507 124 125 +4378 7365 5472 7407 5071 +4379 5712 6588 5898 4522 +4380 6282 5069 6281 4531 +4381 6802 3911 6885 5077 +4382 5293 5902 6088 3975 +4383 5406 4425 6717 5309 +4384 5045 5956 5801 4473 +4385 5762 4352 6997 5140 +4386 5579 5475 5406 4054 +4387 4497 5103 5564 6901 +4388 4244 5868 4714 6528 +4389 6355 4672 5894 6684 +4390 5966 6461 5685 4503 +4391 6801 5129 6948 4680 +4392 5589 3976 6706 5240 +4393 5185 6227 5486 3914 +4394 5613 4437 5929 5250 +4395 5038 5039 4029 7030 +4396 5928 5927 7182 4633 +4397 6010 5211 7364 4062 +4398 4699 5561 4090 6215 +4399 5725 4365 6638 5129 +4400 7147 5096 5904 5095 +4401 3968 6480 4867 6081 +4402 5293 4331 6619 5291 +4403 5872 5230 7458 4466 +4404 5800 5090 6325 3886 +4405 5864 7116 7060 3909 +4406 6239 6238 4091 6237 +4407 5648 3876 5632 5236 +4408 5564 5084 6562 4320 +4409 4952 6540 4046 5621 +4410 6937 5204 7318 3982 +4411 5195 6018 4759 7144 +4412 4788 6359 4149 5641 +4413 5713 4736 6857 5831 +4414 5439 4951 5015 5919 +4415 5367 4360 5497 4061 +4416 6627 5654 6416 4799 +4417 4849 7008 4987 6208 +4418 5954 6758 5075 4797 +4419 6907 5567 6863 4917 +4420 7431 4014 6799 5075 +4421 4981 4173 7243 5676 +4422 4042 6730 4389 4997 +4423 4770 4771 3955 4126 +4424 7172 5333 6177 4048 +4425 6908 5354 6935 4960 +4426 5697 4130 5940 5134 +4427 6920 7273 6278 5013 +4428 5533 4475 5744 5497 +4429 5701 4412 7080 5157 +4430 5645 6076 5781 4393 +4431 7206 6288 7215 4305 +4432 6035 3903 5788 5147 +4433 6567 4609 6483 5082 +4434 6418 5249 7496 4933 +4435 6015 4030 7496 5249 +4436 6343 4837 7281 5200 +4437 4448 5662 4403 5515 +4438 6980 5153 7052 4019 +4439 5537 4285 5721 5192 +4440 7298 5398 4894 5860 +4441 4079 5594 4398 5443 +4442 3980 5708 4576 5752 +4443 4584 6136 4111 5702 +4444 6529 5216 7392 4857 +4445 6501 4440 6331 5080 +4446 4702 6099 4118 5670 +4447 5145 6755 5980 4421 +4448 5690 4089 5766 5168 +4449 3991 6161 4634 5481 +4450 7471 4326 7315 5952 +4451 5662 5235 7437 4403 +4452 3971 6077 6303 5027 +4453 7407 5472 6015 4304 +4454 5408 4229 7339 5124 +4455 5564 3957 6301 5084 +4456 7362 5076 7249 5473 +4457 4352 5087 4147 6366 +4458 5221 5346 6988 3935 +4459 5922 5095 6644 5208 +4460 5870 5329 6336 4236 +4461 5153 6058 4802 7052 +4462 6336 5329 7396 4441 +4463 6426 3865 5740 5197 +4464 6379 5198 5741 3866 +4465 6615 5104 6672 4557 +4466 5367 4351 5589 4342 +4467 6443 5132 5885 3881 +4468 5547 4684 6728 7361 +4469 5152 4424 5996 6790 +4470 5429 4317 6353 5326 +4471 5165 6093 3899 7368 +4472 5387 4376 5640 6971 +4473 4909 7267 4269 5919 +4474 4142 3939 4235 4234 +4475 4282 7379 5058 6298 +4476 7284 5259 4250 7210 +4477 5108 3898 6873 6667 +4478 5323 5601 4212 7139 +4479 4771 4185 6847 3955 +4480 5490 5166 7082 4148 +4481 4616 6349 4005 6291 +4482 5259 4460 6065 5248 +4483 4436 6256 4792 6472 +4484 3921 4937 7203 5567 +4485 6531 5108 6667 4355 +4486 4051 7020 6701 5380 +4487 5312 4325 7187 6062 +4488 5053 5419 6973 4316 +4489 5543 4665 7016 4664 +4490 4283 5219 7331 5102 +4491 7124 5488 6128 5059 +4492 5634 4595 6470 5425 +4493 7331 6529 3941 5102 +4494 5738 5126 7152 4247 +4495 4274 5299 4528 5637 +4496 4249 5762 5140 6749 +4497 4534 5298 3942 6144 +4498 3911 5210 4505 6220 +4499 4086 6976 4920 6306 +4500 5190 4407 7110 5453 +4501 4574 6721 5981 5019 +4502 4639 5874 4910 7121 +4503 6502 5173 7118 4051 +4504 5870 4236 7117 5173 +4505 4423 6169 6168 5848 +4506 7165 5226 7359 4263 +4507 5451 3986 5767 5828 +4508 5460 4414 6293 5395 +4509 7142 4345 5807 5065 +4510 4374 5090 6490 5775 +4511 5652 3900 6578 5104 +4512 5516 5726 5233 4341 +4513 3879 6721 6209 5420 +4514 5886 4238 5148 4723 +4515 7003 5844 6890 3963 +4516 4582 5695 6107 6942 +4517 4038 5873 5018 7108 +4518 5424 5130 6808 3868 +4519 4868 6123 4956 7013 +4520 6332 6864 5913 4602 +4521 5177 5834 115 116 +4522 5131 6856 5088 7425 +4523 4373 5823 6592 5546 +4524 4454 5290 6563 6194 +4525 4235 3939 4862 4178 +4526 4158 6466 4790 5633 +4527 5476 6050 5477 4063 +4528 4858 6861 5367 4061 +4529 5583 5803 6541 4568 +4530 5729 5239 6994 4357 +4531 6367 5154 6153 3891 +4532 5265 5748 5286 4264 +4533 4596 5138 5416 6751 +4534 5885 5132 6795 3915 +4535 4612 3955 4845 4026 +4536 4013 5404 4482 5887 +4537 5661 4358 5834 5177 +4538 6578 3900 6633 5377 +4539 7217 4144 6604 5114 +4540 6553 5105 6350 4593 +4541 5862 5301 6621 4587 +4542 5265 4264 7384 5133 +4543 7362 5473 7112 4269 +4544 5945 5308 7156 4828 +4545 4282 6298 4732 6406 +4546 4766 6080 4004 6536 +4547 6232 4118 6735 5126 +4548 5557 4556 6371 5607 +4549 4096 5515 4403 5591 +4550 7103 4831 7344 5231 +4551 5751 4312 4862 3939 +4552 5726 5516 5735 4521 +4553 4849 6208 4177 6845 +4554 5714 164 7063 5109 +4555 4357 5048 7233 5365 +4556 5549 7030 4029 7135 +4557 4832 5438 4134 6930 +4558 5883 5110 6270 3871 +4559 6438 4653 7477 5117 +4560 6360 4713 7402 5223 +4561 6340 4609 6567 5118 +4562 7151 6874 4349 5739 +4563 6740 4622 6860 5147 +4564 4699 6215 4578 6351 +4565 6767 4678 6699 5127 +4566 5047 6679 5156 4382 +4567 4929 5463 5690 4297 +4568 7062 5114 6604 4476 +4569 5553 4321 6806 5448 +4570 6727 5281 6507 4339 +4571 6189 5422 5721 4285 +4572 5059 4313 5383 6097 +4573 7039 4363 5245 7060 +4574 6447 5332 6632 4819 +4575 5647 3856 7484 5151 +4576 5448 4523 7205 5553 +4577 4553 5875 7288 5765 +4578 5103 4497 5119 6788 +4579 7016 5121 6199 4664 +4580 5600 4754 7340 4994 +4581 4296 5454 6711 5573 +4582 5751 4052 6258 4312 +4583 4974 5968 3981 7434 +4584 5156 6421 5684 4382 +4585 5091 4276 6445 5818 +4586 6532 4315 6037 5285 +4587 5835 4477 5581 5973 +4588 5304 4116 4510 4511 +4589 5202 105 106 6700 +4590 4353 5717 7285 6464 +4591 6607 4810 7074 5351 +4592 6405 5122 6296 4458 +4593 4119 5786 4871 6487 +4594 5241 5456 4047 6965 +4595 5584 6138 4210 7406 +4596 3877 6477 4557 5224 +4597 6839 6570 5800 3886 +4598 4236 6336 5657 5149 +4599 4249 5256 7043 5762 +4600 5559 5475 5579 4455 +4601 4283 5830 4073 5219 +4602 5552 4339 6507 5303 +4603 5378 6500 5692 3875 +4604 5768 6848 6909 3917 +4605 139 5931 4917 6863 +4606 4226 5355 4623 5776 +4607 5339 6324 4162 6196 +4608 4154 5969 4714 5868 +4609 6313 6881 5470 3940 +4610 7024 4421 6396 5135 +4611 6277 4779 7483 5205 +4612 5098 3907 7347 5247 +4613 5238 7163 5353 4056 +4614 4048 7298 5860 6784 +4615 4019 5459 7305 6980 +4616 6016 3885 6610 5269 +4617 6618 5405 6604 4144 +4618 6688 4630 5962 6823 +4619 5376 4368 7486 5240 +4620 5697 5134 6494 4643 +4621 4996 7248 4245 6329 +4622 4418 5578 4398 5594 +4623 6767 5413 4555 5414 +4624 5721 5422 5872 4466 +4625 3888 5768 4485 5841 +4626 7097 5142 6425 4424 +4627 3953 6121 4296 5150 +4628 5796 5234 6387 4431 +4629 4662 6722 4191 5724 +4630 7471 5952 3884 5185 +4631 4874 5540 3853 6943 +4632 4068 6305 4832 6835 +4633 5666 5233 7399 4265 +4634 5639 5135 6396 3896 +4635 5904 4567 7312 4114 +4636 4957 5522 4748 6880 +4637 4060 5265 7375 5555 +4638 6343 4691 6606 5143 +4639 5124 5612 5611 4359 +4640 6849 6952 5903 4746 +4641 4262 6409 7226 5250 +4642 5773 5155 6085 4348 +4643 4192 6463 4968 6688 +4644 5893 5178 6042 3906 +4645 4944 4295 5810 5459 +4646 4789 5874 4003 6155 +4647 7406 5181 7011 4950 +4648 6612 5160 7325 4647 +4649 5435 5169 7279 5436 +4650 7206 5141 4140 6288 +4651 4346 5155 5773 5513 +4652 6031 5338 5730 4104 +4653 5594 4079 5997 5389 +4654 5453 4027 6149 5190 +4655 3985 5512 4448 5756 +4656 4064 6855 4498 5495 +4657 5630 3897 6425 5142 +4658 4841 7164 3926 5538 +4659 6798 3901 6254 5146 +4660 7485 7375 5265 5133 +4661 5899 4371 6153 5154 +4662 5729 4357 5365 5340 +4663 4973 4321 5620 5577 +4664 156 157 5982 5261 +4665 7060 7116 5772 5089 +4666 5512 3985 6656 7328 +4667 4594 5627 3982 5677 +4668 4012 6614 4623 5355 +4669 6969 5228 7199 4926 +4670 5636 4057 6089 5218 +4671 5532 4255 6781 5161 +4672 4211 6673 7244 5461 +4673 5644 4262 6407 5160 +4674 6681 5158 6175 4343 +4675 7239 5167 6100 3956 +4676 6155 5375 7454 4789 +4677 4244 6528 4871 5786 +4678 3945 5803 7394 6538 +4679 4323 6756 4830 7106 +4680 5617 5094 7303 4774 +4681 4237 5404 4726 6916 +4682 6415 5275 5629 4270 +4683 5425 4329 6615 5634 +4684 4808 6736 4852 5560 +4685 5055 6128 5488 4068 +4686 6175 5158 6257 4022 +4687 5347 6308 6058 4591 +4688 4809 6534 4412 5701 +4689 5701 5157 6608 4076 +4690 4329 4945 7395 5652 +4691 3870 5392 6907 5643 +4692 5259 5248 7260 4250 +4693 7050 4785 7260 5248 +4694 7118 5229 7020 4051 +4695 6367 4515 6401 5154 +4696 3861 5609 6894 5225 +4697 7165 4828 7156 5226 +4698 4226 6292 4799 5355 +4699 4477 5769 4084 5581 +4700 4430 5415 6340 5820 +4701 4881 4388 7079 4997 +4702 5286 5748 5858 4414 +4703 5781 3929 7276 5255 +4704 7217 5268 6330 4144 +4705 5831 4141 5693 5713 +4706 3942 5737 4693 6144 +4707 6476 4701 5631 6805 +4708 5013 6309 4323 6485 +4709 7158 153 154 6793 +4710 7159 6794 170 171 +4711 6671 5506 7150 4697 +4712 5600 6564 5704 4754 +4713 6996 4214 5039 5038 +4714 7188 4246 6630 5361 +4715 5283 6231 4508 6329 +4716 4059 5294 7490 5068 +4717 5350 122 123 6727 +4718 5005 5923 4073 5524 +4719 5004 6229 3983 6066 +4720 6608 4782 7252 5251 +4721 5967 5251 7252 4338 +4722 4589 6424 4004 5343 +4723 5742 5209 7204 4402 +4724 3859 7257 4864 6178 +4725 5256 6260 6948 4099 +4726 6853 6983 3864 5582 +4727 5306 4394 6210 5371 +4728 4908 5489 4261 7133 +4729 7073 4571 7082 5166 +4730 7380 4461 6520 5162 +4731 5306 5680 5679 4394 +4732 5613 5250 7226 4034 +4733 5908 4138 6828 5183 +4734 5672 4427 5988 5271 +4735 6555 4773 7023 5213 +4736 5090 7463 3920 6490 +4737 4978 5481 4634 6442 +4738 6437 5164 7168 4085 +4739 5477 6605 5819 4063 +4740 4263 6940 5636 5218 +4741 3958 5726 4521 5811 +4742 5796 4067 7200 5234 +4743 6795 4730 7167 5388 +4744 5049 4356 5338 5789 +4745 4978 6922 4213 6133 +4746 5640 5196 7180 4241 +4747 5583 4107 5728 7297 +4748 6513 5289 7453 4864 +4749 7487 4566 6596 6216 +4750 6149 4438 6786 5190 +4751 6938 4641 6676 5183 +4752 6158 4547 6633 5172 +4753 6559 4850 5684 7114 +4754 6766 4078 6482 5205 +4755 6277 5205 6482 4524 +4756 5102 5193 6824 4283 +4757 189 5901 4329 5425 +4758 4632 5896 4190 5827 +4759 6320 4519 5483 5979 +4760 6115 3850 5979 5483 +4761 5269 6610 4569 6691 +4762 4460 5259 7284 6166 +4763 5530 6227 5185 3884 +4764 5418 5971 4776 7046 +4765 4601 5905 3967 5597 +4766 4277 6785 4800 6046 +4767 5872 5422 6189 4120 +4768 7135 4887 6133 5549 +4769 4189 5575 6113 4965 +4770 5154 6401 3863 5899 +4771 5962 4630 5690 5463 +4772 4947 4123 6551 5431 +4773 4603 5888 4109 5895 +4774 6403 4501 6334 5242 +4775 6557 5242 6334 3888 +4776 4779 6277 4154 6516 +4777 4291 6921 4905 5794 +4778 5343 5344 6469 4589 +4779 5771 4668 6846 7179 +4780 6202 4599 6824 5193 +4781 4303 4791 6300 5217 +4782 5870 5173 6502 4442 +4783 6696 5271 7304 4791 +4784 5988 3952 7304 5271 +4785 5536 6216 6596 4160 +4786 4272 4271 6847 3948 +4787 4316 5554 7464 5053 +4788 4615 5688 4210 6138 +4789 3880 4718 4856 4075 +4790 5826 5642 6085 7410 +4791 4857 7088 3941 6529 +4792 4536 7168 5164 5866 +4793 4946 6460 4369 5787 +4794 5254 5218 6089 4384 +4795 5291 4308 5902 5293 +4796 6963 6912 5987 4445 +4797 5441 4396 5735 5442 +4798 5047 4382 5458 6106 +4799 6419 5246 7400 4795 +4800 5779 7443 6584 4666 +4801 5218 5254 7165 4263 +4802 5452 4061 5497 5744 +4803 6897 7494 6107 4470 +4804 5845 4707 6879 6714 +4805 5157 7081 4411 7390 +4806 5595 5214 7022 4354 +4807 6387 5234 7200 4741 +4808 5049 7233 4242 7282 +4809 6331 4440 6245 5199 +4810 3891 6153 4884 6456 +4811 5226 7156 3936 7120 +4812 5555 4456 7056 5487 +4813 7075 4127 6386 4823 +4814 4735 5795 4059 6391 +4815 5781 5452 5744 4393 +4816 5643 4458 6296 5253 +4817 6189 4285 7031 5229 +4818 7460 5217 4340 6148 +4819 5680 5306 7435 4225 +4820 4729 6629 4981 5676 +4821 6060 5263 7197 4256 +4822 5999 4152 7184 5254 +4823 5826 5309 6717 5642 +4824 5214 5595 6902 3934 +4825 6727 123 7293 5281 +4826 6507 5281 7293 124 +4827 3928 6112 7264 6029 +4828 4159 5599 4472 5907 +4829 6348 5199 6962 4502 +4830 4445 6402 4930 6038 +4831 6138 5584 6279 4642 +4832 6348 3892 6331 5199 +4833 6823 4691 6343 5200 +4834 6360 5223 6435 4180 +4835 5127 7343 4081 6767 +4836 4182 5686 4425 5559 +4837 7251 4526 7166 5260 +4838 6057 5384 5940 4130 +4839 4444 6571 4873 5380 +4840 4766 5972 4434 6080 +4841 5312 6426 5197 4325 +4842 5429 5826 5464 4317 +4843 3968 6081 4399 5246 +4844 5150 5920 7273 4278 +4845 4272 3890 6052 4044 +4846 5085 4085 5871 5345 +4847 4563 5121 7016 6225 +4848 6090 3909 7060 5245 +4849 6940 5268 7217 4370 +4850 7241 5222 7497 4402 +4851 4632 6546 4891 5896 +4852 6556 5560 6393 4171 +4853 5496 5945 4152 6440 +4854 5442 5735 5516 4065 +4855 5785 5308 5945 4453 +4856 4916 7336 3902 5444 +4857 6255 5257 7439 4157 +4858 5601 5733 6351 4578 +4859 6057 4130 5752 4576 +4860 4644 5722 4005 6103 +4861 4265 5423 7087 5666 +4862 4350 5492 4838 7059 +4863 3975 5971 4331 5293 +4864 5005 4291 7322 6184 +4865 5842 5264 6712 4467 +4866 6016 5269 6035 4610 +4867 4803 5686 4182 5412 +4868 5224 4557 6672 5225 +4869 125 126 6124 5303 +4870 5951 4539 5769 5565 +4871 5815 5565 5769 4477 +4872 5372 4001 7371 6508 +4873 6089 4057 6994 5239 +4874 5550 7442 5469 4307 +4875 5591 4500 5673 5847 +4876 5408 6132 6187 4229 +4877 4853 5274 7243 4173 +4878 4041 5755 5079 7216 +4879 7118 4761 6189 5229 +4880 5016 6388 5062 7096 +4881 4938 4155 5891 5563 +4882 4268 5287 4407 7295 +4883 5215 109 110 5864 +4884 5617 5208 6644 5094 +4885 7452 4071 5513 5773 +4886 5742 3938 7169 5209 +4887 4203 6303 4825 6826 +4888 3881 5852 4942 6443 +4889 5843 5279 7228 4756 +4890 6071 4692 7094 5258 +4891 6312 5258 7094 4318 +4892 5456 4335 7458 5230 +4893 3934 6048 4786 6072 +4894 5143 4294 5518 5761 +4895 5111 5717 7368 3899 +4896 5713 5693 5966 4503 +4897 6325 5247 6146 3886 +4898 4207 6661 4820 5725 +4899 4181 5631 4701 6423 +4900 6452 4760 6555 5213 +4901 6356 5356 3912 6211 +4902 6630 4628 6927 5361 +4903 5520 4338 7252 6327 +4904 4097 5574 4783 6807 +4905 5581 5863 6004 4548 +4906 5525 4386 5659 6450 +4907 5824 4350 5495 6449 +4908 6684 5362 6211 3912 +4909 5318 6759 6992 4360 +4910 5132 5812 4730 6795 +4911 4090 5561 7290 6106 +4912 7025 4851 4853 3978 +4913 5034 3903 6691 5252 +4914 4230 6969 4912 5672 +4915 6879 4983 5405 6560 +4916 6000 5836 5507 4647 +4917 5315 3923 5370 5914 +4918 4865 5724 4191 6746 +4919 7120 4793 6330 5226 +4920 7241 4402 7204 5319 +4921 4995 5934 184 185 +4922 6781 4255 6082 5277 +4923 113 6478 5933 112 +4924 5965 5655 5959 4546 +4925 5225 7288 6779 5224 +4926 4441 6110 6380 4989 +4927 4077 5466 4541 6129 +4928 5611 6267 5670 4359 +4929 4306 5561 4699 5736 +4930 5633 4790 7397 6063 +4931 5122 141 142 6915 +4932 5726 3958 7399 5233 +4933 4107 5583 4568 6101 +4934 4328 7216 5079 7360 +4935 5650 4160 6596 6151 +4936 6666 6039 4840 5001 +4937 5797 4098 6471 5624 +4938 6136 4584 5960 5715 +4939 6616 6559 7114 4636 +4940 5764 3855 5941 5359 +4941 5152 3922 5916 5373 +4942 7424 4376 6812 5237 +4943 5181 7428 4274 7445 +4944 4677 6141 4550 5774 +4945 7008 7300 6006 3954 +4946 5322 6114 5468 4284 +4947 3931 5837 7333 5427 +4948 7043 5256 6979 4652 +4949 6037 4461 6084 5285 +4950 3852 6951 5108 6531 +4951 5111 3899 6093 6690 +4952 4731 5644 3945 6538 +4953 7196 5754 7376 4964 +4954 5294 4059 5795 5618 +4955 5677 3982 7318 5385 +4956 6410 5276 6479 4429 +4957 6059 6273 6274 4724 +4958 6969 4230 6696 5228 +4959 7393 5238 6548 4495 +4960 4288 5235 4097 6807 +4961 4615 5180 7427 6771 +4962 4546 5842 4467 5965 +4963 5456 5230 7173 4047 +4964 5366 6024 5325 4377 +4965 5665 4043 7176 5568 +4966 5668 4023 7352 5320 +4967 7162 5733 5601 4367 +4968 4327 6467 4664 6199 +4969 6678 5232 6645 3904 +4970 4299 5622 4618 6201 +4971 5985 5310 7049 4417 +4972 3926 5007 7455 5538 +4973 7326 4669 5778 4420 +4974 7042 5734 6117 4634 +4975 5376 5240 6706 4319 +4976 5673 4086 6306 5311 +4977 5729 4494 6631 5239 +4978 5379 5535 7309 4069 +4979 5024 6763 5937 6011 +4980 6160 5512 7328 4650 +4981 6972 5400 4397 5399 +4982 6478 113 6834 5252 +4983 6400 4257 6069 5335 +4984 4666 6120 3960 5779 +4985 4276 5859 4708 5449 +4986 5529 5242 6557 3916 +4987 4257 5280 6535 4620 +4988 4837 6251 4786 5498 +4989 5130 4362 7330 6808 +4990 5842 4546 5888 5417 +4991 5150 4296 5573 5920 +4992 4342 5589 5240 7486 +4993 155 6197 4542 5314 +4994 5914 4543 6198 5315 +4995 4074 6925 4289 5485 +4996 4250 7260 7472 5328 +4997 6694 4560 6594 5244 +4998 5921 5364 7295 4407 +4999 5785 4453 6563 5290 +5000 5552 5303 6124 4490 +5001 6789 6692 5997 6603 +5002 5330 7439 5257 4284 +5003 6691 4569 6478 5252 +5004 5067 6514 5421 3895 +5005 4480 6493 5789 5338 +5006 4555 5413 6512 4787 +5007 5732 6645 5814 6703 +5008 5374 4499 6509 5829 +5009 6999 5428 6565 3887 +5010 5221 4446 6729 5346 +5011 3884 5750 4752 6698 +5012 6462 4535 6741 5253 +5013 5855 4552 6294 4094 +5014 4169 5799 4673 6127 +5015 4005 5722 6815 6291 +5016 5643 5253 6741 3870 +5017 4657 5358 4281 6866 +5018 4452 5747 4500 5767 +5019 4507 6358 7051 5737 +5020 5352 5719 4898 7287 +5021 5982 3913 6600 5261 +5022 6197 5261 6600 4542 +5023 5486 5262 6601 3914 +5024 6198 4543 6601 5262 +5025 5638 5637 5880 4529 +5026 5544 4396 6140 5510 +5027 7309 5326 6353 4069 +5028 6821 4162 6324 5446 +5029 4849 6845 4993 5691 +5030 4819 6530 4596 6447 +5031 7156 5308 7212 3936 +5032 4715 5720 4268 6989 +5033 5764 5284 6403 3855 +5034 6481 4831 7448 5349 +5035 5541 5349 7448 3996 +5036 4164 5810 4936 6813 +5037 5362 6684 4611 6770 +5038 5429 5326 7309 4381 +5039 4302 5471 4923 5915 +5040 7439 5330 7354 4866 +5041 4085 5085 6605 6437 +5042 4929 4297 7305 6152 +5043 5344 5343 6069 4257 +5044 5393 4391 7239 5313 +5045 4900 5884 7100 6480 +5046 6359 4788 6416 5654 +5047 4500 5747 4086 5673 +5048 4302 5915 5398 6177 +5049 4986 6165 3889 7422 +5050 6147 5507 5836 4168 +5051 4724 6274 3977 6218 +5052 7414 7488 4433 6066 +5053 4599 6202 4147 5610 +5054 4533 6929 4818 6104 +5055 6885 3911 6220 5300 +5056 6908 4417 7049 5354 +5057 4011 6142 5119 6341 +5058 6321 5336 7374 4922 +5059 6795 5388 6053 3915 +5060 7294 3902 6413 5284 +5061 6403 5284 6413 4501 +5062 6616 4636 6147 5696 +5063 7423 4033 6154 5323 +5064 4988 4267 6774 5266 +5065 4070 5556 4499 6134 +5066 4469 6259 7383 6074 +5067 5058 4550 6591 6183 +5068 7004 4632 6936 5278 +5069 5531 3870 6741 5267 +5070 3918 4874 6719 5420 +5071 3871 5388 7167 5883 +5072 6454 3908 6744 5267 +5073 5006 6482 4078 6484 +5074 6454 5267 6741 4535 +5075 6315 5283 6329 4245 +5076 5179 4490 6124 7372 +5077 4257 6400 4815 5280 +5078 5210 6137 5350 4505 +5079 122 5350 6137 121 +5080 4358 5034 7047 5834 +5081 4751 6105 4191 6722 +5082 6683 3871 6270 5397 +5083 6708 5636 6940 4370 +5084 6683 5397 3926 5984 +5085 5366 4377 7341 6568 +5086 5153 6980 5174 7366 +5087 6192 6677 5799 4169 +5088 4869 6656 3985 7064 +5089 6579 5270 7003 4613 +5090 6035 5269 6691 3903 +5091 6973 5419 3872 5958 +5092 3962 5283 6950 4902 +5093 4172 5273 4851 6736 +5094 5172 7067 191 192 +5095 4705 6321 4221 7335 +5096 4301 5357 6431 5635 +5097 4993 5521 5889 4072 +5098 4452 5711 4086 5747 +5099 5335 6069 6080 4434 +5100 5621 4046 7462 5277 +5101 5211 6010 6312 4318 +5102 6295 5457 6534 3971 +5103 4064 7059 4838 6797 +5104 5336 5802 4383 7374 +5105 5225 6894 5765 7288 +5106 6589 4649 7054 5458 +5107 5152 5373 7097 4424 +5108 7209 3935 6535 5280 +5109 6479 5276 6640 3882 +5110 6410 3905 6641 5276 +5111 4602 5641 4149 6333 +5112 4575 6008 4225 5723 +5113 6237 4091 7396 5329 +5114 4177 5967 4993 6845 +5115 4022 7085 4996 6175 +5116 5665 4446 7083 5328 +5117 4456 4967 6595 5968 +5118 6570 3917 6909 4720 +5119 7089 4846 7292 5554 +5120 4600 5955 5183 6828 +5121 4749 5791 4530 5792 +5122 4045 7421 6114 5322 +5123 7456 4883 7007 5683 +5124 4046 6540 4703 5669 +5125 5088 7135 4029 7213 +5126 4943 3915 6053 5426 +5127 4369 6460 4045 5322 +5128 4339 5552 6040 7057 +5129 5237 6282 4531 6993 +5130 5825 5300 7450 3869 +5131 5308 5785 4859 7212 +5132 4048 4913 7211 7172 +5133 3977 6274 4725 6249 +5134 5263 6060 4496 6692 +5135 5017 6593 3961 5849 +5136 5319 7204 6060 4256 +5137 7103 5231 7079 4388 +5138 3916 6001 4622 5428 +5139 7188 5361 6294 5030 +5140 5729 5340 7262 4103 +5141 5541 5994 6224 4387 +5142 5207 4364 5633 6063 +5143 4989 5657 6336 4441 +5144 6544 5526 6068 4311 +5145 6388 4018 7049 5310 +5146 4439 5520 4025 5911 +5147 7423 5323 7139 4836 +5148 5030 6159 4240 7069 +5149 4192 5200 7281 6028 +5150 4464 7373 3854 5337 +5151 6306 5918 5503 4324 +5152 7426 4669 7326 5317 +5153 6225 5159 7401 4563 +5154 5292 5291 6619 4054 +5155 5825 4395 6885 5300 +5156 6774 4267 6335 5500 +5157 6024 5366 6181 4667 +5158 5037 6771 4199 6511 +5159 5521 4439 5542 5889 +5160 5396 7164 4841 7061 +5161 4546 5959 4109 5888 +5162 4808 5793 4172 6736 +5163 5103 7234 4992 6328 +5164 7177 4422 6170 4758 +5165 5091 5710 5859 4276 +5166 4028 5816 4530 5791 +5167 6887 5320 6824 4599 +5168 3950 7162 4830 6756 +5169 5995 5352 7287 3907 +5170 3941 6997 4903 7299 +5171 5175 5333 7172 4301 +5172 6700 5324 7404 4315 +5173 6924 4031 6009 4516 +5174 4411 6850 5073 5592 +5175 4954 6545 3874 6816 +5176 6401 4515 6211 5362 +5177 4265 6135 4544 6572 +5178 5049 7282 4998 5353 +5179 4834 7399 3958 5878 +5180 4861 6623 4197 6855 +5181 5334 6042 6770 4611 +5182 6738 4481 7262 5340 +5183 4512 6108 3889 6165 +5184 6426 5312 6960 4780 +5185 5116 3872 5419 6290 +5186 4728 3947 5040 5039 +5187 4165 5761 4532 6251 +5188 5535 5379 7486 4368 +5189 5711 4452 5930 5743 +5190 5541 4328 7360 5349 +5191 5324 6118 4506 7404 +5192 6278 4745 7186 4208 +5193 5971 5418 6204 4331 +5194 5497 4360 6992 5533 +5195 5264 5453 7110 4327 +5196 5093 5342 6369 4479 +5197 5985 4251 6888 5310 +5198 5311 4463 5847 5673 +5199 3963 5892 7353 5381 +5200 4431 5797 4561 5796 +5201 6048 5386 6150 4413 +5202 6068 5470 6430 4311 +5203 6469 5344 6702 4080 +5204 5794 5363 7322 4291 +5205 6780 5067 5910 7319 +5206 5555 5487 6908 4060 +5207 6641 5465 7048 4570 +5208 4710 5435 4227 6517 +5209 6493 5339 6738 3944 +5210 6306 4324 7333 5311 +5211 5802 5336 7231 4153 +5212 7239 3956 6607 5313 +5213 6953 5514 6986 4762 +5214 6110 4441 7396 6111 +5215 5013 6485 6009 4031 +5216 6308 5347 7206 4305 +5217 6782 5664 5906 3962 +5218 5990 5317 7326 4137 +5219 6648 4742 5327 7145 +5220 4001 6509 4921 6564 +5221 5080 6769 182 183 +5222 5665 5328 7472 4043 +5223 4917 5931 6405 4458 +5224 5150 5703 6739 3953 +5225 4538 5815 4477 5835 +5226 4608 6206 3973 6213 +5227 7470 7191 5777 5184 +5228 4146 6465 4867 6287 +5229 5277 6082 4579 5621 +5230 4637 6007 4439 5911 +5231 5567 6907 5392 3921 +5232 4101 5543 4664 6467 +5233 5382 5819 4387 6224 +5234 5379 4069 6759 5318 +5235 5578 4418 5856 6799 +5236 5700 5699 5847 4463 +5237 5170 4102 5275 5169 +5238 4147 6202 4903 6366 +5239 5699 5700 6256 4436 +5240 5201 5479 4074 6715 +5241 6629 5357 7211 4217 +5242 3912 5356 7183 5151 +5243 6117 5734 5946 4538 +5244 6347 4732 7489 5330 +5245 5855 5382 6224 4552 +5246 5912 4415 5015 4951 +5247 4288 6807 4575 5723 +5248 5385 4593 5974 5677 +5249 6628 4392 6539 5331 +5250 7194 4922 7374 5950 +5251 4931 5523 3864 6829 +5252 3869 4948 7032 5825 +5253 6324 5339 6493 4480 +5254 143 144 7464 5554 +5255 4971 5806 5807 4345 +5256 4155 7242 4870 6375 +5257 6681 4343 5390 7474 +5258 6467 4327 7110 5494 +5259 6019 5455 6487 4572 +5260 4993 4072 5998 5691 +5261 4463 5837 3931 5700 +5262 4705 7231 5336 6321 +5263 6629 4729 6431 5357 +5264 3944 5365 7233 5049 +5265 5842 5417 6149 4027 +5266 4393 5869 4108 5645 +5267 5337 3854 6628 5331 +5268 5048 7235 4242 7233 +5269 6121 7115 6207 4296 +5270 5581 4084 5709 5863 +5271 4550 5058 7379 6311 +5272 6767 5414 6982 4678 +5273 4764 5363 5794 7148 +5274 4636 6101 4568 6147 +5275 5423 5341 6927 4628 +5276 6572 4094 6927 5341 +5277 5043 4687 6381 6214 +5278 4057 5368 7235 5048 +5279 4448 5515 4577 5756 +5280 5769 5655 5965 4084 +5281 5607 4078 6766 5557 +5282 4555 5057 6775 5414 +5283 3990 6444 7405 5525 +5284 5257 6255 5787 4369 +5285 6870 4400 7441 5391 +5286 5894 3883 6693 5334 +5287 6042 5334 6694 3906 +5288 3999 5886 4723 6742 +5289 6447 4035 6789 5332 +5290 6571 5295 6923 4443 +5291 5591 5847 5699 4096 +5292 5175 4301 5635 6005 +5293 5387 4354 7022 5430 +5294 4287 5548 4899 7415 +5295 5151 6355 6684 3912 +5296 4423 5574 4097 6032 +5297 7335 5813 6376 4705 +5298 4940 5519 6993 4531 +5299 5774 4133 6760 7105 +5300 7262 4481 7454 5375 +5301 5676 5820 6431 4729 +5302 5829 5372 7251 4330 +5303 4471 5623 4159 5907 +5304 4217 6804 4406 5491 +5305 5156 6679 3959 6568 +5306 180 181 7045 5538 +5307 4290 6429 4607 6428 +5308 6727 4339 7057 5350 +5309 6483 4609 6340 5415 +5310 4103 5955 4494 5729 +5311 4641 6155 4003 5823 +5312 5331 4363 7039 5337 +5313 4818 6257 5391 7441 +5314 3871 6683 6053 5388 +5315 4247 7227 4796 5738 +5316 6190 4810 6098 7028 +5317 7228 5279 6946 4408 +5318 6196 4481 6738 5339 +5319 6210 4030 6429 5371 +5320 4396 5441 3981 6140 +5321 4259 5928 5113 7467 +5322 5067 6780 3862 6243 +5323 3946 5738 4796 6825 +5324 4352 5770 7381 5087 +5325 4268 5720 5076 7256 +5326 4820 5850 4365 5725 +5327 5992 4581 6076 5645 +5328 3857 5316 6926 5909 +5329 6690 6093 6427 5045 +5330 4095 5851 4530 5939 +5331 4495 5905 4601 5991 +5332 6033 4436 6472 5534 +5333 6812 5430 7022 4136 +5334 6132 5408 6232 4660 +5335 7373 5403 6773 3854 +5336 6475 4605 6773 5403 +5337 5854 4028 5791 5943 +5338 6265 5434 6620 3927 +5339 4494 5955 4600 5906 +5340 6925 4074 6030 5566 +5341 6004 5863 5709 4468 +5342 7189 5032 6302 5455 +5343 6487 5455 6302 4119 +5344 7074 4183 6632 5351 +5345 4100 5542 4439 6007 +5346 4210 5688 5009 7428 +5347 6718 5395 6293 4188 +5348 5814 5377 6633 4547 +5349 6582 4621 6988 5346 +5350 5194 6911 4258 6404 +5351 5191 4696 6649 6580 +5352 6747 5347 7276 3929 +5353 6669 7417 6162 3858 +5354 5435 5436 7249 4227 +5355 5764 5359 7032 4429 +5356 6181 5468 6114 4667 +5357 3936 7212 4859 6707 +5358 6361 4163 7323 5383 +5359 7237 5383 7323 4767 +5360 7192 4848 6935 5354 +5361 4514 6236 4286 5480 +5362 5512 6160 5662 4448 +5363 5970 6088 5902 4517 +5364 4374 4890 6894 5609 +5365 7227 4247 6581 5993 +5366 4319 7386 4050 5376 +5367 5984 5396 5012 7440 +5368 4967 4456 5555 6064 +5369 7251 5372 6508 4526 +5370 5921 4100 7190 5364 +5371 6852 5596 6145 4737 +5372 5995 4597 6875 5352 +5373 4709 7430 5619 5149 +5374 5719 5352 6875 3878 +5375 3906 7278 4976 5893 +5376 4627 5683 3994 6761 +5377 3850 6115 4512 5585 +5378 4143 6374 4711 6963 +5379 5410 7157 4080 6702 +5380 5514 6953 4201 6947 +5381 5217 6300 5705 4340 +5382 6155 4641 6938 5375 +5383 4938 5687 4033 6116 +5384 3880 6448 7289 5839 +5385 6167 5390 7342 4773 +5386 5716 4138 7342 5390 +5387 5246 6419 5622 3968 +5388 5165 7433 6125 4509 +5389 5833 4047 6858 5358 +5390 4877 6731 4233 6837 +5391 3926 5397 7420 5007 +5392 5390 4343 6234 5716 +5393 7271 6587 5532 5161 +5394 6011 5464 6590 4070 +5395 4421 7024 3866 5370 +5396 6317 5374 6511 4199 +5397 5384 6213 5739 4606 +5398 5203 4717 6526 3964 +5399 7071 4882 5206 3937 +5400 5230 5872 4775 7173 +5401 5490 7492 4219 5753 +5402 6156 5409 7481 4860 +5403 6294 5361 6927 4094 +5404 5761 5518 6286 4532 +5405 5307 4507 7242 6116 +5406 6401 5362 6770 3863 +5407 4359 5670 4118 6232 +5408 4972 6576 5191 3995 +5409 5982 7191 7470 3913 +5410 7249 5436 7279 4447 +5411 3910 4955 6500 5378 +5412 6870 6319 6017 4400 +5413 7235 5368 6708 4670 +5414 4983 4476 6604 5405 +5415 4237 6368 4482 5404 +5416 5680 5917 5927 5679 +5417 5916 3865 7097 5373 +5418 5285 6084 197 198 +5419 5097 4009 7303 5094 +5420 4864 7257 4513 6513 +5421 6204 5418 6642 4962 +5422 5665 4399 6465 5606 +5423 6110 6111 5879 4092 +5424 5264 4327 6199 5707 +5425 5520 6327 5592 4025 +5426 4886 6193 4454 6194 +5427 7438 5403 7373 4464 +5428 4617 5956 3876 5648 +5429 5945 5496 6563 4453 +5430 4482 6368 5282 7161 +5431 4775 5872 4120 6547 +5432 5769 4539 5959 5655 +5433 5596 3980 5975 5978 +5434 6544 5504 7364 4449 +5435 6157 4180 6435 5493 +5436 4423 6032 4650 5590 +5437 4282 6036 4977 6884 +5438 6345 4168 5836 6704 +5439 5665 5568 6652 4399 +5440 4074 5485 5167 6998 +5441 7375 4337 6064 5555 +5442 6291 5660 6394 4616 +5443 4362 5505 6779 4984 +5444 4017 6931 4958 5948 +5445 5899 5750 6820 4371 +5446 5490 5753 5900 4401 +5447 5819 5382 6685 4063 +5448 6434 6822 5977 3989 +5449 5813 3931 5427 6376 +5450 3893 7058 4846 7089 +5451 3959 6778 5005 6184 +5452 6718 7268 4322 5395 +5453 5387 5430 6812 4376 +5454 5665 5606 6729 4446 +5455 3865 5916 4542 5740 +5456 5859 5710 6113 4450 +5457 4071 7137 6895 5513 +5458 3887 6119 5077 6999 +5459 5625 5502 6162 4502 +5460 5120 6067 4805 7170 +5461 5604 4444 5380 6701 +5462 4773 5908 4373 7023 +5463 5081 6673 4211 6473 +5464 4267 4861 6049 6335 +5465 7318 4835 7185 5385 +5466 5882 5881 4529 5880 +5467 5753 4648 5401 5900 +5468 5983 3988 6616 7214 +5469 5297 4474 5925 7429 +5470 5855 4544 6685 5382 +5471 5929 4437 5718 6354 +5472 6059 4174 6585 6273 +5473 6924 4516 6262 4293 +5474 5060 5892 4457 7269 +5475 6237 4442 6412 6239 +5476 6238 6239 6412 5029 +5477 4780 6960 4379 5630 +5478 7274 7409 6556 5025 +5479 3989 5977 4655 6073 +5480 5814 3878 6875 5377 +5481 6578 5377 6875 4597 +5482 5480 5500 6335 4514 +5483 5375 6938 4103 7262 +5484 7223 4914 6005 5635 +5485 4109 5959 4539 5778 +5486 5172 192 193 6158 +5487 6150 5386 7113 4195 +5488 5313 4300 6603 5393 +5489 5099 6043 4946 7153 +5490 7460 6148 7150 6971 +5491 4073 5830 6921 5524 +5492 6702 4620 6867 5410 +5493 6014 4248 6751 5416 +5494 6126 6854 3910 5378 +5495 7155 4970 5532 6299 +5496 5547 7361 5961 4484 +5497 5541 3996 5805 5994 +5498 5381 4484 5961 4613 +5499 5679 5927 5928 4259 +5500 4002 6179 4475 5533 +5501 6088 5970 6458 4722 +5502 4553 5765 7129 6545 +5503 6867 4206 7205 5410 +5504 4549 5887 4482 5804 +5505 6754 5822 7228 4408 +5506 4473 5658 6690 5045 +5507 6618 4726 6560 5405 +5508 4670 6488 4242 7235 +5509 5316 4763 5639 6926 +5510 3972 6649 4696 6573 +5511 5329 5870 4442 6237 +5512 5083 6841 4774 6319 +5513 4651 7369 6162 5502 +5514 6156 4694 7127 5409 +5515 6414 5409 7127 4024 +5516 6486 4121 5715 5960 +5517 4084 5965 4467 5709 +5518 6617 5549 6133 4213 +5519 4871 6180 4572 6487 +5520 5225 6672 6561 3861 +5521 5594 5389 7026 4418 +5522 5508 4488 6241 5509 +5523 4639 6710 4003 5874 +5524 6020 4450 6113 5575 +5525 4873 6412 4442 6502 +5526 7382 4006 7332 5407 +5527 4290 5462 6675 4990 +5528 6897 4470 5865 7174 +5529 6998 5682 6715 4074 +5530 4629 5978 4584 5702 +5531 7044 7031 4285 5537 +5532 7219 4899 6711 5454 +5533 4980 5731 4030 6210 +5534 6961 5401 7418 4322 +5535 5984 3926 7164 5396 +5536 6811 4927 5666 7087 +5537 6849 4844 6966 6952 +5538 4346 4921 5556 4906 +5539 4606 6917 5940 5384 +5540 4990 5723 4225 7435 +5541 4915 5896 4891 6650 +5542 5768 5421 6514 4485 +5543 5420 6209 5523 3918 +5544 4487 5948 7193 6289 +5545 7124 4293 6262 5488 +5546 7300 5691 5998 4451 +5547 5640 5112 7460 6971 +5548 4722 6458 4604 6310 +5549 5510 4121 6174 5544 +5550 5428 6999 4733 7035 +5551 4330 5605 5037 6511 +5552 5089 3885 6016 5674 +5553 4871 6528 4714 6892 +5554 6606 3979 6451 5467 +5555 6810 4541 5467 6451 +5556 4486 5697 4643 6486 +5557 3910 6854 4651 5502 +5558 5888 4603 7000 5417 +5559 6620 5434 6470 4595 +5560 4914 7301 4454 6193 +5561 5409 6414 4537 7481 +5562 4943 5426 6669 3858 +5563 4754 5704 6895 7137 +5564 7157 5410 7205 4523 +5565 5905 5663 6455 3967 +5566 6181 4122 6347 5468 +5567 5346 6729 4146 6582 +5568 193 5727 4547 6158 +5569 4985 5569 7458 4335 +5570 4452 6872 4824 5930 +5571 5795 4469 6496 5618 +5572 119 5501 6398 118 +5573 4228 6492 4746 5903 +5574 5588 5431 6551 4372 +5575 3980 5752 4486 5975 +5576 6216 4567 5904 5096 +5577 5960 4584 5978 5975 +5578 6754 4811 6850 5822 +5579 4465 6271 7178 5288 +5580 7028 4209 5986 6190 +5581 5987 4685 6190 5986 +5582 4512 6165 4488 5585 +5583 7255 5943 5791 4749 +5584 6279 5584 6384 4108 +5585 4474 5297 7222 6290 +5586 3902 7294 5651 5444 +5587 6422 5369 4042 7095 +5588 5913 6233 5827 4190 +5589 6308 4305 7215 5411 +5590 4332 7046 4776 6583 +5591 6586 6352 5562 4975 +5592 5596 6852 5708 3980 +5593 4032 5548 4635 6212 +5594 5947 4879 4044 6052 +5595 4362 5130 5580 5505 +5596 5978 4629 6145 5596 +5597 4436 6033 4096 5699 +5598 5386 6048 3934 6902 +5599 5709 5817 5939 4468 +5600 4468 5939 4530 5816 +5601 5697 4486 5752 4130 +5602 4983 7263 5846 4476 +5603 4061 5452 7476 4858 +5604 5378 3875 5616 6126 +5605 4787 4573 5206 4115 +5606 6821 5446 6536 4750 +5607 7091 5692 6500 4355 +5608 4909 5919 5015 6957 +5609 6739 6222 5853 3953 +5610 6104 5754 7196 4161 +5611 6829 6070 6873 4492 +5612 6367 6356 6211 4515 +5613 5792 4530 5851 6022 +5614 5828 7437 5235 5451 +5615 5969 6230 6892 4714 +5616 5613 4034 5954 6622 +5617 4292 6313 4907 7238 +5618 6015 5472 6787 4607 +5619 7365 4088 6787 5472 +5620 7397 4790 6566 5450 +5621 4320 6562 4646 5687 +5622 4141 6026 4520 6518 +5623 4202 6310 5064 6418 +5624 5611 3961 6593 6267 +5625 6014 5416 7171 5125 +5626 4682 5572 4724 6218 +5627 5843 4412 6534 5457 +5628 6797 7068 6049 4064 +5629 6642 5418 7046 4332 +5630 5500 5480 6414 4024 +5631 7431 5075 6758 5608 +5632 4372 6551 4813 6937 +5633 7325 5160 6407 7363 +5634 5483 7348 5019 6115 +5635 3949 4049 4893 4721 +5636 5297 7429 146 147 +5637 5680 4225 6008 5917 +5638 6986 5514 6351 3950 +5639 5930 4088 7269 5743 +5640 4513 6094 3889 6108 +5641 4727 6065 4460 6252 +5642 6437 6605 5477 4349 +5643 5920 5573 7078 4745 +5644 7062 4476 5846 4598 +5645 5244 7278 3906 6694 +5646 6037 4315 7404 5511 +5647 5180 4002 5706 6763 +5648 6811 7087 5423 4066 +5649 4711 4640 5598 6903 +5650 4935 6471 5970 4517 +5651 6399 5486 6227 4583 +5652 4540 6813 4936 6457 +5653 7287 5447 7347 3907 +5654 4576 5949 4608 6057 +5655 5298 6092 4111 5760 +5656 5659 4800 6933 6450 +5657 6283 5493 6435 4459 +5658 4915 6650 4788 5641 +5659 5525 5650 6151 4386 +5660 5529 3916 5428 7035 +5661 5402 5070 6808 7330 +5662 7147 4007 6323 7487 +5663 5981 5675 6108 4512 +5664 7420 5926 7455 5007 +5665 6266 4624 6025 6026 +5666 6316 5496 6440 4559 +5667 5434 187 188 6470 +5668 5235 4288 6675 5451 +5669 6796 134 135 7433 +5670 3951 7107 4924 5432 +5671 4924 7107 4925 5808 +5672 4157 7014 4911 6255 +5673 4335 5571 6404 4985 +5674 5287 4101 6467 5494 +5675 5750 3884 5952 6820 +5676 4879 4518 4216 4044 +5677 4427 5672 7176 6045 +5678 4451 5998 4603 5895 +5679 4536 6083 3938 5742 +5680 5826 7410 6590 5464 +5681 5563 6901 5564 4320 +5682 3877 5224 6779 5505 +5683 6185 4656 6896 5450 +5684 6661 6021 6626 4820 +5685 5477 6050 6917 4606 +5686 4653 6438 4759 6018 +5687 6146 5447 6773 4605 +5688 4097 6160 4650 6032 +5689 5395 4322 7418 5460 +5690 4913 4048 6784 6804 +5691 6344 4470 6107 5695 +5692 4379 4961 6389 5539 +5693 6044 6611 6598 4128 +5694 4874 3918 6519 5540 +5695 6071 6183 6591 4692 +5696 5264 5707 4095 6712 +5697 4089 5690 4630 6687 +5698 5083 6689 4969 5821 +5699 6584 5689 6663 4666 +5700 6591 4131 6663 5689 +5701 4868 6120 4666 6663 +5702 4028 6004 4468 5816 +5703 5242 5529 3855 6403 +5704 6949 5801 7181 3894 +5705 5338 4356 7393 5730 +5706 6166 5597 6252 4460 +5707 6928 4549 5804 6059 +5708 5235 5662 6160 4097 +5709 6218 6247 5963 4682 +5710 4323 7106 4134 5438 +5711 5283 6315 4559 6950 +5712 5164 6874 7202 5866 +5713 3873 6051 7183 5356 +5714 7349 4967 6064 5760 +5715 5298 5760 6064 4337 +5716 5120 6014 4426 7306 +5717 5324 107 108 6118 +5718 5797 5624 6397 4561 +5719 4189 5014 6720 5790 +5720 4601 5597 6166 7001 +5721 4914 6193 6609 4151 +5722 4030 6015 4607 6429 +5723 4352 6366 4903 6997 +5724 4784 5897 4183 6506 +5725 4877 7092 5598 5798 +5726 6455 5663 6548 4383 +5727 4869 6665 4707 6737 +5728 193 194 6703 5727 +5729 4706 7358 5342 6798 +5730 6536 5446 7029 4766 +5731 7287 4898 7388 5447 +5732 4121 6486 4643 6174 +5733 7219 5454 7482 4184 +5734 6316 6194 6563 5496 +5735 4739 5865 4470 6344 +5736 6852 4737 6345 6704 +5737 5830 4283 6824 7377 +5738 6430 5504 6544 4311 +5739 6147 4568 6541 5507 +5740 6154 5478 6634 4367 +5741 4375 5243 6956 3919 +5742 5369 6422 4390 6054 +5743 4980 6210 4394 7327 +5744 4632 5827 6761 6936 +5745 6791 6041 6103 4554 +5746 5779 3960 6993 5519 +5747 6649 4743 4126 6580 +5748 6345 5696 6147 4168 +5749 4893 6013 5809 4897 +5750 5109 7063 6399 4583 +5751 6644 4114 5097 5094 +5752 4427 5877 4708 5988 +5753 6584 4318 7094 5689 +5754 5603 6476 6805 3991 +5755 7134 5461 7244 4886 +5756 4113 5617 4774 6841 +5757 5210 120 121 6137 +5758 5709 4467 6712 5817 +5759 6682 5474 6949 4638 +5760 5192 5721 4466 7461 +5761 4496 5784 7026 5389 +5762 7281 4404 6027 6028 +5763 4062 7494 4941 6010 +5764 4987 6865 4694 6208 +5765 5639 4380 5909 6926 +5766 4197 6346 4565 5678 +5767 4416 5107 5015 4415 +5768 6106 5458 7054 4090 +5769 5201 4292 7238 5479 +5770 4483 6285 7141 5603 +5771 5317 5990 6079 4590 +5772 5289 6513 5675 3879 +5773 4657 6866 5062 6388 +5774 6877 4058 6664 5503 +5775 5604 6701 7031 7044 +5776 4633 7182 3974 5128 +5777 6510 4688 6304 5946 +5778 5177 116 117 7286 +5779 4336 5616 4519 6320 +5780 6430 5470 6881 4582 +5781 5498 4067 5499 4404 +5782 5815 4538 5946 6304 +5783 4423 5848 7229 5574 +5784 4073 6659 4635 5944 +5785 5072 5553 7205 4206 +5786 4078 5607 4565 6484 +5787 5288 5926 7420 4465 +5788 5366 4777 7005 6181 +5789 7427 5024 6134 6317 +5790 4814 6424 4589 6339 +5791 4266 5082 6483 5793 +5792 4892 6235 4628 6630 +5793 6154 4646 7337 5478 +5794 5335 4139 7284 6400 +5795 4289 6163 4802 7086 +5796 6612 6541 5803 3945 +5797 4474 5053 7464 5925 +5798 5167 7239 4391 6998 +5799 6299 5532 6587 4135 +5800 3996 6876 4432 5805 +5801 5267 6744 5022 5531 +5802 4201 5736 4699 6947 +5803 5298 4534 6489 6092 +5804 5582 3924 5482 6853 +5805 6385 6474 6127 4673 +5806 6157 5493 6968 4760 +5807 7249 4447 7112 5473 +5808 6473 6002 6929 4533 +5809 4217 7211 4913 6804 +5810 6241 3873 7479 5509 +5811 5296 5182 4829 5653 +5812 4067 5498 4413 7200 +5813 5261 6197 155 156 +5814 5315 6198 168 169 +5815 4124 5545 4769 6697 +5816 3853 5540 4558 6599 +5817 5939 5817 6712 4095 +5818 6640 5646 7334 3882 +5819 7119 5046 6074 7055 +5820 6398 5501 6802 4592 +5821 5500 6061 6019 6774 +5822 6132 4872 7310 6187 +5823 6383 5972 6031 4104 +5824 4551 6456 4884 6716 +5825 4677 6123 4131 6141 +5826 5542 4100 5921 6786 +5827 4487 6886 5537 5192 +5828 7056 4417 6908 5487 +5829 4879 5947 7451 6941 +5830 6634 5478 7337 4134 +5831 5517 5716 6234 4508 +5832 5486 6399 165 166 +5833 6275 4333 5203 3964 +5834 5683 7007 5492 3994 +5835 6710 4751 5546 6592 +5836 5671 3966 6959 5527 +5837 4640 4234 5798 5598 +5838 178 179 7455 5926 +5839 5611 5612 7157 4523 +5840 4986 6051 3873 6241 +5841 6103 6041 5953 4644 +5842 5106 6269 5678 4565 +5843 5114 7062 3966 5832 +5844 3884 6698 4314 5530 +5845 4148 4992 7492 5490 +5846 6474 5681 6276 4645 +5847 5110 6271 4465 6270 +5848 5852 6838 5508 3925 +5849 5716 5517 6828 4138 +5850 5505 5580 6967 3877 +5851 4367 6634 4830 7162 +5852 6942 4062 7364 5504 +5853 5918 4435 6877 5503 +5854 5484 5759 5882 4528 +5855 4880 7408 4240 6159 +5856 5545 4823 6386 4770 +5857 4828 7184 4152 5945 +5858 6913 5511 7404 4506 +5859 4757 7160 4171 6393 +5860 4925 6939 4161 5808 +5861 4169 6055 4663 6192 +5862 7497 4085 7168 5614 +5863 4106 6117 4538 5835 +5864 5184 5777 6693 3883 +5865 5622 6419 6217 4618 +5866 4064 5495 4350 7059 +5867 4492 5243 5302 7034 +5868 5196 6120 4868 7180 +5869 4933 7496 4030 5731 +5870 7044 4087 6775 5604 +5871 3924 5582 4574 6624 +5872 5386 6902 4684 7113 +5873 5991 5730 7393 4495 +5874 6451 4929 6152 6810 +5875 4206 5615 6660 5072 +5876 6263 5623 6444 4661 +5877 4085 7497 5222 5871 +5878 5141 4581 5992 6023 +5879 5245 3867 5511 6913 +5880 5258 6312 7014 4157 +5881 5424 7308 5934 4995 +5882 6174 4643 6494 5811 +5883 5251 7140 4860 7253 +5884 7449 7372 127 128 +5885 5591 4403 7437 5828 +5886 6828 5517 7419 4600 +5887 5905 4495 6548 5663 +5888 4069 6353 4876 6759 +5889 6666 5001 6882 6242 +5890 4994 4545 6242 6882 +5891 5091 6495 5840 4658 +5892 6274 6273 6585 4725 +5893 5387 6971 7150 5506 +5894 7025 6695 5560 4852 +5895 6393 5560 6695 5400 +5896 4784 6837 4233 5897 +5897 4324 5503 6664 7036 +5898 4378 7297 5728 5325 +5899 7223 5635 6431 3987 +5900 6351 5514 6947 4699 +5901 4979 133 134 6796 +5902 5144 7277 5628 7412 +5903 5294 5618 6496 4364 +5904 4989 6380 6381 4687 +5905 5807 4612 4026 5066 +5906 5123 5833 6888 4251 +5907 5462 7266 6872 3986 +5908 5650 5525 7405 4471 +5909 4962 6981 4963 6204 +5910 5115 4570 7048 6373 +5911 4170 7018 4946 6043 +5912 5301 7201 4310 6621 +5913 4177 6208 4694 6156 +5914 5889 5542 6786 4438 +5915 6436 4156 6344 5695 +5916 6472 4105 6846 5534 +5917 5005 5524 6921 4291 +5918 4928 7218 4213 6922 +5919 3974 5304 4511 5128 +5920 4629 6044 4128 6145 +5921 7345 7410 6085 5155 +5922 5805 4552 6224 5994 +5923 5177 7286 6398 4592 +5924 6215 5576 6990 4578 +5925 7078 5573 6711 4032 +5926 5115 4353 6464 5646 +5927 4244 5786 6709 5054 +5928 4336 7090 6126 5616 +5929 4407 5190 6786 5921 +5930 6320 5570 6748 4336 +5931 5552 4490 5758 7126 +5932 5031 7277 5144 7320 +5933 5162 196 197 7380 +5934 6730 4235 4178 4389 +5935 5006 6346 4988 5558 +5936 5122 6405 140 141 +5937 4493 6466 4158 5660 +5938 4677 6995 4956 6123 +5939 5465 7449 128 129 +5940 4117 6240 4489 5867 +5941 5700 3931 5813 6256 +5942 6033 5534 7357 4577 +5943 5250 5929 6407 4262 +5944 4107 6421 7341 5728 +5945 4068 6835 4385 5562 +5946 4141 6518 4619 5693 +5947 5656 6539 6678 4991 +5948 5232 6678 6539 4392 +5949 6923 5780 5296 5698 +5950 4504 6516 4735 6391 +5951 7174 5787 6255 4911 +5952 3893 7089 6973 5394 +5953 5554 4316 6973 7089 +5954 5201 5578 6799 4014 +5955 5846 5771 7179 4598 +5956 6129 4541 6810 5763 +5957 6129 5763 6813 4540 +5958 5708 4462 5949 4576 +5959 6886 4087 7044 5537 +5960 5637 5638 7445 4274 +5961 5987 5986 6402 4445 +5962 5429 4381 7442 5550 +5963 7325 7363 6646 4129 +5964 5080 183 184 6501 +5965 4186 6737 4707 5845 +5966 4807 6840 3988 5983 +5967 4195 7113 4684 5547 +5968 3967 6455 4826 6686 +5969 4208 6985 5036 6309 +5970 5784 4496 6060 7169 +5971 4825 6303 4286 6236 +5972 5620 4652 6979 5577 +5973 5256 4099 5577 6979 +5974 152 7 153 7158 +5975 172 7159 171 8 +5976 6766 4428 7469 5557 +5977 5231 7344 4390 6422 +5978 4469 5795 4735 6259 +5979 6037 5757 6520 4461 +5980 5891 4497 6901 5563 +5981 5290 6221 7246 5785 +5982 4659 6157 4760 6452 +5983 6517 7099 5903 4710 +5984 5407 5092 6859 7382 +5985 5866 6453 6083 4536 +5986 4411 5592 4782 7390 +5987 5290 4454 7301 6221 +5988 4550 6311 4133 5774 +5989 4295 4944 6925 5566 +5990 4139 5551 4601 7001 +5991 6108 5675 6513 4513 +5992 6617 5038 7030 5549 +5993 5615 4875 6297 6660 +5994 4449 7364 5211 7443 +5995 5192 7461 5569 4017 +5996 5068 5746 6391 4059 +5997 5927 5917 6203 7182 +5998 5244 161 162 6439 +5999 7461 4466 7458 5569 +6000 5035 7224 5963 4683 +6001 4096 6033 4577 5515 +6002 6119 3887 6565 5661 +6003 5513 6895 5704 4346 +6004 6186 4275 6857 6654 +6005 4293 7124 5106 6371 +6006 6465 4146 6729 5606 +6007 6040 5552 7126 3869 +6008 6419 4795 6760 6217 +6009 5186 6827 4796 7227 +6010 4364 6496 5046 7324 +6011 5160 6612 3945 5644 +6012 4218 5075 6799 5856 +6013 6754 4408 6946 5667 +6014 5713 4503 6657 4736 +6015 5288 6978 176 177 +6016 4385 7465 5084 6301 +6017 5911 6102 6522 4637 +6018 6778 7290 5561 4306 +6019 5805 4432 6294 4552 +6020 6261 5608 6758 4243 +6021 5677 5974 7075 4594 +6022 5104 6615 4329 5652 +6023 4475 6179 4642 6279 +6024 4098 5797 4431 6307 +6025 4638 6395 4916 6682 +6026 6631 5664 6782 4384 +6027 4153 6495 5091 5818 +6028 6215 4090 7054 5576 +6029 7060 5089 5674 7039 +6030 5581 4548 7109 5973 +6031 7374 4383 6548 5950 +6032 6326 5576 7054 4649 +6033 4645 6432 4688 6253 +6034 5131 5886 3999 7411 +6035 4310 6597 4971 6621 +6036 5565 5815 6304 3992 +6037 5049 5789 6493 3944 +6038 5602 6562 5084 7465 +6039 4266 5793 4808 7409 +6040 6359 5654 7082 4571 +6041 4023 6036 4764 7148 +6042 5129 6638 4099 6948 +6043 5906 5664 6631 4494 +6044 6000 4129 5949 4462 +6045 6008 4585 6203 5917 +6046 3860 5111 6690 5658 +6047 7040 4409 6800 6753 +6048 7317 4020 6588 5712 +6049 4792 7102 4105 6472 +6050 4492 6003 6956 5243 +6051 6384 5584 7406 4950 +6052 6041 4181 6499 5953 +6053 6303 6077 6164 4286 +6054 5372 5829 6509 4001 +6055 4385 6835 4832 6930 +6056 6280 4127 7075 5974 +6057 4617 5782 3853 6599 +6058 4459 6314 4113 5821 +6059 5685 6461 6023 4580 +6060 4041 7306 4426 5755 +6061 5448 6806 5849 3961 +6062 5297 147 148 6944 +6063 6384 4950 5685 4580 +6064 5027 5862 6295 3971 +6065 5427 7333 4324 7036 +6066 5645 4108 6384 5992 +6067 5803 5583 7297 4378 +6068 5572 4186 5845 6928 +6069 6250 6248 3977 6249 +6070 4346 5704 6564 4921 +6071 4414 5858 4960 6293 +6072 6391 5746 6602 4504 +6073 6710 6592 5823 4003 +6074 5806 4971 6597 6523 +6075 6431 5820 6340 3987 +6076 4621 5615 4206 6868 +6077 5924 7412 5628 4573 +6078 6421 4107 7114 5684 +6079 4880 6159 4432 6876 +6080 5437 4444 5604 6914 +6081 5715 4564 7349 6136 +6082 5444 5651 7334 4586 +6083 4475 6279 4108 5869 +6084 6228 6263 6337 4674 +6085 3933 7245 5051 6167 +6086 5898 7482 6207 4522 +6087 4928 6723 4028 5854 +6088 5623 6263 6228 4159 +6089 4299 6887 4599 5610 +6090 3862 6860 4622 6001 +6091 6775 5057 6914 5604 +6092 6791 4781 6805 5631 +6093 4681 6299 4135 6726 +6094 4437 5613 7041 4179 +6095 4322 7154 4813 6961 +6096 7213 5040 5148 4238 +6097 4507 6647 4870 7242 +6098 4464 5337 7039 5674 +6099 4036 6505 4685 5987 +6100 6535 5626 6867 4620 +6101 6300 4791 7304 5705 +6102 5050 5705 7304 3952 +6103 4223 6670 4848 6284 +6104 4578 6990 4212 5601 +6105 3959 6679 5047 6778 +6106 4493 6566 4790 6466 +6107 6876 3996 7448 5694 +6108 5495 4498 6056 6449 +6109 6868 5626 6988 4621 +6110 6510 6055 6253 4688 +6111 5597 3967 6686 6252 +6112 6930 4134 7337 5602 +6113 6521 4109 5778 4669 +6114 4419 6792 4221 5649 +6115 5141 6747 6076 4581 +6116 5642 7084 4348 6085 +6117 5391 4232 6689 6870 +6118 4219 6788 4648 5753 +6119 5774 7105 6200 4677 +6120 5558 6230 5969 4524 +6121 5412 7452 5773 4348 +6122 4793 6916 4726 6618 +6123 4579 6441 4952 5621 +6124 4789 6613 4910 5874 +6125 5186 5669 4254 6827 +6126 3888 5841 5023 6557 +6127 6258 4053 3919 5936 +6128 4670 6708 4370 5832 +6129 4182 5187 7452 5412 +6130 4354 4901 7275 5595 +6131 4123 6961 4813 6551 +6132 5565 3992 6276 5951 +6133 6930 5602 7465 4385 +6134 6564 5600 7371 4001 +6135 4994 4753 7371 5600 +6136 5170 4710 5903 6952 +6137 4244 5054 7383 6259 +6138 4554 6103 4005 6349 +6139 5389 5997 6692 4496 +6140 6318 4655 5977 6240 +6141 4162 6613 4789 6196 +6142 5320 6887 4299 5668 +6143 4383 5802 4826 6455 +6144 6476 5603 7141 4833 +6145 5197 5740 4542 6600 +6146 5914 5741 6601 4543 +6147 4819 6632 4183 5897 +6148 4134 7106 4830 6634 +6149 6622 4804 7041 5613 +6150 3963 6890 4457 5892 +6151 5463 3979 6606 5962 +6152 4372 6937 3982 5627 +6153 6562 5602 7337 4646 +6154 4502 6962 3868 5625 +6155 4426 6054 7398 5755 +6156 5415 4172 5793 6483 +6157 7202 6874 7151 5718 +6158 6354 5718 7151 3973 +6159 4435 5918 6306 4920 +6160 4679 6970 5078 6636 +6161 4011 5460 7418 6142 +6162 3902 7336 5171 6413 +6163 6535 3935 6988 5626 +6164 6261 4843 7431 5608 +6165 194 195 5732 6703 +6166 5742 4402 7497 5614 +6167 5879 6111 7396 4091 +6168 4458 5643 6907 4917 +6169 3942 6647 4507 5737 +6170 5638 6186 6654 4798 +6171 5340 5365 3944 6738 +6172 5124 4080 7157 5612 +6173 5946 4150 5957 6510 +6174 4559 6315 4816 6316 +6175 5742 5614 7168 4536 +6176 4524 5969 4154 6277 +6177 5670 6267 6593 4702 +6178 6477 3877 6967 5634 +6179 6771 7427 6317 4199 +6180 4688 6432 3992 6304 +6181 4641 5823 4373 6676 +6182 5152 6790 149 150 +6183 139 140 6405 5931 +6184 5526 4540 6457 6068 +6185 4739 6732 4843 6261 +6186 4642 6179 4615 6138 +6187 7117 5619 7430 4761 +6188 124 7293 123 6 +6189 6307 4431 6387 5890 +6190 5145 174 175 6755 +6191 4361 5878 6494 5134 +6192 5811 6494 5878 3958 +6193 4869 5749 4196 6665 +6194 5195 7144 4930 6402 +6195 4663 6349 4616 6192 +6196 4518 6552 7312 4008 +6197 6176 6370 6776 4187 +6198 5804 4482 7161 6651 +6199 3952 5988 4708 6904 +6200 4498 6855 4197 5678 +6201 5518 4136 7022 6286 +6202 4326 7471 5198 6379 +6203 7116 5864 6906 4738 +6204 4273 5255 7276 5876 +6205 4234 4640 4904 4142 +6206 4742 6332 4602 6333 +6207 6397 5624 7386 4319 +6208 5394 6973 5958 4479 +6209 5551 6383 5991 4601 +6210 4317 5937 4876 6353 +6211 4786 6251 4532 6072 +6212 4765 6637 4673 5799 +6213 5089 5772 6610 3885 +6214 6127 6253 6055 4169 +6215 5325 6024 7421 4045 +6216 4231 5107 4416 5159 +6217 4429 7032 4948 6410 +6218 7009 5000 7026 5784 +6219 3999 6742 4674 6342 +6220 4437 4179 7202 5718 +6221 6717 4803 7084 5642 +6222 6222 4504 6602 5853 +6223 5637 4528 5882 5880 +6224 5403 7438 3895 6475 +6225 4683 7446 6169 5035 +6226 5359 5941 6977 4395 +6227 3921 5632 7403 4937 +6228 4554 6349 4663 5957 +6229 4869 7064 4668 5749 +6230 4618 6884 4977 6201 +6231 5113 5928 4633 6818 +6232 4350 5824 7004 5278 +6233 4718 3880 7034 5302 +6234 6858 4775 6547 6244 +6235 4364 7324 4158 5633 +6236 6891 4066 6235 7259 +6237 5283 3962 7419 6231 +6238 6704 4462 5708 6852 +6239 3865 6426 4780 7037 +6240 7103 4880 6876 5694 +6241 6627 4148 7082 5654 +6242 3983 6229 4999 7073 +6243 7014 6312 6010 4941 +6244 5711 5743 7269 4457 +6245 7199 7123 6378 4926 +6246 164 5714 6918 163 +6247 4634 6161 4781 7042 +6248 5681 6474 6385 4137 +6249 6354 4704 6407 5929 +6250 4674 6742 4675 6228 +6251 5199 6245 3868 6962 +6252 6205 4755 6815 5722 +6253 4198 6285 4887 6856 +6254 5342 7358 3859 6369 +6255 5523 6209 6721 4574 +6256 4734 6499 4181 6423 +6257 4773 7342 4138 5908 +6258 5946 5734 7042 4150 +6259 4282 6406 4764 6036 +6260 7440 4478 6683 5984 +6261 4952 5976 4277 6540 +6262 7228 5822 7081 4756 +6263 6850 4411 7081 5822 +6264 5178 7138 4752 7146 +6265 4560 6694 5334 6693 +6266 4081 6512 5413 6767 +6267 3965 4717 5128 4511 +6268 5624 6471 4935 7386 +6269 4257 4620 6702 5344 +6270 6778 5047 6106 7290 +6271 5974 4593 6350 6280 +6272 6387 4000 6765 5890 +6273 4739 6344 4156 6732 +6274 6479 5651 7294 4966 +6275 5443 5682 6998 4391 +6276 6479 3882 7334 5651 +6277 5037 6954 5009 5688 +6278 4387 5819 6605 5085 +6279 7377 4905 6921 5830 +6280 6468 6139 6322 4659 +6281 5567 138 139 6863 +6282 6319 4774 7303 6017 +6283 4681 6726 4644 5953 +6284 4799 6292 4719 6627 +6285 4996 6234 4343 6175 +6286 4029 5039 5040 7213 +6287 6365 6932 4809 5701 +6288 5126 5738 3946 6842 +6289 6059 5804 6651 4174 +6290 4386 7250 4176 5659 +6291 5730 5991 6383 4104 +6292 6023 5992 6384 4580 +6293 5491 4406 7264 6112 +6294 4614 5990 4137 6385 +6295 6574 6268 6233 4695 +6296 4463 5311 7333 5837 +6297 7273 6920 6446 4278 +6298 4590 6079 4119 6302 +6299 3866 7024 4763 6379 +6300 4748 6460 4946 7018 +6301 5465 129 130 7048 +6302 4506 6090 5245 6913 +6303 5568 7176 5672 4912 +6304 5714 4976 6439 6918 +6305 163 6918 6439 162 +6306 5445 4014 7431 4843 +6307 3915 4943 6748 5885 +6308 5446 6324 4480 7029 +6309 4109 6521 4451 5895 +6310 4098 6307 4604 6458 +6311 6959 4598 7179 6182 +6312 4094 6572 4544 5855 +6313 5103 6788 4219 7234 +6314 5528 4829 4082 6382 +6315 3920 4220 6816 6490 +6316 5691 7300 7008 4849 +6317 5399 6075 4725 6585 +6318 4575 6807 4783 6246 +6319 5529 7035 5941 3855 +6320 6537 7066 7041 4804 +6321 6390 4686 6342 6223 +6322 4197 6623 4988 6346 +6323 6750 6025 6374 4143 +6324 4819 5897 4233 6530 +6325 4525 4347 6525 6527 +6326 4086 5711 4457 6976 +6327 5864 110 111 6906 +6328 6268 6574 6575 4309 +6329 5527 4419 7329 5671 +6330 3969 5865 4739 7153 +6331 6759 4876 5706 6992 +6332 5426 6053 6683 4478 +6333 4412 5843 4756 7080 +6334 4811 6800 5073 6850 +6335 6099 7104 6735 4118 +6336 4280 4863 7017 6122 +6337 4638 6052 3890 6395 +6338 6026 6025 6750 4520 +6339 5147 5788 4358 6740 +6340 4872 6777 4193 7310 +6341 6657 6654 6857 4736 +6342 6810 4164 6813 5763 +6343 4884 6153 4371 6680 +6344 4440 6501 184 5934 +6345 6087 6745 6549 4772 +6346 131 132 5783 6945 +6347 5820 5676 7243 4430 +6348 5554 7292 142 143 +6349 4128 6598 4885 7065 +6350 4551 6716 3857 5812 +6351 7376 5754 7441 4400 +6352 6104 4818 7441 5754 +6353 7448 4831 7103 5694 +6354 5522 4957 6538 7394 +6355 6458 5970 6471 4098 +6356 4675 6743 4239 5599 +6357 5374 6317 6134 4499 +6358 4073 5944 7331 5219 +6359 6529 7331 5944 4287 +6360 4212 6326 4807 6991 +6361 5975 4486 6486 5960 +6362 5358 4657 6888 5833 +6363 7204 5209 7169 6060 +6364 5649 6195 7329 4419 +6365 4420 5681 4137 7326 +6366 5674 6016 7319 4464 +6367 4259 7327 4394 5679 +6368 5786 4119 6079 6709 +6369 3960 7424 5237 6993 +6370 5525 6450 6933 3990 +6371 4795 6734 4690 6760 +6372 4627 5101 7456 5683 +6373 6844 5898 6588 4827 +6374 5350 7057 6040 4505 +6375 6000 4462 6704 5836 +6376 4793 6618 4144 6330 +6377 3986 6872 4452 5767 +6378 5107 4231 7016 4665 +6379 4631 6878 4007 5922 +6380 5634 6615 4557 6477 +6381 3978 6497 6695 7025 +6382 4590 6362 7426 5317 +6383 5101 4627 6233 6268 +6384 4734 6569 4676 6417 +6385 4282 6884 5360 7379 +6386 4526 5942 4839 7166 +6387 5063 6785 4277 5976 +6388 3896 6396 5056 7178 +6389 6776 6370 6635 4689 +6390 5702 6489 6044 4629 +6391 5141 6023 6461 4140 +6392 4788 6650 4012 6416 +6393 6417 6338 6499 4734 +6394 6233 4627 6761 5827 +6395 5243 4375 3965 5302 +6396 5289 6719 3908 7453 +6397 6655 5838 6768 4671 +6398 4160 5907 4472 5536 +6399 5956 4617 7181 5801 +6400 6188 4798 6654 6657 +6401 5889 4438 7000 4072 +6402 4056 5950 6548 5238 +6403 5620 4021 7381 5770 +6404 5685 4039 6657 4503 +6405 6488 7329 6195 4998 +6406 114 115 5834 7047 +6407 4891 6614 4012 6650 +6408 6461 5966 6764 4140 +6409 4195 6809 4741 6150 +6410 3876 6427 7403 5632 +6411 4191 6105 4639 6408 +6412 5932 7125 4035 6447 +6413 4873 6096 5029 6412 +6414 5465 5179 7372 7449 +6415 4685 6506 4183 7074 +6416 4731 6538 4957 6880 +6417 6157 4659 6322 4698 +6418 6725 7285 5717 5111 +6419 5762 7043 5770 4352 +6420 6087 4579 6772 6955 +6421 5165 4509 6427 6093 +6422 6748 5745 7090 4336 +6423 6569 4734 6423 6219 +6424 6900 5100 5712 7466 +6425 4776 7012 4260 6583 +6426 5334 4611 6684 5894 +6427 5077 6119 4592 6802 +6428 4504 6222 4779 6516 +6429 3975 7291 4776 5971 +6430 5647 4405 7175 6254 +6431 5325 5728 7341 4377 +6432 4772 6441 4579 6087 +6433 6337 6223 6342 4674 +6434 4686 6364 3999 6342 +6435 3973 6206 4704 6354 +6436 6351 5733 7162 3950 +6437 6125 136 137 7203 +6438 5183 6676 4373 5908 +6439 5178 5893 4314 7138 +6440 6751 4248 7170 5932 +6441 6390 6264 6363 4686 +6442 5428 4622 6740 6565 +6443 4549 6714 4013 5887 +6444 4759 5411 7215 5873 +6445 6157 4698 6360 4180 +6446 6213 3973 7151 5739 +6447 7438 4464 7319 5910 +6448 4106 6442 4634 6117 +6449 4399 6081 4867 6465 +6450 6140 3981 5968 6595 +6451 4778 6724 5924 6705 +6452 6453 5866 7202 4179 +6453 4371 6820 4747 6680 +6454 5301 5862 5027 6871 +6455 6849 6577 7040 4844 +6456 4268 7295 5364 6989 +6457 4243 6919 5099 6851 +6458 4585 6008 4575 7177 +6459 5703 6446 7469 4428 +6460 4701 6476 4833 6674 +6461 4964 7376 4400 6017 +6462 6263 4661 6653 6337 +6463 3991 6805 4781 6161 +6464 4679 6636 4170 6043 +6465 4853 6733 4854 7311 +6466 3897 7222 5061 6425 +6467 5957 4663 6055 6510 +6468 6743 4723 5148 4239 +6469 6323 4932 7250 7128 +6470 5558 3970 6892 6230 +6471 4129 6646 4608 5949 +6472 6185 6318 6626 4656 +6473 5288 7178 5056 6978 +6474 3938 6083 4822 7009 +6475 4926 6378 4224 7053 +6476 5188 6139 6468 4662 +6477 4855 3965 4511 4510 +6478 4321 4973 5849 6806 +6479 5538 7455 179 180 +6480 5925 7464 144 145 +6481 5061 7222 5297 6944 +6482 157 158 7136 5982 +6483 7191 5982 7136 4817 +6484 4689 6073 4655 6776 +6485 7301 5118 6567 6221 +6486 5620 5770 7043 4652 +6487 6307 5890 6765 4604 +6488 6800 4811 6754 6753 +6489 5229 7031 6701 7020 +6490 6560 4013 6714 6879 +6491 6253 6127 6474 4645 +6492 4838 5492 7007 5938 +6493 7258 4038 7108 6012 +6494 5254 4384 6782 5999 +6495 5722 4644 6726 6205 +6496 4554 5957 4150 6662 +6497 5818 6445 6686 4826 +6498 6252 6686 6445 4727 +6499 6614 7038 6361 4623 +6500 6145 6357 6345 4737 +6501 5305 4594 7075 7076 +6502 7090 5745 7369 4651 +6503 6894 4890 7129 5765 +6504 4731 6636 5078 6409 +6505 6284 7261 7149 4223 +6506 4535 6178 4864 6454 +6507 7355 5772 7116 4738 +6508 6549 4676 6264 6390 +6509 5397 6270 4465 7420 +6510 6007 4637 6411 6226 +6511 5848 6168 6170 4422 +6512 4662 6468 4167 6722 +6513 4659 6452 4167 6468 +6514 4686 6363 4700 6364 +6515 4435 4920 6890 5844 +6516 5018 6764 4619 7108 +6517 4759 5873 4038 7144 +6518 6447 4596 6751 5932 +6519 5363 7005 4777 7322 +6520 5696 6345 6357 4654 +6521 5862 4587 6392 6295 +6522 5138 4233 6731 6830 +6523 4534 6144 4693 6611 +6524 4127 6280 6350 4863 +6525 4088 7365 5060 7269 +6526 4602 5913 4190 6783 +6527 4962 6642 6975 5964 +6528 6549 6745 6417 4676 +6529 5080 6331 3892 7061 +6530 5390 6167 5051 7474 +6531 112 5933 6906 111 +6532 6052 4638 6949 5947 +6533 6077 4809 6932 6164 +6534 6414 6164 6932 4537 +6535 5458 4850 6559 6589 +6536 6616 3988 6589 6559 +6537 6233 5913 6864 4695 +6538 4800 6785 5063 6933 +6539 6489 4534 6611 6044 +6540 4591 5876 7276 5347 +6541 176 5980 6755 175 +6542 6714 4549 6928 5845 +6543 4824 6787 4088 5930 +6544 4860 7140 4177 6156 +6545 4844 4026 4845 6966 +6546 6212 4635 6658 7195 +6547 148 149 6790 5996 +6548 6145 4128 7065 6357 +6549 5675 5981 6721 3879 +6550 6822 6434 6581 4744 +6551 6318 6185 6776 4655 +6552 7480 6063 7397 3930 +6553 6075 4175 6249 4725 +6554 4645 6276 3992 6432 +6555 7009 5784 7169 3938 +6556 3965 4375 6526 4717 +6557 5595 7275 4684 6902 +6558 5134 5940 6917 4361 +6559 3975 6088 4722 7291 +6560 7191 4817 7236 5777 +6561 6964 6171 6653 4806 +6562 5348 4680 6948 6260 +6563 5011 7091 4355 6667 +6564 5116 6290 7222 3897 +6565 5693 4619 6764 5966 +6566 7352 4023 7148 5794 +6567 4932 7402 4713 6899 +6568 4802 6058 4132 7086 +6569 5506 6671 6728 4901 +6570 6570 4720 6382 5800 +6571 7078 5008 7186 4745 +6572 4028 6723 4548 6004 +6573 3856 6143 6960 5312 +6574 4961 4379 6960 6143 +6575 6826 5938 7493 4203 +6576 6831 6830 6731 4878 +6577 5426 4478 7440 6669 +6578 5178 7146 5899 3863 +6579 5750 5899 7146 4752 +6580 4954 6951 4553 6545 +6581 4384 6089 5239 6631 +6582 6689 5083 6319 6870 +6583 6385 4673 6637 6173 +6584 4222 7096 5062 6668 +6585 7128 6151 6596 4566 +6586 4833 6893 4166 6674 +6587 6566 4493 6815 6176 +6588 6370 6176 6815 4755 +6589 4772 6964 4200 6441 +6590 4968 6687 4630 6688 +6591 4969 7245 3933 6283 +6592 5110 3896 7178 6271 +6593 4492 7034 3880 5839 +6594 4074 5479 7238 6030 +6595 6406 4732 6347 4122 +6596 5347 6747 5141 7206 +6597 4550 6141 4131 6591 +6598 4570 6640 5276 6641 +6599 4877 5798 4878 6731 +6600 5592 6327 7252 4782 +6601 5080 7061 4841 6769 +6602 5067 6243 4485 6514 +6603 6256 5813 7335 4792 +6604 6352 6586 6292 4226 +6605 6626 6021 6896 4656 +6606 4329 5901 7416 4945 +6607 189 190 7416 5901 +6608 7004 5824 7323 4163 +6609 6449 4767 7323 5824 +6610 3852 5875 4553 6951 +6611 5054 6709 4614 7391 +6612 5519 4449 7443 5779 +6613 4433 6697 5004 6066 +6614 3893 6296 5122 7058 +6615 4492 6873 3898 6003 +6616 6606 4691 6823 5962 +6617 4704 6206 4608 6646 +6618 5417 7000 4438 6149 +6619 3962 4902 5999 6782 +6620 6891 4821 6550 7208 +6621 4260 7220 5074 6583 +6622 5652 7395 6633 3900 +6623 6575 6576 6843 4309 +6624 4143 6038 4930 6750 +6625 7175 4405 7183 6051 +6626 5200 4192 6688 6823 +6627 6240 5977 6822 4489 +6628 3904 7498 4991 6678 +6629 5006 6484 4565 6346 +6630 4162 6821 4910 6613 +6631 5851 4563 7401 6022 +6632 4671 6768 4145 6034 +6633 5990 4614 6709 6079 +6634 5972 4766 7029 6031 +6635 5338 6031 7029 4480 +6636 4928 5854 5041 7218 +6637 5953 6499 6338 4681 +6638 4831 6481 4390 7344 +6639 6495 4153 7231 5840 +6640 6832 4878 5798 4234 +6641 3886 6146 4605 6839 +6642 4716 5277 7462 5993 +6643 7391 6173 6637 3984 +6644 5522 7394 5803 4378 +6645 4522 6504 7466 5712 +6646 3942 7021 4870 6647 +6647 6935 4848 6670 7130 +6648 5018 6288 4140 6764 +6649 4751 6710 4639 6105 +6650 5790 6720 6148 4340 +6651 5081 6473 4533 6905 +6652 6339 4589 6469 7339 +6653 5431 7488 7414 4947 +6654 6240 4117 6626 6318 +6655 4888 6459 3948 6543 +6656 6956 4954 6816 7207 +6657 4427 7050 4112 5877 +6658 4784 6506 4685 6505 +6659 4747 6910 4884 6680 +6660 6961 4123 5900 5401 +6661 5301 6871 4203 7493 +6662 7171 3997 6833 7230 +6663 6671 4110 7361 6728 +6664 4270 5440 7385 6415 +6665 7279 6415 7385 4447 +6666 6919 5954 6970 4679 +6667 5781 6076 6747 3929 +6668 5838 6655 6737 4186 +6669 6656 4869 6737 6655 +6670 4166 6264 4676 6569 +6671 4022 6257 4818 6929 +6672 4712 6491 4746 6492 +6673 4223 7149 5105 6553 +6674 3894 7181 5021 7356 +6675 3908 6454 4864 7453 +6676 5459 5810 4164 7459 +6677 7145 5593 4743 6648 +6678 5476 4361 6917 6050 +6679 5998 4072 7000 4603 +6680 6376 5840 7231 4705 +6681 4082 3920 7463 6382 +6682 6192 4616 6394 6677 +6683 5799 6677 6394 4765 +6684 3951 7491 5081 7107 +6685 4255 6772 4579 6082 +6686 7357 4668 7064 6130 +6687 5755 7398 6481 5079 +6688 4885 6898 4807 5983 +6689 4637 6522 4228 6411 +6690 5117 7477 3956 6100 +6691 5660 6291 6815 4493 +6692 6018 7028 6098 4653 +6693 3880 4075 4879 6941 +6694 6569 6219 6674 4166 +6695 6423 4701 6674 6219 +6696 4554 6662 4781 6791 +6697 5771 5846 7263 4196 +6698 4846 7058 5122 6915 +6699 7277 5031 7070 7071 +6700 5787 7174 5865 3969 +6701 4175 6075 5399 4397 +6702 6295 6392 7142 4842 +6703 4711 6374 4904 4640 +6704 6768 5963 7224 4145 +6705 4263 7359 5268 6940 +6706 6171 6549 6390 6223 +6707 4148 7346 6328 4992 +6708 4883 7456 4310 7201 +6709 4019 7052 4802 6163 +6710 6019 6061 6865 4252 +6711 5471 6515 7491 3951 +6712 4176 6859 5092 6046 +6713 4844 7040 6753 4812 +6714 7493 5938 7007 4883 +6715 5737 7051 6643 4693 +6716 5110 5883 7167 4380 +6717 6537 4804 6622 6883 +6718 5166 6047 3983 7073 +6719 4821 6724 4778 6550 +6720 6360 4698 6859 6498 +6721 6214 4847 4280 6122 +6722 6301 7111 6586 4975 +6723 4888 6334 4501 7351 +6724 4712 6492 4228 6522 +6725 6983 6070 6829 3864 +6726 7480 3930 6896 6021 +6727 6655 4671 7328 6656 +6728 4192 6028 7378 6463 +6729 6533 6463 7378 4351 +6730 6216 5096 7147 7487 +6731 5884 4491 6287 7100 +6732 5987 6912 6903 4036 +6733 6963 4711 6903 6912 +6734 6299 4681 6338 7155 +6735 6288 5018 5873 7215 +6736 6575 6574 6573 4696 +6737 6099 4489 6822 7104 +6738 4055 5128 4717 5203 +6739 4450 6020 3952 6904 +6740 7085 4022 6929 6002 +6741 6183 6071 7354 3932 +6742 5258 4866 7354 6071 +6743 5127 6699 4487 6289 +6744 7270 6533 6861 4858 +6745 5367 6861 6533 4351 +6746 158 159 6078 7136 +6747 4730 5909 4380 7167 +6748 5381 4613 7003 3963 +6749 5685 4950 7011 4039 +6750 6635 6205 6726 4135 +6751 5766 4089 7270 6172 +6752 3997 5138 6830 6831 +6753 6481 7398 6054 4390 +6754 6579 4613 5961 7019 +6755 6959 3966 7062 4598 +6756 6699 4678 6886 4487 +6757 6667 6873 6070 5011 +6758 6248 6250 7446 4683 +6759 5993 6581 6434 4716 +6760 5776 4623 6361 6889 +6761 7170 4805 7125 5932 +6762 5095 5922 4007 7147 +6763 5450 4187 6776 6185 +6764 4036 6903 5598 7092 +6765 6886 4678 6982 4087 +6766 6171 6223 6337 6653 +6767 5667 4812 6753 6754 +6768 6205 6635 6370 4755 +6769 5319 4256 7197 6067 +6770 7125 4805 6067 7197 +6771 6083 6453 7066 4822 +6772 4839 4840 4344 5857 +6773 6381 6380 6110 4092 +6774 7263 7367 6665 4196 +6775 5935 7283 5593 4768 +6776 4758 6170 5304 3974 +6777 6574 4695 6864 6573 +6778 5360 6217 6760 4133 +6779 7040 6577 6491 4409 +6780 6849 4746 6491 6577 +6781 7085 6002 6639 4949 +6782 4273 5876 4591 7366 +6783 5476 7221 6135 4834 +6784 7433 5165 7368 6796 +6785 5717 4979 6796 7368 +6786 4740 6777 4872 7131 +6787 6920 6372 7469 6446 +6788 6672 5104 6578 6561 +6789 4015 5653 4093 5586 +6790 6363 6893 6420 4700 +6791 3927 6620 6967 5580 +6792 5647 7265 6389 4961 +6793 5093 6389 7265 3901 +6794 4505 6040 3869 7450 +6795 4445 6038 4143 6963 +6796 4417 7056 4974 5985 +6797 4825 6236 4514 7068 +6798 5835 5973 7109 4106 +6799 6125 7403 6427 4509 +6800 4754 7137 6524 7340 +6801 6594 4560 7236 6078 +6802 4801 6182 4105 7102 +6803 5447 6146 5247 7347 +6804 4649 6840 4807 6326 +6805 4750 6625 4910 6821 +6806 5319 6067 5120 7306 +6807 7284 4139 7001 6166 +6808 6478 4569 7355 5933 +6809 5995 6561 6578 4597 +6810 5775 6490 6816 3874 +6811 5195 4209 7028 6018 +6812 6587 7271 6073 4689 +6813 4932 6323 4007 7402 +6814 5251 5967 4177 7140 +6815 5028 6658 4635 6659 +6816 6332 3972 6573 6864 +6817 4242 6488 4998 7282 +6818 5861 6131 7264 4406 +6819 3999 6364 4700 7411 +6820 4296 6207 7482 5454 +6821 6360 6498 6899 4713 +6822 5268 7359 5226 6330 +6823 4319 6706 5003 6397 +6824 6844 4184 7482 5898 +6825 7210 4815 6400 7284 +6826 3962 5906 4600 7419 +6827 5854 5943 7255 5041 +6828 4446 5221 7210 7083 +6829 5328 7083 7210 4250 +6830 4395 6977 5077 6885 +6831 6725 4586 6464 7285 +6832 7322 4777 7006 6184 +6833 6745 6087 6955 3998 +6834 5252 6834 7047 5034 +6835 113 114 7047 6834 +6836 4533 6104 4161 6939 +6837 6975 6818 4055 5964 +6838 6518 6012 7108 4619 +6839 5493 6283 3933 6968 +6840 7079 5231 6422 7095 +6841 7053 4224 7400 6652 +6842 4399 6652 7400 5246 +6843 5067 3895 7438 5910 +6844 4224 6378 4690 6734 +6845 3865 7037 5142 7097 +6846 7033 4909 6957 7272 +6847 5543 7272 6957 4665 +6848 5911 4025 7002 6102 +6849 4243 6851 4739 6261 +6850 5279 6554 5066 6946 +6851 6906 5933 7355 4738 +6852 6898 4885 6598 6643 +6853 6504 7115 6121 5052 +6854 4871 6892 3970 6180 +6855 4004 6424 4750 6536 +6856 5646 6464 4586 7334 +6857 145 146 7429 5925 +6858 4191 6408 4740 6746 +6859 4178 4862 3920 4082 +6860 6335 6049 7068 4514 +6861 4689 6635 4135 6587 +6862 7176 4043 7472 6045 +6863 6854 6126 7090 4651 +6864 4733 6999 5077 6977 +6865 4765 7055 3984 6637 +6866 6408 6377 6777 4740 +6867 4136 6282 5237 6812 +6868 6287 4867 6480 7100 +6869 5081 6905 4925 7107 +6870 6611 4693 6643 6598 +6871 6820 5952 7315 4747 +6872 4982 6733 4853 4173 +6873 4508 6231 7419 5517 +6874 6094 6095 7358 4706 +6875 6338 6417 6745 3998 +6876 7121 4193 6777 6377 +6877 6859 4698 6322 7382 +6878 4672 6355 5151 7484 +6879 6522 6102 7002 4712 +6880 6258 5936 4220 4312 +6881 4852 6736 4851 7025 +6882 4971 4345 7142 6392 +6883 6024 4667 6114 7421 +6884 5792 6022 7401 4215 +6885 3889 6094 4706 7015 +6886 7383 3984 7055 6074 +6887 7484 6062 7187 4672 +6888 6387 4741 6809 6814 +6889 4985 6404 4258 7478 +6890 4969 6689 4232 7098 +6891 6977 5941 7035 4733 +6892 7417 6669 7440 5012 +6893 4349 6874 5164 6437 +6894 7019 5961 7361 4110 +6895 5504 6430 4582 6942 +6896 6047 7414 6066 3983 +6897 6949 3894 7451 5947 +6898 7318 5204 7268 6718 +6899 5745 3858 6162 7369 +6900 4295 5566 4907 6503 +6901 5031 7320 4246 7188 +6902 4715 6411 4228 6862 +6903 3868 6245 7308 5424 +6904 6549 6171 6964 4772 +6905 6865 6061 7127 4694 +6906 4174 6972 5399 6585 +6907 4533 6939 4925 6905 +6908 7445 6188 7011 5181 +6909 7346 4719 7111 6328 +6910 5223 6878 4459 6435 +6911 6518 4520 7258 6012 +6912 5319 7306 4041 7241 +6913 6200 4690 6378 7123 +6914 5073 7316 4712 7002 +6915 5021 6599 4558 7307 +6916 7312 4567 6216 5536 +6917 6187 6339 7339 4229 +6918 5566 6030 7238 4907 +6919 5491 6757 6629 4217 +6920 4318 6584 7443 5211 +6921 4459 6878 4631 6314 +6922 6521 6006 7300 4451 +6923 4647 7325 4129 6000 +6924 5438 4832 6305 7132 +6925 6262 4516 7132 6305 +6926 3907 5098 7338 5995 +6927 4750 6424 4814 6625 +6928 5498 4404 7281 4837 +6929 3880 5086 7307 6448 +6930 4107 6101 4636 7114 +6931 7236 4817 7136 6078 +6932 5756 6130 7064 3985 +6933 6547 4709 7444 6244 +6934 5171 7351 4501 6413 +6935 4124 5305 7076 7077 +6936 5105 7017 4863 6350 +6937 4964 6017 7303 4009 +6938 4031 6924 4556 6372 +6939 5934 7308 6245 4440 +6940 4297 5174 6980 7305 +6941 6525 6526 4053 6527 +6942 6780 7319 6016 4610 +6943 6449 6056 7237 4767 +6944 6269 3943 7237 6056 +6945 4010 6995 4677 6200 +6946 6657 4039 7011 6188 +6947 5244 6439 4976 7278 +6948 6720 4697 7150 6148 +6949 3946 6825 4865 6746 +6950 6006 7426 6362 3954 +6951 5775 3874 6545 7129 +6952 7227 5993 7462 5186 +6953 5634 6967 6620 4595 +6954 4650 7328 4671 6034 +6955 4806 7101 4200 6964 +6956 131 6373 7048 130 +6957 6899 6498 6859 4176 +6958 4258 6911 4927 6811 +6959 6521 4669 7426 6006 +6960 6264 4166 6893 6363 +6961 7232 4237 6916 5026 +6962 4605 6475 4939 6839 +6963 3890 4272 3948 6459 +6964 5695 4582 6881 6436 +6965 5942 4526 6508 6987 +6966 4953 6801 4680 6542 +6967 4827 6749 4857 6844 +6968 6339 6187 7310 4814 +6969 7456 7370 6597 4310 +6970 5159 6225 7016 4231 +6971 4258 6811 4959 7478 +6972 4722 6310 4202 6934 +6973 4685 7074 4810 6190 +6974 6818 6975 7468 5113 +6975 6642 4332 7468 6975 +6976 5894 4672 7187 3883 +6977 4896 6029 7264 6131 +6978 7250 4386 6151 7128 +6979 6313 4918 6436 6881 +6980 7409 7274 6707 4266 +6981 4703 5407 7332 6091 +6982 5777 7236 4560 6693 +6983 6411 4715 7190 6226 +6984 5383 7237 3943 6097 +6985 5278 6936 6761 3994 +6986 4887 7135 5088 6856 +6987 4293 6371 4556 6924 +6988 4648 6142 7418 5401 +6989 5483 3924 6624 7348 +6990 4574 5019 7348 6624 +6991 6760 4690 6200 7105 +6992 6094 4513 7257 6095 +6993 6505 6836 6837 4784 +6994 5432 4924 6013 5433 +6995 4938 6116 7242 4155 +6996 4208 7186 4762 6985 +6997 4401 4947 7414 6047 +6998 6007 6226 7190 4100 +6999 5036 6985 4762 6986 +7000 5461 7134 6316 4816 +7001 4886 6194 6316 7134 +7002 6504 4522 6207 7115 +7003 6073 7271 7280 3989 +7004 7387 4194 7051 6358 +7005 4649 6589 3988 6840 +7006 7199 4010 6200 7123 +7007 4934 7291 4722 6934 +7008 4532 6286 7022 5214 +7009 6035 5147 6860 4610 +7010 4206 6867 5626 6868 +7011 7260 4785 6045 7472 +7012 5963 6247 6248 4683 +7013 4254 6091 7332 5188 +7014 4922 7194 6195 5649 +7015 5950 4056 6195 7194 +7016 4741 7200 4413 6150 +7017 6810 6152 7459 4164 +7018 5459 7459 6152 7305 +7019 6292 6586 7111 4719 +7020 4016 5272 7444 6762 +7021 5696 4654 7214 6616 +7022 5183 5955 4103 6938 +7023 5660 4158 7119 6394 +7024 4865 6825 4796 6827 +7025 4461 7380 197 6084 +7026 4041 7216 5222 7241 +7027 6953 7195 6658 4201 +7028 5712 5100 7314 7317 +7029 7257 3859 7358 6095 +7030 4821 6817 4205 6724 +7031 6361 7038 6546 4163 +7032 5312 6062 7484 3856 +7033 4020 7317 4953 6542 +7034 4520 6750 4930 7258 +7035 7270 4858 7476 6172 +7036 5766 6172 7476 4562 +7037 5938 6826 6797 4838 +7038 4322 7268 5204 7154 +7039 5307 7423 4836 7387 +7040 6285 4198 6420 7141 +7041 6893 4833 7141 6420 +7042 6629 6757 6803 4981 +7043 5491 6112 6803 6757 +7044 5701 4076 7253 6365 +7045 4884 6910 3857 6716 +7046 5277 4716 7280 6781 +7047 6182 7179 6846 4105 +7048 5756 4577 7357 6130 +7049 4193 7121 4910 6625 +7050 126 127 7372 6124 +7051 5760 4111 6136 7349 +7052 5316 3857 6910 6558 +7053 5703 4428 7483 6739 +7054 5954 4797 6883 6622 +7055 6953 5008 6212 7195 +7056 5839 7289 6519 4931 +7057 5540 6519 7289 4558 +7058 4879 3949 6552 4518 +7059 3956 7477 4653 6098 +7060 5182 7350 4082 4829 +7061 6301 3957 6328 7111 +7062 4048 6177 5398 7298 +7063 4422 7177 4575 6246 +7064 6744 7240 6943 5022 +7065 5848 4422 6246 7229 +7066 4834 6135 4265 7399 +7067 136 6125 7433 135 +7068 6916 4793 7120 5026 +7069 6942 6107 7494 4062 +7070 5098 5247 6325 7296 +7071 4116 5304 6170 6168 +7072 6883 4218 7010 6537 +7073 7068 6797 6826 4825 +7074 4787 6705 5924 4573 +7075 164 165 6399 7063 +7076 4777 5366 6568 7006 +7077 4089 6687 4968 7270 +7078 4972 3995 5806 6523 +7079 3984 7383 5054 7391 +7080 5173 7117 4761 7118 +7081 5238 7393 4356 7163 +7082 3852 5402 7330 6272 +7083 5307 6116 4033 7423 +7084 4807 6898 4194 6991 +7085 5574 7229 6246 4783 +7086 4997 7079 7095 4042 +7087 7103 4388 7408 4880 +7088 4883 7201 5301 7493 +7089 4997 4389 5206 4882 +7090 3889 7015 5146 7422 +7091 6428 4824 6872 7266 +7092 6385 6173 7391 4614 +7093 4760 6968 3933 6555 +7094 5016 6284 4848 7192 +7095 4859 6984 4266 6707 +7096 4748 7018 4170 6880 +7097 5954 4034 7226 6970 +7098 6409 5078 6970 7226 +7099 7475 6289 7193 4204 +7100 5157 7080 4756 7081 +7101 6408 4639 7121 6377 +7102 4323 5438 7132 6485 +7103 5025 5282 6368 7198 +7104 7055 4765 6394 7119 +7105 4120 6189 4761 7430 +7106 5647 6254 3901 7265 +7107 5126 6735 4744 7152 +7108 7312 6552 3949 4721 +7109 6191 5125 7171 7230 +7110 6792 4801 7102 6433 +7111 4632 7004 4163 6546 +7112 4816 6315 4245 7248 +7113 6898 6643 7051 4194 +7114 6633 7395 7067 5172 +7115 4266 6984 7246 5082 +7116 6235 4892 6817 7259 +7117 5808 5809 6013 4924 +7118 4593 5385 7185 6553 +7119 6184 7006 6568 3959 +7120 5638 4798 6188 7445 +7121 5176 4626 7491 6515 +7122 4507 5307 7387 6358 +7123 6614 4891 6546 7038 +7124 5920 4745 6278 7273 +7125 4171 7160 7161 5282 +7126 4038 7258 4930 7144 +7127 6910 4747 7315 6558 +7128 4757 6972 4174 6651 +7129 4889 6367 3891 7436 +7130 5995 7338 3861 6561 +7131 5149 6762 7444 4709 +7132 4920 6976 4457 6890 +7133 4481 6196 4789 7454 +7134 4409 7316 5073 6800 +7135 5038 6617 5041 6996 +7136 7010 4822 7066 6537 +7137 3890 6459 4888 7351 +7138 7174 4911 7014 6897 +7139 7494 6897 7014 4941 +7140 7102 4792 7335 6433 +7141 6442 7225 6922 4978 +7142 6453 4179 7041 7066 +7143 4984 6272 7330 4362 +7144 5158 6681 7098 4232 +7145 7474 5051 7098 6681 +7146 4505 7450 5300 6220 +7147 6009 6485 7132 4516 +7148 4252 6865 4987 7189 +7149 5090 4374 7296 6325 +7150 4934 7012 4776 7291 +7151 4312 4220 3920 4862 +7152 7160 4757 6651 7161 +7153 4822 7010 5000 7009 +7154 5086 7356 5021 7307 +7155 5875 4984 6779 7288 +7156 4063 6685 7221 5476 +7157 6135 7221 6685 4544 +7158 5286 4011 6341 7432 +7159 5891 7447 7432 6341 +7160 5759 5857 4344 5882 +7161 5272 4281 6244 7444 +7162 7271 5161 6781 7280 +7163 3972 6648 4743 6649 +7164 5427 7036 6664 4658 +7165 4994 6882 6987 4753 +7166 5942 6987 6882 5001 +7167 4150 7042 4781 6662 +7168 6162 7417 6348 4502 +7169 6772 4970 7155 6955 +7170 6660 6297 7381 4021 +7171 4087 6982 5414 6775 +7172 6523 6597 7370 4972 +7173 181 182 6769 7045 +7174 6139 4006 7382 6322 +7175 5052 4253 7466 6504 +7176 4092 4847 6214 6381 +7177 4896 4895 6752 4298 +7178 5119 6142 4648 6788 +7179 5090 5800 6382 7463 +7180 118 6398 7286 117 +7181 6289 7475 7343 5127 +7182 4806 7321 5063 7101 +7183 6193 4886 7244 6609 +7184 6673 4626 6609 7244 +7185 5099 7153 4739 6851 +7186 4899 7219 5216 7415 +7187 7318 6718 7130 4835 +7188 4744 6581 4247 7152 +7189 4716 6434 3989 7280 +7190 5356 6356 7479 3873 +7191 6367 4889 7479 6356 +7192 6784 5860 4895 5861 +7193 6002 6473 4211 6639 +7194 6407 4704 6646 7363 +7195 4768 5593 7145 5327 +7196 7384 4264 7447 6375 +7197 6132 4660 7131 4872 +7198 5538 7045 6769 4841 +7199 4732 6298 3932 7489 +7200 4617 6599 5021 7181 +7201 3892 6348 7417 5012 +7202 4762 7186 5008 6953 +7203 6181 7005 7473 4122 +7204 6338 3998 6955 7155 +7205 7289 6448 7307 4558 +7206 4222 7093 5016 7096 +7207 7130 6670 7185 4835 +7208 4010 7254 4956 6995 +7209 5065 7143 4842 7142 +7210 6444 3990 7321 4661 +7211 6568 7341 6421 5156 +7212 6070 6983 7091 5011 +7213 7475 4204 7208 6550 +7214 7128 4566 7487 6323 +7215 6792 6433 7335 4221 +7216 4836 7139 4212 6991 +7217 4743 5593 7283 4125 +7218 6517 5010 6862 7099 +7219 5903 7099 6862 4228 +7220 5983 7214 7065 4885 +7221 4908 7133 5189 7495 +7222 4314 6698 4752 7138 +7223 5298 7485 7021 3942 +7224 7384 7021 7485 5133 +7225 7253 4860 7481 6365 +7226 6932 6365 7481 4537 +7227 5474 6682 7313 3860 +7228 5444 7313 6682 4916 +7229 6935 7130 6718 4188 +7230 4080 5124 7339 6469 +7231 6463 6533 7270 4968 +7232 4409 6491 4712 7316 +7233 4535 6462 5044 6178 +7234 4224 6734 4795 7400 +7235 4471 7405 6444 5623 +7236 4991 7498 6520 5757 +7237 4428 6766 5205 7483 +7238 4700 6420 4198 7411 +7239 4892 6630 4246 7320 +7240 5772 7355 4569 6610 +7241 5041 6617 4213 7218 +7242 5349 7360 5079 6481 +7243 6553 7185 6670 4223 +7244 4740 7131 3946 6746 +7245 6505 4036 7092 6836 +7246 6837 6836 7092 4877 +7247 6735 7104 6822 4744 +7248 6576 4972 7370 6843 +7249 7408 7072 7070 4240 +7250 4264 5286 7432 7447 +7251 4586 6725 7313 5444 +7252 4279 6900 5068 7490 +7253 4949 6639 4816 7248 +7254 6987 6508 7371 4753 +7255 5031 7069 4240 7070 +7256 4007 6878 5223 7402 +7257 7345 4906 6590 7410 +7258 3935 7209 7210 5221 +7259 5280 4815 7210 7209 +7260 7072 4882 7071 7070 +7261 4901 6728 4684 7275 +7262 4926 7053 4912 6969 +7263 4303 6819 7199 5228 +7264 7199 6819 7254 4010 +7265 4956 7254 6819 5227 +7266 6744 3908 6719 7240 +7267 4969 7098 5051 7245 +7268 4814 7310 4193 6625 +7269 4176 7250 4932 6899 +7270 6653 4661 7321 4806 +7271 4158 7324 5046 7119 +7272 3854 7388 4898 6628 +7273 4934 6934 4933 7012 +7274 4914 7223 5118 7301 +7275 6218 3977 6248 6247 +7276 6051 4986 7422 7175 +7277 6254 7175 7422 5146 +7278 5560 6556 7409 4808 +7279 5924 6724 4205 7412 +7280 4148 6627 4719 7346 +7281 5692 7091 6983 6853 +7282 4120 7430 4709 6547 +7283 4959 7302 4958 7478 +7284 6922 7225 7109 4928 +7285 4047 7173 4775 6858 +7286 7263 4983 6879 7367 +7287 5162 6520 7498 3904 +7288 5157 7390 4782 6608 +7289 7457 6869 7314 4279 +7290 7317 7314 6869 4953 +7291 6406 4122 7473 4764 +7292 4205 7413 5144 7412 +7293 7343 7475 6550 4778 +7294 5155 4346 4906 7345 +7295 5042 7362 4269 7267 +7296 5111 3860 7313 6725 +7297 6879 4707 6665 7367 +7298 4778 6705 4081 7343 +7299 4604 6765 5064 6310 +7300 6891 7259 6817 4821 +7301 6891 7208 7302 4959 +7302 3954 7247 4987 7008 +7303 4037 5751 3939 4142 +7304 4093 5528 6909 4185 +7305 6284 5016 7093 7261 +7306 5948 4958 7302 7193 +7307 3997 6831 4878 6832 +7308 4942 6713 4889 7436 +7309 4715 6989 5364 7190 +7310 3880 6941 7451 5086 +7311 5447 7388 3854 6773 +7312 4626 6673 5081 7491 +7313 4092 5879 5586 5587 +7314 4241 7180 4868 7013 +7315 6387 6814 7495 4000 +7316 6719 4874 6943 7240 +7317 4668 7357 5534 6846 +7318 190 191 7067 7416 +7319 4184 6844 4857 7392 +7320 4304 6958 5189 7407 +7321 4170 6636 4731 6880 +7322 5100 6900 4279 7314 +7323 7456 5101 6843 7370 +7324 5030 7069 5031 7188 +7325 5785 7246 6984 4859 +7326 142 7292 4846 6915 +7327 6222 6739 7483 4779 +7328 4214 6996 5041 7255 +7329 6357 7065 7214 4654 +7330 5144 7413 4892 7320 +7331 4205 6817 4892 7413 +7332 4996 7085 4949 7248 +7333 6860 3862 6780 4610 +7334 3990 6933 5063 7321 +7335 4175 4510 6250 6249 +7336 4771 4770 6386 3851 +7337 6442 4106 7109 7225 +7338 5254 7184 4828 7165 +7339 5042 7267 4909 7033 +7340 5123 4251 7434 5163 +7341 5985 4974 7434 4251 +7342 4081 6705 4787 6512 +7343 6368 4237 7232 7198 +7344 6909 5528 6382 4720 +7345 5450 6896 3930 7397 +7346 6809 4908 7495 6814 +7347 4764 7473 7005 5363 +7348 4894 4893 4049 6752 +7349 6730 4588 7230 6833 +7350 7198 7232 7274 5025 +7351 5076 7362 5042 7256 +7352 5032 7189 4987 7247 +7353 4194 7387 4836 6991 +7354 4696 5191 6576 6575 +7355 6375 4870 7021 7384 +7356 6847 4185 6909 6848 +7357 4958 6931 4985 7478 +7358 6707 7274 7232 5026 +7359 7208 4204 7193 7302 +7360 7312 5536 4472 4008 +7361 5439 7112 4447 7385 +7362 7395 4945 7416 7067 +7363 5074 7220 4980 7327 +7364 4675 6742 4723 6743 +7365 5074 7327 4259 7467 +7366 4857 6749 5140 7088 +7367 4184 7392 5216 7219 +7368 6824 5320 7352 7377 +7369 6842 3946 7131 4660 +7370 7072 7408 4388 4881 +7371 5381 7353 7389 4261 +7372 5794 4905 7377 7352 +7373 5892 5060 7389 7353 +7374 5060 7365 5071 7389 +7375 3932 7354 5330 7489 +7376 3894 7356 5086 7451 +7377 4026 5667 6946 5066 +7378 4992 7234 4219 7492 +7379 4270 5629 3993 5912 +7380 5628 7277 7071 3937 +7381 5113 7468 5074 7467 +7382 6063 7480 7457 5207 +7383 6869 7457 7480 5020 +7384 7075 4823 7077 7076 +7385 5587 3851 6386 4280 +7386 4894 5433 6013 4893 +7387 6168 6169 7446 4116 +7388 6956 7207 5936 3919 +7389 6525 4347 7340 6524 +7390 6816 4220 5936 7207 +7391 6833 4919 4235 6730 +7392 6543 3948 6847 6848 +7393 3997 6832 4919 6833 +7394 4185 4771 3851 4093 +7395 5586 4093 3851 5587 +7396 6733 4982 3928 4854 +7397 5989 4854 3928 6029 +7398 4239 3947 4518 4008 +7399 4518 3947 4728 4216 +7400 5040 3947 4239 5148 +7401 6752 4049 3949 4298 +7402 4879 4075 4298 3949 +7403 6847 4271 4845 3955 +7404 6526 6525 5187 3964 +7405 5302 3965 4855 4718 +7406 4853 7311 4175 3978 +7407 4175 4397 6497 3978 +7408 4044 4216 3993 4272 +7409 4728 4416 3993 4216 +7410 4272 3993 5629 4271 +7411 5912 3993 4416 4415 +7412 4612 3995 5191 6580 +7413 4612 5807 5806 3995 +7414 4964 4009 5097 4897 +7415 5653 4015 5698 5296 +7416 5029 4015 5586 6238 +7417 5667 4026 4844 4812 +7418 5751 4037 5881 4052 +7419 6730 4042 5369 4588 +7420 6039 4052 4344 4840 +7421 5882 4344 4052 5881 +7422 6258 4052 6039 4525 +7423 3919 4053 6526 4375 +7424 6527 4053 6258 4525 +7425 5203 4333 5964 4055 +7426 6818 4633 5128 4055 +7427 7452 5187 6525 4071 +7428 4896 4298 4075 4856 +7429 4115 4083 4555 4787 +7430 5057 4555 4083 6914 +7431 6923 5295 4083 5780 +7432 5182 5296 5780 4083 +7433 5586 5879 4091 6238 +7434 5587 4280 4847 4092 +7435 5528 4093 5653 4829 +7436 6966 4102 5170 6952 +7437 6966 4845 5275 4102 +7438 7312 4721 5097 4114 +7439 4389 4178 4115 5206 +7440 4082 7350 4115 4178 +7441 7446 6250 4510 4116 +7442 4743 4125 4770 4126 +7443 4770 4125 4769 5545 +7444 7283 5935 4769 4125 +7445 3955 4612 6580 4126 +7446 6386 4127 4863 4280 +7447 4037 4142 4904 4625 +7448 4982 4173 4981 6803 +7449 7311 4855 4510 4175 +7450 6275 4182 5559 4455 +7451 3964 5187 4182 6275 +7452 4794 4214 7255 4749 +7453 4728 5039 4214 4794 +7454 4728 4794 4215 4416 +7455 7401 5159 4416 4215 +7456 4794 4749 5792 4215 +7457 6832 4234 4235 4919 +7458 7213 4238 7425 5088 +7459 4008 4472 5599 4239 +7460 4951 5440 4270 5912 +7461 5629 5275 4845 4271 +7462 4037 4275 4529 5881 +7463 5638 4529 4275 6186 +7464 4037 4625 6857 4275 +7465 6275 4455 6981 4333 +7466 5964 4333 6981 4962 +7467 7340 4347 4545 4994 +7468 6695 6497 4397 5400 +7469 4963 6981 4455 5579 +7470 5942 5001 4840 4839 +7471 4347 4525 5002 4545 +7472 6666 5002 4525 6039 +7473 6666 6242 4545 5002 +7474 3974 4585 7177 4758 +7475 3974 7182 6203 4585 +7476 7230 4588 5369 6191 +7477 6025 4624 4904 6374 +7478 4624 6266 4625 4904 +7479 6266 5831 6857 4625 +7480 5107 4665 6957 5015 +7481 5097 4721 4893 4897 +7482 4124 7077 4823 5545 +7483 7166 4839 5857 5260 +7484 5273 5274 4853 4851 +7485 4718 4855 7311 4856 +7486 4854 5989 4856 7311 +7487 4997 4882 7072 4881 +7488 6752 4895 5860 4894 +7489 5432 5433 4894 4923 +7490 4856 5989 6029 4896 +7491 7196 4964 4897 5809 +7492 5065 5807 5066 6554 +7493 4114 6644 5095 5904 +7494 7279 5169 5275 6415 +7495 4083 5295 5437 6914 +7496 5202 200 5 105 +3 1 5 3698 +7497 3143 1152 1878 770 6792 4801 5527 4419 +7498 2885 322 2428 1160 6534 3971 6077 4809 +7499 446 2202 914 1472 4095 5851 4563 5121 +7500 1310 3242 417 3162 4959 6891 4066 6811 +7501 1059 1800 463 2228 4708 5449 4112 5877 +7502 502 1526 653 1527 4151 5175 4302 5176 +7503 2037 776 3068 1154 5686 4425 6717 4803 +7504 2209 411 1616 2099 5858 4060 5265 5748 +7505 1150 1706 363 2767 4799 5355 4012 6416 +7506 573 3444 1394 3378 4222 7093 5043 7027 +7507 2895 1877 428 1291 6544 5526 4077 4940 +7508 1316 1621 786 3228 4965 5270 4435 6877 +7509 720 1608 635 1673 4369 5257 4284 5322 +7510 427 3604 1602 2959 4076 7253 5251 6608 +7511 77 76 1488 2437 173 172 5137 6086 +7512 232 2203 3189 1921 3881 5852 6838 5570 +7513 1148 3234 569 1426 4797 6883 4218 5075 +7514 214 1529 2393 3121 3863 5178 6042 6770 +7515 2097 2953 604 1419 5746 6602 4253 5068 +7516 463 1800 1078 2416 4112 5449 4727 6065 +7517 274 1721 772 1496 3923 5370 4421 5145 +7518 842 1438 498 2235 4491 5087 4147 5884 +7519 1263 1919 3003 3404 4912 5568 6652 7053 +7520 1704 1400 707 3514 5353 5049 4356 7163 +7521 641 1813 3617 2779 4290 5462 7266 6428 +7522 55 2460 1487 56 151 6109 5136 152 +7523 1749 1245 1274 2266 5398 4894 4923 5915 +7524 13 12 2469 1566 109 108 6118 5215 +7525 1421 261 1306 1753 5070 3910 4955 5402 +7526 841 2109 256 1530 4490 5758 3905 5179 +7527 510 1950 1026 2579 4159 5599 4675 6228 +7528 3473 1394 3444 3612 7122 5043 7093 7261 +7529 3473 2473 2565 1394 7122 6122 6214 5043 +7530 752 1298 474 2251 4401 4947 4123 5900 +7531 2648 842 2638 1226 6297 4491 6287 4875 +7532 1851 2412 3478 375 5500 6061 7127 4024 +7533 882 1291 428 2632 4531 4940 4077 6281 +7534 2204 1403 604 2953 5853 5052 4253 6602 +7535 1364 3271 2723 382 5013 6920 6372 4031 +7536 765 1637 362 1811 4414 5286 4011 5460 +7537 1137 1849 764 2399 4786 5498 4413 6048 +7538 2229 1185 1827 712 5878 4834 5476 4361 +7539 223 1890 730 1467 3872 5539 4379 5116 +7540 2023 581 3047 1622 5672 4230 6696 5271 +7541 1897 1564 2803 518 5546 5213 6452 4167 +7542 2242 848 1470 2692 5891 4497 5119 6341 +7543 1394 1038 1384 3378 5043 4687 5033 7027 +7544 3305 1360 1650 391 6954 5009 5299 4040 +7545 81 1639 2277 82 177 5288 5926 178 +7546 1384 1038 1340 3325 5033 4687 4989 6974 +7547 511 2258 822 2001 4160 5907 4471 5650 +7548 925 1874 215 1933 4574 5523 3864 5582 +7549 1339 618 1212 2974 4988 4267 4861 6623 +7550 1657 3786 1341 641 5306 7435 4990 4290 +7551 2035 733 1809 1201 5684 4382 5458 4850 +7552 824 1825 3300 2152 4473 5474 6949 5801 +7553 2710 500 1678 1350 6359 4149 5327 4999 +7554 1307 3364 592 1578 4956 7013 4241 5227 +7555 1178 1699 371 2939 4827 5348 4020 6588 +7556 835 1898 546 1840 4484 5547 4195 5489 +7557 2744 1108 3323 1751 6393 4757 6972 5400 +7558 1008 3239 1661 2739 4657 6888 5310 6388 +7559 777 2405 1720 2542 4426 6054 5369 6191 +7560 2870 1282 1874 269 6519 4931 5523 3918 +7561 1571 1643 1642 659 5220 5292 5291 4308 +7562 2787 507 1796 1269 6436 4156 5445 4918 +7563 3189 1859 201 2330 6838 5508 3850 5979 +7564 2755 1545 416 1922 6404 5194 4065 5571 +7565 1177 2169 504 2153 4826 5818 4153 5802 +7566 1606 2117 1519 624 5255 5766 5168 4273 +7567 1853 261 1421 1976 5502 3910 5070 5625 +7568 2664 1258 2854 291 6313 4907 6503 3940 +7569 1852 1561 24 23 5501 5210 120 119 +7570 3204 2043 226 1833 6853 5692 3875 5482 +7571 1862 2388 2108 218 5511 6037 5757 3867 +7572 2242 3798 2726 506 5891 7447 6375 4155 +7573 957 1828 700 2090 4606 5477 4349 5739 +7574 2996 255 1513 2083 6645 3904 5162 5732 +7575 784 1939 1782 3839 4433 5588 5431 7488 +7576 2802 1280 1814 330 6451 4929 5463 3979 +7577 71 1613 2549 72 167 5262 6198 168 +7578 368 3282 1336 1920 4017 6931 4985 5569 +7579 945 1978 723 1656 4594 5627 4372 5305 +7580 2112 1494 2694 516 5761 5143 6343 4165 +7581 3384 1393 1638 452 7033 5042 5287 4101 +7582 724 3374 1564 1897 4373 7023 5213 5546 +7583 1393 3607 619 1638 5042 7256 4268 5287 +7584 1973 1251 1961 650 5622 4900 5610 4299 +7585 677 1667 1114 2730 4326 5316 4763 6379 +7586 966 1531 353 2530 4615 5180 4002 6179 +7587 2808 291 2854 1287 6457 3940 6503 4936 +7588 2578 934 1460 1881 6227 4583 5109 5530 +7589 103 102 1636 2883 199 198 5285 6532 +7590 2826 1290 1772 246 6475 4939 5421 3895 +7591 2853 1224 1731 402 6502 4873 5380 4051 +7592 2664 1269 1796 643 6313 4918 5445 4292 +7593 1832 834 2484 1329 5481 4483 6133 4978 +7594 612 1732 835 1840 4261 5381 4484 5489 +7595 3463 620 2270 1790 7112 4269 5919 5439 +7596 2890 1682 714 2007 6539 5331 4363 5656 +7597 840 2218 1053 2450 4489 5867 4702 6099 +7598 725 3647 1449 1960 4374 7296 5098 5609 +7599 2470 943 1528 2012 6119 4592 5177 5661 +7600 3325 367 1623 1384 6974 4016 5272 5033 +7601 947 1489 584 2881 4596 5138 4233 6530 +7602 2665 1559 2273 982 6314 5208 5922 4631 +7603 2288 1227 2057 3114 5937 4876 5706 6763 +7604 907 2723 3820 1908 4556 6372 7469 5557 +7605 998 2963 2892 1858 4647 6612 6541 5507 +7606 569 3361 1351 2207 4218 7010 5000 5856 +7607 777 2542 1476 2365 4426 6191 5125 6014 +7608 2794 902 2807 1293 6443 4551 6456 4942 +7609 637 1831 2765 2515 4286 5480 6414 6164 +7610 1239 2685 239 2894 4888 6334 3888 6543 +7611 3337 1387 3107 301 6986 5036 6756 3950 +7612 1302 1791 3736 1790 4951 5440 7385 5439 +7613 2941 421 1907 1257 6590 4070 5556 4906 +7614 223 2309 830 1444 3872 5958 4479 5093 +7615 3059 1987 408 1719 6708 5636 4057 5368 +7616 769 2207 1351 3377 4418 5856 5000 7026 +7617 3209 1709 632 2595 6858 5358 4281 6244 +7618 3213 1066 2071 1361 6862 4715 5720 5010 +7619 3817 3251 1419 604 7466 6900 5068 4253 +7620 2991 1997 1466 921 6640 5646 5115 4570 +7621 500 2684 1093 1678 4149 6333 4742 5327 +7622 384 2505 997 2038 4033 6154 4646 5687 +7623 320 2138 1297 3504 3969 5787 4946 7153 +7624 430 1744 742 1794 4079 5393 4391 5443 +7625 2580 1350 1678 1119 6229 4999 5327 4768 +7626 553 3285 1284 2769 4202 6934 4933 6418 +7627 247 1990 731 1461 3896 5639 4380 5110 +7628 1902 2734 2323 785 5551 6383 5972 4434 +7629 1683 651 2954 3140 5332 4300 6603 6789 +7630 248 1467 730 1981 3897 5116 4379 5630 +7631 3412 1747 1363 243 7061 5396 5012 3892 +7632 2420 2431 355 1694 6069 6080 4004 5343 +7633 312 1799 874 1962 3961 5448 4523 5611 +7634 212 1960 1449 3689 3861 5609 5098 7338 +7635 2882 203 1753 1306 6531 3852 5402 4955 +7636 2989 450 1928 1324 6638 4099 5577 4973 +7637 2979 743 2070 1249 6628 4392 5719 4898 +7638 2235 498 1961 1251 5884 4147 5610 4900 +7639 2972 938 2743 1322 6621 4587 6392 4971 +7640 2350 503 2791 1253 5999 4152 6440 4902 +7641 3125 1617 923 2370 6774 5266 4572 6019 +7642 2286 1355 2580 1119 5935 5004 6229 4768 +7643 2821 1776 93 92 6470 5425 189 188 +7644 1086 2610 595 2219 4735 6259 4244 5868 +7645 90 2616 1785 91 186 6265 5434 187 +7646 1923 1075 2410 3279 5572 4724 6059 6928 +7647 3370 2930 540 1365 7019 6579 4189 5014 +7648 2194 761 3494 1808 5843 4410 7143 5457 +7649 3354 2195 786 1621 7003 5844 4435 5270 +7650 2092 217 1721 2265 5741 3866 5370 5914 +7651 3012 2372 3831 1371 6661 6021 7480 5020 +7652 2038 671 1914 1289 5687 4320 5563 4938 +7653 508 1609 1217 3790 4157 5258 4866 7439 +7654 422 3488 2875 2876 4071 7137 6524 6525 +7655 1892 1696 1436 738 5541 5345 5085 4387 +7656 2866 1527 653 1822 6515 5176 4302 5471 +7657 1744 430 2348 2954 5393 4079 5997 6603 +7658 1274 1783 302 1822 4923 5432 3951 5471 +7659 3222 554 2654 1378 6871 4203 6303 5027 +7660 573 3378 1384 3019 4222 7027 5033 6668 +7661 3270 2305 3109 594 6919 5954 6758 4243 +7662 1909 321 1617 1339 5558 3970 5266 4988 +7663 3830 1860 3064 1240 7479 5509 6713 4889 +7664 1266 3134 953 1992 4915 6783 4602 5641 +7665 1815 668 2288 2362 5464 4317 5937 6011 +7666 1267 3687 1522 2746 4916 7336 5171 6395 +7667 527 2010 1151 2397 4176 5659 4800 6046 +7668 2377 2617 2182 492 6026 6266 5831 4141 +7669 541 3134 1266 2247 4190 6783 4915 5896 +7670 3026 1341 2074 639 6675 4990 5723 4288 +7671 3787 1293 2807 242 7436 4942 6456 3891 +7672 2019 374 2387 1328 5668 4023 6036 4977 +7673 2922 1646 1788 795 6571 5295 5437 4444 +7674 1621 1316 540 2930 5270 4965 4189 6579 +7675 367 3325 1340 2008 4016 6974 4989 5657 +7676 2703 1913 419 1406 6352 5562 4068 5055 +7677 1259 1840 546 3160 4908 5489 4195 6809 +7678 2672 572 2000 1273 6321 4221 5649 4922 +7679 850 2860 1272 1907 4499 6509 4921 5556 +7680 2528 653 1526 1684 6177 4302 5175 5333 +7681 605 2075 1013 1539 4254 5724 4662 5188 +7682 2190 843 3180 1282 5839 4492 6829 4931 +7683 1845 1638 758 3461 5494 5287 4407 7110 +7684 1708 3562 3523 652 5357 7211 7172 4301 +7685 1009 1442 409 3015 4658 5091 4058 6664 +7686 428 1817 1420 2632 4077 5466 5069 6281 +7687 2514 370 1810 1295 6163 4019 5459 4944 +7688 2110 878 1490 1835 5759 4527 5139 5484 +7689 2895 1291 1870 800 6544 4940 5519 4449 +7690 268 1290 3190 2921 3917 4939 6839 6570 +7691 3152 558 3220 1304 6801 4207 6869 4953 +7692 627 2796 1078 1800 4276 6445 4727 5449 +7693 2620 294 3475 1457 6269 3943 7124 5106 +7694 1164 3288 1555 3505 4813 6937 5204 7154 +7695 915 1861 472 2066 4564 5510 4121 5715 +7696 3383 2176 746 1710 7032 5825 4395 5359 +7697 2133 1373 1882 717 5782 5022 5531 4366 +7698 70 1837 1613 71 166 5486 5262 167 +7699 870 1833 226 1967 4519 5482 3875 5616 +7700 1762 2659 2409 483 5411 6308 6058 4132 +7701 2698 1819 635 1681 6347 5468 4284 5330 +7702 3602 1490 878 1611 7251 5139 4527 5260 +7703 2616 1346 1775 278 6265 4995 5424 3927 +7704 589 3776 1482 2237 4238 7425 5131 5886 +7705 3276 640 2514 1295 6925 4289 6163 4944 +7706 2397 628 1758 1443 6046 4277 5407 5092 +7707 2274 657 3129 1356 5923 4306 6778 5005 +7708 1568 654 1463 3811 5217 4303 5112 7460 +7709 323 2999 1093 2683 3972 6648 4742 6332 +7710 747 2086 872 1895 4396 5735 4521 5544 +7711 2647 1604 2813 244 6296 5253 6462 3893 +7712 2520 1386 1941 774 6169 5035 5590 4423 +7713 1475 1759 2583 710 5124 5408 6232 4359 +7714 1859 276 3064 1860 5508 3925 6713 5509 +7715 1702 651 1683 2983 5351 4300 5332 6632 +7716 2644 539 3286 1311 6293 4188 6935 4960 +7717 1968 1559 2665 464 5617 5208 6314 4113 +7718 1901 1660 1757 658 5550 5309 5406 4307 +7719 2613 1839 419 2656 6262 5488 4068 6305 +7720 90 89 1346 2616 186 185 4995 6265 +7721 3785 1514 1792 332 7434 5163 5441 3981 +7722 826 2095 744 2220 4475 5744 4393 5869 +7723 3480 2126 725 1241 7129 5775 4374 4890 +7724 417 2586 979 1774 4066 6235 4628 5423 +7725 1384 1623 632 3019 5033 5272 4281 6668 +7726 1869 1420 1817 645 5518 5069 5466 4294 +7727 338 3574 1469 2691 3987 7223 5118 6340 +7728 496 1941 1386 3575 4145 5590 5035 7224 +7729 1305 3302 1459 249 4954 6951 5108 3898 +7730 523 1624 781 1766 4172 5273 4430 5415 +7731 221 1743 717 1882 3870 5392 4366 5531 +7732 305 3598 1383 2713 3954 7247 5032 6362 +7733 1820 401 1727 1563 5469 4050 5376 5212 +7734 2594 1374 2352 213 6243 5023 6001 3862 +7735 3153 262 1561 1852 6802 3911 5210 5501 +7736 2127 1406 664 3240 5776 5055 4313 6889 +7737 55 54 1503 2460 151 150 5152 6109 +7738 77 2437 1496 78 173 6086 5145 174 +7739 1820 1571 1672 401 5469 5220 5321 4050 +7740 1796 365 1552 643 5445 4014 5201 4292 +7741 3594 781 1624 1625 7243 4430 5273 5274 +7742 2378 1354 1850 755 6027 5003 5499 4404 +7743 2378 327 3057 1354 6027 3976 6706 5003 +7744 3407 1325 2319 807 7056 4974 5968 4456 +7745 1057 3366 1497 3149 4706 7015 5146 6798 +7746 2797 629 1501 2054 6446 4278 5150 5703 +7747 2996 2165 229 1583 6645 5814 3878 5232 +7748 3717 1504 2409 942 7366 5153 6058 4591 +7749 2851 706 2882 1306 6500 4355 6531 4955 +7750 2633 1420 1869 487 6282 5069 5518 4136 +7751 3500 1456 3473 3612 7149 5105 7122 7261 +7752 721 2183 1465 3568 4370 5832 5114 7217 +7753 600 1699 1178 3100 4249 5348 4827 6749 +7754 3700 1318 2946 915 7349 4967 6595 4564 +7755 834 2636 1238 2484 4483 6285 4887 6133 +7756 3370 1365 3022 461 7019 5014 6671 4110 +7757 1533 3701 466 434 5182 7350 4115 4083 +7758 3259 411 2209 1311 6908 4060 5858 4960 +7759 1287 2854 646 2161 4936 6503 4295 5810 +7760 3730 2662 484 1711 7379 6311 4133 5360 +7761 273 2267 893 1665 3922 5916 4542 5314 +7762 839 1936 201 1859 4488 5585 3850 5508 +7763 2134 704 2068 1330 5783 4353 5717 4979 +7764 2957 1494 645 1818 6606 5143 4294 5467 +7765 3012 1371 3220 558 6661 5020 6869 4207 +7766 2108 1342 2007 218 5757 4991 5656 3867 +7767 838 2299 368 1543 4487 5948 4017 5192 +7768 2494 1312 1998 207 6143 4961 5647 3856 +7769 2212 2482 1247 1246 5861 6131 4896 4895 +7770 36 2134 1330 37 132 5783 4979 133 +7771 2200 716 2989 1324 5849 4365 6638 4973 +7772 3051 1675 11 10 6700 5324 107 106 +7773 563 2677 1927 3341 4212 6326 5576 6990 +7774 2110 2208 1611 878 5759 5857 5260 4527 +7775 2830 780 2115 1317 6479 4429 5764 4966 +7776 1702 2958 1664 651 5351 6607 5313 4300 +7777 428 1877 891 2480 4077 5526 4540 6129 +7778 490 1902 785 1686 4139 5551 4434 5335 +7779 3228 409 2464 1316 6877 4058 6113 4965 +7780 3123 1321 1883 606 6772 4970 5532 4255 +7781 1971 1423 1904 672 5620 5072 5553 4321 +7782 2244 665 2065 1327 5893 4314 5714 4976 +7783 2318 1344 1872 689 5967 4993 5521 4338 +7784 1743 272 1983 1587 5392 3921 5632 5236 +7785 870 1834 275 1833 4519 5483 3924 5482 +7786 3122 966 2039 1388 6771 4615 5688 5037 +7787 2944 1053 2218 1368 6593 4702 5867 5017 +7788 2194 1630 2905 761 5843 5279 6554 4410 +7789 497 2933 1226 2638 4146 6582 4875 6287 +7790 1320 2172 810 2634 4969 5821 4459 6283 +7791 1054 1758 628 2891 4703 5407 4277 6540 +7792 3424 922 2710 1350 7073 4571 6359 4999 +7793 2652 736 1913 1326 6301 4385 5562 4975 +7794 284 2906 1124 2518 3933 6555 4773 6167 +7795 3217 1413 3019 632 6866 5062 6668 4281 +7796 342 1954 834 1832 3991 5603 4483 5481 +7797 2201 716 2200 1368 5850 4365 5849 5017 +7798 1414 3452 551 2327 5063 7101 4200 5976 +7799 3717 624 1519 1525 7366 4273 5168 5174 +7800 1657 641 2780 1722 5306 4290 6429 5371 +7801 2552 650 2019 1328 6201 4299 5668 4977 +7802 3813 1537 2020 397 7462 5186 5669 4046 +7803 2868 1361 2071 578 6517 5010 5720 4227 +7804 2226 1335 2623 203 5875 4984 6272 3852 +7805 2833 875 1909 1357 6482 4524 5558 5006 +7806 1152 2533 3310 1878 4801 6182 6959 5527 +7807 3026 1802 337 1813 6675 5451 3986 5462 +7808 2337 2753 1546 560 5986 6402 5195 4209 +7809 307 2958 1161 2449 3956 6607 4810 6098 +7810 3066 1552 1929 749 6715 5201 5578 4398 +7811 1699 600 1607 2611 5348 4249 5256 6260 +7812 317 2183 1021 2022 3966 5832 4670 5671 +7813 518 3073 1102 1897 4167 6722 4751 5546 +7814 366 2049 2447 1380 4015 5698 6096 5029 +7815 709 1385 254 2139 4358 5034 3903 5788 +7816 3521 1471 2365 599 7170 5120 6014 4248 +7817 898 2165 3054 2078 4547 5814 6703 5727 +7818 2592 1337 2516 839 6241 4986 6165 4488 +7819 2253 1672 1571 659 5902 5321 5220 4308 +7820 3600 578 2071 1427 7249 4227 5720 5076 +7821 418 1850 912 2147 4067 5499 4561 5796 +7822 1979 924 1557 288 5628 4573 5206 3937 +7823 3099 2236 232 1921 6748 5885 3881 5570 +7824 319 2831 1251 1973 3968 6480 4900 5622 +7825 1804 378 2193 1615 5453 4027 5842 5264 +7826 3009 552 2087 1379 6658 4201 5736 5028 +7827 3010 1379 2274 424 6659 5028 5923 4073 +7828 1110 1762 483 2789 4759 5411 4132 6438 +7829 605 2442 1054 2020 4254 6091 4703 5669 +7830 784 3048 475 1939 4433 6697 4124 5588 +7831 2115 1635 3645 1317 5764 5284 7294 4966 +7832 1915 308 2679 1454 5564 3957 6328 5103 +7833 3274 794 2447 2049 6923 4443 6096 5698 +7834 416 1545 692 1867 4065 5194 4341 5516 +7835 1216 2075 605 3178 4865 5724 4254 6827 +7836 3778 1375 3114 1531 7427 5024 6763 5180 +7837 3779 561 3757 1532 7428 4210 7406 5181 +7838 2748 912 1850 1354 6397 4561 5499 5003 +7839 2253 868 1286 1672 5902 4517 4935 5321 +7840 2992 1816 1530 256 6641 5465 5179 3905 +7841 986 2295 638 1899 4635 5944 4287 5548 +7842 2029 849 2407 2620 5678 4498 6056 6269 +7843 2894 239 2119 3199 6543 3888 5768 6848 +7844 516 2694 1188 2602 4165 6343 4837 6251 +7845 771 2302 890 2129 4420 5951 4539 5778 +7846 1424 1943 376 3353 5073 5592 4025 7002 +7847 2907 1376 1633 522 6556 5025 5282 4171 +7848 699 1763 1154 3435 4348 5412 4803 7084 +7849 415 3206 1212 2400 4064 6855 4861 6049 +7850 1019 2100 547 2122 4668 5749 4196 5771 +7851 1836 1518 2451 640 5485 5167 6100 4289 +7852 1665 3144 1487 273 5314 6793 5136 3922 +7853 1666 274 1488 3145 5315 3923 5137 6794 +7854 1284 3363 611 2082 4933 7012 4260 5731 +7855 1548 676 1535 3821 5197 4325 5184 7470 +7856 1549 265 1536 3822 5198 3914 5185 7471 +7857 1793 685 3316 1592 5442 4334 6965 5241 +7858 883 2423 285 1565 4532 6072 3934 5214 +7859 3841 1558 715 1645 7490 5207 4364 5294 +7860 1387 2660 674 3107 5036 6309 4323 6756 +7861 2585 859 2680 1347 6234 4508 6329 4996 +7862 405 1643 658 1757 4054 5292 4307 5406 +7863 396 1676 729 1873 4045 5325 4378 5522 +7864 2092 2952 265 1549 5741 6601 3914 5198 +7865 2546 1349 1704 407 6195 4998 5353 4056 +7866 1545 3262 1278 692 5194 6911 4927 4341 +7867 3047 1579 654 1142 6696 5228 4303 4791 +7868 3343 1884 353 2057 6992 5533 4002 5706 +7869 1901 1780 2177 1660 5550 5429 5826 5309 +7870 1114 1990 1486 3375 4763 5639 5135 7024 +7871 3307 1305 249 2354 6956 4954 3898 6003 +7872 2286 1120 3048 1355 5935 4769 6697 5004 +7873 1520 1521 1061 1786 5169 5170 4710 5435 +7874 2192 1374 2594 836 5841 5023 6243 4485 +7875 2076 558 3152 1480 5725 4207 6801 5129 +7876 2218 468 2201 1368 5867 4117 5850 5017 +7877 391 1650 879 1835 4040 5299 4528 5484 +7878 1820 1563 732 3793 5469 5212 4381 7442 +7879 2141 540 1926 1401 5790 4189 5575 5050 +7880 1931 278 1775 1481 5580 3927 5424 5130 +7881 1425 2934 683 3819 5074 6583 4332 7468 +7882 2778 1396 2307 227 6427 5045 5956 3876 +7883 1360 3779 625 1650 5009 7428 4274 5299 +7884 708 1399 408 3345 4357 5048 4057 6994 +7885 2629 1364 2660 559 6278 5013 6309 4208 +7886 3159 219 1976 1421 6808 3868 5625 5070 +7887 1299 2761 256 2109 4948 6410 3905 5758 +7888 1820 658 1643 1571 5469 4307 5292 5220 +7889 717 1999 968 2133 4366 5648 4617 5782 +7890 3702 241 2746 1522 7351 3890 6395 5171 +7891 3144 1665 59 58 6793 5314 155 154 +7892 3145 74 73 1666 6794 170 169 5315 +7893 2908 267 2352 1374 6557 3916 6001 5023 +7894 3821 264 2951 1548 7470 3913 6600 5197 +7895 612 3484 1422 3740 4261 7133 5071 7389 +7896 3543 1367 2739 369 7192 5016 6388 4018 +7897 3758 1422 3484 1540 7407 5071 7133 5189 +7898 2722 1958 916 1457 6371 5607 4565 5106 +7899 2563 383 3429 1359 6212 4032 7078 5008 +7900 1793 1792 1514 685 5442 5441 5163 4334 +7901 2141 1401 2056 691 5790 5050 5705 4340 +7902 64 2945 1595 65 160 6594 5244 161 +7903 507 3083 1194 1796 4156 6732 4843 5445 +7904 2398 752 1841 1517 6047 4401 5490 5166 +7905 2370 1806 3540 603 6019 5455 7189 4252 +7906 3071 1048 3022 1365 6720 4697 6671 5014 +7907 2550 2058 446 1472 6199 5707 4095 5121 +7908 2648 3732 1438 842 6297 7381 5087 4491 +7909 3070 1771 230 1640 6719 5420 3879 5289 +7910 2527 2917 1801 538 6176 6566 5450 4187 +7911 3494 1193 2646 1808 7143 4842 6295 5457 +7912 3437 640 2451 1468 7086 4289 6100 5117 +7913 3437 1468 2789 483 7086 5117 6438 4132 +7914 1496 2437 1488 274 5145 6086 5137 3923 +7915 2712 3240 664 1734 6361 6889 4313 5383 +7916 923 1617 321 2531 4572 5266 3970 6180 +7917 1956 391 1835 1490 5605 4040 5484 5139 +7918 794 2922 1224 2447 4443 6571 4873 6096 +7919 2162 2525 1895 872 5811 6174 5544 4521 +7920 1718 711 1669 693 5367 4360 5318 4342 +7921 3775 1547 2471 311 7424 5196 6120 3960 +7922 2041 648 1525 1519 5690 4297 5174 5168 +7923 1503 273 1487 2460 5152 3922 5136 6109 +7924 2466 863 2332 1370 6115 4512 5981 5019 +7925 1991 1463 1578 592 5640 5112 5227 4241 +7926 369 3400 1705 3543 4018 7049 5354 7192 +7927 204 3294 1373 2133 3853 6943 5022 5782 +7928 3368 2473 3473 1456 7017 6122 7122 5105 +7929 386 1614 3548 3476 4035 5263 7197 7125 +7930 1956 1490 3602 681 5605 5139 7251 4330 +7931 396 1873 1099 2811 4045 5522 4748 6460 +7932 2808 2419 1821 291 6457 6068 5470 3940 +7933 3468 1970 1500 587 7117 5619 5149 4236 +7934 1774 1692 2923 616 5423 5341 6572 4265 +7935 2274 1379 2087 657 5923 5028 5736 4306 +7936 3471 1377 3058 287 7120 5026 6707 3936 +7937 1982 3142 2392 532 5631 6791 6041 4181 +7938 1922 1592 1807 686 5571 5241 5456 4335 +7939 383 1899 1250 3062 4032 5548 4899 6711 +7940 482 3014 1219 2474 4131 6663 4868 6123 +7941 1059 3255 801 2210 4708 6904 4450 5859 +7942 211 1825 824 2009 3860 5474 4473 5658 +7943 2485 421 2362 1375 6134 4070 6011 5024 +7944 3534 1502 1998 756 7183 5151 5647 4405 +7945 1415 2769 655 3309 5064 6418 4304 6958 +7946 3808 1558 3841 630 7457 5207 7490 4279 +7947 1886 3660 732 1563 5535 7309 4381 5212 +7948 3170 1578 1463 654 6819 5227 5112 4303 +7949 1030 3270 1450 2394 4679 6919 5099 6043 +7950 2204 304 2472 1403 5853 3953 6121 5052 +7951 3316 1474 2184 398 6965 5123 5833 4047 +7952 701 1843 345 1629 4350 5492 3994 5278 +7953 3597 1433 2918 2572 7246 5082 6567 6221 +7954 1886 1563 1727 719 5535 5212 5376 4368 +7955 549 3762 1482 3207 4198 7411 5131 6856 +7956 1331 2082 611 3571 4980 5731 4260 7220 +7957 3680 2022 1021 2839 7329 5671 4670 6488 +7958 2946 2491 1861 915 6595 6140 5510 4564 +7959 401 1672 1286 3737 4050 5321 4935 7386 +7960 3192 464 2172 1434 6841 4113 5821 5083 +7961 2916 2012 709 3091 6565 5661 4358 6740 +7962 2905 1416 3494 761 6554 5065 7143 4410 +7963 2813 1395 1745 244 6462 5044 5394 3893 +7964 2189 3119 2314 1033 5838 6768 5963 4682 +7965 1738 705 1252 1857 5387 4354 4901 5506 +7966 562 2990 1167 1812 4211 6639 4816 5461 +7967 3567 1573 2222 679 7216 5222 5871 4328 +7968 3522 348 1489 1767 7171 3997 5138 5416 +7969 386 3140 3043 1614 4035 6789 6692 5263 +7970 99 2083 1513 100 195 5732 5162 196 +7971 229 2070 743 1583 3878 5719 4392 5232 +7972 3305 391 1956 1388 6954 4040 5605 5037 +7973 1526 502 1265 2356 5175 4151 4914 6005 +7974 2653 941 2713 1383 6302 4590 6362 5032 +7975 2645 1381 2510 783 6294 5030 6159 4432 +7976 3846 351 3309 1540 7495 4000 6958 5189 +7977 2222 1696 1892 679 5871 5345 5541 4328 +7978 2109 3477 220 1299 5758 7126 3869 4948 +7979 2065 665 1881 1460 5714 4314 5530 5109 +7980 2464 409 1442 2061 6113 4058 5091 5710 +7981 1649 3836 3726 688 5298 7485 7375 4337 +7982 3144 3509 56 1487 6793 7158 152 5136 +7983 3145 1488 76 3510 6794 5137 172 7159 +7984 2720 1395 2529 210 6369 5044 6178 3859 +7985 2720 830 1745 1395 6369 4479 5394 5044 +7986 475 1656 723 1939 4124 5305 4372 5588 +7987 2441 260 2215 1566 6090 3909 5864 5215 +7988 2441 1566 2469 857 6090 5215 6118 4506 +7989 3729 702 1940 327 7378 4351 5589 3976 +7990 977 2960 502 1527 4626 6609 4151 5176 +7991 2727 2191 1009 1778 6376 5840 4658 5427 +7992 1303 2327 551 2792 4952 5976 4200 6441 +7993 958 2779 1175 3138 4607 6428 4824 6787 +7994 892 1818 645 1817 4541 5467 4294 5466 +7995 2568 969 3235 1711 6217 4618 6884 5360 +7996 3329 80 2331 1407 6978 176 5980 5056 +7997 1033 1923 537 2189 4682 5572 4186 5838 +7998 2117 1606 2132 913 5766 5255 5781 4562 +7999 1226 2933 972 1966 4875 6582 4621 5615 +8000 2008 1500 3113 367 5657 5149 6762 4016 +8001 1131 3388 1493 1981 4780 7037 5142 5630 +8002 689 1872 790 1871 4338 5521 4439 5520 +8003 2119 1772 1290 268 5768 5421 4939 3917 +8004 1031 2893 371 1699 4680 6542 4020 5348 +8005 303 1401 1926 2371 3952 5050 5575 6020 +8006 2564 959 2408 1735 6213 4608 6057 5384 +8007 208 2163 1081 2260 3857 5812 4730 5909 +8008 2641 825 1404 1770 6290 4474 5053 5419 +8009 3099 2096 209 1294 6748 5745 3858 4943 +8010 3295 1412 2347 52 6944 5061 5996 148 +8011 3683 1539 2490 357 7332 5188 6139 4006 +8012 2847 1397 2425 820 6496 5046 6074 4469 +8013 3066 749 1794 2033 6715 4398 5443 5682 +8014 910 3301 1253 2791 4559 6950 4902 6440 +8015 2794 1483 2163 902 6443 5132 5812 4551 +8016 3135 3155 757 2212 6784 6804 4406 5861 +8017 3439 292 3348 1491 7088 3941 6997 5140 +8018 1894 3623 3384 452 5543 7272 7033 4101 +8019 2703 1406 2127 577 6352 5055 5776 4226 +8020 1922 416 1793 1592 5571 4065 5442 5241 +8021 2053 2840 2443 462 5702 6489 6092 4111 +8022 3116 1415 3309 351 6765 5064 6958 4000 +8023 3666 2909 1667 677 7315 6558 5316 4326 +8024 2378 2379 3729 327 6027 6028 7378 3976 +8025 1999 717 1743 1587 5648 4366 5392 5236 +8026 3775 727 1991 1547 7424 4376 5640 5196 +8027 2883 666 3051 1553 6532 4315 6700 5202 +8028 3296 35 2724 1466 6945 131 6373 5115 +8029 1406 2479 1410 664 5055 6128 5059 4313 +8030 3547 512 2159 2160 7196 4161 5808 5809 +8031 2747 1407 2331 772 6396 5056 5980 4421 +8032 1921 3189 2330 2671 5570 6838 5979 6320 +8033 1584 692 1278 2017 5233 4341 4927 5666 +8034 2302 771 2032 2627 5951 4420 5681 6276 +8035 3154 1333 279 2463 6803 4982 3928 6112 +8036 3827 913 2132 1803 7476 4562 5781 5452 +8037 3538 234 1535 676 7187 3883 5184 4325 +8038 1910 1826 1757 776 5559 5475 5406 4425 +8039 2862 681 2180 1725 6511 4330 5829 5374 +8040 2505 1674 1952 718 6154 5323 5601 4367 +8041 3194 660 2619 1452 6843 4309 6268 5101 +8042 103 2883 1553 104 199 6532 5202 200 +8043 1314 2970 405 1930 4963 6619 4054 5579 +8044 468 2977 1171 2201 4117 6626 4820 5850 +8045 3445 2040 2942 1043 7094 5689 6591 4692 +8046 505 2867 1086 2219 4154 6516 4735 5868 +8047 2769 1600 2366 655 6418 5249 6015 4304 +8048 1693 3149 252 1444 5342 6798 3901 5093 +8049 2649 283 2534 1409 6298 3932 6183 5058 +8050 3296 1466 704 2134 6945 5115 4353 5783 +8051 2945 64 63 2429 6594 160 159 6078 +8052 1942 851 2118 2179 5591 4500 5767 5828 +8053 2608 1742 583 1509 6257 5391 4232 5158 +8054 2448 1410 3475 294 6097 5059 7124 3943 +8055 3316 685 1514 1474 6965 4334 5163 5123 +8056 42 41 3554 1918 138 137 7203 5567 +8057 1082 1995 613 2760 4731 5644 4262 6409 +8058 2776 775 2347 1412 6425 4424 5996 5061 +8059 1314 2555 682 2970 4963 6204 4331 6619 +8060 3193 1477 2583 1011 6842 5126 6232 4660 +8061 3766 638 2880 1567 7415 4287 6529 5216 +8062 899 3460 1279 3074 4548 7109 4928 6723 +8063 1136 2396 778 3401 4785 6045 4427 7050 +8064 218 2007 714 1596 3867 5656 4363 5245 +8065 1254 3650 1544 2553 4903 7299 5193 6202 +8066 1077 2911 364 1755 4726 6560 4013 5404 +8067 3554 2476 3754 1288 7203 6125 7403 4937 +8068 496 2385 1001 1941 4145 6034 4650 5590 +8069 3650 292 1453 1544 7299 3941 5102 5193 +8070 3837 693 1669 1730 7486 4342 5318 5379 +8071 1293 3064 276 2203 4942 6713 3925 5852 +8072 2416 1599 3401 463 6065 5248 7050 4112 +8073 3011 1423 1971 372 6660 5072 5620 4021 +8074 2740 1890 223 1444 6389 5539 3872 5093 +8075 28 2858 1654 29 124 6507 5303 125 +8076 3758 1823 3716 1422 7407 5472 7365 5071 +8077 2249 2939 2063 873 5898 6588 5712 4522 +8078 2632 1420 2633 882 6281 5069 6282 4531 +8079 3236 262 3153 1428 6885 3911 6802 5077 +8080 2439 2253 1644 326 6088 5902 5293 3975 +8081 3068 776 1757 1660 6717 4425 5406 5309 +8082 2152 2307 1396 824 5801 5956 5045 4473 +8083 3348 703 2113 1491 6997 4352 5762 5140 +8084 1757 1826 1930 405 5406 5475 5579 4054 +8085 1915 1454 848 3252 5564 5103 4497 6901 +8086 1065 2219 595 2879 4714 5868 4244 6528 +8087 2245 1023 2706 3035 5894 4672 6355 6684 +8088 2036 2812 2317 854 5685 6461 5966 4503 +8089 3299 1480 3152 1031 6948 5129 6801 4680 +8090 3057 327 1940 1591 6706 3976 5589 5240 +8091 1837 2578 1536 265 5486 6227 5185 3914 +8092 2280 788 1964 1601 5929 4437 5613 5250 +8093 380 1390 1389 3381 4029 5039 5038 7030 +8094 3533 2278 2279 984 7182 5927 5928 4633 +8095 3715 1562 2361 413 7364 5211 6010 4062 +8096 441 1912 1050 2566 4090 5561 4699 6215 +8097 2989 716 2076 1480 6638 4365 5725 5129 +8098 2255 1447 3498 1446 5904 5096 7147 5095 +8099 1218 2831 319 2432 4867 6480 3968 6081 +8100 2970 682 1644 1642 6619 4331 5293 5291 +8101 3809 1581 2223 817 7458 5230 5872 4466 +8102 2676 1441 2151 237 6325 5090 5800 3886 +8103 3411 3467 2215 260 7060 7116 5864 3909 +8104 442 2589 2590 2588 4091 6238 6239 6237 +8105 1983 227 1999 1587 5632 3876 5648 5236 +8106 2913 1435 1915 671 6562 5084 5564 4320 +8107 397 2891 1303 1972 4046 6540 4952 5621 +8108 3669 1555 3288 333 7318 5204 6937 3982 +8109 1110 2369 1546 3495 4759 6018 5195 7144 +8110 500 2710 1139 1992 4149 6359 4788 5641 +8111 3208 1087 2064 2182 6857 4736 5713 5831 +8112 1366 1302 1790 2270 5015 4951 5439 5919 +8113 1848 711 1718 412 5497 4360 5367 4061 +8114 2767 2005 2978 1150 6416 5654 6627 4799 +8115 1338 3359 1200 2559 4987 7008 4849 6208 +8116 1426 3109 2305 1148 5075 6758 5954 4797 +8117 3214 1918 3258 1268 6863 5567 6907 4917 +8118 3150 365 3782 1426 6799 4014 7431 5075 +8119 3594 524 1332 2027 7243 4173 4981 5676 +8120 740 3081 393 1348 4389 6730 4042 4997 +8121 306 1122 1121 477 3955 4771 4770 4126 +8122 2528 1684 3523 399 6177 5333 7172 4048 +8123 3286 1705 3259 1311 6935 5354 6908 4960 +8124 2291 481 2048 1485 5940 4130 5697 5134 +8125 2629 3624 3271 1364 6278 7273 6920 5013 +8126 2095 826 1884 1848 5744 4475 5533 5497 +8127 3431 763 2052 1508 7080 4412 5701 5157 +8128 2132 2427 1996 744 5781 6076 5645 4393 +8129 3566 2639 3557 656 7215 6288 7206 4305 +8130 2139 254 2386 1498 5788 3903 6035 5147 +8131 2834 960 2918 1433 6483 4609 6567 5082 +8132 3847 1600 2769 1284 7496 5249 6418 4933 +8133 3847 381 2366 1600 7496 4030 6015 5249 +8134 3632 1188 2694 1551 7281 4837 6343 5200 +8135 754 2013 799 1866 4403 5662 4448 5515 +8136 3403 1504 3331 370 7052 5153 6980 4019 +8137 2072 636 1888 1543 5721 4285 5537 5192 +8138 1245 1749 3649 2211 4894 5398 7298 5860 +8139 749 1945 430 1794 4398 5594 4079 5443 +8140 927 2059 331 2103 4576 5708 3980 5752 +8141 462 2487 935 2053 4111 6136 4584 5702 +8142 3743 1567 2880 1208 7392 5216 6529 4857 +8143 2682 791 2852 1431 6331 4440 6501 5080 +8144 469 2450 1053 2021 4118 6099 4702 5670 +8145 2331 3106 1496 772 5980 6755 5145 4421 +8146 2117 440 2041 1519 5766 4089 5690 5168 +8147 985 2512 342 1832 4634 6161 3991 5481 +8148 3666 677 3822 2303 7315 4326 7471 5952 +8149 3788 1586 2013 754 7437 5235 5662 4403 +8150 2654 2428 322 1378 6303 6077 3971 5027 +8151 2366 1823 3758 655 6015 5472 7407 4304 +8152 3690 580 1759 1475 7339 4229 5408 5124 +8153 2652 308 1915 1435 6301 3957 5564 5084 +8154 3600 1427 3713 1824 7249 5076 7362 5473 +8155 498 1438 703 2717 4147 5087 4352 6366 +8156 3339 1697 1572 286 6988 5346 5221 3935 +8157 2995 1446 2273 1559 6644 5095 5922 5208 +8158 2687 1680 2221 587 6336 5329 5870 4236 +8159 1153 2409 1504 3403 4802 6058 5153 7052 +8160 3747 1680 2687 792 7396 5329 6336 4441 +8161 2091 216 2777 1548 5740 3865 6426 5197 +8162 2092 1549 2730 217 5741 5198 6379 3866 +8163 3023 1455 2966 908 6672 5104 6615 4557 +8164 1940 702 1718 693 5589 4351 5367 4342 +8165 2236 1483 2794 232 5885 5132 6443 3881 +8166 3079 1035 1898 3712 6728 4684 5547 7361 +8167 2347 775 1503 3141 5996 4424 5152 6790 +8168 2704 668 1780 1677 6353 4317 5429 5326 +8169 250 2444 1516 3719 3899 6093 5165 7368 +8170 1991 727 1738 3322 5640 4376 5387 6971 +8171 620 3618 1260 2270 4269 7267 4909 5919 +8172 586 290 493 585 4235 3939 4142 4234 +8173 1409 3730 633 2649 5058 7379 4282 6298 +8174 601 1610 3635 3561 4250 5259 7284 7210 +8175 3224 249 1459 3018 6873 3898 5108 6667 +8176 563 1952 1674 3490 4212 5601 5323 7139 +8177 3198 536 1122 306 6847 4185 4771 3955 +8178 3433 1517 1841 499 7082 5166 5490 4148 +8179 356 2700 967 2642 4005 6349 4616 6291 +8180 2416 811 1610 1599 6065 4460 5259 5248 +8181 1143 2607 787 2823 4792 6256 4436 6472 +8182 3554 1288 272 1918 7203 4937 3921 5567 +8183 3018 1459 2882 706 6667 5108 6531 4355 +8184 3052 3371 402 1731 6701 7020 4051 5380 +8185 3538 676 1663 2413 7187 4325 5312 6062 +8186 3324 1770 1404 667 6973 5419 5053 4316 +8187 3367 1016 1894 1015 7016 4665 5543 4664 +8188 3682 1570 634 1453 7331 5219 4283 5102 +8189 2479 1839 3475 1410 6128 5488 7124 5059 +8190 2821 946 1985 1776 6470 4595 5634 5425 +8191 292 2880 3682 1453 3941 6529 7331 5102 +8192 3503 1477 2089 598 7152 5126 5738 4247 +8193 879 1650 625 1988 4528 5299 4274 5637 +8194 1491 2113 600 3100 5140 5762 4249 6749 +8195 293 1649 885 2495 3942 5298 4534 6144 +8196 856 1561 262 2571 4505 5210 3911 6220 +8197 1271 3327 437 2657 4920 6976 4086 6306 +8198 3461 758 1541 1804 7110 4407 5190 5453 +8199 2332 3072 925 1370 5981 6721 4574 5019 +8200 1261 2225 990 3472 4910 5874 4639 7121 +8201 3469 1524 2853 402 7118 5173 6502 4051 +8202 3468 587 2221 1524 7117 4236 5870 5173 +8203 2519 2520 774 2199 6168 6169 4423 5848 +8204 3710 1577 3516 614 7359 5226 7165 4263 +8205 2118 337 1802 2179 5767 3986 5451 5828 +8206 2644 765 1811 1746 6293 4414 5460 5395 +8207 2158 696 3493 1416 5807 4345 7142 5065 +8208 2841 1441 725 2126 6490 5090 4374 5775 +8209 2929 251 2003 1455 6578 3900 5652 5104 +8210 1584 2077 1867 692 5233 5726 5516 4341 +8211 2560 3072 230 1771 6209 6721 3879 5420 +8212 1499 589 2237 1074 5148 4238 5886 4723 +8213 3241 2195 3354 314 6890 5844 7003 3963 +8214 2458 2046 933 3293 6107 5695 4582 6942 +8215 1369 2224 389 3459 5018 5873 4038 7108 +8216 3159 1481 1775 219 6808 5130 5424 3868 +8217 1307 2474 1219 3364 4956 6123 4868 7013 +8218 2264 3215 2683 953 5913 6864 6332 4602 +8219 19 2185 1528 20 115 5834 5177 116 +8220 1439 3207 1482 3776 5088 6856 5131 7425 +8221 2943 2174 724 1897 6592 5823 4373 5546 +8222 2914 1641 805 2545 6563 5290 4454 6194 +8223 1213 290 586 529 4862 3939 4235 4178 +8224 1141 2817 509 1984 4790 6466 4158 5633 +8225 1828 2401 1827 414 5477 6050 5476 4063 +8226 1718 3212 1209 412 5367 6861 4858 4061 +8227 2892 2154 1934 919 6541 5803 5583 4568 +8228 3345 1590 2080 708 6994 5239 5729 4357 +8229 2504 1505 2718 242 6153 5154 6367 3891 +8230 1637 2099 1616 615 5286 5748 5265 4264 +8231 1767 1489 947 3102 5416 5138 4596 6751 +8232 3146 1483 2236 266 6795 5132 5885 3915 +8233 1196 306 963 377 4845 3955 4612 4026 +8234 833 1755 364 2238 4482 5404 4013 5887 +8235 2185 709 2012 1528 5834 4358 5661 5177 +8236 2984 251 2929 1728 6633 3900 6578 5377 +8237 2955 495 3568 1465 6604 4144 7217 5114 +8238 2701 1456 2904 944 6350 5105 6553 4593 +8239 2972 1652 2213 938 6621 5301 5862 4587 +8240 3735 615 1616 1484 7384 4264 5265 5133 +8241 3463 1824 3713 620 7112 5473 7362 4269 +8242 3507 1659 2296 1179 7156 5308 5945 4828 +8243 1083 2649 633 2757 4732 6298 4282 6406 +8244 355 2431 1117 2887 4004 6080 4766 6536 +8245 3086 469 2583 1477 6735 4118 6232 5126 +8246 2722 907 1908 1958 6371 4556 5557 5607 +8247 754 1866 447 1942 4403 5515 4096 5591 +8248 3695 1182 3454 1582 7344 4831 7103 5231 +8249 1213 663 2102 290 4862 4312 5751 3939 +8250 2086 1867 2077 872 5735 5516 5726 4521 +8251 528 2559 1200 3196 4177 6208 4849 6845 +8252 3414 68 2065 1460 7063 164 5714 5109 +8253 3584 1399 708 1716 7233 5048 4357 5365 +8254 380 3381 1900 3486 4029 7030 5549 7135 +8255 485 1789 1183 3281 4134 5438 4832 6930 +8256 2621 1461 2234 222 6270 5110 5883 3871 +8257 3828 1004 2789 1468 7477 4653 6438 5117 +8258 3753 1064 2711 1574 7402 4713 6360 5223 +8259 2918 960 2691 1469 6567 4609 6340 5118 +8260 700 3225 3502 2090 4349 6874 7151 5739 +8261 3211 973 3091 1498 6860 4622 6740 5147 +8262 929 2566 1050 2702 4578 6215 4699 6351 +8263 3050 1029 3118 1478 6699 4678 6767 5127 +8264 1507 3030 1398 733 5156 6679 5047 4382 +8265 2041 1814 1280 648 5690 5463 4929 4297 +8266 2955 1465 3413 827 6604 5114 7062 4476 +8267 3157 672 1904 1799 6806 4321 5553 5448 +8268 2858 1632 3078 690 6507 5281 6727 4339 +8269 2072 1773 2540 636 5721 5422 6189 4285 +8270 1734 664 1410 2448 5383 4313 5059 6097 +8271 1596 714 3390 3411 5245 4363 7039 7060 +8272 2983 1683 2798 1170 6632 5332 6447 4819 +8273 3835 207 1998 1502 7484 3856 5647 5151 +8274 3556 874 1799 1904 7205 4523 5448 5553 +8275 3639 2226 904 2116 7288 5875 4553 5765 +8276 1470 848 1454 3139 5119 4497 5103 6788 +8277 2550 1472 3367 1015 6199 5121 7016 4664 +8278 3691 1105 1951 1345 7340 4754 5600 4994 +8279 3062 1805 647 1924 6711 5454 4296 5573 +8280 2609 403 2102 663 6258 4052 5751 4312 +8281 332 2319 1325 3785 3981 5968 4974 7434 +8282 2035 2772 1507 733 5684 6421 5156 4382 +8283 2796 627 1442 2169 6445 4276 5091 5818 +8284 2388 666 2883 1636 6037 4315 6532 5285 +8285 1932 828 2186 2324 5581 4477 5835 5973 +8286 861 467 1655 862 4510 4116 5304 4511 +8287 10 9 1553 3051 106 105 5202 6700 +8288 3636 2068 704 2815 7285 5717 4353 6464 +8289 3425 1161 2958 1702 7074 4810 6607 5351 +8290 2647 1473 2756 809 6296 5122 6405 4458 +8291 1222 2137 470 2838 4871 5786 4119 6487 +8292 398 1807 1592 3316 4047 5456 5241 6965 +8293 561 2489 1935 3757 4210 6138 5584 7406 +8294 908 2828 228 1575 4557 6477 3877 5224 +8295 2151 2921 3190 237 5800 6570 6839 3886 +8296 2008 2687 587 1500 5657 6336 4236 5149 +8297 3394 1607 600 2113 7043 5256 4249 5762 +8298 1930 1826 1910 806 5579 5475 5559 4455 +8299 424 2181 634 1570 4073 5830 4283 5219 +8300 2858 690 1903 1654 6507 4339 5552 5303 +8301 2043 2851 1729 226 5692 6500 5378 3875 +8302 3260 3199 2119 268 6909 6848 5768 3917 +8303 1268 2282 43 3214 4917 5931 139 6863 +8304 974 1706 577 2127 4623 5355 4226 5776 +8305 513 2675 1690 2547 4162 6324 5339 6196 +8306 1065 2320 505 2219 4714 5969 4154 5868 +8307 1821 3232 2664 291 5470 6881 6313 3940 +8308 2747 772 3375 1486 6396 4421 7024 5135 +8309 3834 1130 2628 1556 7483 4779 6277 5205 +8310 3698 258 1449 1598 7347 3907 5098 5247 +8311 1704 3514 1589 407 5353 7163 5238 4056 +8312 2211 3649 399 3135 5860 7298 4048 6784 +8313 3656 1810 370 3331 7305 5459 4019 6980 +8314 2961 236 2367 1620 6610 3885 6016 5269 +8315 2955 1756 2969 495 6604 5405 6618 4144 +8316 2313 981 3039 3174 5962 4630 6688 6823 +8317 3837 719 1727 1591 7486 4368 5376 5240 +8318 2845 1485 2048 994 6494 5134 5697 4643 +8319 596 3599 1347 2680 4245 7248 4996 6329 +8320 749 1929 769 1945 4398 5578 4418 5594 +8321 906 1764 3118 1765 4555 5413 6767 5414 +8322 2223 1773 2072 817 5872 5422 5721 4466 +8323 836 2119 239 2192 4485 5768 3888 5841 +8324 2776 1493 3448 775 6425 5142 7097 4424 +8325 647 2472 304 1501 4296 6121 3953 5150 +8326 2738 1585 2147 782 6387 5234 5796 4431 +8327 542 3073 1013 2075 4191 6722 4662 5724 +8328 235 2303 3822 1536 3884 5952 7471 5185 +8329 204 1891 1225 3294 3853 5540 4874 6943 +8330 1183 2656 419 3186 4832 6305 4068 6835 +8331 3750 1584 2017 616 7399 5233 5666 4265 +8332 2747 1486 1990 247 6396 5135 5639 3896 +8333 3663 918 2255 465 7312 4567 5904 4114 +8334 1099 1873 1308 3231 4748 5522 4957 6880 +8335 3726 1616 411 1906 7375 5265 4060 5555 +8336 2957 1042 2694 1494 6606 4691 6343 5143 +8337 1962 1963 1475 710 5611 5612 5124 4359 +8338 2254 3303 3200 1097 5903 6952 6849 4746 +8339 3577 2760 613 1601 7226 6409 4262 5250 +8340 2436 1506 2124 699 6085 5155 5773 4348 +8341 1319 2814 543 3039 4968 6463 4192 6688 +8342 2393 1529 2244 257 6042 5178 5893 3906 +8343 2161 646 1295 1810 5810 4295 4944 5459 +8344 354 2225 1140 2506 4003 5874 4789 6155 +8345 3362 1532 3757 1301 7011 5181 7406 4950 +8346 3676 1511 2963 998 7325 5160 6612 4647 +8347 3630 1520 1786 1787 7279 5169 5435 5436 +8348 491 1492 3557 2639 4140 5141 7206 6288 +8349 2124 1506 697 1864 5773 5155 4346 5513 +8350 2081 1689 2382 455 5730 5338 6031 4104 +8351 2348 430 1945 1740 5997 4079 5594 5389 +8352 2500 378 1804 1541 6149 4027 5453 5190 +8353 799 1863 336 2107 4448 5512 3985 5756 +8354 849 3206 415 1846 4498 6855 4064 5495 +8355 2776 248 1981 1493 6425 3897 5630 5142 +8356 277 3515 1192 1889 3926 7164 4841 5538 +8357 2605 252 3149 1497 6254 3901 6798 5146 +8358 1616 3726 3836 1484 5265 7375 7485 5133 +8359 2504 722 2250 1505 6153 4371 5899 5154 +8360 1716 708 2080 1691 5365 4357 5729 5340 +8361 1971 672 1324 1928 5620 4321 4973 5577 +8362 2333 61 60 1612 5982 157 156 5261 +8363 2123 3467 3411 1440 5772 7116 7060 5089 +8364 3007 336 1863 3679 6656 3985 5512 7328 +8365 333 1978 945 2028 3982 5627 4594 5677 +8366 974 2965 363 1706 4623 6614 4012 5355 +8367 3550 1579 3320 1277 7199 5228 6969 4926 +8368 2440 408 1987 1569 6089 4057 5636 5218 +8369 3132 606 1883 1512 6781 4255 5532 5161 +8370 3595 3024 562 1812 7244 6673 4211 5461 +8371 2758 613 1995 1511 6407 4262 5644 5160 +8372 2526 1509 3032 694 6175 5158 6681 4343 +8373 2451 1518 3590 307 6100 5167 7239 3956 +8374 3805 1726 2506 1140 7454 5375 6155 4789 +8375 1222 2879 595 2137 4871 6528 4244 5786 +8376 3745 2154 296 2889 7394 5803 3945 6538 +8377 1181 3107 674 3457 4830 6756 4323 7106 +8378 3654 1445 1968 1125 7303 5094 5617 4774 +8379 1077 1755 588 3267 4726 5404 4237 6916 +8380 1980 1626 2766 621 5629 5275 6415 4270 +8381 2966 680 1776 1985 6615 4329 5425 5634 +8382 1203 3087 1159 1911 4852 6736 4808 5560 +8383 1839 2479 1406 419 5488 6128 5055 4068 +8384 2608 1509 2526 373 6257 5158 6175 4022 +8385 2409 2659 1698 942 6058 6308 5347 4591 +8386 763 2885 1160 2052 4412 6534 4809 5701 +8387 2959 1508 2052 427 6608 5157 5701 4076 +8388 3746 1296 680 2003 7395 4945 4329 5652 +8389 3258 1743 221 1994 6907 5392 3870 5643 +8390 3611 1599 1610 601 7260 5248 5259 4250 +8391 3611 1136 3401 1599 7260 4785 7050 5248 +8392 3371 1580 3469 402 7020 5229 7118 4051 +8393 2752 866 2718 1505 6401 4515 6367 5154 +8394 3245 1960 212 1576 6894 5609 3861 5225 +8395 3507 1179 3516 1577 7156 4828 7165 5226 +8396 1150 2643 577 1706 4799 6292 4226 5355 +8397 435 2120 828 1932 4084 5769 4477 5581 +8398 2691 1766 781 2171 6340 5415 4430 5820 +8399 3430 739 1232 1348 7079 4388 4881 4997 +8400 2209 2099 1637 765 5858 5748 5286 4414 +8401 3627 280 2132 1606 7276 3929 5781 5255 +8402 2681 1619 3568 495 6330 5268 7217 4144 +8403 2044 492 2182 2064 5693 4141 5831 5713 +8404 1044 2088 293 2495 4693 5737 3942 6144 +8405 1982 1052 2827 3156 5631 4701 6476 6805 +8406 674 2660 1364 2836 4323 6309 5013 6485 +8407 58 57 3509 3144 154 153 7158 6793 +8408 74 3145 3510 75 170 6794 7159 171 +8409 3501 1857 3022 1048 7150 5506 6671 4697 +8410 2055 2915 1951 1105 5704 6564 5600 4754 +8411 1390 565 3347 1389 5039 4214 6996 5038 +8412 2981 597 3539 1712 6630 4246 7188 5361 +8413 859 2582 1634 2680 4508 6231 5283 6329 +8414 3841 1645 410 1419 7490 5294 4059 5068 +8415 27 26 1701 3078 123 122 5350 6727 +8416 424 2274 1356 1875 4073 5923 5005 5524 +8417 334 2580 1355 2417 3983 6229 5004 6066 +8418 3603 1133 2959 1602 7252 4782 6608 5251 +8419 3603 1602 2318 689 7252 5251 5967 4338 +8420 355 2775 940 1694 4004 6424 4589 5343 +8421 3555 1560 2093 753 7204 5209 5742 4402 +8422 1215 3608 210 2529 4864 7257 3859 6178 +8423 3299 2611 1607 450 6948 6260 5256 4099 +8424 215 3334 3204 1933 3864 6983 6853 5582 +8425 2561 745 1657 1722 6210 4394 5306 5371 +8426 612 1840 1259 3484 4261 5489 4908 7133 +8427 3433 922 3424 1517 7082 4571 7073 5166 +8428 2871 812 3731 1513 6520 4461 7380 5162 +8429 2030 2031 1657 745 5679 5680 5306 4394 +8430 3577 1601 1964 385 7226 5250 5613 4034 +8431 3179 489 2259 1534 6828 4138 5908 5183 +8432 2339 778 2023 1622 5988 4427 5672 5271 +8433 3374 1124 2906 1564 7023 4773 6555 5213 +8434 271 3814 1441 2841 3920 7463 5090 6490 +8435 985 1832 1329 2793 4634 5481 4978 6442 +8436 3519 1515 2788 436 7168 5164 6437 4085 +8437 2170 2956 1828 414 5819 6605 5477 4063 +8438 1987 3291 614 1569 5636 6940 4263 5218 +8439 872 2077 309 2162 4521 5726 3958 5811 +8440 3551 418 2147 1585 7200 4067 5796 5234 +8441 3518 1081 3146 1739 7167 4730 6795 5388 +8442 1689 707 1400 2140 5338 4356 5049 5789 +8443 564 3273 1329 2484 4213 6922 4978 6133 +8444 3531 1547 1991 592 7180 5196 5640 4241 +8445 2079 458 1934 3648 5728 4107 5583 7297 +8446 3804 1640 2864 1215 7453 5289 6513 4864 +8447 2947 917 3838 2567 6596 4566 7487 6216 +8448 3137 789 2500 1541 6786 4438 6149 5190 +8449 3027 992 3289 1534 6676 4641 6938 5183 +8450 2984 898 2509 1523 6633 4547 6158 5172 +8451 2035 1201 2910 3465 5684 4850 6559 7114 +8452 2833 429 3117 1556 6482 4078 6766 5205 +8453 2833 1556 2628 875 6482 5205 6277 4524 +8454 3175 1544 1453 634 6824 5193 5102 4283 +8455 680 2252 93 1776 4329 5901 189 5425 +8456 541 2247 983 2178 4190 5896 4632 5827 +8457 1834 870 2671 2330 5483 4519 6320 5979 +8458 2330 201 2466 1834 5979 3850 6115 5483 +8459 920 2961 1620 3042 4569 6610 5269 6691 +8460 3635 1610 811 2517 7284 5259 4460 6166 +8461 1536 2578 1881 235 5185 6227 5530 3884 +8462 1127 2322 1769 3397 4776 5971 5418 7046 +8463 318 2256 952 1948 3967 5905 4601 5597 +8464 1151 3136 628 2397 4800 6785 4277 6046 +8465 2540 1773 2223 471 6189 5422 5872 4120 +8466 2484 1238 3486 1900 6133 4887 7135 5549 +8467 2464 1926 540 1316 6113 5575 4189 4965 +8468 214 2752 1505 2250 3863 6401 5154 5899 +8469 2041 981 2313 1814 5690 4630 5962 5463 +8470 2902 474 1298 1782 6551 4123 4947 5431 +8471 460 2239 954 2246 4109 5888 4603 5895 +8472 2685 852 2754 1593 6334 4501 6403 5242 +8473 2685 1593 2908 239 6334 5242 6557 3888 +8474 505 2628 1130 2867 4154 6277 4779 6516 +8475 1256 3272 642 2145 4905 6921 4291 5794 +8476 2820 1695 1694 940 6469 5344 5343 4589 +8477 3197 1019 2122 3530 6846 4668 5771 7179 +8478 3175 950 2553 1544 6824 4599 6202 5193 +8479 2651 1142 654 1568 6300 4791 4303 5217 +8480 2853 1524 2221 793 6502 5173 5870 4442 +8481 3655 1622 3047 1142 7304 5271 6696 4791 +8482 3655 303 2339 1622 7304 3952 5988 5271 +8483 2947 2567 1887 511 6596 6216 5536 4160 +8484 3198 622 623 299 6847 4271 4272 3948 +8485 3815 1905 667 1404 7464 5554 4316 5053 +8486 561 2039 966 2489 4210 5688 4615 6138 +8487 1207 1069 231 426 4856 4718 3880 4075 +8488 2436 1993 2177 3761 6085 5642 5826 7410 +8489 292 3439 1208 2880 3941 7088 4857 6529 +8490 1515 3519 887 2217 5164 7168 4536 5866 +8491 720 2811 1297 2138 4369 6460 4946 5787 +8492 2440 1569 1605 735 6089 5218 5254 4384 +8493 2253 659 1642 1644 5902 4308 5291 5293 +8494 2338 3263 3314 796 5987 6912 6963 4445 +8495 2086 747 1792 1793 5735 4396 5441 5442 +8496 1809 733 1398 2457 5458 4382 5047 6106 +8497 3751 1597 2770 1146 7400 5246 6419 4795 +8498 2935 3794 2130 1017 6584 7443 5779 4666 +8499 3516 1605 1569 614 7165 5254 5218 4263 +8500 1848 412 1803 2095 5497 4061 5452 5744 +8501 2458 3845 3248 821 6107 7494 6897 4470 +8502 3230 1058 2196 3065 6879 4707 5845 6714 +8503 762 3432 1508 3741 4411 7081 5157 7390 +8504 3373 1565 1946 705 7022 5214 5595 4354 +8505 3551 1585 2738 1092 7200 5234 6387 4741 +8506 593 3584 1400 3633 4242 7233 5049 7282 +8507 2596 791 2682 1550 6245 4440 6331 5199 +8508 1235 2504 242 2807 4884 6153 3891 6456 +8509 287 3507 1577 3471 3936 7156 5226 7120 +8510 3407 807 1906 1838 7056 4456 5555 5487 +8511 2737 478 3426 1174 6386 4127 7075 4823 +8512 410 2146 1086 2742 4059 5795 4735 6391 +8513 2095 1803 2132 744 5744 5452 5781 4393 +8514 2647 809 1994 1604 6296 4458 5643 5253 +8515 3382 636 2540 1580 7031 4285 6189 5229 +8516 691 1568 3811 2499 4340 5217 7460 6148 +8517 3786 1657 2031 576 7435 5306 5680 4225 +8518 1332 2980 1080 2027 4981 6629 4729 5676 +8519 3548 1614 2411 607 7197 5263 6060 4256 +8520 3535 503 2350 1605 7184 4152 5999 5254 +8521 3068 1660 2177 1993 6717 5309 5826 5642 +8522 3253 1946 1565 285 6902 5595 5214 3934 +8523 3644 27 3078 1632 7293 123 6727 5281 +8524 3644 1632 2858 28 7293 5281 6507 124 +8525 3615 2463 279 2380 7264 6112 3928 6029 +8526 823 1950 510 2258 4472 5599 4159 5907 +8527 3313 1550 2699 853 6962 5199 6348 4502 +8528 1281 2753 796 2389 4930 6402 4445 6038 +8529 2630 1935 2489 993 6279 5584 6138 4642 +8530 2682 243 2699 1550 6331 3892 6348 5199 +8531 2694 1042 3174 1551 6343 4691 6823 5200 +8532 2786 1574 2711 531 6435 5223 6360 4180 +8533 432 3694 1478 3118 4081 7343 5127 6767 +8534 776 2037 533 1910 4425 5686 4182 5559 +8535 3517 877 3602 1611 7166 4526 7251 5260 +8536 2291 1735 2408 481 5940 5384 6057 4130 +8537 1224 2922 795 1731 4873 6571 4444 5380 +8538 785 2323 1117 2431 4434 5972 4766 6080 +8539 1548 2777 1663 676 5197 6426 5312 4325 +8540 1815 2177 1780 668 5464 5826 5429 4317 +8541 750 2432 319 1597 4399 6081 3968 5246 +8542 3624 2271 1501 629 7273 5920 5150 4278 +8543 2403 241 623 395 6052 3890 4272 4044 +8544 2222 436 1436 1696 5871 4085 5085 5345 +8545 3367 1472 914 2576 7016 5121 4563 6225 +8546 3411 260 2441 1596 7060 3909 6090 5245 +8547 3568 1619 3291 721 7217 5268 6940 4370 +8548 3848 1573 3592 753 7497 5222 7241 4402 +8549 1242 2897 983 2247 4891 6546 4632 5896 +8550 2744 1911 2907 522 6393 5560 6556 4171 +8551 503 2296 1847 2791 4152 5945 5496 6440 +8552 1867 2086 1793 416 5516 5735 5442 4065 +8553 2296 1659 2136 804 5945 5308 5785 4453 +8554 253 3687 1267 1795 3902 7336 4916 5444 +8555 3790 1608 2606 508 7439 5257 6255 4157 +8556 2702 2084 1952 929 6351 5733 5601 4578 +8557 2103 481 2408 927 5752 4130 6057 4576 +8558 356 2073 995 2454 4005 5722 4644 6103 +8559 3438 1774 616 2017 7087 5423 4265 5666 +8560 1189 1843 701 3410 4838 5492 4350 7059 +8561 682 2322 326 1644 4331 5971 3975 5293 +8562 3673 642 1356 2535 7322 4291 5005 6184 +8563 3063 1615 2193 818 6712 5264 5842 4467 +8564 2386 1620 2367 961 6035 5269 6016 4610 +8565 533 2037 1154 1763 4182 5686 4803 5412 +8566 3023 908 1575 1576 6672 4557 5224 5225 +8567 2475 30 29 1654 6124 126 125 5303 +8568 2120 890 2302 1916 5769 4539 5951 5565 +8569 2120 1916 2166 828 5769 5565 5815 4477 +8570 3722 352 1723 2859 7371 4001 5372 6508 +8571 3345 408 2440 1590 6994 4057 6089 5239 +8572 1820 3793 1901 658 5469 7442 5550 4307 +8573 2024 851 1942 2198 5673 4500 5591 5847 +8574 2538 2483 1759 580 6187 6132 5408 4229 +8575 3594 1625 1204 524 7243 5274 4853 4173 +8576 1430 2106 392 3567 5079 5755 4041 7216 +8577 2540 1112 3469 1580 6189 4761 7118 5229 +8578 1413 2739 1367 3447 5062 6388 5016 7096 +8579 2242 506 1289 1914 5891 4155 4938 5563 +8580 758 1638 619 3646 4407 5287 4268 7295 +8581 14 13 1566 2215 110 109 5215 5864 +8582 2995 1559 1968 1445 6644 5208 5617 5094 +8583 1864 422 3803 2124 5513 4071 7452 5773 +8584 3520 289 2093 1560 7169 3938 5742 5209 +8585 1176 2654 554 3177 4825 6303 4203 6826 +8586 1293 2203 232 2794 4942 5852 3881 6443 +8587 3579 1630 2194 1107 7228 5279 5843 4756 +8588 3445 1043 2422 1609 7094 4692 6071 5258 +8589 3445 1609 2663 669 7094 5258 6312 4318 +8590 3809 686 1807 1581 7458 4335 5456 5230 +8591 1137 2399 285 2423 4786 6048 3934 6072 +8592 1869 645 1494 2112 5518 4294 5143 5761 +8593 3719 2068 1462 250 7368 5717 5111 3899 +8594 2317 2044 2064 854 5966 5693 5713 4503 +8595 2497 1598 2676 237 6146 5247 6325 3886 +8596 1171 3012 558 2076 4820 6661 4207 5725 +8597 1052 1982 532 2774 4701 5631 4181 6423 +8598 2906 1111 2803 1564 6555 4760 6452 5213 +8599 263 1707 2707 2562 3912 5356 6356 6211 +8600 3278 979 2981 1712 6927 4628 6630 5361 +8601 3603 689 1871 2678 7252 4338 5520 6327 +8602 1134 1925 448 3158 4783 5574 4097 6807 +8603 2355 2214 1932 899 6004 5863 5581 4548 +8604 2010 737 1876 2801 5659 4386 5525 6450 +8605 1846 701 2175 2800 5495 4350 5824 6449 +8606 2562 1713 3035 263 6211 5362 6684 3912 +8607 3343 3110 1669 711 6992 6759 5318 4360 +8608 1081 2163 1483 3146 4730 5812 5132 6795 +8609 3641 1912 441 2457 7290 5561 4090 6106 +8610 1204 1202 3376 329 4853 4851 7025 3978 +8611 3042 254 1385 1603 6691 3903 5034 5252 +8612 1263 3320 581 2023 4912 6969 4230 5672 +8613 1756 1334 3230 2911 5405 4983 6879 6560 +8614 1858 2187 2351 998 5507 5836 6000 4647 +8615 1721 274 1666 2265 5370 3923 5315 5914 +8616 542 2075 1216 3097 4191 5724 4865 6746 +8617 2681 1144 3471 1577 6330 4793 7120 5226 +8618 3555 753 3592 1670 7204 4402 7241 5319 +8619 88 2285 1346 89 184 5934 4995 185 +8620 2433 606 3132 1628 6082 4255 6781 5277 +8621 2284 2829 17 16 5933 6478 113 112 +8622 2310 2006 2316 897 5959 5655 5965 4546 +8623 3130 3639 1576 1575 6779 7288 5225 5224 +8624 2731 2461 792 1340 6380 6110 4441 4989 +8625 892 1817 428 2480 4541 5466 4077 6129 +8626 2021 2618 1962 710 5670 6267 5611 4359 +8627 1050 1912 657 2087 4699 5561 4306 5736 +8628 3748 1141 1984 2414 7397 4790 5633 6063 +8629 46 45 1473 3266 142 141 5122 6915 +8630 3750 309 2077 1584 7399 3958 5726 5233 +8631 919 1934 458 2452 4568 5583 4107 6101 +8632 1430 3567 679 3711 5079 7216 4328 7360 +8633 2947 511 2001 2502 6596 4160 5650 6151 +8634 1191 2390 3017 1352 4840 6039 6666 5001 +8635 2822 449 2148 1975 6471 4098 5797 5624 +8636 2311 935 2487 2066 5960 4584 6136 5715 +8637 3465 2910 2967 987 7114 6559 6616 4636 +8638 2292 206 2115 1710 5941 3855 5764 5359 +8639 2267 273 1503 1724 5916 3922 5152 5373 +8640 3163 727 3775 1588 6812 4376 7424 5237 +8641 625 3779 1532 3796 4274 7428 5181 7445 +8642 901 2492 1028 2125 4550 6141 4677 5774 +8643 2357 3651 3359 305 6006 7300 7008 3954 +8644 1819 2465 1673 635 5468 6114 5322 4284 +8645 3684 2188 282 1778 7333 5837 3931 5427 +8646 3330 1607 3394 1003 6979 5256 7043 4652 +8647 2435 812 2388 1636 6084 4461 6037 5285 +8648 1459 3302 203 2882 5108 6951 3852 6531 +8649 2444 250 1462 3041 6093 3899 5111 6690 +8650 296 1995 1082 2889 3945 5644 4731 6538 +8651 3727 2105 3547 1315 7376 5754 7196 4964 +8652 2146 410 1645 1969 5795 4059 5294 5618 +8653 3669 333 2028 1736 7318 3982 5677 5385 +8654 2830 1627 2761 780 6479 5276 6410 4429 +8655 2625 2624 2410 1075 6274 6273 6059 4724 +8656 3047 581 3320 1579 6696 4230 6969 5228 +8657 2899 1589 3744 846 6548 5238 7393 4495 +8658 448 1586 639 3158 4097 5235 4288 6807 +8659 3778 1531 966 3122 7427 5180 4615 6771 +8660 818 2193 897 2316 4467 5842 4546 5965 +8661 3524 1581 1807 398 7173 5230 5456 4047 +8662 1676 2375 1717 728 5325 6024 5366 4377 +8663 3527 394 2016 1919 7176 4043 5665 5568 +8664 3703 374 2019 1671 7352 4023 5668 5320 +8665 1952 2084 3513 718 5601 5733 7162 4367 +8666 1015 2818 678 2550 4664 6467 4327 6199 +8667 2996 1583 3029 255 6645 5232 6678 3904 +8668 969 1973 650 2552 4618 5622 4299 6201 +8669 3400 1661 2336 768 7049 5310 5985 4417 +8670 3806 1358 277 1889 7455 5007 3926 5538 +8671 2129 1020 3677 771 5778 4669 7326 4420 +8672 2468 2085 3393 985 6117 5734 7042 4634 +8673 3057 1591 1727 670 6706 5240 5376 4319 +8674 2657 437 2024 1662 6306 4086 5673 5311 +8675 2982 845 2080 1590 6631 4494 5729 5239 +8676 3660 1886 1730 420 7309 5535 5379 4069 +8677 2288 3114 1375 2362 5937 6763 5024 6011 +8678 3679 1863 2511 1001 7328 5512 6160 4650 +8679 748 1751 3323 1750 4397 5400 6972 5399 +8680 3185 17 2829 1603 6834 113 6478 5252 +8681 2420 608 2751 1686 6069 4257 6400 5335 +8682 311 2471 1017 2130 3960 6120 4666 5779 +8683 1059 2210 627 1800 4708 5859 4276 5449 +8684 2908 1593 1880 267 6557 5242 5529 3916 +8685 2886 1631 608 971 6535 5280 4257 4620 +8686 1137 2602 1188 1849 4786 6251 4837 5498 +8687 3681 713 1481 3159 7330 4362 5130 6808 +8688 2239 897 2193 1768 5888 4546 5842 5417 +8689 1924 647 1501 2271 5573 4296 5150 5920 +8690 1591 1940 693 3837 5240 5589 4342 7486 +8691 893 2548 59 1665 4542 6197 155 5314 +8692 2549 894 2265 1666 6198 4543 5914 5315 +8693 640 3276 425 1836 4289 6925 4074 5485 +8694 3823 3611 601 1679 7472 7260 4250 5328 +8695 2945 911 3045 1595 6594 4560 6694 5244 +8696 3646 1715 2272 758 7295 5364 5921 4407 +8697 2914 804 2136 1641 6563 4453 5785 5290 +8698 2475 1654 1903 841 6124 5303 5552 4490 +8699 2348 3043 3140 2954 5997 6692 6789 6603 +8700 1608 3790 1681 635 5257 7439 5330 4284 +8701 2829 920 3042 1603 6478 4569 6691 5252 +8702 1772 2865 1418 246 5421 6514 5067 3895 +8703 2140 2844 831 1689 5789 6493 4480 5338 +8704 2863 1764 906 1138 6512 5413 4555 4787 +8705 2165 2996 2083 3054 5814 6645 5732 6703 +8706 2860 850 1725 2180 6509 4499 5374 5829 +8707 2916 1779 3350 238 6565 5428 6999 3887 +8708 3080 797 1572 1697 6729 4446 5221 5346 +8709 1103 2101 235 3049 4752 5750 3884 6698 +8710 3092 886 2813 1604 6741 4535 6462 5253 +8711 2645 903 2206 445 6294 4552 5855 4094 +8712 1024 2150 520 2478 4673 5799 4169 6127 +8713 3166 2073 356 2642 6815 5722 4005 6291 +8714 3092 1604 1994 221 6741 5253 5643 3870 +8715 632 1709 1008 3217 4281 5358 4657 6866 +8716 851 2098 803 2118 4500 5747 4452 5767 +8717 3402 2709 858 2088 7051 6358 4507 5737 +8718 1249 2070 1703 3638 4898 5719 5352 7287 +8719 2951 264 2333 1612 6600 3913 5982 5261 +8720 2951 1612 2548 893 6600 5261 6197 4542 +8721 2952 1613 1837 265 6601 5262 5486 3914 +8722 2952 894 2549 1613 6601 4543 6198 5262 +8723 2231 1988 1989 880 5880 5637 5638 4529 +8724 2491 747 1895 1861 6140 4396 5544 5510 +8725 2704 1677 3660 420 6353 5326 7309 4069 +8726 2675 513 3172 1797 6324 4162 6821 5446 +8727 1344 3196 1200 2042 4993 6845 4849 5691 +8728 947 2881 1170 2798 4596 6530 4819 6447 +8729 3563 1659 3507 287 7212 5308 7156 3936 +8730 619 2071 1066 3340 4268 5720 4715 6989 +8731 2754 1635 2115 206 6403 5284 5764 3855 +8732 3799 1182 2832 1700 7448 4831 6481 5349 +8733 3799 1700 1892 347 7448 5349 5541 3996 +8734 1287 2161 515 3164 4936 5810 4164 6813 +8735 962 3035 1713 3121 4611 6684 5362 6770 +8736 3660 1677 1780 732 7309 5326 5429 4381 +8737 1274 1822 653 2266 4923 5471 4302 5915 +8738 3705 1681 3790 1217 7354 5330 7439 4866 +8739 2956 1436 436 2788 6605 5085 4085 6437 +8740 3656 648 1280 2503 7305 4297 4929 6152 +8741 2420 1694 1695 608 6069 5343 5344 4257 +8742 3590 742 1744 1664 7239 4391 5393 5313 +8743 3451 2235 1251 2831 7100 5884 4900 6480 +8744 2767 1139 2710 2005 6416 4788 6359 5654 +8745 437 2098 851 2024 4086 5747 4500 5673 +8746 1749 2266 653 2528 5398 5915 4302 6177 +8747 240 2516 1337 3773 3889 6165 4986 7422 +8748 2187 1858 2498 519 5836 5507 6147 4168 +8749 328 2625 1075 2569 3977 6274 4724 6218 +8750 784 3839 3765 2417 4433 7488 7414 6066 +8751 498 2553 950 1961 4147 6202 4599 5610 +8752 1169 3280 884 2455 4818 6929 4533 6104 +8753 2571 262 3236 1651 6220 3911 6885 5300 +8754 3400 768 3259 1705 7049 4417 6908 5354 +8755 1470 2493 362 2692 5119 6142 4011 6341 +8756 3725 1687 2672 1273 7374 5336 6321 4922 +8757 2404 1739 3146 266 6053 5388 6795 3915 +8758 2764 253 3645 1635 6413 3902 7294 5284 +8759 2764 1635 2754 852 6413 5284 6403 4501 +8760 2498 987 2967 2047 6147 4636 6616 5696 +8761 2505 384 3774 1674 6154 4033 7423 5323 +8762 3125 618 1339 1617 6774 4267 4988 5266 +8763 850 1907 421 2485 4499 5556 4070 6134 +8764 3734 2610 820 2425 7383 6259 4469 6074 +8765 2942 901 1409 2534 6591 4550 5058 6183 +8766 3287 983 3355 1629 6936 4632 7004 5278 +8767 3092 221 1882 1618 6741 3870 5531 5267 +8768 3070 1225 269 1771 6719 4874 3918 5420 +8769 3518 1739 222 2234 7167 5388 3871 5883 +8770 3095 259 2805 1618 6744 3908 6454 5267 +8771 429 2833 1357 2835 4078 6482 5006 6484 +8772 3092 1618 2805 886 6741 5267 6454 4535 +8773 2680 1634 2666 596 6329 5283 6315 4245 +8774 2475 841 1530 3723 6124 4490 5179 7372 +8775 1166 2751 608 1631 4815 6400 4257 5280 +8776 1701 2488 1561 856 5350 6137 5210 4505 +8777 2488 1701 26 25 6137 5350 122 121 +8778 3398 1385 709 2185 7047 5034 4358 5834 +8779 542 2456 1102 3073 4191 6105 4751 6722 +8780 2621 222 3034 1748 6270 3871 6683 5397 +8781 3291 1987 3059 721 6940 5636 6708 4370 +8782 277 1748 3034 2335 3926 5397 6683 5984 +8783 3692 728 1717 2919 7341 4377 5366 6568 +8784 1525 3331 1504 3717 5174 6980 5153 7366 +8785 2150 3028 2543 520 5799 6677 6192 4169 +8786 336 3007 1220 3415 3985 6656 4869 7064 +8787 3354 1621 2930 964 7003 5270 6579 4613 +8788 3042 1620 2386 254 6691 5269 6035 3903 +8789 223 1770 3324 2309 3872 5419 6973 5958 +8790 3301 1634 313 1253 6950 5283 3962 4902 +8791 1202 1624 523 3087 4851 5273 4172 6736 +8792 95 3418 1523 96 191 7067 5172 192 +8793 572 2672 1056 3686 4221 6321 4705 7335 +8794 2782 1708 652 1986 6431 5357 4301 5635 +8795 2240 1872 1344 423 5889 5521 4993 4072 +8796 437 2062 803 2098 4086 5711 4452 5747 +8797 2431 2420 1686 785 6080 6069 5335 4434 +8798 3813 397 1972 1628 7462 4046 5621 5277 +8799 2663 2361 1562 669 6312 6010 5211 4318 +8800 2885 1808 2646 322 6534 5457 6295 3971 +8801 1189 3410 415 3148 4838 7059 4064 6797 +8802 734 2153 1687 3725 4383 5802 5336 7374 +8803 2116 3245 1576 3639 5765 6894 5225 7288 +8804 3405 1000 2940 1809 7054 4649 6589 5458 +8805 3448 1724 1503 775 7097 5373 5152 4424 +8806 2886 286 3560 1631 6535 3935 7209 5280 +8807 2991 1627 2830 233 6640 5276 6479 3882 +8808 2992 256 2761 1627 6641 3905 6410 5276 +8809 500 1992 953 2684 4149 5641 4602 6333 +8810 576 2359 926 2074 4225 6008 4575 5723 +8811 3747 442 2588 1680 7396 4091 6237 5329 +8812 1344 2318 528 3196 4993 5967 4177 6845 +8813 1347 3436 373 2526 4996 7085 4022 6175 +8814 3434 797 2016 1679 7083 4446 5665 5328 +8815 2946 1318 807 2319 6595 4967 4456 5968 +8816 3260 268 2921 1071 6909 3917 6570 4720 +8817 3643 1197 3440 1905 7292 4846 7089 5554 +8818 1534 2306 951 3179 5183 5955 4600 6828 +8819 881 2142 1100 2143 4530 5791 4749 5792 +8820 2465 3772 396 1673 6114 7421 4045 5322 +8821 3358 1234 3807 2034 7007 4883 7456 5683 +8822 1054 2891 397 2020 4703 6540 4046 5669 +8823 380 3486 1439 3564 4029 7135 5088 7213 +8824 2404 266 1294 1777 6053 3915 4943 5426 +8825 396 2811 720 1673 4045 6460 4369 5322 +8826 2391 1903 690 3408 6040 5552 4339 7057 +8827 882 2633 1588 3344 4531 6282 5237 6993 +8828 3801 1651 2176 220 7450 5300 5825 3869 +8829 1210 2136 1659 3563 4859 5785 5308 7212 +8830 3562 1264 399 3523 7211 4913 4048 7172 +8831 1076 2625 328 2600 4725 6274 3977 6249 +8832 847 2411 1614 3043 4496 6060 5263 6692 +8833 312 2944 1368 2200 3961 6593 5017 5849 +8834 2411 3555 1670 607 6060 7204 5319 4256 +8835 3430 1582 3454 739 7079 5231 7103 4388 +8836 973 2352 267 1779 4622 6001 3916 5428 +8837 2645 1712 3539 1381 6294 5361 7188 5030 +8838 3613 1691 2080 454 7262 5340 5729 4103 +8839 2575 2345 1892 738 6224 5994 5541 4387 +8840 1984 715 1558 2414 5633 4364 5207 6063 +8841 2687 2008 1340 792 6336 5657 4989 4441 +8842 2419 1877 2895 662 6068 5526 6544 4311 +8843 3400 369 2739 1661 7049 4018 6388 5310 +8844 376 1871 790 2262 4025 5520 4439 5911 +8845 3490 1674 3774 1187 7139 5323 7423 4836 +8846 591 2510 1381 3420 4240 6159 5030 7069 +8847 3632 1551 543 2379 7281 5200 4192 6028 +8848 205 3724 815 1688 3854 7373 4464 5337 +8849 1854 2269 2657 675 5503 5918 6306 4324 +8850 3677 1020 3777 1668 7326 4669 7426 5317 +8851 3752 1510 2576 914 7401 5159 6225 4563 +8852 2970 1642 1643 405 6619 5291 5292 4054 +8853 3236 746 2176 1651 6885 4395 5825 5300 +8854 2686 618 3125 1851 6335 4267 6774 5500 +8855 2532 1717 2375 1018 6181 5366 6024 4667 +8856 550 3122 1388 2862 4199 6771 5037 6511 +8857 1893 790 1872 2240 5542 4439 5521 5889 +8858 1192 3515 1747 3412 4841 7164 5396 7061 +8859 460 2310 897 2239 4109 5959 4546 5888 +8860 523 2144 1159 3087 4172 5793 4808 6736 +8861 1343 3585 1454 2679 4992 7234 5103 6328 +8862 2521 773 3528 1109 6170 4422 7177 4758 +8863 2210 2061 1442 627 5859 5710 5091 4276 +8864 881 2167 379 2142 4530 5816 4028 5791 +8865 3175 1671 3238 950 6824 5320 6887 4599 +8866 1181 3513 301 3107 4830 7162 3950 6756 +8867 3638 1703 2346 258 7287 5352 5995 3907 +8868 1254 3348 292 3650 4903 6997 3941 7299 +8869 3523 1684 1526 652 7172 5333 5175 4301 +8870 3755 1675 3051 666 7404 5324 6700 4315 +8871 2360 382 3275 867 6009 4031 6924 4516 +8872 1424 3201 762 1943 5073 6850 4411 5592 +8873 225 2896 1305 3167 3874 6545 4954 6816 +8874 2562 866 2752 1713 6211 4515 6401 5362 +8875 895 2486 616 2923 4544 6135 4265 6572 +8876 1349 3633 1400 1704 4998 7282 5049 5353 +8877 309 3750 1185 2229 3958 7399 4834 5878 +8878 548 2974 1212 3206 4197 6623 4861 6855 +8879 3121 2393 1685 962 6770 6042 5334 4611 +8880 3613 832 3089 1691 7262 4481 6738 5340 +8881 240 2459 863 2516 3889 6108 4512 6165 +8882 3311 1663 2777 1131 6960 5312 6426 4780 +8883 1770 223 1467 2641 5419 3872 5116 6290 +8884 1391 298 1079 1390 5040 3947 4728 5039 +8885 883 2112 516 2602 4532 5761 4165 6251 +8886 3837 1730 1886 719 7486 5379 5535 4368 +8887 2281 803 2062 2094 5930 4452 5711 5743 +8888 3711 679 1892 1700 7360 4328 5541 5349 +8889 857 2469 1675 3755 4506 6118 5324 7404 +8890 3537 1096 2629 559 7186 4745 6278 4208 +8891 2555 1769 2322 682 6204 5418 5971 4331 +8892 3343 711 1848 1884 6992 4360 5497 5533 +8893 3461 1804 1615 678 7110 5453 5264 4327 +8894 2720 1693 1444 830 6369 5342 5093 4479 +8895 3239 602 2336 1661 6888 4251 5985 5310 +8896 2198 814 1662 2024 5847 4463 5311 5673 +8897 3704 2243 314 1732 7353 5892 3963 5381 +8898 912 2148 782 2147 4561 5797 4431 5796 +8899 2501 1737 2399 764 6150 5386 6048 4413 +8900 2781 1821 2419 662 6430 5470 6068 4311 +8901 3053 1695 2820 431 6702 5344 6469 4080 +8902 3673 1714 2145 642 7322 5363 5794 4291 +8903 2261 1418 3131 3670 5910 5067 6780 7319 +8904 3259 1838 1906 411 6908 5487 5555 4060 +8905 3399 1816 2992 921 7048 5465 6641 4570 +8906 578 1786 1061 2868 4227 5435 4710 6517 +8907 3089 1690 2844 295 6738 5339 6493 3944 +8908 3684 675 2657 1662 7333 4324 6306 5311 +8909 3582 1687 2153 504 7231 5336 5802 4153 +8910 2958 307 3590 1664 6607 3956 7239 5313 +8911 3337 1865 3304 1113 6986 5514 6953 4762 +8912 3747 792 2461 2462 7396 4441 6110 6111 +8913 2360 2836 1364 382 6009 6485 5013 4031 +8914 3557 1698 2659 656 7206 5347 6308 4305 +8915 2257 2015 3133 313 5906 5664 6782 3962 +8916 3677 1668 2341 488 7326 5317 5990 4137 +8917 1678 1093 2999 3496 5327 4742 6648 7145 +8918 1272 2860 352 2915 4921 6509 4001 6564 +8919 86 3120 1431 87 182 6769 5080 183 +8920 3823 1679 2016 394 7472 5328 5665 4043 +8921 2756 2282 1268 809 6405 5931 4917 4458 +8922 3090 2054 1501 304 6739 5703 5150 3953 +8923 828 2166 889 2186 4477 5815 4538 5835 +8924 324 2557 959 2564 3973 6206 4608 6213 +8925 2128 3542 3821 1535 5777 7191 7470 5184 +8926 1218 2816 497 2638 4867 6465 4146 6287 +8927 930 2433 1628 1972 4579 6082 5277 5621 +8928 790 2358 988 2262 4439 6007 4637 5911 +8929 1743 3258 1918 272 5392 6907 5567 3921 +8930 1015 1894 452 2818 4664 5543 4101 6467 +8931 738 2170 1733 2575 4387 5819 5382 6224 +8932 3110 420 1730 1669 6759 4069 5379 5318 +8933 2207 769 1929 3150 5856 4418 5578 6799 +8934 2198 2050 2051 814 5847 5699 5700 4463 +8935 1626 453 1521 1520 5275 4102 5170 5169 +8936 1254 2553 498 2717 4903 6202 4147 6366 +8937 2607 2051 2050 787 6256 5700 5699 4436 +8938 425 1830 1552 3066 4074 5479 5201 6715 +8939 3562 1708 2980 568 7211 5357 6629 4217 +8940 3534 1707 263 1502 7183 5356 3912 5151 +8941 2297 2085 2468 889 5946 5734 6117 4538 +8942 3840 1083 2698 1681 7489 4732 6347 5330 +8943 2575 1733 2206 903 6224 5382 5855 4552 +8944 1366 766 2263 1302 5015 4415 5912 4951 +8945 926 3158 639 2074 4575 6807 4288 5723 +8946 2325 944 1736 2028 5974 4593 5385 5677 +8947 2890 743 2979 1682 6539 4392 6628 5331 +8948 3725 1273 3545 2301 7374 4922 7194 5950 +8949 215 1874 1282 3180 3864 5523 4931 6829 +8950 3383 1299 220 2176 7032 4948 3869 5825 +8951 2844 1690 2675 831 6493 5339 6324 4480 +8952 3815 48 47 1905 7464 144 143 5554 +8953 2158 2157 1322 696 5807 5806 4971 4345 +8954 1221 3593 506 2726 4870 7242 4155 6375 +8955 1741 694 3032 3825 5390 4343 6681 7474 +8956 3461 678 2818 1845 7110 4327 6467 5494 +8957 2838 1806 2370 923 6487 5455 6019 4572 +8958 2349 423 1344 2042 5998 4072 4993 5691 +8959 282 2188 814 2051 3931 5837 4463 5700 +8960 1687 3582 1056 2672 5336 7231 4705 6321 +8961 2782 1080 2980 1708 6431 4729 6629 5357 +8962 3584 1716 295 1400 7233 5365 3944 5049 +8963 2500 1768 2193 378 6149 5417 5842 4027 +8964 459 2220 744 1996 4108 5869 4393 5645 +8965 2979 205 1688 1682 6628 3854 5337 5331 +8966 593 3586 1399 3584 4242 7235 5048 7233 +8967 2558 3466 2472 647 6207 7115 6121 4296 +8968 2060 435 1932 2214 5709 4084 5581 5863 +8969 3730 1409 901 2662 7379 5058 4550 6311 +8970 3333 1765 3118 1029 6982 5414 6767 4678 +8971 2145 1714 1115 3499 5794 5363 4764 7148 +8972 919 2452 987 2498 4568 6101 4636 6147 +8973 3278 1692 1774 979 6927 5341 5423 4628 +8974 3278 445 2923 1692 6927 4094 6572 5341 +8975 2732 1038 1394 2565 6381 4687 5043 6214 +8976 3586 1719 408 1399 7235 5368 4057 5048 +8977 928 1866 799 2107 4577 5515 4448 5756 +8978 2316 2006 2120 435 5965 5655 5769 4084 +8979 3117 429 1958 1908 6766 4078 5607 5557 +8980 3126 1408 906 1765 6775 5057 4555 5414 +8981 3756 2795 341 1876 7405 6444 3990 5525 +8982 2138 2606 1608 720 5787 6255 5257 4369 +8983 3792 751 3221 1742 7441 4400 6870 5391 +8984 3044 234 2245 1685 6693 3883 5894 5334 +8985 3045 1685 2393 257 6694 5334 6042 3906 +8986 1074 2237 350 3093 4723 5886 3999 6742 +8987 3140 386 2798 1683 6789 4035 6447 5332 +8988 3274 1646 2922 794 6923 5295 6571 4443 +8989 2050 2198 1942 447 5699 5847 5591 4096 +8990 1986 652 1526 2356 5635 4301 5175 6005 +8991 3373 705 1738 1781 7022 4354 5387 5430 +8992 1250 1899 638 3766 4899 5548 4287 7415 +8993 3035 2706 1502 263 6684 6355 5151 3912 +8994 448 1925 774 2383 4097 5574 4423 6032 +8995 2727 2164 3686 1056 6376 5813 7335 4705 +8996 3344 1870 1291 882 6993 5519 4940 4531 +8997 3111 484 2125 3456 6760 4133 5774 7105 +8998 3805 832 3613 1726 7454 4481 7262 5375 +8999 2782 2171 2027 1080 6431 5820 5676 4729 +9000 3602 1723 2180 681 7251 5372 5829 4330 +9001 510 1974 822 2258 4159 5623 4471 5907 +9002 757 3155 568 1842 4406 6804 4217 5491 +9003 310 3030 1507 2919 3959 6679 5156 6568 +9004 3396 85 84 1889 7045 181 180 5538 +9005 958 2780 641 2779 4607 6429 4290 6428 +9006 3408 690 3078 1701 7057 4339 6727 5350 +9007 2691 960 2834 1766 6340 4609 6483 5415 +9008 845 2306 454 2080 4494 5955 4103 5729 +9009 354 2506 992 2174 4003 6155 4641 5823 +9010 3390 714 1682 1688 7039 4363 5331 5337 +9011 1742 2608 1169 3792 5391 6257 4818 7441 +9012 2404 3034 222 1739 6053 6683 3871 5388 +9013 1147 3578 598 2089 4796 7227 4247 5738 +9014 2449 1161 2541 3379 6098 4810 6190 7028 +9015 3297 1630 3579 759 6946 5279 7228 4408 +9016 3089 832 2547 1690 6738 4481 6196 5339 +9017 2780 381 2561 1722 6429 4030 6210 5371 +9018 332 1792 747 2491 3981 5441 4396 6140 +9019 1464 2279 610 3818 5113 5928 4259 7467 +9020 213 3131 1418 2594 3862 6780 5067 6243 +9021 1147 2089 297 3176 4796 5738 3946 6825 +9022 3732 2121 703 1438 7381 5770 4352 5087 +9023 1427 2071 619 3607 5076 5720 4268 7256 +9024 716 2201 1171 2076 4365 5850 4820 5725 +9025 2427 932 2343 1996 6076 4581 5992 5645 +9026 3277 1667 208 2260 6926 5316 3857 5909 +9027 2778 2444 3041 1396 6427 6093 6690 5045 +9028 881 2202 446 2290 4530 5851 4095 5939 +9029 952 2256 846 2342 4601 5905 4495 5991 +9030 2823 787 2384 1885 6472 4436 6033 5534 +9031 3373 1781 3163 487 7022 5430 6812 4136 +9032 2583 1759 2483 1011 6232 5408 6132 4660 +9033 3124 1754 3724 205 6773 5403 7373 3854 +9034 3124 956 2826 1754 6773 4605 6475 5403 +9035 2142 379 2205 2294 5791 4028 5854 5943 +9036 2971 1785 2616 278 6620 5434 6265 3927 +9037 951 2306 845 2257 4600 5955 4494 5906 +9038 2381 425 3276 1917 6030 4074 6925 5566 +9039 2060 2214 2355 819 5709 5863 6004 4468 +9040 2653 1383 3540 1806 6302 5032 7189 5455 +9041 2653 1806 2838 470 6302 5455 6487 4119 +9042 2983 534 3425 1702 6632 4183 7074 5351 +9043 790 1893 451 2358 4439 5542 4100 6007 +9044 1360 2039 561 3779 5009 5688 4210 7428 +9045 2644 1746 3069 539 6293 5395 6718 4188 +9046 2984 1728 2165 898 6633 5377 5814 4547 +9047 3339 972 2933 1697 6988 4621 6582 5346 +9048 609 3262 1545 2755 4258 6911 5194 6404 +9049 3000 1047 1542 2931 6649 4696 5191 6580 +9050 3627 1698 3098 280 7276 5347 6747 3929 +9051 2513 3768 3020 209 6162 7417 6669 3858 +9052 3600 1787 1786 578 7249 5436 5435 4227 +9053 3383 1710 2115 780 7032 5359 5764 4429 +9054 2465 1819 2532 1018 6114 5468 6181 4667 +9055 1210 3563 287 3058 4859 7212 3936 6707 +9056 3674 514 2712 1734 7323 4163 6361 5383 +9057 3674 1734 3588 1118 7323 5383 7237 4767 +9058 3286 1199 3543 1705 6935 4848 7192 5354 +9059 637 2587 865 1831 4286 6236 4514 5480 +9060 2013 2511 1863 799 5662 6160 5512 4448 +9061 2253 2439 2321 868 5902 6088 5970 4517 +9062 3245 1241 725 1960 6894 4890 4374 5609 +9063 2932 598 3578 2344 6581 4247 7227 5993 +9064 401 3737 670 1727 4050 7386 4319 5376 +9065 1363 1747 2335 3791 5012 5396 5984 7440 +9066 1906 807 1318 2415 5555 4456 4967 6064 +9067 2859 1723 3602 877 6508 5372 7251 4526 +9068 3541 451 2272 1715 7190 4100 5921 5364 +9069 2496 1947 3203 1088 6145 5596 6852 4737 +9070 3226 948 2346 1703 6875 4597 5995 5352 +9071 1970 3781 1060 1500 5619 7430 4709 5149 +9072 3226 1703 2070 229 6875 5352 5719 3878 +9073 1327 3629 257 2244 4976 7278 3906 5893 +9074 345 2034 978 3112 3994 5683 4627 6761 +9075 863 2466 201 1936 4512 6115 3850 5585 +9076 1062 2725 494 3314 4711 6374 4143 6963 +9077 431 3508 1761 3053 4080 7157 5410 6702 +9078 552 3304 1865 3298 4201 6953 5514 6947 +9079 2056 2651 1568 691 5705 6300 5217 4340 +9080 3289 992 2506 1726 6938 4641 6155 5375 +9081 384 2038 1289 2467 4033 5687 4938 6116 +9082 3640 2799 231 2190 7289 6448 3880 5839 +9083 3693 1741 2518 1124 7342 5390 6167 4773 +9084 3693 489 2067 1741 7342 4138 5716 5390 +9085 1973 2770 1597 319 5622 6419 5246 3968 +9086 2476 3784 1516 860 6125 7433 5165 4509 +9087 3209 398 2184 1709 6858 4047 5833 5358 +9088 584 3082 1228 3188 4233 6731 4877 6837 +9089 3771 1748 277 1358 7420 5397 3926 5007 +9090 2585 694 1741 2067 6234 4343 5390 5716 +9091 1883 2938 3622 1512 5532 6587 7271 5161 +9092 2941 1815 2362 421 6590 5464 6011 4070 +9093 217 3375 772 1721 3866 7024 4421 5370 +9094 2862 1725 2668 550 6511 5374 6317 4199 +9095 2090 2564 1735 957 5739 6213 5384 4606 +9096 2877 1068 1554 315 6526 4717 5203 3964 +9097 1557 1233 3422 288 5206 4882 7071 3937 +9098 1126 2223 1581 3524 4775 5872 5230 7173 +9099 570 3843 1841 2104 4219 7492 5490 5753 +9100 3832 1760 2507 1211 7481 5409 6156 4860 +9101 3278 1712 2645 445 6927 5361 6294 4094 +9102 2637 1869 2112 883 6286 5518 5761 4532 +9103 3593 858 1658 2467 7242 4507 5307 6116 +9104 3121 1713 2752 214 6770 5362 6401 3863 +9105 469 2021 710 2583 4118 5670 4359 6232 +9106 1542 2927 1323 346 5191 6576 4972 3995 +9107 3821 3542 2333 264 7470 7191 5982 3913 +9108 3630 1787 3600 798 7279 5436 7249 4447 +9109 2851 1306 261 1729 6500 4955 3910 5378 +9110 2368 2670 3221 751 6017 6319 6870 4400 +9111 3059 1719 3586 1021 6708 5368 7235 4670 +9112 2955 827 1334 1756 6604 4476 4983 5405 +9113 833 2719 588 1755 4482 6368 4237 5404 +9114 2278 2268 2031 2030 5927 5917 5680 5679 +9115 3448 216 2267 1724 7097 3865 5916 5373 +9116 101 2435 1636 102 197 6084 5285 198 +9117 3654 360 1448 1445 7303 4009 5097 5094 +9118 864 3608 1215 2864 4513 7257 4864 6513 +9119 2993 1769 2555 1313 6642 5418 6204 4962 +9120 2816 750 2016 1957 6465 4399 5665 5606 +9121 2230 2462 2461 443 5879 6111 6110 4092 +9122 2550 678 1615 2058 6199 4327 5264 5707 +9123 1943 2678 1871 376 5592 6327 5520 4025 +9124 805 2544 1237 2545 4454 6193 4886 6194 +9125 3724 1754 3789 815 7373 5403 7438 4464 +9126 227 2307 968 1999 3876 5956 4617 5648 +9127 2914 1847 2296 804 6563 5496 5945 4453 +9128 1633 2719 833 3512 5282 6368 4482 7161 +9129 471 2223 1126 2898 4120 5872 4775 6547 +9130 2310 890 2120 2006 5959 4539 5769 5655 +9131 2326 331 1947 2329 5975 3980 5596 5978 +9132 3715 1855 2895 800 7364 5504 6544 4449 +9133 2786 531 2508 1844 6435 4180 6157 5493 +9134 1001 2383 774 1941 4650 6032 4423 5590 +9135 1328 2387 633 3235 4977 6036 4282 6884 +9136 2187 519 2696 3055 5836 4168 6345 6704 +9137 3003 1919 2016 750 6652 5568 5665 4399 +9138 1518 1836 425 3349 5167 5485 4074 6998 +9139 2415 688 3726 1906 6064 4337 7375 5555 +9140 2745 2011 2642 967 6394 5660 6291 4616 +9141 3130 1856 713 1335 6779 5505 4362 4984 +9142 1309 3282 368 2299 4958 6931 4017 5948 +9143 3171 2101 2250 722 6820 5750 5899 4371 +9144 2251 2104 1841 752 5900 5753 5490 4401 +9145 3036 1733 2170 414 6685 5382 5819 4063 +9146 2328 3173 2785 340 5977 6822 6434 3989 +9147 1778 282 2164 2727 5427 3931 5813 6376 +9148 1197 3409 244 3440 4846 7058 3893 7089 +9149 1356 3129 310 2535 5005 6778 3959 6184 +9150 673 3619 3069 1746 4322 7268 6718 5395 +9151 3163 1781 1738 727 6812 5430 5387 4376 +9152 3080 1957 2016 797 6729 5606 5665 4446 +9153 893 2267 216 2091 4542 5916 3865 5740 +9154 2464 2061 2210 801 6113 5710 5859 4450 +9155 3246 3488 422 1864 6895 7137 4071 5513 +9156 1428 2470 238 3350 5077 6119 3887 6999 +9157 2513 1853 1976 853 6162 5502 5625 4502 +9158 1156 2418 1471 3521 4805 6067 5120 7170 +9159 1731 795 1955 3052 5380 4444 5604 6701 +9160 724 2259 1124 3374 4373 5908 4773 7023 +9161 562 3024 1432 2824 4211 6673 5081 6473 +9162 2400 1212 618 2686 6049 4861 4267 6335 +9163 3536 1186 3669 1736 7185 4835 7318 5385 +9164 880 2232 2233 2231 4529 5881 5882 5880 +9165 1752 999 2104 2251 5401 4648 5753 5900 +9166 2967 339 2334 3565 6616 3988 5983 7214 +9167 2276 825 1648 3780 5925 4474 5297 7429 +9168 3036 895 2206 1733 6685 4544 5855 5382 +9169 2069 788 2280 2705 5718 4437 5929 6354 +9170 2936 525 2410 2624 6585 4174 6059 6273 +9171 2613 867 3275 644 6262 4516 6924 4293 +9172 808 2243 1411 3620 4457 5892 5060 7269 +9173 2763 793 2588 2590 6412 4442 6237 6239 +9174 2763 2590 2589 1380 6412 6239 6238 5029 +9175 730 3311 1131 1981 4379 6960 4780 5630 +9176 2907 3760 3625 1376 6556 7409 7274 5025 +9177 1006 2328 340 2424 4655 5977 3989 6073 +9178 3226 229 2165 1728 6875 3878 5814 5377 +9179 3226 1728 2929 948 6875 5377 6578 4597 +9180 2686 1851 1831 865 6335 5500 5480 4514 +9181 454 3289 1726 3613 4103 6938 5375 7262 +9182 2356 1265 3574 1986 6005 4914 7223 5635 +9183 890 2310 460 2129 4539 5959 4109 5778 +9184 97 96 1523 2509 193 192 5172 6158 +9185 3464 1737 2501 546 7113 5386 6150 4195 +9186 2954 651 1664 1744 6603 4300 5313 5393 +9187 1297 2394 1450 3504 4946 6043 5099 7153 +9188 3501 2499 3811 3322 7150 6148 7460 6971 +9189 3272 2181 424 1875 6921 5830 4073 5524 +9190 3218 971 3053 1761 6867 4620 6702 5410 +9191 3102 599 2365 1767 6751 4248 6014 5416 +9192 261 3205 2477 1729 3910 6854 6126 5378 +9193 1883 1321 3506 2650 5532 4970 7155 6299 +9194 2312 3712 1898 835 5961 7361 5547 4484 +9195 2156 347 1892 2345 5805 3996 5541 5994 +9196 2312 835 1732 964 5961 4484 5381 4613 +9197 2279 2278 2030 610 5928 5927 5679 4259 +9198 826 2530 353 1884 4475 6179 4002 5533 +9199 2809 2321 2439 1073 6458 5970 6088 4722 +9200 3480 2116 904 2896 7129 5765 4553 6545 +9201 3556 557 3218 1761 7205 4206 6867 5410 +9202 833 2238 900 2155 4482 5887 4549 5804 +9203 3579 2173 3105 759 7228 5822 6754 4408 +9204 3041 2009 824 1396 6690 5658 4473 5045 +9205 2911 1077 2969 1756 6560 4726 6618 5405 +9206 593 2839 1021 3586 4242 6488 4670 7235 +9207 1990 1114 1667 3277 5639 4763 5316 6926 +9208 1047 3000 323 2924 4696 6649 3972 6573 +9209 793 2221 1680 2588 4442 5870 5329 6237 +9210 1125 3192 1434 2670 4774 6841 5083 6319 +9211 2513 3720 1002 1853 6162 7369 4651 5502 +9212 3478 1045 2507 1760 7127 4694 6156 5409 +9213 3478 1760 2765 375 7127 5409 6414 4024 +9214 2066 472 2837 2311 5715 4121 6486 5960 +9215 818 2316 435 2060 4467 5965 4084 5709 +9216 2484 1900 2968 564 6133 5549 6617 4213 +9217 923 2531 1222 2838 4572 6180 4871 6487 +9218 2912 3023 1576 212 6561 6672 5225 3861 +9219 3377 1740 1945 769 7026 5389 5594 4418 +9220 2592 839 1859 1860 6241 4488 5508 5509 +9221 354 3061 990 2225 4003 6710 4639 5874 +9222 2464 801 2371 1926 6113 4450 6020 5575 +9223 793 2763 1224 2853 4442 6412 4873 6502 +9224 3683 357 3733 1758 7332 4006 7382 5407 +9225 3026 1813 641 1341 6675 5462 4290 4990 +9226 2216 821 3248 3525 5865 4470 6897 7174 +9227 3066 2033 3349 425 6715 5682 6998 4074 +9228 935 2329 980 2053 4584 5978 4629 5702 +9229 636 3382 3395 1888 4285 7031 7044 5537 +9230 3062 1250 3570 1805 6711 4899 7219 5454 +9231 381 2082 1331 2561 4030 5731 4980 6210 +9232 3769 1752 3312 673 7418 5401 6961 4322 +9233 3515 277 2335 1747 7164 3926 5984 5396 +9234 2017 1278 3162 3438 5666 4927 6811 7087 +9235 3317 1195 3200 3303 6966 4844 6849 6952 +9236 1907 1272 697 1257 5556 4921 4346 4906 +9237 2291 3268 957 1735 5940 6917 4606 5384 +9238 576 2074 1341 3786 4225 5723 4990 7435 +9239 1242 2247 1266 3001 4891 5896 4915 6650 +9240 2865 1772 2119 836 6514 5421 5768 4485 +9241 1874 2560 1771 269 5523 6209 5420 3918 +9242 3544 2299 838 2640 7193 5948 4487 6289 +9243 2613 644 3475 1839 6262 4293 7124 5488 +9244 2349 2042 3651 802 5998 5691 7300 4451 +9245 3811 1463 1991 3322 7460 5112 5640 6971 +9246 955 2809 1073 2661 4604 6458 4722 6310 +9247 2525 472 1861 1895 6174 4121 5510 5544 +9248 1084 3350 1779 3386 4733 6999 5428 7035 +9249 1388 1956 681 2862 5037 5605 4330 6511 +9250 2367 236 1440 2025 6016 3885 5089 5674 +9251 1065 2879 1222 3243 4714 6528 4871 6892 +9252 2802 330 2957 1818 6451 3979 6606 5467 +9253 1818 892 3161 2802 5467 4541 6810 6451 +9254 994 2048 837 2837 4643 5697 4486 6486 +9255 1002 3205 261 1853 4651 6854 3910 5502 +9256 3351 954 2239 1768 7000 4603 5888 5417 +9257 2821 1785 2971 946 6470 5434 6620 4595 +9258 805 3652 1265 2544 4454 7301 4914 6193 +9259 888 2765 1760 3832 4537 6414 5409 7481 +9260 3020 1777 1294 209 6669 5426 4943 3858 +9261 3246 2055 1105 3488 6895 5704 4754 7137 +9262 3556 1761 3508 874 7205 5410 7157 4523 +9263 2806 2014 2256 318 6455 5663 5905 3967 +9264 2698 473 2532 1819 6347 4122 6181 5468 +9265 497 3080 1697 2933 4146 6729 5346 6582 +9266 898 2078 97 2509 4547 5727 193 6158 +9267 3809 1920 1336 686 7458 5569 4985 4335 +9268 1175 3223 803 2281 4824 6872 4452 5930 +9269 2847 820 2146 1969 6496 4469 5795 5618 +9270 2749 1852 23 22 6398 5501 119 118 +9271 1097 2843 579 2254 4746 6492 4228 5903 +9272 2902 1782 1939 723 6551 5431 5588 4372 +9273 837 2103 331 2326 4486 5752 3980 5975 +9274 2255 918 2567 1447 5904 4567 6216 5096 +9275 2329 935 2311 2326 5978 4584 5960 5975 +9276 3201 1162 3105 2173 6850 4811 6754 5822 +9277 3529 2622 816 1639 7178 6271 4465 5288 +9278 2337 560 3379 2541 5986 4209 7028 6190 +9279 2541 1036 2338 2337 6190 4685 5987 5986 +9280 839 2516 863 1936 4488 6165 4512 5585 +9281 2142 2294 3606 1100 5791 5943 7255 4749 +9282 2735 1935 2630 459 6384 5584 6279 4108 +9283 3573 1648 825 2641 7222 5297 4474 6290 +9284 2002 3645 253 1795 5651 7294 3902 5444 +9285 393 1720 2773 3446 4042 5369 6422 7095 +9286 2178 2584 2264 541 5827 6233 5913 4190 +9287 3566 656 2659 1762 7215 4305 6308 5411 +9288 1127 3397 683 2934 4776 7046 4332 6583 +9289 1913 2703 2937 1326 5562 6352 6586 4975 +9290 2059 3203 1947 331 5708 6852 5596 3980 +9291 986 1899 383 2563 4635 5548 4032 6212 +9292 395 1230 2298 2403 4044 4879 5947 6052 +9293 1931 1481 713 1856 5580 5130 4362 5505 +9294 2496 980 2329 1947 6145 4629 5978 5596 +9295 447 2384 787 2050 4096 6033 4436 5699 +9296 285 2399 1737 3253 3934 6048 5386 6902 +9297 2290 2168 2060 819 5939 5817 5709 4468 +9298 881 2290 819 2167 4530 5939 4468 5816 +9299 2103 837 2048 481 5752 4486 5697 4130 +9300 2197 3614 1334 827 5846 7263 4983 4476 +9301 3827 1803 412 1209 7476 5452 4061 4858 +9302 1967 226 1729 2477 5616 3875 5378 6126 +9303 1557 924 1138 466 5206 4573 4787 4115 +9304 2887 1797 3172 1101 6536 5446 6821 4750 +9305 2851 2043 3442 706 6500 5692 7091 4355 +9306 1366 2270 1260 3308 5015 5919 4909 6957 +9307 2204 2573 3090 304 5853 6222 6739 3953 +9308 3547 2105 2455 512 7196 5754 6104 4161 +9309 3224 2421 3180 843 6873 6070 6829 4492 +9310 2562 2707 2718 866 6211 6356 6367 4515 +9311 2202 881 2143 2373 5851 4530 5792 6022 +9312 1586 3788 2179 1802 5235 7437 5828 5451 +9313 3243 2581 2320 1065 6892 6230 5969 4714 +9314 2305 385 1964 2973 5954 4034 5613 6622 +9315 1258 2664 643 3589 4907 6313 4292 7238 +9316 3138 1823 2366 958 6787 5472 6015 4607 +9317 3138 439 3716 1823 6787 4088 7365 5472 +9318 2917 1141 3748 1801 6566 4790 7397 5450 +9319 997 2913 671 2038 4646 6562 4320 5687 +9320 871 2377 492 2869 4520 6026 4141 6518 +9321 1415 2661 553 2769 5064 6310 4202 6418 +9322 2944 312 1962 2618 6593 3961 5611 6267 +9323 3522 1767 2365 1476 7171 5416 6014 5125 +9324 1075 1923 1033 2569 4724 5572 4682 6218 +9325 2885 763 2194 1808 6534 4412 5843 5457 +9326 2400 3419 3148 415 6049 7068 6797 4064 +9327 3397 1769 2993 683 7046 5418 6642 4332 +9328 2765 1831 1851 375 6414 5480 5500 4024 +9329 3109 1426 3782 1959 6758 5075 7431 5608 +9330 1164 2902 723 3288 4813 6551 4372 6937 +9331 2758 1511 3676 3714 6407 5160 7325 7363 +9332 1370 3699 1834 2466 5019 7348 5483 6115 +9333 1244 400 300 1072 4893 4049 3949 4721 +9334 50 3780 1648 51 146 7429 5297 147 +9335 2359 576 2031 2268 6008 4225 5680 5917 +9336 2702 1865 3337 301 6351 5514 6986 3950 +9337 3620 439 2281 2094 7269 4088 5930 5743 +9338 240 2445 864 2459 3889 6094 4513 6108 +9339 811 2416 1078 2603 4460 6065 4727 6252 +9340 1828 2956 2788 700 5477 6605 6437 4349 +9341 3429 1924 2271 1096 7078 5573 5920 4745 +9342 2197 827 3413 949 5846 4476 7062 4598 +9343 257 3629 1595 3045 3906 7278 5244 6694 +9344 3755 666 2388 1862 7404 4315 6037 5511 +9345 2057 353 1531 3114 5706 4002 5180 6763 +9346 1774 3438 3162 417 5423 7087 6811 4066 +9347 1949 991 1062 3254 5598 4640 4711 6903 +9348 2321 2822 1286 868 5970 6471 4935 4517 +9349 2578 1837 2750 934 6227 5486 6399 4583 +9350 1287 3164 891 2808 4936 6813 4540 6457 +9351 3698 1798 3638 258 7347 5447 7287 3907 +9352 959 2300 927 2408 4608 5949 4576 6057 +9353 462 2443 1649 2111 4111 6092 5298 5760 +9354 3284 1151 2010 2801 6933 4800 5659 6450 +9355 2786 1844 2634 810 6435 5493 6283 4459 +9356 1139 3001 1266 1992 4788 6650 4915 5641 +9357 2502 2001 1876 737 6151 5650 5525 4386 +9358 1779 267 1880 3386 5428 3916 5529 7035 +9359 3159 1421 1753 3681 6808 5070 5402 7330 +9360 2674 358 3498 3838 6323 4007 7147 7487 +9361 2459 2026 2332 863 6108 5675 5981 4512 +9362 3806 2277 3771 1358 7455 5926 7420 5007 +9363 2376 975 2617 2377 6025 4624 6266 6026 +9364 2791 1847 2667 910 6440 5496 6316 4559 +9365 92 91 1785 2821 188 187 5434 6470 +9366 3026 639 1586 1802 6675 4288 5235 5451 +9367 39 38 3147 3784 135 134 6796 7433 +9368 1275 3458 302 1783 4924 7107 3951 5432 +9369 1276 3458 1275 2159 4925 7107 4924 5808 +9370 1262 3365 508 2606 4911 7014 4157 6255 +9371 2755 1922 686 1336 6404 5571 4335 4985 +9372 2818 452 1638 1845 6467 4101 5287 5494 +9373 2303 235 2101 3171 5952 3884 5750 6820 +9374 567 869 1230 395 4216 4518 4879 4044 +9375 3527 2023 778 2396 7176 5672 4427 6045 +9376 954 2349 802 2246 4603 5998 4451 5895 +9377 289 2434 887 2093 3938 6083 4536 5742 +9378 2941 3761 2177 1815 6590 7410 5826 5464 +9379 1915 3252 1914 671 5564 6901 5563 4320 +9380 3130 1575 228 1856 6779 5224 3877 5505 +9381 3247 1007 2536 1801 6896 4656 6185 5450 +9382 2977 2372 3012 1171 6626 6021 6661 4820 +9383 3268 2401 1828 957 6917 6050 5477 4606 +9384 1110 2789 1004 2369 4759 6438 4653 6018 +9385 3124 1798 2497 956 6773 5447 6146 4605 +9386 1001 2511 448 2383 4650 6160 4097 6032 +9387 3769 673 1746 1811 7418 4322 5395 5460 +9388 3135 399 1264 3155 6784 4048 4913 6804 +9389 2458 821 2695 2046 6107 4470 6344 5695 +9390 2740 1312 730 1890 6389 4961 4379 5539 +9391 2949 2962 2395 479 6598 6611 6044 4128 +9392 2870 269 1225 1891 6519 3918 4874 5540 +9393 2942 2534 2422 1043 6591 6183 6071 4692 +9394 446 2058 1615 3063 4095 5707 5264 6712 +9395 981 2041 440 3038 4630 5690 4089 6687 +9396 1320 3040 1434 2172 4969 6689 5083 5821 +9397 3014 2040 2935 1017 6663 5689 6584 4666 +9398 3014 482 2942 2040 6663 4131 6591 5689 +9399 1017 2471 1219 3014 4666 6120 4868 6663 +9400 819 2355 379 2167 4468 6004 4028 5816 +9401 206 1880 1593 2754 3855 5529 5242 6403 +9402 3532 2152 3300 245 7181 5801 6949 3894 +9403 3744 707 1689 2081 7393 4356 5338 5730 +9404 2603 1948 2517 811 6252 5597 6166 4460 +9405 2155 900 3279 2410 5804 4549 6928 6059 +9406 2511 2013 1586 448 6160 5662 5235 4097 +9407 2314 2598 2569 1033 5963 6247 6218 4682 +9408 485 3457 674 1789 4134 7106 4323 5438 +9409 910 2666 1634 3301 4559 6315 5283 6950 +9410 3553 3225 1515 2217 7202 6874 5164 5866 +9411 3534 2402 224 1707 7183 6051 3873 5356 +9412 2415 1318 3700 2111 6064 4967 7349 5760 +9413 2415 2111 1649 688 6064 5760 5298 4337 +9414 777 2365 1471 3657 4426 6014 5120 7306 +9415 12 11 1675 2469 108 107 5324 6118 +9416 2748 1975 2148 912 6397 5624 5797 4561 +9417 3071 1365 540 2141 6720 5014 4189 5790 +9418 2517 1948 952 3352 6166 5597 4601 7001 +9419 2960 2544 1265 502 6609 6193 4914 4151 +9420 958 2366 381 2780 4607 6015 4030 6429 +9421 1254 2717 703 3348 4903 6366 4352 6997 +9422 534 2248 1135 2857 4183 5897 4784 6506 +9423 1949 3443 1228 2149 5598 7092 4877 5798 +9424 2899 2014 2806 734 6548 5663 6455 4383 +9425 1058 3016 1220 3088 4707 6665 4869 6737 +9426 3054 98 97 2078 6703 194 193 5727 +9427 1693 3709 1057 3149 5342 7358 4706 6798 +9428 3380 1797 2887 1117 7029 5446 6536 4766 +9429 3739 1249 3638 1798 7388 4898 7287 5447 +9430 994 2837 472 2525 4643 6486 4121 6174 +9431 3833 1805 3570 535 7482 5454 7219 4184 +9432 2914 2545 2667 1847 6563 6194 6316 5496 +9433 821 2216 1090 2695 4470 5865 4739 6344 +9434 2696 1088 3203 3055 6345 4737 6852 6704 +9435 3175 634 2181 3728 6824 4283 5830 7377 +9436 2895 1855 2781 662 6544 5504 6430 4311 +9437 2892 919 2498 1858 6541 4568 6147 5507 +9438 2985 1829 2505 718 6634 5478 6154 4367 +9439 3307 1594 726 270 6956 5243 4375 3919 +9440 741 2773 1720 2405 4390 6422 5369 6054 +9441 745 2561 1331 3678 4394 6210 4980 7327 +9442 3112 2178 983 3287 6761 5827 4632 6936 +9443 2454 2392 3142 905 6103 6041 6791 4554 +9444 3344 311 2130 1870 6993 3960 5779 5519 +9445 477 1094 3000 2931 4126 4743 6649 6580 +9446 2498 2047 2696 519 6147 5696 6345 4168 +9447 2160 2364 1244 1248 5809 6013 4893 4897 +9448 2750 3414 1460 934 6399 7063 5109 4583 +9449 1448 465 2995 1445 5097 4114 6644 5094 +9450 1059 2228 778 2339 4708 5877 4427 5988 +9451 3445 669 2935 2040 7094 4318 6584 5689 +9452 3156 2827 1954 342 6805 6476 5603 3991 +9453 3595 1812 3485 1237 7244 5461 7134 4886 +9454 1125 1968 464 3192 4774 5617 4113 6841 +9455 25 24 1561 2488 121 120 5210 6137 +9456 3063 818 2060 2168 6712 4467 5709 5817 +9457 3300 1825 3033 989 6949 5474 6682 4638 +9458 817 2072 1543 3812 4466 5721 5192 7461 +9459 3377 2135 847 1740 7026 5784 4496 5389 +9460 2378 755 3632 2379 6027 4404 7281 6028 +9461 1292 3845 413 2361 4941 7494 4062 6010 +9462 1045 3216 1338 2559 4694 6865 4987 6208 +9463 2260 731 1990 3277 5909 4380 5639 6926 +9464 916 2697 548 2029 4565 6346 4197 5678 +9465 1366 1458 767 766 5015 5107 4416 4415 +9466 3405 1809 2457 441 7054 5458 6106 4090 +9467 3589 643 1552 1830 7238 4292 5201 5479 +9468 3492 2636 834 1954 7141 6285 4483 5603 +9469 2430 2341 1668 941 6079 5990 5317 4590 +9470 2026 2864 1640 230 5675 6513 5289 3879 +9471 1413 3217 1008 2739 5062 6866 4657 6388 +9472 3015 409 3228 1854 6664 4058 6877 5503 +9473 3382 3052 1955 3395 7031 6701 5604 7044 +9474 325 3533 984 1479 3974 7182 4633 5128 +9475 2655 1039 2861 2297 6304 4688 6510 5946 +9476 21 20 1528 3637 117 116 5177 7286 +9477 870 1967 687 2671 4519 5616 4336 6320 +9478 3232 1821 2781 933 6881 5470 6430 4582 +9479 1850 418 1849 755 5499 4067 5498 4404 +9480 2297 889 2166 2655 5946 4538 5815 6304 +9481 3580 2199 774 1925 7229 5848 4423 5574 +9482 986 3010 424 2295 4635 6659 4073 5944 +9483 3556 1904 1423 557 7205 5553 5072 4206 +9484 916 1958 429 2835 4565 5607 4078 6484 +9485 3771 2277 1639 816 7420 5926 5288 4465 +9486 3356 1128 1717 2532 7005 4777 5366 6181 +9487 2485 1375 3778 2668 6134 5024 7427 6317 +9488 940 2775 1165 2690 4589 6424 4814 6339 +9489 2834 1433 617 2144 6483 5082 4266 5793 +9490 979 2586 1243 2981 4628 6235 4892 6630 +9491 3688 997 2505 1829 7337 4646 6154 5478 +9492 3635 490 1686 2751 7284 4139 5335 6400 +9493 1153 2514 640 3437 4802 6163 4289 7086 +9494 2154 2892 2963 296 5803 6541 6612 3945 +9495 3815 1404 825 2276 7464 5053 4474 5925 +9496 742 3590 1518 3349 4391 7239 5167 6998 +9497 2938 1883 2650 486 6587 5532 6299 4135 +9498 783 3227 347 2156 4432 6876 3996 5805 +9499 1373 3095 1618 1882 5022 6744 5267 5531 +9500 1050 2087 552 3298 4699 5736 4201 6947 +9501 2840 885 1649 2443 6489 4534 5298 6092 +9502 1833 275 1933 3204 5482 3924 5582 6853 +9503 2478 2825 2736 1024 6127 6474 6385 4673 +9504 3319 1844 2508 1111 6968 5493 6157 4760 +9505 3463 798 3600 1824 7112 4447 7249 5473 +9506 3280 2353 2824 884 6929 6002 6473 4533 +9507 1264 3562 568 3155 4913 7211 4217 6804 +9508 3830 224 2592 1860 7479 3873 6241 5509 +9509 1180 1533 1647 2004 4829 5182 5296 5653 +9510 764 1849 418 3551 4413 5498 4067 7200 +9511 59 2548 1612 60 155 6197 5261 156 +9512 72 2549 1666 73 168 6198 5315 169 +9513 1120 1896 475 3048 4769 5545 4124 6697 +9514 909 1891 204 2950 4558 5540 3853 6599 +9515 3063 2168 2290 446 6712 5817 5939 4095 +9516 3685 1997 2991 233 7334 5646 6640 3882 +9517 2425 1397 3470 3406 6074 5046 7119 7055 +9518 3153 1852 2749 943 6802 5501 6398 4592 +9519 2370 2412 1851 3125 6019 6061 5500 6774 +9520 3661 1223 2483 2538 7310 4872 6132 6187 +9521 2382 2323 2734 455 6031 5972 6383 4104 +9522 1235 2807 902 3067 4884 6456 4551 6716 +9523 482 2474 1028 2492 4131 6123 4677 6141 +9524 2272 451 1893 3137 5921 4100 5542 6786 +9525 1888 3237 838 1543 5537 6886 4487 5192 +9526 3259 768 3407 1838 6908 4417 7056 5487 +9527 3802 2298 1230 3292 7451 5947 4879 6941 +9528 3688 1829 2985 485 7337 5478 6634 4134 +9529 2585 2067 1868 859 6234 5716 5517 4508 +9530 69 2750 1837 70 165 6399 5486 166 +9531 1554 684 2626 315 5203 4333 6275 3964 +9532 1843 3358 2034 345 5492 7007 5683 3994 +9533 1897 1102 3061 2943 5546 4751 6710 6592 +9534 3310 317 2022 1878 6959 3966 5671 5527 +9535 2149 585 991 1949 5798 4234 4640 5598 +9536 3806 83 82 2277 7455 179 178 5926 +9537 3508 1963 1962 874 7157 5612 5611 4523 +9538 224 2402 1337 2592 3873 6051 4986 6241 +9539 2304 2392 2454 995 5953 6041 6103 4644 +9540 2029 2620 1457 916 5678 6269 5106 4565 +9541 317 3413 1465 2183 3966 7062 5114 5832 +9542 665 3049 235 1881 4314 6698 3884 5530 +9543 3843 1343 499 1841 7492 4992 4148 5490 +9544 2627 2032 2825 996 6276 5681 6474 4645 +9545 816 2622 1461 2621 4465 6271 5110 6270 +9546 1859 3189 2203 276 5508 6838 5852 3925 +9547 3179 1868 2067 489 6828 5517 5716 4138 +9548 3318 1931 1856 228 6967 5580 5505 3877 +9549 1181 2985 718 3513 4830 6634 4367 7162 +9550 3715 413 3293 1855 7364 4062 6942 5504 +9551 3228 786 2269 1854 6877 4435 5918 5503 +9552 2233 2110 1835 879 5882 5759 5484 4528 +9553 591 3759 1231 2510 4240 7408 4880 6159 +9554 2737 1174 1896 1121 6386 4823 5545 4770 +9555 503 3535 1179 2296 4152 7184 4828 5945 +9556 3755 1862 3264 857 7404 5511 6913 4506 +9557 522 3511 1108 2744 4171 7160 4757 6393 +9558 512 3290 1276 2159 4161 6939 4925 5808 +9559 1014 2406 520 2543 4663 6055 4169 6192 +9560 3519 436 3848 1965 7168 4085 7497 5614 +9561 889 2468 457 2186 4538 6117 4106 5835 +9562 3044 2128 1535 234 6693 5777 5184 3883 +9563 2568 2770 1973 969 6217 6419 5622 4618 +9564 701 1846 415 3410 4350 5495 4064 7059 +9565 1653 1594 843 3385 5302 5243 4492 7034 +9566 1219 2471 1547 3531 4868 6120 5196 7180 +9567 381 3847 1284 2082 4030 7496 4933 5731 +9568 3126 438 3395 1955 6775 4087 7044 5604 +9569 925 1933 275 2975 4574 5582 3924 6624 +9570 1035 3253 1737 3464 4684 6902 5386 7113 +9571 3744 2081 2342 846 7393 5730 5991 4495 +9572 2503 1280 2802 3161 6152 4929 6451 6810 +9573 3011 1966 557 1423 6660 5615 4206 5072 +9574 2795 1974 2614 1012 6444 5623 6263 4661 +9575 1573 3848 436 2222 5222 7497 4085 5871 +9576 2343 932 1492 2374 5992 4581 5141 6023 +9577 1862 218 1596 3264 5511 3867 5245 6913 +9578 3365 2663 1609 508 7014 6312 5258 4157 +9579 2285 3659 1775 1346 5934 7308 5424 4995 +9580 2845 994 2525 2162 6494 4643 6174 5811 +9581 1211 3491 1602 3604 4860 7140 5251 7253 +9582 31 3723 3800 32 127 7372 7449 128 +9583 3788 754 1942 2179 7437 4403 5591 5828 +9584 3770 1868 3179 951 7419 5517 6828 4600 +9585 2899 846 2256 2014 6548 4495 5905 5663 +9586 1227 2704 420 3110 4876 6353 4069 6759 +9587 3233 1352 3017 2593 6882 5001 6666 6242 +9588 2593 896 1345 3233 6242 4545 4994 6882 +9589 2191 2846 1442 1009 5840 6495 5091 4658 +9590 2936 2624 2625 1076 6585 6273 6274 4725 +9591 3501 3322 1738 1857 7150 6971 5387 5506 +9592 1911 3046 3376 1203 5560 6695 7025 4852 +9593 3046 1911 2744 1751 6695 5560 6393 5400 +9594 584 3188 1135 2248 4233 6837 4784 5897 +9595 3015 1854 675 3387 6664 5503 4324 7036 +9596 2079 3648 729 1676 5728 7297 4378 5325 +9597 2782 1986 3574 338 6431 5635 7223 3987 +9598 3298 1865 2702 1050 6947 5514 6351 4699 +9599 38 37 1330 3147 134 133 4979 6796 +9600 1979 3628 1495 3763 5628 7277 5144 7412 +9601 2847 1969 1645 715 6496 5618 5294 4364 +9602 2732 2731 1340 1038 6381 6380 4989 4687 +9603 377 963 2158 1417 4026 4612 5807 5066 +9604 3239 2184 1474 602 6888 5833 5123 4251 +9605 3223 3617 1813 337 6872 7266 5462 3986 +9606 3756 1876 2001 822 7405 5525 5650 4471 +9607 1314 3332 1313 2555 4963 6981 4962 6204 +9608 3399 921 1466 2724 7048 4570 5115 6373 +9609 1297 3369 521 2394 4946 7018 4170 6043 +9610 661 3552 1652 2972 4310 7201 5301 6621 +9611 1045 2559 528 2507 4694 6208 4177 6156 +9612 3137 1893 2240 789 6786 5542 5889 4438 +9613 2695 507 2787 2046 6344 4156 6436 5695 +9614 3197 456 2823 1885 6846 4105 6472 5534 +9615 3272 1875 1356 642 6921 5524 5005 4291 +9616 564 3569 1279 3273 4213 7218 4928 6922 +9617 862 1655 325 1479 4511 5304 3974 5128 +9618 479 2395 980 2496 4128 6044 4629 6145 +9619 2436 3761 3696 1506 6085 7410 7345 5155 +9620 2575 903 2156 2345 6224 4552 5805 5994 +9621 2749 3637 1528 943 6398 7286 5177 4592 +9622 3341 1927 2566 929 6990 5576 6215 4578 +9623 3062 1924 3429 383 6711 5573 7078 4032 +9624 2815 704 1466 1997 6464 4353 5115 5646 +9625 3060 2137 595 1405 6709 5786 4244 5054 +9626 2477 3441 687 1967 6126 7090 4336 5616 +9627 3137 1541 758 2272 6786 5190 4407 5921 +9628 3099 1921 2671 687 6748 5570 6320 4336 +9629 2109 841 1903 3477 5758 4490 5552 7126 +9630 1495 3628 1382 3671 5144 7277 5031 7320 +9631 101 100 1513 3731 197 196 5162 7380 +9632 529 586 3081 740 4178 4235 6730 4389 +9633 1339 2697 1357 1909 4988 6346 5006 5558 +9634 44 2756 1473 45 140 6405 5122 141 +9635 509 2817 844 2011 4158 6466 4493 5660 +9636 1307 3346 1028 2474 4956 6995 4677 6123 +9637 32 3800 1816 33 128 7449 5465 129 +9638 840 2591 468 2218 4489 6240 4117 5867 +9639 2164 282 2051 2607 5813 3931 5700 6256 +9640 3708 1885 2384 928 7357 5534 6033 4577 +9641 2758 2280 1601 613 6407 5929 5250 4262 +9642 3692 2772 458 2079 7341 6421 4107 5728 +9643 736 3186 419 1913 4385 6835 4068 5562 +9644 970 2869 492 2044 4619 6518 4141 5693 +9645 3029 2890 2007 1342 6678 6539 5656 4991 +9646 2890 3029 1583 743 6539 6678 5232 4392 +9647 1647 2131 3274 2049 5296 5780 6923 5698 +9648 1086 2867 855 2742 4735 6516 4504 6391 +9649 2606 2138 3525 1262 6255 5787 7174 4911 +9650 3324 3440 244 1745 6973 7089 3893 5394 +9651 3324 667 1905 3440 6973 4316 5554 7089 +9652 3150 1929 1552 365 6799 5578 5201 4014 +9653 3530 2122 2197 949 7179 5771 5846 4598 +9654 3161 892 2480 2114 6810 4541 6129 5763 +9655 3164 2114 2480 891 6813 5763 6129 4540 +9656 2300 813 2059 927 5949 4462 5708 4576 +9657 3395 438 3237 1888 7044 4087 6886 5537 +9658 3796 1989 1988 625 7445 5638 5637 4274 +9659 2753 2337 2338 796 6402 5986 5987 4445 +9660 3793 732 1780 1901 7442 4381 5429 5550 +9661 2997 3714 3676 480 6646 7363 7325 4129 +9662 88 87 1431 2852 184 183 5080 6501 +9663 1058 3088 537 2196 4707 6737 4186 5845 +9664 339 3191 1158 2334 3988 6840 4807 5983 +9665 1035 3464 546 1898 4684 7113 4195 5547 +9666 1177 2806 318 3037 4826 6455 3967 6686 +9667 1387 3336 559 2660 5036 6985 4208 6309 +9668 2411 847 2135 3520 6060 4496 5784 7169 +9669 637 2654 1176 2587 4286 6303 4825 6236 +9670 3330 1003 1971 1928 6979 4652 5620 5577 +9671 1928 450 1607 3330 5577 4099 5256 6979 +9672 57 3 56 3509 153 7 152 7158 +9673 75 3510 76 4 171 7159 172 8 +9674 3820 779 3117 1908 7469 4428 6766 5557 +9675 741 3695 1582 2773 4390 7344 5231 6422 +9676 1086 2146 820 2610 4735 5795 4469 6259 +9677 2871 2108 2388 812 6520 5757 6037 4461 +9678 3252 848 2242 1914 6901 4497 5891 5563 +9679 3597 2572 1641 2136 7246 6221 5290 5785 +9680 1111 2508 1010 2803 4760 6157 4659 6452 +9681 2254 3450 2868 1061 5903 7099 6517 4710 +9682 3210 1443 1758 3733 6859 5092 5407 7382 +9683 2434 2804 2217 887 6083 6453 5866 4536 +9684 1133 1943 762 3741 4782 5592 4411 7390 +9685 3652 805 1641 2572 7301 4454 5290 6221 +9686 484 2662 901 2125 4133 6311 4550 5774 +9687 3276 1295 646 1917 6925 4944 4295 5566 +9688 952 1902 490 3352 4601 5551 4139 7001 +9689 2864 2026 2459 864 6513 5675 6108 4513 +9690 3381 1389 2968 1900 7030 5038 6617 5549 +9691 2648 1226 1966 3011 6297 4875 5615 6660 +9692 1562 3715 800 3794 5211 7364 4449 7443 +9693 1920 3812 1543 368 5569 7461 5192 4017 +9694 2742 2097 1419 410 6391 5746 5068 4059 +9695 2554 2268 2278 3533 6203 5917 5927 7182 +9696 66 65 1595 2790 162 161 5244 6439 +9697 3809 817 3812 1920 7458 4466 7461 5569 +9698 2314 3575 1386 1034 5963 7224 5035 4683 +9699 928 2384 447 1866 4577 6033 4096 5515 +9700 2916 238 2470 2012 6565 3887 6119 5661 +9701 2055 3246 1864 697 5704 6895 5513 4346 +9702 3208 626 2537 3005 6857 4275 6186 6654 +9703 1457 3475 644 2722 5106 7124 4293 6371 +9704 3080 497 2816 1957 6729 4146 6465 5606 +9705 3477 1903 2391 220 7126 5552 6040 3869 +9706 3111 1146 2770 2568 6760 4795 6419 6217 +9707 1147 3178 1537 3578 4796 6827 5186 7227 +9708 1397 2847 715 3675 5046 6496 4364 7324 +9709 296 2963 1511 1995 3945 6612 5160 5644 +9710 3150 1426 569 2207 6799 5075 4218 5856 +9711 3297 759 3105 2018 6946 4408 6754 5667 +9712 3008 854 2064 1087 6657 4503 5713 4736 +9713 80 3329 1639 81 176 6978 5288 177 +9714 1435 3816 736 2652 5084 7465 4385 6301 +9715 2873 2453 2262 988 6522 6102 5911 4637 +9716 1912 3641 3129 657 5561 7290 6778 4306 +9717 2645 783 2156 903 6294 4432 5805 4552 +9718 3109 1959 2612 594 6758 5608 6261 4243 +9719 3426 2325 2028 945 7075 5974 5677 4594 +9720 680 2966 1455 2003 4329 6615 5104 5652 +9721 993 2530 826 2630 4642 6179 4475 6279 +9722 782 2148 449 2658 4431 5797 4098 6307 +9723 1267 2746 989 3033 4916 6395 4638 6682 +9724 3133 2015 2982 735 6782 5664 6631 4384 +9725 1442 2846 504 2169 5091 6495 4153 5818 +9726 3405 441 2566 1927 7054 4090 6215 5576 +9727 2025 1440 3411 3390 5674 5089 7060 7039 +9728 3460 899 1932 2324 7109 4548 5581 5973 +9729 2899 734 3725 2301 6548 4383 7374 5950 +9730 3405 1927 2677 1000 7054 5576 6326 4649 +9731 1039 2783 996 2604 4688 6432 4645 6253 +9732 350 2237 1482 3762 3999 5886 5131 7411 +9733 1322 2948 661 2972 4971 6597 4310 6621 +9734 2655 2166 1916 343 6304 5815 5565 3992 +9735 2844 2140 1400 295 6493 5789 5049 3944 +9736 1435 2913 1953 3816 5084 6562 5602 7465 +9737 1159 2144 617 3760 4808 5793 4266 7409 +9738 3433 2005 2710 922 7082 5654 6359 4571 +9739 1115 2387 374 3499 4764 6036 4023 7148 +9740 450 2989 1480 3299 4099 6638 5129 6948 +9741 2982 2015 2257 845 6631 5664 5906 4494 +9742 2300 480 2351 813 5949 4129 6000 4462 +9743 2554 936 2359 2268 6203 4585 6008 5917 +9744 3041 1462 211 2009 6690 5111 3860 5658 +9745 3151 760 3391 3104 6800 4409 7040 6753 +9746 2939 371 3668 2063 6588 4020 7317 5712 +9747 456 3453 1143 2823 4105 7102 4792 6472 +9748 3307 2354 843 1594 6956 6003 4492 5243 +9749 3757 1935 2735 1301 7406 5584 6384 4950 +9750 2850 532 2392 2304 6499 4181 6041 5953 +9751 2515 2428 2654 637 6164 6077 6303 4286 +9752 2860 2180 1723 352 6509 5829 5372 4001 +9753 1183 3186 736 3281 4832 6835 4385 6930 +9754 3426 478 2631 2325 7075 4127 6280 5974 +9755 204 2133 968 2950 3853 5782 4617 6599 +9756 464 2665 810 2172 4113 6314 4459 5821 +9757 2374 2812 2036 931 6023 6461 5685 4580 +9758 777 3657 392 2106 4426 7306 4041 5755 +9759 2200 3157 1799 312 5849 6806 5448 3961 +9760 52 51 1648 3295 148 147 5297 6944 +9761 2036 1301 2735 931 5685 4950 6384 4580 +9762 2646 2213 1378 322 6295 5862 5027 3971 +9763 675 3684 1778 3387 4324 7333 5427 7036 +9764 2735 459 1996 2343 6384 4108 5645 5992 +9765 3648 1934 2154 729 7297 5583 5803 4378 +9766 2196 537 1923 3279 5845 4186 5572 6928 +9767 328 2599 2601 2600 3977 6248 6250 6249 +9768 2915 2055 697 1272 6564 5704 4346 4921 +9769 1311 2209 765 2644 4960 5858 4414 6293 +9770 2953 2097 2742 855 6602 5746 6391 4504 +9771 2174 2943 3061 354 5823 6592 6710 4003 +9772 2948 1322 2157 2874 6597 4971 5806 6523 +9773 2691 2171 2782 338 6340 5820 6431 3987 +9774 557 1966 972 3219 4206 5615 4621 6868 +9775 1979 3763 2275 924 5628 7412 5924 4573 +9776 3465 458 2772 2035 7114 4107 6421 5684 +9777 783 2510 1231 3227 4432 6159 4880 6876 +9778 1955 795 1788 3265 5604 4444 5437 6914 +9779 3700 915 2066 2487 7349 4564 5715 6136 +9780 3685 2002 1795 937 7334 5651 5444 4586 +9781 459 2630 826 2220 4108 6279 4475 5869 +9782 2688 2614 2579 1025 6337 6263 6228 4674 +9783 1402 3596 284 2518 5051 7245 3933 6167 +9784 2558 3833 2249 873 6207 7482 5898 4522 +9785 379 3074 1279 2205 4028 6723 4928 5854 +9786 2579 2614 1974 510 6228 6263 5623 4159 +9787 950 3238 650 1961 4599 6887 4299 5610 +9788 973 3211 213 2352 4622 6860 3862 6001 +9789 3265 1408 3126 1955 6914 5057 6775 5604 +9790 3156 1132 3142 1982 6805 4781 6791 5631 +9791 486 2650 1032 3077 4135 6299 4681 6726 +9792 3392 1964 788 530 7041 5613 4437 4179 +9793 1164 3505 673 3312 4813 7154 4322 6961 +9794 1499 1391 3564 589 5148 5040 7213 4238 +9795 1221 2998 858 3593 4870 6647 4507 7242 +9796 3390 1688 815 2025 7039 5337 4464 5674 +9797 1036 2856 387 2338 4685 6505 4036 5987 +9798 3218 1977 2886 971 6867 5626 6535 4620 +9799 3655 1142 2651 2056 7304 4791 6300 5705 +9800 3655 2056 1401 303 7304 5705 5050 3952 +9801 1199 3021 574 2635 4848 6670 4223 6284 +9802 563 3341 929 1952 4212 6990 4578 5601 +9803 1398 3030 310 3129 5047 6679 3959 6778 +9804 1141 2917 844 2817 4790 6566 4493 6466 +9805 3799 347 3227 2045 7448 3996 6876 5694 +9806 2407 849 1846 2800 6056 4498 5495 6449 +9807 3339 1977 3219 972 6988 5626 6868 4621 +9808 2604 2406 2861 1039 6253 6055 6510 4688 +9809 3037 318 1948 2603 6686 3967 5597 6252 +9810 3688 485 3281 1953 7337 4134 6930 5602 +9811 2129 460 2872 1020 5778 4109 6521 4669 +9812 572 3143 770 2000 4221 6792 4419 5649 +9813 2427 3098 1492 932 6076 6747 5141 4581 +9814 699 3435 1993 2436 4348 7084 5642 6085 +9815 3040 583 1742 3221 6689 4232 5391 6870 +9816 999 3139 570 2104 4648 6788 4219 5753 +9817 2551 3456 2125 1028 6200 7105 5774 4677 +9818 2320 2581 1909 875 5969 6230 5558 4524 +9819 2124 3803 1763 699 5773 7452 5412 4348 +9820 1077 3267 1144 2969 4726 6916 4793 6618 +9821 1303 2792 930 1972 4952 6441 4579 5621 +9822 1261 2964 1140 2225 4910 6613 4789 5874 +9823 605 2020 1537 3178 4254 5669 5186 6827 +9824 1374 2192 239 2908 5023 5841 3888 6557 +9825 270 404 2609 2287 3919 4053 6258 5936 +9826 721 3059 1021 2183 4370 6708 4670 5832 +9827 3803 1538 533 1763 7452 5187 4182 5412 +9828 3626 1252 705 1946 7275 4901 4354 5595 +9829 1164 3312 474 2902 4813 6961 4123 6551 +9830 2627 343 1916 2302 6276 3992 5565 5951 +9831 3816 1953 3281 736 7465 5602 6930 4385 +9832 3722 1951 2915 352 7371 5600 6564 4001 +9833 3722 1104 1345 1951 7371 4753 4994 5600 +9834 2254 1061 1521 3303 5903 4710 5170 6952 +9835 3734 1405 595 2610 7383 5054 4244 6259 +9836 356 2454 905 2700 4005 6103 4554 6349 +9837 3043 2348 1740 847 6692 5997 5389 4496 +9838 2328 1006 2669 2591 5977 4655 6318 6240 +9839 1140 2964 513 2547 4789 6613 4162 6196 +9840 650 3238 1671 2019 4299 6887 5320 5668 +9841 1177 2153 734 2806 4826 5802 4383 6455 +9842 3492 1954 2827 1184 7141 5603 6476 4833 +9843 893 2091 1548 2951 4542 5740 5197 6600 +9844 2952 2092 2265 894 6601 5741 5914 4543 +9845 534 2983 1170 2248 4183 6632 4819 5897 +9846 1181 3457 485 2985 4830 7106 4134 6634 +9847 3392 1155 2973 1964 7041 4804 6622 5613 +9848 808 3241 314 2243 4457 6890 3963 5892 +9849 2957 330 1814 2313 6606 3979 5463 5962 +9850 333 3288 723 1978 3982 6937 4372 5627 +9851 3688 1953 2913 997 7337 5602 6562 4646 +9852 219 3313 853 1976 3868 6962 4502 5625 +9853 3749 2405 777 2106 7398 6054 4426 5755 +9854 2144 523 1766 2834 5793 4172 5415 6483 +9855 3502 3225 3553 2069 7151 6874 7202 5718 +9856 3502 2069 2705 324 7151 5718 6354 3973 +9857 2657 2269 786 1271 6306 5918 4435 4920 +9858 1429 3321 1030 2987 5078 6970 4679 6636 +9859 3769 1811 362 2493 7418 5460 4011 6142 +9860 1522 3687 253 2764 5171 7336 3902 6413 +9861 3339 286 2886 1977 6988 3935 6535 5626 +9862 3782 1194 2612 1959 7431 4843 6261 5608 +9863 2083 99 98 3054 5732 195 194 6703 +9864 3848 753 2093 1965 7497 4402 5742 5614 +9865 3747 2462 2230 442 7396 6111 5879 4091 +9866 3258 1994 809 1268 6907 5643 4458 4917 +9867 858 2998 293 2088 4507 6647 3942 5737 +9868 3005 2537 1989 1149 6654 6186 5638 4798 +9869 295 1716 1691 3089 3944 5365 5340 6738 +9870 3508 431 1475 1963 7157 4080 5124 5612 +9871 2308 501 2297 2861 5957 4150 5946 6510 +9872 1167 2666 910 2667 4816 6315 4559 6316 +9873 3519 1965 2093 887 7168 5614 5742 4536 +9874 505 2320 875 2628 4154 5969 4524 6277 +9875 2944 2618 2021 1053 6593 6267 5670 4702 +9876 3318 228 2828 1985 6967 3877 6477 5634 +9877 2668 3778 3122 550 6317 7427 6771 4199 +9878 343 2783 1039 2655 3992 6432 4688 6304 +9879 724 2174 992 3027 4373 5823 4641 6676 +9880 53 3141 1503 54 149 6790 5152 150 +9881 2756 44 43 2282 6405 140 139 5931 +9882 2808 891 1877 2419 6457 4540 5526 6068 +9883 1194 3083 1090 2612 4843 6732 4739 6261 +9884 966 2530 993 2489 4615 6179 4642 6138 +9885 3781 1970 3468 1112 7430 5619 7117 4761 +9886 27 3644 28 2 123 7293 124 6 +9887 2738 782 2658 2241 6387 4431 6307 5890 +9888 79 78 1496 3106 175 174 5145 6755 +9889 2845 2229 712 1485 6494 5878 4361 5134 +9890 2229 2845 2162 309 5878 6494 5811 3958 +9891 547 2100 1220 3016 4196 5749 4869 6665 +9892 1281 3495 1546 2753 4930 7144 5195 6402 +9893 967 2700 1014 2543 4616 6349 4663 6192 +9894 3663 2903 869 359 7312 6552 4518 4008 +9895 3127 2721 2527 538 6776 6370 6176 4187 +9896 3512 833 2155 3002 7161 4482 5804 6651 +9897 1059 2339 303 3255 4708 5988 3952 6904 +9898 548 3206 849 2029 4197 6855 4498 5678 +9899 3373 487 1869 2637 7022 4136 5518 6286 +9900 1549 3822 677 2730 5198 7471 4326 6379 +9901 3257 2215 3467 1089 6906 5864 7116 4738 +9902 3627 1606 624 2227 7276 5255 4273 5876 +9903 1255 991 585 493 4904 4640 4234 4142 +9904 953 2683 1093 2684 4602 6332 4742 6333 +9905 3737 1975 2748 670 7386 5624 6397 4319 +9906 2309 3324 1745 830 5958 6973 5394 4479 +9907 2342 2734 1902 952 5991 6383 5551 4601 +9908 1227 2288 668 2704 4876 5937 4317 6353 +9909 883 2602 1137 2423 4532 6251 4786 6072 +9910 1024 2988 1116 2150 4673 6637 4765 5799 +9911 2961 2123 1440 236 6610 5772 5089 3885 +9912 2406 2604 2478 520 6055 6253 6127 4169 +9913 3772 2375 1676 396 7421 6024 5325 4045 +9914 767 1458 582 1510 4416 5107 4231 5159 +9915 1299 3383 780 2761 4948 7032 4429 6410 +9916 3377 1351 3360 2135 7026 5000 7009 5784 +9917 1025 3093 350 2693 4674 6742 3999 6342 +9918 3553 530 788 2069 7202 4179 4437 5718 +9919 3435 1154 3068 1993 7084 4803 6717 5642 +9920 2953 855 2573 2204 6602 4504 6222 5853 +9921 2233 879 1988 2231 5882 4528 5637 5880 +9922 246 3789 1754 2826 3895 7438 5403 6475 +9923 2520 3797 1034 1386 6169 7446 4683 5035 +9924 3328 2292 1710 746 6977 5941 5359 4395 +9925 3754 1983 272 1288 7403 5632 3921 4937 +9926 1014 2700 905 2308 4663 6349 4554 5957 +9927 1019 3415 1220 2100 4668 7064 4869 5749 +9928 1328 3235 969 2552 4977 6884 4618 6201 +9929 984 2279 1464 3169 4633 5928 5113 6818 +9930 3355 2175 701 1629 7004 5824 4350 5278 +9931 3385 231 1069 1653 7034 3880 4718 5302 +9932 2898 1126 3209 2595 6547 4775 6858 6244 +9933 509 3675 715 1984 4158 7324 4364 5633 +9934 2586 417 3242 3610 6235 4066 6891 7259 +9935 3770 313 1634 2582 7419 3962 5283 6231 +9936 2059 813 3055 3203 5708 4462 6704 6852 +9937 1131 2777 216 3388 4780 6426 3865 7037 +9938 3227 1231 3454 2045 6876 4880 7103 5694 +9939 3433 499 2978 2005 7082 4148 6627 5654 +9940 1350 2580 334 3424 4999 6229 3983 7073 +9941 2361 2663 3365 1292 6010 6312 7014 4941 +9942 3620 2094 2062 808 7269 5743 5711 4457 +9943 2729 3474 3550 1277 6378 7123 7199 4926 +9944 3269 2065 68 67 6918 5714 164 163 +9945 1132 2512 985 3393 4781 6161 4634 7042 +9946 2736 2825 2032 488 6385 6474 5681 4137 +9947 2758 1055 2705 2280 6407 4704 6354 5929 +9948 1026 3093 1025 2579 4675 6742 4674 6228 +9949 219 2596 1550 3313 3868 6245 5199 6962 +9950 3166 1106 2556 2073 6815 4755 6205 5722 +9951 1238 2636 549 3207 4887 6285 4198 6856 +9952 210 3709 1693 2720 3859 7358 5342 6369 +9953 3072 2560 1874 925 6721 6209 5523 4574 +9954 532 2850 1085 2774 4181 6499 4734 6423 +9955 489 3693 1124 2259 4138 7342 4773 5908 +9956 3393 2085 2297 501 7042 5734 5946 4150 +9957 1115 2757 633 2387 4764 6406 4282 6036 +9958 3034 829 3791 2335 6683 4478 7440 5984 +9959 628 2327 1303 2891 4277 5976 4952 6540 +9960 3432 2173 3579 1107 7081 5822 7228 4756 +9961 3432 762 3201 2173 7081 4411 6850 5822 +9962 1103 3489 1529 3497 4752 7138 5178 7146 +9963 1685 3045 911 3044 5334 6694 4560 6693 +9964 1764 2863 432 3118 5413 6512 4081 6767 +9965 1479 1068 316 862 5128 4717 3965 4511 +9966 1286 2822 1975 3737 4935 6471 5624 7386 +9967 3053 971 608 1695 6702 4620 4257 5344 +9968 2457 1398 3129 3641 6106 5047 6778 7290 +9969 2701 944 2325 2631 6350 4593 5974 6280 +9970 3116 351 2738 2241 6765 4000 6387 5890 +9971 507 2695 1090 3083 4156 6344 4739 6732 +9972 3645 2002 2830 1317 7294 5651 6479 4966 +9973 3349 2033 1794 742 6998 5682 5443 4391 +9974 3685 233 2830 2002 7334 3882 6479 5651 +9975 1360 3305 1388 2039 5009 6954 5037 5688 +9976 2956 2170 738 1436 6605 5819 4387 5085 +9977 3272 1256 3728 2181 6921 4905 7377 5830 +9978 2673 2490 2819 1010 6322 6139 6468 4659 +9979 43 42 1918 3214 139 138 5567 6863 +9980 3654 1125 2670 2368 7303 4774 6319 6017 +9981 995 3077 1032 2304 4644 6726 4681 5953 +9982 1070 2643 1150 2978 4719 6292 4799 6627 +9983 694 2585 1347 2526 4343 6234 4996 6175 +9984 1391 1390 380 3564 5040 5039 4029 7213 +9985 1160 3283 2716 2052 4809 6932 6365 5701 +9986 297 2089 1477 3193 3946 5738 5126 6842 +9987 3002 2155 2410 525 6651 5804 6059 4174 +9988 527 3601 737 2010 4176 7250 4386 5659 +9989 2734 2342 2081 455 6383 5991 5730 4104 +9990 2735 2343 2374 931 6384 5992 6023 4580 +9991 3615 757 1842 2463 7264 4406 5491 6112 +9992 488 2341 965 2736 4137 5990 4614 6385 +9993 2584 2619 2925 1046 6233 6268 6574 4695 +9994 3684 1662 814 2188 7333 5311 4463 5837 +9995 2797 3271 3624 629 6446 6920 7273 4278 +9996 470 2430 941 2653 4119 6079 4590 6302 +9997 1114 3375 217 2730 4763 7024 3866 6379 +9998 1297 2811 1099 3369 4946 6460 4748 7018 +9999 34 33 1816 3399 130 129 5465 7048 +10000 1596 2441 857 3264 5245 6090 4506 6913 +10001 2023 3527 1919 1263 5672 7176 5568 4912 +10002 2790 1327 2065 3269 6439 4976 5714 6918 +10003 2790 3269 67 66 6439 6918 163 162 +10004 3782 365 1796 1194 7431 4014 5445 4843 +10005 3099 1294 266 2236 6748 4943 3915 5885 +10006 831 2675 1797 3380 4480 6324 5446 7029 +10007 802 2872 460 2246 4451 6521 4109 5895 +10008 955 2658 449 2809 4604 6307 4098 6458 +10009 3530 949 3310 2533 7179 4598 6959 6182 +10010 895 2923 445 2206 4544 6572 4094 5855 +10011 570 3139 1454 3585 4219 6788 5103 7234 +10012 433 1180 1879 2733 4082 4829 5528 6382 +10013 3167 571 271 2841 6816 4220 3920 6490 +10014 3359 3651 2042 1200 7008 7300 5691 4849 +10015 1076 2426 1750 2936 4725 6075 5399 6585 +10016 1134 3158 926 2597 4783 6807 4575 6246 +10017 2292 3386 1880 206 5941 7035 5529 3855 +10018 3392 3417 2888 1155 7041 7066 6537 4804 +10019 2693 1037 2741 2574 6342 4686 6390 6223 +10020 1339 2974 548 2697 4988 6623 4197 6346 +10021 2725 2376 3101 494 6374 6025 6750 4143 +10022 584 2248 1170 2881 4233 5897 4819 6530 +10023 2876 698 876 2878 6525 4347 4525 6527 +10024 808 2062 437 3327 4457 5711 4086 6976 +10025 15 14 2215 3257 111 110 5864 6906 +10026 2926 2925 2619 660 6575 6574 6268 4309 +10027 3680 770 1878 2022 7329 4419 5527 5671 +10028 1090 2216 320 3504 4739 5865 3969 7153 +10029 2057 1227 3110 3343 5706 4876 6759 6992 +10030 3034 2404 1777 829 6683 6053 5426 4478 +10031 1107 2194 763 3431 4756 5843 4412 7080 +10032 1424 3151 1162 3201 5073 6800 4811 6850 +10033 3086 3455 2450 469 6735 7104 6099 4118 +10034 3368 1214 631 2473 7017 4863 4280 6122 +10035 241 2403 989 2746 3890 6052 4638 6395 +10036 3101 2376 2377 871 6750 6025 6026 4520 +10037 709 2139 1498 3091 4358 5788 5147 6740 +10038 544 3128 1223 3661 4193 6777 4872 7310 +10039 3208 3005 3008 1087 6857 6654 6657 4736 +10040 3164 515 3161 2114 6813 4164 6810 5763 +10041 722 2504 1235 3031 4371 6153 4884 6680 +10042 88 2852 791 2285 184 6501 4440 5934 +10043 2900 3096 2438 1123 6549 6745 6087 4772 +10044 2134 36 35 3296 5783 132 131 6945 +10045 3594 2027 2171 781 7243 5676 5820 4430 +10046 46 3643 1905 47 142 7292 5554 143 +10047 1236 2949 479 3416 4885 6598 4128 7065 +10048 208 3067 902 2163 3857 6716 4551 5812 +10049 3792 2105 3727 751 7441 5754 7376 4400 +10050 3792 1169 2455 2105 7441 4818 6104 5754 +10051 3454 1182 3799 2045 7103 4831 7448 5694 +10052 2889 1308 1873 3745 6538 4957 5522 7394 +10053 2822 2321 2809 449 6471 5970 6458 4098 +10054 590 3094 1026 1950 4239 6743 4675 5599 +10055 2485 2668 1725 850 6134 6317 5374 4499 +10056 3682 2295 424 1570 7331 5944 4073 5219 +10057 2295 3682 2880 638 5944 7331 6529 4287 +10058 1158 2677 563 3342 4807 6326 4212 6991 +10059 2837 837 2326 2311 6486 4486 5975 5960 +10060 3239 1008 1709 2184 6888 4657 5358 5833 +10061 3520 1560 3555 2411 7169 5209 7204 6060 +10062 3680 2546 2000 770 7329 6195 5649 4419 +10063 488 2032 771 3677 4137 5681 4420 7326 +10064 3670 2367 2025 815 7319 6016 5674 4464 +10065 745 3678 610 2030 4394 7327 4259 5679 +10066 2430 470 2137 3060 6079 4119 5786 6709 +10067 1588 3775 311 3344 5237 7424 3960 6993 +10068 3284 2801 1876 341 6933 6450 5525 3990 +10069 1041 3085 1146 3111 4690 6734 4795 6760 +10070 3807 1452 978 2034 7456 5101 4627 5683 +10071 2939 2249 3195 1178 6588 5898 6844 4827 +10072 2391 3408 1701 856 6040 7057 5350 4505 +10073 3055 813 2351 2187 6704 4462 6000 5836 +10074 495 2969 1144 2681 4144 6618 4793 6330 +10075 803 3223 337 2118 4452 6872 3986 5767 +10076 3367 582 1458 1016 7016 4231 5107 4665 +10077 358 3229 982 2273 4007 6878 4631 5922 +10078 908 2966 1985 2828 4557 6615 5634 6477 +10079 3046 2848 329 3376 6695 6497 3978 7025 +10080 3777 2713 941 1668 7426 6362 4590 5317 +10081 2584 978 1452 2619 6233 4627 5101 6268 +10082 1027 2920 1085 2768 4676 6569 4734 6417 +10083 1711 3235 633 3730 5360 6884 4282 7379 +10084 1190 2293 877 3517 4839 5942 4526 7166 +10085 628 3136 1414 2327 4277 6785 5063 5976 +10086 1407 2747 247 3529 5056 6396 3896 7178 +10087 2986 2721 3127 1040 6635 6370 6776 4689 +10088 2395 2840 2053 980 6044 6489 5702 4629 +10089 2812 2374 1492 491 6461 6023 5141 4140 +10090 363 3001 1139 2767 4012 6650 4788 6416 +10091 2850 2689 2768 1085 6499 6338 6417 4734 +10092 3112 978 2584 2178 6761 4627 6233 5827 +10093 316 726 1594 1653 3965 4375 5243 5302 +10094 259 3070 1640 3804 3908 6719 5289 7453 +10095 3119 2189 3006 1022 6768 5838 6655 4671 +10096 823 2258 511 1887 4472 5907 4160 5536 +10097 3532 968 2307 2152 7181 4617 5956 5801 +10098 3005 1149 2539 3008 6654 4798 6188 6657 +10099 3351 789 2240 423 7000 4438 5889 4072 +10100 2899 2301 407 1589 6548 5950 4056 5238 +10101 3732 372 1971 2121 7381 4021 5620 5770 +10102 3008 390 2036 854 6657 4039 5685 4503 +10103 2546 3680 2839 1349 6195 7329 6488 4998 +10104 2185 19 18 3398 5834 115 114 7047 +10105 363 2965 1242 3001 4012 6614 4891 6650 +10106 3115 2317 2812 491 6764 5966 6461 4140 +10107 1092 3160 546 2501 4741 6809 4195 6150 +10108 3754 2778 227 1983 7403 6427 3876 5632 +10109 990 2456 542 2759 4639 6105 4191 6408 +10110 386 3476 2283 2798 4035 7125 5932 6447 +10111 1380 2447 1224 2763 5029 6096 4873 6412 +10112 3723 1530 1816 3800 7372 5179 5465 7449 +10113 534 2857 1036 3425 4183 6506 4685 7074 +10114 1308 2889 1082 3231 4957 6538 4731 6880 +10115 2673 1010 2508 1049 6322 4659 6157 4698 +10116 2068 3636 3076 1462 5717 7285 6725 5111 +10117 2121 3394 2113 703 5770 7043 5762 4352 +10118 3123 930 2438 3306 6772 4579 6087 6955 +10119 2778 860 1516 2444 6427 4509 5165 6093 +10120 3441 2096 3099 687 7090 5745 6748 4336 +10121 2774 1085 2920 2570 6423 4734 6569 6219 +10122 2063 1451 3251 3817 5712 5100 6900 7466 +10123 611 3363 1127 2934 4260 7012 4776 6583 +10124 3035 962 1685 2245 6684 4611 5334 5894 +10125 943 2470 1428 3153 4592 6119 5077 6802 +10126 1130 2573 855 2867 4779 6222 4504 6516 +10127 1127 3642 326 2322 4776 7291 3975 5971 +10128 3526 756 1998 2605 7175 4405 5647 6254 +10129 3692 2079 1676 728 7341 5728 5325 4377 +10130 930 2792 1123 2438 4579 6441 4772 6087 +10131 2693 2574 2688 1025 6342 6223 6337 4674 +10132 350 2715 1037 2693 3999 6364 4686 6342 +10133 1055 2557 324 2705 4704 6206 3973 6354 +10134 3513 2084 2702 301 7162 5733 6351 3950 +10135 41 40 2476 3554 137 136 6125 7203 +10136 724 3027 1534 2259 4373 6676 5183 5908 +10137 665 2244 1529 3489 4314 5893 5178 7138 +10138 3521 599 3102 2283 7170 4248 6751 5932 +10139 2714 2615 2741 1037 6363 6264 6390 4686 +10140 3091 973 1779 2916 6740 4622 5428 6565 +10141 364 3065 900 2238 4013 6714 4549 5887 +10142 3566 1762 1110 2224 7215 5411 4759 5873 +10143 2711 1049 2508 531 6360 4698 6157 4180 +10144 3502 324 2564 2090 7151 3973 6213 5739 +10145 3670 815 3789 2261 7319 4464 7438 5910 +10146 985 2793 457 2468 4634 6442 4106 6117 +10147 1218 2432 750 2816 4867 6081 4399 6465 +10148 2319 332 2491 2946 5968 3981 6140 6595 +10149 2275 3075 1129 3056 5924 6724 4778 6705 +10150 3553 2217 2804 530 7202 5866 6453 4179 +10151 1098 3171 722 3031 4747 6820 4371 6680 +10152 1378 2213 1652 3222 5027 5862 5301 6871 +10153 3391 2928 3200 1195 7040 6577 6849 4844 +10154 1715 3646 619 3340 5364 7295 4268 6989 +10155 1450 3270 594 3202 5099 6919 4243 6851 +10156 926 2359 936 3528 4575 6008 4585 7177 +10157 3820 2797 2054 779 7469 6446 5703 4428 +10158 1184 2827 1052 3025 4833 6476 4701 6674 +10159 751 3727 1315 2368 4400 7376 4964 6017 +10160 3004 1012 2614 2688 6653 4661 6263 6337 +10161 1132 3156 342 2512 4781 6805 3991 6161 +10162 521 2987 1030 2394 4170 6636 4679 6043 +10163 1205 3084 1204 3662 4854 6733 4853 7311 +10164 1412 3573 248 2776 5061 7222 3897 6425 +10165 2406 1014 2308 2861 6055 4663 5957 6510 +10166 1499 1074 3094 590 5148 4723 6743 4239 +10167 3601 1283 2674 3479 7250 4932 6323 7128 +10168 3243 321 1909 2581 6892 3970 5558 6230 +10169 959 2997 480 2300 4608 6646 4129 5949 +10170 2977 2669 2536 1007 6626 6318 6185 4656 +10171 1407 3529 1639 3329 5056 7178 5288 6978 +10172 1173 2434 289 3360 4822 6083 3938 7009 +10173 575 2729 1277 3404 4224 6378 4926 7053 +10174 2819 2490 1539 1013 6468 6139 5188 4662 +10175 862 316 1206 861 4511 3965 4855 4510 +10176 2200 1324 672 3157 5849 4973 4321 6806 +10177 83 3806 1889 84 179 7455 5538 180 +10178 48 3815 2276 49 144 7464 5925 145 +10179 1648 3573 1412 3295 5297 7222 5061 6944 +10180 3487 62 61 2333 7136 158 157 5982 +10181 3487 2333 3542 1168 7136 5982 7191 4817 +10182 1006 2424 1040 3127 4655 6073 4689 6776 +10183 2918 1469 3652 2572 6567 5118 7301 6221 +10184 3394 2121 1971 1003 7043 5770 5620 4652 +10185 3116 2241 2658 955 6765 5890 6307 4604 +10186 3105 1162 3151 3104 6754 4811 6800 6753 +10187 3052 3382 1580 3371 6701 7031 5229 7020 +10188 3065 364 2911 3230 6714 4013 6560 6879 +10189 2825 2478 2604 996 6474 6127 6253 4645 +10190 3358 1843 1189 2289 7007 5492 4838 5938 +10191 3459 389 3609 2363 7108 4038 7258 6012 +10192 3133 735 1605 2350 6782 4384 5254 5999 +10193 3077 995 2073 2556 6726 4644 5722 6205 +10194 501 2308 905 3013 4150 5957 4554 6662 +10195 3037 2796 2169 1177 6686 6445 5818 4826 +10196 2796 3037 2603 1078 6445 6686 6252 4727 +10197 2712 3389 2965 974 6361 7038 6614 4623 +10198 2696 2708 2496 1088 6345 6357 6145 4737 +10199 3426 945 1656 3427 7075 4594 5305 7076 +10200 3720 2096 3441 1002 7369 5745 7090 4651 +10201 3480 1241 3245 2116 7129 4890 6894 5765 +10202 1429 2987 1082 2760 5078 6636 4731 6409 +10203 3500 3612 2635 574 7149 7261 6284 4223 +10204 1215 2529 886 2805 4864 6178 4535 6454 +10205 3467 2123 3706 1089 7116 5772 7355 4738 +10206 2615 1027 2900 2741 6264 4676 6549 6390 +10207 816 2621 1748 3771 4465 6270 5397 7420 +10208 2762 988 2358 2577 6411 4637 6007 6226 +10209 2521 2519 2199 773 6170 6168 5848 4422 +10210 518 2819 1013 3073 4167 6468 4662 6722 +10211 518 2803 1010 2819 4167 6452 4659 6468 +10212 1051 2714 1037 2715 4700 6363 4686 6364 +10213 3241 1271 786 2195 6890 4920 4435 5844 +10214 970 3115 1369 3459 4619 6764 5018 7108 +10215 389 2224 1110 3495 4038 5873 4759 7144 +10216 3102 947 2798 2283 6751 4596 6447 5932 +10217 1128 3356 1714 3673 4777 7005 5363 7322 +10218 2708 2696 2047 1005 6357 6345 5696 4654 +10219 2743 938 2213 2646 6392 4587 5862 6295 +10220 3082 584 1489 3181 6731 4233 5138 6830 +10221 1044 2495 885 2962 4693 6144 4534 6611 +10222 2701 2631 478 1214 6350 6280 4127 4863 +10223 1411 3716 439 3620 5060 7365 4088 7269 +10224 541 2264 953 3134 4190 5913 4602 6783 +10225 3326 2993 1313 2315 6975 6642 4962 5964 +10226 2768 3096 2900 1027 6417 6745 6549 4676 +10227 243 2682 1431 3412 3892 6331 5080 7061 +10228 1402 2518 1741 3825 5051 6167 5390 7474 +10229 3257 2284 16 15 6906 5933 112 111 +10230 3300 989 2403 2298 6949 4638 6052 5947 +10231 3283 1160 2428 2515 6932 4809 6077 6164 +10232 3283 2515 2765 888 6932 6164 6414 4537 +10233 2910 1201 1809 2940 6559 4850 5458 6589 +10234 2940 339 2967 2910 6589 3988 6616 6559 +10235 3215 2264 2584 1046 6864 5913 6233 4695 +10236 1414 3136 1151 3284 5063 6785 4800 6933 +10237 2962 885 2840 2395 6611 4534 6489 6044 +10238 3627 2227 942 1698 7276 5876 4591 5347 +10239 3106 2331 80 79 6755 5980 176 175 +10240 3279 900 3065 2196 6928 4549 6714 5845 +10241 439 3138 1175 2281 4088 6787 4824 5930 +10242 528 3491 1211 2507 4177 7140 4860 6156 +10243 1196 377 1195 3317 4845 4026 4844 6966 +10244 3009 986 2563 3546 6658 4635 6212 7195 +10245 3141 53 52 2347 6790 149 148 5996 +10246 3416 479 2496 2708 7065 4128 6145 6357 +10247 3072 2332 2026 230 6721 5981 5675 3879 +10248 2932 2785 3173 1095 6581 6434 6822 4744 +10249 3127 2536 2669 1006 6776 6185 6318 4655 +10250 3748 2414 3831 281 7397 6063 7480 3930 +10251 2600 526 2426 1076 6249 4175 6075 4725 +10252 343 2627 996 2783 3992 6276 4645 6432 +10253 3520 2135 3360 289 7169 5784 7009 3938 +10254 2877 726 316 1068 6526 4375 3965 4717 +10255 1035 3626 1946 3253 4684 7275 5595 6902 +10256 3268 2291 1485 712 6917 5940 5134 4361 +10257 1073 2439 326 3642 4722 6088 3975 7291 +10258 3587 1168 3542 2128 7236 4817 7191 5777 +10259 3004 2522 3315 1157 6653 6171 6964 4806 +10260 3299 1031 1699 2611 6948 4680 5348 6260 +10261 706 3442 1362 3018 4355 7091 5011 6667 +10262 3573 2641 1467 248 7222 6290 5116 3897 +10263 3115 970 2044 2317 6764 4619 5693 5966 +10264 3499 374 3703 2145 7148 4023 7352 5794 +10265 1064 3753 1283 3250 4713 7402 4932 6899 +10266 483 2409 1153 3437 4132 6058 4802 7086 +10267 3079 3022 1857 1252 6728 6671 5506 4901 +10268 2733 1071 2921 2151 6382 4720 6570 5800 +10269 3537 1359 3429 1096 7186 5008 7078 4745 +10270 899 3074 379 2355 4548 6723 4028 6004 +10271 3311 2494 207 1663 6960 6143 3856 5312 +10272 3311 730 1312 2494 6960 4379 4961 6143 +10273 3844 2289 3177 554 7493 5938 6826 4203 +10274 3082 3181 3182 1229 6731 6830 6831 4878 +10275 3791 829 1777 3020 7440 4478 5426 6669 +10276 2250 3497 1529 214 5899 7146 5178 3863 +10277 3497 2250 2101 1103 7146 5899 5750 4752 +10278 904 3302 1305 2896 4553 6951 4954 6545 +10279 1590 2440 735 2982 5239 6089 4384 6631 +10280 2670 1434 3040 3221 6319 5083 6689 6870 +10281 2988 1024 2736 2524 6637 4673 6385 6173 +10282 1413 3447 573 3019 5062 7096 4222 6668 +10283 2947 2502 3479 917 6596 6151 7128 4566 +10284 517 3244 1184 3025 4166 6893 4833 6674 +10285 3166 844 2917 2527 6815 4493 6566 6176 +10286 3166 2527 2721 1106 6815 6176 6370 4755 +10287 551 3315 1123 2792 4200 6964 4772 6441 +10288 981 3038 1319 3039 4630 6687 4968 6688 +10289 284 3596 1320 2634 3933 7245 4969 6283 +10290 3529 247 1461 2622 7178 3896 5110 6271 +10291 231 3385 843 2190 3880 7034 4492 5839 +10292 3589 1830 425 2381 7238 5479 4074 6030 +10293 2698 1083 2757 473 6347 4732 6406 4122 +10294 1492 3098 1698 3557 5141 6747 5347 7206 +10295 482 2492 901 2942 4131 6141 4550 6591 +10296 1627 2991 921 2992 5276 6640 4570 6641 +10297 1229 2149 1228 3082 4878 5798 4877 6731 +10298 3603 2678 1943 1133 7252 6327 5592 4782 +10299 1192 3412 1431 3120 4841 7061 5080 6769 +10300 836 2594 1418 2865 4485 6243 5067 6514 +10301 3686 2164 2607 1143 7335 5813 6256 4792 +10302 2643 2937 2703 577 6292 6586 6352 4226 +10303 3247 2372 2977 1007 6896 6021 6626 4656 +10304 3767 2252 680 1296 7416 5901 4329 4945 +10305 3767 94 93 2252 7416 190 189 5901 +10306 3674 2175 3355 514 7323 5824 7004 4163 +10307 3674 1118 2800 2175 7323 4767 6449 5824 +10308 904 2226 203 3302 4553 5875 3852 6951 +10309 965 3060 1405 3742 4614 6709 5054 7391 +10310 3794 800 1870 2130 7443 4449 5519 5779 +10311 1355 3048 784 2417 5004 6697 4433 6066 +10312 1473 2647 244 3409 5122 6296 3893 7058 +10313 249 3224 843 2354 3898 6873 4492 6003 +10314 3174 1042 2957 2313 6823 4691 6606 5962 +10315 959 2557 1055 2997 4608 6206 4704 6646 +10316 789 3351 1768 2500 4438 7000 5417 6149 +10317 2350 1253 313 3133 5999 4902 3962 6782 +10318 2901 1172 3242 3559 6550 4821 6891 7208 +10319 1425 3571 611 2934 5074 7220 4260 6583 +10320 2984 3746 2003 251 6633 7395 5652 3900 +10321 3194 2927 2926 660 6843 6576 6575 4309 +10322 1281 2389 494 3101 4930 6038 4143 6750 +10323 3534 756 3526 2402 7183 4405 7175 6051 +10324 3039 543 1551 3174 6688 4192 5200 6823 +10325 3173 2328 2591 840 6822 5977 6240 4489 +10326 1342 3849 255 3029 4991 7498 3904 6678 +10327 916 2835 1357 2697 4565 6484 5006 6346 +10328 1261 3172 513 2964 4910 6821 4162 6613 +10329 3752 914 2202 2373 7401 4563 5851 6022 +10330 496 3119 1022 2385 4145 6768 4671 6034 +10331 3060 965 2341 2430 6709 4614 5990 6079 +10332 3380 1117 2323 2382 7029 4766 5972 6031 +10333 3380 2382 1689 831 7029 6031 5338 4480 +10334 1392 2205 1279 3569 5041 5854 4928 7218 +10335 2689 2850 2304 1032 6338 6499 5953 4681 +10336 741 2832 1182 3695 4390 6481 4831 7344 +10337 3582 504 2846 2191 7231 4153 6495 5840 +10338 2149 1229 3183 585 5798 4878 6832 4234 +10339 956 2497 237 3190 4605 6146 3886 6839 +10340 3813 1628 1067 2344 7462 5277 4716 5993 +10341 2988 2524 3742 335 6637 6173 7391 3984 +10342 2154 3745 1873 729 5803 7394 5522 4378 +10343 3817 2855 873 2063 7466 6504 4522 5712 +10344 1221 3372 293 2998 4870 7021 3942 6647 +10345 3021 1199 3286 3481 6670 4848 6935 7130 +10346 491 2639 1369 3115 4140 6288 5018 6764 +10347 990 3061 1102 2456 4639 6710 4751 6105 +10348 2499 3071 2141 691 6148 6720 5790 4340 +10349 884 2824 1432 3256 4533 6473 5081 6905 +10350 2820 940 2690 3690 6469 4589 6339 7339 +10351 3765 3839 1782 1298 7414 7488 5431 4947 +10352 2977 468 2591 2669 6626 4117 6240 6318 +10353 299 2810 1239 2894 3948 6459 4888 6543 +10354 3167 1305 3307 3558 6816 4954 6956 7207 +10355 463 3401 778 2228 4112 7050 4427 5877 +10356 1036 2857 1135 2856 4685 6506 4784 6505 +10357 1235 3261 1098 3031 4884 6910 4747 6680 +10358 2251 474 3312 1752 5900 4123 6961 5401 +10359 554 3222 1652 3844 4203 6871 5301 7493 +10360 3184 348 3522 3581 6833 3997 7171 7230 +10361 3712 461 3022 3079 7361 4110 6671 6728 +10362 3736 1791 621 2766 7385 5440 4270 6415 +10363 3736 2766 3630 798 7385 6415 7279 4447 +10364 3321 2305 3270 1030 6970 5954 6919 4679 +10365 3098 2427 2132 280 6747 6076 5781 3929 +10366 3088 3006 2189 537 6737 6655 5838 4186 +10367 3088 1220 3007 3006 6737 4869 6656 6655 +10368 1027 2615 517 2920 4676 6264 4166 6569 +10369 1169 2608 373 3280 4818 6257 4022 6929 +10370 1097 2842 1063 2843 4746 6491 4712 6492 +10371 1456 3500 574 2904 5105 7149 4223 6553 +10372 1372 3532 245 3707 5021 7181 3894 7356 +10373 1215 2805 259 3804 4864 6454 3908 7453 +10374 515 2161 1810 3810 4164 5810 5459 7459 +10375 1094 1944 3496 2999 4743 5593 7145 6648 +10376 3268 712 1827 2401 6917 4361 5476 6050 +10377 3351 423 2349 954 7000 4072 5998 4603 +10378 3582 2191 2727 1056 7231 5840 6376 4705 +10379 3814 271 433 2733 7463 3920 4082 6382 +10380 2745 967 2543 3028 6394 4616 6192 6677 +10381 2745 3028 2150 1116 6394 6677 5799 4765 +10382 1432 3842 302 3458 5081 7491 3951 7107 +10383 930 3123 606 2433 4579 6772 4255 6082 +10384 3415 1019 3708 2481 7064 4668 7357 6130 +10385 2832 3749 2106 1430 6481 7398 5755 5079 +10386 1158 3249 1236 2334 4807 6898 4885 5983 +10387 579 2873 988 2762 4228 6522 4637 6411 +10388 307 3828 1468 2451 3956 7477 5117 6100 +10389 3166 2642 2011 844 6815 6291 5660 4493 +10390 2449 3379 2369 1004 6098 7028 6018 4653 +10391 1230 426 231 3292 4879 4075 3880 6941 +10392 3025 2570 2920 517 6674 6219 6569 4166 +10393 3025 1052 2774 2570 6674 4701 6423 6219 +10394 1132 3013 905 3142 4781 6662 4554 6791 +10395 3614 2197 2122 547 7263 5846 5771 4196 +10396 1473 3409 1197 3266 5122 7058 4846 6915 +10397 3421 1382 3628 3422 7070 5031 7277 7071 +10398 2216 3525 2138 320 5865 7174 5787 3969 +10399 1750 2426 526 748 5399 6075 4175 4397 +10400 3493 2743 2646 1193 7142 6392 6295 4842 +10401 1255 2725 1062 991 4904 6374 4711 4640 +10402 3575 2314 3119 496 7224 5963 6768 4145 +10403 1619 3710 614 3291 5268 7359 4263 6940 +10404 2741 2900 2522 2574 6390 6549 6171 6223 +10405 2679 3697 499 1343 6328 7346 4148 4992 +10406 661 3807 1234 3552 4310 7456 4883 7201 +10407 1153 3403 370 2514 4802 7052 4019 6163 +10408 3216 2412 2370 603 6865 6061 6019 4252 +10409 3842 2866 1822 302 7491 6515 5471 3951 +10410 1443 3210 527 2397 5092 6859 4176 6046 +10411 3104 3391 1195 1163 6753 7040 4844 4812 +10412 3358 2289 3844 1234 7007 5938 7493 4883 +10413 2994 3402 2088 1044 6643 7051 5737 4693 +10414 3518 2234 1461 731 7167 5883 5110 4380 +10415 2973 1155 2888 3234 6622 4804 6537 6883 +10416 334 2398 1517 3424 3983 6047 5166 7073 +10417 1129 3075 1172 2901 4778 6724 4821 6550 +10418 3210 1049 2711 2849 6859 4698 6360 6498 +10419 631 1198 2565 2473 4280 4847 6214 6122 +10420 2937 3462 2652 1326 6586 7111 6301 4975 +10421 852 2685 1239 3702 4501 6334 4888 7351 +10422 579 2843 1063 2873 4228 6492 4712 6522 +10423 3180 2421 3334 215 6829 6070 6983 3864 +10424 3247 281 3831 2372 6896 3930 7480 6021 +10425 3679 1022 3006 3007 7328 4671 6655 6656 +10426 3729 2379 543 2814 7378 6028 4192 6463 +10427 3729 2814 2884 702 7378 6463 6533 4351 +10428 3498 1447 2567 3838 7147 5096 6216 7487 +10429 2638 842 2235 3451 6287 4491 5884 7100 +10430 3254 3263 2338 387 6903 6912 5987 4036 +10431 3254 1062 3314 3263 6903 4711 6963 6912 +10432 2689 1032 2650 3506 6338 4681 6299 7155 +10433 2224 1369 2639 3566 5873 5018 6288 7215 +10434 2924 2925 2926 1047 6573 6574 6575 4696 +10435 3173 840 2450 3455 6822 4489 6099 7104 +10436 1068 1479 406 1554 4717 5128 4055 5203 +10437 303 2371 801 3255 3952 6020 4450 6904 +10438 3280 373 3436 2353 6929 4022 7085 6002 +10439 3705 2422 2534 283 7354 6071 6183 3932 +10440 3705 1217 1609 2422 7354 4866 5258 6071 +10441 838 3050 1478 2640 4487 6699 5127 6289 +10442 3212 2884 3621 1209 6861 6533 7270 4858 +10443 2884 3212 1718 702 6533 6861 5367 4351 +10444 2429 63 62 3487 6078 159 158 7136 +10445 731 2260 1081 3518 4380 5909 4730 7167 +10446 3354 964 1732 314 7003 4613 5381 3963 +10447 3362 1301 2036 390 7011 4950 5685 4039 +10448 3077 2556 2986 486 6726 6205 6635 4135 +10449 3621 440 2117 2523 7270 4089 5766 6172 +10450 3181 1489 348 3182 6830 5138 3997 6831 +10451 2405 3749 2832 741 6054 7398 6481 4390 +10452 2312 964 2930 3370 5961 4613 6579 7019 +10453 3413 317 3310 949 7062 3966 6959 4598 +10454 3237 1029 3050 838 6886 4678 6699 4487 +10455 2421 3224 3018 1362 6070 6873 6667 5011 +10456 3797 2601 2599 1034 7446 6250 6248 4683 +10457 2785 2932 2344 1067 6434 6581 5993 4716 +10458 2712 974 2127 3240 6361 4623 5776 6889 +10459 3476 1156 3521 2283 7125 4805 7170 5932 +10460 358 2273 1446 3498 4007 5922 5095 7147 +10461 3127 538 1801 2536 6776 4187 5450 6185 +10462 1949 3254 387 3443 5598 6903 4036 7092 +10463 3333 1029 3237 438 6982 4678 6886 4087 +10464 2688 2574 2522 3004 6337 6223 6171 6653 +10465 3104 1163 2018 3105 6753 4812 5667 6754 +10466 2721 2986 2556 1106 6370 6635 6205 4755 +10467 3548 607 1670 2418 7197 4256 5319 6067 +10468 2418 1156 3476 3548 6067 4805 7125 7197 +10469 3417 2804 2434 1173 7066 6453 6083 4822 +10470 695 1191 1190 2208 4344 4840 4839 5857 +10471 2461 2731 2732 443 6110 6380 6381 4092 +10472 3016 3718 3614 547 6665 7367 7263 4196 +10473 1944 3634 2286 1119 5593 7283 5935 4768 +10474 1655 2521 1109 325 5304 6170 4758 3974 +10475 3215 1046 2925 2924 6864 4695 6574 6573 +10476 3111 2568 1711 484 6760 6217 5360 4133 +10477 2842 2928 3391 760 6491 6577 7040 4409 +10478 2842 1097 3200 2928 6491 4746 6849 6577 +10479 2990 2353 3436 1300 6639 6002 7085 4949 +10480 942 2227 624 3717 4591 5876 4273 7366 +10481 2486 3572 1827 1185 6135 7221 5476 4834 +10482 3719 1516 3784 3147 7368 5165 7433 6796 +10483 3147 1330 2068 3719 6796 4979 5717 7368 +10484 1223 3128 1091 3482 4872 6777 4740 7131 +10485 3820 2723 3271 2797 7469 6372 6920 6446 +10486 2929 1455 3023 2912 6578 5104 6672 6561 +10487 444 2004 366 1937 4093 5653 4015 5586 +10488 2771 3244 2714 1051 6420 6893 6363 4700 +10489 3318 2971 278 1931 6967 6620 3927 5580 +10490 2740 3616 1998 1312 6389 7265 5647 4961 +10491 3616 2740 1444 252 7265 6389 5093 3901 +10492 220 2391 856 3801 3869 6040 4505 7450 +10493 494 2389 796 3314 4143 6038 4445 6963 +10494 1325 3407 768 2336 4974 7056 4417 5985 +10495 865 2587 1176 3419 4514 6236 4825 7068 +10496 3460 2324 2186 457 7109 5973 5835 4106 +10497 2778 3754 2476 860 6427 7403 6125 4509 +10498 2875 3488 1105 3691 6524 7137 4754 7340 +10499 3587 911 2945 2429 7236 4560 6594 6078 +10500 456 2533 1152 3453 4105 6182 4801 7102 +10501 1598 2497 1798 3698 5247 6146 5447 7347 +10502 1158 3191 1000 2677 4807 6840 4649 6326 +10503 1261 2976 1101 3172 4910 6625 4750 6821 +10504 1471 2418 1670 3657 5120 6067 5319 7306 +10505 3352 490 3635 2517 7001 4139 7284 6166 +10506 3706 920 2829 2284 7355 4569 6478 5933 +10507 2929 2912 2346 948 6578 6561 5995 4597 +10508 3167 2841 2126 225 6816 6490 5775 3874 +10509 3379 560 1546 2369 7028 4209 5195 6018 +10510 2424 3622 2938 1040 6073 7271 6587 4689 +10511 358 2674 1283 3753 4007 6323 4932 7402 +10512 528 2318 1602 3491 4177 5967 5251 7140 +10513 986 3009 1379 3010 4635 6658 5028 6659 +10514 2924 323 2683 3215 6573 3972 6332 6864 +10515 1349 2839 593 3633 4998 6488 4242 7282 +10516 3615 2482 2212 757 7264 6131 5861 4406 +10517 1051 2715 350 3762 4700 6364 3999 7411 +10518 3833 2558 647 1805 7482 6207 4296 5454 +10519 3250 2849 2711 1064 6899 6498 6360 4713 +10520 1577 3710 1619 2681 5226 7359 5268 6330 +10521 1354 3057 670 2748 5003 6706 4319 6397 +10522 3833 535 3195 2249 7482 4184 6844 5898 +10523 2751 1166 3561 3635 6400 4815 7210 7284 +10524 951 2257 313 3770 4600 5906 3962 7419 +10525 3606 2294 2205 1392 7255 5943 5854 5041 +10526 3561 1572 797 3434 7210 5221 4446 7083 +10527 3561 3434 1679 601 7210 7083 5328 4250 +10528 1428 3328 746 3236 5077 6977 4395 6885 +10529 2815 937 3076 3636 6464 4586 6725 7285 +10530 3357 1128 3673 2535 7006 4777 7322 6184 +10531 3306 2438 3096 349 6955 6087 6745 3998 +10532 3398 3185 1603 1385 7047 6834 5252 5034 +10533 3398 18 17 3185 7047 114 113 6834 +10534 512 2455 884 3290 4161 6104 4533 6939 +10535 406 3169 3326 2315 4055 6818 6975 5964 +10536 3459 2363 2869 970 7108 6012 6518 4619 +10537 284 2634 1844 3319 3933 6283 5493 6968 +10538 2773 1582 3430 3446 6422 5231 7079 7095 +10539 3751 575 3404 3003 7400 4224 7053 6652 +10540 3751 3003 750 1597 7400 6652 4399 5246 +10541 3789 246 1418 2261 7438 3895 5067 5910 +10542 1041 2729 575 3085 4690 6378 4224 6734 +10543 1493 3388 216 3448 5142 7037 3865 7097 +10544 3308 1260 3384 3623 6957 4909 7033 7272 +10545 3308 3623 1894 1016 6957 7272 5543 4665 +10546 3353 376 2262 2453 7002 4025 5911 6102 +10547 1090 3202 594 2612 4739 6851 4243 6261 +10548 1417 2905 1630 3297 5066 6554 5279 6946 +10549 3706 2284 3257 1089 7355 5933 6906 4738 +10550 2949 1236 3249 2994 6598 4885 6898 6643 +10551 2472 3466 2855 1403 6121 7115 6504 5052 +10552 321 3243 1222 2531 3970 6892 4871 6180 +10553 1101 2775 355 2887 4750 6424 4004 6536 +10554 937 2815 1997 3685 4586 6464 5646 7334 +10555 3780 50 49 2276 7429 146 145 5925 +10556 1091 2759 542 3097 4740 6408 4191 6746 +10557 271 1213 529 433 3920 4862 4178 4082 +10558 3419 2400 2686 865 7068 6049 6335 4514 +10559 486 2986 1040 2938 4135 6635 4689 6587 +10560 3823 394 3527 2396 7472 4043 7176 6045 +10561 3441 2477 3205 1002 7090 6126 6854 4651 +10562 1428 3350 1084 3328 5077 6999 4733 6977 +10563 335 3406 1116 2988 3984 7055 4765 6637 +10564 3128 2728 2759 1091 6777 6377 6408 4740 +10565 1588 2633 487 3163 5237 6282 4136 6812 +10566 2831 1218 2638 3451 6480 4867 6287 7100 +10567 1276 3256 1432 3458 4925 6905 5081 7107 +10568 2994 1044 2962 2949 6643 4693 6611 6598 +10569 3666 2303 3171 1098 7315 5952 6820 4747 +10570 1204 3084 1333 524 4853 6733 4982 4173 +10571 3770 2582 859 1868 7419 6231 4508 5517 +10572 3709 2446 2445 1057 7358 6095 6094 4706 +10573 3096 2768 2689 349 6745 6417 6338 3998 +10574 3128 544 3472 2728 6777 4193 7121 6377 +10575 2673 1049 3210 3733 6322 4698 6859 7382 +10576 1502 2706 1023 3835 5151 6355 4672 7484 +10577 3353 2453 2873 1063 7002 6102 6522 4712 +10578 571 2287 2609 663 4220 5936 6258 4312 +10579 1202 3087 1203 3376 4851 6736 4852 7025 +10580 3493 696 1322 2743 7142 4345 4971 6392 +10581 2465 1018 2375 3772 6114 4667 6024 7421 +10582 3752 2373 2143 566 7401 6022 5792 4215 +10583 1057 2445 240 3366 4706 6094 3889 7015 +10584 3406 335 3734 2425 7055 3984 7383 6074 +10585 3538 2413 3835 1023 7187 6062 7484 4672 +10586 3160 1092 2738 3165 6809 4741 6387 6814 +10587 609 2755 1336 3829 4258 6404 4985 7478 +10588 583 3040 1320 3449 4232 6689 4969 7098 +10589 3386 2292 3328 1084 7035 5941 6977 4733 +10590 3791 3020 3768 1363 7440 6669 7417 5012 +10591 1515 3225 700 2788 5164 6874 4349 6437 +10592 3712 2312 3370 461 7361 5961 7019 4110 +10593 933 2781 1855 3293 4582 6430 5504 6942 +10594 2417 3765 2398 334 6066 7414 6047 3983 +10595 3802 245 3300 2298 7451 3894 6949 5947 +10596 3619 1555 3669 3069 7268 5204 7318 6718 +10597 2513 209 2096 3720 6162 3858 5745 7369 +10598 1258 1917 646 2854 4907 5566 4295 6503 +10599 597 3671 1382 3539 4246 7320 5031 7188 +10600 579 2762 1066 3213 4228 6411 4715 6862 +10601 3659 2596 219 1775 7308 6245 3868 5424 +10602 3315 2522 2900 1123 6964 6171 6549 4772 +10603 3478 2412 3216 1045 7127 6061 6865 4694 +10604 1750 3323 525 2936 5399 6972 4174 6585 +10605 1276 3290 884 3256 4925 6939 4533 6905 +10606 3362 2539 3796 1532 7011 6188 7445 5181 +10607 3462 1070 3697 2679 7111 4719 7346 6328 +10608 810 3229 1574 2786 4459 6878 5223 6435 +10609 3609 871 2869 2363 7258 4520 6518 6012 +10610 392 3657 1670 3592 4041 7306 5319 7241 +10611 2729 1041 2551 3474 6378 4690 6200 7123 +10612 1063 3667 1424 3353 4712 7316 5073 7002 +10613 909 2950 1372 3658 4558 6599 5021 7307 +10614 2567 918 3663 1887 6216 4567 7312 5536 +10615 3690 2690 2538 580 7339 6339 6187 4229 +10616 3589 2381 1917 1258 7238 6030 5566 4907 +10617 2980 3108 1842 568 6629 6757 5491 4217 +10618 3794 2935 669 1562 7443 6584 4318 5211 +10619 982 3229 810 2665 4631 6878 4459 6314 +10620 3651 2357 2872 802 7300 6006 6521 4451 +10621 480 3676 998 2351 4129 7325 4647 6000 +10622 2656 1183 1789 3483 6305 4832 5438 7132 +10623 3483 867 2613 2656 7132 4516 6262 6305 +10624 3689 1449 258 2346 7338 5098 3907 5995 +10625 1165 2775 1101 2976 4814 6424 4750 6625 +10626 3632 755 1849 1188 7281 4404 5498 4837 +10627 3658 1437 231 2799 7307 5086 3880 6448 +10628 987 2452 458 3465 4636 6101 4107 7114 +10629 3487 1168 3587 2429 7136 4817 7236 6078 +10630 3415 2481 2107 336 7064 6130 5756 3985 +10631 3795 1060 2898 2595 7444 4709 6547 6244 +10632 852 3702 1522 2764 4501 7351 5171 6413 +10633 3427 1656 475 3428 7076 5305 4124 7077 +10634 1214 3368 1456 2701 4863 7017 5105 6350 +10635 3654 2368 1315 360 7303 6017 4964 4009 +10636 907 3275 382 2723 4556 6924 4031 6372 +10637 2596 3659 2285 791 6245 7308 5934 4440 +10638 3331 1525 648 3656 6980 5174 4297 7305 +10639 404 2877 2876 2878 4053 6526 6525 6527 +10640 2367 3670 3131 961 6016 7319 6780 4610 +10641 3588 2407 2800 1118 7237 6056 6449 4767 +10642 3588 294 2620 2407 7237 3943 6269 6056 +10643 1028 3346 361 2551 4677 6995 4010 6200 +10644 3362 390 3008 2539 7011 4039 6657 6188 +10645 1327 2790 1595 3629 4976 6439 5244 7278 +10646 3501 1048 3071 2499 7150 4697 6720 6148 +10647 1216 3176 297 3097 4865 6825 3946 6746 +10648 2713 3777 2357 305 6362 7426 6006 3954 +10649 2896 225 2126 3480 6545 3874 5775 7129 +10650 3813 2344 3578 1537 7462 5993 7227 5186 +10651 2971 3318 1985 946 6620 6967 5634 4595 +10652 1022 3679 1001 2385 4671 7328 4650 6034 +10653 551 3452 1157 3315 4200 7101 4806 6964 +10654 3399 2724 35 34 7048 6373 131 130 +10655 3210 2849 3250 527 6859 6498 6899 4176 +10656 1278 3262 609 3162 4927 6911 4258 6811 +10657 3777 1020 2872 2357 7426 4669 6521 6006 +10658 3244 517 2615 2714 6893 4166 6264 6363 +10659 3267 588 3583 1377 6916 4237 7232 5026 +10660 1290 2826 956 3190 4939 6475 4605 6839 +10661 299 623 241 2810 3948 4272 3890 6459 +10662 3232 933 2046 2787 6881 4582 5695 6436 +10663 2859 877 2293 3338 6508 4526 5942 6987 +10664 1031 3152 1304 2893 4680 6801 4953 6542 +10665 1208 3100 1178 3195 4857 6749 4827 6844 +10666 3661 2538 2690 1165 7310 6187 6339 4814 +10667 2948 3721 3807 661 6597 7370 7456 4310 +10668 3367 2576 1510 582 7016 6225 5159 4231 +10669 1310 3162 609 3829 4959 6811 4258 7478 +10670 553 2661 1073 3285 4202 6310 4722 6934 +10671 1161 3425 1036 2541 4810 7074 4685 6190 +10672 3819 3326 3169 1464 7468 6975 6818 5113 +10673 3819 683 2993 3326 7468 4332 6642 6975 +10674 3538 1023 2245 234 7187 4672 5894 3883 +10675 3615 2380 1247 2482 7264 6029 4896 6131 +10676 2502 737 3601 3479 6151 4386 7250 7128 +10677 2787 1269 2664 3232 6436 4918 6313 6881 +10678 3058 3625 3760 617 6707 7274 7409 4266 +10679 3683 1758 1054 2442 7332 5407 4703 6091 +10680 911 3587 2128 3044 4560 7236 5777 6693 +10681 3541 1066 2762 2577 7190 4715 6411 6226 +10682 294 3588 1734 2448 3943 7237 5383 6097 +10683 3112 3287 1629 345 6761 6936 5278 3994 +10684 1439 3486 1238 3207 5088 7135 4887 6856 +10685 907 2722 644 3275 4556 6371 4293 6924 +10686 3769 2493 999 1752 7418 6142 4648 5401 +10687 2975 275 1834 3699 6624 3924 5483 7348 +10688 3699 1370 925 2975 7348 5019 4574 6624 +10689 2551 1041 3111 3456 6200 4690 6760 7105 +10690 3608 864 2445 2446 7257 4513 6094 6095 +10691 3188 3187 2856 1135 6837 6836 6505 4784 +10692 2364 1275 1783 1784 6013 4924 5432 5433 +10693 3593 2467 1289 506 7242 6116 4938 4155 +10694 1113 3537 559 3336 4762 7186 4208 6985 +10695 3765 1298 752 2398 7414 4947 4401 6047 +10696 3541 2577 2358 451 7190 6226 6007 4100 +10697 1113 3336 1387 3337 4762 6985 5036 6986 +10698 2667 3485 1812 1167 6316 7134 5461 4816 +10699 2667 2545 1237 3485 6316 6194 4886 7134 +10700 2558 873 2855 3466 6207 4522 6504 7115 +10701 3631 3622 2424 340 7280 7271 6073 3989 +10702 3402 545 3738 2709 7051 4194 7387 6358 +10703 339 2940 1000 3191 3988 6589 4649 6840 +10704 2551 361 3550 3474 6200 4010 7199 7123 +10705 1073 3642 1285 3285 4722 7291 4934 6934 +10706 3373 2637 883 1565 7022 6286 4532 5214 +10707 3211 1498 2386 961 6860 5147 6035 4610 +10708 1977 3218 557 3219 5626 6867 4206 6868 +10709 2396 1136 3611 3823 6045 4785 7260 7472 +10710 2599 2598 2314 1034 6248 6247 5963 4683 +10711 3683 2442 605 1539 7332 6091 4254 5188 +10712 2546 3545 1273 2000 6195 7194 4922 5649 +10713 2546 407 2301 3545 6195 4056 5950 7194 +10714 764 3551 1092 2501 4413 7200 4741 6150 +10715 3810 2503 3161 515 7459 6152 6810 4164 +10716 2503 3810 1810 3656 6152 7459 5459 7305 +10717 3462 2937 2643 1070 7111 6586 6292 4719 +10718 3795 1623 367 3113 7444 5272 4016 6762 +10719 3565 1005 2047 2967 7214 4654 5696 6616 +10720 454 2306 1534 3289 4103 5955 5183 6938 +10721 3470 509 2011 2745 7119 4158 5660 6394 +10722 1147 3176 1216 3178 4796 6825 4865 6827 +10723 101 3731 812 2435 197 7380 4461 6084 +10724 1573 3567 392 3592 5222 7216 4041 7241 +10725 3009 3546 3304 552 6658 7195 6953 4201 +10726 3665 1451 2063 3668 7314 5100 5712 7317 +10727 3709 210 3608 2446 7358 3859 7257 6095 +10728 556 3168 1172 3075 4205 6817 4821 6724 +10729 2897 3389 2712 514 6546 7038 6361 4163 +10730 3835 2413 1663 207 7484 6062 5312 3856 +10731 1304 3668 371 2893 4953 7317 4020 6542 +10732 1281 3101 871 3609 4930 6750 4520 7258 +10733 3827 1209 3621 2523 7476 4858 7270 6172 +10734 3827 2523 2117 913 7476 6172 5766 4562 +10735 3148 3177 2289 1189 6797 6826 5938 4838 +10736 1555 3619 673 3505 5204 7268 4322 7154 +10737 1187 3774 1658 3738 4836 7423 5307 7387 +10738 2771 549 2636 3492 6420 4198 6285 7141 +10739 3492 1184 3244 2771 7141 4833 6893 6420 +10740 3154 3108 2980 1332 6803 6757 6629 4981 +10741 3154 2463 1842 3108 6803 6112 5491 6757 +10742 3604 427 2052 2716 7253 4076 5701 6365 +10743 208 3261 1235 3067 3857 6910 4884 6716 +10744 3631 1067 1628 3132 7280 4716 5277 6781 +10745 3197 3530 2533 456 6846 7179 6182 4105 +10746 3708 928 2107 2481 7357 4577 5756 6130 +10747 1261 3472 544 2976 4910 7121 4193 6625 +10748 3723 31 30 2475 7372 127 126 6124 +10749 2487 462 2111 3700 6136 4111 5760 7349 +10750 3261 208 1667 2909 6910 3857 5316 6558 +10751 3834 779 2054 3090 7483 4428 5703 6739 +10752 3234 1148 2305 2973 6883 4797 5954 6622 +10753 2563 1359 3304 3546 6212 5008 6953 7195 +10754 2870 3640 2190 1282 6519 7289 5839 4931 +10755 3640 2870 1891 909 7289 6519 5540 4558 +10756 2903 300 1230 869 6552 3949 4879 4518 +10757 1004 3828 307 2449 4653 7477 3956 6098 +10758 433 3701 1533 1180 4082 7350 5182 4829 +10759 2679 308 2652 3462 6328 3957 6301 7111 +10760 1749 2528 399 3649 5398 6177 4048 7298 +10761 926 3528 773 2597 4575 7177 4422 6246 +10762 3294 3591 3095 1373 6943 7240 6744 5022 +10763 2597 773 2199 3580 6246 4422 5848 7229 +10764 616 2486 1185 3750 4265 6135 4834 7399 +10765 3784 2476 40 39 7433 6125 136 135 +10766 3471 1144 3267 1377 7120 4793 6916 5026 +10767 3845 2458 3293 413 7494 6107 6942 4062 +10768 2676 1598 1449 3647 6325 5247 5098 7296 +10769 2521 1655 467 2519 6170 5304 4116 6168 +10770 3361 569 3234 2888 7010 4218 6883 6537 +10771 3177 3148 3419 1176 6826 6797 7068 4825 +10772 2275 3056 1138 924 5924 6705 4787 4573 +10773 2750 69 68 3414 6399 165 164 7063 +10774 2919 1717 1128 3357 6568 5366 4777 7006 +10775 1319 3038 440 3621 4968 6687 4089 7270 +10776 2157 346 1323 2874 5806 3995 4972 6523 +10777 1405 3734 335 3742 5054 7383 3984 7391 +10778 1112 3468 1524 3469 4761 7117 5173 7118 +10779 707 3744 1589 3514 4356 7393 5238 7163 +10780 3681 1753 203 2623 7330 5402 3852 6272 +10781 384 2467 1658 3774 4033 6116 5307 7423 +10782 545 3249 1158 3342 4194 6898 4807 6991 +10783 2597 3580 1925 1134 6246 7229 5574 4783 +10784 3446 3430 1348 393 7095 7079 4997 4042 +10785 3759 739 3454 1231 7408 4388 7103 4880 +10786 1652 3552 1234 3844 5301 7201 4883 7493 +10787 1557 740 1348 1233 5206 4389 4997 4882 +10788 1497 3366 240 3773 5146 7015 3889 7422 +10789 3223 1175 2779 3617 6872 4824 6428 7266 +10790 3742 2524 2736 965 7391 6173 6385 4614 +10791 284 3319 1111 2906 3933 6968 4760 6555 +10792 1199 2635 1367 3543 4848 6284 5016 7192 +10793 617 3335 1210 3058 4266 6984 4859 6707 +10794 521 3369 1099 3231 4170 7018 4748 6880 +10795 3577 385 2305 3321 7226 4034 5954 6970 +10796 3321 1429 2760 3577 6970 5078 6409 7226 +10797 3544 2640 3826 555 7193 6289 7475 4204 +10798 1107 3431 1508 3432 4756 7080 5157 7081 +10799 3472 990 2759 2728 7121 4639 6408 6377 +10800 3483 1789 674 2836 7132 5438 4323 6485 +10801 2719 1633 1376 3549 6368 5282 5025 7198 +10802 2745 1116 3406 3470 6394 4765 7055 7119 +10803 1112 2540 471 3781 4761 6189 4120 7430 +10804 252 2605 1998 3616 3901 6254 5647 7265 +10805 1095 3086 1477 3503 4744 6735 5126 7152 +10806 300 2903 3663 1072 3949 6552 7312 4721 +10807 3522 1476 2542 3581 7171 5125 6191 7230 +10808 3453 1152 3143 2784 7102 4801 6792 6433 +10809 514 3355 983 2897 4163 7004 4632 6546 +10810 596 2666 1167 3599 4245 6315 4816 7248 +10811 3402 2994 3249 545 7051 6643 6898 4194 +10812 3418 3746 2984 1523 7067 7395 6633 5172 +10813 3597 3335 617 1433 7246 6984 4266 5082 +10814 3168 1243 2586 3610 6817 4892 6235 7259 +10815 2364 2160 2159 1275 6013 5809 5808 4924 +10816 3536 1736 944 2904 7185 5385 4593 6553 +10817 2919 3357 2535 310 6568 7006 6184 3959 +10818 2539 1149 1989 3796 6188 4798 5638 7445 +10819 3842 977 1527 2866 7491 4626 5176 6515 +10820 3738 1658 858 2709 7387 5307 4507 6358 +10821 2897 1242 2965 3389 6546 4891 6614 7038 +10822 2629 1096 2271 3624 6278 4745 5920 7273 +10823 3512 3511 522 1633 7161 7160 4171 5282 +10824 1281 3609 389 3495 4930 7258 4038 7144 +10825 3666 1098 3261 2909 7315 4747 6910 6558 +10826 525 3323 1108 3002 4174 6972 4757 6651 +10827 242 2718 1240 3787 3891 6367 4889 7436 +10828 212 3689 2346 2912 3861 7338 5995 6561 +10829 3795 3113 1500 1060 7444 6762 5149 4709 +10830 808 3327 1271 3241 4457 6976 4920 6890 +10831 1140 2547 832 3805 4789 6196 4481 7454 +10832 1424 3667 760 3151 5073 7316 4409 6800 +10833 1392 2968 1389 3347 5041 6617 5038 6996 +10834 3417 1173 3361 2888 7066 4822 7010 6537 +10835 1239 2810 241 3702 4888 6459 3890 7351 +10836 3365 1262 3525 3248 7014 4911 7174 6897 +10837 3365 3248 3845 1292 7014 6897 7494 4941 +10838 3686 1143 3453 2784 7335 4792 7102 6433 +10839 3273 3576 2793 1329 6922 7225 6442 4978 +10840 3392 530 2804 3417 7041 4179 6453 7066 +10841 3681 2623 1335 713 7330 6272 4984 4362 +10842 3449 3032 1509 583 7098 6681 5158 4232 +10843 3449 1402 3825 3032 7098 5051 7474 6681 +10844 1651 3801 856 2571 5300 7450 4505 6220 +10845 3483 2836 2360 867 7132 6485 6009 4516 +10846 1338 3216 603 3540 4987 6865 4252 7189 +10847 3647 725 1441 2676 7296 4374 5090 6325 +10848 1127 3363 1285 3642 4776 7012 4934 7291 +10849 271 571 663 1213 3920 4220 4312 4862 +10850 3002 1108 3511 3512 6651 4757 7160 7161 +10851 1351 3361 1173 3360 5000 7010 4822 7009 +10852 1372 3707 1437 3658 5021 7356 5086 7307 +10853 3130 1335 2226 3639 6779 4984 5875 7288 +10854 3572 3036 414 1827 7221 6685 4063 5476 +10855 3036 3572 2486 895 6685 7221 6135 4544 +10856 2692 362 1637 3783 6341 4011 5286 7432 +10857 3783 3798 2242 2692 7432 7447 5891 6341 +10858 695 2208 2110 2233 4344 5857 5759 5882 +10859 2595 632 1623 3795 6244 4281 5272 7444 +10860 3132 1512 3622 3631 6781 5161 7271 7280 +10861 1094 2999 323 3000 4743 6648 3972 6649 +10862 3015 3387 1778 1009 6664 7036 5427 4658 +10863 3338 3233 1345 1104 6987 6882 4994 4753 +10864 3233 3338 2293 1352 6882 6987 5942 5001 +10865 1132 3393 501 3013 4781 7042 4150 6662 +10866 2699 3768 2513 853 6348 7417 6162 4502 +10867 3506 1321 3123 3306 7155 4970 6772 6955 +10868 3732 2648 3011 372 7381 6297 6660 4021 +10869 1765 3333 438 3126 5414 6982 4087 6775 +10870 3721 2948 2874 1323 7370 6597 6523 4972 +10871 3120 86 85 3396 6769 182 181 7045 +10872 3733 357 2490 2673 7382 4006 6139 6322 +10873 3817 604 1403 2855 7466 4253 5052 6504 +10874 2565 1198 443 2732 6214 4847 4092 6381 +10875 3103 1246 1247 649 6752 4895 4896 4298 +10876 999 2493 1470 3139 4648 6142 5119 6788 +10877 2733 2151 1441 3814 6382 5800 5090 7463 +10878 3637 2749 22 21 7286 6398 118 117 +10879 3694 3826 2640 1478 7343 7475 6289 5127 +10880 1414 3672 1157 3452 5063 7321 4806 7101 +10881 3595 1237 2544 2960 7244 4886 6193 6609 +10882 2960 977 3024 3595 6609 4626 6673 7244 +10883 1090 3504 1450 3202 4739 7153 5099 6851 +10884 1567 3570 1250 3766 5216 7219 4899 7415 +10885 3481 3069 3669 1186 7130 6718 7318 4835 +10886 598 2932 1095 3503 4247 6581 4744 7152 +10887 340 2785 1067 3631 3989 6434 4716 7280 +10888 3830 2707 1707 224 7479 6356 5356 3873 +10889 3830 1240 2718 2707 7479 4889 6367 6356 +10890 1246 2211 3135 2212 4895 5860 6784 5861 +10891 562 2824 2353 2990 4211 6473 6002 6639 +10892 2997 1055 2758 3714 6646 4704 6407 7363 +10893 3496 1944 1119 1678 7145 5593 4768 5327 +10894 3798 615 3735 2726 7447 4264 7384 6375 +10895 3482 1011 2483 1223 7131 4660 6132 4872 +10896 3120 3396 1889 1192 6769 7045 5538 4841 +10897 283 2649 1083 3840 3932 6298 4732 7489 +10898 1372 2950 968 3532 5021 6599 4617 7181 +10899 3768 2699 243 1363 7417 6348 3892 5012 +10900 1359 3537 1113 3304 5008 7186 4762 6953 +10901 3824 3356 2532 473 7473 7005 6181 4122 +10902 3306 349 2689 3506 6955 3998 6338 7155 +10903 3658 2799 3640 909 7307 6448 7289 4558 +10904 1367 3444 573 3447 5016 7093 4222 7096 +10905 3536 3021 3481 1186 7185 6670 7130 4835 +10906 1307 3605 361 3346 4956 7254 4010 6995 +10907 1193 3494 1416 3493 4842 7143 5065 7142 +10908 3672 341 2795 1012 7321 3990 6444 4661 +10909 2772 3692 2919 1507 6421 7341 6568 5156 +10910 3442 3334 2421 1362 7091 6983 6070 5011 +10911 3559 555 3826 2901 7208 4204 7475 6550 +10912 3838 917 3479 2674 7487 4566 7128 6323 +10913 3686 2784 3143 572 7335 6433 6792 4221 +10914 563 3490 1187 3342 4212 7139 4836 6991 +10915 3634 1944 1094 476 7283 5593 4743 4125 +10916 3213 1361 2868 3450 6862 5010 6517 7099 +10917 3213 3450 2254 579 6862 7099 5903 4228 +10918 3416 3565 2334 1236 7065 7214 5983 4885 +10919 1540 3484 1259 3846 5189 7133 4908 7495 +10920 1103 3049 665 3489 4752 6698 4314 7138 +10921 3372 3836 1649 293 7021 7485 5298 3942 +10922 3836 3372 3735 1484 7485 7021 7384 5133 +10923 3832 1211 3604 2716 7481 4860 7253 6365 +10924 3832 2716 3283 888 7481 6365 6932 4537 +10925 3664 3033 1825 211 7313 6682 5474 3860 +10926 3033 3664 1795 1267 6682 7313 5444 4916 +10927 3069 3481 3286 539 6718 7130 6935 4188 +10928 3690 1475 431 2820 7339 5124 4080 6469 +10929 3621 2884 2814 1319 7270 6533 6463 4968 +10930 1063 2842 760 3667 4712 6491 4409 7316 +10931 1395 2813 886 2529 5044 6462 4535 6178 +10932 1146 3085 575 3751 4795 6734 4224 7400 +10933 2795 3756 822 1974 6444 7405 4471 5623 +10934 2871 3849 1342 2108 6520 7498 4991 5757 +10935 1556 3117 779 3834 5205 6766 4428 7483 +10936 549 2771 1051 3762 4198 6420 4700 7411 +10937 597 2981 1243 3671 4246 6630 4892 7320 +10938 920 3706 2123 2961 4569 7355 5772 6610 +10939 564 2968 1392 3569 4213 6617 5041 7218 +10940 1430 3711 1700 2832 5079 7360 5349 6481 +10941 3021 3536 2904 574 6670 7185 6553 4223 +10942 297 3482 1091 3097 3946 7131 4740 6746 +10943 3443 387 2856 3187 7092 4036 6505 6836 +10944 3443 3187 3188 1228 7092 6836 6837 4877 +10945 3173 3455 3086 1095 6822 7104 6735 4744 +10946 3721 1323 2927 3194 7370 4972 6576 6843 +10947 3421 3423 3759 591 7070 7072 7408 4240 +10948 3783 1637 615 3798 7432 5286 4264 7447 +10949 3664 3076 937 1795 7313 6725 4586 5444 +10950 1419 3251 630 3841 5068 6900 4279 7490 +10951 1167 2990 1300 3599 4816 6639 4949 7248 +10952 3722 2859 3338 1104 7371 6508 6987 4753 +10953 591 3420 1382 3421 4240 7069 5031 7070 +10954 1574 3229 358 3753 5223 6878 4007 7402 +10955 2941 1257 3696 3761 6590 4906 7345 7410 +10956 3561 3560 286 1572 7210 7209 3935 5221 +10957 3561 1166 1631 3560 7210 4815 5280 7209 +10958 3422 1233 3423 3421 7071 4882 7072 7070 +10959 1035 3079 1252 3626 4684 6728 4901 7275 +10960 1263 3404 1277 3320 4912 7053 4926 6969 +10961 3550 3170 654 1579 7199 6819 4303 5228 +10962 3605 3170 3550 361 7254 6819 7199 4010 +10963 3170 3605 1307 1578 6819 7254 4956 5227 +10964 3070 259 3095 3591 6719 3908 6744 7240 +10965 1402 3449 1320 3596 5051 7098 4969 7245 +10966 544 3661 1165 2976 4193 7310 4814 6625 +10967 1283 3601 527 3250 4932 7250 4176 6899 +10968 3672 1012 3004 1157 7321 4661 6653 4806 +10969 1397 3675 509 3470 5046 7324 4158 7119 +10970 1249 3739 205 2979 4898 7388 3854 6628 +10971 1284 3285 1285 3363 4933 6934 4934 7012 +10972 1469 3574 1265 3652 5118 7223 4914 7301 +10973 2599 328 2569 2598 6248 3977 6218 6247 +10974 3773 1337 2402 3526 7422 4986 6051 7175 +10975 3773 3526 2605 1497 7422 7175 6254 5146 +10976 3760 2907 1911 1159 7409 6556 5560 4808 +10977 556 3075 2275 3763 4205 6724 5924 7412 +10978 1070 2978 499 3697 4719 6627 4148 7346 +10979 3334 3442 2043 3204 6983 7091 5692 6853 +10980 1060 3781 471 2898 4709 7430 4120 6547 +10981 1309 3653 1310 3829 4958 7302 4959 7478 +10982 3460 3576 3273 1279 7109 7225 6922 4928 +10983 1126 3524 398 3209 4775 7173 4047 6858 +10984 3230 1334 3614 3718 6879 4983 7263 7367 +10985 3849 2871 1513 255 7498 6520 5162 3904 +10986 1133 3741 1508 2959 4782 7390 5157 6608 +10987 3665 3220 3808 630 7314 6869 7457 4279 +10988 3220 3665 3668 1304 6869 7314 7317 4953 +10989 3824 473 2757 1115 7473 4122 6406 4764 +10990 1495 3764 556 3763 5144 7413 4205 7412 +10991 2901 3826 3694 1129 6550 7475 7343 4778 +10992 1257 697 1506 3696 4906 4346 5155 7345 +10993 620 3713 1393 3618 4269 7362 5042 7267 +10994 3664 211 1462 3076 7313 3860 5111 6725 +10995 3016 1058 3230 3718 6665 4707 6879 7367 +10996 432 3056 1129 3694 4081 6705 4778 7343 +10997 1415 3116 955 2661 5064 6765 4604 6310 +10998 3168 3610 3242 1172 6817 7259 6891 4821 +10999 3653 3559 3242 1310 7302 7208 6891 4959 +11000 1338 3598 305 3359 4987 7247 3954 7008 +11001 290 2102 388 493 3939 5751 4037 4142 +11002 3260 1879 444 536 6909 5528 4093 4185 +11003 3444 1367 2635 3612 7093 5016 6284 7261 +11004 3653 1309 2299 3544 7302 4958 5948 7193 +11005 1229 3182 348 3183 4878 6831 3997 6832 +11006 1240 3064 1293 3787 4889 6713 4942 7436 +11007 1715 3340 1066 3541 5364 6989 4715 7190 +11008 3802 3292 231 1437 7451 6941 3880 5086 +11009 205 3739 1798 3124 3854 7388 5447 6773 +11010 1432 3024 977 3842 5081 6673 4626 7491 +11011 1937 2230 443 1938 5586 5879 4092 5587 +11012 1219 3531 592 3364 4868 7180 4241 7013 +11013 3846 3165 2738 351 7495 6814 6387 4000 +11014 3294 1225 3070 3591 6943 4874 6719 7240 +11015 1885 3708 1019 3197 5534 7357 4668 6846 +11016 3418 95 94 3767 7067 191 190 7416 +11017 1208 3195 535 3743 4857 6844 4184 7392 +11018 1540 3309 655 3758 5189 6958 4304 7407 +11019 1082 2987 521 3231 4731 6636 4170 6880 +11020 630 3251 1451 3665 4279 6900 5100 7314 +11021 3194 1452 3807 3721 6843 5101 7456 7370 +11022 1382 3420 1381 3539 5031 7069 5030 7188 +11023 3335 3597 2136 1210 6984 7246 5785 4859 +11024 1197 3643 46 3266 4846 7292 142 6915 +11025 3834 3090 2573 1130 7483 6739 6222 4779 +11026 1392 3347 565 3606 5041 6996 4214 7255 +11027 3565 3416 2708 1005 7214 7065 6357 4654 +11028 1243 3764 1495 3671 4892 7413 5144 7320 +11029 1243 3168 556 3764 4892 6817 4205 7413 +11030 1300 3436 1347 3599 4949 7085 4996 7248 +11031 3131 213 3211 961 6780 3862 6860 4610 +11032 1414 3284 341 3672 5063 6933 3990 7321 +11033 2601 861 526 2600 6250 4510 4175 6249 +11034 2737 1121 1122 202 6386 4770 4771 3851 +11035 3460 457 2793 3576 7109 4106 6442 7225 +11036 1179 3535 1605 3516 4828 7184 5254 7165 +11037 1260 3618 1393 3384 4909 7267 5042 7033 +11038 3785 602 1474 1514 7434 4251 5123 5163 +11039 3785 1325 2336 602 7434 4974 5985 4251 +11040 1138 3056 432 2863 4787 6705 4081 6512 +11041 3583 588 2719 3549 7232 4237 6368 7198 +11042 2733 1879 3260 1071 6382 5528 6909 4720 +11043 281 3247 1801 3748 3930 6896 5450 7397 +11044 3846 1259 3160 3165 7495 4908 6809 6814 +11045 3356 3824 1115 1714 7005 7473 4764 5363 +11046 400 1244 1245 3103 4049 4893 4894 6752 +11047 3581 939 3081 3184 7230 4588 6730 6833 +11048 3625 3583 3549 1376 7274 7232 7198 5025 +11049 1393 3713 1427 3607 5042 7362 5076 7256 +11050 1338 3540 1383 3598 4987 7189 5032 7247 +11051 1187 3738 545 3342 4836 7387 4194 6991 +11052 2927 1542 1047 2926 6576 5191 4696 6575 +11053 3372 1221 2726 3735 7021 4870 6375 7384 +11054 3260 536 3198 3199 6909 4185 6847 6848 +11055 1336 3282 1309 3829 4985 6931 4958 7478 +11056 3583 3625 3058 1377 7232 7274 6707 5026 +11057 3544 555 3559 3653 7193 4204 7208 7302 +11058 823 1887 3663 359 4472 5536 7312 4008 +11059 798 3463 1790 3736 4447 7112 5439 7385 +11060 3767 1296 3746 3418 7416 4945 7395 7067 +11061 1331 3571 1425 3678 4980 7220 5074 7327 +11062 1074 3093 1026 3094 4723 6742 4675 6743 +11063 610 3678 1425 3818 4259 7327 5074 7467 +11064 1491 3100 1208 3439 5140 6749 4857 7088 +11065 1567 3743 535 3570 5216 7392 4184 7219 +11066 3703 1671 3175 3728 7352 5320 6824 7377 +11067 3482 297 3193 1011 7131 3946 6842 4660 +11068 739 3759 3423 1232 4388 7408 7072 4881 +11069 3740 3704 1732 612 7389 7353 5381 4261 +11070 3728 1256 2145 3703 7377 4905 5794 7352 +11071 3740 1411 2243 3704 7389 5060 5892 7353 +11072 1422 3716 1411 3740 5071 7365 5060 7389 +11073 1681 3705 283 3840 5330 7354 3932 7489 +11074 1437 3707 245 3802 5086 7356 3894 7451 +11075 3297 2018 377 1417 6946 5667 4026 5066 +11076 570 3585 1343 3843 4219 7234 4992 7492 +11077 344 1980 621 2263 3993 5629 4270 5912 +11078 3422 3628 1979 288 7071 7277 5628 3937 +11079 1425 3819 1464 3818 5074 7468 5113 7467 +11080 3808 3831 2414 1558 7457 7480 6063 5207 +11081 3831 3808 3220 1371 7480 7457 6869 5020 +11082 3428 1174 3426 3427 7077 4823 7075 7076 +11083 2737 202 1938 631 6386 3851 5587 4280 +11084 2364 1784 1245 1244 6013 5433 4894 4893 +11085 3797 2520 2519 467 7446 6169 6168 4116 +11086 2287 3558 3307 270 5936 7207 6956 3919 +11087 3691 698 2876 2875 7340 4347 6525 6524 +11088 2287 571 3167 3558 5936 4220 6816 7207 +11089 586 1270 3184 3081 4235 4919 6833 6730 +11090 3198 299 2894 3199 6847 3948 6543 6848 +11091 1270 3183 348 3184 4919 6832 3997 6833 +11092 202 1122 536 444 3851 4771 4185 4093 +11093 202 444 1937 1938 3851 4093 5586 5587 +11094 279 1333 3084 1205 3928 4982 6733 4854 +11095 279 1205 2340 2380 3928 4854 5989 6029 +11096 869 298 590 359 4518 3947 4239 4008 +11097 1079 298 869 567 4728 3947 4518 4216 +11098 590 298 1391 1499 4239 3947 5040 5148 +11099 300 400 3103 649 3949 4049 6752 4298 +11100 649 426 1230 300 4298 4075 4879 3949 +11101 1196 622 3198 306 4845 4271 6847 3955 +11102 1538 2876 2877 315 5187 6525 6526 3964 +11103 1206 316 1653 1069 4855 3965 5302 4718 +11104 526 3662 1204 329 4175 7311 4853 3978 +11105 2848 748 526 329 6497 4397 4175 3978 +11106 344 567 395 623 3993 4216 4044 4272 +11107 344 767 1079 567 3993 4416 4728 4216 +11108 1980 344 623 622 5629 3993 4272 4271 +11109 767 344 2263 766 4416 3993 5912 4415 +11110 1542 346 963 2931 5191 3995 4612 6580 +11111 2157 2158 963 346 5806 5807 4612 3995 +11112 1448 360 1315 1248 5097 4009 4964 4897 +11113 2049 366 2004 1647 5698 4015 5653 5296 +11114 1937 366 1380 2589 5586 4015 5029 6238 +11115 1195 377 2018 1163 4844 4026 5667 4812 +11116 2232 388 2102 403 5881 4037 5751 4052 +11117 1720 393 3081 939 5369 4042 6730 4588 +11118 695 403 2390 1191 4344 4052 6039 4840 +11119 403 695 2233 2232 4052 4344 5882 5881 +11120 2390 403 2609 876 6039 4052 6258 4525 +11121 2877 404 270 726 6526 4053 3919 4375 +11122 2609 404 2878 876 6258 4053 6527 4525 +11123 2315 684 1554 406 5964 4333 5203 4055 +11124 1479 984 3169 406 5128 4633 6818 4055 +11125 2876 1538 3803 422 6525 5187 7452 4071 +11126 426 649 1247 1207 4075 4298 4896 4856 +11127 906 434 466 1138 4555 4083 4115 4787 +11128 434 906 1408 3265 4083 4555 5057 6914 +11129 434 1646 3274 2131 4083 5295 6923 5780 +11130 2131 1647 1533 434 5780 5296 5182 4083 +11131 442 2230 1937 2589 4091 5879 5586 6238 +11132 1198 631 1938 443 4847 4280 5587 4092 +11133 2004 444 1879 1180 5653 4093 5528 4829 +11134 1521 453 3317 3303 5170 4102 6966 6952 +11135 1626 1196 3317 453 5275 4845 6966 4102 +11136 1448 1072 3663 465 5097 4721 7312 4114 +11137 466 529 740 1557 4115 4178 4389 5206 +11138 466 3701 433 529 4115 7350 4082 4178 +11139 861 2601 3797 467 4510 6250 7446 4116 +11140 1121 476 1094 477 4770 4125 4743 4126 +11141 1120 476 1121 1896 4769 4125 4770 5545 +11142 1120 2286 3634 476 4769 5935 7283 4125 +11143 2931 963 306 477 6580 4612 3955 4126 +11144 1214 478 2737 631 4863 4127 6386 4280 +11145 1255 493 388 976 4904 4142 4037 4625 +11146 1332 524 1333 3154 4981 4173 4982 6803 +11147 861 1206 3662 526 4510 4855 7311 4175 +11148 1910 533 2626 806 5559 4182 6275 4455 +11149 533 1538 315 2626 4182 5187 3964 6275 +11150 3606 565 1145 1100 7255 4214 4794 4749 +11151 565 1390 1079 1145 4214 5039 4728 4794 +11152 566 1145 1079 767 4215 4794 4728 4416 +11153 767 1510 3752 566 4416 5159 7401 4215 +11154 2143 1100 1145 566 5792 4749 4794 4215 +11155 586 585 3183 1270 4235 4234 6832 4919 +11156 3776 589 3564 1439 7425 4238 7213 5088 +11157 1950 823 359 590 5599 4472 4008 4239 +11158 621 1791 1302 2263 4270 5440 4951 5912 +11159 1196 1626 1980 622 4845 5275 5629 4271 +11160 880 626 388 2232 4529 4275 4037 5881 +11161 626 880 1989 2537 4275 4529 5638 6186 +11162 3208 976 388 626 6857 4625 4037 4275 +11163 3332 806 2626 684 6981 4455 6275 4333 +11164 3332 684 2315 1313 6981 4333 5964 4962 +11165 896 698 3691 1345 4545 4347 7340 4994 +11166 748 2848 3046 1751 4397 6497 6695 5400 +11167 806 3332 1314 1930 4455 6981 4963 5579 +11168 1191 1352 2293 1190 4840 5001 5942 4839 +11169 1353 876 698 896 5002 4525 4347 4545 +11170 876 1353 3017 2390 4525 5002 6666 6039 +11171 896 2593 3017 1353 4545 6242 6666 5002 +11172 3528 936 325 1109 7177 4585 3974 4758 +11173 2554 3533 325 936 6203 7182 3974 4585 +11174 1720 939 3581 2542 5369 4588 7230 6191 +11175 1255 975 2376 2725 4904 4624 6025 6374 +11176 976 2617 975 1255 4625 6266 4624 4904 +11177 3208 2182 2617 976 6857 5831 6266 4625 +11178 3308 1016 1458 1366 6957 4665 5107 5015 +11179 1244 1072 1448 1248 4893 4721 5097 4897 +11180 1174 3428 475 1896 4823 7077 4124 5545 +11181 2208 1190 3517 1611 5857 4839 7166 5260 +11182 1204 1625 1624 1202 4853 5274 5273 4851 +11183 3662 1206 1069 1207 7311 4855 4718 4856 +11184 1207 2340 1205 3662 4856 5989 4854 7311 +11185 3423 1233 1348 1232 7072 4882 4997 4881 +11186 2211 1246 3103 1245 5860 4895 6752 4894 +11187 1245 1784 1783 1274 4894 5433 5432 4923 +11188 2380 2340 1207 1247 6029 5989 4856 4896 +11189 1248 1315 3547 2160 4897 4964 7196 5809 +11190 1417 2158 1416 2905 5066 5807 5065 6554 +11191 1446 2995 465 2255 5095 6644 4114 5904 +11192 1626 1520 3630 2766 5275 5169 7279 6415 +11193 1788 1646 434 3265 5437 5295 4083 6914 +11194 1 104 1553 9 5 200 5202 105 +$EndElements From 05a454391498d41b66e4c3feb9aafe24668ba512 Mon Sep 17 00:00:00 2001 From: Stefano Colombo Date: Wed, 1 Feb 2023 11:22:30 +0100 Subject: [PATCH 07/15] stl, control file, IBM folder added for testcase --- .../IBM_Cylinder/IBM/cylinder.stl | Bin 0 -> 39884 bytes .../IBM_Cylinder/IBMCylinder.control | 64 ++++++++++++++++++ .../IBM_Cylinder/MESH/cylinder.stl | Bin 0 -> 39884 bytes 3 files changed, 64 insertions(+) create mode 100644 Solver/test/NavierStokes/IBM_Cylinder/IBM/cylinder.stl create mode 100644 Solver/test/NavierStokes/IBM_Cylinder/IBMCylinder.control create mode 100644 Solver/test/NavierStokes/IBM_Cylinder/MESH/cylinder.stl diff --git a/Solver/test/NavierStokes/IBM_Cylinder/IBM/cylinder.stl b/Solver/test/NavierStokes/IBM_Cylinder/IBM/cylinder.stl new file mode 100644 index 0000000000000000000000000000000000000000..905c608e45e35f1f4f10d605f2dd3046690fea43 GIT binary patch literal 39884 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 literal 0 HcmV?d00001 diff --git a/Solver/test/NavierStokes/IBM_Cylinder/IBMCylinder.control b/Solver/test/NavierStokes/IBM_Cylinder/IBMCylinder.control new file mode 100644 index 000000000..fed3aaa99 --- /dev/null +++ b/Solver/test/NavierStokes/IBM_Cylinder/IBMCylinder.control @@ -0,0 +1,64 @@ +/* Control file for the implicit Navier-Stokes solver */ +Flow equations = "NS" +mesh file name = "../TestMeshes/IBMCylinder.msh" + +!--STL +stl file name = "cylinder" + +Polynomial order = 3 +Number of time steps = 20 +Output Interval = 5 +autosave mode = "iteration" +autosave interval = 50 + +mach number = 0.2d0 +Reynolds number = 40.0d0 + + +solution file name = "RESULTS/IBMCylinder.hsol" +save gradients with soluton = .false. +restart = .false. +restart file name = "RESULTS/IBMCylinder_0001140000.hsol" +riemann solver = "lax-friedrichs" + +viscous discretization = "BR1" + +autosave mode = "iteration" +autosave interval = 10000 + +cfl = 0.15d0 +dcfl = 0.15d0 + + +#define IBM + name = Cylinder + active = .true. + describe = .true. + number of objects = 3 + number of interpolation points = 15 + plot mask = .true. +#end + +#define boundary inlet + type = InFlow +#end + +#define boundary outlet + type = OutFlow +#end + +#define boundary up + type = FreeSlipWall +#end + +#define boundary down + type = FreeSlipWall +#end + +#define boundary walls + type = FreeSlipWall +#end + +#define boundary cylinder + type = NoSlipWall +#end diff --git a/Solver/test/NavierStokes/IBM_Cylinder/MESH/cylinder.stl b/Solver/test/NavierStokes/IBM_Cylinder/MESH/cylinder.stl new file mode 100644 index 0000000000000000000000000000000000000000..905c608e45e35f1f4f10d605f2dd3046690fea43 GIT binary patch literal 39884 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 literal 0 HcmV?d00001 From 2dc60b9ae77e96ca3d06122dccf520caf9792a63 Mon Sep 17 00:00:00 2001 From: Stefano Colombo Date: Wed, 1 Feb 2023 12:13:55 +0100 Subject: [PATCH 08/15] bug in kdtree destr. + test mesh + control file --- Solver/src/libs/mesh/KDClass.f90 | 6 - .../IBM_Cylinder/IBMCylinder.control | 7 +- Solver/test/TestMeshes/IBMCylinder.msh | 53736 ++++++++++------ 3 files changed, 35237 insertions(+), 18512 deletions(-) diff --git a/Solver/src/libs/mesh/KDClass.f90 b/Solver/src/libs/mesh/KDClass.f90 index 8ef5ebfc9..b9d13e501 100644 --- a/Solver/src/libs/mesh/KDClass.f90 +++ b/Solver/src/libs/mesh/KDClass.f90 @@ -589,12 +589,6 @@ recursive subroutine KD_treeDestruct( this, isChild ) if( associated(this% child_L) .and. .not. this% isLast ) call this% child_L% destruct( isChild ) if( associated(this% child_R) .and. .not. this% isLast ) call this% child_R% destruct( isChild ) - if( .not. isChild ) then - if( associated(this% child_L) ) deallocate(this% child_L) - if( associated(this% child_R) ) deallocate(this% child_R) - if( associated(this% parent) ) nullify(this% parent) - end if - end subroutine KD_treeDestruct subroutine KD_treeGetArea( tree ) diff --git a/Solver/test/NavierStokes/IBM_Cylinder/IBMCylinder.control b/Solver/test/NavierStokes/IBM_Cylinder/IBMCylinder.control index fed3aaa99..93fe882d4 100644 --- a/Solver/test/NavierStokes/IBM_Cylinder/IBMCylinder.control +++ b/Solver/test/NavierStokes/IBM_Cylinder/IBMCylinder.control @@ -1,6 +1,6 @@ /* Control file for the implicit Navier-Stokes solver */ Flow equations = "NS" -mesh file name = "../TestMeshes/IBMCylinder.msh" +mesh file name = "../../TestMeshes/IBMCylinder.msh" !--STL stl file name = "cylinder" @@ -26,8 +26,9 @@ viscous discretization = "BR1" autosave mode = "iteration" autosave interval = 10000 -cfl = 0.15d0 -dcfl = 0.15d0 +convergence tolerance = 1.0d-12 +cfl = 0.1d0 +dcfl = 0.1d0 #define IBM diff --git a/Solver/test/TestMeshes/IBMCylinder.msh b/Solver/test/TestMeshes/IBMCylinder.msh index c494c5b71..bf4dbb1fe 100644 --- a/Solver/test/TestMeshes/IBMCylinder.msh +++ b/Solver/test/TestMeshes/IBMCylinder.msh @@ -41,7 +41,7 @@ $Entities 1 -10 -10 0.001000000000000001 20 10 0.102 1 32 6 -1 26 13 17 21 25 $EndEntities $Nodes -23 7498 1 7498 +23 12278 1 12278 0 1 0 1 1 -10 -10 0.001 @@ -458,7 +458,7 @@ $Nodes -6.9999999999959 -10 0.102 -7.999999999997264 -10 0.102 -8.999999999998632 -10 0.102 -2 1 0 3649 +2 1 0 6039 201 202 203 @@ -4108,3660 +4108,6 @@ $Nodes 3847 3848 3849 -9.778807897171502 0.05558097101420824 0.001 --0.3384969699456766 0.2246759655303913 0.001 -4.3171953140971 -3.843336183435499 0.001 -4.64211736451421 4.023039100397666 0.001 --3.962440810408782 -4.022064256688987 0.001 --4.353726025360202 3.877264611258266 0.001 -14.26053004338494 4.258806301029247 0.001 -13.92638068866421 -4.073054486028105 0.001 -9.300165611135684 -5.021433419267026 0.001 -9.359981860104012 4.916060108127613 0.001 -0.479083106988861 5.992204283023418 0.001 -0.2616839271001427 -5.116033485553635 0.001 --5.310001561269612 0.07478896856466866 0.001 -15.79102990734741 -0.0893761575181832 0.001 -5.847099930133955 0.1527569603666403 0.001 -16.47094770708509 6.568382823372293 0.001 -16.65253001106647 -6.34541716185104 0.001 --6.51957517473234 -6.587312204482456 0.001 -6.48773763682424 -6.659541678870707 0.001 --6.723859510168295 6.700024777523405 0.001 -6.033536299629761 6.707096631871114 0.001 -12.16726273619705 -6.431076023548391 0.001 -12.07934391654776 6.558989012953081 0.001 -12.39021784323325 1.267358684266742 0.001 -1.620509487334398 -2.357591586607114 0.001 -7.18912607220427 -2.126326349323302 0.001 -3.154661792447822 6.679641077314855 0.001 -2.927004712977335 -6.726361783112851 0.001 --2.827222346865052 -6.80646723895355 0.001 -7.359267448602184 2.602122003358535 0.001 -2.47184584467556 1.712056624721466 0.001 -11.19000602675133 -2.555768905034229 0.001 --2.727680904102127 6.834082844977783 0.001 -16.51973961997356 3.160488423349568 0.001 -16.86538030868333 -2.616351518362426 0.001 --6.938136991502127 -2.63980955369857 0.001 --1.520756124905371 -2.518260167318587 0.001 --7.046300888535879 2.730096841800151 0.001 --3.118990552202356 1.284847046718091 0.001 -10.22414519261333 2.869712338632752 0.001 --0.8324318131411002 2.724161421979818 0.001 -13.56359638523138 -1.335889148405581 0.001 -8.613110043543568 -7.463358757694778 0.001 -8.900586012996003 7.607998570298383 0.001 -2.102669355968249 3.62458576203 0.001 --3.873068783922107 -1.563216876502117 0.001 -14.24541875005511 -7.214828232441432 0.001 -14.18363279768171 7.404797131542558 0.001 -3.603609308030055 -1.354623308727185 0.001 -0.8573079008680295 7.63860218858552 0.001 --0.3394978485953679 -7.720033345763035 0.001 -11.70709944116238 4.466244931022066 0.001 --1.9451318846254 4.746601909091229 0.001 --7.729191223110295 -0.4196166046403471 0.001 --4.695285757974754 -7.794149558379218 0.001 --4.928555105162137 7.825884205582923 0.001 -17.69509118813632 0.5850265261975738 0.001 --1.519780623880887 -4.683616999563125 0.001 -6.915507812913066 4.365242284873371 0.001 --8.091967893810942 -4.764906568052602 0.001 -6.815470157648247 -4.048997096957782 0.001 --7.917876797607586 5.148504529633155 0.001 -14.14450519291148 1.698802036250893 0.001 -18.17543541731497 4.947484008793628 0.001 -17.84645646814626 -4.596424561936343 0.001 -11.10500222922638 -4.639391462669168 0.001 --4.972160274263994 2.011422578936783 0.001 --2.142894545664422 -0.7445579560210616 0.001 -5.69749475428727 2.372628262742814 0.001 -1.747307471777847 -0.3556934718680885 0.001 -0.424026133056503 -1.168697259979461 0.001 -4.214109027175104 8.024215513853466 0.001 -17.90712123938819 8.09860872755803 0.001 -17.83804385065398 -8.090877575112271 0.001 -7.507069494318005 -0.4040610464737135 0.001 -11.45193110512981 -0.8571659044117483 0.001 -10.87109906805544 -8.118062158138931 0.001 -4.540735820079144 -7.985710876238248 0.001 -1.139690382122118 1.046919957596142 0.001 -0.7812662497806541 0.07896091138716885 0.001 -0.3730611395833357 0.7711519600462875 0.001 -0.8725962532098591 0.5873369936698877 0.001 -0.5168151246898666 0.3849386469878797 0.001 -0.7124434827100807 0.9747983238867376 0.001 -0.7901727510507218 0.3351063836799678 0.001 -0.6040073798621349 0.636853074173157 0.001 -0.9567668386767115 0.8541143205421694 0.001 -0.2245396039158117 -0.1416077787856278 0.001 -0.4524430041471698 0.07418954106803989 0.001 -0.6505220602490145 -0.3570844384358338 0.001 -0.6213547653657827 0.206374848474322 0.001 -0.4158070563643809 0.5606048691876355 0.001 -0.1680765097473288 0.2967347448434218 0.001 -0.1045665339122664 0.5848920996499998 0.001 -0.7664760243168962 0.7776354801188299 0.001 -0.3776577435805402 0.251375241245111 0.001 -0.5742206456478236 0.8399965041525894 0.001 -0.3463575978408783 1.266815267921455 0.001 --1.196145143318557 1.603603496405709 0.001 -0.8689206922248114 1.464259571408791 0.001 -0.2451701100270807 0.4680295627464005 0.001 -0.9076709320541355 1.063567677364788 0.001 -0.7234919176462618 0.5098029584337769 0.001 -0.2761748499447121 0.6292948550263706 0.001 -0.130828323118243 0.8387942494965931 0.001 --0.3963233078863765 0.6887828757688185 0.001 -0.6280185653968188 0.04402176275446519 0.001 -0.09145400715208059 0.4316321894881257 0.001 -0.2188136849214738 0.08614105214155901 0.001 -0.3683345381116711 0.3998583723560507 0.001 -0.6491909752318274 0.3420990954134713 0.001 -0.5027373279910636 0.7244187753181672 0.001 -0.8335359331952029 0.8931408458957411 0.001 -0.8583606212955731 0.4636895827542016 0.001 -1.219146157657809 0.1846296791533891 0.001 -1.556909378103661 0.5506623626859524 0.001 -0.8935303000664695 0.7296593586995597 0.001 -0.7431033140476894 0.643957135342445 0.001 -0.5478615942895572 0.5307171866465542 0.001 -0.5001288377715265 0.2613825220818154 0.001 -0.1640556830356844 0.7200935103585293 0.001 --0.02139471023450567 0.735732787888235 0.001 --0.09869386003565389 0.5393757157724017 0.001 -0.3459817529871992 0.1409806340044271 0.001 -1.149795147476499 0.4869733798004456 0.001 -1.006631807529102 0.3009807198072235 0.001 -0.8699124747149323 0.2117632943959763 0.001 -1.109688099378634 0.7100508328248053 0.001 -1.139373324543485 0.8832282736895051 0.001 -0.7426762106439244 0.2121809986271706 0.001 -0.2578128841267724 0.1980881519969167 0.001 -0.1264274614678327 0.157307365064368 0.001 --0.04365656840552361 0.292963281663765 0.001 --0.04033845575114733 0.4181060675283631 0.001 -0.2520758278207708 0.8050046468630437 0.001 -0.9897254232565234 0.638545264103745 0.001 -0.9709226252647365 0.5059138440823161 0.001 -1.016278782713312 0.9737063797528168 0.001 -0.2773578138588181 0.3383651021655311 0.001 -0.4634277160341489 0.8433637541291668 0.001 -0.5244953735356532 1.031583296225929 0.001 -0.3197293682692126 0.9881718520900998 0.001 -0.2292146196727762 0.9132950028205311 0.001 --0.0452131829484872 1.373422537357332 0.001 --0.0004912280334828966 0.6171971668816083 0.001 --0.1286233279736679 0.6598779211307543 0.001 -0.3382446279995521 -0.03252276411481384 0.001 -0.5141335647764772 -0.1109313314380381 0.001 -0.4326261961580243 0.9443124439496492 0.001 -0.4030421318351134 1.067489986683336 0.001 -0.9058863891141704 0.3594973727232573 0.001 -1.037599182904338 -0.004189580999847731 0.001 -0.9133850886624187 0.07161539868421657 0.001 -0.6947813710044063 0.8582623422653861 0.001 -0.6538049868463096 0.7406019448820724 0.001 -0.3420201722870181 0.8800698948122054 0.001 -0.6024822347061016 0.9460360786561908 0.001 -0.6423652457257883 1.060510436975697 0.001 -0.5133877644339907 1.272219652227606 0.001 -0.7696911069289866 1.107782857871021 0.001 -0.61807610276406 0.4403728608398318 0.001 -0.06409634002360967 0.3239190504789655 0.001 -0.02371012078355694 0.51337924637846 0.001 -1.003360251353602 0.7634162516280383 0.001 -0.5382049178171135 0.1636038122914853 0.001 --0.1945566677866459 -0.05641952431682425 0.001 --0.0391030600036743 0.09805020944003996 0.001 -0.09566312908149185 0.008985476505909036 0.001 -0.02681779818405991 0.1895340591143252 0.001 -0.6909052840898305 0.1285969927551789 0.001 -0.3817059509476804 0.6605625519443 0.001 -0.5006137558422266 0.6280901478426675 0.001 -0.8157636709831505 0.9995746228909884 0.001 -0.4615157443221047 0.4636324196944308 0.001 -0.07022892599412996 0.7605027081570481 0.001 --0.01313574590324417 0.8893091898692332 0.001 --0.1739446310068749 0.820240105614003 0.001 -0.0913435918927723 0.9770671542133333 0.001 -0.2020701495607371 1.046617406956 0.001 -0.3045785041879657 1.109620711728035 0.001 -0.9917860259272819 0.40645695619996 0.001 -0.199744252517849 0.5554331803658492 0.001 -0.3205658313168829 0.540546485157393 0.001 -0.1747404241099047 0.3892871532541547 0.001 -0.4307674212526985 0.1796317079151855 0.001 -0.5196753208393675 0.004156343659810095 0.001 -0.6257377485157596 -0.06996937432786687 0.001 -0.8066488316280985 -0.193595685950414 0.001 -0.7202235514222087 -0.01523763634351834 0.001 -0.8344103880155528 -0.03359941854500965 0.001 -0.9413338210684247 -0.04301772313987808 0.001 -0.4277236618822847 -0.01650634188187173 0.001 -0.3831930953266031 -0.1361389633758801 0.001 -0.6368017088840909 0.5604286975778956 0.001 -0.2219216427440524 2.08455937985675 0.001 -0.4324911413714538 0.3162848346980611 0.001 -0.5285121151327831 0.9162855116470409 0.001 -0.06473661051646083 0.09985713422799226 0.001 -1.006401466185234 1.0741681678656 0.001 -0.9184796005110086 1.287406084071762 0.001 -0.9563119658513929 0.2289040956349079 0.001 --0.02293348123276077 -0.01284702397579847 0.001 -0.9828919222370649 -0.237094641420951 0.001 -1.386290265087847 -0.1598911714807213 0.001 -1.043799782629146 0.229149562513158 0.001 -1.17996755817908 0.3404545840081533 0.001 -0.7973784356628817 0.6998424563020591 0.001 -0.8416100158278552 0.8027350507965221 0.001 -0.803207741477321 0.5417584268656741 0.001 -0.291402258314941 0.7195663633250237 0.001 -0.08885765579232688 0.2520631842791979 0.001 -0.8489226638682441 0.1260800599010023 0.001 -0.5761498647440907 0.284722269292277 0.001 -0.3030122119360984 0.05342730061847659 0.001 -0.06237933371741597 0.6588794380408469 0.001 -0.1433282454443406 0.07733814744688396 0.001 -0.1880799847751229 -0.01015636108084575 0.001 -0.8587890556760938 0.2975070070432032 0.001 -0.1261511163962301 0.5101574734415503 0.001 -0.9416183138500361 0.1436558712665255 0.001 -1.003302682899799 0.06540238355644094 0.001 -1.119291205107674 0.07354565161700072 0.001 -0.07844672046478118 0.9029568493069992 0.001 -0.3764486404700911 0.4876766715987024 0.001 -0.6072363239203487 0.1223145977589558 0.001 -1.390446511438694 1.589101634797545 0.001 -0.006343026030112557 0.8101485789430353 0.001 -0.6746986595889132 0.2653798836968875 0.001 -0.1796160249036141 0.6372744227042798 0.001 -0.5529030924454934 0.07425204978609068 0.001 -0.5772923631798463 0.7247621657939847 0.001 -0.1101701130149972 -0.08995845234454504 0.001 --0.04189320647292939 -0.6506903134419275 0.001 --0.007024139049017263 -0.1549065330194654 0.001 -0.1790845755825639 0.9796798037797591 0.001 -0.384668068082255 0.04147859736693943 0.001 -0.8995219731540804 0.5151804936901725 0.001 -0.05130771176133666 -0.053035664968118 0.001 -0.9240405178190985 0.4572995325198732 0.001 -0.7836251088917795 0.1579866366360379 0.001 -0.3031282817132038 0.406518207749045 0.001 --0.1225752383016032 0.03613541717609939 0.001 --0.1401941137638613 0.1169664775359899 0.001 --0.4684480465309708 0.003124996147966625 0.001 -0.2639820603469262 -0.007700255273623002 0.001 -0.1258456758711975 1.048508687453042 0.001 -0.9405476029323272 0.5916247732736589 0.001 -1.035480958033257 0.56832836452934 0.001 -0.9286361834834808 0.3001996330662547 0.001 -0.4420507559873195 0.6685051746370618 0.001 -0.01927429131375017 0.9488234481629515 0.001 -0.03828677609801002 1.050574968957572 0.001 --0.1479695999368436 0.9901789492377249 0.001 -0.7672016845371208 0.8476598706179662 0.001 -0.7219648890435916 0.7146854744344324 0.001 -0.9085817803693086 0.6602474031536694 0.001 -0.2538971390978715 0.9868299819340103 0.001 -0.3502150492303563 0.3242569906968465 0.001 -0.846600682933504 0.04617399745512271 0.001 -0.1409800092171672 0.9117539158363921 0.001 -0.7885013064534953 0.4244462065070099 0.001 -0.1841745038358016 0.2299151643494274 0.001 -0.703856240779569 0.572635808261367 0.001 -0.7153230099252943 1.054410367085294 0.001 -0.6898711231981587 1.154715595686391 0.001 -0.1101652057897792 -0.2664045374115766 0.001 -1.160779746359544 0.5959521728474091 0.001 -0.4475988571522495 0.7680723933752928 0.001 -0.5186190628043287 0.7882245678737184 0.001 -0.1746665365602789 0.7870557070760387 0.001 -0.01605234690509771 0.05098919680680389 0.001 -0.1989192430016144 0.1593396421902221 0.001 -0.4596656568633735 0.3982473975774438 0.001 --0.009938783319590251 0.353051957258141 0.001 --0.09510296173807146 0.3501985770162923 0.001 --0.1501085918243583 0.4455711539174304 0.001 --0.2338527867559902 0.5459151643655887 0.001 --0.1237873749361008 0.2633230759078813 0.001 -0.2340694105109382 0.2764367872233029 0.001 -0.323889603704679 0.2002776223402084 0.001 -0.2735395255734213 0.1477974042294005 0.001 -0.5910947117774148 0.3936513813276019 0.001 -0.6934826726950305 0.05972365425683124 0.001 -0.5563253256178856 0.4444759753068381 0.001 -0.1817113392057116 0.4676396121435762 0.001 -0.4119292442651195 0.8826053680454881 0.001 -0.7169393151556588 0.3231554163520695 0.001 -0.202933142769147 0.8545452534530249 0.001 -0.7591109793026833 0.9224885196310471 0.001 -0.6831025317080462 0.6695220925835442 0.001 -0.7745899050743794 0.009230330232323905 0.001 -0.7614785210280461 -0.05975908868670261 0.001 -0.6899216978296316 -0.2159787532471563 0.001 -0.6897814220516285 -0.07120400909848938 0.001 -0.9346876663716386 0.7814931881438366 0.001 -1.059087232837671 0.6386136301645875 0.001 -0.5669692446609658 0.5868886706900094 0.001 -0.4808141842049769 0.5586752235983147 0.001 -0.03165589783746873 0.4354318789911508 0.001 --0.04226482194971903 0.4941963448235486 0.001 -0.2942770390312995 0.9335220215379507 0.001 -0.9530906445297428 1.011404216559076 0.001 -0.8902225951844355 0.8845411115543158 0.001 -0.7963789729468024 0.610763072721084 0.001 -0.2212598783195015 0.6972751821096652 0.001 -0.1331427535718133 0.3482846324509551 0.001 -0.5487114258363841 0.2150411943779777 0.001 -0.5228242135016079 0.3230198528783342 0.001 -0.3211498358670152 0.8013697020689245 0.001 -0.4931692735054347 1.104505592746891 0.001 -0.5576451037657467 1.109820090142668 0.001 -0.8433447378904715 1.066577660309542 0.001 -0.7027498598939567 0.796038335774376 0.001 -0.04283457192254434 0.5720556332362188 0.001 -0.6813838528605198 0.1916222103106892 0.001 -0.7778693423632058 0.2790574893849587 0.001 -0.3891932889753336 0.9974445979889778 0.001 -0.6565493905089237 0.9174392736450603 0.001 -0.3011598848238414 0.2623014428829658 0.001 -0.2719480247000945 0.8664307305351736 0.001 -0.4387671943609781 0.2481414738089867 0.001 -1.049030223976009 0.8246644739590548 0.001 -1.057050761791634 0.9150568304675285 0.001 -1.108952619055955 0.9811748930948742 0.001 -1.076884403800211 0.7769061022619658 0.001 -1.180970472218421 0.7994517858718703 0.001 -0.5860812167959767 1.012736753338615 0.001 -0.06203796051712732 0.8304424990619002 0.001 -0.3082598086487793 -0.4222308803543391 0.001 -0.409384394147713 0.1267732199358421 0.001 -0.6538427490433913 0.9969947536600561 0.001 -0.3700630463384308 0.9502921000246816 0.001 -1.116352121182776 0.1658125311250634 0.001 -0.589376188411028 -0.02549641497604021 0.001 -0.3596941583229384 0.5922452405998669 0.001 --0.7896436234984363 0.2786418522595888 0.001 -1.032407344368802 0.6992258553629589 0.001 -0.3879367156016787 0.8191363523860012 0.001 -0.02268218568741315 0.263165664514953 0.001 -0.7743771145548526 0.4748703442166658 0.001 --0.02530511641123456 0.5543847292050157 0.001 -0.6257191417935043 0.8709193046078708 0.001 -0.8149596533148048 0.212354339309837 0.001 -0.6345155495378949 0.8082567708458542 0.001 -0.2146366007307601 0.3427950073461849 0.001 -0.8369381784634213 0.3767867004897618 0.001 -0.9645870455394263 0.6958698203704876 0.001 -0.1168084128807171 0.6582965226197212 0.001 -0.3565695965573242 1.048554088058134 0.001 -0.9645681775360779 0.01640204628328276 0.001 -0.4993134287783916 0.9791201873265323 0.001 -0.3076230762892587 0.4766656166355986 0.001 -0.9635225011188453 0.3533780277508425 0.001 -0.0005799231287858484 0.6920956669158912 0.001 -0.128998475452245 -0.03322861096048939 0.001 -0.1840658722039827 -0.07331511795521048 0.001 -0.5473184114024868 0.6569963132737107 0.001 -0.3996189472105177 0.7138593974270863 0.001 -0.2541991904124539 0.5225540016442687 0.001 -0.6608149813574079 -0.013338602964473 0.001 -0.8941863214673529 -0.003622724591900182 0.001 -0.8779448008368317 0.996727686739788 0.001 -0.239918480308849 0.389220245285828 0.001 -0.267634166121094 1.050986768694268 0.001 -0.2337267591767629 1.123609412183644 0.001 -0.1550981301519445 1.140347451032143 0.001 -0.2256073937565621 1.555943161791936 0.001 -1.049951697377788 1.047096879742919 0.001 -0.4811958047377281 0.1380225764452051 0.001 -0.04298860938556717 0.3940240133740665 0.001 -1.082462678250306 -1.013407482225543 0.001 -0.849463711901592 0.6594909780289419 0.001 --0.02755964351225103 0.1575645041115972 0.001 --0.034715795773453 0.2200163489749204 0.001 -0.5980280419474414 0.4906968014046027 0.001 -1.049268957774949 0.4733393029967185 0.001 -0.06631076667450451 0.5026424632901655 0.001 --0.0543660863342906 1.007680043218459 0.001 --0.04154230210479165 0.942983386500824 0.001 -0.5880049081202863 0.7703243065070776 0.001 -0.6583350917751025 0.4995129562825864 0.001 -0.08175073859355166 1.125021831258695 0.001 -0.7673152501561624 1.012225462742983 0.001 -0.5625235245437604 -0.06412061246144533 0.001 -0.5981358778534097 -0.1765040525009449 0.001 -0.4962888020035933 -0.2671562167460623 0.001 --0.04671949496585767 0.04855247524040782 0.001 -0.9993816921119707 0.8057964962691397 0.001 -0.3618930716331833 1.114133432597588 0.001 -0.4296392143889506 1.203302828661542 0.001 -0.2850227455352695 -0.08472654625729603 0.001 -0.6498161477775333 0.3995999855629911 0.001 -0.8205433722158767 0.7546821451017288 0.001 -0.4888862193035557 0.205761306322897 0.001 -0.2192748350451624 0.7546601519037083 0.001 -0.8431065960509427 0.9481274113810045 0.001 -0.2347288817217524 -0.05996853307042574 0.001 -0.5297718872259523 0.8455121371497656 0.001 -0.4939387841575518 -0.04298446523359749 0.001 -0.4217162548006296 0.6268629836191351 0.001 -0.6534038785740557 0.6023930018568247 0.001 -0.07792550349394402 0.1545376183328431 0.001 -0.1191941479289277 0.7858311661051831 0.001 -0.3047938659519762 0.6714078278186627 0.001 -0.5803818505649038 0.9065540899916027 0.001 -0.4624448521604804 0.9034009310734142 0.001 -0.4788647222341896 0.01415875361773028 0.001 -0.6234296135647664 0.6839175258827018 0.001 -0.149921427165828 0.03022168051335106 0.001 -1.067565756429054 0.4016728361632335 0.001 -1.022746550303806 0.3669061717815165 0.001 -0.8701055432064791 0.4188283604291542 0.001 -0.3908469297394476 0.2029620860161648 0.001 -0.8945806270376785 0.8218570055647114 0.001 -0.1048751539432402 0.3023960259137536 0.001 -0.2297747230007587 0.03133237999773097 0.001 -1.005789818632003 0.8850012434793282 0.001 -0.1057178834872428 0.7054271725100825 0.001 -0.002695891909317023 1.004884017618582 0.001 --0.01892233560883546 1.065836185359383 0.001 --0.09759182789952726 1.155896609612491 0.001 --0.4492198367398001 1.195708521019827 0.001 --0.4397905557654075 1.7777706519234 0.001 -0.7535216965686676 0.1114335319582889 0.001 -0.8977422624909106 -0.05423191644504645 0.001 -0.845271521827172 -0.1175522464424846 0.001 -0.7520422547612688 0.5732676538214982 0.001 -0.5480572858750922 0.971203258009637 0.001 -0.2520783013276017 0.5858570319017509 0.001 -0.3405807122689973 0.7086465288734308 0.001 --0.155473989083436 0.1990682266638866 0.001 -0.002149918501187229 0.1244531524327908 0.001 -0.5026661694558696 0.432130943778025 0.001 -0.4107505138959902 0.5097468868409334 0.001 -0.4763991647159846 0.3458163723107514 0.001 -0.03506242427721541 0.0005095053315539201 0.001 -0.03409263567390323 0.7287968340522504 0.001 -0.3623891133953109 0.5424050479829601 0.001 -1.02452474161524 0.5222422579782048 0.001 -0.6470016255622097 0.09951963351259825 0.001 -0.9992887674134803 0.4644669582470024 0.001 -0.4057048843854839 0.4450029559622964 0.001 -0.57987892947334 0.1705166591600155 0.001 -0.1560079679585613 0.5661747590443689 0.001 -0.7301648244168467 0.2634500777094693 0.001 -0.6452741560575399 0.1630797164874996 0.001 -0.3058740690844388 0.5995566677076642 0.001 -0.7316938948146354 0.1625335894162003 0.001 -1.088159608585583 1.384384234756329 0.001 -0.4915457566811037 0.5021620605932223 0.001 -0.5717481765166091 0.02359501975554351 0.001 -1.005277653222786 1.021792151741224 0.001 -0.9553993557764555 1.053936514558389 0.001 -0.6721226113673495 0.452502884010907 0.001 -0.9384699880543341 0.3923230292763721 0.001 -0.7397253569692526 0.04154067588091399 0.001 -0.3358627308877761 0.4417319070265639 0.001 -1.0129832296173 0.2026775383134678 0.001 -1.000556865506031 0.2527205517901525 0.001 --0.07687838317878254 0.6063438706520916 0.001 --0.05193613927426899 0.6669226459105837 0.001 -0.622878543232898 0.2514265598313795 0.001 -0.9078127283680691 -0.5985926360775126 0.001 -0.08643809238311018 0.5476171751726218 0.001 -17.757554888211 -1.255665254495647 0.001 --8.068544767207896 -8.027196171999799 0.001 -10.994618041037 8.37648131248263 0.001 -0.9781873179694476 0.118169657452912 0.001 -0.5747556766557746 0.3311262725256905 0.001 -0.9164554108877487 0.2347264616854762 0.001 -0.1312559330151431 0.4048233860583848 0.001 -0.4906648293691703 0.6792233000723263 0.001 -0.009505063252157444 0.3100985311226057 0.001 -0.2085971363442559 0.4992748374251789 0.001 -0.853161500543947 0.5476470412579961 0.001 -16.29850448059283 4.337252358514992 0.001 -15.80327207222707 -4.557738161200698 0.001 -0.07743636962028827 1.028552038048453 0.001 -0.3841945903306124 -0.007081564470304604 0.001 -1.173427278998276 -8.452727862674248 0.001 -0.9828445665388675 -0.01861223556074809 0.001 -1.038223112780168 0.280936017198208 0.001 -1.061104609965141 0.3389315615159967 0.001 -1.149885232602385 0.2623487678753338 0.001 -0.1081847900809573 0.1182589706477441 0.001 -0.0988159614922889 0.05750867288020547 0.001 -8.844915697814908 -2.876050851270409 0.001 -0.1412794956886085 0.2483784275683753 0.001 -0.02673705004986174 0.8706469484290735 0.001 --8.22721216123362 8.225452208974144 0.001 -0.7219568919348694 0.4562809688605359 0.001 -0.1743027179762723 0.0588297043069733 0.001 -0.8934482902977992 0.1653708374509519 0.001 -0.7818430340195192 0.9675335611726823 0.001 -0.978373888878325 -0.1401742394039512 0.001 --0.09347171064437287 0.7126736095130068 0.001 -1.060244567975657 0.05704915534639609 0.001 -1.140131026157937 -0.04249985521009116 0.001 -1.075758760779681 0.1160465163389661 0.001 -0.3487020609779954 0.08902986399850638 0.001 -0.03766039899154534 0.6250356668315651 0.001 -0.8574078223721027 0.1777997822228138 0.001 -0.460155693695119 0.591271187384268 0.001 --1.111681211984331 8.27367973054494 0.001 -0.7525326955423945 0.3653246987019648 0.001 -5.380712697627945 -2.174366917156823 0.001 -0.7651062533761958 0.724390718913174 0.001 -0.8076981317562444 0.8049618243727751 0.001 --7.974499862375868 0.8516981399823262 0.001 -0.5388892617047125 0.7606634856819279 0.001 -0.889166936127228 0.1278720527426509 0.001 -0.2679850436918327 0.09454645365338531 0.001 -4.317203836404034 -5.774994145235812 0.001 --5.93320511854806 -5.307261839884852 0.001 -0.3156710161021876 0.7624763961393706 0.001 -0.4470550917149869 0.715403784030939 0.001 -4.800598439403776 5.997402005103853 0.001 -0.2124587799376649 0.4351220153138426 0.001 -0.9302161604098576 0.1849817603605569 0.001 -0.4726131191398842 0.3079313549099764 0.001 -0.8891260317431633 0.779095503162238 0.001 -15.08868282005773 -1.999682698781321 0.001 --0.05166890451682871 0.3247092020223271 0.001 -0.7142771051904377 0.8999459430448647 0.001 -0.3980535374797339 -3.30662277171864 0.001 -1.808116164062278 0.06534571431081419 0.001 -0.6941128766883642 0.3667999816868054 0.001 -0.3956605942451465 0.3518653344887656 0.001 -0.3915829340299064 0.3034242311599105 0.001 -13.65424069694158 5.97259055424486 0.001 -13.59848516544306 -5.971353804410459 0.001 -0.9727565459208551 0.1714404503466606 0.001 -0.3366408502192449 0.3731403361092567 0.001 -0.7834020741403681 0.6524717611201343 0.001 -0.84848760320539 0.8506833235348176 0.001 -0.1286028983642967 0.4704211081592455 0.001 -0.5666210092052046 1.044891131759017 0.001 -0.3372631132362737 0.01709253960584051 0.001 -0.3308625710269745 -0.0993444765836323 0.001 -0.3204498873079571 -0.2255578272687122 0.001 -0.3921868452398441 -0.07109079336990162 0.001 -0.5845545034819449 0.07617063388606571 0.001 --3.915671673034128 -5.976357400993689 0.001 -0.8341676017074839 0.07356986261909045 0.001 -1.038868790392037 0.4197029288526438 0.001 --6.202111483948313 4.93221038726879 0.001 -0.1554627052844396 0.1326202344046655 0.001 -1.120719704637678 0.821444928928785 0.001 -0.5551904321276252 0.1061478193107407 0.001 -0.5816934582994295 0.541849048065524 0.001 -0.7846057525357933 1.058635125423212 0.001 --0.004867188917760501 0.3864833716083928 0.001 -0.4348883337692118 0.03070405365539314 0.001 -0.9723894223480836 0.5729096809932096 0.001 -0.8446634988467776 0.2615978519550758 0.001 -12.69167049175834 2.997112098282792 0.001 -1.068101352066177 1.083057819912708 0.001 -0.03911749335724582 0.9930762412290947 0.001 --0.08896824651908822 0.8224217550179135 0.001 --0.0737069884341139 0.8910458304208667 0.001 --0.07461647817310066 0.7646751836458671 0.001 --0.0348096345852045 0.8441382140947905 0.001 --0.03190208121989908 0.7842029183985354 0.001 -0.8331170566266441 0.3247650187352312 0.001 -0.05817816492128663 0.2878962657974666 0.001 --0.004857277531253324 1.174250623596437 0.001 -0.09066480889993482 1.205015770714335 0.001 -0.06980759390136419 0.1994812520740403 0.001 -0.5193207379735786 0.1074472362907787 0.001 -0.8574162593407537 0.6905408396355593 0.001 -0.1897136018903703 0.8885908439534761 0.001 -16.12762241048213 -7.869450147954459 0.001 -1.094238149221697 0.540217952072847 0.001 -1.07092500558582 0.5890639078228345 0.001 -15.86818374549289 8.246690735772734 0.001 -1.069606115528855 0.1755859696651299 0.001 -0.4419431846356087 -0.05511365517996437 0.001 -0.6835726848206367 0.5472261458565839 0.001 -0.2223922135365833 0.6212536001689305 0.001 --4.354919826995978 6.068556567790324 0.001 -1.062470162391958 0.94919520752077 0.001 -0.8988565358888927 0.3118364299254661 0.001 -0.3057620190096025 -0.04307518695524311 0.001 --0.06173075847876918 0.3772403039651835 0.001 -0.6818709183794026 0.7032846201261942 0.001 -0.8399960994345428 0.5034593060031241 0.001 -0.9141885006140547 0.6142252305995738 0.001 -0.3966279661251977 0.1466489428388675 0.001 -0.06994166831988513 0.9396629919718181 0.001 -0.01625334675517556 0.9107731661485543 0.001 -7.245697152836319 -8.407099969199876 0.001 --0.08756891076753184 0.0780945544185702 0.001 --0.07166621240734461 0.005888851507574037 0.001 --0.07376998392537865 -0.07773624944062853 0.001 --0.01819828396186026 -0.06392881388255604 0.001 -0.6701285174012706 -0.05352012137696417 0.001 -0.6098557861288759 0.5959564370566059 0.001 --0.06371447220138229 1.062633124997904 0.001 -0.9841886523063 0.6063176231341389 0.001 -0.6186207171563158 0.2987872207761667 0.001 -0.7473258905186573 0.5278809406908784 0.001 -0.1189895911533663 0.8875928396898538 0.001 -0.9346982743229892 0.4994821267237338 0.001 -0.9336445144888894 0.904962321426366 0.001 -0.9478445626011364 0.9511004971094527 0.001 -1.101440095143802 0.2242836006479824 0.001 -0.1181906493211585 0.204595792706635 0.001 -0.8878869615419058 0.480827363557142 0.001 -6.854126924623968 8.399750002497356 0.001 -0.689683661280883 1.026704010146655 0.001 -0.6991041991171247 0.6178589170961317 0.001 --6.151787255213478 -8.670256050343889 0.001 -0.2969024897345913 0.2134309137447463 0.001 -0.8921458204714413 0.5701645964554787 0.001 --5.017833749564296 -2.97153765408504 0.001 -12.93008592500053 -7.994266869158046 0.001 -0.06271017506669752 0.03414430662065576 0.001 -0.142339644434558 0.9922185562561058 0.001 -0.1751920581946828 1.031656492128341 0.001 -0.2732121171464391 0.7588911008961644 0.001 -0.5398200117767217 0.258370645969687 0.001 -0.5257670363854975 1.078758102147628 0.001 -0.5247573324341218 1.168960364518934 0.001 -1.411758350358554 5.660480459824256 0.001 -12.60495635747695 8.678985532347129 0.001 -0.8712945495723455 0.06790885509768078 0.001 -0.938539382560165 0.7357276922145755 0.001 -0.2161391684848372 0.9650591191447803 0.001 -10.47040823214504 -6.23685533366146 0.001 -10.58883888427603 6.208025543454956 0.001 -0.7258640415197422 0.7572515642751755 0.001 -0.7380718095527196 0.815745507056875 0.001 -1.024594212002912 0.7853671020801283 0.001 -0.317862012740282 1.021759729506222 0.001 -0.8344627739944643 0.4164332725976277 0.001 --3.785997467837496 0.08129739138966105 0.001 -0.243863021287729 0.1672336041649077 0.001 -0.08867092658633852 -0.02695803229783025 0.001 -10.64645486889532 0.8553192335476025 0.001 -0.4758438858325889 0.7909248794555838 0.001 --6.212827100294987 8.370926962587095 0.001 -0.5131795852875678 0.5836285867027187 0.001 -3.734837523044565 0.2256098737010388 0.001 -0.3470516984868661 0.8234490777281065 0.001 -0.8035283534808753 0.8566941511744465 0.001 -0.7499302195904922 0.684707736964663 0.001 -0.5016253245703111 0.05547266660975167 0.001 -0.0891568491847011 0.3768500457939198 0.001 -0.09119264620221981 0.6338134540703683 0.001 -1.005595590652861 0.03099543294675742 0.001 -0.9314106558840817 0.5334027036963803 0.001 --2.573916357005505 3.27556335470639 0.001 -7.647944018960027 -6.149343286405649 0.001 -0.8065533816186808 -0.0371225404067548 0.001 -0.2660706848051978 0.6824539980861849 0.001 --8.043479344020737 6.413016189176403 0.001 --8.188605697461821 -6.219542757607135 0.001 -0.1754542713270306 0.333286384825221 0.001 -0.8092001567268237 0.9310347133749105 0.001 -2.192474480941008 8.207683084414432 0.001 -1.255639640160788 0.6855239970238181 0.001 -1.299390823531235 0.552457745667148 0.001 -9.353263804011856 1.43273192621627 0.001 -9.038387473324461 3.498358983067383 0.001 -0.05659104441533851 0.7141079976535138 0.001 -14.34858796924284 0.2142354164150892 0.001 -0.1762588797605706 0.540440340013402 0.001 -0.9665475766799445 0.2743924772404054 0.001 -0.4522022576053228 1.530774453228253 0.001 -8.265276789354612 -1.540584558609023 0.001 -0.7303176983430567 -0.05460379454838914 0.001 -0.1871681093354405 0.1085511314842375 0.001 -0.3372825637198734 0.6363266782966632 0.001 -0.5328742841301284 0.7088416476593005 0.001 -0.1933200826690772 0.6805453820115664 0.001 -1.157341057946707 -0.1463398691445315 0.001 -1.018749274049162 -0.05793292353806387 0.001 -0.9766172930482339 -0.06983589148594614 0.001 -0.9268498339772335 -0.07691999737070787 0.001 -0.8775334993517416 -0.1203785481903002 0.001 -0.1673822521256076 1.067406366470413 0.001 -0.6744482652749803 0.3013535643817293 0.001 -0.7703165820772873 0.3107423961264475 0.001 -0.8501728775444963 1.036848969489056 0.001 -0.1884145532890734 0.2723536485303076 0.001 -7.799020113108843 5.840125163172948 0.001 -0.4198476698531936 0.07675112267566063 0.001 -0.03556893015958207 0.7727986999122481 0.001 -0.2500341957163357 0.9563470729754274 0.001 -0.1780867337870665 0.9233328431446349 0.001 -0.6607345361640897 0.2285428107549418 0.001 -0.703420977415432 0.2376710148812655 0.001 -18.0847798296296 6.565325109283293 0.001 -18.42972166275934 -6.118956813736421 0.001 -0.2693997355385181 0.02395310306868684 0.001 -1.104031573684741 -0.07092381555127496 0.001 -0.1375344798560746 0.9530886737381397 0.001 --1.833617953294117 -8.774163498882283 0.001 -0.2136905692098711 1.016120780895253 0.001 -1.028606801031093 0.7531194252402628 0.001 -0.5618756119063345 0.4144009451688595 0.001 -13.0509388213551 -3.024143913166149 0.001 -0.3001342857638722 -0.01068494148741926 0.001 -2.766611134651537 -3.43330690907655 0.001 -0.3228087047410781 0.9156143398831343 0.001 -0.0594175510978503 -0.1199338724314869 0.001 -0.1854679890499476 0.5845215422554673 0.001 -1.834221198333621 -6.736458292504278 0.001 -3.910056230750206 2.982451067151881 0.001 -0.871956240207822 0.9249784557100649 0.001 -18.16377450179882 2.325465538964919 0.001 -0.8897843417599356 0.2811270968816048 0.001 -0.798564174526617 0.1154489155757264 0.001 -0.1148494159464106 1.092385827509162 0.001 -0.1701690582734593 0.1819243540002829 0.001 -0.1463175469094001 0.6312972632160841 0.001 -0.5964071461129932 1.082985842779227 0.001 -0.6318380501528224 1.149884289336693 0.001 -0.3404456643850424 0.2906919643945269 0.001 --8.21995470895583 -1.976424297149895 0.001 --3.036726162499046 8.279581529255175 0.001 --0.01384080954450631 0.4500754412659645 0.001 -0.1493688322347702 0.7469918416922877 0.001 -0.166692206846466 -0.1419201675328486 0.001 -7.040215257046557 0.7981706837036794 0.001 -1.06505692156696 0.5130048153566155 0.001 -0.286122468559906 0.1794561406448367 0.001 -0.9569692517955557 0.6200306573256203 0.001 -0.2601944703350376 0.4203210912937518 0.001 -0.476446050496345 0.9316955760471402 0.001 -0.8220061736376574 0.007347604552419094 0.001 -0.8025391877587504 0.04346395750094698 0.001 -0.5870048003488721 0.2442948759325508 0.001 -18.5972241508565 -2.895208830796268 0.001 -0.2094110787386306 0.2107833300597123 0.001 -1.101524783958154 0.4830162753810805 0.001 --1.318002558499414 6.591237874905301 0.001 --0.05170443849939049 0.7013356900815637 0.001 -0.435254694876213 -0.1307515525326609 0.001 -0.6211403366400673 0.7466922465488222 0.001 -0.1659088720976823 0.8214124111715542 0.001 -0.7390224075288024 0.08985343172582416 0.001 --8.460643908832607 3.353364128873542 0.001 --0.06544850348815551 0.250500740148995 0.001 --0.07296361470320523 0.299634443924512 0.001 -3.116371044918559 -8.383686157619298 0.001 -0.5322808679511185 -0.04720846953627914 0.001 --1.166961284568557 -6.360320337671025 0.001 -0.9206374844966135 0.7099613608707293 0.001 -0.4644597727766242 0.5226465770242511 0.001 -0.7946029810308557 0.8877074437446199 0.001 -0.7175098570020189 0.6691876723792965 0.001 --0.04538791132361535 0.5289136221196463 0.001 -0.1088103749271485 0.9140087763276218 0.001 -0.9348379902113991 0.3294222824299715 0.001 --2.702400462292604 -2.671116458683818 0.001 -0.3131109217155299 0.1048684760566335 0.001 -0.9678720635290946 0.4409329319215508 0.001 -0.3184802188148906 0.1570385499884327 0.001 -1.013647861343827 0.9346850137935038 0.001 --6.192609092121936 -0.8937798031294012 0.001 -15.94716387472986 1.427664545828306 0.001 --0.191876839130268 0.7036107954841537 0.001 -0.8272154622986329 0.4509564418586166 0.001 -0.2142311083508279 0.8189580802124153 0.001 -0.9186061044525973 0.02851021777331379 0.001 -0.3111580890763753 0.8602365480350229 0.001 -3.526696842874171 5.045856804247696 0.001 -0.5202269779404142 0.4815482131221492 0.001 -0.7568740408094129 -0.02941165258670687 0.001 -0.5947991954833478 0.6781969358581597 0.001 -0.5636064339095019 0.6302543050822355 0.001 --6.079859721415898 1.132355641429533 0.001 -0.05018031055036733 0.5281749289111862 0.001 -0.7373611666674568 -0.1013816474292982 0.001 -0.7693881774823065 -0.1296781025204189 0.001 -0.9190237982899652 1.020009132909522 0.001 --0.03350047551237098 0.6066389366056885 0.001 -0.2208060228326915 -0.02363410589083107 0.001 -0.2239473077883308 0.2411220426069798 0.001 -0.7788779247681619 0.1882884574162535 0.001 -0.6753280752391702 1.055423916308557 0.001 -0.006707582837906088 0.5737954984065952 0.001 -1.136419485833078 0.4101288275786128 0.001 -0.2891790633917443 0.9801664764554753 0.001 -0.340963850933399 0.51104884179521 0.001 -0.3186320948250247 0.3102366616102182 0.001 --0.01256797781050607 0.9283977425320702 0.001 -0.09924215859547661 3.883000333290253 0.001 -0.6578921064407354 0.8503161674065988 0.001 -0.6507470658582003 -0.1281912857653586 0.001 -0.723602797029984 0.8690719243069313 0.001 -0.8858969562896261 0.03843526462810218 0.001 -0.2288459678838146 0.1382898203158761 0.001 -0.3724537414082836 0.8980581185869045 0.001 -0.2358106657425154 0.88985831365887 0.001 -0.1627298005892039 0.4206474557494609 0.001 -0.3343524966022559 0.2331611060785622 0.001 -0.03845277662837585 0.3624869293312609 0.001 -0.2780100435046421 0.3661092253847136 0.001 -1.039423957328575 0.6138207672362554 0.001 -7.964706101062169 -4.231170699244386 0.001 -0.4631114040412994 0.6396692433637408 0.001 -0.6592047529151153 0.02879012796041385 0.001 -0.2742305688891905 0.2902870754571854 0.001 -0.4338764485043551 0.8223766870909068 0.001 -0.4024104417794399 0.7830915800121336 0.001 -0.02863226447617178 0.1467915688547493 0.001 -0.8215667031667986 0.5747948811688344 0.001 -0.6467233005108972 0.9506720930513443 0.001 -0.5724572977815863 0.8086015427046347 0.001 -0.4959760368616878 1.037391166669967 0.001 -0.6204242109094701 0.9092324061873452 0.001 -0.294681131614885 0.8870297058313866 0.001 -0.06839481229453849 1.063135321533684 0.001 -0.05041181719053199 1.098463856952251 0.001 -0.615994835217179 0.3519269494458502 0.001 -0.4353004354247917 0.3603842863703183 0.001 -0.9550463673229397 0.6666741669075874 0.001 -0.1602322160937221 0.8759436791092985 0.001 -0.8597132256995922 0.7527619805460541 0.001 -1.035869631345303 0.6472774964079691 0.001 -15.29474461588653 3.022337305061984 0.001 -0.2517094579923349 0.8455954631444705 0.001 -0.4453117699992082 1.067142995697861 0.001 -0.4470994356074042 1.118050680411617 0.001 -0.41390331781878 0.9840940359523966 0.001 -0.5966423738764178 0.424361627529357 0.001 -0.07634941686935813 -0.05607720477941423 0.001 -0.448727604049723 0.2205653523127573 0.001 -0.4035676931722358 0.6722027665585276 0.001 -0.4023644272496733 0.9124714926396302 0.001 -1.064370372416274 0.6883138658730744 0.001 -1.103427858470932 0.6539198794631763 0.001 -0.7978224682841559 0.3787408688364906 0.001 -0.6187840387459652 -0.03385748906523621 0.001 -0.4120702805358733 1.033306296778927 0.001 --0.07126969050019495 0.1311717145434491 0.001 -0.2523474448361863 0.9060394175049868 0.001 -0.420406394733093 0.8529942961710301 0.001 -0.5910454402094514 0.4694817409050221 0.001 -0.7747806679079823 0.2351875484343214 0.001 -0.5548759792638454 0.3657203828481155 0.001 -0.1961494132701873 0.2985703437473723 0.001 -0.08250419419390131 0.7987465085825867 0.001 --0.06516980987887094 0.5731069879395522 0.001 --0.1112068510058544 0.5860554669947989 0.001 -0.750568385047341 0.4260581077910779 0.001 -0.630423519384844 0.9807279178306509 0.001 -0.2961517199168571 0.443415333978907 0.001 -0.3862335868387753 1.039748965479155 0.001 -0.363263025183105 0.9767547127402064 0.001 -0.4950026792783427 0.7673030412246689 0.001 -0.5614278660450537 0.9335070649951026 0.001 -0.3496468905598052 0.1678652874864015 0.001 -0.8383333799032833 0.6268197435455712 0.001 -10.31047279775486 3.933239562467382 0.001 -1.00039258465709 0.709967805350801 0.001 -0.7230988580837576 0.5464693343427854 0.001 --0.007934151574348723 0.0719812105839492 0.001 --0.08133474892798098 0.9865906082962393 0.001 -0.6656809530029256 -0.0955035869105168 0.001 --0.05092864954013983 0.9097994719759659 0.001 -0.6255324433570506 1.020432870319999 0.001 -0.2022523988259566 0.7230894479399892 0.001 --0.01399754614544161 0.9714205753615724 0.001 -0.4901071069585002 0.8671909165137515 0.001 -1.358226925610743 0.3194185900075628 0.001 -1.834963826004787 1.050486358494389 0.001 -0.05556159500145888 0.4591505522824137 0.001 --1.222772857151518 -0.900731950496335 0.001 -0.7800881246454796 1.258212241376241 0.001 -0.9718901846072465 0.3238015159922653 0.001 -0.4061666741002496 1.120925604584644 0.001 -1.075735178648527 0.7219691647220523 0.001 -1.118786508117866 0.7540957183078699 0.001 -0.9795148656548177 0.7836371570099239 0.001 -0.7254378441689715 0.5964693248632216 0.001 -0.2130356422022045 1.234568996654883 0.001 -1.051662661601616 0.9967500389244082 0.001 -12.89353131590317 -4.8489308382654 0.001 -0.4080964724018646 0.2371848847395779 0.001 -0.4923317787578363 0.3957730467236794 0.001 --6.080307060735974 3.46216612426033 0.001 -0.3949599505785821 0.9636459273665828 0.001 -0.2546910153855033 0.7220121939383536 0.001 -0.8099107127596135 -0.06779514825798177 0.001 -0.2675943350457363 0.2472403959735573 0.001 --8.588596095222139 -3.313620997272722 0.001 -0.5140160562628795 0.2289798156052534 0.001 -0.6105902024593746 0.837092784620129 0.001 -0.8591625928427012 0.344991095351516 0.001 --0.07228860709048199 0.5081775130071923 0.001 --0.1442234886104708 0.5025773335961105 0.001 -0.5104322609253019 0.8265252218886898 0.001 -0.2755395969874661 0.5451943971624486 0.001 --0.07565852791549441 0.9281736338183841 0.001 -15.11019341941139 -3.058106909361443 0.001 -0.4334616969065429 0.2743320370651561 0.001 -0.1934024059505877 1.103066164533083 0.001 -0.6619313059303737 0.7737726335860146 0.001 -0.660648839964418 0.8831797833428504 0.001 -16.59345360639814 -1.336978704682112 0.001 -1.061344415110165 -0.03803730060106053 0.001 -1.092682423178668 0.01190963306013584 0.001 -0.3797495193362944 0.8547759664085831 0.001 --0.05217933505340579 0.8057657309758457 0.001 -1.065752102240369 0.8069860948002751 0.001 -1.124063349018239 0.5168330407056529 0.001 -0.6963377578128984 0.01721530465007257 0.001 -0.6814302498698041 0.9606364435948332 0.001 --0.008871864128020797 0.02953567877689587 0.001 -0.270409917258399 0.5030838050629208 0.001 -15.40033462979208 -5.821501998293374 0.001 -0.4574833445454909 0.4307488982193713 0.001 -0.2730952194560979 0.8274886058755763 0.001 -0.6862620511223468 0.7351279776198281 0.001 -0.0722341682034556 0.5956004064431479 0.001 --0.08337118394728997 0.4511250974919089 0.001 --0.1228716502393357 0.4066994658010571 0.001 --0.2311043081193704 0.4184580215336213 0.001 --0.4436807691400644 0.4136461711535688 0.001 -0.4676839028146681 0.9708264088910729 0.001 -0.7273801307490629 0.9364102462244603 0.001 -0.7389118239426796 1.069635189143428 0.001 -0.03738762232017837 0.07788882772477575 0.001 -1.026792950850077 0.3321704159333674 0.001 -0.4101868231681625 0.3996366074865665 0.001 -0.139733247012159 -0.07237993715584343 0.001 -0.2369415651228638 0.6666064480036525 0.001 -15.16484388265159 5.839583633232047 0.001 -0.31730929774273 0.9554212557979309 0.001 --0.007253994152237891 0.8431950670683235 0.001 -1.057390073754877 0.5464331756335035 0.001 -0.5936315664963341 -0.05011334388656936 0.001 -0.6699054565685576 0.5707545479391903 0.001 -0.8028998568653978 0.3095345652256276 0.001 -0.1135398479006916 -0.1424584695117878 0.001 --0.006655755371792835 0.4999050177999331 0.001 -0.7085810094468168 0.8258452566770829 0.001 -0.3502932298938661 0.7966923645830922 0.001 -0.6875531536113261 0.4753839369311623 0.001 -0.8897104311845454 0.6359986142215711 0.001 -0.9558071262505454 0.8060703794694337 0.001 -0.1951643970414223 1.14569649335541 0.001 -0.5739500044374556 0.4872988952958242 0.001 -0.5565914683330232 0.8614814905119434 0.001 -0.4710270213197805 0.1630522340775509 0.001 -0.8533261882478824 -0.07087816537104753 0.001 -0.03867287962862603 0.4854954978276603 0.001 -0.5516476908565004 1.00416234251293 0.001 -0.8845966593402225 0.6778644296061221 0.001 -0.6875949229667788 0.09796653952348638 0.001 -1.076473287391416 0.1457147985182653 0.001 -0.4409480882130572 0.1429254450982702 0.001 -0.4921093830302619 -0.01653141201509982 0.001 -0.4941518808270228 1.005759202202424 0.001 -0.2491358504079852 0.3491559939833373 0.001 -1.04827546215493 0.8797543619825204 0.001 --0.002132297900053256 0.7656052949440219 0.001 -0.6223846270519473 0.004543267382008357 0.001 --0.07080867940044977 0.8590220923724369 0.001 --0.1139935127578038 0.8636619854523826 0.001 --0.01591715426726619 0.3220242148885893 0.001 -0.6295342702123716 0.7778243412773578 0.001 -0.6340244406110018 0.6518991401820092 0.001 -0.8689400801521971 0.9616925990430858 0.001 -18.60237076229318 3.669364701680282 0.001 -0.8146897273332527 1.031385642767551 0.001 -0.5594018173839748 -0.03075029134891504 0.001 -0.4210132304073821 0.740212137895492 0.001 -0.1633250282417406 -0.05123092103630654 0.001 -0.4526484654799187 0.1055249817119901 0.001 --0.1376012951931625 0.3247518648382184 0.001 -0.9509929871795086 0.4696292190429375 0.001 -0.03132596459360511 0.701682019906117 0.001 -0.7686355784042627 0.625837446730514 0.001 -0.3872984606576039 0.6262780667369109 0.001 -0.9111681188803343 0.8633907227229322 0.001 --0.2823419308121998 -0.3709663791169926 0.001 -0.2137836756509948 0.4663781818077437 0.001 -0.367341131928782 -0.05956360282948667 0.001 -0.1556317600865576 0.4922205547642893 0.001 -0.3634407567917324 1.002608573434556 0.001 -0.2505627416294001 0.06531960001886571 0.001 --0.01964502169065437 0.2574460882890261 0.001 -0.2106608932506153 0.3712694525099622 0.001 -0.8064868407311057 0.2720064611341563 0.001 -0.02669527886890338 0.6544717329105969 0.001 -1.01252819142561 -0.09095785568396449 0.001 -1.024581172593363 -0.1222846562976532 0.001 -9.756812981528309 -8.618252181231266 0.001 --0.06729308599335096 0.7346418746183947 0.001 -0.5275437810385646 0.1967782954578925 0.001 --0.133220867417717 0.8911005414529163 0.001 --0.2868175358158642 0.9384277539964212 0.001 -9.197436431569903 8.845195387196249 0.001 --0.1288621254240122 0.1570638258985378 0.001 --0.0007613467070235041 0.2191829964858343 0.001 -0.09117749272742171 0.8459625576424985 0.001 -0.3181753523239821 0.3550291179102957 0.001 -1.098762993501947 0.9105407926283311 0.001 -1.080656931095227 0.8800797476903377 0.001 -1.151600807487982 0.93956269901047 0.001 -1.19042366932024 1.028104761055352 0.001 -1.49064861153218 0.8038358266431456 0.001 -1.337348363098759 1.179305619294726 0.001 -0.3891786825053946 0.5877139623180833 0.001 -0.829589653467289 0.140216364702673 0.001 -0.9702309769057975 0.8800379334532565 0.001 -0.04108880974419442 0.8066236084262443 0.001 -0.09745923516954802 0.6813712685748461 0.001 -0.5787730844465494 -0.614565755452893 0.001 --0.1161710409628493 0.2311497449338443 0.001 -8.11411702685629 4.439847713277366 0.001 -0.5848713462129101 0.8704394627891168 0.001 -0.5212327146404416 0.3500199304493509 0.001 -0.5534521582777922 0.5576372227311269 0.001 -0.6264663938331227 0.3856468744154785 0.001 -0.9879315097676159 0.6755141870766952 0.001 -0.1479283820489308 0.3200160988904874 0.001 -0.1816181737024162 0.7472207663378865 0.001 -0.6043487523756825 0.8084666346819617 0.001 --0.0612377919985134 -0.03691143067853069 0.001 -5.55305150066344 3.265384206219555 0.001 -0.5409117117420346 0.6067359846242137 0.001 -0.9448490019440775 0.1114063048572106 0.001 -0.5872663826628346 -0.09030913078374472 0.001 -0.5589445439217784 -0.1166398885454689 0.001 -1.002384845165965 1.981013133995039 0.001 -0.3179922052915422 -0.07028673243165247 0.001 -0.317787562507166 -0.1177913982269694 0.001 -0.2781322097792219 -0.1459918553184506 0.001 --0.02404553925284935 0.6591610062117854 0.001 -14.14217179611502 -2.645664840649078 0.001 -0.2403653415143089 0.3106014708924817 0.001 -0.9182462939301214 0.9682892636667993 0.001 -0.3242272421513692 1.058230722295773 0.001 --1.960652016716924 2.245672179080432 0.001 -12.83072098779598 -0.475396801333224 0.001 -1.101483921996203 -3.610450515499013 0.001 -0.01349900275450435 0.5408574661317966 0.001 -0.2069666244116644 -0.05470049191251752 0.001 -0.8696454446768508 1.197550933635605 0.001 -0.9477589884132726 1.134979686423857 0.001 -1.043467874807026 1.176603131640895 0.001 -1.14144062859611 1.202907305609724 0.001 -0.8154618389924865 1.138884759787047 0.001 --3.152920139475147 -5.021445865619472 0.001 -0.344432624679255 0.5589506681958055 0.001 -0.5139306922033671 0.5373814478236136 0.001 -0.7659112150580285 0.38422020197246 0.001 -0.8610130992385829 0.8985420703576502 0.001 -0.4474863633508197 0.5612340315550201 0.001 -0.7098952476595963 -0.1324583415754021 0.001 -0.4200574712218868 0.4683660471165972 0.001 -1.035720974998757 0.06945146482910562 0.001 -0.6131920815171585 0.1713385948149994 0.001 -0.8737011424246018 0.3867729397077385 0.001 -0.006488166212006343 1.077073496644502 0.001 -0.6722569031397454 0.8108363272363001 0.001 -0.5202623040413086 0.2962143179525621 0.001 -0.6343479416088367 0.5120925738223182 0.001 -1.026306994432275 1.063188434273076 0.001 -0.9705059539501845 0.9849777089672392 0.001 --0.01485934210103668 0.5304364898708342 0.001 --0.9207699279572246 4.596093614652371 0.001 -6.094181034091901 8.826367892895284 0.001 -0.5736774966673399 0.2015689370712641 0.001 -0.5018061868942394 -0.1734649986655611 0.001 -0.8660519132440904 0.5028942061695596 0.001 -1.039826026265803 0.03303668405870537 0.001 -0.8213975165540918 0.6678100029355482 0.001 -0.9331238542380035 1.087861311688306 0.001 -0.8827209544423164 1.087849703291325 0.001 -0.8666178801094784 1.058775019247557 0.001 -0.6239331532600436 0.4831020572768259 0.001 -0.1761020402986858 0.03848078641639751 0.001 -0.2377240960761408 1.037854044101592 0.001 -0.7281790016853139 0.1878173389356128 0.001 -0.6976984673485559 -0.0409431263390654 0.001 -4.843987818423788 1.249011052193601 0.001 -0.6109005696468061 1.039183478521912 0.001 -0.9870608898083916 0.3702978593542121 0.001 -0.9954516190381952 0.3417572709015562 0.001 -0.955121428539 0.2634404125017757 0.001 -0.6523710556252318 0.1969981811255751 0.001 -3.711798427253298 8.407176000694143 0.001 -0.1423360349181074 0.3730295950012569 0.001 --2.758830998612175 -1.41254378660796 0.001 -0.654673491611956 0.2877495454756872 0.001 -0.5551290306796631 0.2950780999519759 0.001 -12.3764680803027 -1.65680586742222 0.001 -10.17236124911314 -4.739414429990718 0.001 -0.6579492636303785 0.1404508632040488 0.001 -0.5996800148935519 -8.776610839981936 0.001 -0.4666082946650604 0.2647052439651313 0.001 --0.02215168314506643 0.3710806023150403 0.001 --5.607590337641139 6.788048448080141 0.001 -0.8454557992768704 0.9772870635412844 0.001 -0.847023539162729 -0.008654493186159403 0.001 --0.04000538475347609 1.130856105821381 0.001 -0.5131668609777605 0.9490405693137539 0.001 -0.3839180592690516 0.6872105030130617 0.001 -2.667987018594946 -1.880790413483566 0.001 -5.788083844843712 -3.508307418038595 0.001 -0.627341513959971 0.4173776964725233 0.001 -0.4099149197343233 0.2660916206080295 0.001 -0.1206259226925528 0.00303797455871982 0.001 -0.1513148811528454 -0.001824509420299681 0.001 -0.05060862169198362 0.2532380604562761 0.001 -13.35819627894766 5.001988416913149 0.001 -1.094534493599473 0.2931221408852226 0.001 -1.070023914550199 0.257580848376207 0.001 -0.7963525571282927 1.0929132710792 0.001 -0.7977885490801054 0.5013957931553202 0.001 --3.289177629040401 5.478579818423091 0.001 -0.1425545957267167 0.2056834871185006 0.001 -0.8041765760288697 0.1808610804352056 0.001 -0.7308677894755559 1.008104358097292 0.001 -0.4427743566823515 0.9126811531036118 0.001 --0.07920030855195818 0.689478563129822 0.001 --0.0978793474452246 0.6473704926055626 0.001 -0.4680182642223155 0.6850387517796225 0.001 -0.09805220715239724 0.1792998027847269 0.001 -0.09788148067488313 0.4723894600308216 0.001 -18.49763646419143 -0.2169509420268083 0.001 -0.4928927671302147 0.469344611118068 0.001 -0.2826824932929448 1.018145321581911 0.001 --0.08384012493632009 9.094095129193063 0.001 -1.026328091069345 0.3927186190299379 0.001 -1.083043828148075 1.000955219729482 0.001 -1.127275675981047 1.008792265213064 0.001 -0.9602469020259662 0.7364467804453456 0.001 -3.803663314320053 -5.046231164599291 0.001 -0.1131264817472653 0.03251269370105841 0.001 -11.32949676557534 1.948621414602537 0.001 -0.112580887172995 0.8158857916937393 0.001 -0.1335587671411999 0.6916005337331925 0.001 --0.07184276556495055 0.1022622049822824 0.001 -1.019932918540774 0.4834914430501467 0.001 --5.435103366351435 -7.083590720649043 0.001 -0.04665112088307755 0.4164670688769883 0.001 -0.06691316194478764 0.8727622221631939 0.001 -1.084520278282409 -0.03810642586687297 0.001 -5.74231603763509 -8.896452806164858 0.001 -0.8198039357163914 0.9645112626241524 0.001 -0.33090549525937 -0.1445292732953403 0.001 -0.8138832213767417 0.7262586166270856 0.001 --0.04399370031616075 0.4545262015856635 0.001 -0.4843915793834516 0.106134863969827 0.001 -1.052578368682224 -0.092967772866698 0.001 -1.100609779747354 -0.1018625036570181 0.001 -0.8802543610765434 0.2471096921852769 0.001 --0.07594096748622516 0.4121210172155093 0.001 -0.377659765857675 0.4412077009932589 0.001 -0.1645501768294942 0.6627469857808735 0.001 -11.60009112561658 -8.583207491292246 0.001 -0.2955388849063094 0.5208718703040081 0.001 -0.9182783933430811 -0.02735009683491096 0.001 --0.04025768391015669 0.9829207825980718 0.001 -5.145179847830544 -1.257387062579628 0.001 -9.300477174958932 -6.972130180929619 0.001 -0.2230740403462652 0.5421731696380506 0.001 -0.7717521203371728 0.4442047101779642 0.001 -0.007056514129601477 1.127324595684892 0.001 --0.007190730781331936 0.1831387660138922 0.001 -0.4729613041637461 0.7426590433253472 0.001 -0.7457846766883769 -0.001649598503408684 0.001 -8.069202820635883 0.7503531524426386 0.001 -0.3799867319665278 0.732917169577155 0.001 -3.037712998091684 3.588369344864535 0.001 -5.512878267861892 4.896666961731214 0.001 --4.371711122637103 0.8887511037161997 0.001 -0.9699385273677363 0.06107994126649265 0.001 -1.023879431771022 0.8311600629556385 0.001 -0.9800101954538328 0.8291937418050473 0.001 --0.01643458198954833 0.7132422617351981 0.001 -0.3387085356414689 0.4768667584830653 0.001 --0.1279414980126923 -0.03005531670807146 0.001 -0.2730939862318934 -0.06096859540250959 0.001 -0.2479304004855231 -0.0904026196159796 0.001 -0.1399859285900693 0.8140584962052568 0.001 --0.04454853295372357 0.1301428730406784 0.001 --8.416876802167382 -0.1072003575579385 0.001 -1.085791577677225 0.6314520577547001 0.001 -0.2448611087140054 0.498032073419522 0.001 -0.9462725059932589 -0.008339134590113853 0.001 -0.2702247590135054 1.101440947658945 0.001 -0.2752584149473897 1.145067773996366 0.001 -0.3314015485063926 1.168539661362455 0.001 -0.2433133702040717 1.077172316492726 0.001 -0.002316596242864619 1.044467281860855 0.001 --0.06428455155537804 0.1608653208438979 0.001 -9.162212097768252 6.129072255299041 0.001 -1.905205066715565 6.376133050286416 0.001 -0.293648255743081 0.7830325583728931 0.001 -0.341412997887611 0.3928651762911161 0.001 -0.8217065923158258 0.7868033196679532 0.001 -0.7817714162382776 0.7482038467713013 0.001 -0.7343953518295311 0.4861493951143955 0.001 -0.7432743638013274 0.9796263040088208 0.001 -0.3007394984078895 0.6494713084749452 0.001 -11.69224324190875 8.473678539992545 0.001 -0.2270313148990362 0.7859868386162395 0.001 -0.09649119675956956 0.5244653179120077 0.001 -14.77160973419899 -8.430713613565722 0.001 -0.02846940520260074 -0.09345931956754226 0.001 -0.5350621877381478 0.4090251327961029 0.001 -0.1043317206553268 0.5564838234158387 0.001 -0.8960513340122334 0.4500328000140459 0.001 -14.69854631598399 8.607570077863189 0.001 -0.0002702067454248556 0.1543156116211969 0.001 -0.522952370941922 0.9982515509975326 0.001 -0.9370828450661463 0.3590634982584209 0.001 --0.09127884580776793 0.7424730143842739 0.001 --0.1231965811803389 0.7752864468757049 0.001 --4.469599105973391 -0.9516632153891424 0.001 -0.3073794046268372 0.6985601473543848 0.001 -0.7022239802721044 0.2895622576563418 0.001 -6.186904874966509 -5.008311603629976 0.001 -0.9013486405875903 0.4216335738762826 0.001 -0.5170017562533084 0.6540201871252501 0.001 --0.04760900751753789 0.8770065019035015 0.001 -1.053596147858211 0.3744538916035574 0.001 -0.4941813071270096 0.1616002166470538 0.001 --0.02504556562978768 1.02637619163125 0.001 --7.118635329777833 3.896241938235404 0.001 -0.4259077959876741 0.2160123453614377 0.001 -0.3993274243633725 -0.02845817838406272 0.001 -8.350571315194673 -8.882748250102891 0.001 -0.8844853449029961 1.034446398984916 0.001 -1.001278562619251 0.9120492222441894 0.001 -0.7387676772127018 1.043445702447455 0.001 -0.1223393906486654 0.4367341840134776 0.001 -0.3575502286958591 0.02983793956670396 0.001 -2.528120433270803 2.766439179203274 0.001 -0.4885105250334666 0.5869659972865261 0.001 -0.3377132643937532 1.090326319860066 0.001 --6.999592642543465 -3.290547340605555 0.001 --0.1897436443905243 -2.287925696713677 0.001 -0.7871207691816673 0.5724396144899644 0.001 -0.5815007462325648 0.9794060223695045 0.001 -11.45534921028572 5.455712839215315 0.001 -0.7278516818791119 1.104857874799885 0.001 -0.6632282349206788 1.10115354331699 0.001 -0.6331894957812603 1.114448100681288 0.001 -0.7545467176909738 1.149997304026987 0.001 --0.6610384143653931 -4.236440851998732 0.001 -0.4779756873726124 0.2297436987939148 0.001 -0.344786914773428 0.6817715432254975 0.001 --0.05476703892883396 0.6161308240309139 0.001 -0.4127386771928195 0.5332255838671877 0.001 -0.07239658655364946 0.3999722830057872 0.001 -0.5989110832837859 -7.18218388142491 0.001 --0.07111796976386969 0.2169556890195523 0.001 -0.1369452383302344 0.600244144049522 0.001 -0.05551700831801172 1.1380786287988 0.001 -4.198485056879933 -2.184378830536302 0.001 -18.59798902706955 -2.303262211948983 0.001 -13.30677654652268 -6.884208471716943 0.001 -0.3981524965669228 7.006356701919555 0.001 -0.6760161211080011 0.4234305039274547 0.001 -1.091411912651119 0.3792869015722063 0.001 -0.9137222884794286 0.7567829733067774 0.001 --2.05235208786081 8.537713520274719 0.001 -13.22765488969345 7.001168637314983 0.001 -0.6583172099278917 0.05858013904902042 0.001 -0.9965080238039919 0.9548700003586629 0.001 -0.06971240482567174 0.3598560619243789 0.001 -0.4745139027871554 -0.02925212376917946 0.001 -0.1024740093574014 1.070671607827326 0.001 -8.113598443404653 8.979343352304136 0.001 -0.08303136231215165 0.1322760384691584 0.001 -0.565212907726912 0.749692089906393 0.001 -0.4702885189726965 -0.07935279834243082 0.001 -0.5404008207474761 0.8199013853766618 0.001 -0.1008538528794393 -0.05674733806477878 0.001 -1.229852704196881 0.4268315839174237 0.001 -0.4228398794892759 0.6925858526821342 0.001 -4.912155078911821 -6.567510827784501 0.001 -0.3651495862143665 1.079167067982006 0.001 -12.05729211786182 -3.752755959193452 0.001 -0.1230792584699414 0.2851832167939404 0.001 -0.259533910541229 0.1184359156416449 0.001 -15.1861785737414 -6.899722301656356 0.001 -18.4214845457514 8.918469509492601 0.001 -18.41943416566018 -8.912701382176147 0.001 -0.5307023811637924 -0.07664984700712844 0.001 -0.9709808443888577 -0.0534845749708632 0.001 -0.4223292660874967 0.5935120136260477 0.001 -0.7844735169245715 0.03465170266504688 0.001 -15.39426707106431 7.074667747980039 0.001 -0.7558900006735531 0.2599861481754417 0.001 -0.2097895888091999 -0.08544409806399536 0.001 -17.0080697912243 -8.950981996144121 0.001 -11.12530697224867 3.55332827600458 0.001 --6.94439069005077 0.1782940624412575 0.001 -0.3790794323885485 1.152418888241273 0.001 --0.03105766017077963 0.06840391850197525 0.001 -0.2700288181680386 0.5991148458254358 0.001 -14.00906792152125 2.790363095183508 0.001 -16.9191201132098 8.785405009698522 0.001 -0.7132817692799807 0.1109858712290067 0.001 -14.69072956952309 -0.7563442050121202 0.001 -1.06023927832064 0.08624104387034247 0.001 -0.3566182360593723 0.3733515298561274 0.001 --0.02203640733693435 0.8165330623677849 0.001 -0.7834179893660873 0.9979520711643767 0.001 -0.1022205943836349 1.12857214122803 0.001 -0.3611999613005091 0.2185350338458335 0.001 -0.4527259743435194 0.881993265179689 0.001 --5.012130582419204 -8.804129639032414 0.001 -0.1060469215488791 0.134482887912318 0.001 -0.3859354015546601 0.08089917102226928 0.001 -1.58539929870436 8.286900715002799 0.001 --0.006505352833332502 0.4224970637731558 0.001 -0.6155712928959808 0.08330648329085681 0.001 -0.7553935763033287 0.1354846786410373 0.001 --0.1111093869270691 1.025836335314449 0.001 --0.1165888727324544 0.9889146949875562 0.001 --1.563969652280452 3.816720277504555 0.001 --0.8950653241369676 -9.256297637515212 0.001 --0.03738102446867024 0.01690888955932924 0.001 -0.7331651854266967 0.1364036428332207 0.001 -0.9781657767986123 1.026509269006437 0.001 -0.9380477717816086 1.032284740363962 0.001 --8.969145991803218 2.303531228088473 0.001 -16.72817855907535 -0.3476190575030464 0.001 --5.287621791870344 8.615970166628312 0.001 -0.9353314112846793 0.05485557899422425 0.001 -0.8729741015641737 -0.03024663696772135 0.001 --0.09818213863295451 -0.2765826237817327 0.001 -0.7529451382092733 0.8855152412985247 0.001 -17.06140280990951 3.869924012444743 0.001 -17.39753651882037 -3.671603645233377 0.001 -0.5439277593257019 0.8872887349439944 0.001 -1.169744382107039 0.1236405233589768 0.001 -0.6027177050819134 0.9230428020788802 0.001 -0.9048534887337165 0.3904167301062834 0.001 -0.0630445170937233 0.9746965035895648 0.001 --0.1286183319309165 0.6211939547232389 0.001 -0.07193220828844619 0.00195448188055383 0.001 -0.4351322618500898 0.5360364570463624 0.001 -0.1533087685926942 0.05562104980734781 0.001 -0.6755460189591462 -0.01290140104975221 0.001 -0.6552331201227911 0.3732006045846148 0.001 -17.02753128205546 5.255703031182004 0.001 -17.01749399926164 -5.030080686408212 0.001 -7.530662631623374 -7.228788491402264 0.001 -0.8021401334348802 0.2339247604048569 0.001 -0.5666499802295513 0.1435345597185519 0.001 --9.016808868176343 -9.009591369158034 0.001 -1.225533874255258 0.2712995766479548 0.001 --0.01415323812554527 0.2974302486302116 0.001 -0.2079398395356839 0.6510895649370273 0.001 -0.2270215158791463 -0.1964421052333817 0.001 -0.3357270621643579 0.7446355284450332 0.001 -0.6943461643903416 1.07804381064484 0.001 -0.454505091116418 0.04751991319322953 0.001 --8.896234009904145 5.78347436785122 0.001 -0.5864751224619376 0.3112728477302901 0.001 -0.9575474175244634 0.1895299270463251 0.001 -0.692468182238742 0.9286146072882674 0.001 -0.769344144435583 0.3370938944423672 0.001 --9.039951936311823 -5.218151386330006 0.001 -0.3655511183905015 0.5686990212929688 0.001 -0.7003092014635409 0.4513895437019537 0.001 -0.8715644970555834 0.8258426847910154 0.001 -0.3933772425042009 0.510159747069979 0.001 -0.9935035218320343 0.2360371386609787 0.001 -0.6075925097427929 0.6175290189203522 0.001 -0.4088535486184248 0.01158562574216388 0.001 -0.650522009082029 1.023482700957302 0.001 -2.343192050485927 -6.069745166412617 0.001 -1.457989173644793 -5.287093663708224 0.001 -0.9267419734180588 0.8300449106161081 0.001 -0.6502940682120677 0.4199863226134086 0.001 -0.6538558009134164 0.473688379270087 0.001 -0.002630515817952957 -0.001518672449347351 0.001 -0.06542269994597025 0.06563394384444664 0.001 -0.3667490209292106 -0.08541827504943264 0.001 --3.79799351297062 -6.911172779409297 0.001 -0.1982254766804961 0.05957296290752206 0.001 -0.8736775004751195 0.3204506812072919 0.001 -1.003534030176824 0.5501209977966393 0.001 -4.132632611523814 6.927668972318514 0.001 -0.6833224462673008 0.3332829545529836 0.001 -0.7769564936650337 0.7000867985170508 0.001 -0.8234982463904461 0.8301280336108882 0.001 -0.9047422243460602 0.1989355189511278 0.001 -0.1056095797103991 0.09037714909721027 0.001 --3.752649038167137 2.6553698087938 0.001 -2.468884949648091 0.0611396296900274 0.001 -18.89695395873721 0.977410487328079 0.001 --7.076564212635787 -5.620357680608281 0.001 -0.5662379976865614 0.51739539481338 0.001 --1.398612234730285 -3.675061758238208 0.001 -0.6812350263505003 0.5908170552502476 0.001 -0.9680498557653781 0.3910841284487108 0.001 -0.4024951762143575 0.1812926913495063 0.001 -0.02478423517840279 0.8324419415451347 0.001 --8.700234047325921 -0.8582654333339397 0.001 -7.376888403701322 7.14486502480733 0.001 -0.8771808308726829 0.8532676337067611 0.001 -0.7736851522446871 0.1050185642428197 0.001 -0.4389698427136212 0.6448557309444618 0.001 -0.4916223625315773 0.3254038300799172 0.001 -0.53980631609042 0.3417281487445762 0.001 -0.6750875708515418 0.6130804698887162 0.001 -0.9920028470484129 -0.07118674455319819 0.001 -19.03078005244678 5.729271992141632 0.001 -19.04700140609339 -5.18422583844242 0.001 -0.503798554355536 0.02055114646468435 0.001 -0.1020009037913608 1.012001759360988 0.001 -0.105364807108276 0.2761993282830917 0.001 -0.1407582238302598 0.7234007731197842 0.001 -6.560537771527977 5.461025278096884 0.001 -0.9113919594860077 0.801631330270257 0.001 --7.204586037976964 -1.581117072392477 0.001 -0.8189846015968643 0.4841159591486797 0.001 -0.6857635721175449 0.5072624700940339 0.001 --0.02287850111904474 0.1107335884223664 0.001 -1.081387321586655 0.9313426609125828 0.001 -1.096018192659085 0.9471356431199619 0.001 --0.174332795538684 1.054725027300195 0.001 --3.702911600069291 7.216263245147602 0.001 -0.4941169306993506 0.8939318639398963 0.001 -0.01647716211967467 0.6051236430237391 0.001 --0.08320412306078734 0.7922485990184993 0.001 -0.619819907135793 0.6561803974925995 0.001 --8.95235479843314 8.951388040648581 0.001 -1.03308739832508 0.81594810254066 0.001 -0.8400131691925863 0.9200540131256196 0.001 --3.07794935955058 4.413825069938697 0.001 --7.092051875282392 -9.091538359592768 0.001 -0.0810309780778624 0.3039135377302608 0.001 -0.02754634645036845 1.024546076809591 0.001 -13.63244404619177 -8.862498467567439 0.001 -7.389827339393486 3.448014334790996 0.001 -0.9519699418236938 0.9266514249404063 0.001 -1.017832344697392 0.2538979755407149 0.001 -1.017360093488478 0.2297769857400618 0.001 -1.013164425062859 0.276701344121439 0.001 -0.3049997810818056 0.7371662372459358 0.001 --0.03587315264411105 -0.09948868043591881 0.001 --0.1425938179961313 -0.1654721573384506 0.001 -13.58153377398454 9.131333670110626 0.001 -0.1631577045053132 0.2608277267638668 0.001 -0.9208036900444367 -0.05056352207360548 0.001 --7.168902542434772 5.708398010404998 0.001 --0.02949624250384933 0.6867413755327112 0.001 -2.229670293473725 0.649924786734848 0.001 --7.57243979979497 9.083822508975896 0.001 -1.183057338574771 0.5469508879183971 0.001 --0.08035113522046188 0.3214642350868767 0.001 -1.027769354514156 0.4462952025168609 0.001 -0.1829912072454788 0.3585418294726458 0.001 -0.9415259469266852 0.8781225724432127 0.001 -1.031243785429913 0.1639592139966146 0.001 -0.04901815169032636 0.1730953693218751 0.001 -0.8848122733012883 0.5505799531910686 0.001 -15.28006222426211 4.673174548781168 0.001 -0.5883363640187378 0.04218666670558539 0.001 -18.76325566592306 7.565263660579766 0.001 -18.81516299512906 -7.262685442951933 0.001 -14.81485241656946 -4.863916288806903 0.001 -0.1739708896724436 0.8429696202124655 0.001 -0.9087019360063402 0.1449978713073742 0.001 -0.4608852929366657 0.003928937213449783 0.001 -0.4585034834474672 0.4932404763518768 0.001 -0.972613089796166 0.2482412673308733 0.001 -0.458341729800554 0.3300408959729098 0.001 -0.2090225962978356 0.3993103971695504 0.001 --9.064680639622029 -7.058329762177194 0.001 -0.4031457384964845 0.3309575052864054 0.001 -0.9664622002777717 0.1449150265588766 0.001 --0.06757868144583207 0.4782387858623861 0.001 -0.6354727700103043 0.5872519411511637 0.001 --0.08104371617211059 0.04173784895015838 0.001 -0.4961940531009004 0.3637120050153329 0.001 --4.940015814107675 -5.139603761477398 0.001 -0.5548452027451587 0.00428417741906361 0.001 -0.9885810570751437 1.046679079033384 0.001 -16.7504402890616 1.751270420685172 0.001 -0.664421995151687 0.6853976945107698 0.001 -0.8101361701266893 0.6394299969455643 0.001 --5.030183414648508 -4.138414420243159 0.001 -0.7406670983896676 0.735195752693676 0.001 -0.7332294660873971 0.7869544347187816 0.001 -0.7711150599135003 0.8120131716712912 0.001 -0.2365329538015411 -0.000902499264988168 0.001 -10.53174981496855 4.916724981611503 0.001 -0.6329714141676138 0.7259030888627606 0.001 -0.6104409942135109 0.7123596562230315 0.001 -0.3669054594194435 0.01382326890438412 0.001 -0.5861186261947646 0.6126080208534365 0.001 -0.7544133570009266 0.06684777920567607 0.001 -0.40371218606126 0.6482827706202968 0.001 -0.3714254612309222 -0.03099009207332511 0.001 --8.925961002399928 7.429470027023438 0.001 -0.5890397024952622 0.006608820823086418 0.001 --2.103291825842652 -5.727969340582843 0.001 -0.7931742464725996 0.720653756498439 0.001 -0.03725886376413094 0.2159434033588379 0.001 -0.04462928004370344 0.5073961697824552 0.001 -13.24890934475769 1.506527929270592 0.001 -1.029279608439611 1.019651688791255 0.001 -0.03214648805328973 0.124698982875202 0.001 --5.237491057039732 4.970733773195158 0.001 -0.5359619813215855 0.4524049609625164 0.001 -0.2494597236244646 -0.0385719614697369 0.001 -15.06867403437387 0.85971043855255 0.001 -0.4311688740087568 0.4275875955488972 0.001 -0.01246604832058371 0.9776080262676435 0.001 -0.7873108241964366 0.7912975204796228 0.001 -0.4088379912117455 0.3715722801512417 0.001 -0.8657500168529627 0.1500111649952977 0.001 -0.8488352674795242 0.7833312180426956 0.001 -0.4162553988037647 -0.1040965262374103 0.001 -17.18932341237749 -7.231329591803869 0.001 -1.011920476923888 0.4313082721595836 0.001 -1.018618822370959 -0.0221377629503469 0.001 -16.79100232173981 7.785856471459351 0.001 -0.989151707700598 0.01455270046259908 0.001 -0.7349839197752539 0.8410295118911643 0.001 -0.9334045828556722 0.2069692483253921 0.001 --1.492556866058295 -7.436603695512365 0.001 -6.960624080348997 -2.988575919111355 0.001 -0.9268461423897321 0.159598176333844 0.001 --0.0239106540699136 -0.03668290743686707 0.001 -0.8530761957988938 0.438852568238192 0.001 -0.3028162853139841 0.02103344571043896 0.001 -0.07785432736935233 0.5696614287423029 0.001 -0.3043679711223302 0.1287059999153282 0.001 --0.04647081935578572 0.2631136383535668 0.001 -0.8141384780514639 0.3522558330106528 0.001 -0.7255752500473048 0.3769889904028764 0.001 -12.03150665588722 -5.596922415942128 0.001 -0.5189644086691316 0.07336862458119527 0.001 -0.7595164251274202 0.954754429876894 0.001 -0.7833067545579936 1.028603494195982 0.001 -4.929461071688761 7.175494915231885 0.001 -0.5699994185480781 0.05829863853952297 0.001 -9.825261128358054 6.859939189421799 0.001 -0.02560299638269922 0.2914497933646706 0.001 -9.749687521404796 -7.634027141291129 0.001 -11.71356129063448 -7.569597626823379 0.001 -0.9702609662094908 1.09123813341853 0.001 -1.111654883283389 0.7908251965880687 0.001 -1.092197254910052 0.8267637561582694 0.001 -0.02000582138705569 0.3473484014396647 0.001 -5.350357477444097 -4.3896529476343 0.001 --3.848518463452238 -2.755248739628607 0.001 -1.000838410664272 0.7847722460062792 0.001 -0.9590718025301036 0.7593069489579871 0.001 -1.04589944530298 0.1965064834033628 0.001 -0.5771228767093722 0.957114260386923 0.001 -0.5733121992708163 0.7760783642017133 0.001 -0.05686927835124279 0.7828010117706313 0.001 -0.5632306274463773 0.692864916656856 0.001 -0.7131303291468573 0.04118358926145071 0.001 -1.09789819266236 0.1308901706292505 0.001 -0.08669436658803811 -0.1029347622597555 0.001 -0.06206733075056883 -0.08141540605156991 0.001 -1.041834712944733 0.9340490213756204 0.001 -0.5015164884018047 -0.06869592189220158 0.001 -0.1021365694485916 0.9481966225183865 0.001 -1.05585697309764 0.3100745629547401 0.001 -11.89632440722858 7.650256222315119 0.001 -6.540139402165726 2.554473256331192 0.001 --3.366343199876222 -0.8862013042997157 0.001 -0.03696915027882158 0.03006569364700135 0.001 -0.213882361417193 0.002810370445846375 0.001 -5.610824252428994 -7.637744726980062 0.001 -2.183663320373211 -8.805800127660415 0.001 -10.3681628697527 -5.628198377902726 0.001 -0.8493368201354846 0.5768402713546541 0.001 --6.013594234941471 2.294936156625182 0.001 -0.987940790811123 0.1475816612127976 0.001 -0.7230958273639145 0.3529613151584845 0.001 --0.03938710114448021 0.3595992390899448 0.001 -0.9084484750029033 1.090654443972376 0.001 -0.9066466563216684 1.114269192714835 0.001 -3.901965066856954 -9.071459703238498 0.001 --0.07977499425801211 1.01352461421728 0.001 --0.07483437376322585 1.032490096867786 0.001 --0.01208652956875002 -0.08745066099113932 0.001 -0.179764715232278 0.4952988944321961 0.001 --0.03913360935497192 1.094320233851281 0.001 --0.06760849473464375 1.125568517270302 0.001 -0.1298006120831059 0.1334561089325895 0.001 -0.1292480585763753 0.1055747567149897 0.001 -0.5688316681991381 0.08981627335813255 0.001 --1.3653938692432 5.529109627295134 0.001 -0.5545978333931786 0.1895090941970113 0.001 -0.6940671348602553 0.7660718553201 0.001 --2.546310380295931 -4.00754658322367 0.001 -0.5101376664397601 0.7027618830967785 0.001 -0.7263789656889041 0.572992289303962 0.001 -0.3816761702590529 0.7994911243316192 0.001 -0.9865753485522872 0.5239982415744324 0.001 -0.8302956058318139 0.108741828450999 0.001 -0.07932685207735857 0.992319372369576 0.001 -0.3314554758109416 0.5855160944241764 0.001 -0.1442116526811552 0.7827250242541406 0.001 -0.08454196382068954 0.07808003883127633 0.001 --0.05061357014027996 0.754580732028406 0.001 -0.3124247354113096 0.3728805951579366 0.001 -0.6827214419895355 0.1568001131624461 0.001 -0.04501316197755686 0.3074619649274806 0.001 -0.8906777898925 0.9772562625841827 0.001 -0.9861273449336105 0.4894551014401529 0.001 -0.7489776451390738 0.1954473323875203 0.001 -0.9996416021841076 0.102738664985074 0.001 --4.237829873228464 9.030401646331425 0.001 -0.7038976050221394 0.2641171018301346 0.001 -0.7276476967562922 0.2361131595123482 0.001 -0.4601453622222347 0.3644991836495626 0.001 -0.9810721402624299 0.2074899420566776 0.001 -0.6127626182973894 0.2281479620594308 0.001 -0.9295325116824553 1.061962435274558 0.001 -0.9338975063053505 0.4274098575409592 0.001 --0.03717489759728804 1.049806802068362 0.001 -0.738653915867962 5.161017295955331 0.001 -1.0691404987872 0.2083878117496212 0.001 -0.2792441354345366 0.06890240262984412 0.001 -0.3200551847514397 0.07630541095651899 0.001 -0.1860250158207922 0.4381962326324096 0.001 -0.5913431960025952 0.1416967141288151 0.001 -0.05559458342801599 0.735538496944479 0.001 -0.3023812366205527 1.003354442130112 0.001 -7.384616960091388 -1.244968404920535 0.001 -8.422702140148312 -0.4430170141917182 0.001 -0.9500898278833376 -0.06583641971215551 0.001 -0.6231168148693313 0.1005840716804102 0.001 -18.83383125928967 -4.016313826437042 0.001 -0.09166353017765334 0.2202853755108913 0.001 -0.128942717609249 0.5403882046793547 0.001 -0.8543526926950883 0.4005828448101346 0.001 -0.0171221392492994 0.4060099791706107 0.001 -1.073993347861367 1.053176642232077 0.001 -0.01338638099134519 0.6358805756755967 0.001 -0.6813922352609506 0.9898142406247397 0.001 -0.05012383315445799 1.024989161077379 0.001 -0.06640074277352953 0.6313492116406031 0.001 -0.9058963906732759 0.9152625338686355 0.001 -0.8698879723129869 0.1088904868085696 0.001 -0.8292084053519876 0.2930894384998498 0.001 -0.86795024018602 0.2720756271288048 0.001 -0.0834779141218728 0.742453800583566 0.001 --9.081170668528479 4.667204751111712 0.001 -7.497686421696209 -4.842413368229504 0.001 -0.8370179782356616 0.5351123295973088 0.001 -0.6031863541782071 0.2693480137550385 0.001 -3.612971459173726 -6.272870124824426 0.001 -0.7490299066832999 0.3990453582335406 0.001 -0.3264400366560094 0.2562565938492498 0.001 -10.84101300089669 -0.2322141558392172 0.001 -11.78289399773971 0.1516942202583183 0.001 -0.175253143674001 0.1578103030681796 0.001 --7.31536681824792 -6.930909018102309 0.001 -1.003039345222381 0.6186884384641483 0.001 -1.089731856600176 0.06603009839747301 0.001 -0.2784269024848119 0.473417751876888 0.001 -0.9634774249375047 0.5972167297858597 0.001 -0.1678478003433928 0.08190016759681264 0.001 -0.7919961989792619 0.9184836421375906 0.001 -0.7321222879412255 0.2961613862979245 0.001 -0.6407661792967565 0.3094989081166806 0.001 -0.007278413114141952 0.8830510607759713 0.001 -0.04174278912097008 0.8927836634976829 0.001 -0.4116636680621014 0.2860644147854046 0.001 -6.018466242965236 1.305292329129989 0.001 -0.3871109905577804 0.4647780708117107 0.001 -0.5422246284296148 1.047312546800836 0.001 -0.6496276729617307 0.2498445434961026 0.001 -0.8778840238783504 0.6993534965090882 0.001 --0.6444655385018376 -0.3878546959295998 0.001 --4.661378411900478 2.941256834315369 0.001 -17.86671943622922 -2.367981222352028 0.001 -5.714990648118173 5.775467597157624 0.001 -0.442178626483336 0.8951108020762419 0.001 -0.8913684080395122 0.08988643024537521 0.001 -0.9332373988432929 0.6397614138071139 0.001 -0.9421356075781284 0.1736404950528249 0.001 -0.5759880457314177 1.158110486151142 0.001 -0.05205439008721122 -0.01840760434831221 0.001 -10.63079925387331 -9.126759462894075 0.001 -12.72523548098331 5.887753772484224 0.001 -4.718531615443069 3.110264678789948 0.001 -0.354172280386753 -0.007649922238552074 0.001 -0.03602551984816917 0.9330727616637122 0.001 -0.04680867786254499 1.07198931889743 0.001 -0.1809028063030811 0.1333739854040154 0.001 --0.1429222411017557 0.3700717285996447 0.001 -0.6818136414277201 0.9020095414503342 0.001 -0.8172993354468527 0.3976369681244859 0.001 -0.3420640132502837 0.5386195789766295 0.001 -0.2920648854199123 1.076284020257948 0.001 -1.004855541498108 0.1749234864154162 0.001 -0.6981594265843706 0.6872249890884993 0.001 --7.212420508988012 8.045209990184555 0.001 -0.5144167350900751 0.6793252771761668 0.001 -10.48934540563413 9.072453770032727 0.001 -0.1120794737261226 0.2326896215838478 0.001 -1.021609508701469 0.04988015829487978 0.001 -0.1929130062169757 0.6071821480016169 0.001 -0.1689252527791892 0.6924982028305972 0.001 -1.088097261752415 0.1958328525810552 0.001 -1.067433454405025 0.8579223458533513 0.001 -0.3171034511894687 0.4252362573899063 0.001 -0.1085120610786532 0.4868187383882088 0.001 -0.1208653791666031 0.3816066813040018 0.001 -0.1045112338186724 0.4129365364656201 0.001 -0.2131250533851844 0.9289573962171532 0.001 -0.6249563408874617 0.1514814203032204 0.001 -4.665231985335912 9.013110318299452 0.001 -0.6234088810368175 0.5342498603202435 0.001 -0.08878698015013824 0.02780985284721032 0.001 -10.18172160464222 -2.294135861293926 0.001 -0.1203676515216077 0.06819648870665564 0.001 -1.053626961682059 0.7108235230556911 0.001 -0.3005945606446067 0.5686303587316043 0.001 -1.05908898900014 0.5627799329157104 0.001 -0.7548138832653131 0.5000219995761856 0.001 -0.2720957024308547 0.3954705919813528 0.001 -0.4617445886121971 0.6626084027524232 0.001 -0.5393316085367139 0.124686562920557 0.001 -1.070690697390716 0.229053677578038 0.001 -4.121502592874818 -7.074023478201917 0.001 -0.2049024474082204 0.9922585752979434 0.001 -6.720055167685296 -0.1145080980664919 0.001 -0.3612468883259021 0.301733241387108 0.001 -0.8678324878982959 0.01882340858931587 0.001 -9.969699604546133 0.7420483545891221 0.001 --0.221204151553616 0.03461792496447647 0.001 --0.2210175621700569 0.1394002899578408 0.001 --0.06142296861451493 0.3535211465557462 0.001 -0.8810807414453579 0.1881878194868439 0.001 -1.064861594693376 0.6185326336641409 0.001 -0.9451643353828326 0.5607683083047124 0.001 --0.01947667773135963 0.8643430484203641 0.001 --0.1077612421892627 0.4691067673778803 0.001 -0.5365133415207521 0.09042605058578772 0.001 -0.7734974196165114 0.3585896097952639 0.001 -0.2518323890983825 0.2232611660489309 0.001 -0.7206371394605589 0.6428392950958751 0.001 -0.6218346930472139 -0.1056032809843973 0.001 -0.4766625055597168 1.149519470337633 0.001 -1.071840193006725 -0.007428639907918657 0.001 -0.2323029214724864 0.4185239650421395 0.001 -0.1497900688809868 0.4478692849770127 0.001 -0.3342379763880028 1.004364827769733 0.001 -0.01335337926371551 -0.05907690108589859 0.001 -0.9613725881672025 -0.03181052316939598 0.001 -0.5898617359196907 0.5746456788654744 0.001 -0.1707456354225968 0.6161689768873962 0.001 -0.5040843025655692 0.1886288889266448 0.001 -0.3479911422714715 -4.265658930407669 0.001 -0.4886661263980786 0.5302479447181743 0.001 -0.5276777541762442 0.7354677395592564 0.001 -0.5494645678859058 0.7328272839535966 0.001 -0.4207925746348639 0.1610429908387014 0.001 -0.415827256658597 0.0503496820231674 0.001 -0.5420473789321463 0.6303165000777093 0.001 -8.005307534451687 -2.455486032956304 0.001 -0.7187040071176692 1.076739620020753 0.001 -0.2927164612553009 0.7460744442225771 0.001 --0.02158255670135498 0.05148790574964324 0.001 -0.484578070491905 0.6464618960455326 0.001 -0.5041500588719929 0.9234843698274127 0.001 -0.5259281169397728 0.5100484490252594 0.001 -0.5033512490288007 1.072873413712151 0.001 -0.9224720961337151 0.2695783792733957 0.001 -6.971270900935791 -5.607655875564652 0.001 -0.5792048189626421 0.6511063920148064 0.001 --0.05630573904725512 0.3046722966222289 0.001 -0.1995097940246118 -0.1188418903929021 0.001 --0.1989217947100105 1.210769634515655 0.001 -14.60601639089025 6.60570862899085 0.001 -0.3518243397891815 0.9602586254014489 0.001 -3.6839492739191 7.38858962733042 0.001 -0.3350890229932071 0.7808419590061806 0.001 -2.528805900150032 -7.833611317133697 0.001 -1.002525971371819 0.999194949600904 0.001 -0.8682625686495656 0.8028198840980374 0.001 -0.9007161851772197 -0.0821945489094231 0.001 -0.8704020829636943 -0.08378760116080614 0.001 -14.55565317644387 -6.251254947506681 0.001 -0.6775832384467291 0.3932619500724086 0.001 --0.0265207876264709 0.5122155335126174 0.001 -1.051223393128287 0.1309590278476413 0.001 -6.452841471121585 7.591666287070527 0.001 -0.3834732301520445 0.2270347982166172 0.001 -0.8248640484462437 0.05383247823754685 0.001 --2.064346139744897 7.513783014457102 0.001 -13.06080052593754 3.89444318666304 0.001 -3.925268724739349 6.224421570470003 0.001 -0.8384563819398991 0.6790659764134204 0.001 -0.5493856171170413 1.076638239974956 0.001 --2.339481339615408 5.916695542171101 0.001 -0.3082442348589437 -7.944874531379142 0.001 --0.2726662561498766 -0.1567451563504194 0.001 -0.009699972819629971 0.4676615513162708 0.001 -0.1667032960308696 0.952170374097103 0.001 --5.685459509688821 -6.2641055577704 0.001 --0.05256314495885135 0.08230055787741995 0.001 -1.029920136791392 6.14053190739085 0.001 -0.5615009714336004 1.022765029355595 0.001 -0.3258523092952243 0.8292625514722564 0.001 --7.893219515521899 2.05266051447312 0.001 -0.9947754145309584 0.5823220794906958 0.001 -0.7599510353993397 0.6614727521327601 0.001 -0.8284126389811197 0.8660432054145413 0.001 -0.6131234172893849 0.5657805688307125 0.001 -0.1990082705881299 0.03594050025359753 0.001 --0.1199101890242685 0.8330133059792253 0.001 -0.4753925269113144 0.4812037122163623 0.001 -0.5525103431221825 0.910621951097264 0.001 -0.5164707403976049 0.7659622716176092 0.001 -0.8698413715734653 0.7231779651492884 0.001 -0.6610656060199087 0.5214233594768277 0.001 -0.9076447416164252 0.5421933542928815 0.001 --6.099291128574844 -3.220529528805549 0.001 -8.2432306531168 2.561315763497538 0.001 -1.065963561728545 0.983048006564918 0.001 --0.06142139822698478 0.280753486492838 0.001 -0.1162479816653897 0.6328674089045044 0.001 -1.061905235698743 0.4246804674503863 0.001 -1.055508018443186 0.4489547604737686 0.001 -0.2107241850870361 0.877494063729733 0.001 -0.5810583046092557 0.1009316021758792 0.001 --0.02075041550823953 0.6278454520046841 0.001 -0.3333012905015132 0.3530206783194783 0.001 -0.8217308987836214 -0.01482968206463149 0.001 -1.084894977390767 0.1618778628792956 0.001 -0.1531503808414833 0.3972251762894781 0.001 -0.9186897795485687 -0.003076773260766792 0.001 -0.582521642087557 0.3615905993883796 0.001 -0.7593806734953952 0.1677287034737271 0.001 -0.0940869440748848 0.8697690732577865 0.001 -6.381942289039519 -1.80120495488176 0.001 -0.7747873958499767 -0.04244334643793288 0.001 -0.3420655794129784 -0.05554107805091239 0.001 -0.5656355144573165 0.2401906821830657 0.001 -0.2897040775412075 0.2880683944490567 0.001 -0.2514651007530567 0.1428150714348735 0.001 --0.1306357015247848 -0.09685559742121358 0.001 -0.9160820304168861 0.5903282473029697 0.001 -0.8932954891699351 0.5903384157563242 0.001 --0.005381443529834499 0.7930761567948883 0.001 -0.2036815582117795 0.2334221194415227 0.001 -0.2446096067058613 0.6128488334407168 0.001 -1.076331551313722 0.0319220255157173 0.001 -0.7147078556483452 0.4751611722970529 0.001 -0.9295378855348922 0.09196617456290498 0.001 -0.1052376840955687 1.037255996684375 0.001 -0.2779591043410239 0.2051269411208415 0.001 -0.1674008396311211 1.007319946901284 0.001 -0.7697578516321959 0.5483438904212311 0.001 -0.9100036770294411 0.4923525398168741 0.001 -0.3486018321267293 0.6610319087818234 0.001 -0.7940697134184298 -0.05706021154361546 0.001 -18.81348606540519 -1.275902825775264 0.001 -0.1931042980254156 0.1836686750843257 0.001 -0.7772369151436502 0.9357147342299879 0.001 --0.1670316728254589 8.006483943694704 0.001 -0.376973009590217 0.1336543318500875 0.001 --3.005448955224846 -5.877530718101026 0.001 --0.02712742733089927 0.9988036449020946 0.001 -0.04991321791946542 0.01778396041189431 0.001 -0.3648544640949034 0.8748176358303077 0.001 -1.039347315360003 0.4977458780169354 0.001 -0.6027944965716773 0.8891345985037797 0.001 -0.4225275893583939 0.715514021635832 0.001 -0.1932001787197227 0.08403556934963968 0.001 --2.296801748469485 -9.215508456278926 0.001 -0.3765121675869311 0.3288628338874183 0.001 -0.7943631267175809 0.8304242229438894 0.001 -0.736722891200067 0.7113139724678799 0.001 -1.007831861148378 0.383870947399571 0.001 --3.898378695418377 -8.941646497703063 0.001 -0.2407676583478545 0.4402465921841086 0.001 -0.277038847222268 0.9539864744141466 0.001 -0.1606610470563795 0.1071160866718795 0.001 -0.3206625880724026 0.4599774297163197 0.001 -0.1858228615985603 0.313817220751483 0.001 -0.5497133824766386 0.8425583908545643 0.001 -0.3360310165062491 0.1120283280038818 0.001 -17.17185819907441 6.135607404891694 0.001 -17.44620674216537 -5.8731230855046 0.001 -0.4355192614513481 0.05563451356415194 0.001 -0.9158034974462963 0.4785999219003963 0.001 -0.8504547146566334 0.09077148299766639 0.001 -8.939341926659081 -4.230707511982018 0.001 -0.2891121651756117 0.691852711307822 0.001 -0.9224815871981304 0.516821894642306 0.001 -0.08527602796819481 0.2822637251649878 0.001 -0.9686682579358985 0.6803548292326291 0.001 -16.16935138323182 -1.92441180210805 0.001 -0.8368639825086073 -0.3460750846246343 0.001 -0.2653157802326219 0.1730679981633707 0.001 -0.0270760946188012 0.3815646877872453 0.001 -0.8115477913723206 1.061864616556101 0.001 -0.4183852486190144 -0.03776435921183344 0.001 -0.9743977084280507 0.6268875872308138 0.001 --6.129561182010765 -7.415973406102705 0.001 --5.867097905504994 7.596676875529412 0.001 -0.9639298130716673 -0.08678334038604774 0.001 -0.1635527828181508 0.2299220462182087 0.001 -0.7603454861495847 0.2850430962033476 0.001 -0.4394640951508928 0.6096263472987657 0.001 -0.6831954843487851 0.2184236540226959 0.001 --4.03686317412628 4.978099784221484 0.001 -2.020079135448715 -3.931511855660109 0.001 -0.7757063939753414 0.1283055977194755 0.001 -0.9520490437366926 0.520640089397806 0.001 --2.812240064709194 0.04405185912063003 0.001 -0.1902724344554182 0.9501301754918722 0.001 -0.4735059704197891 0.6170410507395194 0.001 -0.9461306302648174 0.6913036474571829 0.001 --7.753812209391506 -3.081527670063722 0.001 -1.084764560629407 0.09257644421253591 0.001 -0.5745169723206985 0.4348372346158298 0.001 -1.104488952488172 -2.67588365604837 0.001 -0.07046410483731268 0.5246564280869838 0.001 -17.74576076551784 3.421112210871585 0.001 -0.1678016667625588 0.8998152209460566 0.001 -0.6282448672827365 0.3310090224286175 0.001 --0.07568134070550336 -0.1324459713886784 0.001 -0.8029927951761749 0.0906105912934182 0.001 -4.653388746325263 4.990392541685623 0.001 --0.9885462170838657 9.138762392407234 0.001 -0.4846826676293891 0.07292067679232127 0.001 -0.9544516414189407 0.8997967431350352 0.001 -0.1948033166757328 0.7725270420619494 0.001 -0.4934214696482122 0.2840508225564955 0.001 --7.524337811507655 0.1706468377600342 0.001 -0.7549267027249714 0.751190440298752 0.001 -0.7440821587878058 0.4645072503253276 0.001 -0.1951281270477866 1.073988934696598 0.001 -0.1647261314552752 1.102854709995116 0.001 -1.033798389706252 0.9003187481852507 0.001 -0.4308920871808156 0.4533582268812462 0.001 -0.279050104311142 0.737496854866746 0.001 -0.8801751583153862 0.303774133867993 0.001 -0.9098535378996786 0.2906025552422666 0.001 -0.5910404867789162 -0.1193036715258949 0.001 -0.2716982145018293 0.8473084186595339 0.001 --1.028408777063104 -1.819747580049571 0.001 -2.005723515995177 4.998322699773632 0.001 -0.7897323661853595 0.6319282918140631 0.001 -0.3753478687560655 0.2793087112438181 0.001 -1.044336368088618 0.7688260790001585 0.001 -0.3186902473421809 -0.02302912625185294 0.001 --0.1092178782074796 0.6830628100640772 0.001 --0.1250443404137449 0.7204460789703776 0.001 -0.8603561181791199 1.080322398324593 0.001 -0.845887813505484 1.107875229742741 0.001 -0.6646160737747302 0.177316380822523 0.001 -0.2120304882834047 0.1108291514985252 0.001 -12.95402784606781 -3.930320540828075 0.001 -0.8679703892943439 0.6094060811762314 0.001 --2.571770831675284 -7.992996353043506 0.001 -0.231087162806398 0.9437321305687484 0.001 -0.1814638897363498 1.04759853659863 0.001 -0.1500606321360519 1.022476224223679 0.001 -0.774702723629566 0.6029818653920992 0.001 -0.3212557978543788 0.03621555133487886 0.001 -1.046329300985286 0.9682627428800368 0.001 -0.7189642919491256 1.033399351798995 0.001 --0.0639932434146457 0.8345987585486608 0.001 -0.7037988009910482 0.8772271924721743 0.001 -0.04946092773777316 0.6021890684350123 0.001 --6.357588459551059 5.786015514544834 0.001 -1.021422793871307 0.1286997585892597 0.001 --0.01994971237004837 0.5766863282000476 0.001 -0.9673395938006122 0.5401260256481897 0.001 -1.003194082503722 -0.00330420476748099 0.001 -0.4062769990931206 0.4873416465671621 0.001 -0.7802723186357711 -0.07820331864033836 0.001 -0.8897017653134642 0.7545696675308765 0.001 -0.05824607574721096 0.1277072405088187 0.001 --9.047104248461981 1.032402339944464 0.001 -0.2362875932082271 0.9758093749138645 0.001 -0.3075206442944429 0.2456168870666564 0.001 -0.8768281132523584 0.5729644138468635 0.001 -1.043756726696857 0.677749662718116 0.001 -3.799853072471898 1.335558196158239 0.001 -0.8201556005838333 0.5974737069212994 0.001 --3.779738489381702 0.7103618460741732 0.001 -0.1148286584453374 0.9759236554642028 0.001 --0.05900287086790516 0.7796877529671111 0.001 -0.8473492158246603 0.4852122610404957 0.001 -1.02064312645359 0.7210968862358564 0.001 -0.9416173233134502 0.7132405688426992 0.001 -0.9144752891184771 0.5660502257316056 0.001 -1.088094109954747 0.565080852461465 0.001 -0.4771101593361969 0.7127834825679135 0.001 -0.4471162213222926 0.7415540105799029 0.001 -0.1378326256117121 1.078753965568126 0.001 -11.34711998530724 -1.554492249079897 0.001 -0.2804189593018265 0.6536260976904118 0.001 -0.2229498733232182 1.060650802239647 0.001 -0.2839805788872084 0.006093841408498772 0.001 -0.5007854577385842 0.1238897001042783 0.001 -0.9865920222556065 -0.09667093587778096 0.001 -0.07156175226202972 0.2692636722841 0.001 -0.7505580481631695 0.5491928559089455 0.001 -1.003604674125852 1.128522835211493 0.001 -1.061529871555977 1.12150265610379 0.001 --0.03706089242229049 0.7074270430244217 0.001 -0.1889075368147925 1.008132180882074 0.001 --8.863740629120208 -4.244927154290767 0.001 -0.517538416993615 0.2586915429644594 0.001 -0.4047606875261615 0.09504890235039616 0.001 -0.4727229053234062 0.7673405320856339 0.001 -0.2242357767075791 0.7233902904413774 0.001 -0.8498768166236507 0.06258455971956435 0.001 --0.05902189187951182 0.02806483470150963 0.001 -0.3850568304503653 0.01383951107421622 0.001 -0.04336326885126685 0.05085583047477357 0.001 -0.7243701168399002 0.006834576779002096 0.001 -0.6835824594701185 0.8373191738124324 0.001 -3.32112550693375 -4.257413147903749 0.001 -0.7531735615662375 0.09558465353846413 0.001 -0.703823499164681 0.5559440358368126 0.001 -0.2437329063675464 0.08977292140973134 0.001 --0.1472728550224033 0.06752559761463292 0.001 -0.9043064432050258 -0.106715756502062 0.001 -0.8974454231276126 -0.1706544523202884 0.001 -0.9359491304291444 -0.1176383529035585 0.001 -12.7503177703067 -6.314194218387932 0.001 -0.5103427225264116 0.5603839215712868 0.001 -11.07932505293799 -3.621843309557977 0.001 -0.3840830126725161 1.096333560653036 0.001 -1.01868315991687 0.7665327053009361 0.001 -0.1217983942490379 0.9332681521441567 0.001 -0.05635928071063559 0.9167659716471279 0.001 -0.9098186719364323 0.3343408885807494 0.001 -0.1065269698000821 0.3543079932420179 0.001 -0.8781405719894837 0.4582966671438083 0.001 -17.6874759294845 -0.2876464645112912 0.001 -15.95221800779236 2.489067388886619 0.001 -0.1219046680510248 0.9042204789216554 0.001 --0.004975282936075299 0.549452159098308 0.001 -0.5768339446388993 -0.04193475141714122 0.001 -0.3552410076046985 0.6233520797373109 0.001 -15.64560485479827 -1.12589080354106 0.001 -0.008370096048839841 0.3674705857228365 0.001 -1.192871542149954 -9.213243716993784 0.001 -0.9868375272292774 0.2693538078219858 0.001 --0.07275516763224471 0.9561980698845212 0.001 -0.6511476715089582 1.132847041569936 0.001 -0.7440143609681834 0.6646214961520071 0.001 -0.8148685450453441 0.8750606279456604 0.001 -0.5254815355478007 1.114703470045628 0.001 -0.7392235314487521 0.9113455649414691 0.001 -13.72648327168342 -5.10589482842742 0.001 --4.743212485839974 -1.734795301734964 0.001 --0.009635643429941098 0.9094466461113631 0.001 --0.04586739540182301 1.190198846302925 0.001 --0.0464957275588524 0.5551625144820156 0.001 -17.96376051515272 -6.598106279260066 0.001 -0.9528799221484562 1.080709085979945 0.001 -17.29910528816461 7.331295266370464 0.001 -1.079833447463407 0.4543534875467422 0.001 -0.8476996326062154 0.5227903008472192 0.001 --0.01247008233383725 1.089880839294333 0.001 -0.275538016858628 0.5697228404059334 0.001 -0.02988519529256754 0.9674305507818672 0.001 -0.6697633678878498 1.073595622369342 0.001 -0.355545544801704 0.4606505165905637 0.001 -0.1615276892291176 -0.1025610032244013 0.001 -12.38343533122978 9.288332261413057 0.001 -12.62663597612482 -9.123567624949338 0.001 -1.088574279975153 0.4308230880535886 0.001 -1.095183329404701 0.4052312403669716 0.001 -0.382649175846649 0.1670771360910891 0.001 -0.9309142929314312 0.4755903456294934 0.001 -6.419235465773474 9.294335414786621 0.001 -0.510039479991346 -0.02579203604116242 0.001 --9.175294607737605 -2.385042792767625 0.001 -6.562766097660887 -8.74549806779277 0.001 --0.1003371699740055 0.4305204294325854 0.001 -1.484730571411743 -0.7129653805869337 0.001 -0.9644408246981372 0.09650019578157577 0.001 -0.007537046946738627 0.6647870399841722 0.001 -0.1546145481400817 1.04083204091154 0.001 -0.2820291127778201 0.1236053394228321 0.001 --5.279961046126181 4.058165926286303 0.001 -1.033932239678136 -0.0743128631929383 0.001 -0.2127373402903877 1.07595592699728 0.001 -0.3675695364092224 0.5195781445717652 0.001 -0.9173969479850499 0.8897569547878702 0.001 -0.2679724557668876 0.9357996057799961 0.001 -1.060903477817674 2.965344490704913 0.001 -0.1061278550965252 -0.009160192481103216 0.001 -0.3060686474491698 0.1885228140762396 0.001 -0.7986180517161883 0.6792617823244377 0.001 -0.1996886667283336 0.9099656597159417 0.001 -16.13526808452195 -3.284075073562824 0.001 -0.3815756324240588 0.9208139140616292 0.001 -0.4563003886644562 0.182924903471142 0.001 -0.7803374612339262 0.868634107482923 0.001 -2.626474272136051 5.815807380259517 0.001 -0.2951261111900538 0.9109367830870801 0.001 -11.10830006174621 6.741676903693215 0.001 -0.1568401236693277 0.9362290056612869 0.001 -0.215300538100476 0.1871022312101418 0.001 -0.8146244668530628 0.4305103280129147 0.001 -0.7673549358806513 0.2071914902451766 0.001 -1.077286794430084 0.66505505875481 0.001 -1.132367265662878 0.3075214170002987 0.001 -0.1566487575213514 0.9687362232508568 0.001 -0.786293783798828 -0.02323330989351569 0.001 -0.04429583860431661 0.8525949339256051 0.001 -0.1223261714790633 0.180677944853935 0.001 -0.1996987313055389 0.7019372875286368 0.001 -0.9596468179317565 0.2899338323236232 0.001 -1.031888603403742 0.3052011838573324 0.001 -0.698715330734306 0.7176083213562434 0.001 -0.2268594864952391 0.9910151163512235 0.001 --0.08184944511186444 0.2687489159483253 0.001 -0.2369329474668804 0.1921822295928172 0.001 -0.5201635131796765 0.9731688372419423 0.001 -0.4582535942955173 0.8191135420603655 0.001 -0.2307624827500741 0.2170712894281512 0.001 -9.494817531712068 -0.8988215370867265 0.001 -15.55503841985768 -8.903131764559669 0.001 -8.195721080781288 1.620795478111474 0.001 -18.90164834450089 4.716281907839661 0.001 -0.2591588937886823 0.3248293262873162 0.001 -10.42372630609536 -7.224273753354056 0.001 -0.07367174105913277 0.1766025720393434 0.001 -0.654332168227883 -0.02724261122632298 0.001 -0.64508269916417 -0.05179363885492752 0.001 -0.7027975587479702 0.5265562982987324 0.001 -1.205427928558732 1.088380960231109 0.001 -0.1943310027692015 0.8312995945273529 0.001 -0.7294181919988747 0.6923941184319395 0.001 -0.8170427626958661 0.03462812372469262 0.001 -0.5135845698407175 0.8674015834742919 0.001 -0.3287184359185924 -0.008744206934935748 0.001 --1.044434329224047 -5.549621541480737 0.001 -15.48129457977801 9.011328569879733 0.001 -0.5363057861818726 0.05659848639130519 0.001 -0.09951498319955525 0.8931775412002697 0.001 -0.8672191400164867 0.8777568806256493 0.001 -0.3155550003682022 0.223093591103864 0.001 --5.190534503814772 1.041858544944457 0.001 -0.8470341427443989 1.001508721659109 0.001 -3.213356927893412 -0.7144963628429872 0.001 -0.1942480659854263 1.023639359085881 0.001 -0.984406479514735 1.003483934741554 0.001 -0.1347497034325852 0.8600215429775686 0.001 -0.004929666400391461 0.935353036035236 0.001 -1.073401442462959 0.4801620113675421 0.001 -0.192309202899242 0.5406632921215573 0.001 -0.5677480910983195 0.3022872685405872 0.001 -0.9842354390347535 0.08127095209126936 0.001 -0.7358044868341872 -0.03320473156639423 0.001 -0.8788625112262927 1.123037958360825 0.001 -0.4770462120710596 -0.05549021356392519 0.001 -0.9596863768829039 0.4115437055891563 0.001 --6.217146338126215 -2.250401314157441 0.001 -0.7709779787708485 1.074116822342283 0.001 -0.6702969268001202 0.008299042598492448 0.001 -0.1247600761654821 0.7636270574320883 0.001 -0.743001290381594 0.51273716357778 0.001 -0.3927079316217419 0.7577449861752115 0.001 -0.1441167960733411 1.099682154359351 0.001 -0.806597093446501 0.01709832328622883 0.001 -0.4229881839956165 0.3505432184046587 0.001 -0.7225483326904147 -0.08555429144621299 0.001 -0.7443671126008244 -0.07383034316586509 0.001 -0.8577354851415905 0.2360262399106167 0.001 -0.8356208793862555 0.2243189114928718 0.001 -1.156588504893149 1.103702209523359 0.001 -0.6108001332505235 0.1445414750017718 0.001 -0.7162214369410326 0.7280524300641489 0.001 -1.047972948375732 0.5909903486068375 0.001 -0.9363038821913003 0.6164008130915966 0.001 -1.045113920541249 0.6343063476838539 0.001 --7.002270846611558 -0.7130825282768516 0.001 -0.4788293241622374 0.4498499501125467 0.001 --6.955309641423639 -8.012224443936212 0.001 -0.6854239037796805 -0.05589536535584361 0.001 -1.061511651346486 -0.1537078824826099 0.001 --7.629166351598128 7.232327005885279 0.001 -0.3600808177923284 0.929189122170764 0.001 -16.7899290551151 0.6770788818224941 0.001 -0.4581590323793327 0.2397481903846011 0.001 -0.2153152404146544 0.2632577192109866 0.001 -0.6614412553145141 0.5588149152544271 0.001 -0.568128078312896 0.9910511920094482 0.001 --0.02154283855099944 0.4031456598871549 0.001 -0.8105789926306273 0.33021332904734 0.001 -0.07315828483450583 0.6868350399091782 0.001 -0.2960836750754998 0.08246522868872863 0.001 -12.17927467124635 2.113909867988718 0.001 -0.1784188572441634 2.91026847199737 0.001 -11.18411764778566 -5.583071563133455 0.001 -0.4141419434167205 -0.06886766983445636 0.001 -0.2731007966783467 0.8871778904740093 0.001 -0.08987358297621892 0.6110808366979563 0.001 -0.2953532621021248 0.1536091570524093 0.001 -0.7131049974809042 0.08261141300824829 0.001 -1.065859159169893 0.7500414947836399 0.001 -0.4819109368033716 0.03496547357410203 0.001 -0.09712635867968057 0.7687357597160104 0.001 -15.26262953465765 3.930955110944957 0.001 -0.3494478162912892 0.7645610388681261 0.001 -0.1409590052129069 0.2301557655302754 0.001 -0.7022803007535485 0.5944590252563254 0.001 --0.05356826437365621 0.3985305953861428 0.001 -0.4803325294588225 -0.01028719977200331 0.001 -0.6312489038376354 0.2373752135253852 0.001 -0.647314536673809 0.7047039048903386 0.001 -5.016601960789559 -0.6650626526158003 0.001 -0.5391010611361321 0.3658328766440139 0.001 -0.7884343383999917 0.3190106724841121 0.001 -0.441106476992044 0.8464254190975826 0.001 -0.272477933410624 0.7822071433513947 0.001 -1.131450898059719 0.7780699799801366 0.001 -0.8033381223676149 0.06009877799185609 0.001 -0.003177581538219794 0.7418883709204939 0.001 -19.17444705235081 3.005128916521675 0.001 -0.1849921147117911 0.8088822343914674 0.001 -0.6672990917575263 0.7210162885877704 0.001 -0.5600365783530793 0.54346106889769 0.001 -0.4769650158415438 0.909688233120207 0.001 -0.4367980366657461 0.0908617155104403 0.001 --6.462157837435833 -9.18359350931823 0.001 -1.055107150755759 0.108546583792186 0.001 -17.85549807467599 -9.314466421696986 0.001 -0.4556818101937002 0.9504231559638229 0.001 -0.9814828265686757 0.2961648885405882 0.001 -0.8470798705772664 0.8282914065884999 0.001 --8.13012085092952 -5.391093846900919 0.001 -0.5773641636044193 0.927181626980827 0.001 -0.1825527123602224 0.2468967934049285 0.001 -1.43669405087194 7.505211923625392 0.001 -9.7469071617697 3.642051489413825 0.001 -9.56814103080452 4.122095628630859 0.001 --0.09921043536893548 -0.06052517531600015 0.001 -0.0970052892815156 0.570221023603787 0.001 -0.6407258413160777 0.0181436796625386 0.001 -0.4971831757009485 0.7883118530449971 0.001 -0.637232635314087 0.07132507063255837 0.001 -0.3355235967463995 0.3074070518577713 0.001 --0.02447447998427484 0.9093613632280519 0.001 -0.3499863621267446 0.9055213542975976 0.001 -0.8293490029207702 1.049377812859848 0.001 -0.6487918094058157 0.8691196311206962 0.001 -0.3222480323184778 0.3978370275866773 0.001 -0.5612753733424579 0.2611794254384518 0.001 -9.189011019538128 2.603693319803721 0.001 -17.84588242958878 9.277592559718075 0.001 --0.1089753184572371 0.09262414404025629 0.001 --0.1187417818657154 0.07408093930432433 0.001 -1.103775597746656 1.055099136451508 0.001 -0.7745693899568198 0.5245858656516721 0.001 -0.4498965667786497 0.3495505003886204 0.001 -8.906469634120729 0.4374530859541541 0.001 -0.1636131373739343 0.3654069962699366 0.001 -0.2673728345888327 0.9683354698817231 0.001 --9.072097752279166 -6.122688270621274 0.001 --7.642877552627217 2.984823756157889 0.001 -0.6364701954816467 0.3623670469375921 0.001 -0.2991837131843114 0.6275245062166885 0.001 --0.1026538884600608 0.1903799314532817 0.001 -0.6102236501085996 0.4043336289566215 0.001 --6.611186745693548 9.181607544193531 0.001 -2.764181296181472 8.86936578082801 0.001 -7.724055417859415 -3.267107706699194 0.001 -0.2521136999167869 0.8668829079086861 0.001 -0.1110442831617409 0.5411244324675173 0.001 -0.680736170999674 0.23602292322164 0.001 -0.9675814064897166 0.6410201196912593 0.001 -1.093899722401037 1.130193464320989 0.001 -0.5871126184033111 0.7937672391039596 0.001 -0.2968753438323532 1.045030174856705 0.001 -0.9883390809791355 0.04656649630571404 0.001 -0.2577173438732333 0.0430279370491383 0.001 -0.1881602959516961 0.2075432953746639 0.001 --9.299371417363465 6.751144831624871 0.001 -0.890750587391354 0.02082639956607272 0.001 -0.6158321440243175 0.9394286031379849 0.001 -0.1508855492778764 0.1572946358999948 0.001 -0.5832642420837353 0.4096623122419841 0.001 -0.05091929573993723 0.3432921390169212 0.001 -14.02724317568544 4.862617687879036 0.001 -0.1844119436401155 0.2878975391753564 0.001 -0.2488349074325869 0.2528392320085575 0.001 --2.040832538609755 -3.194090482013704 0.001 -0.3144393074573202 0.2810534685642729 0.001 -0.7271777452577565 0.4360724789455678 0.001 -0.08231181802137214 0.9607057403947158 0.001 -0.8360894778908955 0.3489796997726628 0.001 -0.5720434419277893 1.070134533232911 0.001 -0.7064261931212752 0.1824681296977892 0.001 -14.37254470553041 -1.636740336489112 0.001 -0.1892611411743161 0.4169563020230471 0.001 -0.7153113459816891 0.8493217152047949 0.001 -0.06097549477897127 0.8037935286330911 0.001 -0.6583732180841996 0.9763268163041308 0.001 --1.51916236126573 -9.286025862474901 0.001 -0.2955579004054695 -0.06434462607651403 0.001 -1.016793954984942 0.5955935219009448 0.001 -0.3093688275572446 0.9753501019228541 0.001 -8.337243263176591 -5.354531782540609 0.001 -0.671190165913239 0.1172763997219988 0.001 -0.02624018130515038 0.7491688705061189 0.001 -10.41650141510515 1.783693681497694 0.001 -0.69739196247892 0.6416900942456768 0.001 -0.7352548217573991 0.9615693988776949 0.001 -1.11968915209096 0.5781981832095135 0.001 -1.103090831254857 0.6088131720153007 0.001 -1.127802647692199 0.5435808497250751 0.001 -0.4621628891871364 1.007439889394554 0.001 -0.8005521138407602 0.1368008871967866 0.001 -0.2380514971219614 0.8244817324113574 0.001 -0.2052393755584746 0.1353538862227811 0.001 -0.7997302716456632 0.9826427786953107 0.001 -0.3769011125787665 0.8296578231627489 0.001 -0.9807720298660588 1.064953599114805 0.001 -8.620508803477275 5.354747240585978 0.001 -0.8971476690696202 0.05177950391901716 0.001 -0.1641782007262561 0.7377826531302263 0.001 -0.4348921345365509 0.3832461451567709 0.001 -0.9044165596283021 0.6826690180052326 0.001 -0.5382650285491803 0.3865587680340987 0.001 -0.3870817540527359 0.4133766139191678 0.001 -0.405311144559039 0.8002096082256356 0.001 -0.850200071517653 -0.09433077467312757 0.001 -0.6003726104007627 0.78037831942376 0.001 -0.8526109664354838 -0.05424235283630582 0.001 -0.01689214194473781 0.02205344484900395 0.001 -0.6373498703959753 -0.01424629473713991 0.001 -0.4495349871820536 -0.08811752908792805 0.001 -0.2908862115823537 0.8649419175043378 0.001 -0.9412880612147523 0.9756465251434678 0.001 -0.9234931903776666 0.9459431415540566 0.001 -0.8219963906103006 0.6996006047486961 0.001 -0.72116740623409 0.8053632533171465 0.001 -19.04800218479315 6.365128818594613 0.001 -19.06814918089913 -6.116943283409157 0.001 -0.08955341821783409 1.049420439535089 0.001 -0.599685839356715 0.4502053597528927 0.001 -0.5025974663095345 0.4841756420159623 0.001 -0.4565818178017681 0.5433612234062267 0.001 -1.100854575662377 0.4616673881045684 0.001 -1.06452186571551 0.2854441124125633 0.001 -0.3846535872327284 0.8699384862765619 0.001 -0.3391315580074784 0.1552967769875073 0.001 -0.3254935728783303 0.6183585319734808 0.001 -0.08742457475305404 0.8223763977953773 0.001 -6.636308684642054 1.88966307708446 0.001 -1.017707915658884 0.4136430614775207 0.001 -14.2648250522623 0.825301738422426 0.001 -0.3164840518103243 0.5181229230441734 0.001 -0.326210724503387 0.1342514097161991 0.001 --0.102319840309436 0.1593503447139427 0.001 -0.2827078785365321 0.4162540977108168 0.001 -0.6100473219479102 1.123832295385976 0.001 -0.5438716782847069 0.4743027666461794 0.001 -1.085409291228502 0.6994191576512329 0.001 -0.3826114225539403 0.9796306358140576 0.001 --7.711896684029657 5.696827371837061 0.001 -0.9753039423195946 0.9300191772117159 0.001 -0.2589377870542517 0.6595962626031474 0.001 -0.4448316234869149 1.027997429852091 0.001 -0.3180701425610507 0.004123072470986756 0.001 -0.09987634775894058 1.104536043489105 0.001 --0.002091335334944452 0.9484496571909313 0.001 -18.15127888830054 -3.211006444856856 0.001 -0.4669623448834327 1.087512502354963 0.001 --0.06113366775667893 0.434493551457913 0.001 -0.1849787390952033 0.7061573653364028 0.001 -0.8185982879675751 0.9178480522985623 0.001 -0.5488222868143844 0.7898127824626009 0.001 --0.04662625814837831 0.5816805796744361 0.001 -0.7962295567891758 0.9494910061994744 0.001 -0.1992659200797001 -0.03082171034801681 0.001 -0.04020417585464505 0.7147625419874336 0.001 --0.09497883128166903 0.01956830797458256 0.001 --0.1295525478354709 -0.003845925427542196 0.001 --0.1055554990628304 0.001468532845571197 0.001 -0.45223113797543 0.793870604140153 0.001 -11.52953138002362 1.041689752766177 0.001 -1.083791067731757 -0.07998564825881205 0.001 --4.510876037375929 0.04211632342326708 0.001 -0.009587599800374181 0.09780561585278988 0.001 -6.885783284486313 -7.636555312735439 0.001 -1.071201748654898 0.540728960907729 0.001 -1.0920345544192 0.682511350635032 0.001 -1.11300450647668 0.6824115097281502 0.001 -1.142205974484622 0.726116712068642 0.001 -1.153718972867364 0.6852083090075008 0.001 -0.7897274875298149 0.2914392120080858 0.001 -0.7229715266838481 0.6197442873884983 0.001 -0.2535199846088481 0.8872701583216385 0.001 -11.91876513073392 3.6909818013082 0.001 -0.507765485124458 0.3073680017468931 0.001 -0.8912864233578233 0.6127575515588297 0.001 -0.7991987284729108 1.014273632121185 0.001 -1.186950923303086 -0.3782708703970166 0.001 -0.2497199567764245 0.7552343730266546 0.001 -0.4218485826651485 0.6552125792261442 0.001 -0.5082282842041057 0.2030585319239893 0.001 -0.1534293829504997 0.5404126787797251 0.001 -0.4824010482613985 1.060241232756622 0.001 -0.4067617460759996 1.004427991593268 0.001 -4.808370703353818 -8.980946412790759 0.001 -0.7646070144502775 -0.09921125485602195 0.001 -0.5129586182221557 0.7496682463067873 0.001 --0.06468959718721704 0.5978012443351566 0.001 -0.1121865104612098 0.6071814838714888 0.001 -12.48403476462517 -7.227320679118701 0.001 -13.42926828283259 -7.679220433071959 0.001 -4.345128626300896 -4.729214277422338 0.001 -1.088192605051219 0.7503464060325915 0.001 -1.097964052232818 0.7344490822650791 0.001 -1.146441137196254 0.2105805270450357 0.001 -0.2186550325485653 0.8976732717578464 0.001 -0.2149419442777825 0.6736941094661575 0.001 -0.2520899161211285 0.5446433472159951 0.001 -0.8684847315258644 0.04155059133179128 0.001 --0.09657240978040323 0.2573599564564146 0.001 -0.6840498852251278 0.2864026795924045 0.001 -0.6947856078783603 0.3120443855035798 0.001 -0.7029370007360054 1.00012687017017 0.001 --0.02141522044094975 0.2045343088709362 0.001 -0.3368106418549219 1.036837125877958 0.001 -0.7482247533580531 0.3153046499900213 0.001 -0.5403545546570535 0.5787908216130003 0.001 -0.7527624470814719 0.01845202566075668 0.001 -0.1093722150392864 -0.03853657396632494 0.001 -12.89343758051655 7.889856033843365 0.001 -0.3340904710525527 0.8543902760050823 0.001 -0.06071761372492344 0.4806613445441744 0.001 -0.03820252962398159 0.2734313753330201 0.001 -0.2784570787547256 -0.03214319397747523 0.001 --0.04848649716197518 0.7288879969003738 0.001 -7.757384194424878 8.014973273580573 0.001 -0.517284035083645 0.607196569834537 0.001 -0.5119260157919815 0.4050190533713919 0.001 -0.4214219706995534 0.9030862137088913 0.001 -0.7003521999181085 0.4670501734737432 0.001 -0.1021374544904983 0.4526154970368907 0.001 -0.1562449326296112 0.8013510496623863 0.001 -0.01049069385563021 0.7156241757750261 0.001 -0.2447391254052704 0.924582943210719 0.001 -0.1540627392435309 0.5157088885848262 0.001 -0.8691525578842783 0.5280990903126067 0.001 -0.9173740801568806 0.3197325911072919 0.001 -0.7301292771494881 0.05672490935117995 0.001 -0.2332959937517623 0.5154888566520571 0.001 -0.9516085135504967 0.3423469480192957 0.001 -0.5495193758974214 0.4307564015327174 0.001 -0.5556426807330919 0.3196668561678295 0.001 -0.5953878586083845 0.1947290214038162 0.001 -0.6933369751721649 1.054350986429642 0.001 -0.8562208025738827 0.9392148204710012 0.001 -0.8948227696502686 0.9424911862067309 0.001 -0.9744525208333954 0.02917604754432916 0.001 -0.4277102364729445 0.7974357497514403 0.001 -0.7545317724333684 1.057674778749417 0.001 -9.194847378131264 -1.912606657473314 0.001 -0.8302021142836791 0.6484912196433883 0.001 -0.6242595669714295 0.9586262753066778 0.001 -0.6138647040209994 1.062635354053381 0.001 -0.7139206850881917 0.7766337990756689 0.001 --0.8634886250600855 -3.04981292467716 0.001 -0.2602956474684166 0.375404583452667 0.001 -0.0004797759359811427 0.8673628678652436 0.001 -0.06807123937148678 0.430497080984402 0.001 -0.8282908129420877 0.9413571758418124 0.001 -0.9327248737371219 0.8041620950533586 0.001 -7.925624003482835 -7.958833542909213 0.001 --0.07162747831952657 0.5333517799742336 0.001 --0.05403650595095805 0.5094230947399117 0.001 --2.838568894246688 2.395390758223364 0.001 -0.07981910229444886 0.7116974030758192 0.001 --0.06671162453484995 0.06309783193764903 0.001 -0.4630464347991687 1.044520755204022 0.001 -0.4148546332644338 0.9367107139308454 0.001 -0.6108939933334729 0.7650705779356227 0.001 -1.022579627471007 0.9533623711544653 0.001 -0.08239085146874761 0.3395629981432517 0.001 -0.4272722349444623 1.048758939108417 0.001 -0.78315801050671 0.2558273781014085 0.001 -0.5432065488938528 0.2363020245330249 0.001 -0.2825568576267356 0.2614715075151146 0.001 -0.1406741469174126 0.6612372799460917 0.001 -0.4755820594885862 0.3810132257984845 0.001 -8.172556309217674 -6.760334773542072 0.001 -0.3177256451797156 0.8850832863690257 0.001 --0.08750687832985656 0.2405307725680167 0.001 -0.2627001367073442 0.4485888185312509 0.001 -0.08851106647212326 0.4971960275994697 0.001 -0.9581551806884799 0.1303985174861992 0.001 -0.3639435721222323 0.1526075213035109 0.001 -14.86587328272105 2.561783039625833 0.001 -13.46073965803741 0.6254494736591711 0.001 -0.2643445381636291 0.2759767463942537 0.001 -0.1926601125421573 0.3378411233894605 0.001 --0.01966833946533441 0.4729324955318246 0.001 -0.6352207493374897 1.005112440726371 0.001 -0.05559695717084624 0.5511621931944694 0.001 -0.1479931809773669 0.8319206188555157 0.001 -0.3961613333160432 1.022472850972173 0.001 -0.40038424944235 1.045604425686124 0.001 -0.01927038312856198 0.7893659676536074 0.001 -0.462081245881915 0.5700542137909979 0.001 -13.79385229179702 -0.3276742782578616 0.001 -1.01745242719896 0.8083409220577179 0.001 -9.923645732708099 5.543497061112578 0.001 -0.3905254230692781 0.8448730924252333 0.001 -0.1619911214012173 0.5920750680167715 0.001 -0.2077105409608567 0.5769574231284791 0.001 --2.445757548498784 9.203541280886252 0.001 -0.6952986763396345 -0.09475074247961007 0.001 -0.1276592762215146 0.3238634773429249 0.001 -0.8439268544434622 0.6033106635371606 0.001 -0.6341790672288445 0.8315386282999141 0.001 -0.6067811944332933 0.4755005472043424 0.001 -16.20090960751611 -5.433285350062798 0.001 --0.09565820521678582 0.1083020956505599 0.001 --0.09946453063967223 0.1287744971231553 0.001 --0.6112706846143277 -1.058107207513819 0.001 -0.7123295425428754 0.7030360959947615 0.001 -0.8395875169347788 0.0192628719552561 0.001 -0.2278472171311232 0.8423207349375215 0.001 --0.1997008560105283 0.2871375406619835 0.001 -0.8878933875107263 0.3387808924111622 0.001 -0.02057869901797163 0.1699867802477933 0.001 -12.52246802252376 5.231443912914781 0.001 -0.4259642457286966 1.014058412663798 0.001 -0.2766202745750909 0.7028146103250384 0.001 --0.06411599908004594 0.7106826520458717 0.001 -1.068741777884199 0.8285950670805696 0.001 -0.2984177662116356 0.8345913196706038 0.001 --0.7920878112603417 3.764931730134246 0.001 -15.05193745216137 -7.56540889166901 0.001 -0.9021904460111132 0.2582171974715617 0.001 --9.255483194802515 3.725042044645679 0.001 -19.08751525670368 -3.035341268816005 0.001 -0.6469828858652829 0.6656464940871865 0.001 -14.94907923255322 0.05574077758440337 0.001 -0.6737212360383111 -0.03365367996716665 0.001 --3.442138275574799 3.570405177113309 0.001 -0.1342343726248395 0.04713953412120703 0.001 -7.052875910061219 9.18220706234097 0.001 -0.4782751639021194 0.4135261794839903 0.001 -0.3655815537579921 0.1902264255918257 0.001 -0.6313469218310837 0.8459957718055444 0.001 -0.4118536891933344 0.2118089799228808 0.001 --4.633722883576699 6.973119229096812 0.001 --0.01626546628552299 0.9471370772183473 0.001 --0.09161157539000953 -0.014259563931883 0.001 --2.299512436379557 4.055672447944207 0.001 -0.04953041355743976 0.7603757702434546 0.001 --0.1087845654262021 1.093950128092878 0.001 -0.0160227852639278 0.4913955794018333 0.001 -0.4150426567936172 0.9622194087587478 0.001 -0.9586043803033286 0.3733241761650661 0.001 -0.5534446051462543 0.496613845449684 0.001 -0.3681480599921154 1.03016083599637 0.001 -0.3547965869496776 0.3514581567064432 0.001 -0.3864019057961487 -0.09344451017802509 0.001 -0.3778371576349953 0.967973502697138 0.001 -0.6415846742986635 0.7597657772624347 0.001 -15.03880655348038 7.831897780688172 0.001 -15.95961013337935 5.583248877063276 0.001 -2.369223463238524 7.387309258741786 0.001 -0.9720724473099804 0.4645919462498566 0.001 -0.9932491603820108 0.435265037300134 0.001 -0.607346096582088 0.2486052053804146 0.001 -1.029498546580956 0.9911600609466712 0.001 -0.2390969154498761 0.9030903069941292 0.001 -0.8736853442024906 0.6561799736009832 0.001 -0.4870705076618468 0.8436546729270678 0.001 -0.6675996588587081 1.008020693969213 0.001 -0.5700904946371974 0.2186294871007692 0.001 -0.3646118668896535 0.06631471419009599 0.001 -0.6766819332456755 0.04171459148644965 0.001 -19.2315546974662 -0.06356987137064922 0.001 -0.8830540801188577 0.9059078871693366 0.001 -0.489575737600772 0.9581581825136017 0.001 -0.2695975020727587 1.000216205392812 0.001 -12.16654212053445 -2.770305489366014 0.001 -0.513199310949213 1.050123967762328 0.001 -0.7502023868828118 0.5983349868753685 0.001 -0.2363527924593528 0.5919456734672358 0.001 -0.5351519604784025 -0.01880994853728809 0.001 -3.261769647085167 2.255890926160858 0.001 -0.06933812681973486 0.6098510615483098 0.001 -0.5471188633242684 1.028021294657862 0.001 -0.7259287376859233 0.2114350515307378 0.001 -0.6694419261553111 0.9394683290447832 0.001 -0.4223978977599639 0.1083354616445375 0.001 -7.333409252332752 5.05701509925241 0.001 -0.7636893329263325 0.646702724264959 0.001 -13.28410013726076 -2.173535113784053 0.001 -0.6414862917239571 0.2174588840021381 0.001 -0.9483406403844767 0.3104379613332887 0.001 --1.348193175094909 2.154588053698355 0.001 -0.4515490699168071 0.2908192079390985 0.001 -0.7964840705373717 -0.002498472759010899 0.001 -8.302055859220962 6.66675014973545 0.001 -0.8250422379683451 0.1902196274491707 0.001 --1.260299920473052 7.440323073508177 0.001 -0.5737963500912273 0.5667595640239858 0.001 -0.3401820707327877 0.8075329984319168 0.001 -0.05794613492072338 1.040927764734643 0.001 -0.634837584184174 0.9293031101934857 0.001 -0.599666061253473 0.7351117750203929 0.001 -3.053776843555375 -9.046563392208288 0.001 -0.9411167092194961 0.2808335213948654 0.001 -0.9115050786608638 0.6375259940264842 0.001 -0.864436047670338 1.016083577471598 0.001 -0.2315974185874672 0.8698039104511878 0.001 --3.30240812651829 -2.1033441214275 0.001 -0.3490982017246859 0.9892500181313335 0.001 -2.423832028458163 -7.064521225699282 0.001 --8.988485881050149 -1.581950209438619 0.001 --3.272978368741512 6.28678077762034 0.001 -0.5352020447688007 0.5471785842709004 0.001 -0.3887063038245128 -0.04836976856782686 0.001 -0.1866113183441247 0.6585018227554059 0.001 -1.021961555677822 0.9206217871460857 0.001 -0.1643296011425767 0.6442724546502127 0.001 -0.1993506904453368 0.5257108328532507 0.001 -0.2217312578072655 0.162975368964727 0.001 -0.1617534671883622 0.7668877463860132 0.001 -0.8350023961029497 0.7358851606393416 0.001 -0.1964147982833478 0.2536713973545371 0.001 -0.729506144888062 -1.976173711564313 0.001 --0.07471460309715254 0.9085080524681128 0.001 --0.0570462181836662 0.9277055478966282 0.001 -0.7457968754926597 0.7670684710385703 0.001 -0.2360906760403275 0.1142998126875192 0.001 -0.8023371145908472 0.5952346634738794 0.001 -0.2930094136673295 0.7618067444791164 0.001 -1.117013878823974 0.8534980543925014 0.001 -0.6161361147143893 1.004016881083343 0.001 -0.3899060536632996 0.9429671995384252 0.001 -6.13734075011322 -2.629742886488911 0.001 -7.518023929113437 -9.031787526900482 0.001 --0.04782550741742842 -0.005832018523667906 0.001 -0.6326031774713905 0.18463357210516 0.001 -0.3194183939520328 0.6450300650932111 0.001 -0.6102375876471404 -0.05739445187002445 0.001 -0.5995668651871491 -0.03648449692427004 0.001 --8.41405355725006 9.017160267772629 0.001 -1.03434116380567 -0.03940839843197508 0.001 -1.021652810861919 0.01408249840189749 0.001 -0.2721485568649853 0.9092795952601653 0.001 -0.9711231784161906 0.001795226972961966 0.001 -0.1001318815302789 -0.1077178822768657 0.001 -8.213598258384831 3.455070414433742 0.001 --3.832300074538279 -0.552472264476604 0.001 -0.9263976801831622 1.045169365723258 0.001 -0.2444056234118595 0.6912500691228853 0.001 --0.05583658999858375 0.9855086260561479 0.001 -0.7458203407006857 -0.04385061434678998 0.001 -4.798028034046517 2.20611099195912 0.001 --5.660929586929052 -8.089850664262336 0.001 -0.1390136852031543 0.8828974157241355 0.001 --0.03105219602398273 0.9218899165358261 0.001 --0.09393929225121975 0.6648103958800556 0.001 -1.130479863555739 0.01917165832118633 0.001 -1.190460142208206 0.03369294709726837 0.001 -1.390901154283543 0.09226284429703376 0.001 -1.242838566404857 -0.09700462408479807 0.001 -0.2010768460225902 0.7407451821363442 0.001 -0.384376064009932 0.5565173961216308 0.001 -0.5502094876905864 -0.04683125834747928 0.001 -4.932975849561672 -2.908945648116909 0.001 --8.028881924183967 -9.023756032537431 0.001 -0.8344103835930089 0.1686241182780772 0.001 --0.02685142294020948 0.7602830239988622 0.001 -0.5997198430604266 0.6561040014470577 0.001 -0.6740717015260865 0.7539029187349664 0.001 -0.4519874903868165 0.1337337241818485 0.001 -0.3977092859391118 0.2592348163364798 0.001 --4.805101336882088 -6.081829484641639 0.001 -0.5380368006267516 0.9419414741299852 0.001 -0.3484122884411834 0.2671857342110067 0.001 -0.3900934593107833 0.6729723138444885 0.001 --2.002577884422664 1.41224968371516 0.001 -0.6299771532215271 0.2711215930509315 0.001 -2.123859288845654 -2.74464219779951 0.001 -0.02590090280319446 0.5577652207847559 0.001 -0.01409684259954008 0.07457388672997556 0.001 -0.7736041432531078 0.675394965596568 0.001 -0.4411278648225198 0.987226010290947 0.001 -0.1431603445585649 -0.04982839282545112 0.001 --0.02872075860324821 0.3402600594642616 0.001 -0.674561385474486 1.43083052107119 0.001 --0.05033376558460761 0.2345582697475677 0.001 --0.09209713548975838 0.7672533162265961 0.001 -0.7027865520258836 0.949965491874104 0.001 -1.040995633392725 0.8435203022194139 0.001 --4.077223686500978 1.735183794435941 0.001 -14.95185675096663 -3.992189984615187 0.001 -0.3084547799248155 0.3410861193151041 0.001 -0.9818814751732405 0.7604206907195367 0.001 --0.02065742834464327 -5.969462818476583 0.001 -0.1412757572251244 0.4269665567033762 0.001 -0.9287777449251927 0.9224407610451471 0.001 -1.056537545776844 0.01389617656974547 0.001 --7.009620156885881 2.039425842487121 0.001 -0.3637078309945752 0.8130209371318008 0.001 -0.9975111616704406 0.9331780502995096 0.001 -0.3811052781615174 0.3792764483672987 0.001 -0.3947396827856773 0.9812344092727803 0.001 --1.61448491314832 -1.340556299293288 0.001 --0.04878486790533172 -0.07035685772505235 0.001 -0.2498902985298936 0.01064556313393834 0.001 --0.08931194033602376 0.5658748230384002 0.001 --0.07689158208472671 0.5834262718220328 0.001 --0.09030521492828306 0.6000377128840112 0.001 --0.09787082144200644 0.6228202580427171 0.001 --0.09209525155064442 0.9054851114004384 0.001 --0.4952463643977179 -6.934032794168542 0.001 -0.8043338163913413 0.46235344710904 0.001 --0.1793777829117212 0.6075497302568517 0.001 -0.509734252148763 0.8455688529378786 0.001 -0.5641841727053141 0.6088595899447001 0.001 -1.041300340222993 0.3531746138731287 0.001 -0.595181023005863 0.3413793026365183 0.001 -1.097674699531989 0.7671733854647368 0.001 -0.08173121205064293 0.4759588123928126 0.001 -0.4301679464542102 0.8741027045628782 0.001 -0.3688663698331227 0.6425719684085218 0.001 -0.2934734917189289 0.3539661150783464 0.001 -1.018294231958215 0.08481997717632465 0.001 -0.5653642902275786 0.3834722974289575 0.001 -0.6883015594740984 0.8822816366467052 0.001 -0.4966645227146316 0.7458263433654599 0.001 -19.06618436209985 2.099606447800743 0.001 -0.1464718251765037 0.1813731856636973 0.001 -0.5833532983257111 1.096390870906199 0.001 --0.0752071898285591 0.6655835748880186 0.001 -0.2228616346276563 0.2955015395353733 0.001 -3.786231511922756 3.874907050784327 0.001 -18.11682020025515 5.558504942638788 0.001 -18.20293246363397 -5.452640747118894 0.001 -0.2854045435112634 0.6757075665563341 0.001 -0.5538490690365316 0.04000158426046296 0.001 -0.9364689904659613 0.7583898480179051 0.001 -0.3418270715167137 0.05154882255666506 0.001 -0.7540871074330504 0.2299897594503791 0.001 -0.6064212790153316 0.02409919639694342 0.001 -0.000851620294750103 0.8247032535347893 0.001 -0.930994525061503 0.9988534662697638 0.001 --7.488446689343003 -2.339791547949029 0.001 -0.2059749257864064 0.2824101097910861 0.001 -0.3556399668102412 0.2428252206081701 0.001 -0.694956207844991 0.8106164922443424 0.001 -0.03145128270516977 0.5331749907657075 0.001 -1.512600884538076 -7.537957786183737 0.001 -0.2927529437801126 0.3167154864096302 0.001 -0.2694123187059059 1.075575535602955 0.001 -0.9572965197574758 0.7825858624360019 0.001 -1.042248020655622 0.2554465475326609 0.001 -3.698758961408318 -8.223993610136192 0.001 --0.05301898849801359 0.6867409995218846 0.001 -0.4451387926806357 0.1571175839614598 0.001 -0.1150819271882726 0.676469882633422 0.001 -7.580398468877172 0.1522656024955986 0.001 -0.648904272763279 0.7923465360386011 0.001 -0.4180201971834094 0.7694876273315989 0.001 -0.03366463231684202 0.4628506715284514 0.001 --4.006783785499273 -5.066952266975938 0.001 -1.058172769001607 1.019027668195748 0.001 -0.2284738637775327 -0.04456324600148904 0.001 -0.8257446435106723 0.8510124970185544 0.001 -0.5729151205334808 -0.01146217086128063 0.001 --0.8915609323463637 -8.328853798840253 0.001 -0.1982700591327781 0.4503373792858603 0.001 -0.4020963558102231 0.8623326035469956 0.001 -0.4308078643155882 0.2298492247911783 0.001 -0.2528436233782738 0.8256282170652131 0.001 -0.4452429344906106 0.6905243598343819 0.001 -0.8592814250946303 0.9847488642563118 0.001 --2.871424581728117 7.440637044242095 0.001 --3.975292511635448 8.073261672702003 0.001 -1.079442995038509 0.3198260068872779 0.001 -0.2118025802361891 0.3124627381607333 0.001 -0.6952824824188941 1.109025500771364 0.001 --3.784641750097876 -7.905865509510978 0.001 -0.3354996384950535 0.1818483250527611 0.001 -0.1628501370601191 0.3170269082047119 0.001 --0.09988030398560481 0.5086745497730291 0.001 --0.1346809444855921 0.559002978943522 0.001 -0.003861757859510459 0.5212738068404049 0.001 -1.057324364780489 0.787689525158106 0.001 -0.6015954029743251 0.5208232448561128 0.001 -0.4790280563099648 1.023701153454312 0.001 -0.8383976759981449 -0.07956467371713155 0.001 -1.023894869278342 0.666560555047475 0.001 -1.005722235998542 0.6530826328074817 0.001 -0.8276342028766861 -0.05436805904832519 0.001 -0.323534890360633 0.4914494418684803 0.001 -0.3510231370814055 0.4913858447675211 0.001 -0.5185230426309593 0.6300165010100612 0.001 -0.3972220437464574 0.7363580292501942 0.001 -0.3109543979024729 0.9348539335084822 0.001 -0.6032927764688077 0.3730210215155473 0.001 -0.8263190613061885 0.5531936911406565 0.001 -0.9819852222736335 0.7010204010618312 0.001 -1.079485192319875 -0.1053105058632268 0.001 -4.772488456747026 -1.618299614768513 0.001 --0.0171771364913575 0.1417918930469864 0.001 -9.604981832032912 -5.845700524306658 0.001 --0.01758161157016152 0.2341846901199362 0.001 -0.7687569635510519 0.4188720127267216 0.001 -0.9471516012369681 -6.331108797129163 0.001 -0.898233040309388 1.009345582651525 0.001 -0.374853283956531 0.9888348176367306 0.001 -1.004057417167153 0.5047150522267438 0.001 -0.7298846394498075 0.884245621564809 0.001 -0.2864828892946286 0.8496863904545828 0.001 --4.678431568774211 -6.958302587601392 0.001 -0.3556671132465425 0.3890391531691598 0.001 -14.8089645446393 -2.566107217037557 0.001 -0.7682942853652041 0.9831777214098014 0.001 --0.1042158914473803 4.846992763736628 0.001 -11.17645937518584 -6.611522110210093 0.001 -15.21015381280379 1.819046044740745 0.001 -0.2870139113184424 0.03740580016992156 0.001 -0.7462002666533103 0.6220336944057161 0.001 -0.788647847016841 0.1753815587141227 0.001 -0.7958235848826563 0.2008898753089499 0.001 -0.7517021711910225 1.027384965735066 0.001 -1.221064995189259 6.72641536845155 0.001 --7.968517923891079 -1.201481567687528 0.001 -0.5193672437143881 0.03841349129149459 0.001 -17.30690160644514 2.687947232011577 0.001 -17.87838785383522 1.437237507275129 0.001 -1.097358698620561 0.8548272826896383 0.001 -0.6709188435714182 0.4890327933145134 0.001 --0.08894145684274583 0.3867891897059609 0.001 -17.00454320194591 -1.739396385444246 0.001 -0.08836316858504259 -0.04820647350090235 0.001 --9.039880124423583 -8.02395058241302 0.001 -0.0001782077190061799 -0.03093959126060519 0.001 -0.5867973065389565 0.7018002232416807 0.001 --2.931334791395551 -9.079764450670551 0.001 -0.2897903680687997 0.2365252884402762 0.001 -0.1332018817138338 -0.1003607759620538 0.001 -0.8931400687058078 0.2228213725062848 0.001 -0.9844665048593948 0.8576732938327226 0.001 -0.8659281457848418 0.7804622700757962 0.001 -0.2052431296865505 0.796120083717741 0.001 -0.6767908238150401 0.8695826340037609 0.001 -0.324291251309834 0.5637672016846496 0.001 -0.1318654756705394 1.017589076941117 0.001 -12.05291744909356 -0.6832657874145954 0.001 -1.009874592288906 0.7425148085256692 0.001 -0.576394335050216 0.1164945777250802 0.001 -13.67232752527311 -3.231271962172212 0.001 -1.056203305561531 0.1543133982186871 0.001 -0.004825738148713968 0.274956172208184 0.001 -6.467468475963648 3.560716225629994 0.001 -0.749012466680406 0.4423246163577439 0.001 -7.275643176661924 1.750416787231487 0.001 -0.6413266863397393 0.8960033766174224 0.001 -0.2179992943824705 1.032480811199004 0.001 -0.1621515060774899 -0.07466633271166438 0.001 --0.5082484088106305 6.691290420670461 0.001 -0.3927559631673987 0.8906465673508468 0.001 --9.006927851367061 8.421203006854148 0.001 -0.7832200626918593 0.398910624820669 0.001 -0.588687993546015 0.5915766612451114 0.001 -0.4205643237007612 -0.1831084889352936 0.001 -0.5630601256157635 -0.09138317402740277 0.001 -0.5319265071089332 0.2122387196137785 0.001 -1.157153961226709 0.9907665738073098 0.001 -0.5873997455489288 0.4821636770213063 0.001 -0.5160852525089172 0.8086391943769684 0.001 -1.07118588261206 0.8953778419231995 0.001 -1.011751726700339 0.6879810878577951 0.001 -0.7521130265544124 0.7981591794628851 0.001 -0.2523737726073252 0.635868085506574 0.001 --6.96825444270115 1.092008532067397 0.001 -6.945386668176819 6.285964406131661 0.001 -0.4257293461949246 1.092796461951394 0.001 -0.427382935171464 1.140998383617239 0.001 -6.249898505991201 4.686624128011568 0.001 -0.4358691910047883 0.9596594459202384 0.001 -0.5990718689007529 0.8545177381256657 0.001 -0.7812594979759401 0.06182158759943617 0.001 -9.84378794723793 -3.552225450832381 0.001 -0.4054811032647447 0.6096459616735804 0.001 -0.710662519821564 -0.06380816106619668 0.001 -0.5093113929192219 -0.04585758182940256 0.001 -0.989565859101541 1.246280544982071 0.001 --0.09491541224593603 0.8687915622450846 0.001 --0.08875969346968547 0.8485195539730634 0.001 -16.1402419546941 -9.288584858619963 0.001 -0.2291385621275288 0.4828422329720803 0.001 -1.076823760720131 1.032605261150643 0.001 -0.4876038616601587 0.1860235843622283 0.001 -0.9261433474406082 0.127307802641011 0.001 -0.5695667811958007 0.4643013592167393 0.001 --0.01219446142629519 0.5980482962547772 0.001 --0.02767095411273646 0.08706634324573327 0.001 -0.9498932271082673 0.07611340941409345 0.001 -0.7659100405749744 -0.0113783069457465 0.001 -0.9210144126008566 0.3451366832003814 0.001 -0.2006143185445169 0.6292211072811611 0.001 -0.08694664851628835 -0.07863548981084902 0.001 -1.053204562592152 0.6574721252790809 0.001 -9.31831670301899 -9.269052655348702 0.001 -15.90279427710466 0.7586495508611347 0.001 -0.9477206242167177 0.01980905980067011 0.001 -0.4547827355278532 0.92013397999533 0.001 --3.255942061807984 -3.32457838864043 0.001 -0.114238703502404 0.7323956539010845 0.001 -0.03997429576125974 -0.07396648993772546 0.001 -0.4070392488694037 0.8276003548235789 0.001 -0.6213798510170114 0.8217109118547297 0.001 -0.3495533884790644 0.4176113338239004 0.001 -3.051252278565011 -5.520190517532042 0.001 --5.356734441950567 -0.9311654317874548 0.001 -0.4675126675574044 0.8857245859056547 0.001 -0.8445423716132641 0.871095490620487 0.001 --0.02778963405968743 0.538197635662651 0.001 -1.029416107654905 1.100622579215222 0.001 -0.5412169452721198 0.9918378631825526 0.001 -0.04965349345715022 0.9541213915169801 0.001 -0.9441829235739082 0.4485340742716601 0.001 -0.05520359758169168 0.3782980288980887 0.001 -0.5369293363610088 0.02133843740413649 0.001 -16.07750058860253 9.31513392241305 0.001 -0.3393161182660765 0.9403527905498053 0.001 -0.8666720599155154 0.670231829948056 0.001 -19.17897783128079 8.435095925908344 0.001 -19.18137035374323 -8.386653847683558 0.001 -12.01975357535241 -4.706035217261407 0.001 -0.8514449748585438 9.118926752158096 0.001 -0.03954648552778803 0.6732699315143856 0.001 -10.9328256394876 4.238432086113592 0.001 -0.5190536321322052 0.1429323920882088 0.001 --0.07253550226189036 0.8730984000148392 0.001 -0.4023048018435426 0.6919949982069187 0.001 --8.166539981797001 4.293014019673764 0.001 -1.096661008344345 1.024419061599746 0.001 -1.042891517384006 1.073026800023396 0.001 -0.335226644443249 0.9735503187409542 0.001 -0.4934447442692967 0.6976262367439972 0.001 -1.044856640585846 0.5375452418073456 0.001 -5.604815569576124 -5.855126125933277 0.001 -0.8640233950012912 0.3669489532184669 0.001 -0.6999224643336061 0.2087302692326533 0.001 -0.1731804173164066 0.014632961388476 0.001 -0.705553987519929 0.3445759509208514 0.001 -0.6702294046893476 0.209180511580767 0.001 -0.880360676843235 0.3612270510409555 0.001 -0.3608530639742097 0.8474869653933805 0.001 -1.552473542084919 -1.628890032457932 0.001 -0.1836186808516378 -0.05279748781483065 0.001 -1.129428542119484 0.3693297578628611 0.001 -0.6439991248461558 0.4405023088828989 0.001 -15.64967961020031 -2.549638902370547 0.001 -0.6828001602309529 0.7857335705564458 0.001 -0.4865341140430269 0.8165291702509534 0.001 -0.7843958643833139 0.2201397338343797 0.001 -0.4387778384246254 0.5091809544140051 0.001 -0.5718348483603782 0.8580274748411099 0.001 -0.01970894380242838 0.6834057654458165 0.001 -0.5662073405272406 0.8812045210630751 0.001 -0.7750840636318967 0.9038768283716274 0.001 -4.896060216550261 0.245543614980983 0.001 -0.544763648572824 -0.0928566236927417 0.001 -0.5397519848959985 -0.1039590773007516 0.001 -0.5376966483042533 -0.1496739319063598 0.001 -0.4793010553683376 -0.1506943035667565 0.001 --9.24160406901499 -0.5870084649164546 0.001 -0.1376272360161714 0.4907240526629385 0.001 -0.6022733909848713 -0.07003502420108151 0.001 -0.5875742560437178 -0.06864293430950891 0.001 -10.44640473159706 -1.269282328629923 0.001 --2.147113051340399 -1.980371898523448 0.001 -0.2690155512294237 0.3513871746661379 0.001 -0.7309018634007877 1.055787947266241 0.001 -0.5625978454884739 0.8214835782851484 0.001 --0.07539870842076266 0.6219290716010283 0.001 -0.372575111729816 0.608151317801704 0.001 -0.07407470084929882 0.8492113360981957 0.001 -0.9300448741569731 0.6633115745001796 0.001 --0.9149569425906172 0.8706173189514529 0.001 --1.780562584543458 0.5578554080394649 0.001 --0.1031624792778016 0.9203782358790504 0.001 --0.05489563287886348 0.8534331015100269 0.001 -0.4920742705741813 0.2210648263897186 0.001 -0.2716097295006187 0.2292170705281886 0.001 -6.558275806235622 -0.9720643162051663 0.001 -7.543296126187593 -3.844355008049735 0.001 -0.09232929540975449 0.6578016333194432 0.001 -0.3458346820512121 1.068550798570311 0.001 -0.8087060235212157 -0.09627059746331673 0.001 -0.03474851741292669 0.1008301781214338 0.001 -0.6033034295953152 0.9871247561965991 0.001 --6.134598431923787 0.1264031773784663 0.001 -0.8416380184863574 0.1529447016614283 0.001 --0.0350041033964789 0.9643459389582985 0.001 -5.613756737624264 9.234301089333862 0.001 --0.06782085998482482 0.5571773339865645 0.001 -0.1035183296502183 0.7915329935416135 0.001 -0.0108752298254922 0.1431464670316605 0.001 -0.5716416857221387 0.6705821387981652 0.001 -0.564230370563962 0.6456120665461385 0.001 -0.3745776101055893 0.7116888797349445 0.001 -0.7686006194483097 1.043217358995022 0.001 --0.01413548459106631 0.6978685042373076 0.001 -0.9584344490039884 0.4885549748770223 0.001 -4.308695115458109 -0.8934571381647711 0.001 -0.3706421136947555 0.1014544857621554 0.001 --1.861071188735614 -6.583548062975553 0.001 -0.326913196439841 -0.05070695329446635 0.001 -0.8185779224618142 0.5206955838894358 0.001 -0.6646595788709972 1.041743120027519 0.001 -0.9854740527180659 0.7327650047538656 0.001 -0.4219567652563221 0.2575150059092022 0.001 -0.591630751509828 0.2223816479924787 0.001 -1.068720078718058 -0.06809794568879637 0.001 -0.4630344785754185 0.1493056308215013 0.001 -0.5133560676944665 0.4592890678942567 0.001 --7.0944339598977 4.93622370269353 0.001 -0.06633475161791637 -0.0378411194291493 0.001 -0.4701748508687043 0.5063916225629144 0.001 -0.05308862937197689 0.1507933590643531 0.001 -0.07217384493598926 0.5410388813932396 0.001 -0.8632301800775743 0.483225076876485 0.001 -0.16601133039951 -0.0260340219976684 0.001 -0.1833948956530741 0.7220860520750404 0.001 -0.3793528015380992 1.013172042527815 0.001 -1.218900078473384 -4.218007857602957 0.001 -1.091918008315763 0.04542553397008554 0.001 -0.3876814706498106 0.7770591239493805 0.001 -0.5384918776035701 0.2795690479647188 0.001 -0.228461275824213 0.3284283634201002 0.001 -0.6112012031225049 1.018419503530684 0.001 -0.3305844562885591 0.6882766865550968 0.001 -0.1044298693773777 0.3891594892550946 0.001 -0.7937406951924105 0.3551669986472444 0.001 -0.6421123238305465 -0.08526915846614969 0.001 -0.7319063409212762 0.5285247999061669 0.001 -0.8673877323288927 1.043599259687903 0.001 --9.196828605350706 -3.301384045054147 0.001 -5.583286233588859 8.132471543910805 0.001 -0.06807556773851234 0.2280801100239216 0.001 --1.30868236813467 -0.2513858548112706 0.001 -14.58477324813968 -3.496473777354255 0.001 -0.1600833356007459 0.04098029924967549 0.001 -0.6526270305659914 -0.07113335633736173 0.001 --7.549755536876352 -6.288554751820412 0.001 -0.01033947757767466 -0.09439887653709933 0.001 -8.773722911413017 9.26269087037813 0.001 -0.9786556505342113 0.806092979728365 0.001 -0.290227828523402 0.100162265157785 0.001 -19.40009437244521 -0.7632613736996375 0.001 -0.4681894188826877 0.2107628197445974 0.001 -0.2298698522716391 0.5704012770088063 0.001 -0.4041725711484007 0.4664098107001697 0.001 -0.2620233535329712 1.028804954970954 0.001 --0.07717696875607802 -0.1051125224238978 0.001 -0.1792278125044822 0.5619382969071939 0.001 -0.6353386606066176 0.1293262969112513 0.001 -14.34816966033572 -5.368641609573531 0.001 -0.2427107075965296 -0.0170986232998251 0.001 -1.0416427565807 0.7334208373655253 0.001 -0.8316973523487755 1.017021737873027 0.001 -0.1544925205906184 0.4695840537792904 0.001 -0.1098038778626482 0.01391983930047576 0.001 -0.02031268945044444 0.7696802229891397 0.001 -0.5371970303124176 1.016858543928475 0.001 -0.9794025731037338 0.3476141402728243 0.001 -0.02144471398507077 0.2410417737536795 0.001 -0.003433265802442818 0.5931083264251769 0.001 --0.03038914755032016 0.3085299621848163 0.001 -0.7446649306127124 0.8598709399387329 0.001 -0.8539137357014869 1.055244399760387 0.001 -0.8905636996704981 0.8012536813453325 0.001 -1.75618136766811 2.274633626060107 0.001 -0.5818985327294143 0.2650204081253416 0.001 -5.462440840971893 4.083959135789006 0.001 -14.4353117975146 9.190464844208504 0.001 --1.626533794430057 9.202604612403608 0.001 --0.1048618810977648 0.808031130055064 0.001 -0.2935567156011654 0.4656719331138763 0.001 -0.4224932800702474 0.6711203396684398 0.001 -1.202471907535681 4.12099957902988 0.001 -0.8577004877775294 0.9139334653068288 0.001 -3.495716798300894 -2.828691628203357 0.001 --0.1131472998771782 0.9503766594758615 0.001 -0.2932604927844182 0.4956401524013374 0.001 -0.9347192678887351 -0.02698572928244393 0.001 -0.4433464113900112 0.9344392938046788 0.001 -2.395358372588628 -0.7408322909397657 0.001 -0.02502720401911674 1.09311583591084 0.001 -0.921825636005543 0.3753226113896986 0.001 -0.8991252913480671 0.7054628799146986 0.001 -14.53362584591297 5.345952658426843 0.001 -0.001134272048471755 0.3339836707550674 0.001 -7.259979892813922 -6.676312923414963 0.001 -0.6687163108422467 -0.07265484119130181 0.001 -0.4802287301478788 0.9906163887994082 0.001 -0.09177299959379245 0.1108211866434551 0.001 --0.167744427329139 0.9386873195678884 0.001 -3.35626571852775 -7.44946443067122 0.001 -0.6905483300801292 0.9752198412703998 0.001 -0.6431108372738661 0.492343907900206 0.001 -0.4369935500353715 0.2047752987134729 0.001 -0.7108357882097707 0.4046083024632793 0.001 -1.086402125061597 0.8006153651200877 0.001 -10.73531643815901 7.580895753148545 0.001 --0.05090101936713343 0.1095458239915713 0.001 -1.10510269291171 0.3382619026835906 0.001 -0.8832556993874583 0.5001870587815461 0.001 --6.14126136123951 4.081140175921711 0.001 -14.48636102314864 -9.05855902802152 0.001 -0.4566313610455313 0.647894918000839 0.001 -0.7114064996517724 0.1342589001799741 0.001 -1.103652338749768 0.2591307441414509 0.001 -0.06369726397560692 -0.0634706396793665 0.001 -5.772311737062023 -0.7384933274306886 0.001 -0.9834971551690971 0.8903615352899139 0.001 -0.2564304228449178 0.5078521109387485 0.001 -0.2600077988470996 0.4850119876324748 0.001 -1.050499637168605 -0.054189892883446 0.001 -0.5835410715383201 0.6325170009364387 0.001 -0.001783082882889187 0.9849191014651748 0.001 -0.2577911872384874 0.4023982503358973 0.001 -0.2280223803373545 0.3624552519783991 0.001 -0.9091920370054715 0.1092255705461514 0.001 -0.6619949068514975 0.3214865685318121 0.001 -0.8231813180133467 0.8134477890576437 0.001 -0.6136893038623671 0.4279673730415542 0.001 -0.2510318096989027 1.1019501969846 0.001 -0.4363440287028461 0.5772359096936153 0.001 -0.5957518237411966 0.09459706035225408 0.001 --6.565207557130075 3.094900688853008 0.001 -0.08990207056736516 0.9261896974752516 0.001 -0.6980009427518309 0.6594467082096954 0.001 --0.03240636994564889 0.8966583893989737 0.001 -0.8386604401644346 0.4713298602232137 0.001 -0.0298634370566577 0.5890981386741556 0.001 -0.4321217013223136 0.4055132940554752 0.001 -0.3936892638891403 0.3974832158254067 0.001 --0.006396553121712865 0.6469226124219976 0.001 -0.1120468220023299 0.84231461434849 0.001 -0.4684459118529874 0.08975475796887483 0.001 -0.4675179935316762 0.1208638421869524 0.001 -0.8507521113638836 -0.03192776415818097 0.001 -1.007702053532325 0.3526164167214915 0.001 -0.6347512953496107 0.401544059670814 0.001 -0.5383403559105361 0.3026246091101211 0.001 -10.57700583595184 3.489124472868084 0.001 -0.08096338997421909 1.09353486171181 0.001 --0.09905003375962354 0.2116819604274527 0.001 -0.4454214968294839 0.2625333689386808 0.001 -0.7941029633699798 0.4401377669940423 0.001 --0.006678586577442067 -0.01518390468295184 0.001 -0.1442536222464184 0.2980146846781553 0.001 -0.7417490387196 0.3384218953671949 0.001 -0.7102407308656998 0.9215507945531702 0.001 -15.81238223343394 -6.702456485643512 0.001 -1.103241892287284 0.8836845012609971 0.001 -0.5017876803403221 0.08999238782222879 0.001 --0.04408597676723033 0.1495064952045013 0.001 -0.6525192165025147 -0.0006874328418949904 0.001 -0.7059664676764333 0.7464823247906336 0.001 -0.2881635212052857 1.097296027935671 0.001 -0.01846258135180009 -0.01723943470060402 0.001 --5.388129621590625 5.902075045510418 0.001 -0.02095608013872518 1.062279204309393 0.001 -2.766363833682563 0.8328015345535302 0.001 --5.506153158083522 3.218898314261664 0.001 -0.8425423121796057 0.5585835354518839 0.001 -15.64728877269609 6.513776804572331 0.001 -0.03689496103181349 0.5473350342733775 0.001 --6.062497236072337 -4.256226549239607 0.001 --0.09596903766846641 0.8899262736255511 0.001 -0.4278315177919144 0.1373664194115097 0.001 -0.2927674275910861 0.9549365510653981 0.001 -0.4552888518676247 0.6214806162828818 0.001 -0.03439754860370845 -0.03643604842474971 0.001 -9.958919969002357 -9.49022087454178 0.001 -1.048902116470286 0.326715808367822 0.001 --9.175013630857775 0.05671605461087931 0.001 --3.122179339991003 9.136773586607982 0.001 -0.04526325127978215 0.1944317396523422 0.001 -0.6839707724410702 0.5713108037043885 0.001 -0.2007242965951276 0.3271964713249306 0.001 -0.6976143975682945 0.112017775895614 0.001 -0.6144515128441368 0.5016407821571744 0.001 -0.2908353776077647 0.3855458059200272 0.001 -0.2734288257692464 0.8055401878675247 0.001 -0.09426883453344592 0.2021797690845128 0.001 --8.203975360737884 7.622265478278671 0.001 -8.777762051279668 8.461656925219593 0.001 -0.04150943499234853 0.6464045500094229 0.001 --7.293044723212749 -4.337020458482763 0.001 -9.126398348878666 -8.125948125428682 0.001 -0.9166122283691358 0.733099668690001 0.001 -18.90013959419867 -2.445260959181074 0.001 -0.9752361218199906 0.6537846507254284 0.001 -0.2515275885642637 0.2917876659266809 0.001 -0.4386258588977298 0.1209083339982552 0.001 --0.04354113822940969 -9.278495795940596 0.001 -0.05039048216118368 0.6933604472438416 0.001 -0.2697921111076939 -0.07813618494972299 0.001 -0.2695418235522796 -0.1044015366787261 0.001 -0.247302821344959 -0.1261647658469016 0.001 -0.2951788599064696 -0.1144985091333556 0.001 --0.0256520689197784 0.4370192706377137 0.001 -0.6046810416342192 -0.01109711746212147 0.001 --0.10483765320993 0.2944105084556761 0.001 --0.09904484645499026 0.3177117722498118 0.001 --0.1089682003533508 0.3284424047463818 0.001 -0.2980346796940326 0.5437265881273164 0.001 -0.3538044655005887 -0.1081901078676993 0.001 --0.03567925805846997 0.8012504009817417 0.001 --0.0442066146147655 0.8255715234273761 0.001 -0.003960350879463675 0.4441514984770295 0.001 -0.6261477504746422 0.6006282215293466 0.001 -1.068228241050651 0.131075345992938 0.001 -0.8326074979253126 0.986098458815913 0.001 -0.6725588743608512 0.07863651739276255 0.001 -0.1962742735022617 0.01842864077218737 0.001 -0.4090078682088834 0.5808113446871074 0.001 -9.816780441498841 8.264054922413598 0.001 -8.398378872577203 -3.637867995935083 0.001 -5.65310359983955 -1.485843879706497 0.001 -0.6087797863682904 -0.08359326299835573 0.001 --0.03594514532355966 0.1750919415692389 0.001 -0.5632208182790743 0.3509072670083918 0.001 -0.3739155976399762 -0.1118534666087589 0.001 --0.01123164336835232 0.1641253570375305 0.001 -16.16746434792528 7.482976771776231 0.001 -0.7533449939354185 0.9959394248669444 0.001 --0.05400672223942483 0.9694130085066848 0.001 -0.5280126258338179 0.5612367009321763 0.001 -0.5047883304057083 0.9940792840028464 0.001 -0.8883613750263545 0.6574476935827982 0.001 -0.3448210158026064 -0.07366246747833859 0.001 -0.50027890460449 0.8036712206779484 0.001 -0.5812945732858535 0.4485440292343202 0.001 -0.2017288323582006 0.4772919065723223 0.001 -0.8857104058228521 1.061963882607688 0.001 -0.7396171402077144 -0.02024602034065589 0.001 -0.2379303600641832 1.007836361280384 0.001 -0.06194326020621643 1.010845386835153 0.001 -0.07648928392387348 0.4553117747674356 0.001 --0.03951995501726305 1.067182917048727 0.001 -0.8160941392529246 0.3687441323675544 0.001 -0.3268035511052961 0.3323723403112119 0.001 -0.314671633223387 0.6296109717333199 0.001 --8.083493965766062 -3.928260442920831 0.001 --0.02840157670708104 0.03733466132705887 0.001 --0.0164776079664663 0.008471580461626303 0.001 -0.2961274773387005 0.8059956190462275 0.001 -0.9557215198124032 0.8303487692785689 0.001 -0.6486252317956794 0.8250558576398134 0.001 --0.07063261577459053 0.1901285459642657 0.001 -0.611759942309111 0.4627203504985387 0.001 -0.1265437077312765 0.5698511848512714 0.001 -0.5031613986883793 -0.008786917456815377 0.001 --6.559759028223468 7.449253676259016 0.001 -0.0760463110088293 0.7766025979528253 0.001 -0.5927678158897266 1.064953653119419 0.001 -1.561852976818329 -3.270273861619489 0.001 --0.004528439266395805 0.2515508954118513 0.001 -0.5911383964777163 0.8233723227422104 0.001 -0.1774256187041241 0.5188692266183769 0.001 -0.8874466748330345 0.4043718719812988 0.001 -0.9011723452657456 0.9636475727882443 0.001 -0.31506024467295 1.083022663896226 0.001 -19.16608870988672 3.825193194226088 0.001 -1.111619066846387 0.03525139862145586 0.001 -16.9631695724183 -0.9547505452992912 0.001 -0.2192876701020317 0.3868527820645089 0.001 -0.04262362747399559 0.8226744671552548 0.001 -0.350606780867312 1.018439409957086 0.001 --0.07970125426619522 0.7240837309426754 0.001 --0.07065278373021859 0.7493840252359409 0.001 -0.6975069526885069 -0.01316908744437163 0.001 --0.0943789035914496 0.4856753818578069 0.001 -16.41416943820321 -0.9221588436680762 0.001 -0.6371243883041218 1.093039817001565 0.001 -0.4505161883361419 0.4498900892836844 0.001 --0.0488681572371432 0.2102231941191471 0.001 -0.7351853914957316 0.4165076263718676 0.001 -0.3573740599856611 0.1220594377350371 0.001 -0.5261165432578119 0.8312346128706505 0.001 -0.4899088462460988 0.2477010012008902 0.001 --0.007791277348802175 0.3102739956227186 0.001 -0.4314379840920679 0.9205706599083893 0.001 -0.93380317155279 0.8570559295004252 0.001 -0.5553787137841579 0.7158218892278405 0.001 -19.42117212200689 9.086696892514162 0.001 -19.43060340570777 -9.089563327819375 0.001 -1.052610901895332 0.8107475654135394 0.001 -1.042625019538626 0.8006617254613756 0.001 -0.2289467118638427 0.4517074350927829 0.001 -0.7786339775145504 0.7159321506076284 0.001 -10.0999212437932 -8.134371895299374 0.001 -0.9024914956427226 0.8421455622229828 0.001 -1.007274406787108 -0.07271027009202916 0.001 -12.81715649426559 -5.71345048295814 0.001 -0.4025818030636187 0.0624916653596068 0.001 -0.4675013359012093 0.05757138466289902 0.001 -0.4926226382136655 -0.02919103688786425 0.001 -0.4859626144985825 -0.09347286087083552 0.001 -1.005898742101872 1.045432379589489 0.001 -0.05524489609264628 0.0798328722865328 0.001 -0.5187508494648159 0.2804955975125116 0.001 -12.04014855379172 2.915272710432183 0.001 -0.6453017859283303 0.5454635697848715 0.001 -1.09893776372861 0.5129084215652541 0.001 -13.99664484082971 -7.994338464922977 0.001 -0.9255617481718558 0.6867175861714228 0.001 -0.6451116406749795 0.3858945779998249 0.001 -2.62931055464253 4.303127737381381 0.001 -1.120879660405573 0.4452995147011318 0.001 -12.98944917119186 2.382654768795303 0.001 -0.893893869408565 0.8680278554611754 0.001 --0.03286683713476306 0.2478634586278891 0.001 -0.2743632531313548 0.5229195473284809 0.001 -15.80815033838983 3.626581000676809 0.001 -0.2509949207297853 -0.06064826675026212 0.001 -0.1288714565549208 0.7980576134106876 0.001 -0.004407465171097659 0.9606763427508795 0.001 -18.21890619299941 4.030916674437076 0.001 -0.01490266573446954 0.20210224504629 0.001 -0.1194391417827671 -0.02385148200791558 0.001 -0.813831887419188 0.6812815390631785 0.001 -0.3123741100353044 0.5020705990222321 0.001 -0.824739242249141 1.083025933009222 0.001 -0.4906313942629233 0.004781508443222202 0.001 -1.013929749596318 0.8218449069503584 0.001 -0.6299524576189732 0.460274449907901 0.001 -0.8567998320236004 0.321737585551189 0.001 --0.0354713438444502 0.6697919299533682 0.001 -0.3904725561574067 0.1142492426117132 0.001 -3.802777605506023 9.058903972916616 0.001 -0.4566791060818727 0.03073399796145911 0.001 -0.5391829130442568 0.6849217987688198 0.001 -0.756726634165951 0.03983450526613452 0.001 -1.77267885938707 -0.9720526831416421 0.001 -0.1419465713478723 -0.0304551139064292 0.001 -0.6182770103205187 0.6406304144744851 0.001 -0.6352592006597551 0.6268382265397452 0.001 -1.027927180105113 1.044660045913207 0.001 -0.9566769082279669 0.8709860690760505 0.001 -0.3329597411810071 1.11967248464186 0.001 -0.2688044221412304 0.3051354902652072 0.001 -0.7323961753522468 0.02735127479648403 0.001 -0.4052527065149342 -0.009971985627693835 0.001 -0.912252701541878 0.7797860003609061 0.001 -0.2501905438365081 1.055080568895854 0.001 -0.3499969062030049 0.5764777835261656 0.001 -1.033357735361897 0.3780243936178208 0.001 -0.2746773891410613 0.0490073770623943 0.001 -13.83865241017728 8.230178182718149 0.001 -0.9984181278533912 0.9772980440266832 0.001 -1.073917701307576 0.6443198692853612 0.001 -0.2570327350623259 1.012873453135497 0.001 -0.4213481806068977 0.1931549423150881 0.001 -0.5360288392191099 0.8653271559616373 0.001 --0.07282826581528498 0.8143274896368725 0.001 -1.072089243230244 0.5568938655838137 0.001 -0.460380312782061 -0.1168263102697475 0.001 -0.8164372550880583 0.6189251390453089 0.001 -1.000761471244434 0.8255134609922363 0.001 -0.8035217122935596 0.7714919604632541 0.001 -0.05304892049333987 0.4040907684487054 0.001 -0.8373271565136596 0.7704827861627918 0.001 -18.42754018515865 3.122450389211549 0.001 -0.08573494688490273 0.5913915403572987 0.001 -0.5988301561414673 0.1556936373729346 0.001 -0.6035544268868036 0.06172884004101189 0.001 -6.036246696238408 4.134188341784547 0.001 -0.4326878807335857 0.007459597343122893 0.001 -0.1545615598130203 0.3421886115859357 0.001 -1.085713067602374 0.9634008280061255 0.001 -0.9096930054610421 0.9886398495797768 0.001 -0.7293955182017827 0.9869349515895951 0.001 -0.9795580408085621 0.9073802500092254 0.001 -0.1284795385896336 0.8233314880900648 0.001 -0.844303595404603 0.9628988296257224 0.001 --0.05133510330969268 1.035467810763981 0.001 -0.5891202328729537 1.041372106407507 0.001 -0.9967380692568618 -0.04418708710076308 0.001 -0.01030740189134293 0.8543126983195322 0.001 -0.02166010612006079 0.8087317361034343 0.001 -0.6293013638702272 0.4337811979996667 0.001 -0.2192976498024258 1.094981720534212 0.001 --0.006789052732041972 1.024659021459799 0.001 -9.052913829501861 4.242708496489239 0.001 -0.7218230952904486 -0.03576793277278235 0.001 -0.1840007315071019 -0.03716585486059888 0.001 -0.6633634910427539 0.5834995274305691 0.001 --0.04411582117168213 0.1950255435599282 0.001 -0.7534728784812624 0.8291325001399836 0.001 -0.9613319018581765 0.715394093678862 0.001 -1.104239219372022 1.096710257904162 0.001 -12.36569955469531 4.593003916853243 0.001 -0.9727833125953081 0.4806442590760974 0.001 --0.00380381271601719 1.063582388772831 0.001 --0.0009752720678936971 0.2934086340874666 0.001 -0.9067132365837818 0.4666073572787422 0.001 -0.8095980054841615 0.1558626656334011 0.001 -0.4479870090650451 0.8677076543710962 0.001 -0.03118205268968761 1.075595625922502 0.001 -0.2520859252482444 0.5683380171409952 0.001 -1.009267002240033 0.8444804907346785 0.001 -0.7781901617837274 0.3737486798979384 0.001 -0.7667243114897265 0.0871843505760462 0.001 -0.226392484660178 -0.104661784175721 0.001 -18.33354268803418 0.4268053783655325 0.001 --0.09095652198521496 1.051883877581653 0.001 -0.4676783378214978 0.8660715317201947 0.001 -0.8219857125904857 0.2484155499658658 0.001 -0.807232181677449 0.742938743650895 0.001 --0.1182843591889337 0.4496044535163482 0.001 -0.6682225130454201 0.6434316465218378 0.001 --0.654776661103921 7.345002338479638 0.001 --9.434002850856153 3.045308670066341 0.001 --2.314492112652577 -4.905808070016811 0.001 -2.491205434166989 -4.728339217359546 0.001 -3.897373660784888 2.075693194530234 0.001 -0.3287678765885685 0.4136235620044806 0.001 -1.000153160632483 0.3248868652032977 0.001 -9.558172852950706 9.256159700946272 0.001 --9.258157610440573 9.259039188160301 0.001 --2.685163269960619 5.163683091237494 0.001 -0.01476261330027425 0.9925321615560255 0.001 --0.3891015894476906 -3.495348170853045 0.001 -0.3763406209577965 0.3114737143874716 0.001 -0.9908855195441209 1.098425829313474 0.001 -0.4336165603483545 0.5522395680421798 0.001 -0.1150151878096641 0.8650892023833266 0.001 -0.9724954618799556 0.9545627157646267 0.001 -0.1335611458544947 -0.01309377737686458 0.001 -0.7532356937675814 1.090787196568914 0.001 -0.7026809704208775 0.4919322052526455 0.001 -0.708904083299104 0.1585720781137499 0.001 -0.4516351907858436 -0.02420161381960647 0.001 -3.184228865275823 2.84566154343993 0.001 -6.398251593154233 -8.001928467974672 0.001 -0.9564095902012193 0.1578574310802009 0.001 -0.6171621767063811 0.7936324852230792 0.001 -1.285318477449683 0.946269392203163 0.001 -0.6386724083186208 1.233141173698402 0.001 --0.3390063620276783 5.78432624470176 0.001 -0.3559665266030929 0.6934630713734035 0.001 -15.46951179925328 -3.740481973550131 0.001 --0.05814274474653034 0.8927214447125055 0.001 -0.3681431913505561 0.6761227752694434 0.001 --0.02442435297965723 0.2767028593187282 0.001 --5.32200932568231 -1.920782775354262 0.001 -0.2253187182061292 -0.07190436804711391 0.001 -0.5091275450429482 1.019006042512907 0.001 -0.408582808456372 0.4223763666144168 0.001 -0.06046787080812914 0.585167930846716 0.001 -0.3094287065515564 0.7826250676728252 0.001 -0.3417299652233796 0.2108247294530371 0.001 -0.1816676323476148 0.8655882899782024 0.001 -1.046274142826415 0.3980585080552848 0.001 -1.020255813512517 0.6334335485050621 0.001 -0.8466334828735843 0.7130491616477294 0.001 -4.877853910577635 -5.165999905365104 0.001 -0.3901031504495231 0.5282790204834789 0.001 -0.5900044430512806 0.9372515367934012 0.001 -0.8670652363509264 0.5617187915240757 0.001 --2.135991860049681 6.699157718788075 0.001 -0.8639735630665503 0.6378883371250426 0.001 --1.475180433992987 4.404430548500377 0.001 -0.1703843207308177 0.44270213371374 0.001 --0.4540764375587499 -4.972410729618869 0.001 -0.591591009922499 0.7556844464706578 0.001 -1.114470748530845 -0.008996205077734994 0.001 -0.3779328882652872 0.3518816270220597 0.001 -0.7492537227052627 0.937332890051022 0.001 -0.1188356123679641 -0.0664341870804793 0.001 -0.3750787068723074 -0.07171317833792591 0.001 -1.0440078511077 0.08451917344457263 0.001 -0.05196552039656915 0.4427757254413033 0.001 --1.77563734875267 -4.123765343083278 0.001 -7.956033657350556 0.1944725519182986 0.001 -0.1661094216960859 0.2061540159202146 0.001 --0.01689967055313783 -0.3745548623787127 0.001 --1.757965118639924 3.040757335044328 0.001 -0.4450119722372696 0.4748139950885583 0.001 -0.8728786004692483 0.443891077065808 0.001 -0.5194787414335124 0.3651899585972604 0.001 --8.436952609458936 -2.726253388825421 0.001 -2.558400887662611 3.32876381719307 0.001 -0.9534969529709691 0.6412588716420392 0.001 -9.930472216296558 4.456786130130669 0.001 -0.9101645679088276 0.8172243327122222 0.001 -0.3843602583308797 -0.02209764836160789 0.001 -0.8002235844019456 0.4131772647408432 0.001 --0.02164380556439795 1.046866549158034 0.001 -0.3465182484728069 0.1946248396971732 0.001 -0.5963467977168135 0.2906765837991147 0.001 -0.9138341400723905 0.4392099771884809 0.001 -0.7341338019043637 0.11206716321576 0.001 -0.9758324951784483 0.7156950303875942 0.001 -0.7140487426004879 8.371211076690832 0.001 -8.409704656516624 -4.570961941608299 0.001 --0.07379648723736276 0.643621918633183 0.001 -1.051788253992463 -0.02314482268974721 0.001 --5.638850830934981 9.312161058824852 0.001 --4.265926619520437 -3.242694544721529 0.001 -0.8029816237904494 0.6595304397877209 0.001 -0.1256521916580455 0.2580180642044703 0.001 -0.7976323632063856 1.069828400626325 0.001 -0.4270174443171613 0.4835737879131496 0.001 -0.8470836262777051 0.2010428082921774 0.001 -0.5324187755766224 0.4310556992576573 0.001 --5.716959814817447 -9.134015442749302 0.001 -0.4947409323534525 0.6108268726164396 0.001 -0.6026891015469427 0.9612150112731608 0.001 -0.2500397266991482 0.7819850836201699 0.001 -0.1246432235748472 0.3014213791500217 0.001 --0.06897577770442025 1.095887602740569 0.001 -0.9375296532990981 0.2489313738761192 0.001 -0.1999282405013848 0.352023615243354 0.001 --3.217726894734954 -4.380313863891306 0.001 -0.8844461802907649 0.4341294588031855 0.001 --0.02117228608701804 0.8358098598252287 0.001 -0.2331183453850262 0.8094226577098927 0.001 -0.3707512759373242 0.5820356652876917 0.001 -0.7567027652023347 0.7049989164079048 0.001 -0.3946598963386674 0.2745561488140953 0.001 -0.05191972870358415 -8.608466264623374 0.001 --0.1031044648625869 0.05843776030426209 0.001 -0.3634628366377431 0.7820969340733036 0.001 -0.4086662122580188 -0.05153160977096217 0.001 -0.2241907359532729 0.06135438857398592 0.001 -0.5846700245931666 0.5045524431046179 0.001 -0.1271064308594214 1.117680252385818 0.001 -0.6317578830276254 1.034556935822309 0.001 -3.190732074664473 8.022659843671372 0.001 --8.156536744105194 -7.076391671587808 0.001 -0.5264992214157886 1.059010579841061 0.001 -0.8701380807765751 -0.005659979923426409 0.001 -0.9199738999280165 0.4079007211139358 0.001 -0.3072778010302978 -0.09149569722771562 0.001 -1.026470702579327 0.8627142146192449 0.001 -1.035339121011989 0.1001379811660832 0.001 -0.3767050284562551 1.059105746012347 0.001 -0.1886971098738967 -0.09603762148100303 0.001 -0.1998680700324866 -0.07188033073373568 0.001 --0.03592078286816035 0.3861619182626662 0.001 -0.3580368630424647 0.5568344618425816 0.001 -0.7268061540666899 -9.295708665627902 0.001 -8.86150894928646 -6.251704352025702 0.001 -0.03174225136805854 0.3272636054274665 0.001 -0.8094828015384445 0.9050652617785485 0.001 -12.19902467064077 -8.334421018242388 0.001 -0.4341966200444809 0.3393978220651242 0.001 -11.20997216741088 2.804044574903888 0.001 -0.193892416171531 0.3798784608625451 0.001 -0.6704393880682096 0.3543447253748888 0.001 -0.3547154424578157 1.094392379113612 0.001 -0.1542591165133803 0.8526462383149015 0.001 -0.9564444438857305 0.04138402465239644 0.001 -0.8958773100543691 -0.02875504260934753 0.001 -12.94931401463806 9.501720500162101 0.001 --0.006096682116399862 0.05091948585845706 0.001 -0.5164983811480395 0.1785238766099319 0.001 -0.09051590322087075 0.3242697299330916 0.001 -1.774631973547626 9.095821499475548 0.001 -0.1021504336940191 0.1563464023564275 0.001 -1.032031789126122 0.4685641685858398 0.001 -12.96146492253799 -1.124652999421157 0.001 -0.9794134143265902 0.5547465408113073 0.001 --4.366691380574006 -2.191103834524453 0.001 -0.5088325196711028 0.3404323243193862 0.001 -9.977734397012039 -6.554098874787448 0.001 -0.7985284647265269 1.044776996130497 0.001 -0.9862622925029544 0.1830740548841286 0.001 -0.6071060071315939 0.3206912749288912 0.001 --0.01264336595454272 0.09186003087119554 0.001 -0.8740931597292986 -0.05488190265159681 0.001 -1.134601229962439 0.6386454422608208 0.001 -0.1066236080232103 0.3252542573153707 0.001 -0.3544953481865145 -0.04476503791000654 0.001 --5.004337911068982 9.477821308871318 0.001 --7.314993091720609 6.257961655244352 0.001 -1.846310450314371 2.866159239415613 0.001 -1.117829686327658 0.1019784809243096 0.001 -7.426499679884867 4.067725358169524 0.001 -0.7281199405376613 0.8277364139217124 0.001 -11.72306817078561 -9.185373705516605 0.001 --0.04510980722668219 0.6424522126813972 0.001 -0.3535216432073459 0.7286436772796787 0.001 -0.07881788557096972 0.04644079929671022 0.001 -0.6905050164331269 0.1784328396856335 0.001 -0.7030444923474167 0.4290268242271242 0.001 -0.07450450181081317 0.02252664824157037 0.001 -0.5202051526554532 0.8913324447469368 0.001 --0.1234646991279848 -1.498103620096371 0.001 -11.39451956737456 9.226751029079445 0.001 -0.1333656757494565 0.4509676852328215 0.001 -0.3247601402760939 0.6664211185604699 0.001 -1.071351112352742 0.3854523260450177 0.001 -1.078435154749443 0.3573535043523121 0.001 -0.214945251483463 0.599320618711035 0.001 -17.66648048365973 4.518288136101808 0.001 -16.59031136134645 -4.129871445945652 0.001 -0.6479493893929633 0.571976669869213 0.001 -0.4491934170508419 0.4104842604499033 0.001 -0.7569062894909286 0.9733327386375602 0.001 -0.1252869485272163 -0.04652449613602686 0.001 -0.8129078265177598 0.1252630452690358 0.001 -0.6495401914938527 0.04382645779892536 0.001 -0.1350337888034109 0.01595142911985888 0.001 -12.62798109109423 0.3896541414656993 0.001 -0.3694580364706588 0.7505379330028361 0.001 -0.03822617380082326 0.7871414034483059 0.001 -0.3424781272020611 0.6049013512925832 0.001 -0.2298373130185615 0.6436811991481319 0.001 -14.71793561369016 3.564858583972694 0.001 -0.1375753654066265 0.2771698433903336 0.001 -0.9147112339663896 0.1776275544638454 0.001 -0.6136467203453284 1.088176165208669 0.001 --0.04562155622782141 0.3742419222435517 0.001 -0.5018790343792797 0.3823973360484836 0.001 -0.3223999178048598 0.7231019765133682 0.001 -0.9104957114066978 1.040911873726189 0.001 -0.03669225353647303 0.4060795279236145 0.001 --0.0105444712362293 0.6751690689841949 0.001 -0.5574837107744998 0.2807996957874028 0.001 -0.8908415652661875 0.3735187541817171 0.001 -0.979948326383552 0.3894443276560609 0.001 -0.412139319316028 0.0339747056332175 0.001 --5.26756190222695 -7.67490496214807 0.001 -2 13 0 0 -2 17 0 0 -2 21 0 0 -2 25 0 0 -2 26 0 3649 3850 3851 3852 @@ -10152,6 +6498,6050 @@ $Nodes 6237 6238 6239 +9.545241594889406 0.2826905789312277 0.001 +-0.2341598795305072 0.2304464446628514 0.001 +4.702790840103074 -4.120870626435569 0.001 +4.710041598394258 3.842095245107387 0.001 +3.67839197267467 0.06330762691502217 0.001 +1.780765682645565 2.64889714281597 0.001 +1.729380341795453 0.5924853168403524 0.001 +1.139595618380878 -2.6208970158134 0.001 +-2.988909952287409 4.951884770115252 0.001 +3.062129538508073 1.549216084095788 0.001 +2.774813125510342 0.5398369013259863 0.001 +-4.378974986868921 -3.601044102604422 0.001 +0.5382465719268232 1.621973680373222 0.001 +3.533862340825488 0.8788218261235607 0.001 +2.307435708602201 1.220827521125297 0.001 +2.351948511267773 -1.25189866524679 0.001 +0.9385414426515716 -0.6811088726847727 0.001 +-1.360375594610724 -1.913316662274912 0.001 +0.7664442821932504 0.2790168349191206 0.001 +1.419238984445374 -0.1217365854861272 0.001 +2.23012604830976 -0.00724416636831227 0.001 +2.969225691780323 -0.1792061824590916 0.001 +3.756824994247889 -1.276762323853328 0.001 +5.87373615042538 -0.5278237427513124 0.001 +1.274876282710428 0.3753368699282685 0.001 +4.713575557403539 0.671101842836047 0.001 +3.275050221468228 0.4087052582802696 0.001 +2.224444518312041 0.4914333384519612 0.001 +0.2779784452624462 -0.3283493252960548 0.001 +1.378929702849055 1.462147461002324 0.001 +0.9099516667745422 0.9608698243773598 0.001 +0.2418727593947951 0.7462883050091391 0.001 +0.6376091824243267 0.6578654077662255 0.001 +0.3579800228648623 0.3657399268856993 0.001 +0.514407409808924 1.05428469637998 0.001 +-1.425487665056884 1.398061321852379 0.001 +0.6001872452532148 0.4370836139894506 0.001 +0.5431465588966385 0.2024674249918214 0.001 +0.68181859391343 0.8889490397545015 0.001 +0.7432721137683456 1.128814557239894 0.001 +0.4172267159764814 0.5890372694157866 0.001 +0.1808771992495055 0.5106863614308589 0.001 +-0.2292133170429983 0.7580484986561224 0.001 +0.005038758277410904 1.231365478437024 0.001 +0.4662626474233119 0.8183991281263372 0.001 +0.2870188967735396 0.9806766761112249 0.001 +1.003193811395863 0.6017026072813365 0.001 +1.369005974038803 0.892966459968898 0.001 +0.7969780069280321 0.4978031524953285 0.001 +0.9998117440089095 0.372302660260952 0.001 +1.011377953514181 -0.05696274235110702 0.001 +0.7428404843519426 0.007066013836496481 0.001 +0.9491105066722645 0.1417959839422555 0.001 +0.8489047606382046 0.7582407093512631 0.001 +-0.2696402937997802 4.251728966753187 0.001 +0.3284716512274575 1.273793007929489 0.001 +0.09179164555382452 0.2047372917848992 0.001 +0.3239533071543413 0.112266207637293 0.001 +0.4979972306899047 -0.04798407791782094 0.001 +0.1923457004216322 0.3386912067584698 0.001 +-0.04380630655499768 0.4049061788864061 0.001 +4.115374495701731 1.916513761775596 0.001 +1.79949661257948 0.1809073157937176 0.001 +1.82594484447191 -0.3566136489998594 0.001 +3.224361294361987 3.219548575004239 0.001 +1.176818033806411 1.048786770524653 0.001 +1.297265913700089 0.6453475714787557 0.001 +1.84435118656226 1.086606188808986 0.001 +1.218241500546658 0.1233654601012986 0.001 +0.956960977024798 1.207767884347243 0.001 +2.46156361146421 6.739251988283599 0.001 +3.703494268298194 0.473141334574515 0.001 +3.12556428146484 0.7811198525939167 0.001 +2.690989479113246 1.013817737398247 0.001 +2.644970706738678 0.1029472376578678 0.001 +9.024051818731163 3.471012867134486 0.001 +0.003798389442935719 0.9105818196363474 0.001 +-0.02660233289445403 0.6731553941689696 0.001 +0.1498778605679961 0.8754665593599095 0.001 +2.539070707923843 -0.2504685709348499 0.001 +13.94430373860618 -3.757576159801484 0.001 +0.6900369650876965 0.1547031365582113 0.001 +-2.5073393415234 0.05787385086452831 0.001 +14.30137744729102 3.295092863579012 0.001 +1.886540366102484 1.604690510923723 0.001 +4.117635641190483 0.8983729859400994 0.001 +4.255158406155313 0.2562411928067914 0.001 +4.246457483503089 -0.5403183573212093 0.001 +3.483324589173649 -0.6699603032936206 0.001 +2.91877977638128 -0.7950774001936144 0.001 +-0.1629276247325238 -0.1841754126199107 0.001 +0.1165524853051736 -0.0815547500611023 0.001 +0.3068919790407711 -0.08264844236705451 0.001 +0.1713425405385597 0.06368075527074657 0.001 +-0.01441582082309819 0.05127807925387841 0.001 +0.1390895919147285 0.6503271522468216 0.001 +0.8829410267989066 -0.001529582185950085 0.001 +0.8333044010391947 -0.2398631470168419 0.001 +-0.8806491613339007 -6.265651897680293 0.001 +0.4555490720434495 0.09406400509075409 0.001 +0.04669586497467693 0.5248518196921285 0.001 +-0.1032486689765396 0.5491811661765325 0.001 +3.304585158654175 0.01164557562554475 0.001 +2.033166933468377 0.7962562836558905 0.001 +-1.502002593693517 0.3514513064390139 0.001 +0.05548351271765826 0.7714848642095619 0.001 +-0.09590684449254024 0.7922326916401036 0.001 +0.7714448728999204 0.6318765484989759 0.001 +0.4015166810830433 0.2132176348307657 0.001 +2.976617211266006 0.2130595873209531 0.001 +2.397869162142678 0.8102932830023961 0.001 +0.8631773110722473 0.3820108535684766 0.001 +0.4978079691825564 0.6970739752995512 0.001 +0.2809044259241627 0.6144009794567685 0.001 +0.4041478089838781 0.9484863298298518 0.001 +0.3643402782397492 1.088374542087114 0.001 +0.4884695736889352 0.3346264416295001 0.001 +8.039784494369011 -3.138207334536254 0.001 +0.6140634831660555 0.0317486217180535 0.001 +0.6474468091759762 -0.1242676555571925 0.001 +0.6347453898142759 0.301897987648204 0.001 +0.5487892914338893 0.5629910400275159 0.001 +0.5951678057722544 0.7961960716741571 0.001 +5.000831787155806 -1.799682199495471 0.001 +0.3112426740452984 0.4804276023280427 0.001 +0.3250370924002047 0.8549746009781448 0.001 +0.5517442666394526 0.9248221512643297 0.001 +0.6317923296291594 1.021536863115879 0.001 +0.7867053143743805 0.9833705299800772 0.001 +0.4594345994326337 0.450311679345383 0.001 +0.2023191295387604 0.1933918547612086 0.001 +0.954497685138146 0.4802476007649761 0.001 +1.114003221221827 0.4879112740080628 0.001 +0.3763376793609362 0.7050108332559835 0.001 +0.05924495792097439 0.3332550783368373 0.001 +0.6739992983560781 0.5389121090975353 0.001 +3.782657627105922 1.391442212235506 0.001 +2.872899017786772 -2.947813023722173 0.001 +0.8185140266579567 0.1125205290845859 0.001 +0.7176595814612815 0.4053389217553788 0.001 +-0.254095124626143 0.9766565626767704 0.001 +-0.1353464587706053 0.6686346715773552 0.001 +0.7079098658757679 0.7601450746844431 0.001 +0.9207591157021171 0.2707037860840775 0.001 +1.051840942261846 0.2380279196190689 0.001 +2.460424290829014 1.802475065627041 0.001 +0.6122002068587409 1.164192748862527 0.001 +0.8202642283319053 0.8752835333444091 0.001 +0.8786235222218026 1.092608667791609 0.001 +0.9626798876053645 0.7151412663510441 0.001 +0.9313841155202213 0.8526242370813494 0.001 +1.071442203836982 0.6952982591032959 0.001 +3.21614931757 1.182784049894373 0.001 +0.8846266073865956 0.6002059027550405 0.001 +1.015794161848863 0.9202417099457869 0.001 +2.113746571866641 0.2441337300716595 0.001 +-0.3725688018276706 -1.302687403286011 0.001 +0.3731087763993322 0.007839809774635585 0.001 +-5.919691707701194 2.179073382425941 0.001 +1.586475769351917 0.3495607257980259 0.001 +4.775466758893864 1.362173272875314 0.001 +2.498232631999234 0.3950254663942266 0.001 +1.183688358393392 0.882016335335172 0.001 +3.831742014385249 0.7921486673776135 0.001 +0.1061820217304531 1.069838696795837 0.001 +0.243220393044422 1.11532376843428 0.001 +3.521171507527834 1.976621998941025 0.001 +1.000135394890352 0.05593915212697478 0.001 +0.09812167888499677 0.4375799248206891 0.001 +1.412927095861137 -0.695182915048754 0.001 +1.161658792692221 -0.3437847407408329 0.001 +0.2962113575206623 0.2711715643960498 0.001 +0.2097552620246202 -0.032472945560238 0.001 +0.01243278684180257 -0.2680681946325446 0.001 +0.08962320115262197 0.9744593308891264 0.001 +-0.02647582728575406 1.042012900661626 0.001 +1.64587523495835 0.8574848182986369 0.001 +1.53599896251379 1.116692541546261 0.001 +4.048673379682724 0.5103454056104311 0.001 +3.892333913412678 0.2734402203275821 0.001 +4.033579906726795 -0.0729953092871011 0.001 +4.602934743250575 -0.2097488232083037 0.001 +2.983407490831704 1.091899761355918 0.001 +3.495720054530524 0.2893334222975612 0.001 +3.048717486706999 0.5481386073330361 0.001 +3.46179429304479 0.6284085104977681 0.001 +6.871291043172909 6.616354722548346 0.001 +2.249476032721894 -0.4011430926139443 0.001 +1.949670830324538 -0.8419762063160697 0.001 +1.361115695703721 -1.520527912968183 0.001 +7.551451542413793 1.207356200769607 0.001 +1.941027685138627 0.4742642303934176 0.001 +0.6277051527193717 -0.4144346640528506 0.001 +-0.3504827283744349 0.4910995598517309 0.001 +6.551962658938231 -6.356366645697777 0.001 +2.317131617111424 -5.748320026019953 0.001 +16.19914921506512 -0.3940942701423877 0.001 +0.1846959274534177 0.9985000007241981 0.001 +5.831147433315875 0.7006033926035701 0.001 +0.4831947269249201 1.185144327426701 0.001 +2.862029577024769 0.8084421023249391 0.001 +2.353823269482138 0.2096941599875754 0.001 +3.733436759556081 -0.3186468616449984 0.001 +0.4045835337604914 -0.0747162183195384 0.001 +0.248657871811493 0.4305323488348587 0.001 +11.50183430646482 6.217609558274917 0.001 +1.231546471597875 -0.09631929320653523 0.001 +10.61751250861 -6.343992601308511 0.001 +1.035007395914449 0.1311321297676953 0.001 +3.765449878041141 1.099781382251639 0.001 +0.8342930831226344 0.2183608944711258 0.001 +0.07149182499367593 0.1017868554881978 0.001 +-0.02607883060343155 0.1585234052956138 0.001 +-0.06898422404134351 0.291434002695444 0.001 +0.1623767425942105 0.7856303431958622 0.001 +-0.1981269111036293 0.1011644891017405 0.001 +-0.9926650758122558 -0.1462150957443756 0.001 +1.576031801807118 0.1176030947664589 0.001 +-0.4043686670332863 2.06602046629413 0.001 +0.6598832901348471 2.81583379180575 0.001 +2.807252985126521 1.326161891709985 0.001 +-0.04099387188089736 -0.09850901605875989 0.001 +0.5494260059528409 0.1018625220643302 0.001 +16.30033327205565 6.472707848324681 0.001 +-6.012980294511872 6.462194768032569 0.001 +3.522444225349052 1.156418747243326 0.001 +3.440806151386326 1.503768053985886 0.001 +3.251841321008214 -0.2961968998297126 0.001 +0.07393303582162176 0.0163155582802131 0.001 +2.558159572318314 0.6340179377572953 0.001 +2.076179017647165 1.051155296033791 0.001 +3.491656359334111 -0.1098650759991722 0.001 +0.9976923074542693 1.067559185903111 0.001 +1.484113116878738 0.5461882644352749 0.001 +2.784418987083074 0.3055051108121987 0.001 +0.2501539682114602 0.9011084636731475 0.001 +0.2773368034803274 0.03733743787558015 0.001 +1.105919820867226 0.5947237012047963 0.001 +1.039953977847311 0.5262379799792765 0.001 +1.777133710823279 4.452466371025528 0.001 +16.6572181772387 -6.637201268369739 0.001 +2.011436021563809 0.02829262046023539 0.001 +-6.8521440252273 -6.599413884207391 0.001 +1.168316138125923 0.7800359788717633 0.001 +0.1417341159465966 0.2679649888079567 0.001 +4.037157445431952 1.215008078456058 0.001 +2.456892817312513 -0.005857195753493993 0.001 +0.8865945194286173 0.6767526086149255 0.001 +1.146431548738299 0.3359801156458725 0.001 +0.6880047350632739 0.2290313715898906 0.001 +-0.696577135611668 7.300785572835866 0.001 +3.309018121630301 0.9375947974043938 0.001 +6.4020163942391 3.321872406979205 0.001 +4.862346133366618 -0.9194526198435711 0.001 +1.011985129380145 1.625503647643805 0.001 +0.8091447431662664 1.437349345537731 0.001 +1.791911747367279 0.3577530691665053 0.001 +0.2844555687469261 0.3477511322791802 0.001 +2.457476618009053 1.060864771168741 0.001 +0.07081724777764541 0.8534565422207125 0.001 +-6.676247046417888 -1.277238613486827 0.001 +2.519969974471607 -0.7817581655142855 0.001 +4.928560240732721 2.547843929965819 0.001 +0.8289945760298716 1.235499253960877 0.001 +2.857713468893325 0.02636603763583467 0.001 +1.126234819230722 0.005619420174188119 0.001 +0.06540185461667508 0.6838264271801666 0.001 +3.223807817986168 0.6141401988597974 0.001 +-0.02384772672902783 0.7508269090034001 0.001 +0.01616777174233122 0.2570531359505739 0.001 +12.41413174147546 -1.06014468441982 0.001 +0.09025674791122849 1.705998964917274 0.001 +1.71983893182651 -0.08387554169994368 0.001 +1.621761446320531 -0.3252361514820335 0.001 +0.1189446520912754 0.5736419570720116 0.001 +0.2249770385456122 0.1224159467916719 0.001 +0.1458608075696008 0.1451465436087749 0.001 +1.423982660828702 2.129594809424976 0.001 +0.2143038361627992 0.6690680703577732 0.001 +0.3963403796251093 0.7985428835695054 0.001 +3.089936106903142 2.10355260927216 0.001 +0.4864251490991824 0.2582562811730776 0.001 +3.188688891091392 0.226325630367735 0.001 +3.286878268696194 4.784303036496691 0.001 +-0.02618334546819684 0.5825758384881192 0.001 +1.020766720771056 0.4373808455731468 0.001 +1.693537492358454 1.403315604984223 0.001 +1.993672520249531 1.28445978020038 0.001 +6.861610871644724 -1.995939806130309 0.001 +0.6923907208606354 0.05698746561132781 0.001 +-0.04252246690645865 0.5016130664031049 0.001 +-0.1005937458632175 0.4559344520813097 0.001 +-0.1269384338558633 0.3673158613316858 0.001 +-0.01021826287103217 0.8280956162748641 0.001 +-0.1082999510837758 0.8883242091360971 0.001 +-0.06675436086931714 0.9713546117261009 0.001 +-0.3672537653208753 -0.8916838532281113 0.001 +0.7924167682556692 0.3568718955368065 0.001 +1.241565495807484 1.295732252447808 0.001 +0.7466319297697886 0.8314431969373625 0.001 +0.05042991450318384 0.6188573177216881 0.001 +0.8664041731855998 0.4587969146068457 0.001 +0.3814574027533528 0.1394035046122545 0.001 +0.7570211188189818 0.2001178284279225 0.001 +4.038171191814163 2.61278347623382 0.001 +1.858284670150309 0.8122885656011772 0.001 +0.5904380908982589 -0.05150700697412955 0.001 +0.6753633768373005 -0.02772870130814288 0.001 +0.744182312423373 -0.08617207409338301 0.001 +0.8187473862732964 -0.05361172425241049 0.001 +0.9185719183698781 -0.09279113633272251 0.001 +0.9850678839557622 -0.265678303608353 0.001 +2.22454615089982 0.7091392221107736 0.001 +2.622077839614273 0.8284369890417427 0.001 +0.8397350390038938 0.3026104792270878 0.001 +3.882643576129421 0.03830704991526454 0.001 +-0.1364411486567469 0.2024163052948284 0.001 +0.3983484256803907 0.512554213330553 0.001 +2.271337763589365 0.9986643801976915 0.001 +0.3279903715058683 0.2026514518867864 0.001 +3.640281429912874 0.7128648838879952 0.001 +0.6085772237355617 0.1513008525403492 0.001 +0.9210986073535556 1.038788414463189 0.001 +3.08297869210813 0.031974753844703 0.001 +0.4684498383534705 0.165785520023788 0.001 +-0.1063920340758614 -0.007915214098120574 0.001 +-0.2934324275448884 -0.05767553277476882 0.001 +0.4300898648888773 1.03353195649975 0.001 +0.1236962113437936 1.212217478252748 0.001 +0.4138444805169562 0.8775612861215433 0.001 +0.7504387250474313 0.5738243492343041 0.001 +0.4803958713278981 0.9088438780526973 0.001 +0.2165704502580713 0.8326192879768465 0.001 +0.8215552278850374 0.03277704161717998 0.001 +5.324993621319206 0.1590520187939465 0.001 +0.861623049605349 1.008212400447853 0.001 +0.5789616398347743 0.3544259397054795 0.001 +0.5286964012067976 0.7599441166564416 0.001 +0.5594426120075241 0.6425796308778389 0.001 +0.4858205274156369 0.6179553867179681 0.001 +3.095897012094796 -1.523050714006116 0.001 +4.150681537059036 -2.364988100695203 0.001 +0.4931213335624987 0.0442257600262279 0.001 +0.1911803015170718 0.5777087814773297 0.001 +0.2668681530169529 0.5445434789381578 0.001 +0.3399490683090743 0.926541903402531 0.001 +0.4466134994391938 0.7422789043414657 0.001 +0.8916377064732072 0.08199123790399938 0.001 +0.5608157240025917 0.2924249717751403 0.001 +0.4351690606739492 0.3836002854888164 0.001 +0.5332194272757221 0.8541759221465451 0.001 +0.4685464449648508 0.5353302577166424 0.001 +0.7066377500317126 0.9658109551257783 0.001 +0.5794625006127102 1.00385585431538 0.001 +0.5799014860738502 1.078746331725292 0.001 +4.346348091804557 0.6224713825939464 0.001 +1.333226707965364 1.086731833301193 0.001 +0.3583883057908251 0.6305080065322795 0.001 +2.075810719280748 -0.2081366471158571 0.001 +0.03031646632534023 -0.05765940162269034 0.001 +0.7134221209316376 1.049522565359095 0.001 +0.808594478348529 1.067019589170051 0.001 +0.5307812373097772 0.4068864826839531 0.001 +0.6352342179182866 0.9480623906702399 0.001 +0.66837802008573 0.4545491052605374 0.001 +0.9336771347764435 0.4037323104949567 0.001 +0.5734304854263127 0.7156700961826472 0.001 +0.3312718577453445 0.5527668061398257 0.001 +-1.433266459620679 3.213700303479298 0.001 +0.7915050001440387 0.7223955355151988 0.001 +0.9791404457292856 0.2777177567093849 0.001 +0.4170850260253945 0.291226389596318 0.001 +0.3050193623363815 0.693027148280385 0.001 +16.80331119733105 -3.123360041409959 0.001 +3.476954036982294 0.09899996190265446 0.001 +2.518144188505129 1.295196235014592 0.001 +13.6671168745314 -7.071241885295381 0.001 +0.7181893090857718 0.6911297899440325 0.001 +0.5449278644079321 0.4909565567714965 0.001 +0.6164001101285973 0.8738603142546131 0.001 +0.4805658658617523 0.9840825977739533 0.001 +0.0220987289908682 0.4551416288699208 0.001 +-0.8432424850080404 0.8050497341616916 0.001 +0.710804715333283 0.3269194721864904 0.001 +-0.009362076234954522 0.3404900041781114 0.001 +0.3693339456388063 0.4347642072148999 0.001 +-3.152890242165177 2.106169986279163 0.001 +0.6193436518097347 0.5894070070603833 0.001 +0.4380360759074043 0.6546265619633813 0.001 +0.6101083844410659 0.5090951470461353 0.001 +1.421583787839635 0.2357986016924487 0.001 +-0.1913650899279741 1.195508294458751 0.001 +0.3130773365412053 0.7813808745149866 0.001 +0.6753936781560967 0.8226981328413665 0.001 +0.6832266918532401 0.6071987372546896 0.001 +0.6225606638433505 0.2281739449282696 0.001 +-3.340154820960894 -7.135730425634269 0.001 +0.7457643691252254 0.9237081737109157 0.001 +0.6355063317838213 0.7341451074565573 0.001 +0.9868245660288101 0.9841311223006202 0.001 +4.367661669608585 1.157795345471968 0.001 +0.01415106611134925 0.9742667257182411 0.001 +10.74834835250192 -3.288201000157785 0.001 +2.682141008588539 -0.09794137025915031 0.001 +0.9843761706014313 0.2037574363743817 0.001 +0.4498568586212285 -0.0007710576612446222 0.001 +0.6421403004959257 0.379368806939438 0.001 +0.2975788128089086 1.062252242556866 0.001 +0.9552242053369255 -0.01956853014014048 0.001 +2.38607706543896 -0.2082996618149958 0.001 +3.326447242418097 0.7638416547499259 0.001 +4.635356628674811 0.2222341719263668 0.001 +0.1277295832763881 0.3698503926097203 0.001 +-0.008464663648790605 -0.03390028919913818 0.001 +0.9449507138986346 0.5606750457554953 0.001 +3.925488606104029 0.9658487704193898 0.001 +3.861112426094385 0.6022109516795278 0.001 +3.95880266568118 0.6999082052174781 0.001 +0.7246792810430345 0.4997435136256106 0.001 +7.428553904315998 -0.5181577583602763 0.001 +4.326028258096382 -1.241290929926241 0.001 +5.177400574893204 1.107219181826152 0.001 +-0.1441097979182403 1.045989792131464 0.001 +-0.3731712552316382 -4.055997673074705 0.001 +0.1458729856722264 0.003832151281109395 0.001 +2.837100390664869 -0.4962753859965465 0.001 +3.111342931082484 0.3534451560307262 0.001 +1.073219593451983 0.9976793119612627 0.001 +0.2217806025959881 0.267226447913409 0.001 +0.3423815871611074 -1.165507501858395 0.001 +0.4986336499760846 -2.257945153578914 0.001 +0.8117632902222656 0.4344476126185522 0.001 +3.713502135039549 0.9046993247675382 0.001 +0.8263035595869006 0.9542021176898391 0.001 +1.936875010190475 0.9556302004023891 0.001 +4.27132535815101 1.51523467270933 0.001 +2.210125734511803 -2.153507365173072 0.001 +3.721961618563927 0.2559534231332306 0.001 +4.863043106254446 1.964618840335043 0.001 +1.505638682538069 0.7500481200410267 0.001 +0.1598966473923256 0.7119773703042254 0.001 +0.8100919010155363 1.1577331927267 0.001 +1.090330286706311 1.19158300962145 0.001 +0.7472124809413794 0.115266100077598 0.001 +0.03689542640636753 1.048207577796548 0.001 +0.6579250732715741 1.107134661485972 0.001 +0.931705702654222 0.3372648058353817 0.001 +0.8850637226651327 0.8960407084616717 0.001 +0.8703507097423062 0.819610170839283 0.001 +0.9850370588625176 0.7858306579633554 0.001 +3.891236304319387 -7.509524862974732 0.001 +0.8690140908821105 0.1550630717953946 0.001 +0.9200891796648151 0.7771519897017398 0.001 +1.384484756906863 0.04661439992214395 0.001 +-3.871655261207544 7.182573757981117 0.001 +1.006295834862953 0.6660627396354792 0.001 +-7.183604136195631 -3.710685154747266 0.001 +0.9988117208615576 0.8503097685892008 0.001 +1.019520807722705 0.7484128440620711 0.001 +0.1761435341970177 0.4514522109850322 0.001 +3.456193212488631 0.4333004207005674 0.001 +1.072009281742462 0.06218978880915594 0.001 +1.050010969231527 0.002536730963754318 0.001 +1.102895074738425 -0.08182714276505487 0.001 +0.3084515950446253 0.4110909833252891 0.001 +4.016914113340159 -0.4023810752077084 0.001 +3.832130842553529 -0.7370777413732035 0.001 +4.288183387932376 -0.2614871027411423 0.001 +6.330064102854079 1.574663235548834 0.001 +3.763810078407198 -0.1009185643980371 0.001 +4.95396399411025 5.554316251414537 0.001 +0.7732544723069349 0.7875112326400627 0.001 +0.9553568416763011 0.918388463162805 0.001 +13.82109894736417 7.589907611954125 0.001 +2.913009843471644 0.419987750041161 0.001 +0.1754244568786227 1.076847134135189 0.001 +2.142787943383561 1.518960066775199 0.001 +0.9308631772702853 0.6309904228865153 0.001 +0.8159118133453216 0.5831737121219205 0.001 +3.122099688135381 0.9641799655641883 0.001 +0.2389401779979483 1.041233587497697 0.001 +2.36864126683174 0.5943422051883221 0.001 +0.1079749935559381 0.5069961432934954 0.001 +1.093123384367193 0.7639185793436426 0.001 +-0.04120054299823474 0.2200507751009823 0.001 +5.708506020684922 -2.922341761316508 0.001 +4.294586283161202 0.02029510675296404 0.001 +0.1919167355360943 0.9375272291253897 0.001 +-0.1467208597862421 0.2846586432494385 0.001 +4.034022434490109 0.1647443929090915 0.001 +1.942773230190835 0.6408381851959406 0.001 +3.182451058453921 -0.1369138002966545 0.001 +9.255069870082391 7.652017418382917 0.001 +0.6983847181074337 1.25951204398232 0.001 +0.5470867815304512 1.383337116325736 0.001 +2.237370978341182 0.346391171559256 0.001 +0.3683771101129509 0.08112290557771425 0.001 +3.341710093575391 0.2070339407606151 0.001 +2.908639346422417 0.6454137332829371 0.001 +3.040060842151824 1.341035784663239 0.001 +0.8608466245584034 0.5243163221145862 0.001 +-1.234579676190918 -1.064808744374931 0.001 +2.333420571205235 3.606216231349733 0.001 +2.444035673966291 2.404076992873675 0.001 +1.93114110287636 0.2837098614624907 0.001 +-8.117657483906935 3.986057956351082 0.001 +1.189425451741866 0.2258405296293634 0.001 +2.533932102869053 0.2442035278031675 0.001 +-0.7570853173947566 0.2786634382580758 0.001 +2.860657571526084 0.9749703168239373 0.001 +2.814475318625488 1.130611456616036 0.001 +1.074949287090628 0.3846481305542466 0.001 +1.062637667282633 0.3130531693096817 0.001 +0.07776022964388654 0.2674216939264721 0.001 +1.890633909626783 -0.1079859595092171 0.001 +2.089663029292339 0.6071013453137422 0.001 +0.9138015966505368 0.2103584708707113 0.001 +0.2145252337382935 0.03032038499504149 0.001 +0.04229911256147934 0.387153875102913 0.001 +-0.08531412364236166 0.09426736773646126 0.001 +0.3792488605600965 -0.2012189213984078 0.001 +0.3118851486338721 -0.0200988828646123 0.001 +0.2635765442905281 0.1704839415429548 0.001 +-0.2252456723952244 1.503749726478208 0.001 +1.50831787429121 0.966134824645253 0.001 +1.664815898365358 1.030318009285744 0.001 +1.686152731711639 1.211400295125598 0.001 +3.84493597831485 0.4290470030860775 0.001 +1.418713400409179 0.4417550554777842 0.001 +0.7208061893513573 2.223939051019213 0.001 +-0.5451080899832086 1.238596514088054 0.001 +6.147266993302895 5.156362895483361 0.001 +0.1032957458452353 0.7432014502887616 0.001 +0.6333732940337666 0.08988055665177248 0.001 +1.731140687170062 -0.582667182341016 0.001 +3.31649950122531 -1.114651733082012 0.001 +2.22035574229688 0.1298157463845387 0.001 +0.3552390811388301 0.2653798268461474 0.001 +-0.4832459432290848 -0.3981488813135729 0.001 +1.081647817892387 0.9350966815433832 0.001 +-3.252130414575802 -1.979731885448271 0.001 +-2.297007640702064 -3.73047415255522 0.001 +5.148502394623584 -0.3623520918079346 0.001 +1.059172355476481 0.6281189287811042 0.001 +0.7226666147740051 -0.2056187170113969 0.001 +1.373185647154092 3.45718034887184 0.001 +0.8435502540490358 0.6483068807352366 0.001 +0.02966032908729054 0.1593580418082243 0.001 +-0.05611454083683597 1.143075312728539 0.001 +0.006643547010611812 1.117834009356842 0.001 +2.521113024662105 0.928854410015296 0.001 +1.661569490450103 0.2245042147981357 0.001 +0.5598501096967938 0.0178732416395853 0.001 +0.9424070218501449 0.04746697185846652 0.001 +-0.1648553163145043 0.5967781705231867 0.001 +-0.1812971459228972 0.5167100724946601 0.001 +4.013311591233019 0.3457383555553338 0.001 +2.670063656957798 0.4224794623922613 0.001 +2.809174269676074 -0.26141131222097 0.001 +1.640754173183843 0.5002008535426977 0.001 +0.1226576778839118 1.017806015134026 0.001 +3.890964319465242 7.749833684478759 0.001 +1.602262262317148 1.625080776085776 0.001 +2.202275232468081 2.07225680569689 0.001 +1.345517244572579 -7.594074047159917 0.001 +0.9876771717398388 0.1093853411573145 0.001 +3.069315908926806 -0.3746964319040745 0.001 +2.358597161776465 0.385836593359113 0.001 +3.663999171731336 1.265687045520197 0.001 +5.82207238853548 2.452839433738457 0.001 +0.09259273921229833 0.816972999402371 0.001 +2.805640213325909 0.1944959149367614 0.001 +1.547375329993946 -0.05095203482697967 0.001 +2.967911143716971 0.9144960693115618 0.001 +-0.07042820796802579 0.6943781896328259 0.001 +2.166570361459491 0.8604457355116465 0.001 +1.070130017252392 1.070406445345593 0.001 +-4.93322035483675 0.05516050309388981 0.001 +1.781484580112286 0.9530576373062108 0.001 +1.277362564907913 -1.014613959543452 0.001 +-0.3947269378136846 0.1194655534313916 0.001 +8.563007191270545 -7.354820995996203 0.001 +17.31130734158497 4.751318238143331 0.001 +2.108909479801355 0.3981140034303575 0.001 +0.004681357498590255 0.1041207755480318 0.001 +14.23312869205125 0.6930019319540071 0.001 +-0.4397204446380869 0.8840642047046186 0.001 +1.159284785290799 0.6376908486975824 0.001 +2.74395847053772 0.6847008952018024 0.001 +9.361579221936243 1.750637650546234 0.001 +0.2373286657514068 0.4848539339492959 0.001 +1.277135277589852 0.5043918118212112 0.001 +2.164976590255586 -4.023462281448667 0.001 +1.624888939549177 0.7137082426321985 0.001 +0.1095635024332771 0.05859624041487515 0.001 +-5.169577338749918 4.356164389776706 0.001 +1.10574604677984 0.174973481843354 0.001 +4.509490052485618 -0.5098664295985201 0.001 +0.05851821062078411 0.9171615069351228 0.001 +-7.618247427369718 0.9257904238277535 0.001 +0.8719696717276331 -0.04374336247848974 0.001 +0.8537542913728038 -0.1142953337507809 0.001 +0.7943748458465898 -0.1134640176221008 0.001 +3.440027339430864 1.017910310013027 0.001 +3.611409762111041 1.001286966866649 0.001 +0.1932423247328348 0.3909539802378968 0.001 +1.102103005474307 0.1135275433856397 0.001 +0.1058233167246604 0.9094695042657621 0.001 +2.009032410874325 -0.5198468611273472 0.001 +1.13931014531885 -0.2259927599925733 0.001 +0.275604230323588 -0.04517618347897098 0.001 +3.267183144915609 -0.5511731484034901 0.001 +1.277453576141232 0.9891966005825668 0.001 +1.356405919168926 -0.2888186226226871 0.001 +3.353911497658226 -0.1060685431631067 0.001 +1.100780903104701 0.6417603683191471 0.001 +-0.1914298867612651 0.8323797205953855 0.001 +7.59660819182325 2.061114367529969 0.001 +-0.1414692983752143 -0.08999287217071136 0.001 +2.628457802632352 1.146457576350247 0.001 +0.267718000817153 0.2311650531222283 0.001 +0.3337791900372278 0.3121335805249371 0.001 +1.256647428087852 2.686902601265027 0.001 +0.6845218017253645 1.181915896362285 0.001 +6.015576662343444 -4.813380257827073 0.001 +3.222629406554702 1.444645279088859 0.001 +1.31349546963253 1.76351600226762 0.001 +3.877121188288403 1.105699466652442 0.001 +4.386999142381039 0.916434029049163 0.001 +4.662906927460824 1.013984083813809 0.001 +8.44622991755096 -2.261849345032855 0.001 +0.8342855738789655 0.7137976920027048 0.001 +0.1558192712297561 0.20759713850508 0.001 +2.637661365750963 0.2951731749770819 0.001 +1.417568196290293 1.248824392548493 0.001 +0.5329227749810657 -0.1275694551152238 0.001 +0.4663236016461764 -0.1008594929125164 0.001 +1.873981271613917 -1.332874841967225 0.001 +5.621209890345053 3.3664900201194 0.001 +-0.1935051707044139 0.4241227509618524 0.001 +13.64226802380546 5.17247452801674 0.001 +1.853076645651677 0.01532705588772626 0.001 +0.1560860613154256 -0.05059024897486783 0.001 +0.006616882361785006 0.2140511872271583 0.001 +0.1154091567024896 0.3057207375386665 0.001 +3.752780255185742 1.660896731466163 0.001 +0.122258565045327 -0.6296779221854707 0.001 +3.899329369344859 -0.232567163530499 0.001 +0.4112330209607618 0.05745855296353646 0.001 +0.1382664486323045 0.9589867515206922 0.001 +4.177694824371113 0.444952250537724 0.001 +4.4192168224895 0.4134752101203714 0.001 +3.617941320433976 -0.08810514358964024 0.001 +0.3825811926974361 -0.05057029485831507 0.001 +0.9117025108399013 -0.4547305006432302 0.001 +17.99607541704449 7.852901244696347 0.001 +1.834429195074738 0.4868093016432652 0.001 +-0.4094884499194347 3.237621624665906 0.001 +-0.1231696172322805 0.04487506176880268 0.001 +4.062158075466237 1.052165962793585 0.001 +2.759090395944626 1.683684252470291 0.001 +0.9780735281950811 -0.1374992455835924 0.001 +0.9035204255367258 -0.1716854202562942 0.001 +0.2790164321654959 0.817535784598855 0.001 +3.537728756171956 -0.3714758068724711 0.001 +0.0475571343255318 0.05891417558940554 0.001 +-7.946272250178267 8.028185943308573 0.001 +4.044521107678271 1.452839897821567 0.001 +0.04189606100320797 -0.161918478997273 0.001 +0.2598233409957599 1.237158814649115 0.001 +-0.08514320890394854 -0.05139876623542005 0.001 +6.45116471758303 0.004703951720473439 0.001 +1.049133321481179 0.5812256160536171 0.001 +0.6587471475109785 0.1982963681657506 0.001 +0.01153389161912415 0.008865751025928124 0.001 +3.04152109488601 0.6817132266467025 0.001 +-0.05398215864426881 0.8803376867031455 0.001 +0.2779538714202706 0.08291106449116793 0.001 +0.7652628299330915 -0.04521619285608935 0.001 +8.465173576041254 -5.747350841890242 0.001 +17.94592041475416 -1.326501054767576 0.001 +0.760348680912445 0.06940579966608451 0.001 +3.160727514746794 0.512488171808355 0.001 +3.343427033927681 0.5221680725900849 0.001 +3.550439349555713 0.537446516340445 0.001 +0.0004728748793384752 5.614245807285279 0.001 +6.242472152783628 -1.473342940829477 0.001 +3.636604163370888 0.3531947418508319 0.001 +-0.1427361864594418 0.7281414896365253 0.001 +2.333819673871587 0.06982757325789207 0.001 +-0.1500180260938048 -0.4789248686383922 0.001 +0.2220676404202451 0.9730401311549173 0.001 +0.750204542683824 0.4431584178719414 0.001 +1.165800238791272 0.4155840024008198 0.001 +0.03842478705734206 0.831766338424353 0.001 +-0.07197382292622118 -0.2182584475535583 0.001 +3.813109654814343 0.1719004086395952 0.001 +3.59928803203619 -2.054014614822401 0.001 +0.9845931965930221 1.417125934544902 0.001 +3.126492021833384 1.111531974554701 0.001 +0.5362156820315965 1.129821019287587 0.001 +0.4566322543030004 1.085805565523571 0.001 +1.541013555151001 1.321382187591956 0.001 +3.498832686896726 0.7597082349970671 0.001 +1.078549249374045 0.4568053046996572 0.001 +1.324742429346784 0.7794501129716567 0.001 +14.82205651419165 -2.116714047412077 0.001 +-2.450728823243587 1.138341513412894 0.001 +0.2906433341798037 0.9180511268936968 0.001 +0.9468401305691477 1.121780547343705 0.001 +0.8937880354458051 1.166636097919858 0.001 +1.026736642630985 1.149599528200701 0.001 +3.374338981649014 1.307895390187883 0.001 +4.12781356392169 3.531796811926712 0.001 +0.4963898968843765 0.1244390029573741 0.001 +12.4584157535254 -5.501461653592888 0.001 +0.8057122591915246 0.1739277001975109 0.001 +2.476743630637828 0.5222659937071364 0.001 +-1.700874503373687 -7.922694487005769 0.001 +1.029705510706959 0.1865402179730565 0.001 +10.47438515311901 4.119000391415637 0.001 +0.8049994921679535 -1.464224879456778 0.001 +11.74668360542321 -8.439080873638806 0.001 +1.026483453368625 1.014813917979608 0.001 +2.501131950909748 0.7737241924936191 0.001 +3.978732877449243 0.8198125608058999 0.001 +0.7860780127252768 0.2418543746689789 0.001 +1.543562091455842 7.987673843455681 0.001 +3.31598853841861 1.768070598990835 0.001 +18.0882948383992 -8.144480384249178 0.001 +2.779232541331206 -0.1205776335031207 0.001 +2.516525761174431 -0.1310095236176868 0.001 +0.329911289066076 0.04824172960126474 0.001 +-8.203877409039741 -7.773202962248998 0.001 +0.8707415808980448 0.2532231155180106 0.001 +0.4431749851157582 -0.05230047770022216 0.001 +0.1677080273096354 0.8321084861311243 0.001 +1.127534773221099 0.05675666648349172 0.001 +4.144195727228904 0.6061842311967155 0.001 +1.115583107347717 0.2814355327499539 0.001 +0.9640141892050086 -0.06508550014956532 0.001 +3.587586404320655 0.1805007724072993 0.001 +4.437525395389772 2.263273912404054 0.001 +-0.09895942901285866 0.1509191432722836 0.001 +2.062939849044084 0.9070402736006736 0.001 +0.5710811650359613 0.0634798115841889 0.001 +0.9896420282818622 0.5340830780660391 0.001 +-0.2165546942460186 -0.004982818845890139 0.001 +1.385831268718267 0.6659827141497019 0.001 +-1.305727174764556 5.886041295811151 0.001 +1.233979963141056 1.148393954277777 0.001 +0.9192167968690219 0.5119582212076415 0.001 +0.3584534324942013 -0.08956420183964987 0.001 +0.01751057686113435 0.7122014789802744 0.001 +0.2383863750954976 0.3296237261882428 0.001 +17.78876253858568 -4.980983400443452 0.001 +2.132200180661866 1.212095069643237 0.001 +0.1167237447562953 0.100462466574172 0.001 +-0.08070799825374815 0.8459457124580861 0.001 +0.6868895553633365 -0.07703352862736301 0.001 +1.933619711387674 1.067725914373212 0.001 +1.119951603266482 0.8327464302373715 0.001 +3.246236360679539 0.8291557331652154 0.001 +2.763495608200504 0.8929029760943593 0.001 +0.8213660271921805 0.8289807051582693 0.001 +3.911816296200408 -0.08247685552242931 0.001 +0.8420263407869157 -0.008004038407792204 0.001 +3.813207673900577 1.226739572382449 0.001 +3.457467926344751 -5.089113920538485 0.001 +2.590407875509312 -3.773697584811146e-05 0.001 +15.0517918561404 -8.009059623644493 0.001 +0.8914059217261093 0.3360507725621934 0.001 +-0.06526654290704989 0.3675288858965818 0.001 +-0.09807255575729364 0.4061928631704594 0.001 +0.9234564835077773 0.7219099131420911 0.001 +0.7207526612009348 -0.03847241260609766 0.001 +1.162591552268018 0.9588657603056012 0.001 +-0.14163906361093 0.1256669382131727 0.001 +3.173509273933499 0.08620112259662176 0.001 +0.2444932953689665 0.3794329329474367 0.001 +2.712585844795151 0.01311475951534288 0.001 +0.3317725566828455 0.7344540558401619 0.001 +0.9662699594144761 0.6708944093239602 0.001 +17.95759767969664 0.508360389760326 0.001 +2.223919681446599 -0.1612891216067973 0.001 +3.734144587253842 0.6080207198484823 0.001 +-0.5813013475601602 -0.06574047638613512 0.001 +-0.08582475812001711 1.03263831962337 0.001 +-0.1482570195250348 0.9806646204331915 0.001 +0.1940954295308157 0.7503603510977396 0.001 +0.07439066135625975 0.3995203238893672 0.001 +1.298359772806207 0.2597182485557937 0.001 +5.320173329626217 2.239198365470833 0.001 +0.2655423001031275 0.4457958398490731 0.001 +5.725764899135998 1.364302658532327 0.001 +4.042047378275342 -1.68772869497727 0.001 +0.6233387482952296 -0.2169082860101351 0.001 +0.1160933479358346 0.6908154107869655 0.001 +-5.263619253167153 -8.030392734536061 0.001 +1.952349821145596 0.1182375361693645 0.001 +-0.0451181254069619 0.1152606390933411 0.001 +0.4191671195333728 0.1751812285770236 0.001 +0.7127055909601967 0.2766090913822119 0.001 +1.095752061910868 0.5297238951719078 0.001 +2.397363816437335 0.9474050525858436 0.001 +15.71781580004198 4.546496042258526 0.001 +0.5522753194297292 0.1506388951345133 0.001 +0.06205383178073873 1.098051066807105 0.001 +0.01936450874355546 0.7795839932131695 0.001 +0.0373023810644531 0.5812442420670937 0.001 +0.2036770383049763 0.8648964009260844 0.001 +-0.3277773014485897 0.8715859145648429 0.001 +3.366757344566021 0.3486123654991681 0.001 +0.4554984969228951 0.3291903660924601 0.001 +12.04908639723953 8.125460511674257 0.001 +2.627967499835542 0.5509128738354072 0.001 +11.28438242973396 0.8926677626105644 0.001 +-0.1111553058679763 0.2239522869275282 0.001 +-5.429861906041353 7.963858174727184 0.001 +10.66059634207139 -1.162147260755226 0.001 +4.009131492183151 0.05734922308276107 0.001 +2.2172548653461 1.102205357991778 0.001 +2.317740463058115 1.065290690155991 0.001 +0.6918452315361403 0.01697103971236499 0.001 +0.2208916691633447 -0.09479774578856426 0.001 +0.2665122309793693 -0.1397690257137075 0.001 +0.392963073831383 1.164311138896172 0.001 +0.09435648822037968 -0.02400201075203708 0.001 +8.379968261528074 5.462139454724824 0.001 +2.356709711140949 -0.3692965862017636 0.001 +1.039985512365602 0.9703669157290626 0.001 +0.7822331215392089 -0.008891940395341271 0.001 +15.51595007972947 8.23201000086309 0.001 +2.09876221292117 -0.05176794751646244 0.001 +2.224725033629841 -0.6480593970836278 0.001 +3.409648031396691 2.515491972963483 0.001 +0.01201789971116034 0.3073491285788075 0.001 +0.7038009500948492 -0.1317389881286793 0.001 +0.7461289880536222 -0.156914456667726 0.001 +-4.603511398975031 -5.689757762631887 0.001 +1.651032989843505 -0.9414336891506566 0.001 +0.132995566320461 -0.1645605755482376 0.001 +3.331487256536834 1.06869553582689 0.001 +1.533778810143937 0.229581636865536 0.001 +0.6003315469415333 3.896158311178005 0.001 +0.5019734805415845 -3.10507339835827 0.001 +-2.12615297592788 8.411457386688051 0.001 +-0.07895713259300315 0.7435996928815372 0.001 +0.9872521505552203 0.4060088737583655 0.001 +2.455759129631088 0.1294936041762245 0.001 +0.6213740299720886 0.001135467762167243 0.001 +0.9370804392925335 0.09375303073746198 0.001 +0.2435080645837658 0.5906617723152344 0.001 +0.7075451023383876 0.1879424172972358 0.001 +2.33523712902683 1.397319573840133 0.001 +2.391231016494592 1.191441354350071 0.001 +0.08803078555440697 0.6682784417978705 0.001 +0.9924224693015679 0.1560964285215383 0.001 +0.1877579200242524 0.2798100259501438 0.001 +1.073139235352344 1.285276486607838 0.001 +15.54709974096637 -4.943897667446352 0.001 +3.402627363427701 0.8999088394172907 0.001 +-0.04703938422883431 0.9252112737490158 0.001 +-8.239409800741765 5.87763663231477 0.001 +2.893474262559709 0.2837979519381891 0.001 +0.8873218070811286 0.4174023553792407 0.001 +0.09793517227865373 0.6019741279863169 0.001 +0.4272117288017454 0.4369549677786779 0.001 +0.842444954974388 0.07599411712490708 0.001 +-8.284595689782501 -5.412866284623754 0.001 +0.5212705564526081 0.2553697091574746 0.001 +0.009141188667966996 0.5257057838184931 0.001 +5.841178516484325 -8.058137124131866 0.001 +3.454044839613553 -0.01804618192721889 0.001 +0.7964542217385833 0.3222704413409687 0.001 +0.174267201570601 0.6386515495774712 0.001 +2.345845209638782 -0.06341942148824467 0.001 +2.076228782266468 0.1070466611139976 0.001 +2.56196638064025 1.489492724911802 0.001 +-0.03071251894910215 1.001697897579474 0.001 +-0.05252239377945341 0.5294634816071737 0.001 +0.5342722477455578 0.9570461689820668 0.001 +2.567833904979812 1.038518321449628 0.001 +4.169545139441173 -0.9022596767599762 0.001 +2.803997723088185 0.4385519595087248 0.001 +-0.0738018278085007 0.5065733443858438 0.001 +-0.07074984578955927 0.4527051946946904 0.001 +3.933221130436341 2.264969157625278 0.001 +5.085127358082101 0.648538872933386 0.001 +1.834852297409225 1.259343814546742 0.001 +3.749139286296574 0.3596339491539444 0.001 +0.251806748089617 0.6675168874712141 0.001 +0.2423131647813842 2.064439637848061 0.001 +5.689629719801377 8.288504096195577 0.001 +0.7464977748931594 0.3565269331556846 0.001 +0.6337617117989018 0.4284758221478286 0.001 +1.909151790671186 0.3808982921214223 0.001 +0.7942064808665422 0.9480974023804288 0.001 +0.07363456717467649 0.569591192853053 0.001 +0.4043659624336551 -0.1529969209889306 0.001 +0.1407930017372872 0.403873814109912 0.001 +0.4680970158756881 0.04714987585656191 0.001 +-0.1845056099417252 0.9155578139189305 0.001 +0.05332683308253549 1.167647563561034 0.001 +1.035857019128919 0.09138188380420199 0.001 +0.4158328931349832 0.8188209498603918 0.001 +2.943767760308052 -0.03218208651282353 0.001 +-0.07743896918990319 1.09770009100073 0.001 +-0.03840751099398192 0.7848940820681063 0.001 +-0.3203664686107701 0.379648965467106 0.001 +3.810787842982993 0.9905374155562416 0.001 +0.1998034379960109 0.1619025865584338 0.001 +2.886950206578982 0.5315341368412511 0.001 +0.2010275208624362 0.0714269441614109 0.001 +0.7429389346029155 0.6048022406878968 0.001 +0.6349581416170673 -0.05594593835077277 0.001 +-8.077365134210581 -2.53665376135692 0.001 +0.448358923806999 0.5135610890811245 0.001 +0.9601956212523538 0.9544968386074496 0.001 +0.3171090569332475 1.023375554537219 0.001 +0.4014525433275019 0.627038387088293 0.001 +0.006694919693828592 0.6226046139337277 0.001 +0.1877677351123035 0.241907535118553 0.001 +1.062693300494224 -0.04132800768247764 0.001 +0.6544457596425639 0.2597179004159865 0.001 +2.528042630204499 -1.842409196565382 0.001 +2.759561375618245 2.604358220550892 0.001 +0.1672302653577033 0.5532215557743342 0.001 +0.3862478529416752 0.5524952023691095 0.001 +0.2869908954860885 0.887471169188493 0.001 +0.6322395853496341 0.7892000879010153 0.001 +-2.524589161430049 -5.714775771593049 0.001 +3.795095216084081 0.0185646909103318 0.001 +1.079667820726985 0.5023688711196836 0.001 +7.577537977563544 8.254669631122571 0.001 +3.595387390871595 -0.9323753346623339 0.001 +0.08557932743593304 1.009112294677859 0.001 +0.3711754077058074 0.1824649398162965 0.001 +0.9964716981486417 0.007050424836126295 0.001 +5.061561884953592 -2.274806129501789 0.001 +3.242167208924133 1.021018315618163 0.001 +0.5159161200501641 0.4416300434882661 0.001 +4.198669630590524 1.122066101886263 0.001 +0.3981936305825647 1.048434699145322 0.001 +0.3676114395913437 0.9542803664983736 0.001 +-8.253859871653644 2.070752205780556 0.001 +4.473016385776827 -0.8360023377330316 0.001 +0.3509579858852883 0.8857373258617054 0.001 +0.5268872791400719 0.8872273839029859 0.001 +0.4509230463983823 0.2171143502320102 0.001 +0.144168221703724 0.4832953524021563 0.001 +0.4518664399006695 0.8652029912716455 0.001 +0.8856622222020861 1.001246663990771 0.001 +-5.020412369122488 -1.727316088252273 0.001 +0.2443389898420575 -0.01069249745049922 0.001 +0.7446938604253162 0.1540323892911564 0.001 +0.5439410105205489 -0.06895690697783041 0.001 +0.1415903366161667 1.144376359418446 0.001 +0.6081968518176099 0.9098532570496645 0.001 +0.7080033727526438 0.4498255110760974 0.001 +0.505413713785268 0.2079213263016218 0.001 +0.9572543130804562 0.2521550945213925 0.001 +4.881633434136773 -0.01998575769139319 0.001 +0.3246977758250172 0.3774090409107407 0.001 +0.4865652582403861 0.7690195947389656 0.001 +0.5949794247235604 0.1132717048879464 0.001 +0.4154363354955532 1.078391890281734 0.001 +2.579973161642793 -0.4828981147080799 0.001 +1.781217641473256 1.98248225325221 0.001 +12.77896717234479 -2.860750598201857 0.001 +1.032298039180018 0.4078984273874409 0.001 +1.036239893006279 -4.179849245290449 0.001 +3.616198771354316 0.8270328083553382 0.001 +-0.06181201424567001 0.6651954147684296 0.001 +0.7098541855806068 0.8076147276374445 0.001 +0.8131782309276303 1.023609817019542 0.001 +0.4080979474655527 0.1060296874696288 0.001 +1.182179974818877 1.514805485380158 0.001 +0.5871971612858484 0.6755322487742762 0.001 +0.6811342929128995 1.059579104366451 0.001 +0.5453803860533276 0.3263947074099058 0.001 +0.5376915283630722 0.6089995660367977 0.001 +0.6218188902495538 1.078795774316589 0.001 +0.2472898693952864 0.7053837934996412 0.001 +0.4627788368202647 0.5949344510146284 0.001 +0.5199434347272875 0.8161628637225742 0.001 +0.5563596039787768 1.035671265326484 0.001 +0.4345840225088147 0.9077014204351804 0.001 +1.858951663771347 0.6693354622438452 0.001 +0.8847577177634206 1.048355673359114 0.001 +0.5762496769538256 -0.1214971968963013 0.001 +0.3262974195428529 0.9719242514776024 0.001 +0.8304888763185097 0.3527652560822701 0.001 +0.8505773822371527 1.056879920384367 0.001 +0.8313951636790265 1.104635961420215 0.001 +0.3287128134228649 -0.1387636842312214 0.001 +0.01467005226959777 0.4898086993084276 0.001 +0.1355991585068126 0.5962696041633755 0.001 +0.694609082329827 0.7168114171986462 0.001 +0.9948508287961906 0.4839634689216623 0.001 +4.125588664292176 0.7405697718855759 0.001 +1.029059625245627 0.2761840284088407 0.001 +0.4148672293526671 0.7075033435013386 0.001 +0.34625432363617 0.5152554134431175 0.001 +0.04818695167968282 0.7382048651712179 0.001 +1.125166258562937 0.7154455739339839 0.001 +2.103409324763498 0.7100332819659479 0.001 +0.9119354580546236 -0.04572865749358977 0.001 +0.5208969862099493 0.1563505365734493 0.001 +0.477727081998003 0.7356561468999501 0.001 +0.6117222616044531 1.121527888705928 0.001 +0.6025165678737475 1.038404448583336 0.001 +0.659360985108022 0.9796551745702485 0.001 +0.4669423974874284 1.020062730543645 0.001 +0.5014031003623381 0.6455653622973694 0.001 +0.3111513541423445 0.594716243629306 0.001 +0.7146328723675974 0.8772450274969769 0.001 +0.7658927269411163 0.8766009817460616 0.001 +2.412361846877851 0.3137200392925203 0.001 +0.4712589515100387 0.4117879700799647 0.001 +0.347495092307858 1.066037946139727 0.001 +0.3359694572469732 1.09302642254323 0.001 +0.0301002327529837 0.8724692552456296 0.001 +2.541221952441215 -7.905508842949613 0.001 +0.5325329672742938 0.6936283336528224 0.001 +0.5357420101358432 0.3632967580238665 0.001 +0.1232705593213659 0.2238982739827368 0.001 +0.5699558001288616 0.3969458022807193 0.001 +0.348745668613817 0.6654217667618368 0.001 +0.4372149845209066 0.1364689664502466 0.001 +4.532157916553106 1.69151292235863 0.001 +0.1581088099994874 -0.1100277966270174 0.001 +0.4809065583802304 0.3738460123098902 0.001 +0.5664942588808637 0.7543196766538086 0.001 +0.6849093091630547 1.011192046782846 0.001 +0.733148909774412 0.986396933684843 0.001 +0.5885518448507504 0.9699885724279509 0.001 +0.6878064010307697 0.9397569236273605 0.001 +3.647133083701039 -0.1848166501742454 0.001 +0.298441725582768 0.5330693416295458 0.001 +0.2853631042060159 0.5666585821973225 0.001 +1.218144625510936 0.0169723444543484 0.001 +0.5083918847874586 0.282781064547345 0.001 +0.5910700637052477 0.3090175124080414 0.001 +1.386868920031964 0.5575678964382218 0.001 +0.5174538787109467 0.5769570963848845 0.001 +0.5580551018850743 0.8049500925331099 0.001 +0.7657849504896606 1.028440320559245 0.001 +3.341047063553487 0.6448134766630853 0.001 +0.5803885348759866 0.5486550411541794 0.001 +0.4578843147288351 0.9328501040136998 0.001 +12.97890588208397 3.396210654426669 0.001 +-0.0144060450350288 0.4490165520312403 0.001 +0.5303519747684411 0.7255584555341631 0.001 +0.4258424367830221 0.7926293560109982 0.001 +0.8091503498031607 0.6702736117052203 0.001 +0.3043275210359546 0.6337099772833624 0.001 +0.3673702533209334 0.311141314741833 0.001 +3.095081706694943 -0.1037715500180562 0.001 +-0.2890336771421049 -2.182234490574724 0.001 +0.7403959269221574 0.7254616766734218 0.001 +3.179235149212964 0.3387024047934309 0.001 +1.603855639824226 -0.1925618772521805 0.001 +0.5164139594156437 0.5271813699368965 0.001 +1.078617087765571 2.019470575164002 0.001 +0.9079132016036425 0.3791450627357604 0.001 +3.942238354703125 0.1513467586940846 0.001 +0.5814852055691658 0.1960311021146663 0.001 +4.436119278292753 0.1965066302352522 0.001 +-2.086953920399566 2.236310982542306 0.001 +-2.97177936636579 3.301675654380886 0.001 +0.8964290315632359 0.6343894594137619 0.001 +0.1182934033693755 0.8628745486461531 0.001 +0.4072734773065879 -0.02721799454944669 0.001 +3.406896571234533 -0.2448390678469274 0.001 +0.493479731265721 0.4919715769364478 0.001 +0.2122309801005343 0.5486625987636702 0.001 +0.2329249249899455 0.6161063151350813 0.001 +2.91713105221846 1.20725643209398 0.001 +0.619184890835857 -0.7976485176008624 0.001 +0.7916825529915944 0.5457570561220318 0.001 +0.7619342596660773 0.6788531357676219 0.001 +0.6100901166812336 0.9918836346380471 0.001 +0.3304674301662673 0.2403266691962891 0.001 +3.586108941984929 0.04055193570183697 0.001 +0.3845330215764559 0.9265122831785744 0.001 +1.605343745859053 0.6005858019572984 0.001 +0.9357461754090362 0.9835523534506462 0.001 +1.778738691169073 0.2295891112421587 0.001 +5.707043873898095 -2.322398709678944 0.001 +0.6119068411783571 0.4647541029315673 0.001 +0.445694673978365 0.6222915425282568 0.001 +0.6047273247205123 0.3885208199788732 0.001 +0.562920502796406 0.8856175232041417 0.001 +0.5717345661600348 0.2439130901066075 0.001 +0.6469065699112746 0.8937949239704577 0.001 +2.356125684699313 0.7153178141211005 0.001 +18.26967726024188 5.936191139829474 0.001 +0.4901797429802636 0.8591254569974189 0.001 +0.7436375950177588 1.208956320945203 0.001 +0.7002465140150556 0.5711815584543696 0.001 +0.5858833890125665 0.8399899552258399 0.001 +-0.01330095297900872 0.2975965814157023 0.001 +-4.595494057120941 5.569136530070042 0.001 +-0.2215165355254179 0.3538361568924884 0.001 +7.457213701913715 4.533055471461389 0.001 +0.6114432897032983 0.6307568217401809 0.001 +0.6561830552949405 0.04097286777707449 0.001 +4.186293233307018 1.312910472299433 0.001 +0.6237538391962607 0.831789702121943 0.001 +0.9622050396151233 1.032583522483741 0.001 +0.6088969223304412 0.2797351845204296 0.001 +0.5451717027862493 0.4377192389697387 0.001 +-0.1045363648084554 0.9340396568606257 0.001 +1.191020068847308 -0.6339972416388847 0.001 +-0.1088024527300128 0.3155290223708724 0.001 +0.5058935341903369 0.9330312745805976 0.001 +-0.03968899990490184 0.7055484946513085 0.001 +0.412261643270052 0.4746451023585438 0.001 +1.001333696460203 0.564418383112146 0.001 +0.5623664074195636 0.5197321457434819 0.001 +0.4389390797673426 0.5429291304432327 0.001 +3.288802346367641 0.1227212910906179 0.001 +0.7435154446948109 0.9560523034631625 0.001 +3.818417949337376 -0.5317407688829444 0.001 +0.4043608258085645 0.3452953651738866 0.001 +0.2493623866697199 0.7929886981516383 0.001 +4.154535892618282 0.06629959744572773 0.001 +0.6008361676424835 0.746301794969555 0.001 +0.6546963592529274 0.5825746748349311 0.001 +3.093520592412481 0.2408365420983552 0.001 +3.202737025779733 0.7435431732507256 0.001 +1.271063148305069 -0.2196479888404583 0.001 +0.5094663814502463 0.08208570872585166 0.001 +0.5911717945454582 0.6019311154568102 0.001 +2.286651614399895 0.86348364206021 0.001 +6.532329823197732 -1.003092504240107 0.001 +2.628349455189968 -0.9927122909370028 0.001 +2.984315037714991 -1.130701716428963 0.001 +0.356616993138393 0.7685522911444991 0.001 +0.3716925598952007 0.593661459148487 0.001 +0.4473274454519504 0.9878011490720264 0.001 +3.623118520405615 1.129223617456931 0.001 +2.278810170157742 2.918066326944719 0.001 +1.097344616991903 0.2155340348523151 0.001 +0.6814759040160805 0.6461703902787866 0.001 +0.4671804283467598 0.2937746901001389 0.001 +0.6651166096866117 0.8597567338001059 0.001 +0.4788373141339974 -0.002306592284798803 0.001 +0.855699753539124 0.4121999205877696 0.001 +0.5782751385564017 0.4771825480267348 0.001 +0.6823510885721067 0.3754683595121198 0.001 +4.154660525336753 -0.2345495500631528 0.001 +0.5269364317429233 1.019804012975863 0.001 +0.4587317816528858 0.7097765057132795 0.001 +1.936557160269518 0.8163464362161712 0.001 +3.1133075844912 -0.2791603037577972 0.001 +0.6836181313063522 0.296462810733947 0.001 +-2.141056214724164 -1.468530101152089 0.001 +3.141774343799283 0.6126044746031988 0.001 +0.3873891023788766 0.4000068367737178 0.001 +0.9693598626803414 0.3339997112802719 0.001 +0.9111276772544937 0.4552502024966612 0.001 +0.4710909869264943 0.6536248809092542 0.001 +1.323348366321442 -0.03639189166045147 0.001 +0.1562496916644581 -0.3021031993558241 0.001 +0.827907553029279 0.4687106852960954 0.001 +1.00769135672669 0.2333904794663685 0.001 +0.2742691186734523 0.3155901321134848 0.001 +3.886384303676329 0.6978144496682367 0.001 +5.824618467696966 0.09801509281178977 0.001 +0.7590398941807741 0.394813621575876 0.001 +0.7799317441120256 0.1371319608127403 0.001 +2.605004278205587 0.6955659518996903 0.001 +6.519957719808422 0.79654354145415 0.001 +0.7029261894750874 0.1056451501948568 0.001 +0.6520348376823577 0.615043611449875 0.001 +1.72588531754401 0.8087109996957847 0.001 +1.494556147135366 0.01352315771318777 0.001 +0.8188865864748828 0.9885274472248893 0.001 +0.7620759123147651 0.3158706829678329 0.001 +-0.3577208941842511 1.181214869880611 0.001 +0.272523975123021 0.1251018447199438 0.001 +-0.08310507573617015 0.1930848929147403 0.001 +0.001152467676093018 -0.06865522351982851 0.001 +0.01724134191695813 -0.1102729118578529 0.001 +0.0715904403538692 -0.1196685673419667 0.001 +0.3596141586272884 0.4772754249289652 0.001 +0.05305311937503931 0.2324961233577783 0.001 +0.7149452363869567 0.9287169499607804 0.001 +0.2678044146547383 -0.07601225366798345 0.001 +2.116556181543042 1.79824714964254 0.001 +4.927981388374888 1.558116937883166 0.001 +5.473149077951028 -1.0717192548324 0.001 +0.3827021684707229 0.6706278433574978 0.001 +-0.01907556909505837 0.9527310852852293 0.001 +0.426777083094028 0.2631510888410954 0.001 +0.6423016729923517 0.5459656553081362 0.001 +2.632056381856315 0.9602656418876491 0.001 +0.2861518992062558 1.102822195269843 0.001 +2.120979429269985 -3.046175593428934 0.001 +3.083580421436705 3.714839256105568 0.001 +0.6583678494306052 0.3253292699740366 0.001 +0.2112130205130872 0.7033664232159483 0.001 +0.9663556432839489 0.4370126706777318 0.001 +0.1369487109919134 1.46453870772363 0.001 +0.8017168259941588 0.07700456338693405 0.001 +-0.8367697493325562 -3.108352509036747 0.001 +0.6406322598040952 0.1380580617972031 0.001 +0.2532708011085542 0.8576182304538867 0.001 +0.2762366898234471 0.3965963153449032 0.001 +0.697693379320117 0.8477575404123699 0.001 +15.59212638861789 1.975431304067094 0.001 +1.278524409813104 0.8606242399105715 0.001 +4.673034114649298 -5.054131283983663 0.001 +-0.06830504393599093 0.5807229334664569 0.001 +2.34903103532068 1.637788222406826 0.001 +0.3478493436520532 0.8106985602956966 0.001 +0.6136345700108443 0.7034689930228042 0.001 +12.9049337565403 2.099350007938687 0.001 +-1.555330225495244 4.431607063086831 0.001 +0.2782238677015986 0.7411697447278288 0.001 +-0.05318741031273556 0.3228067779140913 0.001 +0.1648870540241262 1.047344951653374 0.001 +1.730437721725341 0.4898738761477661 0.001 +0.1220375213700526 0.185577185178309 0.001 +0.7690011421175262 0.5232392803518704 0.001 +3.019572260654398 1.867492411477637 0.001 +1.539044420989764 0.8589058955411705 0.001 +-0.03294303778444866 0.6177451827178454 0.001 +0.9250919439058864 1.073143761012975 0.001 +0.912100101098875 1.13052677616466 0.001 +2.245429052204594 -1.010954390058926 0.001 +1.044756586997775 0.03691694847242628 0.001 +-0.008247588026420012 0.4151878362873772 0.001 +1.336896672962908 0.1477950655136267 0.001 +1.730464320175995 -0.1889116316594668 0.001 +1.480350700109986 0.3039243185278653 0.001 +10.16931638258717 -4.451643246090582 0.001 +0.9667470152261646 0.3693400471766933 0.001 +0.8505603832033302 0.1197318267652604 0.001 +-0.04965332207718895 0.06911866670210486 0.001 +2.017230314896796 0.3206465050485028 0.001 +1.419372977735886 0.9719150487230006 0.001 +3.942726253619311 1.329407322295156 0.001 +3.687766446133841 0.7644939522063116 0.001 +0.9619884246261804 1.068365946184463 0.001 +2.286495609986726 0.6122804642126185 0.001 +2.34655636274122 0.5022947198047646 0.001 +4.455904628703259 3.095548391343112 0.001 +3.634476600225027 1.461888031312468 0.001 +0.9049908023961726 0.1160724690472079 0.001 +2.041065687645184 -0.3882381634147458 0.001 +0.8825374242601399 0.1968746250828307 0.001 +1.464196704288294 0.1787705980463584 0.001 +1.055415135523014 0.3602792256347273 0.001 +1.06112790258839 1.028622779799711 0.001 +0.2805902164212682 0.4977495364880919 0.001 +2.148475309670681 0.9870478167556673 0.001 +0.668838001453254 0.4245171034824563 0.001 +14.57266433410239 -6.266484392918422 0.001 +0.06515505711592758 0.4292826512041749 0.001 +0.6731588784773789 0.6842843550386539 0.001 +6.779060078027076 -3.495126472568568 0.001 +3.958829875661274 0.5080463928901606 0.001 +0.9561713956030126 0.5885821454059659 0.001 +0.7089916501933861 0.5322613557546068 0.001 +0.8674240375847265 0.9848046936225945 0.001 +0.6698017578982713 0.7853474722837959 0.001 +10.21123261345024 8.317735918788379 0.001 +-0.235633425014404 0.663116373717672 0.001 +0.01364969303993683 1.023924581898869 0.001 +0.01172726163351467 1.068591619298826 0.001 +0.1779820482935793 0.008946052518915962 0.001 +5.977628669159311 1.768775369061408 0.001 +3.887717390944062 0.9092318561759132 0.001 +-0.8657372811836016 1.630978862200474 0.001 +2.887392269463332 0.1635925924203501 0.001 +0.2484463977734324 0.9398180858149512 0.001 +0.1569860895693981 0.9245949910007989 0.001 +0.9456032132080398 0.28412983889692 0.001 +1.228035874951855 0.2975769902712795 0.001 +0.8037006308736437 0.7436300595332577 0.001 +3.383452061136722 0.079563893237414 0.001 +1.056093792074626 -0.1032715229954035 0.001 +1.127393952564334 -0.1422872049359835 0.001 +0.6947187015835544 0.5024653478548541 0.001 +0.9928694519501617 1.101338754389172 0.001 +0.885227860163878 0.286658227827173 0.001 +0.8234806647741602 0.4026656542046909 0.001 +-0.08331590012991782 1.28251263224974 0.001 +-0.2730441066435888 1.320467977205973 0.001 +0.1498147353228326 0.3406108738312058 0.001 +0.4665945441645294 1.059531744034885 0.001 +4.520545972557373 4.949640788424868 0.001 +3.635586753016156 5.855454388658346 0.001 +0.01431863745556023 2.631124790007747 0.001 +0.8942951482743051 0.8169663796570107 0.001 +3.852075951314722 -3.19091121097627 0.001 +3.099733893338311 -3.658283891925805 0.001 +-1.291097496442739 2.345103223709073 0.001 +0.8661937644357173 0.7288494033137187 0.001 +2.712083732179924 1.124974457011607 0.001 +1.067359193061921 0.1753728863363881 0.001 +0.1947679400556671 0.7930345394333608 0.001 +2.160475856386416 0.4935591427603302 0.001 +2.437291752927037 0.7234966787739197 0.001 +3.951146680462486 1.670609207184752 0.001 +2.154862303474564 0.04433618738383958 0.001 +3.297668588864891 0.2803375636505154 0.001 +-0.3969796151927921 0.6186747262722961 0.001 +-0.5501038909971956 0.4898496345590248 0.001 +0.05961053364064677 -0.02183041575882852 0.001 +0.1439356247149477 0.5212070577891441 0.001 +0.8999700567376221 0.8481574663318435 0.001 +0.8844813469935036 0.9304661331708257 0.001 +0.8475552566796501 0.904898907486735 0.001 +2.682133463090947 1.25447294894414 0.001 +0.3355521551358787 0.4423286370604539 0.001 +1.538865017638769 0.4331800950133401 0.001 +-0.06179107367455115 -0.008917276436356909 0.001 +0.9003878173327542 0.5545227565772134 0.001 +1.143654138994823 1.122039034123457 0.001 +3.176395392749722 -2.168335086745063 0.001 +8.408969348481252 0.2293957761738318 0.001 +3.456079622290875 0.179228995133819 0.001 +0.7507707928859683 1.075992851182967 0.001 +0.7040463901896417 1.082693669340202 0.001 +0.6858987060230712 1.13864506717061 0.001 +0.7330448302010163 0.6339879661826551 0.001 +0.2658146548311308 1.023786830187037 0.001 +-0.231331919437646 1.069564677740164 0.001 +0.781029269847019 1.099889651588475 0.001 +0.3541646923833268 0.3996813085438806 0.001 +-3.266713022353968 0.4496521538313465 0.001 +9.66423111847287 -8.218960607740962 0.001 +0.1798063821042042 0.6729671851943889 0.001 +0.8451699518440539 0.5732243760557223 0.001 +0.71921427528644 -0.3801379317639285 0.001 +2.238266901487239 0.2476142680649086 0.001 +7.239616869356635 -8.063135525446087 0.001 +0.5017202972747284 -0.08136358956556707 0.001 +-5.601191191611653 -3.833998868802495 0.001 +1.498590906682764 -0.2177213778670891 0.001 +-0.03714470039224333 0.01850115369014412 0.001 +0.2936702614032248 0.1559956401614808 0.001 +15.88438371889848 -2.242161065250387 0.001 +0.9222663503652009 0.922069333943514 0.001 +1.008004108524291 0.3326273681660733 0.001 +1.082422570037913 0.3401196613038098 0.001 +1.103034717852983 -0.03303700440293646 0.001 +1.161720993299124 -0.06333312766627429 0.001 +18.29861055551884 3.255058981207484 0.001 +0.7156405399295154 0.03734608165277622 0.001 +2.604799975562064 1.393932874349325 0.001 +-0.08763811103482773 -0.09677748293856836 0.001 +-1.750578572483549 -0.3090420484370635 0.001 +4.845270691342968 -0.3574684540361061 0.001 +7.266913312909063 -4.747437072863518 0.001 +0.7628191973570911 0.481468857889918 0.001 +9.73051534140933 5.682768923463311 0.001 +1.045540379627103 1.083640148710514 0.001 +2.979573636429407 0.2994758608021709 0.001 +-8.300834028166094 -0.5482613332291245 0.001 +4.185700527202277 -0.1048746664478994 0.001 +1.017377761293705 0.7755394650259327 0.001 +2.543856315496217 0.1029076255980172 0.001 +-0.01622080481322628 1.087506612507764 0.001 +0.967296802880842 0.7639512113638616 0.001 +0.03339159969887516 0.3465938205527651 0.001 +-0.01648247257093823 0.3847515630087116 0.001 +3.042801507512205 0.4455128955257832 0.001 +0.9279699177496383 0.002189749300555373 0.001 +0.8985302419908214 0.05057798627768578 0.001 +0.7572900293044951 0.7560112826919309 0.001 +0.9439566728715805 0.8037112450613304 0.001 +-6.00863633774731 0.1061628271423925 0.001 +2.032573368568273 1.184109579798224 0.001 +0.3697466704474341 -0.6356703536983073 0.001 +0.5518320143499125 1.235549071259161 0.001 +1.38988711145893 0.7921520300494985 0.001 +1.032399718293678 0.6921525612456846 0.001 +15.03946627915049 6.349670605740387 0.001 +9.536980950640681 -2.740427566036986 0.001 +3.909979483316622 0.3464135771404566 0.001 +1.337882342778376 0.3331643094346736 0.001 +0.1912545554125717 1.129388524484787 0.001 +2.573700539899557 0.4931491367857356 0.001 +0.02183707509339827 0.9472687425797471 0.001 +0.8533978511744496 0.8671212966775651 0.001 +0.53965566324442 -0.02444191857381613 0.001 +3.799449115625912 0.667132552032227 0.001 +1.558697128371718 1.453047514180241 0.001 +3.394491516619625 1.19457099007171 0.001 +2.69977483677095 -0.7658824274255407 0.001 +0.2021067774655116 1.043519253831255 0.001 +0.7695911078350731 0.5911547026674525 0.001 +-0.1273871880896834 1.111715175291146 0.001 +0.7733353467065127 1.86297812841292 0.001 +0.8787298022844101 0.7970663440671389 0.001 +0.889231415033455 -1.059507893461128 0.001 +2.706396089045454 0.2100805393017364 0.001 +4.63715124818692 -2.052985236169459 0.001 +0.1962239302477234 0.4730227449008995 0.001 +0.9578505496613592 0.1849828553114424 0.001 +0.8795983338028934 -2.049233027098007 0.001 +1.477796483303008 -2.254258126581151 0.001 +3.688486949371848 1.017168639036194 0.001 +0.9295741868001177 0.8765888137247545 0.001 +0.9526241471122464 0.8686637474836658 0.001 +6.672374906819245 2.31982466934955 0.001 +0.8029001354906706 0.9132444303086038 0.001 +-0.104557104212494 0.5838754529706335 0.001 +3.516435638945586 0.3996813621888184 0.001 +0.9962734008478642 0.7069224240174258 0.001 +-2.857868474689667 6.333541234146255 0.001 +0.2576370132614128 1.077657185719439 0.001 +2.005049781376508 -0.05388927168505162 0.001 +1.008702044288296 0.8007200689583858 0.001 +0.9994952522549755 0.8962247662316263 0.001 +0.9920827469926857 0.753191558246035 0.001 +0.9679813275709478 0.02668918368863984 0.001 +0.9610649864282891 0.06800616600603941 0.001 +1.099574715809323 0.8930305040340537 0.001 +-0.01156681418150664 0.8701180158839974 0.001 +18.51314755386365 -6.275336822556814 0.001 +0.9705366194986554 0.8272895339591333 0.001 +4.45537201509852 1.309562168461101 0.001 +0.48763867029358 -5.946427199167061 0.001 +0.4922474000608586 -0.3230069969858104 0.001 +-0.2194794156353727 0.1544627931718091 0.001 +0.1123164832402237 0.02061732440780107 0.001 +3.666101376481083 -0.5308201252389252 0.001 +1.068147597748065 0.7295227003399763 0.001 +4.969350800879315 1.209793429223461 0.001 +1.072351791268953 0.02276873454562089 0.001 +0.04418800586075477 0.9615034298449097 0.001 +0.832093633764629 0.7892570367146304 0.001 +0.9957142990619933 0.9403842793786789 0.001 +0.09399958243792821 1.125526300520572 0.001 +0.1297669674836666 -8.933788866000162 0.001 +1.033774692902809 0.4820216604920846 0.001 +2.599352663484763 2.149138856527391 0.001 +2.964356863236368 -0.5879132364980008 0.001 +0.5508471969963628 1.084851640577373 0.001 +0.5041584619246151 1.091163123452302 0.001 +-0.02739508049842828 1.446488719960157 0.001 +0.2286111663365511 0.1619801085820669 0.001 +1.223743520966383 0.4728341481025958 0.001 +0.9291923304320528 0.6851958113971837 0.001 +-3.168132177035708 -8.143526634138773 0.001 +0.6057665006607462 0.0784293701831429 0.001 +0.9799298447183556 0.640825255354565 0.001 +2.881389371127895 1.047560761381866 0.001 +1.088979736379151 0.7958327175034274 0.001 +1.085180933261575 0.8287644496101413 0.001 +1.135299833674484 0.7705286496242634 0.001 +1.464352720191569 -0.4953237181130306 0.001 +1.313523548991605 -0.4909597217417231 0.001 +2.014388317633717 0.597177544589214 0.001 +0.9227954874489405 0.5871777723974813 0.001 +0.8487296054532667 0.6057787680971524 0.001 +0.1283569314056224 0.7813004526088744 0.001 +-6.84571954165116 -2.372463384879885 0.001 +16.53698173600453 -8.468423244947552 0.001 +0.1324737192732494 0.7488990985495274 0.001 +1.025363365193937 0.8776269945517406 0.001 +0.7408099296039705 0.7981448609935711 0.001 +0.186867117127739 -0.0721393702483433 0.001 +0.3064489892754505 0.07487713385739969 0.001 +3.531260522210959 1.267330126735388 0.001 +0.8388942125964566 -0.183357341467515 0.001 +4.422054604134435 2.020097761347622 0.001 +2.219793933289156 1.361822764317778 0.001 +1.931679627196396 0.5724711516841655 0.001 +-2.043327194682207 -2.795513595197216 0.001 +1.088557986992818 0.2929321730629332 0.001 +0.1552512676990091 8.760100126014191 0.001 +2.789672428538652 1.021042767116238 0.001 +0.2190920181147856 1.081601347252107 0.001 +0.2196887174004901 1.33457584226857 0.001 +4.268982428987345 0.9659412446049355 0.001 +0.9156114583034085 0.1656256694940996 0.001 +15.48944650428619 -3.175582788985542 0.001 +0.3301785110630983 -0.05705607983454802 0.001 +0.4107757033947477 0.01776129962971804 0.001 +0.2467379156270151 0.04695183390554479 0.001 +4.069755240903282 -0.5776858109277163 0.001 +0.3479985956187363 0.1185709592544801 0.001 +2.645204784435004 -0.2243069942813098 0.001 +-0.1336447359505068 -0.05737054221270466 0.001 +-0.2411500732559661 -0.07202010065390546 0.001 +1.99087416500002 0.1989459120728127 0.001 +1.047476658267468 0.6566592383846379 0.001 +1.545824579075672 0.6689256081095127 0.001 +2.949829984322612 1.46869673231898 0.001 +0.1484169231651584 0.0447190364610757 0.001 +0.9825906139851072 -0.03950428097905201 0.001 +0.5654375935885442 4.640696117954913 0.001 +3.880733513820213 -0.4397984246160994 0.001 +4.831083277020658 -1.23704350260242 0.001 +16.54031958635693 0.9914376461960928 0.001 +3.135663988567416 1.267824200411026 0.001 +0.8432079734603961 0.1480785241527083 0.001 +4.242629474845432 -0.3978219561841396 0.001 +0.0619244394819445 0.8227641083284548 0.001 +3.364690295941071 -0.4882472883169712 0.001 +0.2974499186433007 0.2055870868012722 0.001 +0.0930675900450126 0.5333642089799071 0.001 +1.838725198878268 0.9983645993509873 0.001 +1.468565981753992 1.089608888123182 0.001 +-1.396371834442967 -5.106359657284322 0.001 +3.615938092496002 0.5914930016579616 0.001 +3.971371384277913 0.2707297919337315 0.001 +0.09076299985567976 0.3396988450049834 0.001 +5.048737217358035 0.8599581775980515 0.001 +2.839355001661989 0.6946605709176583 0.001 +3.043600517779435 0.9893232646365384 0.001 +4.032251240023252 0.9120391547227957 0.001 +0.5698560900601592 1.114145684501111 0.001 +0.3106008761742069 1.512323365432335 0.001 +4.133963619218822 0.2681588865792331 0.001 +2.596628651533822 -6.615299019979365 0.001 +-0.1562035239258319 -0.3866790373019283 0.001 +2.895714848832472 0.8817289532759083 0.001 +0.3751402903071485 1.283376055054141 0.001 +0.5833787827150518 -0.1845697183536805 0.001 +2.163762215597076 -1.618776352920921 0.001 +1.210272916151146 0.7405030283112828 0.001 +1.953135248906948 -0.2399272718251621 0.001 +3.627371087911663 0.9385886935662111 0.001 +1.793148030785638 2.289394919010895 0.001 +0.3189749168743947 0.8955444616285235 0.001 +-6.329791261915089 -8.356096890127647 0.001 +1.046680406284403 0.4238063669511364 0.001 +14.03205324025292 -0.5986482306877673 0.001 +2.749957238250069 0.8173065718359387 0.001 +0.08305831076108026 1.050485596471145 0.001 +0.6487982818325819 1.160053550418316 0.001 +0.2631023157243332 0.2820162814220684 0.001 +1.863646676086631 1.46363547868388 0.001 +2.340417725133865 0.326655273500338 0.001 +0.9019682980603545 0.2364822883587951 0.001 +2.646224644047636 -0.401628853839437 0.001 +3.857544909836678 1.982352891111596 0.001 +1.566122077841346 1.060949633343642 0.001 +1.600228785870359 0.9471356378427916 0.001 +0.2275038283766376 0.2335311997909467 0.001 +0.8152020730961654 0.6109839705584822 0.001 +0.355335915076981 0.2207566271208816 0.001 +2.597670732281445 4.609336325531268 0.001 +0.1599519861220643 0.3696452808616129 0.001 +4.888033964879316 0.4535054678284071 0.001 +4.900419485248775 -6.148505694148499 0.001 +0.03873402276494201 1.003243588945291 0.001 +1.749677319220625 0.6934525930894178 0.001 +1.694762111014809 -0.3799588455816288 0.001 +0.9440350893541282 0.5154584765986783 0.001 +0.03300387386829504 0.0882558604451049 0.001 +1.073033549301817 0.5661097271547888 0.001 +1.122895975253661 1.031962450031056 0.001 +3.212561316723093 0.9234228556473673 0.001 +1.056984829312878 0.1012171758243352 0.001 +-0.1401122109874581 0.8257489189790651 0.001 +3.811031231677526 -0.9953452382637276 0.001 +3.708952569244723 0.1724428149650128 0.001 +0.4947817989919641 1.134668656386434 0.001 +2.432067851108089 -0.1043028699006817 0.001 +3.290295544016314 -0.07065414314528123 0.001 +0.280938848160873 -0.01430425834028503 0.001 +0.2264092421217185 1.015950016845558 0.001 +3.375741822720868 -0.8400050640906536 0.001 +0.1353009095861752 0.4506119050255529 0.001 +4.2212996741001 -8.324555308948067 0.001 +3.086309068123584 0.8919415930897731 0.001 +-4.941524686143516 2.795740273759077 0.001 +0.3210150967783506 0.01130489528667905 0.001 +0.07344283681976065 -0.06929776898959908 0.001 +0.2157512583735579 0.9062184716405949 0.001 +0.1509415573247308 1.073444446060782 0.001 +2.190474336977743 0.408850118664029 0.001 +4.033136644137432 -1.310653049813715 0.001 +1.250070263734695 1.081967586245362 0.001 +3.268009134548979 -0.2235540577080317 0.001 +2.578548693229704 -1.336152352918889 0.001 +-1.627417487729631 0.8519318233179979 0.001 +1.168646080760123 0.120869806309421 0.001 +0.8789788663213853 0.4960566758004679 0.001 +12.12202259948117 -6.845196818695514 0.001 +0.08849917356887826 0.4684141893489343 0.001 +9.969922763097621 3.245442432984487 0.001 +-6.238452380975549 4.965489841298582 0.001 +1.143813829914478 0.6017974124381729 0.001 +1.992926175547171 0.9856420253271643 0.001 +1.344133478681238 -0.8682344974598966 0.001 +13.82288113703535 -5.457690958137229 0.001 +4.093659292573527 0.822039765727784 0.001 +1.071485310744115 0.2646152571045118 0.001 +-0.06151416398490724 0.2457262564870936 0.001 +3.615373749037249 0.2830862215455995 0.001 +0.926613341139597 1.302046465936464 0.001 +0.176485267102463 0.03845140717141533 0.001 +0.2813351970871163 0.7671610984927969 0.001 +-0.0492702265324898 -0.1801977892318443 0.001 +0.7821464615043515 0.8272167022367868 0.001 +3.390493829736503 0.7262353270608548 0.001 +3.795520577327077 0.2887067013909681 0.001 +0.1289791356077253 0.8139424067865717 0.001 +12.87303237553794 0.7639087839588956 0.001 +2.618977865562189 0.2236783182782389 0.001 +0.2380702575504079 -0.06129731074359912 0.001 +1.728130391898113 0.1367579481024129 0.001 +1.01974889125945 -0.03177026231575229 0.001 +3.772213810975809 0.8662972044095065 0.001 +0.2947100195940962 1.152266898287213 0.001 +2.250394947805162 0.7687446758177736 0.001 +1.000238753336568 -0.114882925766265 0.001 +0.0169911838263856 -0.03405875806966454 0.001 +-0.8545258042076687 -0.7122612591050955 0.001 +0.2006404630803381 0.4354297654814122 0.001 +12.98095284322565 9.087216711348669 0.001 +1.320013895720325 0.463404232729869 0.001 +0.9176019837063401 0.2963937687756935 0.001 +1.764520832008831 1.011467038230485 0.001 +2.138797442942669 0.3249521468489829 0.001 +3.269758402573616 2.070506749322449 0.001 +1.933180547645977 1.210272419563201 0.001 +1.043344648682136 0.9051839068413002 0.001 +0.6247987166053846 0.1888130292496926 0.001 +0.224770500682347 0.5220521187616016 0.001 +0.6596996465088992 0.09022858099800006 0.001 +1.810836007724953 -0.07076797835680795 0.001 +1.82245099426875 0.8907396895644879 0.001 +0.04544395975664286 0.1845309521825256 0.001 +2.737958614091403 8.175200266189826 0.001 +3.16522340253673 0.4103847787881878 0.001 +-8.526540318005264 -4.262353059386077 0.001 +4.976372028691885 3.276937026144728 0.001 +0.4495390831932441 -0.08267525156158857 0.001 +3.415657825569568 1.100562092082842 0.001 +12.03555430746091 4.803327316399032 0.001 +3.424523419722397 0.8259435286666179 0.001 +3.856463491221135 1.049007134499309 0.001 +2.950334582244849 1.003216305628903 0.001 +1.682868492422797 0.2991444052036364 0.001 +2.570343557107975 0.3197840143614615 0.001 +3.308289636915112 -1.425870276453644 0.001 +4.442904295395113 -1.63170639251484 0.001 +0.6765744385361018 -0.1737559242798148 0.001 +2.69316377691516 0.6058832314873603 0.001 +0.3904195493590595 0.04881538601545085 0.001 +-0.05215436073468871 0.8129234646708823 0.001 +1.32925770961725 -0.1349742184363648 0.001 +4.110048487838413 0.009592544029036981 0.001 +-0.0388433494815289 0.1869903220722174 0.001 +1.20707854264729 0.3551646955385214 0.001 +1.924092929121419 -0.02410524764467045 0.001 +4.512736542360448 -0.007002086195714474 0.001 +4.66553106570335 0.0007968935916348469 0.001 +5.365268886390241 -0.7335284384690738 0.001 +-6.379667587043922 3.017831608070959 0.001 +7.513711754769714 2.889905989822728 0.001 +1.0386041866267 1.216224940708003 0.001 +1.072087213281205 0.2014505927896456 0.001 +12.76258115637707 5.812522176177646 0.001 +-0.01435348086336867 0.244349705833109 0.001 +1.617547070654517 6.125143508290731 0.001 +1.173225891331794 7.173331038974051 0.001 +3.527665713779987 -0.05708333276469349 0.001 +5.620371791716641 2.777336479744881 0.001 +0.1862403139978319 0.9686289460989892 0.001 +5.523090917208815 -4.1766741388129 0.001 +1.048485514798969 1.05765784603899 0.001 +1.136217924920205 -0.1064247711622665 0.001 +5.271137883611464 4.892953838080411 0.001 +0.2954120788581108 0.2373240708012624 0.001 +3.788929628316717 -0.2418815585243445 0.001 +3.361719724635384 0.4538011812707315 0.001 +3.260520067173825 0.4878086198636023 0.001 +3.455856177803036 0.559435702520983 0.001 +1.605280382360407 -1.429135704300452 0.001 +0.842000900413469 -0.07557033934062507 0.001 +1.602598849210799 0.01365453775859432 0.001 +1.690898742155926 -1.963415198226957 0.001 +-9.079173596684074 4.949027381331151 0.001 +0.1431388611793234 0.2992360451958994 0.001 +1.598509302101065 0.7901412942380133 0.001 +1.436736808507252 0.8978082193220343 0.001 +2.772384029928864 3.348079182517669 0.001 +2.077294661822002 1.464863311523112 0.001 +-0.04701046877678752 -0.05511503176760194 0.001 +3.011061094647436 1.172873750338429 0.001 +1.222658907532557 -3.287911216192172 0.001 +1.695417144313179 0.923389830374561 0.001 +-0.1095921474767321 0.2823329905274962 0.001 +1.715085628311754 1.102226153002197 0.001 +0.7636296465003881 -0.07649311599870534 0.001 +3.975633713167402 1.030024897246611 0.001 +1.706992194885321 3.057618676936276 0.001 +-0.09616503654990793 0.6626757349089527 0.001 +4.564153477796779 0.6748571298946232 0.001 +4.345204716640544 -3.153767061411539 0.001 +0.0564556880438731 0.3608630475395637 0.001 +2.273201538829197 -0.308537263914608 0.001 +2.173806370045667 -0.2625642971376081 0.001 +0.01167106968381271 0.1439554068659226 0.001 +0.9403034562192659 0.2267058069744267 0.001 +0.2099132190387972 0.3012113418564452 0.001 +2.773475424308497 -0.059234538761926 0.001 +4.572395551521375 0.4189300698281964 0.001 +3.976826447272209 0.4248377967460615 0.001 +4.053447309660055 0.4264424258323565 0.001 +3.537858263576088 0.9751061146756352 0.001 +0.3341970704861619 0.2858541982009603 0.001 +0.399147407878955 0.2704151963335782 0.001 +-6.937087903608831 -5.259730573332032 0.001 +3.527690438285621 -2.555651182082451 0.001 +0.222961233065847 0.7692113319499981 0.001 +4.08229657479184 0.6562098588512902 0.001 +3.365708099329813 -0.03509297942145686 0.001 +1.076083421363175 0.5986125514218522 0.001 +0.7966452729335289 0.2080335005476572 0.001 +2.870401863461716 -0.2015040916559531 0.001 +18.55619916480617 1.753050005139899 0.001 +7.227423349722627 -1.277581834718821 0.001 +-0.1409993484272377 0.5030605825983656 0.001 +2.691285211956015 1.900837552231647 0.001 +2.824913573882655 0.2515542997117159 0.001 +0.24329383425416 0.1981140437165191 0.001 +3.310535398301742 0.8634044287191951 0.001 +3.704042101580082 -0.02682616317125796 0.001 +0.02083779937872367 0.7533133195945592 0.001 +7.157396090317134 5.461888430232446 0.001 +-6.90902828832728 8.63675649185998 0.001 +2.811535217298311 0.6376583333473858 0.001 +2.441197248619818 0.5885772868668873 0.001 +1.171404265775272 0.8407233814646713 0.001 +10.95795190029371 7.263070638883065 0.001 +4.107587480270688 1.651173375764796 0.001 +0.3047134181709817 -0.04986948034415671 0.001 +2.352052620279658 -0.5682774551840342 0.001 +1.600384005353974 1.110930976359036 0.001 +3.00408142226222 0.6072981182276337 0.001 +1.123975500475538 0.3805819211737846 0.001 +3.135022687800062 -0.8316398558806688 0.001 +0.1098205736757257 0.2741257331422018 0.001 +0.07377343749499682 0.06864655686084807 0.001 +5.538711759087412 0.6795894049986128 0.001 +3.279458551893016 0.6928899668071908 0.001 +2.607385671727636 -2.412501287031538 0.001 +1.14083699449442 0.5523785609558923 0.001 +7.506155948358166 0.3087220619367232 0.001 +-8.532270180990942 -7.115818785533156 0.001 +0.7057462668182128 -0.5071718377126113 0.001 +0.7979521172622774 0.02599527684281112 0.001 +0.2274894990464713 -0.2566350338094208 0.001 +4.698814197673271 -0.7778206823966978 0.001 +4.657175826366347 -1.086738357311388 0.001 +0.8954250326991376 0.7512272413877497 0.001 +8.647654823070134 8.848187442036458 0.001 +1.843853245928442 0.2047041013825436 0.001 +10.2756432230136 1.066854966832745 0.001 +0.6560052012431141 0.2287593692559383 0.001 +15.69309565476478 3.247003172986346 0.001 +0.8848685983465832 -0.07215427551149109 0.001 +0.8994080604401686 -0.1199049557862984 0.001 +0.9309725970992576 -0.139093134121041 0.001 +1.433055240539219 1.167450583500043 0.001 +2.611753170078909 0.3777283333515154 0.001 +1.98820392787496 0.3989790479924019 0.001 +2.45256669911959 -0.2354189981848506 0.001 +2.849536954470446 0.3615448898562587 0.001 +0.8088724410751471 -0.09234787872149253 0.001 +1.01876983929663 -0.3758549974095974 0.001 +4.309341422618008 0.5038026942319085 0.001 +0.8345294927637049 0.4910280537720081 0.001 +0.6444555158497693 0.06264349800843752 0.001 +2.129406509584879 0.7881110745084852 0.001 +0.07524271776160241 -0.4671473341263537 0.001 +2.720010302585718 0.102459125522707 0.001 +0.8465779256895763 0.1789953354549754 0.001 +0.08239393177637819 0.3142553804055803 0.001 +3.716447901315542 1.177096997759426 0.001 +8.808651229484754 1.470268429791586 0.001 +0.07778349759089967 0.8923991067502524 0.001 +3.418873463027559 0.2552777349503222 0.001 +0.1034912085165073 -0.1233240530462745 0.001 +5.506801414958638 -0.02688877765807064 0.001 +2.0579217907482 0.6715688911719935 0.001 +0.1170202345603345 0.9477716818644681 0.001 +3.972588880805548 -0.001284914767295959 0.001 +2.463888956521933 0.4521000943525904 0.001 +11.91232692106796 -3.960815520984757 0.001 +0.1507958062361596 0.9953131205768713 0.001 +0.07423139461633743 0.728716305832232 0.001 +-4.600291614791531 1.095832678647493 0.001 +0.5441863787915655 0.04522738954281338 0.001 +2.698698420406886 0.3606589206378588 0.001 +2.036083661119695 0.5061723473781032 0.001 +-0.1197266916257326 -0.1486160214825683 0.001 +1.983555799473675 0.8929138254878782 0.001 +1.080737130172945 1.117246768334351 0.001 +3.576368632012724 -0.2577819000198922 0.001 +0.583882995916873 0.002418173639772113 0.001 +0.3910666618892163 -0.1247423202964995 0.001 +3.322939330920671 1.616913202744754 0.001 +3.829391654089304 0.3572568710536465 0.001 +0.8024631434530087 0.4638822837083322 0.001 +-4.021233217650055 -4.881137888062975 0.001 +2.549875912989206 0.8383696540325295 0.001 +-0.0573384311107983 1.044118140120752 0.001 +1.192996158914254 2.438730280070367 0.001 +-0.07422995858574609 0.1257176860792869 0.001 +2.561297574159695 -0.06536842140395616 0.001 +2.205645496835844 0.6286217015963467 0.001 +1.836606519551759 -0.5170677989365616 0.001 +7.976654826050311 -6.576206954044835 0.001 +-0.1077431810253512 0.9900082418663598 0.001 +2.216263125248199 0.04506763538858317 0.001 +2.274621845558767 0.1390639907689313 0.001 +8.078119756327197 7.001084448934379 0.001 +6.390471076109172 4.229528723511261 0.001 +4.053738506280697 -0.2120861637563042 0.001 +2.876430513125451 -0.06193077136089523 0.001 +-0.9163264642450334 3.770419776371124 0.001 +2.294169916538022 -0.1085567534248991 0.001 +1.756989170712777 1.534805205664463 0.001 +0.4760215258185586 -0.06957936099140646 0.001 +0.08838805533245324 0.933747769392432 0.001 +0.4116756150201494 2.437682630177095 0.001 +0.114256079774139 0.9917911681456787 0.001 +4.212482276196911 0.8229859121579015 0.001 +0.7818313013233175 0.10188502567661 0.001 +0.8520406499319974 1.137363420811144 0.001 +1.754950616364096 -0.01149718298360021 0.001 +8.335655525915213 -0.7137389659953379 0.001 +9.42338019643503 -0.9281051266002136 0.001 +4.778308451182659 2.321377397333774 0.001 +0.5196892371433504 0.1327458988302782 0.001 +0.05151024790629837 0.1374297256750632 0.001 +4.003577698892448 1.114601600251464 0.001 +1.858830784704252 0.3186958050952117 0.001 +4.478262528547448 0.5419407051844729 0.001 +2.471868009578501 0.8348065984556132 0.001 +1.420568272771647 -0.02869179038791184 0.001 +0.1435983005072514 0.6833193172256277 0.001 +-2.294407631801676 0.6281662523021617 0.001 +2.26668014993825 0.4001166313933679 0.001 +1.888692894539394 0.09698391914478618 0.001 +18.77485885888504 -0.4574202248208545 0.001 +14.32896052654207 4.543890881117773 0.001 +3.706775286166087 -0.142413078726484 0.001 +2.004733927256451 -1.099212054336636 0.001 +1.663434287210853 -0.03048956332592886 0.001 +4.322228377494606 0.1073099798174515 0.001 +2.885700584316905 5.309288061770789 0.001 +2.951950196541309 0.4850967357912629 0.001 +4.374107336567844 -0.4473520279789311 0.001 +3.163174843994554 0.6735488230318837 0.001 +18.39935821116038 8.819918796828613 0.001 +1.506834676695919 -0.1269843581262955 0.001 +3.955884919223427 1.517434446421946 0.001 +1.430314928713199 0.4979517980667115 0.001 +-0.1403954169285577 0.6251095307416438 0.001 +-0.1330678077039541 -7.374591037017708 0.001 +-0.06954515310034921 0.8998462364732579 0.001 +2.385471242756622 2.029808890197279 0.001 +1.789693645658925 0.05713362318199238 0.001 +-2.134806866512697 -6.743702149963386 0.001 +2.393475022392963 0.2319711457322413 0.001 +3.515656635112242 1.046785681743151 0.001 +0.02693902058912954 -1.037254256236084 0.001 +0.4903486783261886 -0.1208647464030579 0.001 +0.450356923491031 -0.1679851903730172 0.001 +0.4329341492323227 -0.2254296525882081 0.001 +0.8181357391790303 -0.1309588285530715 0.001 +-0.05325765279696354 0.1445783548757144 0.001 +0.1401394726766035 0.8442747276552991 0.001 +-8.508778486043147 6.73229960732881 0.001 +-0.1277858074047348 0.7828407514326617 0.001 +-8.477808572602193 8.500491431818837 0.001 +-0.06730661815326101 1.005755199027713 0.001 +4.958950346068173 7.034657186629697 0.001 +0.1156568158492961 0.3881272217105695 0.001 +0.211553338801212 0.3565264689383658 0.001 +0.8063634542577656 0.2895465004906883 0.001 +0.6470248386920597 0.009951230950740951 0.001 +1.45721243320981 -8.753375979762577 0.001 +3.758250608962962 0.4347887352206275 0.001 +3.579418109539794 2.321921860915418 0.001 +0.9737100951333315 1.139408027109056 0.001 +8.963650642633961 2.390381711063897 0.001 +-5.513339173739405 -1.043843062043333 0.001 +4.31885477996471 4.32957031737121 0.001 +15.62302104323294 0.7753092550977299 0.001 +9.151885630570197 -6.625934907162693 0.001 +1.839660072534854 0.5799542683731472 0.001 +-5.174965780229613 -6.706059635250174 0.001 +0.9147469543321721 0.6632458086238798 0.001 +14.81281839346224 9.105045538677755 0.001 +0.7808947827900204 0.8659207485396537 0.001 +0.07308330205395114 0.5198790445339855 0.001 +1.095490013139303 0.4106766722044185 0.001 +1.115502281044137 0.4532510242366365 0.001 +3.092292459858895 0.5038846543823753 0.001 +-0.2464389130827981 0.5535097458982829 0.001 +3.72013836050863 -6.372659900924077 0.001 +0.1252880442264057 -0.03116088172393906 0.001 +-0.258632660012671 -0.1390646098156773 0.001 +1.093493104271692 3.105036942563427 0.001 +9.369213839334375 4.615445170313 0.001 +1.612297664329284 -0.7829706864026086 0.001 +2.475803803542663 0.9617312778341021 0.001 +0.0049345009859168 0.07740193513267092 0.001 +0.08387387498643811 0.2394590926388323 0.001 +0.0858231305957933 0.7778904601445036 0.001 +-0.1526638589703385 0.437831552601693 0.001 +-0.1528685429690753 0.4700596038791449 0.001 +3.646487690409794 -0.7135159778948811 0.001 +2.648339192718336 1.077820148161387 0.001 +2.867772352841472 1.268260627867545 0.001 +0.4862588128828645 0.07141791971203591 0.001 +3.760076622934633 3.113157069412225 0.001 +6.305639293551526 -2.651731164957837 0.001 +1.625832534156999 0.1384651645680529 0.001 +0.9037775081491231 -0.3316391567286103 0.001 +0.02579641824351393 0.119885918951136 0.001 +0.1750737831979176 0.9043037785473585 0.001 +0.2198122142111708 0.458149971170646 0.001 +1.069710584528195 -0.9511826640943808 0.001 +1.07869581977594 0.1305731003489375 0.001 +0.009228217846738865 0.03776135531946626 0.001 +3.68501328612592 1.557776453031974 0.001 +0.5842556042824472 0.02939720175019245 0.001 +-0.9343163581291798 -1.410686907110179 0.001 +3.204276011616312 -0.448747341714425 0.001 +1.259596772734346 0.1884359067250415 0.001 +1.076214751828096 0.9642737648546089 0.001 +0.1040638850112229 3.142742325917115 0.001 +0.003944738718325887 0.1716712976430363 0.001 +0.1726528270784032 -0.01929260579649044 0.001 +0.6078838115205959 -0.06886301964306868 0.001 +1.829049312384779 -0.1652431900797177 0.001 +-4.809011412838701 6.886934360033298 0.001 +0.7074098848909199 -0.01016718380412453 0.001 +0.7588331659460976 1.154910227018142 0.001 +-4.134171713767011 3.773279190754464 0.001 +3.766840359481972 0.08728929531007466 0.001 +-0.02288307812657009 1.145373301266487 0.001 +3.613153466241 -0.3215063934202074 0.001 +5.988260028967236 -0.9836818077646048 0.001 +2.200430112421274 2.380667863884326 0.001 +-7.159071127966816 1.980983700000972 0.001 +5.132902899665972 1.368295995755352 0.001 +17.27287840484848 -0.5719373039505038 0.001 +4.572988904467905 1.514437297001805 0.001 +3.370302466619445 0.986787920391662 0.001 +-0.07164673464800103 0.3907891740596569 0.001 +1.382320119080159 2.371674475152178 0.001 +4.780872428785203 8.986570757493622 0.001 +0.3291564609677861 0.08882658473841927 0.001 +-3.093312272683506 -3.06195414669849 0.001 +0.132506570337072 0.07486945672312108 0.001 +-0.1467540739977832 0.5535046328263986 0.001 +1.105822828712903 4.110413918614207 0.001 +0.2432928567588123 0.9925219031747201 0.001 +4.14055791822791 0.5035045583312373 0.001 +-0.1159421860941776 0.7038603357076085 0.001 +2.167050859448653 -0.08722190554688654 0.001 +-0.6605579635898478 5.71772990790663 0.001 +1.451574113995184 1.208062097639363 0.001 +5.316865937666648 -1.241635080599139 0.001 +5.365642457714056 -1.485098735902821 0.001 +1.009607402354129 0.1361195061166632 0.001 +3.066784769955076 1.069648165650152 0.001 +1.102085674203523 0.8675186229456808 0.001 +1.132096365765127 0.8593367533438228 0.001 +-0.4012631851968769 2.836735189836059 0.001 +1.006666621770162 0.0785417657775675 0.001 +18.3478758444762 -2.303427308071874 0.001 +0.11794193520535 1.050809357620107 0.001 +0.8472681251424561 0.3294061029380581 0.001 +0.7361306078848358 0.300500339021985 0.001 +-0.08672916834752614 1.060317592169496 0.001 +1.74733770209569 0.8533471395648931 0.001 +0.3601264606422262 -0.01777089718421692 0.001 +3.047206142900687 0.8149117475583166 0.001 +0.2853459108066799 0.8540771934379947 0.001 +0.1582793444386992 0.09234452726080705 0.001 +4.638865572755668 1.177344811097419 0.001 +0.07442773303268399 0.1675034126500341 0.001 +1.010764546452972 0.9871220949052386 0.001 +2.736008525732494 -0.1655027896484928 0.001 +-8.458404123124547 1.156324578629342 0.001 +0.2506703028538199 0.09910763929519496 0.001 +1.902491584099176 0.7495833127893857 0.001 +3.30463447434209 1.364078860937723 0.001 +0.358769457729582 1.212088977366963 0.001 +1.410223214421436 1.662554493837044 0.001 +1.521913052304905 1.753423908417415 0.001 +-1.796872615317226 6.993836679127763 0.001 +0.1521318783496501 0.1791054778336886 0.001 +0.3112729752887901 0.9420084579555527 0.001 +2.745755504248336 0.4631077927578691 0.001 +0.8448960380958077 -0.04243620121505232 0.001 +0.9641243362894388 0.115024886364604 0.001 +0.6256508811834107 0.1137779248324037 0.001 +0.2445666376526894 1.160892085355809 0.001 +3.724254020293206 0.6817434791508687 0.001 +1.297607527693624 0.05962946948321882 0.001 +3.639270754306635 2.692382978551386 0.001 +1.611174085702104 0.2805250963213708 0.001 +0.2926289845494956 0.3737191792403081 0.001 +0.5665281112988668 -0.07101996211909917 0.001 +-0.1420433786609074 0.3241743856342613 0.001 +2.799758742584411 1.524938892289032 0.001 +0.6414570060426642 1.222720348631222 0.001 +2.959810512869824 0.693779859761432 0.001 +11.21447453307324 -4.809292845952656 0.001 +2.118437233760821 1.130143961588407 0.001 +1.583937092639925 1.250914150220217 0.001 +3.848299704795708 -0.1582873551558372 0.001 +3.132204419480523 0.1800135494065324 0.001 +0.3153282401451036 0.8051338043871766 0.001 +1.002451713822786 1.033053321616521 0.001 +0.9181115003023105 0.06917193691738333 0.001 +5.423221774194125 -3.347049776058564 0.001 +3.460219729501123 0.365957013847052 0.001 +-0.06962722169674572 0.0807038040849057 0.001 +1.559935205125713 0.5233195931393236 0.001 +0.02979967182591976 0.4205273200970327 0.001 +3.161634139521591 0.8555324950818238 0.001 +1.656098489114811 0.5625972128898284 0.001 +-0.1178925016858269 0.8496365687503581 0.001 +1.404986051635311 -0.1963555909349254 0.001 +17.17112126692517 7.652551950080065 0.001 +0.07181736032943101 -2.733396923487588 0.001 +0.6984660903859624 -2.624676124327714 0.001 +0.05608877090220799 0.02678827485872166 0.001 +2.573200625690513 7.266906372626115 0.001 +2.377709550096502 1.029678251369472 0.001 +-0.1424227807650882 0.9129743462169535 0.001 +0.9883935139778741 0.9175748179679974 0.001 +2.851330774816196 0.118263655349439 0.001 +-0.0683283292153461 -0.1282524315235968 0.001 +7.773029896012814 -2.483308276940873 0.001 +0.4787951123543576 1.274826304827564 0.001 +0.7124037662157003 -0.06410692533907583 0.001 +1.030767583511254 0.2131293910417856 0.001 +1.161465048272322 1.184490430998765 0.001 +0.1454535702043719 1.103425168303718 0.001 +2.13096315405369 0.163435001547092 0.001 +0.2117905877062789 0.009951698059438302 0.001 +3.972164990687159 1.175773285883986 0.001 +5.752991176320509 6.132489626785756 0.001 +9.020273374648164 -3.776666175337721 0.001 +5.029787337126852 1.800394563267616 0.001 +4.5088740491463 1.016417821535782 0.001 +1.194303068279116 0.9838853653063754 0.001 +0.5714057159516217 0.0930350714754459 0.001 +4.31896572930741 2.770757911597003 0.001 +8.229734500927401 -9.113062659128451 0.001 +0.08763941270003439 0.03664457733091579 0.001 +16.32674224214815 5.24441899187581 0.001 +4.050200069458363 1.328084720965059 0.001 +18.06733690788482 -9.082560100558654 0.001 +1.01408950700772 0.5077521413543864 0.001 +9.070466516843801 1.068224995101652 0.001 +-6.69299467061216 7.446253842419472 0.001 +-0.1954328404811053 0.7207888731024032 0.001 +-0.03170958614652774 0.09085609215104713 0.001 +2.746927010816142 0.9599460201293565 0.001 +0.3791641247337094 -0.01082053965401426 0.001 +4.307943065509821 -0.1160008942543948 0.001 +0.6856262802359324 0.2630583998324932 0.001 +16.97202972027194 -4.208675579654243 0.001 +18.39700275798727 5.020146427401587 0.001 +-8.501369211592262 -8.640739041357433 0.001 +2.004174446763293 0.09149475594662775 0.001 +0.9979359213943476 0.1853074762165835 0.001 +6.20486828011112 0.337821637597943 0.001 +2.381633607307365 1.278988607468672 0.001 +0.2277370276923405 0.4139316611702551 0.001 +-0.9411580535481847 8.835406033249351 0.001 +2.193753168455655 0.5377108222928014 0.001 +3.960873342445424 0.07763425710528653 0.001 +3.838240464635621 1.136380717073498 0.001 +0.13335933505085 1.083056353405565 0.001 +1.032696544546045 0.6116805557338456 0.001 +7.219984739331464 1.67861204700034 0.001 +4.448951624888161 -0.2954825651377224 0.001 +-0.02439736029553958 0.3131582185401092 0.001 +0.4887237536148485 -0.02214805129761333 0.001 +0.3660747198214513 -0.1498141878040029 0.001 +0.7427454015613459 -0.02597680265306331 0.001 +-0.06530888276066091 0.4271256529522723 0.001 +3.521282842347925 1.418900453554499 0.001 +0.3799350672057012 -0.07262583811503485 0.001 +1.069909060757843 0.5331033481507815 0.001 +0.6555332619920796 0.1694411072061881 0.001 +1.106168025890781 0.04410889559972923 0.001 +0.5409449043032911 0.0730840970473965 0.001 +0.7395726030838741 -0.06387882094952976 0.001 +0.9609979483621254 0.6219382282557234 0.001 +6.129651239619744 -0.1651963545868665 0.001 +1.085018446923471 0.6566915890892717 0.001 +1.106375139709266 0.6941990297279115 0.001 +0.6799490250097093 -0.05371230068472921 0.001 +3.550174207777854 0.8234668199209982 0.001 +0.7852064030503796 1.645247611341367 0.001 +4.838408605704124 0.2695386201195854 0.001 +0.7915960220138774 -0.03416824488950009 0.001 +0.9942269369677574 -0.08679086595043539 0.001 +0.05008436387525525 0.2620998161883235 0.001 +1.133022264947505 0.3041327229670338 0.001 +1.23586658511704 0.8005132504227727 0.001 +0.3624499385414289 0.1261726984107343 0.001 +1.053844488140469 0.4518195429635878 0.001 +-0.3432737566882585 0.2313823419903644 0.001 +1.838862849603315 0.4127481454786903 0.001 +0.0258314056493 0.8970150358863136 0.001 +-0.07876885676130056 0.8774516322372784 0.001 +0.432020987738739 -0.1244513095720868 0.001 +1.097568675835786 0.6208084126426043 0.001 +2.589111981150484 -0.1445644729170801 0.001 +1.169356937752867 0.02722316567646424 0.001 +1.617075252512566 0.4155113147028059 0.001 +1.113442996665048 0.927196188283801 0.001 +-0.1301556075053555 1.022411461858739 0.001 +0.9230267561263192 0.4759390551705369 0.001 +4.219585961631903 2.132567117660415 0.001 +0.9995748076899993 0.4564140058962134 0.001 +1.786241762117928 1.146872338288513 0.001 +0.1250526657254346 0.7171518913758171 0.001 +3.900501893768602 0.774189785222254 0.001 +1.670696539556932 0.651414990980743 0.001 +0.122096778056495 0.1261180704067594 0.001 +1.103614496688372 0.5609428740297038 0.001 +1.638090189027489 -0.4661703652453307 0.001 +3.175564283772456 -0.2330967106994878 0.001 +-0.2279713604530995 1.828992102992892 0.001 +3.025092059648674 -0.04631500529451642 0.001 +19.06534140233368 7.001918126262076 0.001 +0.08561178199307504 1.316084996041511 0.001 +0.0363308753277931 1.071430541297524 0.001 +11.4301223611084 -1.929566992881284 0.001 +-0.1521711817671384 0.08251606820982989 0.001 +-9.089028673767697 3.024997100301494 0.001 +0.09428275736989926 0.08204914807126323 0.001 +3.433173754673323 -0.1168454643996007 0.001 +0.3181588991430486 0.3383741256979128 0.001 +0.7721487744859807 0.1657323356146154 0.001 +1.795221561590693 -2.437981158913304 0.001 +-0.1141737046633597 0.7319343455366298 0.001 +-0.102311376313458 0.7633934128057548 0.001 +0.08924813919363153 0.847754468191793 0.001 +0.3034035314927372 0.4453452138325235 0.001 +-0.03589565256741568 0.3543666288645114 0.001 +3.873977936076091 0.1830239437840211 0.001 +1.662974204582117 -6.497146005749966 0.001 +0.8724411680130985 0.06136567568552823 0.001 +-4.897510789595394 8.868296492710968 0.001 +1.101291113950713 0.7316417641571338 0.001 +0.1238913632373333 0.8839093716835805 0.001 +0.227472761438168 0.947364709935164 0.001 +17.1345523752351 3.187672429319508 0.001 +-0.006198234475187353 -0.000449059101541656 0.001 +0.4797608413978594 0.193525659797623 0.001 +1.076376919443048 0.08506472746897349 0.001 +12.458828677057 -8.754295860175562 0.001 +-0.1839931994860625 1.007703396574963 0.001 +1.02960084546269 0.5574280652545731 0.001 +-0.163212992710462 0.2270011291744308 0.001 +0.04594648912431526 -0.001410330919827415 0.001 +1.870523946314727 3.830830227239666 0.001 +2.625220693716056 0.6266234224534952 0.001 +2.496339014444267 -0.07564795836302363 0.001 +2.640074668662151 0.02693369709847345 0.001 +1.073602567299524 0.8891083210179359 0.001 +0.4704274183626969 0.1201913998050855 0.001 +4.127699488954398 0.1844267507935075 0.001 +0.6843784445546004 0.2033207563716846 0.001 +0.8714319413215639 0.2277066303851443 0.001 +2.933688809973072 0.7626965520366137 0.001 +0.2573329437665508 0.3541228635262583 0.001 +4.119481717669155 -0.7462803167423244 0.001 +0.9484513096568784 -0.1121170235455449 0.001 +4.083466079980652 1.132037958251053 0.001 +1.353447151849019 0.6166261028194362 0.001 +1.333014289227639 0.6997493698452834 0.001 +2.867110908278439 1.594841666099358 0.001 +3.620354978080176 0.09437685924540817 0.001 +-0.5619576489855557 1.471715782216313 0.001 +1.069597660890015 -0.06619160041893174 0.001 +0.8225109140253303 0.7412798034876651 0.001 +3.50587782185451 0.4528051743825706 0.001 +3.763003519530573 -3.89873031695127 0.001 +-2.928071853889662 -0.9846007791445094 0.001 +0.3391234273065936 0.351995614676214 0.001 +-0.0622383971806078 -0.07531793956682629 0.001 +0.05649804706333197 0.4611572974734169 0.001 +0.8025658999968688 -0.06981679282749036 0.001 +0.1907767738697914 0.8413317942954592 0.001 +0.4028691542200549 1.122636196400696 0.001 +0.8278477382541081 0.9249540760366748 0.001 +0.8628310940897781 -0.02468974048912451 0.001 +0.177380281463637 0.4197370069981897 0.001 +0.2902618963853335 0.7959111444124343 0.001 +5.523812067361004 0.3629828928612489 0.001 +0.536989002708111 0.3015213836446123 0.001 +0.3791947397444351 0.2429475054222451 0.001 +0.6599886237913184 -0.08964865223774128 0.001 +1.020117754683893 0.1553249024463913 0.001 +-0.2714249695150477 1.223012899296078 0.001 +-0.0949325098818803 0.9577851679446401 0.001 +4.140254376256892 1.017986507874571 0.001 +2.552724414601029 0.5540607641984664 0.001 +2.132789325441945 1.342238576210709 0.001 +3.394992163030105 -0.3472215772711406 0.001 +5.030496074112714 -0.684749409719198 0.001 +1.185064887070342 -0.1715902172044525 0.001 +0.008566135073397527 1.178807942870714 0.001 +0.9302897421320424 0.4383668631565659 0.001 +-2.248681754245752 -8.910068182673454 0.001 +0.7633219695652415 0.2493197878845796 0.001 +2.249380629489294 1.049423120739424 0.001 +-0.1128715554630765 1.179415398188402 0.001 +0.6680810240013202 0.7455478034950482 0.001 +6.653562219384739 8.658978107032661 0.001 +-1.895538244911479 1.51170036884523 0.001 +0.09967891584846714 0.120665068087365 0.001 +-0.04118320694882693 0.8457445729176769 0.001 +3.978102386470934 -0.1184620829727241 0.001 +3.444490398879676 0.04611583348968618 0.001 +11.70552997159733 3.623679290958752 0.001 +0.7720373429372313 0.4232405075180423 0.001 +0.01397322457446819 0.8210192693167411 0.001 +0.8677016407921224 0.5478408837744326 0.001 +-0.01166703011590611 0.2015558529681549 0.001 +0.03125153092898985 0.6476602488927542 0.001 +1.035816272818916 -0.5539946005315572 0.001 +3.690229250121268 0.4090038060607723 0.001 +0.4761641314822627 0.3147095605372359 0.001 +0.04198906964416949 0.7986154945733985 0.001 +3.662409844497797 -1.624991222717814 0.001 +0.9518617751415069 0.7353494250053682 0.001 +1.390814245051036 0.1716435805291146 0.001 +14.25313119027728 2.014149660570842 0.001 +0.3682606318727701 0.7398289174944398 0.001 +10.54380672773678 -7.485821502421951 0.001 +-0.05526087853872665 0.7368019350100895 0.001 +2.397362949148366 0.07939648332321539 0.001 +2.353204624162661 0.1545574686094459 0.001 +3.594190248084525 1.074047324582463 0.001 +0.02131649662154174 0.2273677008817847 0.001 +3.070299447945628 0.7586618019890338 0.001 +2.821062806761322 0.864279104940662 0.001 +0.9694099617712768 0.5641607562804938 0.001 +2.456401403980266 0.3549363612738444 0.001 +1.136296595841558 0.7432907421672882 0.001 +1.066795307009457 0.2887334012970036 0.001 +1.954529805362723 0.05158930260897202 0.001 +0.2888551906572803 0.01804967495902208 0.001 +0.7500529798604532 0.6456314431395591 0.001 +-0.1966093498877683 1.115146715493546 0.001 +3.152332968031565 1.043839934852607 0.001 +0.1182443284828277 3.64610148058887 0.001 +0.4016352219354131 0.08419159005882604 0.001 +0.4306209456813545 0.08822488160588916 0.001 +-0.01324351291664158 0.1299641097877023 0.001 +-0.280860466986591 0.09427614357602811 0.001 +7.510965049514015 -5.942479906549788 0.001 +-0.02700866735944823 0.8972826437583751 0.001 +2.679774622462805 0.75306769065864 0.001 +0.442625355707605 0.0343960318743764 0.001 +3.573913680411063 1.600112860341606 0.001 +2.717422343841191 1.221380643546162 0.001 +3.104570376240498 1.437302248686865 0.001 +1.876193536952739 0.4388397989157205 0.001 +0.1526672700599503 0.2351015540900229 0.001 +0.1879585877202468 0.2095913830684932 0.001 +3.203425909274579 1.10958668819671 0.001 +1.292883830244974 1.153553908726761 0.001 +1.293979410088293 1.236609744326972 0.001 +-0.09744869996955303 0.3799838021979333 0.001 +-0.09129882935837146 0.3545690189478811 0.001 +0.2859520232028563 0.0652937770187525 0.001 +1.9798451692424 -0.1546068401624337 0.001 +0.2819471305458052 0.9472403105802899 0.001 +0.2033824592471612 0.1300812762538327 0.001 +0.2498215778955682 0.6301027150200044 0.001 +0.1763165942402152 0.8574241961783711 0.001 +-7.20021191213088 -0.3066571214669257 0.001 +0.6651592827668262 0.3928829497309416 0.001 +2.372973510801723 1.106030044595994 0.001 +3.120967123631347 -0.03849545055808173 0.001 +2.106323100999572 0.8407901149836751 0.001 +1.335280805743831 0.9559538348228862 0.001 +2.940562340540467 0.03254617908385803 0.001 +1.115124827341668 0.9641694350163494 0.001 +6.478235401086362 -4.144681968721978 0.001 +11.55683545335532 2.251168058010475 0.001 +0.7218043303591273 0.2186629551980287 0.001 +2.935969459693196 1.334046492117237 0.001 +0.8377515302822197 0.8501643676669274 0.001 +0.01014793977999139 0.68640968386231 0.001 +1.047976835228693 0.9937748363632177 0.001 +1.06885826739451 -1.295669848794873 0.001 +0.3930613063794132 0.3229612465852453 0.001 +1.483964772446767 -0.05257802375855034 0.001 +-1.188308947987982 -0.4011898949967317 0.001 +0.4186735999596238 0.1365269904964183 0.001 +-4.166654648429582 -8.731402074812753 0.001 +4.286565723637103 0.4029704555735201 0.001 +-0.03682184531483801 1.022815722726771 0.001 +1.07998369790665 -0.00574798932780812 0.001 +0.307830721965896 0.7515175331443024 0.001 +1.05347351513402 0.9404981014226064 0.001 +2.299583896077073 0.01618092810708827 0.001 +0.2463589143289147 0.2507918588652284 0.001 +4.4022965604486 -0.5840574064796294 0.001 +0.1178379874929389 0.4781656612322511 0.001 +3.264529358887738 0.2142672921086084 0.001 +-1.199379671356919 -4.005826602022222 0.001 +2.162067817551287 -0.4698564222701359 0.001 +0.3402744422652914 0.6997603248148009 0.001 +14.21515598875796 -8.953494909193015 0.001 +2.07466267503092 1.56725163698059 0.001 +3.014107433337745 0.03265585238149932 0.001 +3.682375673506658 0.3118709257892317 0.001 +15.51516301053081 7.370405066658364 0.001 +18.76326655119191 -4.089790656360871 0.001 +0.9738210150178563 0.6932504176987622 0.001 +-1.640190051039084 -1.316356863801343 0.001 +-1.758702564822201 -0.9375236158388921 0.001 +-1.009321726389485 1.385739932153232 0.001 +0.8610429764759906 0.8025826701661398 0.001 +0.7611165398960137 0.2314177608501332 0.001 +0.2371338556015199 -0.03757009201875584 0.001 +13.54938930695243 -1.705752530514111 0.001 +14.03684816005437 -2.701972069154135 0.001 +0.1800081416829916 1.178510053345477 0.001 +4.334327919257164 1.271728933950043 0.001 +0.9289299521247596 0.2466907838459549 0.001 +10.7227513544533 0.04469426618755323 0.001 +0.8290632615674673 0.01064333254217359 0.001 +2.458278640045799 -0.9217993540350913 0.001 +3.319130048074469 0.5760423610538512 0.001 +3.381838018062533 0.6048302348455104 0.001 +6.107888341146379 1.105890282793254 0.001 +0.1743376480099807 -4.684624621300864 0.001 +0.7245196745420026 0.4274684644268779 0.001 +0.7327709662567685 0.460938993289395 0.001 +0.804224290349813 0.7073894771521666 0.001 +0.6724864487543998 0.1219607483605838 0.001 +0.9432693612515113 -0.1770125416657604 0.001 +0.9069265577311397 -0.2406022374679797 0.001 +3.49299063795257 0.007728526617284699 0.001 +-9.145598731456156 -3.189764252353787 0.001 +0.8210722886084197 0.2552495625180969 0.001 +-0.08836061603321604 0.01542963718491409 0.001 +0.0847623070589892 1.072481987100319 0.001 +1.097617587186248 -0.1172598308939332 0.001 +4.288151304713328 0.7184224658092517 0.001 +0.005778717131926229 0.5691318346823062 0.001 +3.567074503212757 -0.1272941326184948 0.001 +1.465594664568167 0.8254926880070831 0.001 +1.095584688338691 0.1373292883255614 0.001 +-0.8371254679798423 0.5873269671075014 0.001 +-0.355009029130808 1.007881298986574 0.001 +-5.315665718409227 -2.521161687951865 0.001 +0.442184447111228 1.063656053995802 0.001 +3.578878955134863 1.204492153864775 0.001 +2.032971683808952 -0.7079025511246766 0.001 +2.084112938660857 0.03124534186965309 0.001 +-0.1340151661524997 0.4059106017310402 0.001 +1.11849054423885 0.6150670377689207 0.001 +3.572259621843795 3.542965174245261 0.001 +-7.508840253816642 -7.15524761401841 0.001 +0.08159727876217818 -0.2283819511676762 0.001 +5.965745744360772 3.017284883791044 0.001 +0.05405435855337403 0.8951519617623099 0.001 +-7.632077883635701 7.052953970198875 0.001 +0.1291308930725225 -0.05911892022223771 0.001 +-0.1078302648775572 -0.06791243886214512 0.001 +0.2042350331570014 0.2575270761351635 0.001 +-0.186350283639686 -0.1355062914355052 0.001 +1.089633787234486 0.4791424648089747 0.001 +0.04768701694638992 -0.08912230070998632 0.001 +0.04535890683298231 -0.1200849888082171 0.001 +2.337216855822444 1.160777935191008 0.001 +2.24037716086565 1.193495322961195 0.001 +-0.9149071563374825 3.255255412788642 0.001 +0.4086735726768957 -0.05094986513647608 0.001 +1.756678374844929 1.691522470479819 0.001 +0.4679769110330222 0.3517718391063654 0.001 +0.3828616610010578 0.1718916201122353 0.001 +2.202316789367062 0.7550461225788724 0.001 +6.71349450039603 -1.440514806242367 0.001 +0.4080377815292987 0.5368451203914868 0.001 +-0.001961868270944666 0.7957194817514418 0.001 +1.072784821314534 -0.2825475931483747 0.001 +2.905761970306696 -0.1454454216229437 0.001 +0.1934454525418454 -0.1035457327326153 0.001 +0.5848784592243748 0.1399597321092157 0.001 +2.530009100697292 0.04200593277192135 0.001 +0.7212008236207655 0.1336599566298406 0.001 +4.159208239287813 1.190542331801884 0.001 +0.8667910405554382 0.6511501552795522 0.001 +0.9393650055475341 1.163404834716177 0.001 +1.442614158564647 0.6205559981169406 0.001 +1.581893646792831 2.801398101463843 0.001 +-0.03327451214370362 0.2765154692000633 0.001 +0.5539409273307665 -0.04348758918729732 0.001 +0.1125880641691097 0.6670670522344712 0.001 +1.133165441564416 1.071105218808603 0.001 +1.007733013115085 0.286675313347251 0.001 +3.351681620748839 -1.811839066489703 0.001 +0.7272764212917509 1.169761540631802 0.001 +0.7096345313643948 0.2474241318653631 0.001 +0.1284319740084309 -0.1256685843824061 0.001 +0.2728469062668561 0.9016433313803308 0.001 +0.2361447719458401 0.01651510182039855 0.001 +0.6888739844379305 2.488743028396852 0.001 +1.045261522017888 -0.07450418949669996 0.001 +0.2032965421735321 0.9858917471792714 0.001 +0.2185816195884142 0.3366516346426266 0.001 +17.46411803182955 -2.341081899737752 0.001 +0.02921056039717299 1.143448136711142 0.001 +0.03695236423564827 0.6782837384056291 0.001 +2.675944415320773 -0.01523916601351776 0.001 +11.07576671607714 9.104703674955445 0.001 +3.530523956487237 0.2072062546187463 0.001 +1.921536298539283 -0.6166620457152046 0.001 +0.4934828627552688 1.006892621776757 0.001 +1.204452566260945 0.6183292482139346 0.001 +0.06555735917249836 0.9853970567027026 0.001 +2.45136740324621 0.7871787174047018 0.001 +-0.1770514597474498 -1.773081855399414 0.001 +2.722204443460362 0.2959152889842486 0.001 +3.010050116938101 -0.2831375887174507 0.001 +0.2821376823724767 0.4238402738407534 0.001 +2.534358338554026 0.6985122624763684 0.001 +0.171830945455422 0.3201486720144001 0.001 +0.821135809446743 -0.02720038247619262 0.001 +0.2428270213245248 0.8246271603309658 0.001 +1.135872224789976 0.2068655828796444 0.001 +1.129378340641358 0.2533894381635303 0.001 +0.01204597848631628 0.36634587716456 0.001 +19.09355502415901 -7.082251952991026 0.001 +1.482346438950394 -0.333312049173336 0.001 +3.850332218787671 0.1182367703604779 0.001 +0.06048952801111523 0.6589438187369595 0.001 +0.5914442479117271 -0.2977542821324381 0.001 +0.2750545541730346 1.055245306395559 0.001 +3.692558967067942 0.8332442219405798 0.001 +0.4557866277634462 1.16016717329403 0.001 +0.2955779807727067 0.101373130097367 0.001 +0.943439262167181 0.7022732105402651 0.001 +2.77461224902001 0.04904268149647496 0.001 +16.99214475223032 -7.498576259654126 0.001 +0.4185732035661768 0.671805177608309 0.001 +0.05265145857954538 0.8542025915439123 0.001 +0.8734438590974734 -0.1489427766081713 0.001 +-2.22227895519502 3.627373509892029 0.001 +0.01085836405538256 0.8484619530696558 0.001 +0.489333056334335 0.1541675100594304 0.001 +0.2452106989819354 0.461108425923335 0.001 +0.754370694123489 0.09349589123675317 0.001 +1.301693809520356 2.008548308925289 0.001 +1.653251829193063 1.285181235102819 0.001 +2.154524627537794 1.060366085193329 0.001 +3.314734996376977 1.006236904852273 0.001 +2.900188219623692 1.118963229885744 0.001 +0.6593944339344805 3.283764699568919 0.001 +5.491668354651178 -0.4303619729166026 0.001 +-0.07656973421203034 0.7713704778081159 0.001 +2.482266195859062 2.656399399288272 0.001 +1.012674782157274 1.085292317657729 0.001 +0.8242272977752695 0.3261386463514681 0.001 +0.2853587805331372 -0.189343202908084 0.001 +1.104781930867099 0.5111829547112069 0.001 +1.120885545240844 0.521578949157488 0.001 +4.350345739640451 0.3205950908258561 0.001 +0.4641788695080083 0.01482270911149532 0.001 +0.8208156656478118 0.642437341288032 0.001 +0.8197860317132739 0.5617111589604987 0.001 +0.9395618926501634 -0.0672510787111827 0.001 +0.9358968172139746 -0.0441516772575199 0.001 +0.6004403048806817 0.01650167962786038 0.001 +-0.2551095388824996 -0.2457853981179079 0.001 +3.175264169454721 0.5709163389617909 0.001 +0.6866645162422167 1.339706068685797 0.001 +-0.08678158117844934 -0.02975548990126544 0.001 +11.33417427132101 -0.6140885221605632 0.001 +17.51584857162472 -6.18899354022081 0.001 +3.505085044239817 0.683525315430793 0.001 +3.580131503895568 0.7011300267769041 0.001 +0.2063973194452206 0.7382113825474579 0.001 +3.461998620180098 0.9372550624854487 0.001 +17.14534913767889 -9.131285688471621 0.001 +1.727845789156753 1.315845779068636 0.001 +1.807586487989811 1.344037320527967 0.001 +0.339093577916911 0.5803016742791488 0.001 +-2.557607208476997 2.667262679409418 0.001 +2.975653268386233 0.3816921585596961 0.001 +0.3733403114263394 0.7927365037358975 0.001 +0.6372667970190817 -0.02836509248058715 0.001 +0.4820926067837197 0.9517865655051254 0.001 +0.3579245896946361 0.0562521688295274 0.001 +-8.75529074481946 0.3442986683333947 0.001 +0.6798754566623652 0.1830657382901946 0.001 +0.4587893479284712 0.2706498965156429 0.001 +2.277816377483922 1.131699439436627 0.001 +0.8576555358352366 0.7003156470153575 0.001 +0.7401453863484718 0.03899758853479496 0.001 +2.913132100584632 0.2111294460066479 0.001 +0.9321405119872425 -0.02103979522823628 0.001 +2.335853069296609 0.6462933859456808 0.001 +0.2686224775254722 0.6875223222880872 0.001 +0.718912512958984 0.8310137336256412 0.001 +3.502901157875532 0.588836777700754 0.001 +2.058680189491543 -0.1208793475190274 0.001 +-0.0607258861269601 0.09309197193873295 0.001 +0.6670951491372032 0.07035447955435649 0.001 +0.0527105116327152 0.4088933572017129 0.001 +-0.6167903384920612 0.6742732435654595 0.001 +5.60641330986227 2.026735739385316 0.001 +10.66962120698838 -8.970800983724507 0.001 +3.397197484667455 0.1572562220986934 0.001 +0.08179351649319926 0.6384810437918969 0.001 +12.70843463524825 -7.82637649549977 0.001 +2.552659624813565 0.7671951120967287 0.001 +0.5593413225491672 0.1825635606211982 0.001 +5.468915047784696 4.085968362928549 0.001 +0.05105343195475845 0.5590085368964434 0.001 +0.1652721918243622 0.5774672490875227 0.001 +2.13812930749703 -1.384484299765213 0.001 +0.2640116211095803 0.5672430575598275 0.001 +3.145646285930092 0.0189960642653368 0.001 +3.203910183515696 -0.008083864699517282 0.001 +2.448343162388957 0.9133593981701186 0.001 +2.480066277262989 1.42575370049498 0.001 +0.1153827116999538 0.6427610933368115 0.001 +2.483934631507952 -0.3743414375154471 0.001 +1.567091688199889 0.7295423692331361 0.001 +-0.5343575603817223 0.174744961968661 0.001 +0.0643359487095556 0.5931393621449504 0.001 +0.739408371627754 0.2502797756878795 0.001 +-6.189064384720691 -7.455864757235176 0.001 +4.520537022366221 0.3121449395438711 0.001 +1.137894252702346 1.368358784528032 0.001 +0.4384706913862261 1.010752221617784 0.001 +-3.744704621966335 -6.094081169810138 0.001 +0.1249861662963048 0.6183435952407227 0.001 +0.1226372918370108 0.3382449685169315 0.001 +0.4496503874639555 0.4249970065392982 0.001 +0.4194633250756021 0.4119182055319648 0.001 +-0.06121164799467727 0.4861676439531016 0.001 +-0.08311556306885927 0.4718824936196632 0.001 +-0.01499426273430571 0.5424663267683829 0.001 +-1.01532677000881 -9.179913696018797 0.001 +-0.06295765202968119 -0.0324796358606255 0.001 +0.9798667002943178 0.483666072578834 0.001 +0.2557468554305902 -0.1114834065877056 0.001 +0.2928159453125938 -0.1265870838118519 0.001 +0.1604938905390175 -0.07636033646276243 0.001 +0.8477502009847158 0.4485367630290132 0.001 +0.7381019070142942 0.3248294103511205 0.001 +0.8937114331502474 0.3874337204239361 0.001 +1.012428190759876 0.03106754923667809 0.001 +0.3449047511989934 1.042582492652657 0.001 +0.4662619014298653 0.7962705053672706 0.001 +0.1042487708354533 1.032091108291279 0.001 +2.691039215330281 0.8913884241897629 0.001 +1.197972399514879 -0.2687457712411433 0.001 +1.271991559450219 -0.2911783157814329 0.001 +-3.662588731251354 5.557432811955307 0.001 +-4.037326260435868 -2.562408942638417 0.001 +0.183471127940459 0.1441093742253415 0.001 +0.1805985833848784 0.084250285411144 0.001 +0.1918018120521165 0.1075125402410025 0.001 +3.218235269340755 -9.070798722890986 0.001 +-0.04160060664416003 0.04403983442806644 0.001 +-7.211646801051075 3.037717093647709 0.001 +2.567509444082523 1.191676910527699 0.001 +2.175421051302453 2.666388062350173 0.001 +5.382200202952111 1.287131246534302 0.001 +1.188474774846265 1.090499771822115 0.001 +1.418748341679406 0.7176295383801528 0.001 +0.9723826660776368 -3.023677049759394 0.001 +0.4367415802787664 -0.02131127664961514 0.001 +0.8546352207049199 0.2727171394220134 0.001 +0.1008866186330979 0.8885021846791326 0.001 +0.758341482429336 -0.01854846078975033 0.001 +1.15527783684174 1.860657145616988 0.001 +2.721646353549817 0.4058779939741842 0.001 +1.147471520193096 0.511330920328613 0.001 +0.505649405798021 0.8383811847499879 0.001 +-0.1123746451310792 0.1857228806409821 0.001 +0.7307998565730319 0.5826581724122399 0.001 +3.506604314532126 0.1525895226459207 0.001 +4.100296701132763 -0.1523855590490669 0.001 +0.2102091606653054 0.499141345680735 0.001 +3.292364370977032 0.3391966761764995 0.001 +0.4040793715724504 0.4491580456926262 0.001 +-3.913912296696489 2.742431292788284 0.001 +0.2411403061872598 0.5683257344435348 0.001 +1.512911293860677 1.03267351257502 0.001 +-0.05650501937455363 0.5128558272098381 0.001 +-0.08173859970259661 0.5318482444865232 0.001 +0.7344729066360023 0.1781497485540019 0.001 +-0.0478180262921459 0.7607224252213605 0.001 +0.7892517669963151 0.3929453845894618 0.001 +4.030601560673749 0.9960616488644958 0.001 +2.714348017624394 -0.05172863281647736 0.001 +2.99722741119323 0.1622909890170253 0.001 +15.21417480186333 -1.219995982352117 0.001 +3.162590333015863 1.742944414312181 0.001 +3.14970200342366 0.2845516086341741 0.001 +0.8117261705977153 0.1428787352772942 0.001 +0.4255944733939314 0.2043895844178756 0.001 +3.157852221931393 -0.3533559030339926 0.001 +-0.02917517837999695 0.5201937598666334 0.001 +0.2912704032928312 0.6710381246244516 0.001 +0.5070331622457019 0.2381100618543494 0.001 +0.5590099484138189 0.9503522607274276 0.001 +4.04132341301411 0.2639130828935491 0.001 +0.5177590350292781 0.113801171626404 0.001 +-0.9425963156749823 2.093590091239379 0.001 +1.890338389512007 1.835135339606523 0.001 +0.4091751316627352 0.9033061717961035 0.001 +1.519963575225682 0.1658854321362146 0.001 +2.411029529038431 0.5359920665936986 0.001 +-0.2548406458133444 0.46319290726015 0.001 +-7.505686774971021 -9.062801390485259 0.001 +0.909617190375853 0.3590490014775901 0.001 +1.028283236706515 0.07046421782433547 0.001 +0.3560873098137827 0.8622218116853588 0.001 +-0.1038520205193161 0.5192422794847067 0.001 +-0.6012275697632542 6.276638415893459 0.001 +0.2364839230592636 0.8778658945155563 0.001 +0.2734471203525731 0.2538010484499248 0.001 +-0.008661674835433663 -0.0941159307139398 0.001 +0.8496370216097326 0.993593049977333 0.001 +0.5879388696088729 0.7194979617892168 0.001 +2.883065684803463 2.254409533284423 0.001 +3.014674891496205 2.479272999672668 0.001 +0.4240778058997586 0.8467837907982916 0.001 +-0.04482881575032791 0.9516559519374224 0.001 +1.442747945574304 1.337196153897945 0.001 +0.7691416101980812 -0.2102214803596801 0.001 +0.7496789496572343 -0.288500455618484 0.001 +1.57283582280167 -0.6054122380949915 0.001 +-0.02266153001116662 0.4854538265897156 0.001 +6.218119002030538 -9.085120148444995 0.001 +3.066223947595582 0.6320376541153079 0.001 +-0.01468336484702735 0.7735081482046039 0.001 +3.942208828244165 0.9063547889597882 0.001 +0.855890437280703 0.006614628826647038 0.001 +0.09095914724194901 0.3740017448564214 0.001 +1.900281159273051 1.121880687771609 0.001 +0.3526264406982931 0.3031088219608338 0.001 +0.6323775175945323 0.1610043780326842 0.001 +6.470474107233017 -7.37313481360114 0.001 +0.8443046435803876 0.3930862505983776 0.001 +0.2712501914226503 0.3701038354024804 0.001 +0.8828464326476476 0.3698342157008279 0.001 +2.299579959061776 0.9334499319870526 0.001 +0.09935578989156825 0.1765471455409728 0.001 +2.834459228686094 0.4904767142062826 0.001 +2.866504820738461 0.4619812000269318 0.001 +0.1673507602970343 0.2554777787407611 0.001 +0.3894191298207209 0.8435483985895327 0.001 +0.2330665451318799 0.6499064857995103 0.001 +0.3920653513033479 0.8194332803581298 0.001 +0.3767687225449655 0.5268069365448924 0.001 +-0.007976909978035431 0.7194796355064694 0.001 +0.1721573866789538 0.7488902709994538 0.001 +0.9334451472061731 0.3718091226796232 0.001 +0.3763172996418671 1.018127089698591 0.001 +2.367345402088569 0.8949649755119565 0.001 +14.75378762594349 -4.704179938210874 0.001 +0.2141591226031877 0.6328076077812728 0.001 +18.66079583881536 4.225058222707745 0.001 +1.559207607221328 -4.836148826625726 0.001 +3.053129938109404 -0.208384691529691 0.001 +3.129242655775709 -0.1729287827433938 0.001 +14.50848202294949 -7.118670394086966 0.001 +15.55336476928792 -7.192135477194384 0.001 +0.8507166108119032 0.2455153794604115 0.001 +-0.06272998183687706 -1.410088034279033 0.001 +1.706192200516729 0.3909159936894989 0.001 +2.322377582533295 -0.4490697820211529 0.001 +0.5539746551475736 0.2685372138316566 0.001 +-0.001765181517721247 0.2252208832756599 0.001 +6.667865979132167 7.737381080308365 0.001 +-0.01759157565380589 0.924775168926281 0.001 +1.013101080918314 0.4170380884156046 0.001 +0.02877644838669981 0.5440395483736162 0.001 +0.1600656600338363 0.6027908256504404 0.001 +15.63583367904876 5.762325875600417 0.001 +-2.573753505141817 -7.496878651477825 0.001 +0.4460819285117886 0.1731736168720692 0.001 +7.209939167222068 2.440964637751141 0.001 +2.526072631632309 -5.000935280911063 0.001 +0.3553931921523411 0.1776395346438388 0.001 +3.775537799646299 0.2044559765131137 0.001 +0.6776371778465362 -0.1088346953966267 0.001 +0.6961878367316333 -0.102542429342978 0.001 +0.6217976078139198 0.4456850730784399 0.001 +0.7142056097895289 0.3849483897333795 0.001 +0.6361392132570484 0.2761496026733076 0.001 +0.02428051308147598 0.6036038515524071 0.001 +3.354960830008476 1.416563031503708 0.001 +3.658005694134162 0.6588113696874606 0.001 +-0.08054409625053902 0.8105392209275701 0.001 +0.5880457330568891 0.8563409171078034 0.001 +1.909000458288766 1.007889618358583 0.001 +0.7042316032038723 0.8987864513408761 0.001 +15.33078916829487 -8.785510706276085 0.001 +0.9969834907940246 -0.1995341500906191 0.001 +3.284191178611209 -0.1298950988919823 0.001 +0.013142855750781 1.046092135453264 0.001 +0.006245371147556873 0.5930798057488724 0.001 +1.007736744871584 0.3949602297878473 0.001 +0.2327877039758442 0.2946285653855894 0.001 +3.206405732908763 0.1680666167077846 0.001 +17.28211367680283 6.727295997099584 0.001 +-0.1043819555756951 0.4940196206688012 0.001 +3.512272080771842 -1.18297831067692 0.001 +0.8877919599298121 0.5216491161705086 0.001 +-0.01627853743003195 0.6384014586315416 0.001 +3.822263257283353 0.06700843809999593 0.001 +-0.04416183169806068 0.4383249789181748 0.001 +-2.734208671769266 9.025293084874658 0.001 +2.953361220103303 -0.4418098528053309 0.001 +0.03480044716883225 0.7614277667154524 0.001 +-0.08760699867068351 0.4461606689737795 0.001 +-0.1143324998869828 0.4362881855706827 0.001 +0.07230273127929479 0.6700262333022008 0.001 +0.9787853239434997 1.084192134580589 0.001 +-2.195451862798278 5.345233811763675 0.001 +0.525735731805982 0.2216759122030417 0.001 +0.719743840579701 0.1621936180705686 0.001 +4.082120218122067 0.1096190194844091 0.001 +0.7560916647618322 -0.1100170836727307 0.001 +4.749890820170131 -0.1409402334639299 0.001 +0.8649151635986211 1.03692166669686 0.001 +0.1404319511987479 0.114174014394364 0.001 +2.12655422583515 -0.1353962367653284 0.001 +0.820260128028735 0.1950709109180017 0.001 +0.04924799297413568 0.4930366925887499 0.001 +0.159931299160419 0.6608584204884544 0.001 +0.9840355415014461 0.230569238837993 0.001 +0.9385707285800473 0.6563471434982739 0.001 +0.1743791943570236 0.8087931904485706 0.001 +2.510211423787559 0.1615449861116449 0.001 +19.05431902097365 -5.272920594195349 0.001 +0.7345448098531097 0.7707771505169012 0.001 +0.3821653206743367 0.7648600982689948 0.001 +0.3662618180208195 0.1582234221237236 0.001 +3.875568989759535 -1.472913140973763 0.001 +2.505880832168772 0.3096506498697279 0.001 +0.3952584200526059 0.9692047038442796 0.001 +0.384558797369469 0.992685965219654 0.001 +3.028083970687041 -5.969938193510055 0.001 +0.6442087622914582 -1.865362752004867 0.001 +-0.0683587457407433 0.1711484178033995 0.001 +0.7314613376792232 -0.1231602647659058 0.001 +0.9623354369304303 0.1650953642412335 0.001 +1.635341410755579 -0.09398894614099088 0.001 +0.5161601270748353 0.5103175594691355 0.001 +-6.126976891229631 -5.924629770852028 0.001 +1.538209875971184 0.3602943917563904 0.001 +0.8874516470100797 0.6996425838479005 0.001 +1.019138513985089 0.9427341039076355 0.001 +0.1715827015705907 0.5309382129218644 0.001 +0.09703860078243809 0.7218143930597598 0.001 +4.634410624919967 -0.3821570220990961 0.001 +0.1187946836418014 0.590135514859515 0.001 +0.4729862365329607 0.4804450295670629 0.001 +0.8116914379737564 0.339153474342961 0.001 +0.3070119962569137 0.3030081751787435 0.001 +2.919709865539291 0.5861392598521133 0.001 +0.6105923492222275 -0.03790929591188526 0.001 +-0.1043134893918045 1.082899211503881 0.001 +0.1732819637039157 0.4809035310401732 0.001 +-1.382405574698823 -0.05248470832247622 0.001 +-2.815658420276728 7.471643041621971 0.001 +-0.1676985916303961 -0.03986795892206425 0.001 +0.8901379716689423 1.079162609800989 0.001 +12.97925553312449 -4.697142846252773 0.001 +0.7743834508411941 0.9626124317248576 0.001 +0.4558447717556471 0.6711764552593202 0.001 +-9.012297924347882 -1.282837550536056 0.001 +0.6297956870008986 0.5681677380659763 0.001 +0.3405654967483744 1.012386927052692 0.001 +0.4568531137150225 0.8932555000939996 0.001 +0.3924254809491229 1.071945844829447 0.001 +0.7669399790995324 0.9979492455140301 0.001 +0.4266716272153324 0.7600268091468869 0.001 +0.7117385088555013 0.3006691403265535 0.001 +2.294594730731583 0.4725783125828421 0.001 +0.5654886933219851 1.932970757776447 0.001 +0.3355346683195491 0.9487695986390778 0.001 +2.625390415181697 0.4865170984289168 0.001 +0.6243573134862987 0.7566383002038246 0.001 +1.892350572288076 0.6156387801183463 0.001 +0.9617465006813535 1.001306418199879 0.001 +3.053237627460601 0.1816157287548185 0.001 +0.4282407852886615 0.3471627025804236 0.001 +0.5328228085943808 0.4574746655381322 0.001 +0.6795242320845515 0.03715899435074944 0.001 +0.592734275395543 0.5049310184426592 0.001 +0.8885873402224472 -0.0454259711455003 0.001 +0.3260513550804303 1.073109134118117 0.001 +0.3720222247906591 1.043604122654459 0.001 +0.7903196201230621 0.05062455133192747 0.001 +3.182565960985605 0.8010379193232109 0.001 +0.4315423495428966 1.110030110371558 0.001 +1.696061251727263 0.8624383137980656 0.001 +0.8684236062766917 0.4311183769281783 0.001 +3.766613594845723 1.329728368556027 0.001 +2.082292330296704 0.9889521934067845 0.001 +-0.1041055787364548 0.1164483240489803 0.001 +0.6988896563970848 1.06472320731447 0.001 +10.94044483673798 5.276565120062142 0.001 +0.9747701785360682 0.4658258812999376 0.001 +6.340258211383158 2.130702886753329 0.001 +0.03567884452807938 0.4747772961153883 0.001 +-4.306563068554028 -7.682102749422799 0.001 +0.5834573789211343 0.9448250706442776 0.001 +1.157178362340577 1.013112903492683 0.001 +0.4454395556355364 0.3054927302606744 0.001 +0.2166613437872515 0.573107067605545 0.001 +0.562427209013989 0.1301054434370195 0.001 +0.4824816595585775 0.435679389415984 0.001 +2.67929816339908 -0.5602459185494298 0.001 +0.893890374727291 0.2616015868070758 0.001 +-0.006956278094713257 0.5054973265154648 0.001 +0.9329180065347965 0.9609044615310088 0.001 +3.644187545923654 1.047049323058308 0.001 +-1.625450723007889 1.961444265997037 0.001 +0.8397831032480741 0.6704805057331052 0.001 +0.5879043427794379 0.6248467761095071 0.001 +10.38924660042613 -2.414803852537279 0.001 +0.005381226797332524 0.2878599540152078 0.001 +0.9678892058742303 0.534834437456521 0.001 +0.06906770304318859 0.5382039239525879 0.001 +12.99728147048186 -6.188199937794948 0.001 +3.967070825921058 0.7600109080660631 0.001 +0.5733202979314648 0.1619575608946833 0.001 +0.4957325653563662 0.8051176339577228 0.001 +0.3349800403685347 -0.07789292951164729 0.001 +0.5673089996982313 0.7011905120244775 0.001 +0.3128067340142578 0.9938309384915412 0.001 +-7.15400446175333 6.073009010706421 0.001 +0.4643516598005144 0.756108721211048 0.001 +0.3941757261088324 0.1897941836450498 0.001 +0.2513283624908192 0.5137369159564471 0.001 +0.5222748889037205 0.1883261544359729 0.001 +16.89240278751022 -1.512061471493058 0.001 +0.1896597671186015 0.5532385374513867 0.001 +1.0927517121459 -0.05845123115265799 0.001 +0.4217196793770537 1.055975272678149 0.001 +0.9407297540641962 0.9349137113471514 0.001 +0.3347592661864429 0.4898368556302303 0.001 +0.3917631734335186 0.7243168624695414 0.001 +1.551097267359415 0.3074021413363223 0.001 +0.4254913751761661 0.1115247348640755 0.001 +-0.001218730214019128 0.6614791024626283 0.001 +0.6072761948477888 -1.225898222295496 0.001 +-1.253120906180249 -7.075345372808338 0.001 +3.660296034466738 0.2181932337703427 0.001 +0.1846355518699909 0.1777127387094165 0.001 +0.4207014377346592 0.6327975919065824 0.001 +0.4454025054792445 0.7758916174346412 0.001 +-0.0757066782193854 0.3111066307931895 0.001 +4.750267285994717 1.541807923291343 0.001 +3.796402570644546 0.551091157794545 0.001 +0.568402081791601 0.3167986977843757 0.001 +13.66099386681473 3.958839570813757 0.001 +2.024598014918509 0.7335905861984116 0.001 +0.5347909711451013 0.794060491981411 0.001 +0.610636142327458 0.9694524826210841 0.001 +3.741658911205213 0.5478100315819633 0.001 +0.3182983977982368 0.7139378124230606 0.001 +0.7701960283893221 1.046755874115011 0.001 +-0.01141286355044526 1.00066707374973 0.001 +0.6234652546824979 0.8915377759596008 0.001 +0.3548676293267168 0.9826997800976842 0.001 +-0.07252623251460424 0.5522326268206491 0.001 +1.092954712008165 1.04285247074916 0.001 +4.211252026942685 -1.476392391264752 0.001 +0.4399667057685154 0.8858892472994421 0.001 +0.7931287648179741 0.5673442853975278 0.001 +1.96488077063744 0.3462052225404047 0.001 +0.6043827223291421 -0.1448445934799489 0.001 +0.5555387100656526 -0.1535454458423437 0.001 +0.5358687732564068 -0.1791884093087678 0.001 +0.8981808128980862 1.027926755345767 0.001 +0.5328205250123459 0.633369730401292 0.001 +0.4907502156377902 0.5695134391907171 0.001 +0.1134836380091567 -0.004980203604683995 0.001 +0.8471117891154606 1.023608574129925 0.001 +0.6574731944644668 1.028773491038174 0.001 +0.6554952988545508 1.053967938956995 0.001 +6.173860978964959 -2.031151694594543 0.001 +0.2578307301578259 0.8888570199735513 0.001 +0.713759910549026 0.01317926378296077 0.001 +0.5942735566612775 1.060857067018675 0.001 +-0.3978473035203117 -0.009012685006260492 0.001 +-0.1776778628816269 0.3820768668749107 0.001 +0.7845640270540712 0.7406773001864321 0.001 +0.09635189315641481 0.5737889686449514 0.001 +0.03744985590945545 -0.03477202467889838 0.001 +0.3325519262052207 0.4185470240073795 0.001 +2.145874719164466 0.1020743560443534 0.001 +3.764516592905421 0.9206627781193288 0.001 +2.310278466243335 1.734888054702584 0.001 +2.521032435406879 1.101524353852012 0.001 +1.114547027443381 1.10693397271267 0.001 +0.324663272543365 0.5262809225619112 0.001 +8.410847360761233 4.268205619084145 0.001 +2.573963098480274 -3.432302892506175 0.001 +2.690892326779511 0.9561851593280871 0.001 +2.318469143314602 0.5583355207214589 0.001 +0.6192420572292038 -0.1102965129870802 0.001 +0.2444852422368773 0.1470206442593541 0.001 +0.9613679859399624 0.9827113270689787 0.001 +0.4044366127585459 1.025392403619202 0.001 +0.5036761132797584 0.1725467019559127 0.001 +0.3488918343531688 1.766840533909429 0.001 +-5.319585800173673 -9.093910651411024 0.001 +0.7380575661294584 0.8881443068103209 0.001 +0.4190601564843937 0.6061878206026986 0.001 +4.202614904889869 2.369770736111399 0.001 +3.360275035397787 0.9441119485152156 0.001 +0.9052215839912279 1.060003897602506 0.001 +0.9271906682177582 0.537067980488811 0.001 +0.7447803767735535 0.226043865182311 0.001 +0.7647170301193131 0.8474356078527536 0.001 +3.642539153914592 0.01188023211037945 0.001 +0.8684693114073299 0.6247510311999201 0.001 +0.2840486878353781 0.4685575954339609 0.001 +2.168620605937906 -2.50217186371574 0.001 +0.3493780949662143 1.082441938736132 0.001 +0.3792578053467225 0.6178421481570646 0.001 +3.210629802058469 0.461757432282513 0.001 +0.4929813325089886 0.3969462479296928 0.001 +0.62710312749055 0.3993892392381916 0.001 +0.1882223957506411 0.05356805695182126 0.001 +1.073735872701909 -1.079523902642479 0.001 +1.678639928802824 -0.2537378341014319 0.001 +0.4506086978339418 0.8291054942042064 0.001 +2.308781292356902 0.7821609154040066 0.001 +0.2845490345929045 0.5905977526997359 0.001 +0.567414763457049 0.3655940073930306 0.001 +1.025114049449352 9.154663560829269 0.001 +0.4827434702078115 0.1026012751997393 0.001 +2.576035900932989 0.9658646568258552 0.001 +18.87199012861052 0.8845779408573793 0.001 +0.5469505157565668 0.7412015299973487 0.001 +0.8303365181699895 1.042185603559721 0.001 +2.362397337593073 -0.1247827552588138 0.001 +0.5422864017289506 0.9843369537171607 0.001 +0.6552336892355333 1.080550538416591 0.001 +0.9628660092035979 0.4023123780969038 0.001 +1.340596023605223 0.8388759238328187 0.001 +0.5789238537823217 1.033557276746215 0.001 +0.6847489370913387 0.9617183162298251 0.001 +0.6281869131034954 1.047273613473644 0.001 +0.5081209369961454 0.624311402408618 0.001 +2.411160622296618 -0.1524087869754631 0.001 +0.1137497281626444 0.8369279224916115 0.001 +1.034046655490782 -2.300947496335156 0.001 +-1.971802274944594 3.037489991995471 0.001 +3.291579285417607 1.161680969163252 0.001 +0.3866469915300095 0.9427558832190153 0.001 +0.8907359147647081 0.4688697258567157 0.001 +0.4202238501911196 0.5589108349205687 0.001 +2.914620998484202 0.8209986990258499 0.001 +0.4076002456347911 0.9270849820276456 0.001 +0.555494683208795 0.3485353519640378 0.001 +0.7377743097638674 0.3861169005674014 0.001 +-0.07511084533877342 0.2187679906442186 0.001 +1.015684094733957 0.5385667768707094 0.001 +0.7449512523689691 1.048333465636316 0.001 +0.3848739344417416 0.8700480909024089 0.001 +0.6167302981309035 0.8078621346503613 0.001 +0.6338397776153668 0.3234942869699222 0.001 +0.5044249680043533 0.4204047491318554 0.001 +9.499027802444402 -5.874771261418918 0.001 +0.5231962248088053 0.3400868392676545 0.001 +0.5403015104693052 0.8758966663636754 0.001 +0.02991625075917962 0.5083899244600574 0.001 +0.8776641068323892 1.018768946330125 0.001 +3.190203301424923 1.592739564615625 0.001 +0.4982680609915451 0.8861641078936404 0.001 +0.06249562288545189 0.754301691297113 0.001 +0.5109941943235503 0.781972363299376 0.001 +0.5409760082170404 0.9040172371717179 0.001 +0.487671167479295 0.5955897268408916 0.001 +0.5120799937305841 0.6782191104309824 0.001 +0.5913375564730197 0.4079620960153393 0.001 +1.369747399855662 0.2229460255865904 0.001 +1.071755465984831 0.4069579527011815 0.001 +-7.687578000308929 -1.372238190442519 0.001 +0.635725646983577 0.8204859809444738 0.001 +0.08515416387370252 0.418134892341587 0.001 +0.7217820000912752 0.5593864606220016 0.001 +1.205848481354005 0.1750862425479719 0.001 +0.702429406066209 0.8274341947012274 0.001 +0.3693911519666999 1.067148140537784 0.001 +0.3146139408120469 0.6568456737559825 0.001 +0.6052013085005441 0.251217445848302 0.001 +0.963097257674426 0.04742040087700648 0.001 +-7.376941474270764 -2.805913720555618 0.001 +0.006474626767184597 -0.1495312466897489 0.001 +-0.01257442877688395 -0.1995452634062317 0.001 +0.3060826029773195 0.1840844865255711 0.001 +0.4517738274638248 0.531122277605043 0.001 +3.13245940030174 0.5415138131985822 0.001 +0.7928687935045996 0.5245819282884825 0.001 +-0.1392567136922007 2.218693815774226 0.001 +0.5149865184837722 0.3804579441481341 0.001 +0.8388566407198343 1.079604051945976 0.001 +0.8621285846086214 1.088040791948034 0.001 +0.8063359530536031 1.09996877758797 0.001 +0.1136108266947096 0.2495634248331551 0.001 +1.734130221352491 0.2016935612782281 0.001 +0.5025962546161972 0.721291431277489 0.001 +0.7153604839078073 0.7354704537159541 0.001 +0.5051836482251563 0.7417955919131284 0.001 +0.6334975445588281 1.110023575972051 0.001 +0.5607430692900266 1.061466537290483 0.001 +0.5427587777387637 0.5856363348139638 0.001 +0.5453093292756913 0.8267534616003042 0.001 +0.4399098714604188 0.6005413980368944 0.001 +0.6587396103164327 1.00425337756055 0.001 +0.6844976483494208 0.9855690724064229 0.001 +0.7094387607502265 0.988834613859488 0.001 +0.5728844047478854 0.7849756032850272 0.001 +-0.1925650513331931 1.294167291254677 0.001 +1.517589392565703 0.09183385146977402 0.001 +0.3607066687137706 0.9121003483121599 0.001 +0.1879071959089059 0.5365543881970334 0.001 +0.4084642355750039 0.7432365337410203 0.001 +2.189522357171112 5.135255624901665 0.001 +2.311286662434347 -0.8524111743490028 0.001 +0.6686708199184884 0.7140173644116393 0.001 +0.5017184057880653 0.3568083853763345 0.001 +0.6885468176344824 0.4695408389066342 0.001 +0.6505360524304091 0.8370350978413778 0.001 +-0.07257175656000336 0.613884647269769 0.001 +0.7175035658805484 0.7190650384351909 0.001 +0.3260839517417575 0.6205237392402392 0.001 +0.283164467306988 0.5488362013510875 0.001 +-1.418833978358876 -2.688461975659515 0.001 +0.3899782957622961 0.4878453493847084 0.001 +0.5864722394190426 0.6496307232898451 0.001 +9.117023755848047 6.54791090403714 0.001 +0.362596893290089 0.9281643462229031 0.001 +3.971227648854492 -0.2666699887912302 0.001 +0.4357208382828639 0.4628747046202704 0.001 +0.6392510951642592 0.9220802633639157 0.001 +0.1645761638298761 0.9489834701090093 0.001 +0.4878309498726986 0.286426932319938 0.001 +0.4202584384382852 0.4997763952130195 0.001 +0.923785784801091 0.02549273493404027 0.001 +0.6861052184436297 -0.003761818945207556 0.001 +-7.552581808459294 8.94703762625395 0.001 +0.5694229700562852 0.8348447367876533 0.001 +0.5158869019923715 0.4823053982356242 0.001 +0.5248160764586246 0.554048207441032 0.001 +1.344822864952756 0.4034567372277242 0.001 +-9.131120262641847 5.857307033616507 0.001 +0.5785663755318476 1.051457608432732 0.001 +-0.09473775778937944 0.2049904214263396 0.001 +0.4758240109123323 0.8829251379104796 0.001 +0.2978435973296241 0.6157891296884032 0.001 +0.8717625808528157 1.067857072435915 0.001 +2.17642668201925 -0.01430643663615066 0.001 +-0.1392234888799547 0.8850194094955761 0.001 +0.5733504927294855 0.5713561163345994 0.001 +0.5483714770610675 0.7110343480883019 0.001 +-0.08092442250973218 0.6775621824434219 0.001 +0.1627645620378159 0.02414467532546663 0.001 +3.911021685541856 0.4553619166070916 0.001 +-2.045700534029966 -2.056325478835292 0.001 +0.3916591230065953 0.3619841055931325 0.001 +6.833149726935322 1.383779735621835 0.001 +0.2963979358743177 0.048203540476515 0.001 +0.7613848673284634 0.9419457128359647 0.001 +-0.7249064597216905 -0.3250909378443899 0.001 +0.5033403391103873 0.9637617352106007 0.001 +0.641365446239047 0.4713184127739132 0.001 +0.2311888549002015 0.6864092132069265 0.001 +0.3484175908157265 0.6063928505195705 0.001 +2.615998814016147 -0.8393492482650237 0.001 +0.5127656216086572 0.6013748007912157 0.001 +5.004507536854738 2.165862279869893 0.001 +1.051049889089096 -0.1994815749861496 0.001 +0.4675520216656557 0.6312206738036736 0.001 +0.6280197025076938 0.6139810074738812 0.001 +-9.175534132317321 -7.858504138251117 0.001 +0.1824259604820398 0.7741810617136857 0.001 +0.7836168866681293 0.3022847956256606 0.001 +0.2632688409281901 0.5893892610434677 0.001 +0.5151301814190306 0.7100559132433332 0.001 +1.67396096811027 -0.1414556163465008 0.001 +0.4683562380748759 0.845530621667225 0.001 +-5.377228596646064 0.935009002799545 0.001 +0.7260490954796636 0.9643037040814935 0.001 +0.4083375228965886 0.77898449191182 0.001 +0.4125822598118905 0.8032404039639559 0.001 +1.86758070688542 0.1549877168665798 0.001 +0.7723842728208906 0.7127905060527205 0.001 +1.598198958674177 0.2055608183571871 0.001 +4.11153726585469 0.3675630299564051 0.001 +0.7125892076649714 1.016066233661339 0.001 +1.115123333785041 -0.04942602971489059 0.001 +1.13811905685571 -0.03443152016442695 0.001 +1.158795679000858 -0.009037114159541977 0.001 +0.6797158314337437 0.5795213037629422 0.001 +2.994793635870897 -0.1170325620106992 0.001 +0.6131245112035425 0.4182485765709413 0.001 +0.2529667735794026 0.4023931935822035 0.001 +0.4512060798942652 1.044534265441698 0.001 +1.073931715383426 0.2406053206516192 0.001 +1.829175413982391 0.741015911198634 0.001 +0.3143402460084128 1.046704178729381 0.001 +0.2388446794473224 -0.7984197213420903 0.001 +0.7801947121039738 1.017630621984771 0.001 +-0.0951785141963376 0.2657059686059494 0.001 +2.016058785716169 1.038642130131263 0.001 +16.37995809381178 -5.531905515363995 0.001 +0.5246490463721237 0.6571952665886623 0.001 +2.382885444483222 -0.008205296938331066 0.001 +0.9104584465946625 0.9833189040991284 0.001 +1.133550401749712 0.09404676032979477 0.001 +3.974242972528125 -0.07279850976956972 0.001 +1.659450060434714 0.8125890237008051 0.001 +-0.1277869676771587 0.1587598690083813 0.001 +2.755473220355023 0.2420605467927529 0.001 +0.6608918560812393 0.9551889393521575 0.001 +0.7861523138130424 0.6924374789024028 0.001 +0.7776253948959837 0.650992606727637 0.001 +0.5630527166314141 0.6174825679443716 0.001 +3.268545564101757 1.092186937295491 0.001 +0.4312238861134857 0.7258189181226909 0.001 +0.8275196050759621 0.08326357259796734 0.001 +0.816413857390122 0.0605791214771389 0.001 +1.724243865198659 -1.10977401928421 0.001 +0.606805069069127 1.014573171130339 0.001 +0.664897921929443 0.9312725468783514 0.001 +11.55984573535771 -5.823772082241065 0.001 +0.4903622233902539 0.6655464348315389 0.001 +5.167329740557452 -0.01820341243620581 0.001 +0.5841321673840884 0.3779151423971541 0.001 +0.5513173687219113 0.3825650908206556 0.001 +0.6124859367097473 0.6544655225799534 0.001 +0.4326438615719106 0.9307656533771649 0.001 +2.025480713163941 -7.128123636265415 0.001 +0.5753990341725441 0.3390384963141039 0.001 +3.008320263976612 0.1010433320874344 0.001 +3.577812396747438 0.3299439519295102 0.001 +0.4608546288083303 0.3891513933153428 0.001 +0.2631543412506546 0.7245726498762458 0.001 +0.02418281558867876 -0.08129213338437949 0.001 +2.864350259316767 -0.401208373674774 0.001 +2.936625830866715 0.0996547992193709 0.001 +0.3118137130776389 0.2218800258271175 0.001 +0.585010230542235 0.230717326183745 0.001 +0.6336487941261224 0.9977790791856863 0.001 +0.681076758862787 1.082937062483444 0.001 +0.1923887565047437 0.6097826584272926 0.001 +-0.04281716599239768 0.4616805890148795 0.001 +0.7498652985052121 0.8667224008567084 0.001 +0.5869580232435375 0.5259823755398269 0.001 +0.6833907661333484 1.036443750781346 0.001 +1.239194763793119 0.9337278053006055 0.001 +0.7928916506900858 1.038310236155558 0.001 +3.865206676923521 0.5148980405573098 0.001 +3.627060876078147 0.7676331110715611 0.001 +0.8024805861241172 0.7998216488764528 0.001 +0.9129438848019711 0.09115411157452577 0.001 +0.935469373855351 0.1238969370068127 0.001 +0.5478769522011485 0.2410881207200417 0.001 +0.6948150325474949 0.9191322063526439 0.001 +0.2877657708264139 -0.06319573243409886 0.001 +0.1023972317197219 -0.05247115163583606 0.001 +3.75623437604916 1.045868239591481 0.001 +2.315181635112351 -0.1703176862817131 0.001 +0.5933006866842186 0.9877695861816905 0.001 +0.4599470445944372 0.1443290090911535 0.001 +0.6381503885966149 0.4512559049711307 0.001 +0.5063098690994378 0.2657182529808474 0.001 +0.6345870327862256 0.9736427142156974 0.001 +0.77682135484531 1.072516762679818 0.001 +0.5626729086214517 0.72586729769233 0.001 +0.3370453174124936 0.6434061479861048 0.001 +0.217064837255027 0.05500586150324854 0.001 +-0.1656995733405838 0.6477264224787813 0.001 +0.6130843959392762 0.3033692162853412 0.001 +0.3071647892805858 0.5617989007522483 0.001 +1.654655004199962 -1.619516628673369 0.001 +0.5291129052824637 0.931582194851007 0.001 +0.6015827443877807 0.4849986447203767 0.001 +-0.1025353505348745 0.07536863062856489 0.001 +-0.08820756793319054 0.04024520766326504 0.001 +0.7595007414835016 1.26338625457263 0.001 +0.7490078544858011 0.7023578422247853 0.001 +0.464949908675615 0.9958886423945229 0.001 +0.5663649234120738 0.4476198011411929 0.001 +0.5809177370215268 0.8156763024607538 0.001 +0.03532452331858467 1.096137986565521 0.001 +0.3203910518136761 0.5076881517792549 0.001 +0.576271547111584 0.9170714876347528 0.001 +0.2742896054903566 0.102462013571653 0.001 +0.6849790598575387 0.5214192096627639 0.001 +0.4021722270898901 0.6542818932574519 0.001 +0.6093347006417064 0.9438061648736694 0.001 +0.4967994170437461 0.4584304472225326 0.001 +0.3558023967684225 0.242680759706376 0.001 +0.4435135153308552 0.4892214586507888 0.001 +0.9045797458009821 0.4037366882736442 0.001 +0.757083690791411 0.1352696208999934 0.001 +3.2179852333403 0.6836402403863922 0.001 +2.384634164647452 -1.537259914924487 0.001 +0.8560304691246067 0.08656835448070377 0.001 +0.6033539903881006 0.8297762788440193 0.001 +3.357685810811767 0.2728189731772833 0.001 +13.18726993462096 7.314787324694192 0.001 +0.4587316542285946 0.5644429663043038 0.001 +0.7449013837799812 1.015968356410244 0.001 +0.5646414126464018 0.2165414883711235 0.001 +0.6652060673930564 0.8811963044921098 0.001 +0.5936584608053127 0.8804466702552595 0.001 +0.5346871688363709 1.043117436048075 0.001 +0.1410287379142992 0.5746076233986338 0.001 +0.7545696803642844 0.9761561052706113 0.001 +0.7311526807678177 0.9401002735356 0.001 +-0.08366454705114433 0.3314925016189003 0.001 +2.049587468681303 0.1880121224851461 0.001 +2.152959823610979 0.9215053733189844 0.001 +0.4367043850318867 0.6896804463830186 0.001 +0.1500746779697372 0.6275504934149888 0.001 +0.9074894819057294 0.6131108473014856 0.001 +0.5785260819771771 0.4275511962889105 0.001 +6.197869732699559 2.608644333220332 0.001 +0.4601659658424711 0.9616402412405565 0.001 +0.4289983738236762 0.954689775245253 0.001 +0.6733977049686104 1.484903238247894 0.001 +0.5328791280277473 0.533658162169162 0.001 +3.843380690307914 -0.09364051201498419 0.001 +0.4709235856184273 0.5109336690698657 0.001 +0.5386714341290424 0.1694794387324344 0.001 +1.262298629331967 0.5730828001777984 0.001 +0.5389852564190285 0.513233187895099 0.001 +0.9208445852570107 0.7526176972780485 0.001 +0.8321613159457962 1.007278013941787 0.001 +1.158946853592842 0.3729523416269271 0.001 +0.5543024772162155 0.6740608840451444 0.001 +0.8757997911975175 0.1071855213299083 0.001 +17.86996604687802 1.288336794657977 0.001 +0.4987741257074679 0.5392923052846939 0.001 +0.6096282248868242 0.8525687475427464 0.001 +0.5174728416571814 -0.06697324028819215 0.001 +-4.349522305276184 4.612465853611033 0.001 +2.595912105699687 1.644173746744003 0.001 +5.128945541695025 0.3795399560594114 0.001 +0.2754624410349504 0.6436554499174824 0.001 +1.127231960252375 1.235401326569681 0.001 +-0.04909129788126003 1.10835660924863 0.001 +4.018423385697033 6.680506674199997 0.001 +0.907456875848127 1.006085429276936 0.001 +15.01288768421413 3.905979045432016 0.001 +0.3001020511723811 1.085068647992997 0.001 +1.029112231186656 0.2584267358662424 0.001 +0.4656560537931076 0.6170726787103701 0.001 +5.150915095501163 -8.894446918139691 0.001 +0.5559538226578356 0.5412324967330385 0.001 +0.4830659818553301 0.8263088653147146 0.001 +0.1397406845888424 -0.2230650819222973 0.001 +0.5507207252986954 0.7733563489114519 0.001 +0.4409408973859715 0.4015465865809142 0.001 +2.819103334321681 -0.6421207156110077 0.001 +0.2402881066118787 0.9210122578704754 0.001 +1.109308164094023 1.004510011453634 0.001 +1.00681379665379 0.2572932646034111 0.001 +5.665493859216689 1.700505724240549 0.001 +15.67724161876582 9.124029874339298 0.001 +0.07775490937203697 -0.009216675571823605 0.001 +0.224455957224495 0.8544164510532969 0.001 +0.4712897036255861 0.2282806001713615 0.001 +0.3544490711122149 0.540483357963999 0.001 +2.311450858659856 1.012255714694217 0.001 +0.4610481177712247 0.7302847172514992 0.001 +8.37754309720922 1.120414797774353 0.001 +1.219561148719698 -0.2216089485378056 0.001 +0.3432887684142175 0.0227143126008227 0.001 +17.77490414008412 8.798677366368931 0.001 +2.694932896755793 0.5433558162614647 0.001 +0.684036296817997 0.3254065606124139 0.001 +0.4574932276543559 0.9098227674429531 0.001 +0.9857439597573625 0.6668411834093451 0.001 +-4.378628159822901 -1.558893121573167 0.001 +3.639095576909929 8.859720293437992 0.001 +0.5105042721616948 0.8728547027319429 0.001 +0.5169789758052534 0.9943201814609293 0.001 +3.17247330883571 -1.225940835901416 0.001 +3.505638468260431 1.208420857976709 0.001 +0.5666725013931798 0.9763182717368294 0.001 +0.587708044553176 0.7656241223748694 0.001 +0.4342269079355114 0.2274550929759861 0.001 +12.02586974964005 9.081952889361578 0.001 +0.5506388080936885 1.011105833192547 0.001 +0.8756429543944486 0.3158991249599072 0.001 +0.5570228365087267 0.4173012401011435 0.001 +0.7638677360299531 0.6105835720772956 0.001 +5.919154545518338 -5.65139250954265 0.001 +0.315901283753921 1.188285803127285 0.001 +0.5889843581627144 0.4566880412367239 0.001 +0.6837347552343211 1.108778567698242 0.001 +0.5199525465410699 0.05810220498018655 0.001 +2.352903189854443 -0.2799080913315224 0.001 +0.6975324388945061 0.6665978811914325 0.001 +0.6347340161014339 0.6345935706107703 0.001 +0.6175909619208798 0.3677504331917008 0.001 +2.071325861226867 1.258038926100066 0.001 +0.3464278121286651 0.3802264790232065 0.001 +1.267884372785099 0.4422310596035525 0.001 +0.9502547948552597 0.3185086223233868 0.001 +-0.01603440393631069 0.6961270850492343 0.001 +2.888172546060153 2.962651010769073 0.001 +0.25891684828315 0.9639604793886284 0.001 +0.6725974179302925 0.9090438733399741 0.001 +0.1922646281450534 1.096173742130376 0.001 +0.8429774217007987 0.4725273979370614 0.001 +4.314031182872763 -0.7453330934730182 0.001 +-0.005437494289039042 1.953321809076487 0.001 +0.6576330217119678 -0.05730208737726082 0.001 +-0.07041730689038699 0.9524134113841234 0.001 +3.414117062709546 0.4004427826273693 0.001 +1.052600247753635 0.2157759596757235 0.001 +0.3678724200768961 0.5016337621419752 0.001 +0.3485284231861878 0.1446866580076773 0.001 +0.9431597593890602 0.4583987518801097 0.001 +9.863495675448775 -3.56297051283637 0.001 +1.785076598635536 0.5360150297938423 0.001 +3.690486236759548 4.107510405773366 0.001 +0.1185590208670857 0.2049601525023139 0.001 +3.189367083781783 1.356908031238013 0.001 +0.8919478609607265 1.538025874711338 0.001 +-0.3907117965607724 1.301587800957939 0.001 +0.6549959575494654 0.2852630073250831 0.001 +1.734286927864755 0.3329347353776705 0.001 +13.60615280199355 2.700587904343816 0.001 +0.03423439861368655 0.3279347229886208 0.001 +0.013204618704954 0.3256512950906527 0.001 +2.086254112374986 0.350480242617305 0.001 +0.4480485056126515 0.3691374086015445 0.001 +1.030148123565646 0.3864670779851798 0.001 +6.230880082537258 -0.6000638361355288 0.001 +0.08808142827882634 0.9892816149035936 0.001 +0.5107363740109567 -0.01604520501983254 0.001 +-0.1946657855433752 0.1956336877391355 0.001 +3.962684391057995 -2.036449015987574 0.001 +3.955442161384444 0.6578830227428099 0.001 +3.711566116728156 -0.2181372394800407 0.001 +-0.04053086693904052 0.377057474983736 0.001 +0.5267404069048379 0.9139323532461914 0.001 +0.4463473785381983 7.553365630602915 0.001 +0.3619723813908949 0.6853599128360364 0.001 +0.4941604537430579 0.5108541730854863 0.001 +0.4218370567905103 0.3153741497550966 0.001 +0.264067337748414 0.337740914922373 0.001 +0.5796745001628205 0.7367566388747786 0.001 +1.37790785906943 0.5050247610291346 0.001 +0.8171921859546684 0.3108977138000777 0.001 +-0.2382961588636536 -3.114935603900443 0.001 +0.8750781373335413 0.3996216389947302 0.001 +0.3294710020261147 0.4031438556902279 0.001 +0.07709570443266277 0.4491166321001565 0.001 +3.47310430928918 0.8840602577125366 0.001 +0.6668656275695423 0.6287011492451801 0.001 +4.040848713418238 -0.01637496885805443 0.001 +3.357202595627577 0.1432839445419213 0.001 +0.7263682379127919 1.079168506007369 0.001 +-4.849352283369967 -4.384368334707926 0.001 +0.4371922548297201 0.2827389428908042 0.001 +0.4009164871638939 1.347995367557597 0.001 +0.3139510175852198 1.108311558572315 0.001 +7.725527422175231 -7.132330464218416 0.001 +0.5643507606207975 0.8568044979928179 0.001 +0.3994359008481072 0.609920636420162 0.001 +-0.009866537565606317 1.022751616386602 0.001 +0.4810474896231426 0.6369227989579243 0.001 +0.4324685872278988 0.5791688836455016 0.001 +-5.642467457803794 5.66895243799482 0.001 +0.84889954646633 0.3663611137248161 0.001 +4.997968360295976 -7.568361624645184 0.001 +0.7204807058469506 0.6162247397184928 0.001 +0.8064869856578867 0.9686213782370641 0.001 +1.050760853231989 0.5010521568832091 0.001 +0.6248386199945052 0.0216344458191888 0.001 +0.6981356927376468 0.784164366879729 0.001 +-0.05300365998367233 1.201012572031916 0.001 +3.178937712933842 0.9882532104927247 0.001 +0.3268275281850315 0.7694462014636996 0.001 +-9.279818414725007 -5.350819981332364 0.001 +0.9882136457026257 0.3135647520426499 0.001 +3.58309844935158 1.363656672414659 0.001 +0.6099814583883645 0.7769211031882326 0.001 +-0.01071045425284894 0.6033745454118448 0.001 +0.1333217501911275 0.2058220958885142 0.001 +0.9617482709124507 0.2717069510852634 0.001 +0.530407335307474 0.2770402579864965 0.001 +1.922053775981339 0.1967094945304421 0.001 +0.6626862599524763 0.6022188863853948 0.001 +0.5675403155673773 0.5940516038559607 0.001 +1.612234988474885 1.365348784170786 0.001 +0.8437868870518288 0.01712403760960154 0.001 +0.8015184493265124 -0.1644258756462934 0.001 +3.71372154721634 -0.07726994182389135 0.001 +3.918563725852579 0.6370566925137218 0.001 +4.688966890850748 0.8436240979461717 0.001 +0.4861540974668716 0.7161446168269043 0.001 +0.09076253145085006 -0.09615476017944251 0.001 +0.1689227989252995 0.3969314463906198 0.001 +-2.63351977469591 -4.77444222203022 0.001 +0.3696249775154504 0.6510719062320318 0.001 +-0.04461827676867733 0.9815789069243807 0.001 +0.421526056455531 0.9783714786614914 0.001 +0.3776980818379352 0.8998314408545932 0.001 +0.923609215251243 0.5588092288434974 0.001 +0.5305854041960247 0.429856905369273 0.001 +3.400991167648836 -0.1725924392190034 0.001 +1.638689461262288 0.3480213672028014 0.001 +0.597348974066863 0.5799589132800683 0.001 +0.7750227208289664 0.3371554354823186 0.001 +3.220386483354151 0.2792556467313176 0.001 +0.7081539757820207 0.9463069044901693 0.001 +0.6274440044742398 0.2566016008146499 0.001 +3.623151211836341 0.5341004537506667 0.001 +3.875977984551365 0.9500326446004301 0.001 +0.02087829925485253 0.7365629310129148 0.001 +0.1838945406860319 0.6982659011184131 0.001 +0.7061331635960064 0.3572969607550138 0.001 +0.4817327319362373 0.05344926762855026 0.001 +0.6694885960767678 0.02120739391416606 0.001 +0.2734143287157305 0.5217584113408759 0.001 +4.458121514468537 -0.1104219985143261 0.001 +0.3028938801815741 0.8723826400478163 0.001 +0.2984219472687386 0.8998560665547328 0.001 +0.5847397318275561 0.2851897411684125 0.001 +0.5888922605059677 0.6995659783971055 0.001 +0.9896289919689828 0.1276805157640244 0.001 +0.1185691811420912 0.4241643446687783 0.001 +0.6386243890977659 0.8674795928623849 0.001 +-4.829516596695593 7.662263080627789 0.001 +0.5076799572315556 0.9054114827803078 0.001 +0.6551233143484126 0.6400047861482857 0.001 +0.6571383059933216 0.5268197180453241 0.001 +0.6409157630304106 0.5110041053752011 0.001 +-0.07712501246354825 0.6472561361602721 0.001 +-0.0004307015141466957 0.4696851856182925 0.001 +-0.1340253182148941 0.941433151043953 0.001 +0.229841944083144 0.7959676869784791 0.001 +0.5090411782093616 0.3123009512077222 0.001 +0.3962400403954752 0.4235283895724262 0.001 +1.872702976648681 0.9385815267087898 0.001 +0.4275174331144132 0.1545870196796525 0.001 +4.204180356785521 1.454675210874683 0.001 +-1.414350305241415 7.846888797832129 0.001 +0.5330808804949076 -0.08398192891098712 0.001 +15.88621693170133 -4.058522898304736 0.001 +1.222813834211025 -0.4801255325062529 0.001 +-5.987039790522135 9.113196267201738 0.001 +-0.04543935908676337 0.3016260469212114 0.001 +0.3033291376625886 0.5037301117125783 0.001 +0.5582385960777494 -0.006596355033935856 0.001 +0.7000232407975218 0.4250729660613712 0.001 +0.4556740477154292 0.6401379363478281 0.001 +12.27180946663078 2.840557418859738 0.001 +1.673615973218236 0.4482657657520021 0.001 +9.385201745632397 -7.240083785379179 0.001 +1.487493586137887 1.142500747575358 0.001 +0.6571092325420445 0.3017066239993403 0.001 +0.9031776152641242 1.229177370292037 0.001 +17.85607241974578 -3.377528715164409 0.001 +0.9395717600767819 0.06961549197651028 0.001 +1.059957735074927 -0.02340086657214241 0.001 +-0.343049763081839 -0.1022108892958791 0.001 +0.3573268203409495 -0.07303454725908338 0.001 +1.052870598091888 0.3837725844560549 0.001 +1.054737389292409 1.070496339939558 0.001 +0.6598019276567825 0.3540643251915945 0.001 +3.262431733092357 0.5390639667590373 0.001 +2.514617863310249 0.4661033194860932 0.001 +0.3734146361161803 0.3460850006875706 0.001 +0.4386351453077186 0.8098986705291013 0.001 +3.74924698763695 0.7483784300531475 0.001 +3.090674701201602 0.1158336123258001 0.001 +0.1046623845923757 1.16259196036882 0.001 +1.150677128415219 1.669017940083012 0.001 +6.034795373738584 1.447257017153441 0.001 +-0.2514359395940979 0.8699558135432256 0.001 +0.04848067074226248 0.7046875683771447 0.001 +0.6229763812578419 0.4954833836882927 0.001 +0.7692146788155588 0.5469303917995729 0.001 +0.4285502468244611 0.5230534584958632 0.001 +0.9880614329888806 -0.06213434540675546 0.001 +0.2154817431907975 0.1769271043024605 0.001 +0.5551019772934001 0.4685107712953 0.001 +0.6910610380460922 0.8685470154569368 0.001 +1.366685767889713 0.7465959434975237 0.001 +6.689944669720998 -0.3592849021389849 0.001 +0.6799920800073624 0.8437305299418268 0.001 +-3.162244655261833 -0.2492443982847949 0.001 +0.5959944094731395 1.098760162797406 0.001 +0.2932900845487643 -0.03253352332397003 0.001 +2.061483270870525 0.4252870888048218 0.001 +-1.070935574427761 0.1435639559496673 0.001 +0.4358722721018113 0.06332503600818774 0.001 +2.924126764155516 0.3503747259961049 0.001 +0.4124010538845472 1.001858635400448 0.001 +0.8463171978200607 1.173328715841879 0.001 +2.188792190110774 1.668459753950947 0.001 +0.3957615120746539 0.293164801743693 0.001 +0.6000306897357003 -0.6098122742640029 0.001 +9.570036754331293 9.169504340615434 0.001 +0.9057629525665473 0.1898826771306339 0.001 +14.32399445177576 5.799492273143424 0.001 +0.504384729196715 1.031397932941774 0.001 +1.552219568162574 0.01185729919962442 0.001 +2.381414685697068 0.3571947077570308 0.001 +0.3387510371778575 0.2212872510935163 0.001 +0.8282410299057625 -0.8113278777095875 0.001 +0.6130278743182521 0.6093879823594138 0.001 +0.1991363273392572 0.4546337896643377 0.001 +0.9374732712764076 0.2631342932730649 0.001 +4.189254864214776 -4.544544489716917 0.001 +1.781426711197461 0.4274911000554581 0.001 +0.2321592754427002 -0.1223912248607264 0.001 +3.011022096063395 -0.9285226893678058 0.001 +0.6627726950132122 0.5572593596449502 0.001 +4.597701538137096 -2.504407790485223 0.001 +3.530173184153861 0.06865675481031065 0.001 +0.0604382467752777 0.2073073198320571 0.001 +9.249594651979979 -9.220436264807347 0.001 +0.6656466160168818 -0.3059156965640991 0.001 +0.6770557366194444 0.5633058561336807 0.001 +0.2431865214664014 1.018131316967364 0.001 +0.6406266835168742 0.6826059778929066 0.001 +0.5236834198926994 1.171210847792575 0.001 +5.447123579537267 9.034542718117148 0.001 +0.3200461335583349 0.2666284021120016 0.001 +0.6398578694372021 1.128469544738529 0.001 +3.341006698700134 -0.6461668015063164 0.001 +0.100524985579216 -3.937456791368483 0.001 +1.031993901308724 0.1155077838196038 0.001 +1.050075485884488 0.06467637847779817 0.001 +2.788260587480575 -0.1928556748715154 0.001 +0.3992894642155708 0.5810523264327367 0.001 +4.098756796862682 2.931004908778209 0.001 +-0.1698014877389533 0.9513542634722355 0.001 +1.206177226869122 -0.03794634883219339 0.001 +2.524884092988675 -0.171730062833744 0.001 +1.306557405025007 1.587946209093244 0.001 +0.5654668833054692 1.160514415048898 0.001 +-0.04728767836665806 0.5574021816444401 0.001 +0.5778039320699353 0.2615907661877366 0.001 +3.071446640212128 -0.4953760279487325 0.001 +0.721728954419022 0.9503073331515879 0.001 +0.3887211616923854 0.6372358692307576 0.001 +0.5239891526968133 1.076558459325124 0.001 +3.371221549574693 0.008676835925561585 0.001 +4.387596090982791 0.5261110408398593 0.001 +-0.1579887949122073 0.8444338332942116 0.001 +0.3672757054145103 0.8149020998220921 0.001 +0.6406576285708161 0.211878845176519 0.001 +0.8715758884685625 0.9981019216170074 0.001 +3.531816887425418 -0.7890796405917033 0.001 +1.02338043631678 0.5822651265335507 0.001 +2.044075198139473 0.06420653294289522 0.001 +1.084357201006839 1.018325297918306 0.001 +0.008725082664145008 0.8855565145707393 0.001 +0.6169082276230452 0.5294887044958074 0.001 +0.1280111460633878 0.4970920879906946 0.001 +0.9426658476797151 1.052857003559297 0.001 +0.6303618697756048 0.8467058454707415 0.001 +12.60557489678126 5.029885895933434 0.001 +0.4818506307103596 0.9327938281706176 0.001 +0.320987358068988 0.1398674318546672 0.001 +0.7373828018435096 0.6656622729435386 0.001 +0.361359329663983 0.8374969710848517 0.001 +2.021673207240755 -0.3021982036092711 0.001 +3.74012140911055 -0.4545415549451751 0.001 +0.2454727745198411 0.6056352446825938 0.001 +0.6373613984289521 0.6013818666439182 0.001 +2.772023599709395 -1.573236886912564 0.001 +3.873398764537422 1.1872116262955 0.001 +14.68712571221743 8.219656597420201 0.001 +0.381232523078396 0.4628005716627515 0.001 +0.134186585954959 0.926744802662874 0.001 +3.135944497632839 1.900957333512852 0.001 +0.5697686010556403 0.4982281325599959 0.001 +1.283651392763014 0.3145945958476983 0.001 +2.208298168086902 1.031792403861835 0.001 +0.4761296414724717 0.6853497342153865 0.001 +0.8056210442611916 1.120486584404868 0.001 +1.648260717914223 1.858992464633636 0.001 +3.655233890806122 0.9764244466761448 0.001 +4.363980997713039 1.025002659952176 0.001 +3.693148173324025 1.099719357478829 0.001 +0.7634468180517832 0.7338953904406847 0.001 +2.471099497915881 0.6601972114100777 0.001 +0.5400662122833675 1.059606677202101 0.001 +1.765257915265636 -0.8956523077042571 0.001 +0.3012452676916462 0.9606954069233558 0.001 +4.411916239917361 0.05927506966016931 0.001 +3.152435229951639 -0.1014406439971671 0.001 +4.89008467194973 0.6523465288096227 0.001 +0.6481852441233799 0.7697860403269217 0.001 +-1.917811571371946 0.1590074838010251 0.001 +-0.1146979872992435 0.009783954743222554 0.001 +-0.163945873073943 0.02301982918150661 0.001 +-8.869581139177294 7.513143003927482 0.001 +0.6058252447167896 0.5571048940229518 0.001 +0.7995943694496012 1.003308069320908 0.001 +0.7569438570293195 1.101302818554983 0.001 +0.2298768615267036 4.099604152848348 0.001 +1.391736324468097 0.5971961795347753 0.001 +1.021649435875608 0.6411281744321042 0.001 +-0.2916816724956724 -0.3999123349340067 0.001 +1.072159245684815 -0.1363549872614443 0.001 +3.853163807195554 5.175045600512133 0.001 +0.6161970862143331 0.0992577883696934 0.001 +-0.08570847607233764 0.7220099137730377 0.001 +-0.1426619158419975 -0.2831299526771269 0.001 +-0.8422868514654011 -2.451670897038475 0.001 +-3.080066235078551 1.069440895109087 0.001 +3.869693926492312 1.423972466189034 0.001 +0.3240639914601268 0.1675251023771754 0.001 +0.2219916414526339 0.5970220733329619 0.001 +0.1424807328632578 0.380568232547544 0.001 +0.1916016111290666 0.8201348514759751 0.001 +2.735951191337534 1.05329634981477 0.001 +0.3632074939029817 0.5668602654001612 0.001 +3.918268282276617 0.8389362446165912 0.001 +0.594839414377155 0.3590507670517311 0.001 +0.002078557917604091 0.02341043092806325 0.001 +0.422814166023594 -0.004160484873933651 0.001 +0.9667171609132053 0.298811458775197 0.001 +0.6166246998724542 0.3199538529395807 0.001 +0.9733041044114049 0.004848585707034913 0.001 +3.325460132315422 1.235594296020597 0.001 +1.307397010643 1.03931908952951 0.001 +3.809001372521852 1.043193343169606 0.001 +0.8686600456903728 0.8821331645730921 0.001 +1.357887516634468 0.01060946210195512 0.001 +3.993041799741384 0.1211551592708314 0.001 +1.08609191848743 0.1924430314890936 0.001 +7.056563381948642 3.722230354968169 0.001 +0.962374282513301 1.102079137324663 0.001 +3.324762346051338 0.07066837607587707 0.001 +1.163531821700825 0.07422472775030908 0.001 +-0.1593611033653096 0.1735046519482438 0.001 +0.3620033623576261 -0.1223919361012042 0.001 +0.3428898418860509 -0.09933411054388699 0.001 +1.610969445385069 0.6579828296796028 0.001 +0.2091107732635635 0.2281949919812795 0.001 +3.055353763499809 0.2984944021881398 0.001 +0.1092916942167083 0.152348974754749 0.001 +0.4126710951265324 0.3819402138968835 0.001 +0.7729485325418072 0.3755211733943974 0.001 +1.999831376162814 0.260986001161197 0.001 +0.9383836590870266 1.012145795357261 0.001 +2.414963417637297 0.4748026828781305 0.001 +0.06097601228653744 1.072897195818585 0.001 +3.565189182468795 -0.1900221051672468 0.001 +1.103645199381067 0.0172782554609339 0.001 +0.709537316444267 0.5941818684030731 0.001 +2.384234630743068 0.6789618860246881 0.001 +0.6892497583293887 0.7986653000067001 0.001 +-0.02832921889406538 0.4285125661754672 0.001 +1.282334792336248 -0.07404715042620501 0.001 +1.169979529881985 0.2822333061877162 0.001 +0.6835494049302461 0.3447415773265004 0.001 +-0.01171838087180428 1.064450820549635 0.001 +0.6015052358953255 0.3341394923419554 0.001 +4.404666738786824 -1.021125093337643 0.001 +-0.2710787010057157 0.1791349095487939 0.001 +3.368060082859198 0.8234260770650136 0.001 +1.640475639504796 0.07961834084994139 0.001 +3.221913367398174 -0.09249427294803378 0.001 +2.965743700244408 0.8428615600712605 0.001 +0.7092328286599665 0.4837658888531894 0.001 +1.943747393750218 -0.3015977047566585 0.001 +0.03309797899610727 0.2805133313168173 0.001 +3.273133979568848 0.8869731446544693 0.001 +0.6871990550232043 0.437706959999981 0.001 +0.2999543392336615 0.8330222347801055 0.001 +3.031621232423692 0.2485813760540361 0.001 +0.8804910172459472 0.4491873885541977 0.001 +0.6093646264606126 0.7258095767242263 0.001 +6.757034712457404 0.2922773526367715 0.001 +0.6675502885992001 0.494548497107081 0.001 +-9.153579062138348 2.073314031793636 0.001 +0.9792664288008881 0.3870381033014717 0.001 +0.7513528848315817 0.5024436715765488 0.001 +2.892943634794166 -1.035770279824436 0.001 +-0.02169322664277897 -0.1220544901764465 0.001 +-0.05558985198005048 0.6326157466444061 0.001 +3.954895612126937 0.593492118443145 0.001 +3.934562129632477 0.2350312121702917 0.001 +1.055011997452392 1.122480593574471 0.001 +3.486790397861906 -8.216565159988646 0.001 +0.726066252829821 0.9096376144137868 0.001 +19.15718926665836 -1.582541432325318 0.001 +0.6714832684219646 0.2452501325776451 0.001 +0.3980899345121484 0.6887884099855971 0.001 +0.441527820573725 0.1513590895012093 0.001 +3.239543932043228 0.05349210802610347 0.001 +3.725772934046028 2.140179196179335 0.001 +0.3461569555822281 0.7540974833880052 0.001 +0.8148565134318044 0.3769608103102973 0.001 +2.661208165594069 4.010521761972867 0.001 +2.143356812918896 0.3774105139216504 0.001 +-1.730163521790174 -5.985738853853214 0.001 +2.747308556769777 -0.08600031327156778 0.001 +-0.1532799344015376 0.7065741587998834 0.001 +0.1573879478841028 0.43117500848917 0.001 +4.233541890113673 -0.1793202495721327 0.001 +4.198410285303424 -0.3142897169939097 0.001 +1.897978520072999 0.7941919918571287 0.001 +4.116017771486834 -0.4556202381737861 0.001 +7.172326443132023 9.310356631520973 0.001 +-0.050208987925548 0.598287885717098 0.001 +0.2260866868366446 0.7226417281009526 0.001 +0.6135869137438003 0.6790937093774626 0.001 +0.316290867451532 0.9214611109213243 0.001 +1.017558861542681 1.052097397071084 0.001 +0.06807291893174197 0.841257737135267 0.001 +0.6281105141793463 0.3453302343367624 0.001 +6.008190029176038 7.180077849852452 0.001 +0.3416406781432696 -0.02755693416872895 0.001 +0.6489799765600313 0.4113073722315709 0.001 +0.34510733469139 0.7889648277837541 0.001 +1.871467888330157 -0.04552338141270541 0.001 +0.245554080354668 -0.08598085650604156 0.001 +17.36569613592364 5.836173631882502 0.001 +0.7007980008544464 0.6304791370486262 0.001 +0.9829781222883912 0.2546481439747876 0.001 +0.2882386199055788 1.033662675619224 0.001 +-0.06261513665662177 0.01615458263732846 0.001 +-0.03091110786149448 -0.01296721177300775 0.001 +-0.7767271053033495 5.024812917970479 0.001 +3.515435294614282 -0.5134475004616363 0.001 +0.1727492837993534 -0.1529827304451625 0.001 +2.407644460397207 -0.05236118285636502 0.001 +1.043150697497929 0.1572668791647397 0.001 +0.6459803126371839 0.1111345810905469 0.001 +0.8922925658390131 0.2177233920235548 0.001 +12.90455176226322 -3.822542283558241 0.001 +12.59055398572071 -1.9111757534908 0.001 +1.592499339861197 0.8891573474989114 0.001 +4.209878479302143 0.3698169080647545 0.001 +2.284713794201201 1.305586763609899 0.001 +-8.136851855289397 4.948787319644656 0.001 +-0.04004630798100581 0.6523278448648848 0.001 +-7.741022403725596 -4.681605786599021 0.001 +0.06099267638333397 1.027704490840705 0.001 +0.9614548053317803 0.09090153220290344 0.001 +0.9440985734631732 1.087667037676421 0.001 +0.7927728236057204 0.8888489892473319 0.001 +1.108427112035485 0.3148703848943608 0.001 +0.1185703437467216 0.5512866173429173 0.001 +0.4082242422725355 0.2432333983304124 0.001 +1.021666820379028 -0.01522394806085308 0.001 +1.007406421752013 1.00369399482144 0.001 +1.947861854861296 0.41657267057255 0.001 +2.070012224909703 8.938563963054417 0.001 +2.83881786515065 0.3021052813706673 0.001 +2.67055052360582 0.6740315471819686 0.001 +3.724019852188466 -0.8445014158891876 0.001 +4.000837719624178 0.552929299899685 0.001 +0.4811224922716488 0.02915450141835548 0.001 +0.2036462913305089 0.523673724510083 0.001 +-6.169376170192638 -1.784374276245304 0.001 +0.8928886806924321 -6.868193095806348 0.001 +9.70921073876646 3.838475330766452 0.001 +-7.573776988146172 -5.97463744932609 0.001 +1.040961359930122 0.3349277147067544 0.001 +0.2194496862772029 1.057783903754194 0.001 +0.01218285134568859 0.3948312639989371 0.001 +2.228431455530574 0.1937239778762132 0.001 +0.7408111137328189 0.5212245128348659 0.001 +4.385195281272194 0.7693309133160142 0.001 +0.9862821282619164 0.3520247457739286 0.001 +4.730481845888328 1.762204344880102 0.001 +0.4753529684080645 1.079580514701235 0.001 +1.01485682751838 0.4671989209146707 0.001 +3.969220667225858 -0.5085190892701248 0.001 +-0.01512807503332293 0.9772456810192642 0.001 +2.671532403045363 1.183400031765084 0.001 +2.305861024840466 -8.982195008284949 0.001 +2.989733035526577 1.715926393716626 0.001 +0.7470190043458987 0.4121266929263374 0.001 +0.9434946846349826 0.7806534408106428 0.001 +1.883641153718714 1.039582541608391 0.001 +0.1812337117269331 0.3500850797711466 0.001 +-0.423102225670982 0.3531089525345414 0.001 +3.217415911650354 0.3694777058798999 0.001 +0.3020739534548507 0.1273559893673097 0.001 +0.2694589907343299 0.1493682988892904 0.001 +13.05955634726848 4.588864967865837 0.001 +4.078910955337022 0.9542891562905992 0.001 +0.2635581752189795 -0.02845929769647809 0.001 +3.814265926830577 0.7276635670217674 0.001 +18.04936613274728 -7.021567523480868 0.001 +1.023828660796671 -1.629659460909169 0.001 +2.602697116624411 0.1452280040614979 0.001 +19.08786594400238 2.689290554561351 0.001 +5.626211828960028 0.129499148367249 0.001 +1.930345395075008 -0.416628115291967 0.001 +0.6950019212275681 0.6983882004225058 0.001 +0.1321843918862363 0.1653731169268626 0.001 +-1.659524635506089 2.630195314273397 0.001 +0.9581372576256911 0.6502658856771708 0.001 +2.096067927672278 0.6440860282945555 0.001 +0.8852992818212716 0.9598393409367967 0.001 +0.736209163994864 0.06444244133187876 0.001 +1.570908773894406 -2.855075118159012 0.001 +2.510272961682687 1.004000597546874 0.001 +0.07953452887332418 0.4974149917676443 0.001 +0.494547746535962 1.067728907702558 0.001 +0.8978855950305262 0.797603244920446 0.001 +16.44626543346513 3.911982064913581 0.001 +0.6611628842099594 0.6559465477497232 0.001 +3.658876875795605 0.1552702042398793 0.001 +0.2835155415199789 0.7079542773483415 0.001 +3.717298262736171 1.860730722710765 0.001 +0.3541791158423329 0.3310915020357812 0.001 +0.5994142589336248 0.05165083921239642 0.001 +-0.245347092382279 0.4032809765939014 0.001 +-0.2664454867816818 0.2990449470432139 0.001 +2.776415428634945 0.3701848231511293 0.001 +3.601211404410493 0.8918896455306884 0.001 +1.662131479652241 2.134460841646996 0.001 +0.9876442244730439 0.5842563281973885 0.001 +4.034561693967392 2.07689953429592 0.001 +1.20732264548594 -1.984389604563845 0.001 +0.2325417096249999 1.073372421841713 0.001 +1.082058410597627 0.5225461634085781 0.001 +0.8606035226406092 0.9640944771900369 0.001 +1.254973124501722 -0.03831075312246297 0.001 +4.840740818131553 4.409730410069168 0.001 +0.3740044215679554 0.3810996470511139 0.001 +3.197133754303817 2.720521715614203 0.001 +3.778041138157061 -0.03412098943436199 0.001 +0.7690926635156087 0.4574646910691693 0.001 +0.3544861862706381 -0.4050171947639433 0.001 +0.7254899258031225 0.8505513928831001 0.001 +0.4641871043650745 -0.00947862982235036 0.001 +4.832712773970213 1.023163569568839 0.001 +5.158868585113956 2.374379409371727 0.001 +0.754208987538256 0.2994771163781275 0.001 +0.9914281579396138 0.033728208920191 0.001 +2.616050738056982 0.4297306554691063 0.001 +2.037424452561986 0.8338852778706961 0.001 +0.7102330344669345 0.5103848677000263 0.001 +0.6960025155502851 0.3880199425317242 0.001 +1.415196965732037 0.2961821270750942 0.001 +1.009047435656093 0.2107170859386146 0.001 +0.9862348604805546 1.266122075731118 0.001 +2.861495728236049 1.1697290868191 0.001 +0.6402515353174777 0.7087164121816287 0.001 +4.041494311193134 1.593869199082677 0.001 +2.237413148413779 0.8167113683700686 0.001 +0.003168309117172108 0.9518691991791233 0.001 +0.4210157292885435 -0.09977977321714986 0.001 +0.8264939121721853 0.7640339101731944 0.001 +1.098846364367635 0.243971147202982 0.001 +1.027339669415273 0.3566806478863452 0.001 +1.77210039480945 -0.1306226589102025 0.001 +1.059561042115244 1.521236552507717 0.001 +2.802590121650726 0.748880711965547 0.001 +-0.1167456724833755 0.8071939620088354 0.001 +1.475896808373332 0.238166785086029 0.001 +0.7727738570837809 0.01740623564850253 0.001 +3.145833338697752 0.7257833452183796 0.001 +0.4469903996930459 0.2483446707291128 0.001 +1.901340036316963 0.8856228890440296 0.001 +0.8979755916897179 0.3046345035026929 0.001 +0.9171281223965865 0.8922268940742026 0.001 +0.0648184588908922 0.9384277808174492 0.001 +3.74226474228154 0.9831389097821088 0.001 +3.047452162561706 -2.527905090985741 0.001 +3.854244909886011 1.322306799453943 0.001 +0.8485378851270915 0.9360649929516076 0.001 +1.035866546118817 -0.0447492744386548 0.001 +2.177630004634257 0.6819216984258667 0.001 +-2.534959805694949 1.605737398772185 0.001 +3.411130714166594 0.6606069278381643 0.001 +0.3519682429608108 0.456729704310812 0.001 +0.1328485723155532 0.243274488926537 0.001 +16.86004044950575 1.852738189805878 0.001 +0.9237834321939795 1.802722563982931 0.001 +0.8713820744724003 0.02513703822195088 0.001 +3.149907485666577 0.3217833693277016 0.001 +3.071335238777816 1.187758455702698 0.001 +4.803635333877786 1.192883267971927 0.001 +4.61671061877823 -0.5401141770282798 0.001 +1.077963016501555 0.3629251138368425 0.001 +1.326814969806767 0.5104881947269548 0.001 +1.688583339877039 0.7637278522455238 0.001 +0.7171511840384477 0.6496096114138381 0.001 +3.295093939580829 0.6320403689348588 0.001 +2.390255909563151 1.489162332863939 0.001 +1.075485133964448 0.4722322516111082 0.001 +1.05120090545062 0.5527370537552836 0.001 +-0.02138943504751057 0.4012896464560388 0.001 +-0.03344320689257794 1.057114111794317 0.001 +0.9838830370425173 0.7256404552379531 0.001 +0.1275037588030017 -2.238032279370053 0.001 +2.804040875797136 0.9279601123973833 0.001 +2.690851483158386 -0.3248945393867397 0.001 +0.1838648655581359 1.028661515042598 0.001 +0.8726430569488161 0.9100243390164 0.001 +7.091418053550004 -0.06175530030054128 0.001 +0.942185577527151 2.232111316539971 0.001 +2.373548530391637 0.7562972229515119 0.001 +0.1575578412605942 0.4669371845643123 0.001 +0.2683340863387775 0.005285605319966518 0.001 +10.22736457984733 0.4716507378805077 0.001 +2.601839287593043 0.06610043830336494 0.001 +0.6698794168237182 0.5151834873755199 0.001 +1.45781161486012 -0.8348062860533557 0.001 +3.800536899993751 2.470901769434326 0.001 +0.887312864612782 0.9822720678793544 0.001 +0.6762695936555886 -0.1332834780853081 0.001 +0.6388109294633036 -0.1652273991736719 0.001 +0.6527046535583848 0.803950998549217 0.001 +4.504574169764034 0.8457410481087445 0.001 +0.01051565243881873 -0.0480146080409557 0.001 +5.538122044006658 5.430246019296548 0.001 +0.9811506354251976 1.050143740211801 0.001 +1.038326240672082 -0.1491020500391651 0.001 +0.1879318393162029 1.060808129838798 0.001 +1.943552859066577 2.882449309889859 0.001 +4.130307577762026 -0.3511322259692891 0.001 +0.9271750004570198 1.107610108184102 0.001 +1.527711526028678 0.5907856401649036 0.001 +3.392105280519923 2.173981013874446 0.001 +0.7132213106019163 -0.1699005226962201 0.001 +3.117284524969548 0.42163206503622 0.001 +1.798021871582289 0.6341288813635338 0.001 +0.1487390819457248 1.025144883369215 0.001 +2.570221745737729 0.9073931647948403 0.001 +2.365047246630623 0.2801203673161903 0.001 +0.6871485095608062 0.7701246944100795 0.001 +0.9127164931942437 0.9402455578917226 0.001 +0.903168493904278 0.90958199665185 0.001 +4.624294112368024 2.094410285002808 0.001 +3.666111950961409 0.890737404874239 0.001 +0.9312301830101621 0.1806117386013402 0.001 +-0.04960577112154473 0.6846331712005911 0.001 +-0.4725979879496039 1.094417986395666 0.001 +0.3744118870233577 -0.09474403023497481 0.001 +2.470671658305106 0.05218799233285597 0.001 +-0.1186257025376316 0.3386413498084732 0.001 +-0.03614667667238539 -0.07554382515632987 0.001 +-2.842819871518934 0.4563119840291779 0.001 +8.398981965019662 7.924679880653961 0.001 +1.08551236155302 0.3159677326103564 0.001 +0.2660983466312638 0.8385876398328586 0.001 +0.72858814898281 0.817472327695161 0.001 +5.642801361663867 -0.7442708266478679 0.001 +0.7647651675180861 0.9002943471035462 0.001 +0.9462260142026043 0.02557096821658486 0.001 +-0.02699831029275352 0.07610122870761175 0.001 +-0.1314658472988897 1.378300215601392 0.001 +0.2687795721287944 1.09959919367732 0.001 +0.6892201800269622 0.552307027417637 0.001 +0.254994672972148 0.7775020197889804 0.001 +3.737012878723105 0.03668963987872906 0.001 +0.6715361849210062 -0.9614865135074488 0.001 +2.839454276315361 0.5845136731512508 0.001 +-0.01887167219672858 0.1789899910525548 0.001 +-0.06270158752195024 -0.09917681853492143 0.001 +3.139317323679275 1.190570408002412 0.001 +0.9725055892761925 0.4139129314224162 0.001 +0.2064240327815708 0.9564886723501905 0.001 +3.836869593628915 0.2391209789869078 0.001 +2.941449237696933 0.2533417809466622 0.001 +-0.06101858331693136 0.7961474243955963 0.001 +1.846894844304007 0.3704950116270775 0.001 +0.9185194948625643 0.8291014407566157 0.001 +0.07479526411127085 0.3521330434333086 0.001 +-6.771931854611838 0.5481466952152814 0.001 +2.98165018379834 1.240229535915374 0.001 +16.17049195456953 -7.99540051828455 0.001 +0.8037695519821765 0.7295124716029051 0.001 +19.14494729258787 6.007014963302728 0.001 +0.7545456239349182 0.5892140693629924 0.001 +0.6339682108531193 1.179010064488246 0.001 +3.606994855826736 -0.03424604508523919 0.001 +2.857533177119852 0.1959541222362604 0.001 +0.1867453141019538 0.7190307053126094 0.001 +4.549901401756385 -0.6849363464435801 0.001 +0.9192997913493623 0.3890528741893334 0.001 +0.3326096946365791 0.8792602839281886 0.001 +15.05610682558712 -0.1518387335185105 0.001 +0.1493616480676304 -0.02544399228399958 0.001 +0.3711093287782843 0.4108026613093079 0.001 +4.566155498255304 0.103881941191876 0.001 +2.092137476216811 -0.9322438250577689 0.001 +-6.232042558552201 -3.121393276840883 0.001 +1.372965942733658 -0.07885220712613329 0.001 +16.02163574336995 -3.179589669138043 0.001 +-0.05007129374959893 -0.3705565102613232 0.001 +0.05476146508067699 -0.3250366211247266 0.001 +0.1428216397494047 0.5509737266512128 0.001 +0.05161320488796772 -0.06489491568306853 0.001 +0.7308499405145054 0.7499477360295249 0.001 +0.8943548045462862 0.5779931537741493 0.001 +1.06931101854956 0.04189477708471475 0.001 +1.056269053398635 0.01908268756540491 0.001 +3.797162897657202 0.3973492856929484 0.001 +0.942888862994085 3.693986492682432 0.001 +0.881033946602655 0.8111223744288122 0.001 +0.8220259037262515 0.4544404303873048 0.001 +3.96397903083216 -0.8847769621833059 0.001 +5.796519102543106 -6.604488259955317 0.001 +0.900379469202686 0.8790305588697597 0.001 +13.76298041609218 -6.248570826671699 0.001 +1.027444131621103 0.7914379768855966 0.001 +1.052893281914323 1.008275727224573 0.001 +0.1967226690933665 0.686521594413502 0.001 +0.8691269984458672 0.8497790427370728 0.001 +1.050035527440283 0.7464076054388217 0.001 +3.846769157571012 0.6563119250618203 0.001 +14.36999229382404 -8.006146524605553 0.001 +-0.09510686969211296 0.6291776798441561 0.001 +1.014991171582274 0.1055526229815407 0.001 +0.9738936737743941 0.1869022276365422 0.001 +0.8934103733643783 0.1434398248245093 0.001 +0.9212914989512466 0.1491736225475061 0.001 +0.7510269481226004 0.1738492088607089 0.001 +0.9201725061124884 0.8011322950331329 0.001 +-2.205973662725818 -0.740908991415659 0.001 +1.069124518691783 0.8438550892361824 0.001 +1.129130671501642 -0.07491291141331631 0.001 +2.253737284281337 1.873061814227184 0.001 +-0.002419109425604634 0.3089225171130984 0.001 +3.426291427841881 -2.235819947819429 0.001 +5.252765957689061 0.9034983920323232 0.001 +4.287517005234543 1.080764325968269 0.001 +1.277329193680945 0.1313609586166509 0.001 +1.016677670252828 0.7175526126782685 0.001 +0.2993877123532699 1.014038380210859 0.001 +0.9047422969644147 0.001216277386827737 0.001 +1.097790335363698 -0.1773202569834437 0.001 +-4.335922008456722 6.278561760650421 0.001 +0.252520829028624 0.3050158256472495 0.001 +0.1956265181913092 0.652885643717626 0.001 +3.350599292050251 0.6966519897606167 0.001 +5.786165145306197 1.034462177745067 0.001 +0.1226184405839486 0.04062299941283905 0.001 +0.2738161766382047 1.079726907138213 0.001 +0.6514876991001504 0.4402441944938606 0.001 +1.059039956266681 0.3369463267239932 0.001 +1.418190329857493 5.341385127802514 0.001 +13.56253911329315 1.396513772583325 0.001 +2.126405236478972 -0.3652902501728548 0.001 +-0.1295438766242554 0.2487476461073487 0.001 +0.244757601292791 1.093275850388352 0.001 +0.9150876871448688 0.8636092640434125 0.001 +-0.09662245413092962 0.296807990529518 0.001 +2.281056656220434 2.222882711118725 0.001 +2.685778744110694 1.551632689123826 0.001 +-0.09006168428507896 0.596324412596411 0.001 +0.8005105323580297 0.4130318687547844 0.001 +1.03036714311079 0.8484202575815774 0.001 +2.182570186601174 0.02541407792387352 0.001 +0.4365024153068449 1.084581541976616 0.001 +0.528934267598877 1.099731558977721 0.001 +0.8385308447111354 0.1011010593820644 0.001 +0.8415068073584143 0.8814522160063928 0.001 +0.9670976371986023 0.8051561996466895 0.001 +1.399615359533439 0.3704857090115535 0.001 +1.131356990102174 0.1178523332916928 0.001 +1.708988871533305 -0.4960660216894105 0.001 +0.351081279738373 1.110255182634445 0.001 +2.263882836741821 1.549475432018226 0.001 +0.8361300013537091 0.5391736747198151 0.001 +3.48364909858135 0.5076709295158032 0.001 +1.39018367795742 1.058226400922273 0.001 +2.429429981755311 -0.2899467072881971 0.001 +3.48795754333868 -0.1883645381826874 0.001 +0.8387412650730461 0.974723033946335 0.001 +0.7338100428416863 1.104316925559488 0.001 +0.7094965363236024 1.107890297268796 0.001 +1.615724057134534 0.547669330568566 0.001 +3.476718191384628 1.767465843457223 0.001 +0.9293854923069829 0.9455218797407636 0.001 +3.245992317744431 0.3337983122007906 0.001 +6.773229066776578 4.82946293659868 0.001 +4.091140502492074 -0.06876111702217176 0.001 +2.686543707324174 0.8230179555432824 0.001 +0.2849527456582803 0.2925311580259869 0.001 +15.24680450419198 -2.712058088090726 0.001 +3.122587132793043 6.716064063949587 0.001 +9.164662445307723 -1.988455817032183 0.001 +-3.293067165843052 -4.003132353129846 0.001 +0.8439833348484745 0.05781445229893289 0.001 +3.25486977516817 0.9609815492052216 0.001 +0.0004572921402100565 6.602381463726826 0.001 +0.8302200004702243 0.5926753054335959 0.001 +4.041822954457996 0.5998490881987902 0.001 +1.989474705808302 0.8339038102014207 0.001 +0.2644315366013263 0.7581738215431936 0.001 +2.222315204871744 0.9282546429552098 0.001 +0.937910638890584 0.8660285641518791 0.001 +0.9431035475876133 0.607334201051229 0.001 +1.807910293286049 0.3020347378682837 0.001 +1.284903498883004 0.740682947583839 0.001 +-0.6383829640364588 -4.537764853724988 0.001 +3.145418358801738 0.2334548404578427 0.001 +1.006439751806963 0.7626809232446754 0.001 +3.572225666924855 0.4025308645352859 0.001 +3.984551094042801 0.2009051334161297 0.001 +0.2622469854990243 0.4745136884838578 0.001 +1.095478460536569 0.9471103071345619 0.001 +2.302926160981927 0.7069464054441275 0.001 +0.8920447584052161 0.7252612228188039 0.001 +2.599366023120474 1.101006584675851 0.001 +0.9467850570314552 0.827207256372133 0.001 +1.4317663727571 0.03810236827350488 0.001 +0.8369918633111251 0.378851255724455 0.001 +3.48609833224408 0.8240368215506838 0.001 +-0.09247773982795637 0.908768665998768 0.001 +2.767556379201507 -1.175386369839458 0.001 +4.201980849935211 0.01108952300873672 0.001 +0.8838551248368017 0.8338608280716269 0.001 +1.133881758848639 0.03086826913813885 0.001 +1.399474662105439 0.8510205892899054 0.001 +1.071213687068015 0.8121779944082355 0.001 +1.104378840085047 0.8126092788257357 0.001 +0.6868969957835092 -0.2400819144233756 0.001 +0.9736313149844689 -0.113184939636237 0.001 +2.617736167393622 1.307228325979643 0.001 +0.08640970811223406 -0.1595292148561392 0.001 +1.12248325533627 0.1487328401581187 0.001 +0.03753092391424322 1.025736020858614 0.001 +1.002076429121278 0.7832817632059165 0.001 +3.981811699388471 -2.733306881357258 0.001 +0.9729169482664735 0.8981969120171693 0.001 +4.282089919629701 -2.016128153018615 0.001 +0.9858525174400193 0.7688674351329994 0.001 +1.004958667677176 0.6870666145689248 0.001 +3.461512449372619 -0.0532346229815885 0.001 +0.1610348251276451 0.4982544673228594 0.001 +0.6029924151464006 0.2117044200408913 0.001 +0.8844621797102857 0.8648653639438588 0.001 +8.114330748033945 -1.614649543252393 0.001 +0.2667883591653561 0.2024337397319743 0.001 +0.9079140602713092 1.093129283243383 0.001 +1.525929859085704 0.8064727555268656 0.001 +0.9506478934916017 0.003204465534543384 0.001 +0.725614033080647 0.1105482386572647 0.001 +0.8609211560773871 0.1374545003239725 0.001 +3.143425862697359 0.9091908871213026 0.001 +2.776803567916653 1.078597190707841 0.001 +0.7086529678052388 0.08304438901925873 0.001 +0.04170782604217242 0.9815328274752281 0.001 +0.9500407658038189 0.3532600286403854 0.001 +0.7444378255504795 0.6231859498372705 0.001 +2.588306801114582 0.5921855605992917 0.001 +3.667869279725701 -1.097324537007683 0.001 +1.363345830170167 0.09039361586654843 0.001 +0.4834591527527928 1.045202448143993 0.001 +0.9738145704781153 0.7445998782765401 0.001 +6.186102951743925 -3.194933848092486 0.001 +0.7983336981049377 0.1242896652551767 0.001 +3.860353908992479 1.587409467373581 0.001 +3.848718889431726 1.760213611400385 0.001 +0.7955602192468003 0.5939256634003158 0.001 +1.017548813684963 0.8210154721517877 0.001 +0.8898783447772616 0.6557266510459883 0.001 +1.052372696516745 0.7124958582634633 0.001 +3.573317341258559 0.5858331097410812 0.001 +0.9746876399473988 0.8721137933900098 0.001 +1.111976325286089 -0.1019105681380036 0.001 +1.094831039082582 0.366186267461767 0.001 +0.05638694148720932 0.07890844291793479 0.001 +0.6072465218016648 1.298059183049852 0.001 +2.293295371585505 -0.3583532017983334 0.001 +2.44485159807539 1.231384786057194 0.001 +0.3741742236127205 0.2899522184307457 0.001 +0.9942278719425242 0.8261781130291365 0.001 +1.147601785222259 0.8114236618226971 0.001 +0.8474473579237719 0.6322953480008215 0.001 +3.605296302695558 0.2372353968648445 0.001 +1.463129948706543 0.4367829827248764 0.001 +1.034686977138631 0.730918997087489 0.001 +0.02734315242422215 0.9602698706637747 0.001 +0.5483911493728514 -0.2201050508487613 0.001 +1.467660536909611 0.9355519366754833 0.001 +-0.009556352768029694 1.043595677246205 0.001 +7.055573802253083 -2.776348164151929 0.001 +1.051139540794227 0.4053604591024436 0.001 +7.492210720488833 -1.852579492376267 0.001 +1.905599588205722 -0.189609512843892 0.001 +7.920297748028689 -0.1759503097151347 0.001 +-4.105816015917396 -6.8818042896351 0.001 +3.068724480249143 0.9424448798330451 0.001 +13.53294477936497 0.1151923135346315 0.001 +10.64807324708857 -5.459617765296144 0.001 +0.9656311302349813 0.7839481245279251 0.001 +-5.741994460770059 7.190705089802663 0.001 +15.20607407371061 -5.514079980093651 0.001 +0.02517538458404113 0.1788236539830557 0.001 +0.1529164029871551 0.9026600931406343 0.001 +5.341026205632928 -2.618850466444822 0.001 +9.423856876362386 8.540671032823669 0.001 +1.900818213519341 3.430599251144593 0.001 +0.8245143229652444 0.9064109629983916 0.001 +0.7683953913554461 0.5013766691233781 0.001 +-8.273213104222494 -3.434114609519986 0.001 +1.919955155201265 2.123016830615291 0.001 +1.17306875383233 0.7399099250810132 0.001 +0.9509943190133654 0.8492125756086517 0.001 +3.985442343446798 1.280431545055995 0.001 +0.4058810526799709 -0.3046254462010445 0.001 +5.104010802074273 -4.588022676104059 0.001 +3.159151825752637 -0.6235254176480401 0.001 +1.033075613746212 0.7621947941519132 0.001 +-0.002182348354098283 1.318412106335938 0.001 +0.9980647398595919 0.7717256996241422 0.001 +1.003029906812652 0.7363129674106424 0.001 +14.96114156151822 2.630329278235441 0.001 +4.491413532459988 1.164346273437737 0.001 +0.08839410378120142 1.09678653719928 0.001 +0.112646342980838 1.091488045887723 0.001 +0.9736960632303048 0.8496099313009456 0.001 +2.208337416299585 -1.874515105082226 0.001 +0.8032523405679833 0.7665447027373545 0.001 +0.7505024470872765 0.7776979943224417 0.001 +0.9471993871696274 0.8870308735627496 0.001 +0.6280000874811291 0.04543659574656898 0.001 +4.903917543167893 5.128763443668665 0.001 +3.358242422942163 1.131485375353387 0.001 +4.034153596535857 0.7495704627115213 0.001 +1.075690409160577 0.7793128200192143 0.001 +1.105775614586384 0.7793811982196325 0.001 +1.123225223250051 0.7935652153760372 0.001 +17.97565803655597 2.341648336529556 0.001 +1.091714937530492 0.05672725020035528 0.001 +1.388899941864276 0.9270414109428206 0.001 +0.2411821962713432 0.1749692524032949 0.001 +4.136196073001312 0.8475421240577107 0.001 +-0.5677389568756492 -1.647088175642341 0.001 +-0.7519838440991385 -2.077910556123662 0.001 +2.836892580483553 1.031405085317059 0.001 +1.045816161675618 1.170296937571545 0.001 +-0.06238654060362506 0.1973688111947247 0.001 +-0.4170385447379121 -0.2089583104537486 0.001 +1.913974090772116 1.282422882312915 0.001 +2.195942898138677 1.258757250894561 0.001 +2.064897425054474 -0.4586514581587653 0.001 +3.295295516701146 0.4709589214783186 0.001 +3.427041964237331 0.4836146007971928 0.001 +0.8543687418223984 0.7816045130017196 0.001 +7.623718662365352 6.163125250562452 0.001 +1.053245116143982 0.6051223238577443 0.001 +0.181016778767263 0.878440927158623 0.001 +0.1035196227287858 1.050653280695974 0.001 +0.7453366993193227 0.5507616237197177 0.001 +2.834997306823235 1.816188987041925 0.001 +2.9626714094348 0.5541372274095274 0.001 +0.485075537332673 2.161202196950226 0.001 +1.045341321036662 0.7780431904887083 0.001 +0.2297433040727234 -0.1671508640513041 0.001 +0.3361599224068627 0.4681622798063874 0.001 +1.163151497614791 0.4629095811137579 0.001 +3.857236976108327 -0.3017306018215222 0.001 +0.01370640279417963 1.000960746926534 0.001 +1.057761518554802 0.7950316526178658 0.001 +4.546275255256452 2.451874923593595 0.001 +1.09593813374013 1.133703125160438 0.001 +0.04605639482471898 0.1128660302044482 0.001 +2.937093097454127 -0.2446472167816597 0.001 +1.485606674675858 -0.9994962098999313 0.001 +-1.536485614366047 3.765778686724591 0.001 +4.033590878647944 0.8509271778293269 0.001 +1.255222141608595 1.363102559268429 0.001 +2.134120270831171 0.4458444848717552 0.001 +2.940080520731596 0.1563990526911622 0.001 +-0.1158437707549668 -0.2120221627968276 0.001 +0.8642308916285408 0.5871839128903955 0.001 +0.9887536161115755 0.8044746049007663 0.001 +1.060722605381084 -0.7732338781300508 0.001 +4.274551313890627 5.554075444532761 0.001 +0.7304807639539219 -5.154147674093793 0.001 +0.5669088342426848 1.091117900855007 0.001 +0.296936119757031 0.727717939773073 0.001 +0.1398943568673287 0.3531250455485898 0.001 +0.1089638431616473 0.4584575361601448 0.001 +1.34002475162902 -0.2119789036532587 0.001 +0.4608141942808766 0.06920536919451484 0.001 +1.090039870108545 0.9175394711991809 0.001 +1.457099640813954 -0.1673115560498161 0.001 +0.03990137969898258 0.209930444974149 0.001 +0.5312930761697773 0.003263721743639622 0.001 +5.015036834916328 -0.182639687659688 0.001 +0.9357856282741283 0.9048493691420736 0.001 +1.026963855776734 0.6632469854367778 0.001 +0.4916017984822572 -0.06716085245182403 0.001 +0.8097924547215882 0.2310013256554384 0.001 +0.1152233338090311 0.5284340227640599 0.001 +0.9996758797420029 0.8741587519744586 0.001 +0.9903344025725568 0.9611239489059802 0.001 +3.389199544662802 1.043389189013979 0.001 +-7.032826036858866 -7.585059180683194 0.001 +0.4900285019011279 0.3040896861730855 0.001 +0.8752381741177857 0.1749963891309682 0.001 +2.537869426539895 1.974374017781692 0.001 +3.948791465106741 0.3824965474731948 0.001 +-0.122106386618233 0.4653662462352899 0.001 +2.654756222511405 0.1783501250482139 0.001 +0.1403121786182599 0.3205993820967473 0.001 +0.7004908540241461 -0.03246649297897759 0.001 +0.398579779985769 0.03615659928491974 0.001 +7.18935451264848 -9.098637140095997 0.001 +1.981271346914848 0.5372064794094055 0.001 +0.8564739029471236 1.110731265396449 0.001 +1.038813921405612 0.8096058766670839 0.001 +0.2455845192109051 0.2208793634088747 0.001 +0.08954950112664511 0.2901596464459323 0.001 +2.743688243522254 0.161331419424225 0.001 +0.2579560861416074 0.9131757238206626 0.001 +1.960826895984577 0.6034751305474492 0.001 +5.776867975757035 -1.767278051229351 0.001 +1.950267045715164 -0.08650254453900987 0.001 +3.600267515345602 0.6443207211981876 0.001 +-0.03082622149599065 0.3327555814334582 0.001 +1.479309080942484 0.6895357839762051 0.001 +11.71882179900404 -3.033075584840009 0.001 +1.314799536756759 0.8948484451286757 0.001 +5.767613693732233 -0.2313239080956381 0.001 +1.35504477656695 0.2789627271086078 0.001 +0.9039308852910261 0.2784629192940062 0.001 +-0.3318437947195728 0.7847581397492206 0.001 +1.552227441161119 -0.2699417958215408 0.001 +2.599180577410634 -0.6675145320045951 0.001 +4.711285352461433 -1.729602353591539 0.001 +-4.633948433067326 -0.7328633855929093 0.001 +0.8714735949334442 0.753716461547424 0.001 +-0.7779042340740349 0.01412279302449198 0.001 +0.1308899828631276 0.02763179338103357 0.001 +0.9541245674349345 0.6907040759339811 0.001 +1.05749935158774 0.8617162249606991 0.001 +-0.08360938340052132 0.9802407633899013 0.001 +0.1914403341053656 0.02464879100627148 0.001 +0.8990693365701776 0.4355449223615249 0.001 +1.439992666098825 0.5524858697952081 0.001 +-0.06431659859864505 0.8626048537714395 0.001 +0.885640654320032 1.113983484679977 0.001 +1.626232474985985 1.017680515362204 0.001 +3.450836074715505 1.155508364371019 0.001 +3.847274816876168 0.8692098264379997 0.001 +1.25467245280016 -0.1550500943424542 0.001 +0.3769742874286562 1.128876596432135 0.001 +0.1806647151149265 -0.04376095676682783 0.001 +0.408196821180658 1.220534683075303 0.001 +4.066741204839194 0.8708593147723077 0.001 +16.75976644483909 -2.303117337150079 0.001 +0.2055689048690685 1.073614627337083 0.001 +1.06313371996133 0.7625862301757889 0.001 +1.77010622498807 0.7820617206083372 0.001 +0.8080158944254231 0.09255190608118412 0.001 +9.551971605804113 2.83475230309504 0.001 +1.053007634485324 0.8281333581075284 0.001 +8.75661320886489 -2.977902105722208 0.001 +-0.07699337092894513 0.92367665269883 0.001 +-2.487631006090171 -2.068149217509582 0.001 +2.147247593841278 -0.1892928964324183 0.001 +0.0005193140798308688 0.9359939005809836 0.001 +0.04189060336845413 0.9423376901385623 0.001 +2.191951545341777 0.4682608968815162 0.001 +0.8258598457605693 0.1607345482273219 0.001 +1.498739354429971 0.9077401807597687 0.001 +1.000065401934016 -0.01502227892591405 0.001 +3.255392539943256 -0.0424488580760287 0.001 +0.07601983914470836 -0.04331449468364877 0.001 +-0.7177979302571337 -8.365612538475554 0.001 +0.3156027842911308 2.752780366814154 0.001 +2.241030015198125 0.2993021986863983 0.001 +0.9879043374262491 0.5536267900391783 0.001 +0.781196173051467 0.9263896717134796 0.001 +1.865407385164416 1.185358098587368 0.001 +1.065651601949942 0.648375153250488 0.001 +2.694035711713851 1.303674569613178 0.001 +2.472639733012189 1.60919967132374 0.001 +0.9456572432648169 0.7577261606736656 0.001 +1.315925298657056 0.2049990986888264 0.001 +2.280837314783023 0.3562256165515691 0.001 +0.7832843645791405 1.187642378341696 0.001 +4.797791066558955 2.962186092146989 0.001 +0.8757834835165179 0.2677433533752701 0.001 +18.910495957172 8.170144415236297 0.001 +5.90149307986876 -3.719543065387747 0.001 +0.7843673517505186 0.07407870862331545 0.001 +0.842992826302661 0.7352638824448613 0.001 +10.22297565097026 2.059192191645153 0.001 +-3.6413950831226 1.399887858647026 0.001 +2.663242824875271 -0.1576552230500101 0.001 +5.315213411518084 0.4771491769081484 0.001 +1.049789783115248 0.8831514743528782 0.001 +2.068513716145805 0.3011178391417139 0.001 +1.962499518460837 1.150354939633662 0.001 +0.7132401606816244 0.06055109909372612 0.001 +0.1350531789731657 0.8598401892882636 0.001 +3.733941933115894 0.30339038722029 0.001 +3.334505115220329 0.4037608434968819 0.001 +1.614738128587641 1.064728788643794 0.001 +0.3185870727326933 -0.1118124959759383 0.001 +0.2629534484715512 -0.5174688066326896 0.001 +1.054778570322126 0.08632830690001589 0.001 +4.812771860109997 7.990277622881305 0.001 +3.722895115393277 1.423025815612913 0.001 +3.733723824539322 -0.1757299883689604 0.001 +0.9269349014571366 0.2833311415983742 0.001 +0.781611190343825 0.6181313851259875 0.001 +0.02195276597686929 0.05538054392916354 0.001 +5.105610939146199 2.785432638993807 0.001 +-2.93332681574866 -6.423381650179692 0.001 +-5.542423855038649 3.446206951339404 0.001 +3.096270548674112 1.017866123401269 0.001 +2.17594520593429 0.2614389615968288 0.001 +3.479359607331976 -0.2806402705624858 0.001 +0.8536262070331306 0.5004482632445502 0.001 +1.306116241414401 -1.265781963446586 0.001 +8.917797857841267 -0.2996183827867898 0.001 +1.372758428686551 -0.3991511717716634 0.001 +2.246893836351149 0.4449619037338379 0.001 +-0.1150929792057599 -0.1126901937982479 0.001 +-0.1394277427024346 -0.1218459402000488 0.001 +4.093591445853646 0.5550133167258482 0.001 +0.6941285613923671 0.0369899332070396 0.001 +2.929255039563234 1.067512712569468 0.001 +1.068258053224481 1.04973286897617 0.001 +3.40770115697284 -0.06521992148197432 0.001 +11.08292621402616 8.187096954694319 0.001 +1.002092469778871 -0.1502367210425921 0.001 +0.06611039017773804 0.2500935436442662 0.001 +-0.1165549341337921 0.5617565163609208 0.001 +0.1482490366159679 0.766320658059661 0.001 +0.9889228988168675 0.6823337993927912 0.001 +11.76092381472618 -1.155387620953856 0.001 +7.457062050559963 -3.792026604339941 0.001 +1.056390986395318 0.1947790661206366 0.001 +0.168429048522065 0.6920384026144453 0.001 +-0.4231225930858267 1.674905535607479 0.001 +-0.6551397843087613 1.865265139195138 0.001 +2.769313084128294 0.1066931386565322 0.001 +0.9349885627347502 2.02140312728652 0.001 +1.905668546625684 0.03559674029748415 0.001 +-6.089698038758862 3.941237676087036 0.001 +0.3531780349844413 0.1989776451965355 0.001 +0.1820173061102339 0.4692980367244333 0.001 +1.019855297948127 -0.08207674880574686 0.001 +2.253993171610103 0.6626234053913524 0.001 +1.974428256784921 0.7118899555022118 0.001 +0.09053729110591649 0.006405047032413493 0.001 +0.8760945530899199 0.1298182015486938 0.001 +4.207046588695579 0.6624843317085335 0.001 +14.92426908504133 1.347346746671873 0.001 +3.929345708885863 -0.1559489189525861 0.001 +-8.153012895304897 3.024011731706512 0.001 +0.4991963728635853 0.05734010115582977 0.001 +-9.12478492960464 -0.4926558074373948 0.001 +0.28025961963489 -0.09956995555743091 0.001 +1.010860227768968 0.1945780759832905 0.001 +0.2400977528089661 0.846893288145914 0.001 +-1.978137901467675 0.5273939843894114 0.001 +0.3379674868726524 -0.2582971052832445 0.001 +6.61863439298377 1.781317635710195 0.001 +2.628031917752877 0.8962404804863783 0.001 +-0.27022962513736 9.164148864083025 0.001 +0.5906248138412951 -1.497126393796336 0.001 +10.18705849581743 9.15789103994352 0.001 +0.2139365165817648 0.2863955429177865 0.001 +0.1246910947775826 -0.1055577534242588 0.001 +0.5444636737471912 1.106076300207468 0.001 +2.636146524286952 1.23688595160049 0.001 +4.265093017509242 0.5829861099114271 0.001 +0.04916913332505744 0.3474662557645367 0.001 +0.03559588498816751 0.3657740266751531 0.001 +3.971832824005396 1.847597631832934 0.001 +2.927795169217654 1.956723262381578 0.001 +0.9737860590254716 0.6034644108687185 0.001 +0.2166500392334018 1.027979420230581 0.001 +3.584892377588313 0.9577165899599258 0.001 +5.51686117375233 2.319915195159523 0.001 +-0.1278878468523216 4.887133207121515 0.001 +-0.05026830398646934 -0.2666342078402589 0.001 +3.232982034754838 1.284007756901796 0.001 +-0.2601390681540984 -0.5543183328755564 0.001 +-0.09257908115572344 1.133196829709251 0.001 +-0.04684653167236903 0.1655043521157879 0.001 +3.000474141568927 0.956027077540195 0.001 +1.003205669505218 0.6437102645321031 0.001 +4.275584115697344 1.37237466534871 0.001 +1.024058329186742 0.01247424102252265 0.001 +-9.036212928336694 -2.237854671918158 0.001 +1.793111660041146 0.9875957402398782 0.001 +0.3278933375401609 1.132117390524029 0.001 +1.793899948501971 -0.7454760923735304 0.001 +6.453527784325177 1.207208256151837 0.001 +1.795359345258838 -0.2326695690140921 0.001 +2.253638371414312 4.100596898467798 0.001 +0.2572983249279255 0.07685857695405543 0.001 +-1.130494238415131 0.4954505569755551 0.001 +0.200381120021762 1.01434005533087 0.001 +3.547964085626964 0.6219504933130799 0.001 +0.7181623967867361 0.7837101787281247 0.001 +1.698804696035467 0.03350450932319996 0.001 +1.064839232593804 1.092197481623683 0.001 +0.06571559878284661 0.04819200364471196 0.001 +0.9426858884435789 0.5782040382061548 0.001 +0.8146648221204741 0.5301236224761831 0.001 +0.2191759310527053 1.098521120479661 0.001 +0.2228510239613943 1.124826730053222 0.001 +0.8696982646465512 -0.1896419767682431 0.001 +-0.1143523386627717 0.6096230511356657 0.001 +0.9975095307110657 1.178871246361989 0.001 +1.033746953988669 0.4218494676278737 0.001 +0.9923101209935896 0.4286678372291041 0.001 +2.968716302404715 0.4293550003757747 0.001 +-0.09974026816927881 1.620185402406218 0.001 +2.527877785106086 -0.0225086160855755 0.001 +5.008136770629054 6.213471542912027 0.001 +2.055433397023626 1.111620412941827 0.001 +-6.456997031407678 2.412657158001307 0.001 +1.172394494748936 0.3258904481081248 0.001 +-0.03735591190174326 0.2468849132756653 0.001 +1.375712893005855 1.198917438826835 0.001 +0.1734072351056106 0.9214245246926219 0.001 +1.049775191007416 0.2607378166313416 0.001 +0.8589177482945701 0.2063572288142843 0.001 +1.09710757846364 0.3846514368430432 0.001 +0.9352407857770346 0.4957111860614919 0.001 +1.057192862052581 0.6769436078724419 0.001 +1.885829873345017 0.5298833824745429 0.001 +4.14413677291887 1.092969893556687 0.001 +3.908549847601062 0.09893362007757327 0.001 +0.9594705842035547 -0.0421011406499438 0.001 +2.145625197588348 1.448583172758967 0.001 +-0.4748844712390455 -0.6388659579838701 0.001 +0.8062546833415831 -2.289424258394936 0.001 +0.2602592413042592 1.039378833874737 0.001 +0.6579653984556435 1.134028146529607 0.001 +2.93167947054308 -0.08964369156607412 0.001 +2.882047630015291 0.6197635304227389 0.001 +3.850470130431902 1.08183577890789 0.001 +1.753657873623132 1.082633662756458 0.001 +0.2196608408686617 0.9275971694555023 0.001 +5.245069574269357 -0.8966565965494354 0.001 +3.030923447791216 0.3534979149341146 0.001 +15.04924537957704 -3.719889094318826 0.001 +0.054811177016208 -0.0482462390532161 0.001 +-0.1572170275158886 1.085756822807309 0.001 +-0.474189258830741 -2.605785832585549 0.001 +3.264715686868781 0.7555759095862201 0.001 +0.2007691012670907 0.7642115228817347 0.001 +0.7601766662632714 1.120231294653948 0.001 +0.4701077138027801 -0.04744718731642912 0.001 +14.52277293568374 7.217605910333841 0.001 +3.034622549427062 1.413000694358868 0.001 +-0.08600614451107462 0.5650288140002944 0.001 +2.115325649407072 0.5278915140497917 0.001 +4.327646885032038 1.812434449349412 0.001 +9.924601600865516 -1.6253070158337 0.001 +-0.2796590591324857 -9.397732717202523 0.001 +3.87610624867413 0.3852628064537201 0.001 +0.2139333042770969 -0.06604105990847828 0.001 +0.9993467639076785 0.926889661781191 0.001 +0.1653954037468595 0.3451411672600344 0.001 +1.984702534460045 0.9485319565245975 0.001 +-0.1227721232280325 0.5296530419509877 0.001 +2.899415779317362 -0.3179784196427211 0.001 +-0.05951406827160535 0.3441158393921371 0.001 +0.3744255149019295 0.1019122709206852 0.001 +1.489240618338747 1.553428155127215 0.001 +2.29330424449904 -0.05722668886003852 0.001 +3.305220126482742 -0.397478932436693 0.001 +2.670003834250525 0.2551992991001391 0.001 +2.565963102462091 0.1926564885861305 0.001 +0.4496744300907274 1.468810227064611 0.001 +0.5964576150160968 0.1743332809781168 0.001 +0.08691550966036167 0.6960915394095469 0.001 +12.877276718364 -6.977250768751748 0.001 +3.477643181649933 0.3996441709185395 0.001 +0.8419242461379381 0.8132409569500544 0.001 +2.522890041701315 0.3616239665315013 0.001 +2.152731564347067 0.7346948102723135 0.001 +3.764144344586818 0.8091525896256152 0.001 +-0.02854301828474154 0.8133564855941171 0.001 +0.6186417251274984 0.05661362466569855 0.001 +0.823564751684821 0.5100208953114482 0.001 +-0.6335429247627502 0.915344056725351 0.001 +0.6680703679352704 0.275906174322263 0.001 +0.1277003062851094 0.288251038358341 0.001 +3.452917674831061 1.621585012227307 0.001 +0.06194198456290842 1.127096245305997 0.001 +0.2583725138755838 -0.0551530703351417 0.001 +0.08044881247817129 0.7502545220185061 0.001 +2.808440230471577 0.8092959065873749 0.001 +9.949903505901773 -9.399544936704054 0.001 +0.7432107519329477 0.4884097228983321 0.001 +0.5755977753062119 0.01606251118184551 0.001 +0.3301993022968205 0.07373746112462926 0.001 +4.610078301487755 1.901031389512021 0.001 +3.404617598934899 0.1982854720176314 0.001 +2.371904053000585 0.4367809126583795 0.001 +1.223441222207291 0.06891320298596029 0.001 +1.12377413780465 0.5775337921201846 0.001 +0.971271875151841 0.1408523098329733 0.001 +1.086935800045792 0.7127878220902654 0.001 +10.6236247754604 6.263541963755483 0.001 +3.626575354068403 -0.1231161344848901 0.001 +0.4141572501762228 0.2743437204858771 0.001 +2.239729439980937 1.430709005197718 0.001 +0.13766533418533 0.9458894053632321 0.001 +1.433077198156523 0.1137501363194682 0.001 +1.243532125068795 0.2431577026120025 0.001 +2.010891069985067 1.396873992603242 0.001 +3.22779772726129 2.326074699340669 0.001 +1.692929174310631 1.005413293024843 0.001 +3.452330575667949 -1.017774463039977 0.001 +0.7611827474788043 0.8109355923071695 0.001 +0.7057613772402889 -3.656444243777443 0.001 +0.7709437064080655 0.5698131965915647 0.001 +0.3464526298146673 0.4242103359849069 0.001 +3.939188027158039 4.6774785180925 0.001 +-0.06545486399203854 0.05640453064874891 0.001 +1.271042042165089 1.44061229818775 0.001 +-0.08714135362522304 -0.00792934044434688 0.001 +0.3149752188015055 0.09509942309122454 0.001 +1.879852813984337 -1.693976285949107 0.001 +2.79113707291949 -0.896315649075987 0.001 +-0.05825068890492896 -0.4964336409959536 0.001 +5.807038399109832 4.590560079144033 0.001 +0.04350949207423743 0.4415855600500242 0.001 +4.549263919220973 -1.355655877892338 0.001 +1.461037531979737 1.023776968738463 0.001 +-1.598428116197678 -3.438771938728565 0.001 +0.5016292368092051 -0.1654039861483096 0.001 +3.450111241926225 2.945775032248502 0.001 +5.844078064505243 0.3842128693652803 0.001 +0.1921891714678102 -0.008219213678446045 0.001 +1.004275214279998 -0.03562874937101045 0.001 +3.475585170816619 0.2326197811404312 0.001 +4.187034665414247 0.9279815733334337 0.001 +0.899575934585084 0.494927000199256 0.001 +1.411882242862105 1.113366219124618 0.001 +0.533055887689144 0.1398974410684945 0.001 +0.8242354005478039 1.129664020854721 0.001 +1.215526451782279 1.209240222805539 0.001 +2.824872279366036 1.067090025239715 0.001 +18.15526207119511 6.893363641215572 0.001 +0.7889732144129561 0.4452887084889424 0.001 +-3.44090652938788 8.443587978658368 0.001 +3.794379526088854 0.6079387643694469 0.001 +0.6299814438841103 -0.08118937820844278 0.001 +3.991940309209036 0.6351854935404435 0.001 +4.129837302677916 -1.130067231556588 0.001 +-0.1847270492557863 -0.0835471152995759 0.001 +0.3740277790474548 0.1970680273300387 0.001 +2.42392344406379 1.349946796571632 0.001 +2.213339482893191 0.9881918849341441 0.001 +1.088650722119291 1.097393335974716 0.001 +-2.459627747765941 4.489801598834123 0.001 +0.2447211919000277 -0.1439114847456855 0.001 +8.326621769704252 -4.790989960065061 0.001 +7.985268889866736 1.596658460589147 0.001 +1.083567581334528 0.04332888545590203 0.001 +-0.2500038030729595 0.8115832502254607 0.001 +0.2140579013712695 0.245771984258034 0.001 +2.41775912324884 0.6287213547178493 0.001 +-0.01211529784226479 0.8469410755861411 0.001 +2.408683693762275 -0.5008257614731488 0.001 +1.724042390658716 1.041570145156609 0.001 +2.854165541666817 1.371168958053651 0.001 +1.654918745751148 1.505984790878395 0.001 +1.121146825306726 0.6705822642818282 0.001 +19.18053217404799 -2.838262336230342 0.001 +1.434557223958252 -0.2602869392722829 0.001 +1.107283075668887 0.08165980830648609 0.001 +1.23631110121212 0.869691230880228 0.001 +1.18116523262608 0.9240681374240802 0.001 +3.923793780388848 1.237087158366871 0.001 +2.671129283394841 2.352851342440076 0.001 +1.567590436219799 1.096517156951268 0.001 +0.9422422058762595 0.157454086549357 0.001 +1.932167247230316 -2.102815476561919 0.001 +-0.005516387814192518 0.2662996631201363 0.001 +0.09609405780193664 0.5529446717632198 0.001 +0.9362727513388373 0.2065265308481784 0.001 +-0.08621902650538632 0.2855787399234096 0.001 +1.537685703689272 2.000276829666649 0.001 +1.109544373041126 -0.4385179726634607 0.001 +2.534612708224061 1.37543613670643 0.001 +1.029672348253417 1.103321634282507 0.001 +0.3442589432523902 0.9057996327460526 0.001 +3.910620385119255 -0.6222751895556885 0.001 +1.002288777983424 0.627894150892978 0.001 +-2.685624043502016 -1.633696085407118 0.001 +-3.615681900914202 -1.268262314236794 0.001 +0.0145027282318942 0.9290922076692882 0.001 +0.8136352384857066 0.9347964455557083 0.001 +0.8927377598239081 6.341145943549679 0.001 +2.898132002916467 0.6822044439512805 0.001 +3.298604214998165 0.2375949785459355 0.001 +1.562825756440516 0.1596665678994819 0.001 +0.1618899019301214 1.090326736426184 0.001 +1.030844853643076 1.069744789829642 0.001 +0.4834849260411078 -0.09393691677063741 0.001 +0.7798460282133748 0.7629949861382812 0.001 +4.202760075469825 -5.675209980189988 0.001 +-5.481834835147944 -0.2476076269453159 0.001 +-6.409554203729227 -0.6599216897680774 0.001 +1.096746042307537 0.8458784031394693 0.001 +13.28888887823402 -8.930793336051753 0.001 +3.007041508248768 -1.797736895366189 0.001 +0.7738476664763445 1.34196794259297 0.001 +0.954775158524102 2.482643296794249 0.001 +0.1033746327593233 0.3240951545281063 0.001 +2.649210792788083 0.3440977454091929 0.001 +3.467009082998364 1.071903970693699 0.001 +3.042333408080759 -0.705961595935331 0.001 +0.9134022431320895 0.3213490743067982 0.001 +0.8146369520078537 -0.5916989202480974 0.001 +-0.08519622561254923 -0.07331057980627537 0.001 +-0.2112485407746638 0.2913127148726897 0.001 +3.012656042670847 1.038834094816007 0.001 +0.8532467906874364 0.1597617354209436 0.001 +1.014150960880693 0.4841584525870936 0.001 +0.1433247393081716 0.7044308601480562 0.001 +0.06114455192146122 0.2882013697449132 0.001 +3.992610721647525 0.9506227037917456 0.001 +1.058546370111057 0.4821102950611001 0.001 +2.717051729213285 -0.2463037570621577 0.001 +1.557341529519548 0.9934526465146597 0.001 +-0.1911594495934968 0.2605295941314519 0.001 +2.246888189826957 -0.2418775109592845 0.001 +4.022235569950914 -0.7044222733957309 0.001 +2.557082553035855 -2.808393179793994 0.001 +0.7373528807027195 0.2759078498555894 0.001 +0.280860642563243 0.2194466079489994 0.001 +19.13730597851313 -6.169676652263472 0.001 +2.181139826952092 0.08181820000690274 0.001 +-0.1030654244499786 -0.05034411089719212 0.001 +-0.1149948246861061 -0.02992635013840528 0.001 +5.404028329423874 -1.921900414790332 0.001 +1.990927305681166 0.15377224960741 0.001 +0.1020751189666115 0.4051873712987912 0.001 +0.820986100977851 -0.3194036315436657 0.001 +0.006758978877412116 -0.02038350327133986 0.001 +2.418716517903544 2.199570852458434 0.001 +0.6244743112366559 0.07122016171760119 0.001 +0.1071370316913857 -0.03585024075888306 0.001 +0.095957210169962 0.8674620460937418 0.001 +-0.09725285497673845 1.012539904918818 0.001 +0.03534579715041598 0.244824982023032 0.001 +0.07109115195191125 0.2208046609629167 0.001 +3.035784963629277 3.419206951701624 0.001 +0.2686814127641227 0.9301069920047257 0.001 +0.8548091373781962 0.8331695548894361 0.001 +1.322535894051391 0.3699696602666636 0.001 +16.06621564514002 -1.296368567027585 0.001 +0.7059527959550395 -8.219243169462136 0.001 +2.066754940895384 0.5586245810328226 0.001 +0.2277406689983104 0.1386051314097972 0.001 +0.02489765561329952 -0.01084699805391636 0.001 +1.651579829527118 0.9740267622828884 0.001 +0.9590947919959903 0.2059118334004502 0.001 +1.68744732517677 0.5354063008125864 0.001 +1.957974853399677 1.011049650308211 0.001 +0.3855725206435291 1.096491152274979 0.001 +-0.7897131998034492 1.312474458896984 0.001 +3.646000291230319 1.193315257955487 0.001 +1.551177695225535 -0.4074427341658269 0.001 +0.5690101416994846 0.1090661280299414 0.001 +1.709979933876826 0.2504706536965787 0.001 +-9.154914516903521 6.505624753904888 0.001 +0.6183272339673314 0.1288356399163869 0.001 +18.00140965512085 -0.1275866355852844 0.001 +3.016656137266783 0.7326456427824467 0.001 +9.180153487480528 5.253988561745736 0.001 +3.001031602538147 0.5107033513293502 0.001 +0.2725137634933394 -1.476783752374953 0.001 +0.2948731949148702 0.9364648384995775 0.001 +1.021304626401749 0.899070277963978 0.001 +-0.001494516158670156 0.7419906760354614 0.001 +0.7828336965653969 0.4745191461163989 0.001 +-0.1062330019564871 1.045290350823985 0.001 +3.338594762177834 1.494044833457102 0.001 +5.432655638518479 -4.946722291973101 0.001 +0.3086968052265934 0.03063720490840614 0.001 +0.3225307285006509 -0.03832034334381094 0.001 +0.9751762550583375 0.9319284424844346 0.001 +0.04715571894033386 0.8187647752026357 0.001 +0.2071647311661239 0.8115519888085846 0.001 +6.160440698474705 0.7479647323521614 0.001 +4.367790487850894 -0.03696574809093551 0.001 +0.5651604854531671 0.03836584493285752 0.001 +-2.041877518626519 6.149174581666971 0.001 +3.946747986317458 0.3059003364083053 0.001 +3.381055697858622 0.7675160414585817 0.001 +3.74068277201803 -0.6278059709810043 0.001 +1.984583605881826 1.227146513993489 0.001 +16.28405800974317 -9.089669558627339 0.001 +-0.1576682765648911 0.3446488943923904 0.001 +0.1071686592576072 1.013543259443302 0.001 +0.01239245884047509 0.3447301758543911 0.001 +3.42871718469443 0.130980451985095 0.001 +1.954832941396714 1.510768753236409 0.001 +1.588671999191489 0.4682724981719709 0.001 +3.024245882797904 4.285388766698239 0.001 +1.044405793013742 0.28304737358514 0.001 +1.065467761445992 0.5809722327133872 0.001 +1.078722525027553 0.8676413323985384 0.001 +5.062202693186125 -1.155831759658078 0.001 +0.06521139535367326 0.3802074399934962 0.001 +4.002170283803997 -1.060349988786809 0.001 +3.904395940628845 -1.155553659573544 0.001 +0.5168425682514829 1.114071922878139 0.001 +0.1200664265585572 0.7372317448610586 0.001 +13.8584609933252 8.237758127740433 0.001 +0.234949579107874 0.9619730426624791 0.001 +1.494300014193904 0.4877417445295693 0.001 +2.903031170206073 0.4718215911712703 0.001 +10.14923094214612 4.934383628037676 0.001 +0.9033135455115758 0.6788590773026579 0.001 +1.038600788519212 1.038925250885892 0.001 +0.2581661419663975 0.4915630159061809 0.001 +1.090302264952229 0.5793191438137134 0.001 +0.1722826699619625 1.10346615776584 0.001 +0.9323252467983851 1.138201587885959 0.001 +3.421054410415565 0.962437814268633 0.001 +0.830558154256577 -0.1038174228461473 0.001 +0.8758095661602995 1.393396113862578 0.001 +3.092395843053876 -1.067101533655963 0.001 +0.3038388649891909 0.3594988554141587 0.001 +1.775507916248628 0.1100411245622194 0.001 +0.3142079885286754 -0.06208857028842608 0.001 +0.5342907703724782 -0.05458256252134365 0.001 +7.868553844020114 3.448972081506939 0.001 +2.491485523492662 0.7337311921652481 0.001 +0.6644474364957651 0.146170499089047 0.001 +1.172670486285855 0.5760718023034646 0.001 +0.06660758000074504 1.232051716303874 0.001 +4.025388329757576 0.09555978531209885 0.001 +3.914973052681578 1.016085688826426 0.001 +2.841828829837611 0.9129606228111092 0.001 +3.435889024070867 0.7649563550996683 0.001 +0.3316591768676346 -0.008685208321007169 0.001 +1.575939656683393 -0.1146750198646502 0.001 +0.2704805257645138 0.8721924005531303 0.001 +0.9845325605158667 0.08562720578628397 0.001 +0.9809004392179405 0.06362180550592211 0.001 +-0.2295012218345658 0.1191257824900529 0.001 +0.8226648441899316 0.6951500228540811 0.001 +3.684411338621459 0.5405880963557772 0.001 +0.2032955953360486 0.0404102588545449 0.001 +1.482301274486784 1.389795562815771 0.001 +0.383117989665908 -0.02979000099813501 0.001 +14.81741744967134 -3.035546090052391 0.001 +-0.2924836984159698 0.9437205358135183 0.001 +-0.0979060212254861 -0.1211989354755285 0.001 +-0.08775375395465954 -0.1653595764006857 0.001 +3.801114707117764 0.4860268387106643 0.001 +0.6722255909151852 0.2140875288213048 0.001 +1.083185275732128 0.1572174057136664 0.001 +6.639827511532495 -5.151240233896821 0.001 +2.684479576902222 0.4798367425995158 0.001 +3.671207944405687 -0.3854448983222334 0.001 +1.630036604053968 0.9030929082316623 0.001 +17.88836296532099 3.799363341785821 0.001 +0.8985921507108443 0.1691754691379447 0.001 +1.02965992697434 0.4612669349043041 0.001 +4.608786917996448 1.341256186725314 0.001 +3.115018371677602 0.656137863226029 0.001 +1.271566053454604 -0.002402238785474704 0.001 +0.9872459149074 2.778420316875347 0.001 +-0.01221589547980251 0.3619021746655803 0.001 +1.547643785895126 0.913192149879489 0.001 +1.802658334141641 -0.0003957022692694309 0.001 +4.86473959731787 0.8447216475159244 0.001 +4.197364339080576 0.542156776359489 0.001 +4.066595286058321 -0.2931093126923442 0.001 +3.350175339050861 -0.2719533863021317 0.001 +4.374051148464403 1.653734129828722 0.001 +-3.117217991600541 -9.271740347313264 0.001 +0.8552311266369838 1.324416954617967 0.001 +0.1680715414500256 0.9821644182824063 0.001 +1.89802600943551 0.3281978147534534 0.001 +0.8651086158118791 -0.09214421631135336 0.001 +1.799250131849136 1.047699127643727 0.001 +-0.04634696641014575 0.09212702699045668 0.001 +0.166157649835871 0.04906974916825203 0.001 +9.549528126031657 1.084030402097003 0.001 +13.9140869861516 9.102970939817791 0.001 +7.642841730972102 5.126997569090764 0.001 +0.3345794913059131 0.2651875276186502 0.001 +0.7803971526805219 -0.06481261927976234 0.001 +0.8754735014899712 0.7769313254902892 0.001 +-6.269220298506688 -9.139823127309947 0.001 +3.838944828179024 0.5534278118904045 0.001 +-0.1167170949691761 0.6463618666166616 0.001 +3.036977968857881 1.119253849800987 0.001 +0.9840976232048826 1.010443929199323 0.001 +0.9022988426501316 0.06722739053284486 0.001 +0.9209763753047751 0.04787569609976976 0.001 +-0.09907201121074159 0.8281869087934093 0.001 +2.798787232146514 0.9684919137180558 0.001 +0.9210639611094645 0.229841582274819 0.001 +-5.436953438995262 5.129488258998413 0.001 +2.85407516500111 1.089881506912721 0.001 +0.03277779633486513 0.8513909833618548 0.001 +1.093920847544747 0.6051430455420647 0.001 +4.286924244157871 -0.4625730579231899 0.001 +3.747982597143324 0.5043474665123616 0.001 +0.2219251910470165 -0.01063688301255173 0.001 +7.258027032325053 7.425912023306855 0.001 +2.896760318809356 1.010486380512654 0.001 +0.3883787751957883 0.01085374544572653 0.001 +1.748651954682022 -0.3054065632821345 0.001 +0.2161012252167176 0.4785815641774565 0.001 +4.691581923350848 0.3549424547292721 0.001 +0.910281460604568 0.6948719854025535 0.001 +2.038329207903069 0.3741193287243212 0.001 +-9.036957652096424 -6.135668031556984 0.001 +0.2570621229116505 0.02617266162928248 0.001 +-0.1777705533571452 1.052820758669751 0.001 +-0.2522967992777188 1.016018396424599 0.001 +1.178794738817421 -0.1069628878560721 0.001 +3.671761811862915 -0.272353677697632 0.001 +2.533491704222826 -1.129356490307396 0.001 +4.719253633305502 0.5047364788522679 0.001 +4.243342420543873 1.616216170665106 0.001 +0.3006193062636467 -0.001252675680084632 0.001 +1.778927315069765 1.434361558599243 0.001 +0.1132040592122271 0.7628620002993995 0.001 +3.782945983245873 1.159042913548046 0.001 +3.83255960179465 -2.238104905423749 0.001 +-0.6323619428179394 -1.091067656046435 0.001 +2.02896673779684 1.955717217765281 0.001 +0.4823035519929289 1.105302740814554 0.001 +3.328786744669473 -0.0523666649314122 0.001 +0.7715991263543163 4.187842976580209 0.001 +-0.02018494173536634 1.17388628308086 0.001 +17.16863824370035 0.3952857894763691 0.001 +-0.4251146932182769 -5.513261334416288 0.001 +4.571159280692981 3.436466160212907 0.001 +1.182977848152227 1.136091289110702 0.001 +11.10265002412288 -8.040458383860884 0.001 +12.22249723244122 -0.07144838924153428 0.001 +16.3842113411408 0.4434153815658027 0.001 +1.155962749019048 1.095288339329863 0.001 +-4.96431960655452 3.579010095224228 0.001 +1.223975316448179 1.023635947191556 0.001 +3.142492511988221 0.4764830048548401 0.001 +3.511735562857138 0.3458500904014129 0.001 +0.1951205708639911 0.3068039197246888 0.001 +1.51988864540239 1.071353660528516 0.001 +0.26152584976413 1.122231246830194 0.001 +0.2883972358620501 1.12092513536556 0.001 +1.028535892350487 -0.1121266507814624 0.001 +3.227652512396263 -0.9671436512104086 0.001 +0.2396045006031827 0.3559035389044484 0.001 +0.08775225562041433 0.5148150217258346 0.001 +3.247562527751878 -0.7342656141586635 0.001 +-0.1435911173341028 1.238005764027854 0.001 +-2.101873451360395 1.053627420480245 0.001 +6.961317790660676 -0.7880215876836356 0.001 +0.6969630432577198 0.1292344024176066 0.001 +0.5134219430333444 0.03378427128061304 0.001 +-0.1692300612213269 0.7889633662033344 0.001 +2.446039084339923 0.265876647649706 0.001 +2.179063487906724 -1.184770288813046 0.001 +0.2845155361358275 0.1834740604260852 0.001 +5.00174625186293 0.1470887036739981 0.001 +0.3443892466484533 0.1000482853516195 0.001 +17.25407677312046 -5.55697678926979 0.001 +0.07806819937905946 0.328849474331518 0.001 +9.958223549368551 6.79315031909081 0.001 +4.067355289251948 1.733794069596423 0.001 +0.960737867854406 0.2279968489076696 0.001 +3.900799917726919 -0.02266445484185946 0.001 +10.77883366766435 3.088762583626552 0.001 +-0.3660954656902074 3.719203897534186 0.001 +0.8837670317629155 0.2452365869771006 0.001 +-0.03380252235236425 0.1373910180932817 0.001 +1.351718794670842 -0.5742785020310328 0.001 +0.1953819770982848 0.907655319454683 0.001 +0.9238418163423825 -0.1155324106648538 0.001 +0.1091593725945467 0.03961113475904311 0.001 +1.081354333692239 0.7469670520112024 0.001 +0.2220251590278767 0.4382110866744532 0.001 +2.589456552776012 -0.3553483342248104 0.001 +1.674721878572825 1.073356323488631 0.001 +7.952231418379919 0.7182151045660619 0.001 +-0.04927578687253522 0.9010377953316817 0.001 +2.617983195117673 0.334159078941333 0.001 +11.45241789699508 -7.518549892957406 0.001 +3.900686678397335 1.064670185843338 0.001 +2.235590975539449 -0.06833368909941623 0.001 +0.6479725191340799 0.1854666153807565 0.001 +8.436337416129511 1.988412030602788 0.001 +-5.320858052768 6.128218077813572 0.001 +0.5211304624645685 -0.03581415093338639 0.001 +2.311359102568242 6.01124070687346 0.001 +3.123943537708127 1.349704718026724 0.001 +1.824604107265244 0.2514200212482619 0.001 +0.8167351251538715 -0.07308225763291686 0.001 +2.583336879547612 0.5313957859023157 0.001 +0.4596612563842583 -0.1284201284351683 0.001 +0.8447759503904697 0.5190352195639827 0.001 +6.246983753764515 -1.147599811132669 0.001 +3.939161747935819 0.04064321201233517 0.001 +0.2744962617209862 1.002565445329533 0.001 +0.05910076964328723 0.3094527949634399 0.001 +-0.129497657097224 0.4458473919321518 0.001 +-7.986854653092551 0.05606291099959403 0.001 +0.3220926536110284 0.4597868247829217 0.001 +-0.0940062709063041 0.6867360036535279 0.001 +17.37638384351324 -2.9508946652344 0.001 +-1.700562564167818 9.038108286941494 0.001 +2.380877196193804 -0.6839804109530007 0.001 +3.793068072236235 0.3362504251376951 0.001 +0.397543337923947 -0.09816357720441074 0.001 +2.427191844496146 0.9973205598712119 0.001 +1.08747219676349 0.4360684341807797 0.001 +1.568887432864985 0.3855693914112398 0.001 +-0.09680690358778678 0.8660187235920341 0.001 +2.801115543804018 0.6917637691927464 0.001 +3.564640892352776 1.02414768128466 0.001 +0.1664922186569105 -0.002570001575692345 0.001 +-3.876673981979716 -0.4600044408272073 0.001 +1.495420071376066 3.140086241113878 0.001 +0.961971526821424 -0.8992771510086057 0.001 +-0.04125698821675233 1.080484427157541 0.001 +12.06819480590104 6.94559572417237 0.001 +2.259252896288822 0.07359197537567926 0.001 +0.1700899080846635 0.1935622421304518 0.001 +1.671050482341766 -0.06972978731286794 0.001 +4.338847377791122 -0.3495488353431175 0.001 +16.28879549099322 9.172190332754315 0.001 +5.495387998510115 0.9691880401925629 0.001 +0.01552494191627177 0.1576841196025597 0.001 +7.822262768072631 9.116440559395382 0.001 +13.23195193353691 -0.8837285372913162 0.001 +4.334617902528482 0.4405493282575765 0.001 +2.096344809645871 1.175528008565467 0.001 +3.199579857099807 0.5237798045936487 0.001 +1.757788147768506 0.2788034687902232 0.001 +0.4307010326433389 0.0101583678321193 0.001 +11.02445956357636 -4.166422954571132 0.001 +-0.0903087474885421 0.1760501045908335 0.001 +2.440049795767319 3.253632644425502 0.001 +2.152941490085285 3.104955237617717 0.001 +0.5071689843385094 0.1414635512462539 0.001 +0.1974200698980464 1.231795947790048 0.001 +4.387675892798879 1.473503166993238 0.001 +0.710148621257663 -0.7098561543271943 0.001 +0.9518507542156771 -0.1264859199908421 0.001 +0.009559695112085362 0.8700029154090523 0.001 +4.755121520703134 0.1173991286807623 0.001 +5.90436419021789 -2.62206103384877 0.001 +0.1051582819055565 0.970284211789862 0.001 +0.07792086351361303 0.832428781797702 0.001 +8.420351615473887 -8.18847344844497 0.001 +2.056353972178146 0.6234367881779335 0.001 +-0.2399861581607586 1.159002910157907 0.001 +0.7557378173996958 -0.06281260668275052 0.001 +0.141499106478211 1.055516622279939 0.001 +0.1341584960323866 1.008282833199985 0.001 +3.207856657566794 -7.08130138669203 0.001 +0.6458428174051996 0.08215347540525998 0.001 +1.333611960508051 0.564020346835886 0.001 +2.798579689009994 -4.282093620753803 0.001 +3.340084439071384 -3.105679733897057 0.001 +-0.01364734922103106 0.02198693251844448 0.001 +3.32063824353186 -0.2027372275503608 0.001 +-0.1088289557076632 -0.7124118893814825 0.001 +0.1637479204208084 1.066792987721583 0.001 +0.8308138730823137 0.2796952067591503 0.001 +0.3669226881120374 1.178014065534284 0.001 +0.8337764597492419 0.6232446413600912 0.001 +4.060340701740309 0.03810235581073852 0.001 +-6.620475240054469 9.19568826168369 0.001 +10.09397309145311 -0.4707701311432746 0.001 +-2.740693928416341 0.8285910827520534 0.001 +0.3542330672618237 0.7197075068443169 0.001 +11.0437846506915 1.78105069104048 0.001 +-1.073279177987544 6.596498176124963 0.001 +1.444373539021841 0.7720224355319062 0.001 +1.849022581101379 6.901567680833841 0.001 +1.857976316973264 -0.9861628911114015 0.001 +18.93861591817074 3.494841398816175 0.001 +4.06778929176224 0.2008732308860366 0.001 +3.822972914352555 -1.861809665781567 0.001 +-9.349970692961339 -4.617476688290704 0.001 +2.777533742475987 2.064517425917784 0.001 +3.85899891298795 0.3163753119884456 0.001 +2.825703499684078 -0.03145963611130378 0.001 +4.608174461165564 -0.8917297378771445 0.001 +0.9778141022302633 -0.01729627704637183 0.001 +1.555333953883725 0.05355822287435112 0.001 +-5.141566296960525 1.955628651463879 0.001 +0.4559472594195154 -0.0689210902094254 0.001 +0.2118239836918065 0.8852884939776213 0.001 +0.06700865148520704 0.1913965340098076 0.001 +2.013175168892924 -1.89750135554019 0.001 +3.977795610555122 1.381556208729841 0.001 +0.5751670444143864 -0.03066697347809945 0.001 +0.9767396336749578 1.112558321563429 0.001 +2.049660667313317 -0.01254931529025447 0.001 +2.699251284164127 0.05899668963779558 0.001 +0.5522989061711595 -0.1016737350244588 0.001 +2.333205311191857 -0.1004000436068095 0.001 +-0.1575784817101105 0.7475182837340244 0.001 +0.5905429145187574 1.140782039760506 0.001 +0.8683421700370936 0.3509937660168633 0.001 +1.281104306859074 -0.7784317246613858 0.001 +4.481753013541491 1.860559878926214 0.001 +2.422136568696843 0.1808978705634674 0.001 +-4.347963938630089 1.731578596036539 0.001 +0.1410247242700291 0.2176582534799034 0.001 +1.036957772877162 0.9207098719700483 0.001 +2.324769375255239 0.3730124059200032 0.001 +13.51174394055782 -7.956277644322815 0.001 +2.735826027497825 -0.4570334624661151 0.001 +1.09271673061232 0.463651623816386 0.001 +2.551758716440758 0.4328425014448196 0.001 +2.346643406051356 0.983632365604824 0.001 +1.058849706860124 0.515401675211362 0.001 +0.8616573040256099 -0.05710956302885044 0.001 +2.1828169206852 7.583242278521529 0.001 +16.69398025756643 5.810766475603778 0.001 +-6.27678942529373 -4.507660703748524 0.001 +1.081514235144396 0.8527253777401028 0.001 +3.597870015283258 -0.4500707257451367 0.001 +2.964443005363693 -1.327710370061168 0.001 +-0.1794649504327049 0.5700691146739109 0.001 +1.295608637698779 0.8222447399189901 0.001 +-0.1211454440731769 0.9669290011597307 0.001 +3.421536343894545 -0.004846028627885995 0.001 +2.562348697781716 0.3708205020339976 0.001 +0.8006870417467895 0.8484021108414521 0.001 +2.854747265926271 -2.040670211598954 0.001 +0.4423215094096567 -0.1020571582318014 0.001 +-3.305481993310989 4.057363676131362 0.001 +-0.01970072572257954 0.1041778718449131 0.001 +2.486247035408477 0.09479203160861302 0.001 +5.365304167465182 1.638771460142193 0.001 +0.07234575554867193 0.9627223558246588 0.001 +15.57606914770359 6.749268433547681 0.001 +0.5858001681849424 0.08665910335364142 0.001 +2.427076515537611 1.134349762627452 0.001 +2.341452372688152 0.839906399858523 0.001 +2.758756634713203 1.270183481933101 0.001 +1.213022550510242 0.4136198393617481 0.001 +-0.2980235006025176 0.003423744953673306 0.001 +0.6182757793995839 -0.05394776853376591 0.001 +1.243381250848811 4.649667965190559 0.001 +1.593131517626557 0.8522669303312251 0.001 +3.948452115782176 1.088947029145136 0.001 +0.2927205224448999 0.08677474078644266 0.001 +3.550793665483252 0.264033147587425 0.001 +3.554802216251804 -0.01025478188224853 0.001 +0.2177943782423682 0.7551540516403076 0.001 +0.1480314219151246 0.8247103001011507 0.001 +0.1669775030376758 1.012188146370334 0.001 +1.468055585473809 2.575612944096798 0.001 +0.9778134465212324 0.04865479587426919 0.001 +-0.1129297322877565 -0.09257148527442446 0.001 +5.764424685850865 -1.375598123351543 0.001 +3.064263325839553 -0.3106089656561341 0.001 +2.42187651467489 0.863360806692373 0.001 +15.00187360404622 5.159009722373851 0.001 +-0.1078285840103073 0.7792080510189616 0.001 +1.04079542396714 0.4373963502499113 0.001 +-3.710897161636053 6.3469408152601 0.001 +3.713267455468417 0.1121798290297098 0.001 +3.744799434888268 0.1547995403346629 0.001 +1.715605280094956 0.6458916466417098 0.001 +0.2191651103069843 0.3852670935756001 0.001 +0.0206066798209902 0.1044756479516681 0.001 +2.894759325651555 -0.02494151261247749 0.001 +2.19146393096339 -6.285782495377576 0.001 +2.902996090792718 4.897940413265959 0.001 +1.650671395709871 0.2682557536267269 0.001 +-0.07499425474180507 -3.439480568444865 0.001 +-0.610957009054182 -3.688351287669835 0.001 +-0.2956979478373403 2.505822966246349 0.001 +0.08840841407610958 -0.1143775082910545 0.001 +5.250783405776549 -5.438249621378898 0.001 +2.234506184908847 0.3830887519763776 0.001 +3.092862110516536 0.705395000818776 0.001 +19.12298283608695 1.85711750739693 0.001 +2.117096925975699 0.07321397171953083 0.001 +0.4627554971460579 -0.08566164918352534 0.001 +-0.2016326392376959 0.6166353148261351 0.001 +3.821895138277323 0.9348658181823462 0.001 +2.660424608015397 1.116521335950437 0.001 +3.71423680308029 1.050589364708647 0.001 +1.112836145674154 -0.01749337449527456 0.001 +0.7955912487827355 0.2660414125509746 0.001 +5.105025278163337 -3.761704352185832 0.001 +1.627709967541413 -3.656732593125962 0.001 +-0.2481285888668879 8.067539248275038 0.001 +0.1600121125239042 0.292063254862258 0.001 +2.996296373825137 5.965938213328678 0.001 +1.386785021823992 -0.15185934928068 0.001 +1.895605254849006 1.371306393257354 0.001 +7.53963428184637 -3.247991864873812 0.001 +0.005115000560094602 0.2381760781401191 0.001 +2.943029556867877 0.1932074683293255 0.001 +0.902253926158221 -0.1467080170567915 0.001 +3.48961569635652 0.9943304451029322 0.001 +-2.925731968755168 5.513801878263206 0.001 +2.628847777897169 1.751092824553855 0.001 +1.765521403399583 -0.4384764502277422 0.001 +0.2155961365364484 0.1479303282704672 0.001 +19.11028754325077 9.134039548482312 0.001 +1.649666238633853 1.130475279401027 0.001 +0.9689108769593435 -0.0888290204717169 0.001 +19.2137172728735 5.100725471312911 0.001 +4.016259882912398 1.068023094227333 0.001 +4.109942893887576 -9.091686376247088 0.001 +0.6569847352024841 -0.03835830874077747 0.001 +3.566771711867397 0.9256557906310371 0.001 +2.805839867527907 -0.0792043196175391 0.001 +2.74091400107743 1.013854423368251 0.001 +4.234210525297181 0.1479224417435479 0.001 +4.243406368977258 0.05355349809474558 0.001 +1.054041163998051 0.1239250944732199 0.001 +1.073626091088107 0.1109312270827202 0.001 +0.4285907640057016 -0.07824739243534537 0.001 +3.401852699057313 -0.7115922210299506 0.001 +6.512261072055594 0.4879728235505619 0.001 +3.453367676749294 -0.4285468297424482 0.001 +1.065510364835108 0.4288231327613463 0.001 +0.06851231422683672 0.4799530476962539 0.001 +1.065830383135519 0.911515314241815 0.001 +0.9472164792246056 0.6763502782345248 0.001 +0.7087798517773924 1.217330843942899 0.001 +2.95308366530331 1.147989297378675 0.001 +0.5027736012298522 0.009590032519336151 0.001 +1.125681627025779 0.4146653712687051 0.001 +2.203538339995273 0.301560510270112 0.001 +0.1440876293861239 0.7982942799042685 0.001 +2.76663271802403 -0.0033943490851601 0.001 +2.536619399767722 0.9670410754058516 0.001 +1.231769257940612 0.6878791627284315 0.001 +2.070233219977465 0.7708747541483696 0.001 +2.287309991636779 0.1791670905177943 0.001 +0.148161987140446 0.7317557924614415 0.001 +2.419126558422897 0.3975037920490588 0.001 +0.9677951959119456 0.5041538348790232 0.001 +0.7658118592838056 0.1232654586525004 0.001 +-9.108785678644217 9.113084677771905 0.001 +-0.1322099041075316 0.5867494596745747 0.001 +0.3201000067764773 0.4288722560407595 0.001 +0.783460586142094 0.186558218731377 0.001 +0.3929887282792977 0.02372634803364715 0.001 +-0.01434080636041115 0.08475369977853804 0.001 +-0.01632371512931388 0.2237463981316973 0.001 +5.925618992781781 2.100971225489827 0.001 +7.999032062926092 2.481330301564245 0.001 +0.250069914397675 0.1647068059463729 0.001 +2.358731238935015 1.231339201161859 0.001 +-0.2134271877602616 0.9644418037095595 0.001 +2.596888595960078 0.6529823056816414 0.001 +2.166557638082802 -0.7835544748457716 0.001 +-0.09149087506771368 0.7015246578216481 0.001 +18.24855666562879 -5.695188838569944 0.001 +4.108092045093002 1.260694640395812 0.001 +3.671028931369815 0.2668754606636658 0.001 +3.740920788831473 1.251334137798989 0.001 +4.440843453972343 -3.646846461651705 0.001 +2.858783815660614 0.4206965589547469 0.001 +3.003934543239433 0.6624240704456859 0.001 +2.691837711056669 0.1344790174866951 0.001 +3.577713044363074 -0.607017831684124 0.001 +0.7924177464852251 -0.08018690314056373 0.001 +-5.455663520722304 -5.144695285114577 0.001 +3.196577435158994 1.060344906382867 0.001 +2.268836012813753 0.5245187732697388 0.001 +0.9492929635727755 0.3868374238690861 0.001 +0.8759465858847444 0.5726580636049206 0.001 +1.531434248240484 -5.778318667503312 0.001 +0.6712481837532068 0.001749595339110468 0.001 +0.4183758848866811 1.139583785873976 0.001 +0.1035170297050517 0.2301971976655869 0.001 +8.543630893284675 -6.570786305821056 0.001 +0.9474939707938632 0.4201306642034595 0.001 +-0.1573946993048815 1.150960268572866 0.001 +1.199898284610405 0.5337353367939024 0.001 +0.7311165254012766 0.08787117152551632 0.001 +0.763217597757452 0.1475649760649584 0.001 +1.733719205003426 0.9744016323178115 0.001 +0.2069914892586541 -1.837757785273856 0.001 +5.058063500514232 -1.490894995276705 0.001 +3.541159799206206 1.492011698125944 0.001 +4.392809588597435 -6.863240468121658 0.001 +1.016405497558397 1.316250143011556 0.001 +1.020244554599527 0.04793610126899896 0.001 +-0.1418764069967054 -0.008210329133922771 0.001 +6.483861939356743 5.856134701156571 0.001 +-0.298317976870806 0.7116979183428641 0.001 +3.299800746962942 1.935271837683192 0.001 +-0.07029295583098386 1.026978938062868 0.001 +2.765448572956374 1.174928396447209 0.001 +0.009305120434599147 1.092584224611058 0.001 +0.2388610065081957 0.5390660160376011 0.001 +0.1097449788421023 -0.1014043936852507 0.001 +2.613724760705359 0.759994434994861 0.001 +0.931580182440389 0.3054076583138456 0.001 +0.07118401611401493 0.8043907443893256 0.001 +3.561918401000357 0.1243661575881322 0.001 +0.08256583315099827 0.913176118365631 0.001 +0.2962455369731302 0.326005817445629 0.001 +1.919015353428994 0.6934703057829986 0.001 +3.447424001746128 5.277285171461886 0.001 +3.020447356317436 0.8793293562713154 0.001 +2.237858353189402 0.5758758548607613 0.001 +3.688047163331531 0.3584472918918232 0.001 +2.497835567098125 -0.5791740244473437 0.001 +2.505695796683239 0.8139716143976169 0.001 +0.1113209136456779 0.9294317292449851 0.001 +0.2309935560086095 0.1899307126513409 0.001 +1.040158601566712 0.6345447388244988 0.001 +1.612704598185172 -0.03996172427864306 0.001 +1.110958078890459 0.3477281184152539 0.001 +1.136118545088569 0.985191549573617 0.001 +3.563596433713088 0.762397242845507 0.001 +4.008469655828236 0.4679028211266911 0.001 +4.094726382950271 0.4646798005660625 0.001 +1.124957348381067 0.6419499447070869 0.001 +4.593427006595894 -0.06460244499288892 0.001 +0.3099535286411888 0.2544415831337488 0.001 +-0.1110221466671635 0.911020741272165 0.001 +1.687733562785789 0.1583187458784479 0.001 +2.070108187162858 0.8204522476184928 0.001 +2.87100370355691 0.2332210062070273 0.001 +2.308533966566147 0.2431072240128378 0.001 +0.3962867396874075 0.1203172302225157 0.001 +0.5369958993427659 0.02478345782569445 0.001 +1.253517134284602 -0.37671258725942 0.001 +0.2667439264356894 0.05654848838394949 0.001 +-1.060606170564158 0.9300887287124975 0.001 +-0.1785260919166053 0.1386498777905497 0.001 +-3.83279742483924 9.210724046554937 0.001 +3.314200424781912 0.8209907635752423 0.001 +1.2938110675533 1.107870087432097 0.001 +1.09359954077354 0.9827587803066299 0.001 +3.564319435882368 0.464852618348682 0.001 +5.274384587898627 -0.5618727416623797 0.001 +-1.901204201737277 -4.367490853609495 0.001 +0.4566292143528405 1.113285009182877 0.001 +-8.151723562454267 -6.632348087769511 0.001 +1.365720530263064 2.944878929988904 0.001 +3.04539777881106 -0.139897376064708 0.001 +3.682301918794727 0.7215726189956305 0.001 +0.7428429983637247 0.1349812537142286 0.001 +-0.1283271321727237 1.063754493391566 0.001 +3.839435611015821 -0.03416196576420829 0.001 +3.864481141330955 1.001595597693583 0.001 +0.1207650965717851 0.2636008491888301 0.001 +0.7999202720589089 0.6304573045854034 0.001 +11.48994832118177 -9.067524479607316 0.001 +1.762000956375428 -0.05426101232477989 0.001 +10.07364173583876 -6.753270591760121 0.001 +2.918214310055839 -0.5098721728028119 0.001 +1.122909855427727 1.157962371402686 0.001 +3.917729657528454 1.139241528989214 0.001 +1.845721258794164 -0.1172150120098403 0.001 +0.2606727833901909 0.8041021141615043 0.001 +-0.2969241496079206 1.10685839547577 0.001 +3.228657493698506 -0.1845624041944423 0.001 +0.8950902573519636 -0.09755124662671351 0.001 +0.03458602924486249 0.3071488244333047 0.001 +1.135991538979319 0.8974492682268194 0.001 +1.015824110520666 0.9649390899336939 0.001 +-5.078576655911538 -3.340410796627966 0.001 +3.104821899408622 0.83646431839193 0.001 +2.005464815299138 -0.2254700406590098 0.001 +0.124342677682623 1.064133210747493 0.001 +0.006920191942911961 0.1246574061926201 0.001 +0.352376406396876 0.001146931747833051 0.001 +9.267977387890816 -4.700803747395021 0.001 +0.8871817180958227 -0.02351182057316275 0.001 +14.60992375039109 -5.487622652545477 0.001 +5.266131604503533 1.979790272920746 0.001 +1.995161164090093 0.657989291223954 0.001 +0.7843786284923361 -0.4126013170927025 0.001 +0.9812749668317358 0.1738190836696302 0.001 +17.17781858669362 -8.306870297674148 0.001 +0.8159002181326026 0.7232117284560333 0.001 +2.399034802360982 1.065736040665911 0.001 +5.099989606007928 1.229590960753476 0.001 +3.204413329656884 0.8685170545042553 0.001 +1.833393149173682 1.537568950369231 0.001 +1.871286211914571 0.266236626373978 0.001 +3.65956161035558 0.924686837644067 0.001 +3.091881099493435 0.2000639883593822 0.001 +0.9076132984286798 0.5312952754676094 0.001 +-1.471039596781447 5.168873316396357 0.001 +3.173809657032666 0.6347271403584909 0.001 +3.794576603577561 0.1355804950739097 0.001 +2.743301977729406 0.7504838981079031 0.001 +2.498585829451442 0.5921965980255379 0.001 +0.5299453143248151 0.0919271749049172 0.001 +1.569256135706957 1.155274000866106 0.001 +2.572763992265553 0.03634868733495795 0.001 +4.460811151213805 6.148367494745038 0.001 +-0.1961306315608771 0.4706900148251307 0.001 +1.044669304502476 0.1081173597931055 0.001 +3.303593044814755 0.5094347099826024 0.001 +0.1864068903940235 0.3668713178212563 0.001 +2.446958097791203 -0.05904681325514046 0.001 +-4.888729567242184 -7.546791279840086 0.001 +0.03379031682298694 0.06683694053516044 0.001 +1.043344203612371 -0.0190818019408492 0.001 +1.01031984111285 0.1690176302381581 0.001 +-3.615087627887798 -7.672180757240739 0.001 +0.6679520766284246 1.766157486136674 0.001 +2.722479366496798 1.399976523701456 0.001 +0.02974388937151238 0.1398334722875747 0.001 +4.03634378622997 0.810582124561384 0.001 +12.44229162533721 4.092060595967332 0.001 +-0.7458151095821637 1.13095223356145 0.001 +2.856294285351176 0.6607524572913557 0.001 +3.587398333164792 1.271567572475278 0.001 +5.982404912423897 3.747262249715965 0.001 +-9.06888635142991 3.990705555487627 0.001 +4.443131468096185 0.654425886587213 0.001 +1.363681993302156 1.006397657628979 0.001 +2.296992474346793 -1.38706316639304 0.001 +0.08343986109628079 1.029812308535988 0.001 +1.08521331290898 0.5477767259067753 0.001 +-0.6312907638885448 2.339887421815797 0.001 +0.2988008023414359 0.7752906858378628 0.001 +2.649808430630221 0.5973969920722353 0.001 +0.9144062284791684 -0.06942162970787634 0.001 +3.431936922885869 0.7099875131510908 0.001 +3.644790487914627 0.31690053939005 0.001 +0.3538526970010397 0.287040708065257 0.001 +2.614661892478412 -0.2948512663644779 0.001 +5.005846875942257 1.046914628297569 0.001 +1.486148186266435 0.3820889172579287 0.001 +1.973136018010246 -8.864887946343793e-05 0.001 +3.627898934508412 1.725382213703321 0.001 +2.774959860141843 -0.362260248016908 0.001 +0.1992606759439647 0.414592681219196 0.001 +0.127531290693785 0.05447533752544063 0.001 +3.963738670497062 0.9790476601515032 0.001 +1.425644365391517 0.1939498497423698 0.001 +0.2383203944673397 0.4419056723727797 0.001 +1.689346350560156 0.08991949105236462 0.001 +2.496662253602498 0.8812004158395779 0.001 +2.73052138684303 0.3431957030969256 0.001 +3.782000348761623 -0.1677416348423327 0.001 +1.512520522370264 1.208025380122511 0.001 +4.657866053221469 2.685452076470548 0.001 +0.8126049554333825 8.360504487634797 0.001 +1.17143468874507 2.181464124116285 0.001 +0.5506817759702156 0.06023050780614665 0.001 +4.901579733635208 -2.044713952814343 0.001 +4.765209677042249 -8.282786060796628 0.001 +0.2280224226818927 0.03690838359610953 0.001 +-2.222683164579553 -5.208883890577201 0.001 +4.493497514247815 0.4588535263927234 0.001 +-1.212204553694986 1.776200059923088 0.001 +4.103556579295818 3.161718312005302 0.001 +19.04665287519733 -8.053482431898221 0.001 +0.3557914921146401 -0.04761684264309856 0.001 +1.819662103484878 0.1298927082888618 0.001 +0.05047233770136533 0.1619276321114126 0.001 +4.363296828174851 2.528868606076732 0.001 +8.834296594380106 0.6954183983314514 0.001 +2.618960262358358 -0.06324420865366807 0.001 +0.7924286311410558 0.1548541925267801 0.001 +0.2596335155686315 0.4189080366064669 0.001 +-0.2159055895714689 0.05903885497439344 0.001 +3.497057838738921 1.121888259388215 0.001 +7.120610175151691 3.113319138191311 0.001 +19.02736262275135 -9.03500613205394 0.001 +2.905998336663986 9.309335984949948 0.001 +1.087743248562371 0.6791316433815177 0.001 +0.1631839105933537 0.1205192880728125 0.001 +2.857972499056887 0.8503949745758869 0.001 +7.037012105498256 0.7997988067324202 0.001 +0.9415408181861979 0.2412316695849159 0.001 +18.54850975611566 9.222416502069816 0.001 +4.022889696433434 -0.1319606469268758 0.001 +1.416073730007211 1.879693537617102 0.001 +0.6283829629623143 1.142427360012769 0.001 +1.115339116989319 0.5397426694159991 0.001 +1.093705441844178 0.2703063647607292 0.001 +0.007198449329178688 1.145437428889085 0.001 +2.867270169301488 0.7381142873076647 0.001 +3.31752268602695 -4.411727894958705 0.001 +0.3092675508854561 0.1952841029676818 0.001 +-7.166641504250134 4.955733878023137 0.001 +-0.4491665116044467 0.7434393510864304 0.001 +-0.006438505741147811 0.1506304620215957 0.001 +-0.2901477806396027 0.6101752841604728 0.001 +0.5556088150858602 1.136161601411065 0.001 +-8.830471761065832 -9.313462452768622 0.001 +6.210074908775095 1.809425055788152 0.001 +1.11186406855968 0.7517872351239878 0.001 +-0.3996914313404982 1.421031217589333 0.001 +0.7657037131454636 0.04375583387062054 0.001 +0.06268210057452848 1.00636187140467 0.001 +2.228573492181411 0.8687932252708471 0.001 +13.0322503245323 -0.2882505372135395 0.001 +4.786647983952559 -0.5976063495183199 0.001 +3.030753634406693 0.9279281690124381 0.001 +1.510043185593541 -0.07687037554430579 0.001 +-8.280988251945688 9.12185094177792 0.001 +-9.098203893851036 8.285228311319099 0.001 +0.09629182061035335 0.9528825990533534 0.001 +2.147171509898112 0.5914655454653093 0.001 +-0.02046189445531673 1.114696522926206 0.001 +1.080977311933399 -0.09217198810313264 0.001 +1.033388069280215 0.3114799801779435 0.001 +0.8417816730783095 -1.271546743974047 0.001 +7.019604114993791 -6.720542692882836 0.001 +0.2072239334860926 0.3246842801432488 0.001 +-4.24521376540434 7.98923921138667 0.001 +-0.07407198191970943 0.1478112772840954 0.001 +1.059056683451148 0.981228083620585 0.001 +0.2992368464743578 0.3896316758086741 0.001 +0.8634924846849262 0.294768887163715 0.001 +0.1318428481747092 2.340578453010926 0.001 +19.23583719728535 4.465190715870441 0.001 +0.2208676588790234 0.2070137025853126 0.001 +1.763519884693891 0.9044483639146601 0.001 +0.4158900184984856 -0.1168502932882517 0.001 +2.099163736357074 -0.2846557015951119 0.001 +1.621147795048461 1.186999925298216 0.001 +0.8667258842174134 0.4792914977163515 0.001 +0.3776590307133334 0.2186435662403528 0.001 +-0.06437084868217362 0.2692820146379566 0.001 +5.118844460140902 1.589187661079618 0.001 +2.919509272313613 0.9424853956343588 0.001 +1.757693732460274 0.1563808912788247 0.001 +0.2357310627025397 0.0675427307666461 0.001 +0.02919593049432845 -0.2178752133974168 0.001 +0.09667370353610273 0.1029402911618554 0.001 +3.516453373300016 0.920522240476404 0.001 +0.3045905910792611 -0.1474705055439164 0.001 +1.078573712060819 0.6235309244975512 0.001 +-3.556893948036436 4.809153181534953 0.001 +14.40431479688636 -1.40246839092385 0.001 +2.203858052678682 -0.3359486251115066 0.001 +3.079318175243304 7.474922989277764 0.001 +-6.210903846501404 8.304118340597039 0.001 +0.4322951256838962 9.26055997328319 0.001 +4.130222345010782 0.4284224102606167 0.001 +0.7752686728632985 0.2211593994110467 0.001 +0.1094861238054989 0.7984832780675125 0.001 +2.479309333315364 -0.1207534044193768 0.001 +-0.06431219026370602 0.0399224114409441 0.001 +0.3991677639262476 0.155715577150196 0.001 +2.129495731191326 0.6580702399883979 0.001 +-0.2076902858409785 -6.51104144332006 0.001 +1.082447659292619 0.6430917872980498 0.001 +4.788601462471934 -1.441684232166489 0.001 +1.70698811095161 1.14638104741394 0.001 +0.4657462880685913 -0.02532660456810954 0.001 +1.475837316969075 1.283882725665322 0.001 +-0.005793579140353226 0.8910853316851963 0.001 +3.632480151250005 0.4082784093205417 0.001 +-6.308492018375784 1.392947989905325 0.001 +0.1232742407684176 1.116376462474107 0.001 +-0.06264608511238766 0.7145226597816916 0.001 +0.863454749571359 0.6738868078375569 0.001 +2.561990572037346 1.126754468211726 0.001 +1.739346249695608 0.7478971158967359 0.001 +1.361615535451754 1.327119168879063 0.001 +0.05233600459824576 0.8735480492495583 0.001 +2.487541850800401 1.166184204065217 0.001 +0.9438447175989211 -0.09035956383209461 0.001 +1.53433267766677 -0.1808784045537735 0.001 +0.9114589034683582 0.2539672504872023 0.001 +4.018799250990784 0.6867229661996139 0.001 +0.2267829466176017 0.2480377201096004 0.001 +0.6802931880685628 0.09884796805883134 0.001 +2.19435630839531 0.3400111547024374 0.001 +3.055933182524253 1.259519248420026 0.001 +-0.09747221686172786 0.7475893226760203 0.001 +0.2060666999480562 -0.1365170493082302 0.001 +3.173032222004952 -0.06224160849894073 0.001 +1.352477032159389 0.8043849642906116 0.001 +1.090449491211806 0.03162053109384875 0.001 +0.1510737090619213 0.9677217426795159 0.001 +0.2413017517287364 0.2736240555045394 0.001 +1.03525984236396 0.5043672934300246 0.001 +3.295405439251821 0.1819945947730566 0.001 +3.673071259906119 0.6006250256940242 0.001 +0.4146342884803187 0.03645253303387787 0.001 +3.564632682340046 1.147481893459231 0.001 +0.1321940447998132 0.4718409730429193 0.001 +-0.3083618859567352 0.4422586633048032 0.001 +0.8973230100865422 0.7757181507889706 0.001 +16.16280639010868 1.388702482768717 0.001 +4.017729057666298 0.4014054353768044 0.001 +-0.2478647726953185 -1.076195256265904 0.001 +0.006400785718219905 0.7617837167831385 0.001 +-0.020416038812349 -0.05362654426430444 0.001 +-0.09265890261337158 0.429671583280815 0.001 +0.06682588760703922 0.00236361188929524 0.001 +-7.168959209124123 3.982466777124505 0.001 +0.6579680105882437 -0.009067875199920833 0.001 +3.09690345740373 0.5837624637931004 0.001 +0.8309557103362577 0.1309279139065851 0.001 +0.1082990271395099 0.3550093547534354 0.001 +0.9466030021057139 0.537191622348801 0.001 +8.759114879426681 -1.311131186250384 0.001 +-5.683064893310597 2.898374308209313 0.001 +1.365450257058272 0.452353855860137 0.001 +2.703993082926906 3.701622080289454 0.001 +2.009312918370027 0.4513412890730542 0.001 +-0.05786287481339858 0.1293034197685201 0.001 +2.002088985776495 0.7825560651325025 0.001 +11.2820111057783 4.446118113125941 0.001 +2.10654050505546 0.2884877601542359 0.001 +0.9924233651109132 0.5083702397161859 0.001 +2.527651610225397 0.5067574103976397 0.001 +0.541450472025482 0.121366286540707 0.001 +0.593099613673202 -0.09319402698061087 0.001 +3.999969933735192 -0.1939625970681188 0.001 +-0.1042160616086445 2.857521705886263 0.001 +1.485815163039655 -1.764504961358735 0.001 +0.2882658559312191 0.753271888711904 0.001 +0.3478631959926435 1.157592215505442 0.001 +0.02613807383997682 0.02200396154189104 0.001 +0.3112210990917049 1.36593105967697 0.001 +-0.1818230545776148 0.6697485617953932 0.001 +3.438755143751111 1.392490105143945 0.001 +0.8672592622836574 -0.00504148399016011 0.001 +-0.04099610000797743 -0.03991194268137892 0.001 +0.9000267628755484 0.0262337831868903 0.001 +0.4783679905850332 0.1348574949887317 0.001 +0.7577676556405951 0.6277464768804752 0.001 +1.837564964284542 0.07489642530993301 0.001 +1.65145112627377 0.02363614070894268 0.001 +0.3271278546694113 0.6787992966289451 0.001 +0.4428598174685703 -2.540709963393821 0.001 +0.6738131729456175 0.05085773912519102 0.001 +2.983305443293909 -0.3573199379185554 0.001 +2.788446561753087 0.2656192572410231 0.001 +1.744301541569564 0.04409070882485554 0.001 +5.190804642400563 3.64866610609797 0.001 +1.073759576622783 0.2178590322439956 0.001 +0.7562408130704441 0.4672639797482105 0.001 +0.00354327825289847 0.1904354146180599 0.001 +1.547468660891632 3.9627222889669 0.001 +4.217187901782403 3.972832004748659 0.001 +0.3774637859994802 0.2670093081768528 0.001 +-1.353854705879634 2.865948108538231 0.001 +0.9678011674320508 -0.3252018194243013 0.001 +1.254379322946709 1.675312975474554 0.001 +5.331247563730845 3.052499899337797 0.001 +1.085835890478302 -0.03596746972783302 0.001 +0.1312981333528921 0.6662330806454824 0.001 +0.3100728014344061 0.056911714707371 0.001 +0.1903521169724363 0.4914530602400396 0.001 +0.3347079439421962 0.1292332417333428 0.001 +0.250629008171474 1.063647505581371 0.001 +-8.131807111547751 -9.487649477251578 0.001 +6.913228079528351 2.069475671876246 0.001 +0.272154451401509 0.7860233253830716 0.001 +4.949001631728081 1.37829703095555 0.001 +4.248176971360088 -0.0487122908007098 0.001 +1.162560999600437 -0.8763012821725594 0.001 +0.5911046370121127 1.196069429462685 0.001 +0.9300814514053899 0.5215982749715258 0.001 +2.067420671460214 2.267479197984143 0.001 +1.032262271817635 0.9908839558125424 0.001 +1.158969970862152 0.1621548360186033 0.001 +3.38570849352925 -1.230269952041976 0.001 +0.230440586229909 0.5060075252342343 0.001 +8.464920813794844 2.967879814092882 0.001 +0.5072254275380809 -0.7399827557063686 0.001 +0.4274475346013673 -0.919093384757107 0.001 +3.803069622551758 -0.3771782734551803 0.001 +1.000072996549959 0.9103007390830405 0.001 +3.849330409694679 -0.2096491928331214 0.001 +-5.613299759493463 -8.478674972861716 0.001 +0.1650520737071381 1.124414290622362 0.001 +0.6948322504578097 0.2774929417842114 0.001 +0.8163519116633579 0.4795566756990294 0.001 +0.1848087265093037 0.4347999123468828 0.001 +16.34277917117989 2.564867959524698 0.001 +0.378758543180033 0.06737342376518152 0.001 +4.239419616463829 1.233056530728716 0.001 +4.282368626882652 1.166400806244183 0.001 +17.10059233048319 8.664364987310801 0.001 +16.34401874176172 8.294750992430112 0.001 +0.07979526182556362 0.5541946502552215 0.001 +0.1130967744699387 0.07905748944202665 0.001 +2.945937041682267 0.8802043936243648 0.001 +-1.496438688650889 -0.691136808926298 0.001 +0.4953091606211569 0.2245688019346599 0.001 +2.02331504316779 0.9532163067886713 0.001 +4.185765934321634 1.773156111843342 0.001 +2.754455461102344 0.619169944628334 0.001 +0.6964325621597985 -0.04925553005694659 0.001 +3.076507176799148 1.140871001656005 0.001 +-9.156415314597634 -8.453362343759869 0.001 +2.029743800458998 0.1355592070943537 0.001 +-0.2187620198319163 1.237315730274852 0.001 +0.7508931438922654 2.004475838980466 0.001 +3.493253836286591 -0.03835260114207405 0.001 +1.694155765076869 0.8268087697473488 0.001 +0.08178855500781633 0.1360091916714072 0.001 +3.154594972123371 0.3687827256659342 0.001 +1.745808863959939 -8.093742572639574 0.001 +0.09747486460592066 0.01971127370260271 0.001 +1.867156924790794 -0.2737934205132729 0.001 +4.320848470176943 0.8724354035845852 0.001 +-0.1932341356695847 0.8748026941331771 0.001 +0.0802926403277243 0.08320483520485085 0.001 +1.160199023222881 0.6893408482849893 0.001 +-0.06549765010133327 1.071458000990179 0.001 +-0.1301525861081926 0.9970798939065411 0.001 +0.7073517229286186 5.504791063839988 0.001 +-0.06742104358536351 0.1063329397601299 0.001 +0.1293681779576963 0.9053816989335207 0.001 +0.5036266033557002 0.09832658644504069 0.001 +2.813780316750651 1.220938403711161 0.001 +0.2528105992815072 -0.04001837761581865 0.001 +1.98868270456605 1.702399455471822 0.001 +0.7409457476493492 -0.0425266361354046 0.001 +3.895221986164052 2.837816738842027 0.001 +0.7741521226596736 -0.1371946387584626 0.001 +0.4021541933181625 -0.002429657127525876 0.001 +0.7831035572769106 1.130375900041279 0.001 +2.178216913868863 1.158539234274557 0.001 +1.007301607707842 1.123677793469041 0.001 +2.698890900323214 1.06436796471 0.001 +3.998688702435194 0.8707153514830295 0.001 +-7.171664068826553 8.059269952882783 0.001 +2.539942133671289 -0.100892476751815 0.001 +-0.06011387731507568 0.2281148823818701 0.001 +0.09146350479109078 0.06181523620380244 0.001 +0.773541707273677 0.402664367917674 0.001 +0.05584211717201461 0.8379623110930249 0.001 +0.9133772732377361 0.642425809876351 0.001 +2.301478353337144 -0.2293429323169336 0.001 +17.44713714417787 -1.730925861586963 0.001 +1.636966966574072 0.7534114395798436 0.001 +0.6872184947725788 0.07726236898434803 0.001 +0.0331707516032632 1.122612679306801 0.001 +2.086842473837258 0.4760097057396806 0.001 +1.758561699590273 1.235199470615444 0.001 +0.2214204724149542 0.3113470629403634 0.001 +4.379331023520646 -0.1955687500216877 0.001 +0.7210607363932201 -0.09446457158720806 0.001 +3.647972723564425 -0.06380145347006802 0.001 +0.7161464666158696 1.136681421485523 0.001 +0.1406436979641721 0.1948533024295173 0.001 +1.531398057210525 2.270362838693368 0.001 +1.332592608216592 2.230995046934853 0.001 +1.643745457864599 2.444652976667685 0.001 +1.94495036064394 2.464516800396537 0.001 +0.09847604483891155 0.4876173524320854 0.001 +2.720877194568522 -0.1141203699952114 0.001 +12.00689219953144 -4.964205829344721 0.001 +0.2208778267554869 0.09369249743268693 0.001 +12.99771703432332 8.185437749204585 0.001 +6.383796037545899 -8.423155190448654 0.001 +2.035619870115335 0.9983933198259665 0.001 +0.1546879627892197 0.8105238695289724 0.001 +3.628767463039867 0.470913511357815 0.001 +4.127003817123546 1.525657835013937 0.001 +3.440710535432361 1.258039575742515 0.001 +-2.75114766943835 -2.445857121340366 0.001 +1.136031087925735 0.9416800823977047 0.001 +5.351780368717081 2.568944738321207 0.001 +2.819517183829741 -0.1584442977258507 0.001 +1.095001735179318 1.070280120276516 0.001 +4.183371548312144 -0.655203042345352 0.001 +3.437170449589134 0.3142206347350978 0.001 +3.435079723457033 0.5968587170824255 0.001 +3.401277092810312 0.5395372052990151 0.001 +0.8073584318332838 0.0008197009551854266 0.001 +10.08660376725017 7.464610539721066 0.001 +-8.90990512728205 -4.929023636187241 0.001 +-2.500993793397599 -3.231247182135072 0.001 +0.5974256630844996 -0.01674296711872021 0.001 +1.733959213801605 0.0972737453400912 0.001 +0.1664181900946662 0.1612373469466315 0.001 +-0.03335317500430807 0.8740252836473545 0.001 +1.15167444383397 0.9217574513532645 0.001 +3.912225433181537 0.5528348033352483 0.001 +4.818322516483992 -3.493671817072589 0.001 +2.272134031369437 -0.5371723855395569 0.001 +-0.1266035978418453 0.7578852507654212 0.001 +0.03537735765463286 0.9219460879783935 0.001 +0.8788797688315451 -0.102788270057457 0.001 +0.8764679185395756 -0.1208210219004228 0.001 +0.8455036311896834 -0.1442746959785732 0.001 +0.8344375353530559 0.4239716765580251 0.001 +3.49788718760377 1.313904485685764 0.001 +0.7337601950094814 0.4018818041269823 0.001 +0.4478464913198399 3.619171699764727 0.001 +0.4551068556480757 1.069609338332466 0.001 +3.932500973144009 -0.3519408491210997 0.001 +0.2369338905151844 0.7720486372134798 0.001 +-0.06351667230662422 -0.05386421474842999 0.001 +5.297563202728795 0.6651587213512239 0.001 +2.182233789144249 0.2062714334191303 0.001 +0.06266515234754567 0.5092714398473459 0.001 +0.6384666237036491 0.02933078857045219 0.001 +1.01467089175281 0.6204408513693209 0.001 +-0.03125125555777705 0.2020349614764737 0.001 +2.292146071443362 0.30772650794949 0.001 +0.4497307099708644 0.1978064871726282 0.001 +-3.24389123190611 -5.354292564289935 0.001 +12.284663244067 -6.068814547317556 0.001 +1.801638533144933 0.8346338742038761 0.001 +0.798516241447095 -0.05586752150383924 0.001 +0.6981490730377602 0.7391247020029716 0.001 +1.485256170453597 0.8738898826473374 0.001 +-0.8760440800793861 4.370128815532779 0.001 +1.506968180594729 -0.03007942756769861 0.001 +0.8702545828981054 0.5106039924934013 0.001 +1.104210031861109 0.2964795457185145 0.001 +2.85175323989615 -0.1110246999900076 0.001 +-0.07742607451552019 1.046338095073763 0.001 +0.3667889622437166 -0.03100427016696933 0.001 +18.41027568331003 1.387232031743509 0.001 +3.783291444309864 1.501690367519727 0.001 +0.9903783032503085 0.6182775101317073 0.001 +2.58975376503717 0.2711319462653581 0.001 +0.07418793788001921 0.8716832381808048 0.001 +1.680921829957405 0.7040897224660421 0.001 +-0.06731778371013272 0.8858057881298005 0.001 +17.11224501745462 1.141965218367079 0.001 +4.269233240368242 1.968073289522319 0.001 +0.06993056288090341 0.7114997201755663 0.001 +0.05426165540884884 0.6737726494773814 0.001 +1.303459318371859 0.422537807296554 0.001 +2.361113784168155 1.909977794892129 0.001 +0.4898266743516451 -0.4760939326022094 0.001 +1.352967962602891 1.139559552699053 0.001 +0.06294761369157845 0.2729935090245101 0.001 +4.361444763160406 2.140937847039553 0.001 +0.9168738419943487 0.4203513826242342 0.001 +0.3440163661225319 -0.1698316447397975 0.001 +7.775972034085733 -1.031942696810381 0.001 +11.24512905109559 -6.795679724208243 0.001 +0.4499356857281862 0.1217528069148029 0.001 +-9.268380365994888 -4.042292547212027 0.001 +-0.177910187604303 0.05208076303378784 0.001 +2.276440321210676 0.8227246659766992 0.001 +3.6310383209646 -0.2401980048053208 0.001 +19.44817364417029 -2.129027622827208 0.001 +0.09582203191251426 0.257958622389126 0.001 +15.39784088724527 -6.102410788054541 0.001 +1.533925110224359 -1.200632182651584 0.001 +4.230645181969184 1.048871664964118 0.001 +0.8346064652395275 -0.05557016599742681 0.001 +0.844580284822972 0.03386052188907874 0.001 +16.34366664512707 7.490136209815526 0.001 +3.7279153208328 0.8697801220005434 0.001 +0.1371261352268636 0.09672645244894963 0.001 +1.991859533485584 1.092075707410756 0.001 +3.713970367583428 0.2101919113704058 0.001 +4.241012376825078 0.4740180810927274 0.001 +0.3708666367433315 0.03216916929706139 0.001 +3.564041639674418 -1.38584942866259 0.001 +-0.1879465745228845 0.3178221267502681 0.001 +0.3512449526304603 0.07730291282929164 0.001 +3.690532555210233 0.9453916707352288 0.001 +2.058834012504762 0.2465917164425208 0.001 +1.708855092980798 -0.02045630574430042 0.001 +1.456689827378562 -0.08401574901409964 0.001 +0.7284441558344817 -0.01790073372070527 0.001 +-0.1103742532297375 0.6812718673076141 0.001 +-0.07805321323487513 0.4071572511070914 0.001 +0.24808570313896 0.1224939467827368 0.001 +0.1934639089210203 -0.1991287283255472 0.001 +2.594707733386057 -0.2070080371504824 0.001 +0.1603220576230732 0.8519341090912415 0.001 +0.1713128391371447 0.2236552113510793 0.001 +0.6395091843876779 0.2441797221120305 0.001 +2.128625538216636 0.001323325377523732 0.001 +3.07931291808454 -0.01791354662358156 0.001 +2.990948615281525 0.7883443253955068 0.001 +0.1269477521331449 1.03633280455092 0.001 +3.543172450906926 1.096778638053258 0.001 +0.6902683812109576 0.407304955313657 0.001 +2.43725355511569 -2.137228645060576 0.001 +2.25271593161233 -0.1105470746815352 0.001 +0.4081795407570852 1.10306995493351 0.001 +2.502835033062351 2.943157597987909 0.001 +0.01742124135241305 0.1976465656195421 0.001 +0.2177708798898665 1.002867850577795 0.001 +3.7315273844918 0.4039144367140692 0.001 +0.1421657798952076 -0.07730543127472186 0.001 +0.5584566867816743 0.0841375641654029 0.001 +1.591489629459454 0.0660680828287362 0.001 +0.5273303419407962 -0.01195784495901991 0.001 +15.2885761901772 -1.836319001057704 0.001 +3.346170569042931 0.8774589683130189 0.001 +1.467540829580464 -0.02354103990519206 0.001 +3.816863475401213 1.090251097224256 0.001 +2.257867843818331 0.7302180792349366 0.001 +1.955204554236075 0.7646681691007793 0.001 +0.1342597316202315 -0.09245224024788586 0.001 +0.8752776794620969 1.138911991644845 0.001 +6.041962494051715 0.07649497694265525 0.001 +3.426476659032418 -0.577258999907916 0.001 +2.40609798668239 -1.082306947528671 0.001 +0.5145348623490829 -0.1042401192246691 0.001 +0.1526242176896001 0.06971850200035995 0.001 +0.4943869669088957 -0.2343896705672523 0.001 +-9.243948818669855 1.175016022681055 0.001 +5.013434203780297 -0.4617044362352631 0.001 +0.2597381769379751 0.6100489319709969 0.001 +-0.08751357249533534 0.8945221753377628 0.001 +4.901500312490917 1.704113753023224 0.001 +4.910419253229045 -3.038983400861871 0.001 +3.837289860446817 0.006415769388644056 0.001 +2.657330314147472 0.3752352962956089 0.001 +4.584763833954113 0.5356849964355466 0.001 +1.070160831086005 1.156195524608235 0.001 +0.8082589455746799 0.5450896027963104 0.001 +3.097819822326533 0.2927506911170471 0.001 +4.335895247339076 -7.797723847073482 0.001 +2.312481365835906 0.4210589365275651 0.001 +-0.2356448840218031 0.9219169482928721 0.001 +1.662658469644176 0.6001736709860384 0.001 +-7.222181953103458 -8.161682768613515 0.001 +4.147331113695907 -0.03899005266037307 0.001 +4.336224757388342 0.1830718800169458 0.001 +1.074307927864519 0.6649878368624277 0.001 +11.75238981402743 5.576926499116101 0.001 +-0.03171547033897174 0.7281454009420112 0.001 +0.06049452698916166 1.049802065161938 0.001 +-4.08450265315027 0.5229175031953144 0.001 +2.944103582563161 0.631953758735702 0.001 +2.18420458687844 0.8047788468812787 0.001 +3.579955599757212 -0.07685456332241453 0.001 +12.19546657978786 1.493929212761282 0.001 +0.7766180494643171 -0.0950179014415293 0.001 +0.8385748193398396 0.687628196076831 0.001 +4.081005755092566 -0.02505064677484649 0.001 +2.388971788082201 -0.08397446754149784 0.001 +0.2534346919243357 0.1875838336307969 0.001 +-9.291290655899243 0.5268710799509995 0.001 +1.185306764500302 1.274137063882901 0.001 +0.07053146715311555 -0.09329276416226256 0.001 +0.3320969186914333 0.826552283929831 0.001 +0.1967677087345299 0.890964912185362 0.001 +13.03637123926411 -5.463837490379324 0.001 +13.8830274219798 -4.643740610468245 0.001 +0.1575987613664673 1.274913048633002 0.001 +1.029862508906133 0.2358592132554461 0.001 +8.209607599722865 -3.886426665222428 0.001 +-9.15486173720304 -7.05171792509073 0.001 +4.121635779250591 1.386601190658739 0.001 +0.03812711003173164 0.03976876896744096 0.001 +0.2359889770542574 0.9022986331792748 0.001 +-0.005611760564858109 0.3216231880883049 0.001 +2.936326430216702 0.5233117880187792 0.001 +6.733687825624961 2.765825411980458 0.001 +1.877471028773898 0.2252745383193895 0.001 +-0.1186254775310931 0.09040965385385541 0.001 +3.911820968436528 0.4050057805970585 0.001 +2.467718498946836 -0.1713372277992423 0.001 +1.287237002440871 0.4694326162819881 0.001 +2.636797909206453 1.02227879266016 0.001 +0.08918444789393722 0.3936903576474687 0.001 +0.3148874559611675 0.2814743448540597 0.001 +1.891134821583591 0.9733071990279892 0.001 +1.114542031019183 0.03104215923339855 0.001 +2.478497142431819 0.2137518448477167 0.001 +0.124322874181427 0.9642076692346635 0.001 +0.1355836534148805 0.9797305122173896 0.001 +-3.174741900426802 9.435457964928332 0.001 +1.117485987407033 0.7670117258396041 0.001 +-0.06359343674798006 0.8275708657009317 0.001 +3.676978743749629 -0.1011143621585938 0.001 +4.491452639616183 -0.4128503252104772 0.001 +0.007297512681799978 0.4345773839595006 0.001 +5.333516085835109 -0.2084590444393821 0.001 +-0.08608868632397378 0.238331644775853 0.001 +0.7297847863660001 0.1951068446305429 0.001 +1.831920068026427 0.9426164467973264 0.001 +-0.9260655247059328 2.731581057261709 0.001 +0.2117787038135097 0.7798921680194959 0.001 +11.97919846776175 -7.649443586341611 0.001 +2.304154934234813 0.1066009571128615 0.001 +2.106546069643516 -0.5904677408699885 0.001 +1.989475165385662 0.05845826245312766 0.001 +3.684971059881479 1.344875522356252 0.001 +-0.08116014497958079 0.06276786630965099 0.001 +0.9090798526794867 -0.02230846670286407 0.001 +-6.219345031264798 5.765744154081084 0.001 +1.065767146058279 0.1410704494088919 0.001 +-6.594661598907519 6.662345429582975 0.001 +3.763151208062861 0.2498290254265864 0.001 +0.9513144131750506 0.6346076616424895 0.001 +2.829157066692182 1.444318619815263 0.001 +6.616296053785135 -5.757754206642465 0.001 +0.6996433780294397 0.2098223955752696 0.001 +0.1922485161127504 -0.403436862750608 0.001 +13.67681238002584 6.524647124610429 0.001 +1.098175853739665 0.6617038058427562 0.001 +0.09595448294866261 -0.07451975027818103 0.001 +2.674157614984469 0.3247808289924853 0.001 +4.306255128597233 -2.816688876739206 0.001 +1.249519000087602 0.4124096955381408 0.001 +2 13 0 0 +2 17 0 0 +2 21 0 0 +2 25 0 0 +2 26 0 6039 6240 6241 6242 @@ -11411,14858 +13801,29198 @@ $Nodes 7496 7497 7498 -9.778807897171502 0.05558097101420824 0.102 --0.3384969699456766 0.2246759655303913 0.102 -4.3171953140971 -3.843336183435499 0.102 -4.64211736451421 4.023039100397666 0.102 --3.962440810408782 -4.022064256688987 0.102 --4.353726025360202 3.877264611258266 0.102 -14.26053004338494 4.258806301029247 0.102 -13.92638068866421 -4.073054486028105 0.102 -9.300165611135684 -5.021433419267026 0.102 -9.359981860104012 4.916060108127613 0.102 -0.479083106988861 5.992204283023418 0.102 -0.2616839271001427 -5.116033485553635 0.102 --5.310001561269612 0.07478896856466866 0.102 -15.79102990734741 -0.0893761575181832 0.102 -5.847099930133955 0.1527569603666403 0.102 -16.47094770708509 6.568382823372293 0.102 -16.65253001106647 -6.34541716185104 0.102 --6.51957517473234 -6.587312204482456 0.102 -6.48773763682424 -6.659541678870707 0.102 --6.723859510168295 6.700024777523405 0.102 -6.033536299629761 6.707096631871114 0.102 -12.16726273619705 -6.431076023548391 0.102 -12.07934391654776 6.558989012953081 0.102 -12.39021784323325 1.267358684266742 0.102 -1.620509487334398 -2.357591586607114 0.102 -7.18912607220427 -2.126326349323302 0.102 -3.154661792447822 6.679641077314855 0.102 -2.927004712977335 -6.726361783112851 0.102 --2.827222346865052 -6.80646723895355 0.102 -7.359267448602184 2.602122003358535 0.102 -2.47184584467556 1.712056624721466 0.102 -11.19000602675133 -2.555768905034229 0.102 --2.727680904102127 6.834082844977783 0.102 -16.51973961997356 3.160488423349568 0.102 -16.86538030868333 -2.616351518362426 0.102 --6.938136991502127 -2.63980955369857 0.102 --1.520756124905371 -2.518260167318587 0.102 --7.046300888535879 2.730096841800151 0.102 --3.118990552202356 1.284847046718091 0.102 -10.22414519261333 2.869712338632752 0.102 --0.8324318131411002 2.724161421979818 0.102 -13.56359638523138 -1.335889148405581 0.102 -8.613110043543568 -7.463358757694778 0.102 -8.900586012996003 7.607998570298383 0.102 -2.102669355968249 3.62458576203 0.102 --3.873068783922107 -1.563216876502117 0.102 -14.24541875005511 -7.214828232441432 0.102 -14.18363279768171 7.404797131542558 0.102 -3.603609308030055 -1.354623308727185 0.102 -0.8573079008680295 7.63860218858552 0.102 --0.3394978485953679 -7.720033345763035 0.102 -11.70709944116238 4.466244931022066 0.102 --1.9451318846254 4.746601909091229 0.102 --7.729191223110295 -0.4196166046403471 0.102 --4.695285757974754 -7.794149558379218 0.102 --4.928555105162137 7.825884205582923 0.102 -17.69509118813632 0.5850265261975738 0.102 --1.519780623880887 -4.683616999563125 0.102 -6.915507812913066 4.365242284873371 0.102 --8.091967893810942 -4.764906568052602 0.102 -6.815470157648247 -4.048997096957782 0.102 --7.917876797607586 5.148504529633155 0.102 -14.14450519291148 1.698802036250893 0.102 -18.17543541731497 4.947484008793628 0.102 -17.84645646814626 -4.596424561936343 0.102 -11.10500222922638 -4.639391462669168 0.102 --4.972160274263994 2.011422578936783 0.102 --2.142894545664422 -0.7445579560210616 0.102 -5.69749475428727 2.372628262742814 0.102 -1.747307471777847 -0.3556934718680885 0.102 -0.424026133056503 -1.168697259979461 0.102 -4.214109027175104 8.024215513853466 0.102 -17.90712123938819 8.09860872755803 0.102 -17.83804385065398 -8.090877575112271 0.102 -7.507069494318005 -0.4040610464737135 0.102 -11.45193110512981 -0.8571659044117483 0.102 -10.87109906805544 -8.118062158138931 0.102 -4.540735820079144 -7.985710876238248 0.102 -1.139690382122118 1.046919957596142 0.102 -0.7812662497806541 0.07896091138716885 0.102 -0.3730611395833357 0.7711519600462875 0.102 -0.8725962532098591 0.5873369936698877 0.102 -0.5168151246898666 0.3849386469878797 0.102 -0.7124434827100807 0.9747983238867376 0.102 -0.7901727510507218 0.3351063836799678 0.102 -0.6040073798621349 0.636853074173157 0.102 -0.9567668386767115 0.8541143205421694 0.102 -0.2245396039158117 -0.1416077787856278 0.102 -0.4524430041471698 0.07418954106803989 0.102 -0.6505220602490145 -0.3570844384358338 0.102 -0.6213547653657827 0.206374848474322 0.102 -0.4158070563643809 0.5606048691876355 0.102 -0.1680765097473288 0.2967347448434218 0.102 -0.1045665339122664 0.5848920996499998 0.102 -0.7664760243168962 0.7776354801188299 0.102 -0.3776577435805402 0.251375241245111 0.102 -0.5742206456478236 0.8399965041525894 0.102 -0.3463575978408783 1.266815267921455 0.102 --1.196145143318557 1.603603496405709 0.102 -0.8689206922248114 1.464259571408791 0.102 -0.2451701100270807 0.4680295627464005 0.102 -0.9076709320541355 1.063567677364788 0.102 -0.7234919176462618 0.5098029584337769 0.102 -0.2761748499447121 0.6292948550263706 0.102 -0.130828323118243 0.8387942494965931 0.102 --0.3963233078863765 0.6887828757688185 0.102 -0.6280185653968188 0.04402176275446519 0.102 -0.09145400715208059 0.4316321894881257 0.102 -0.2188136849214738 0.08614105214155901 0.102 -0.3683345381116711 0.3998583723560507 0.102 -0.6491909752318274 0.3420990954134713 0.102 -0.5027373279910636 0.7244187753181672 0.102 -0.8335359331952029 0.8931408458957411 0.102 -0.8583606212955731 0.4636895827542016 0.102 -1.219146157657809 0.1846296791533891 0.102 -1.556909378103661 0.5506623626859524 0.102 -0.8935303000664695 0.7296593586995597 0.102 -0.7431033140476894 0.643957135342445 0.102 -0.5478615942895572 0.5307171866465542 0.102 -0.5001288377715265 0.2613825220818154 0.102 -0.1640556830356844 0.7200935103585293 0.102 --0.02139471023450567 0.735732787888235 0.102 --0.09869386003565389 0.5393757157724017 0.102 -0.3459817529871992 0.1409806340044271 0.102 -1.149795147476499 0.4869733798004456 0.102 -1.006631807529102 0.3009807198072235 0.102 -0.8699124747149323 0.2117632943959763 0.102 -1.109688099378634 0.7100508328248053 0.102 -1.139373324543485 0.8832282736895051 0.102 -0.7426762106439244 0.2121809986271706 0.102 -0.2578128841267724 0.1980881519969167 0.102 -0.1264274614678327 0.157307365064368 0.102 --0.04365656840552361 0.292963281663765 0.102 --0.04033845575114733 0.4181060675283631 0.102 -0.2520758278207708 0.8050046468630437 0.102 -0.9897254232565234 0.638545264103745 0.102 -0.9709226252647365 0.5059138440823161 0.102 -1.016278782713312 0.9737063797528168 0.102 -0.2773578138588181 0.3383651021655311 0.102 -0.4634277160341489 0.8433637541291668 0.102 -0.5244953735356532 1.031583296225929 0.102 -0.3197293682692126 0.9881718520900998 0.102 -0.2292146196727762 0.9132950028205311 0.102 --0.0452131829484872 1.373422537357332 0.102 --0.0004912280334828966 0.6171971668816083 0.102 --0.1286233279736679 0.6598779211307543 0.102 -0.3382446279995521 -0.03252276411481384 0.102 -0.5141335647764772 -0.1109313314380381 0.102 -0.4326261961580243 0.9443124439496492 0.102 -0.4030421318351134 1.067489986683336 0.102 -0.9058863891141704 0.3594973727232573 0.102 -1.037599182904338 -0.004189580999847731 0.102 -0.9133850886624187 0.07161539868421657 0.102 -0.6947813710044063 0.8582623422653861 0.102 -0.6538049868463096 0.7406019448820724 0.102 -0.3420201722870181 0.8800698948122054 0.102 -0.6024822347061016 0.9460360786561908 0.102 -0.6423652457257883 1.060510436975697 0.102 -0.5133877644339907 1.272219652227606 0.102 -0.7696911069289866 1.107782857871021 0.102 -0.61807610276406 0.4403728608398318 0.102 -0.06409634002360967 0.3239190504789655 0.102 -0.02371012078355694 0.51337924637846 0.102 -1.003360251353602 0.7634162516280383 0.102 -0.5382049178171135 0.1636038122914853 0.102 --0.1945566677866459 -0.05641952431682425 0.102 --0.0391030600036743 0.09805020944003996 0.102 -0.09566312908149185 0.008985476505909036 0.102 -0.02681779818405991 0.1895340591143252 0.102 -0.6909052840898305 0.1285969927551789 0.102 -0.3817059509476804 0.6605625519443 0.102 -0.5006137558422266 0.6280901478426675 0.102 -0.8157636709831505 0.9995746228909884 0.102 -0.4615157443221047 0.4636324196944308 0.102 -0.07022892599412996 0.7605027081570481 0.102 --0.01313574590324417 0.8893091898692332 0.102 --0.1739446310068749 0.820240105614003 0.102 -0.0913435918927723 0.9770671542133333 0.102 -0.2020701495607371 1.046617406956 0.102 -0.3045785041879657 1.109620711728035 0.102 -0.9917860259272819 0.40645695619996 0.102 -0.199744252517849 0.5554331803658492 0.102 -0.3205658313168829 0.540546485157393 0.102 -0.1747404241099047 0.3892871532541547 0.102 -0.4307674212526985 0.1796317079151855 0.102 -0.5196753208393675 0.004156343659810095 0.102 -0.6257377485157596 -0.06996937432786687 0.102 -0.8066488316280985 -0.193595685950414 0.102 -0.7202235514222087 -0.01523763634351834 0.102 -0.8344103880155528 -0.03359941854500965 0.102 -0.9413338210684247 -0.04301772313987808 0.102 -0.4277236618822847 -0.01650634188187173 0.102 -0.3831930953266031 -0.1361389633758801 0.102 -0.6368017088840909 0.5604286975778956 0.102 -0.2219216427440524 2.08455937985675 0.102 -0.4324911413714538 0.3162848346980611 0.102 -0.5285121151327831 0.9162855116470409 0.102 -0.06473661051646083 0.09985713422799226 0.102 -1.006401466185234 1.0741681678656 0.102 -0.9184796005110086 1.287406084071762 0.102 -0.9563119658513929 0.2289040956349079 0.102 --0.02293348123276077 -0.01284702397579847 0.102 -0.9828919222370649 -0.237094641420951 0.102 -1.386290265087847 -0.1598911714807213 0.102 -1.043799782629146 0.229149562513158 0.102 -1.17996755817908 0.3404545840081533 0.102 -0.7973784356628817 0.6998424563020591 0.102 -0.8416100158278552 0.8027350507965221 0.102 -0.803207741477321 0.5417584268656741 0.102 -0.291402258314941 0.7195663633250237 0.102 -0.08885765579232688 0.2520631842791979 0.102 -0.8489226638682441 0.1260800599010023 0.102 -0.5761498647440907 0.284722269292277 0.102 -0.3030122119360984 0.05342730061847659 0.102 -0.06237933371741597 0.6588794380408469 0.102 -0.1433282454443406 0.07733814744688396 0.102 -0.1880799847751229 -0.01015636108084575 0.102 -0.8587890556760938 0.2975070070432032 0.102 -0.1261511163962301 0.5101574734415503 0.102 -0.9416183138500361 0.1436558712665255 0.102 -1.003302682899799 0.06540238355644094 0.102 -1.119291205107674 0.07354565161700072 0.102 -0.07844672046478118 0.9029568493069992 0.102 -0.3764486404700911 0.4876766715987024 0.102 -0.6072363239203487 0.1223145977589558 0.102 -1.390446511438694 1.589101634797545 0.102 -0.006343026030112557 0.8101485789430353 0.102 -0.6746986595889132 0.2653798836968875 0.102 -0.1796160249036141 0.6372744227042798 0.102 -0.5529030924454934 0.07425204978609068 0.102 -0.5772923631798463 0.7247621657939847 0.102 -0.1101701130149972 -0.08995845234454504 0.102 --0.04189320647292939 -0.6506903134419275 0.102 --0.007024139049017263 -0.1549065330194654 0.102 -0.1790845755825639 0.9796798037797591 0.102 -0.384668068082255 0.04147859736693943 0.102 -0.8995219731540804 0.5151804936901725 0.102 -0.05130771176133666 -0.053035664968118 0.102 -0.9240405178190985 0.4572995325198732 0.102 -0.7836251088917795 0.1579866366360379 0.102 -0.3031282817132038 0.406518207749045 0.102 --0.1225752383016032 0.03613541717609939 0.102 --0.1401941137638613 0.1169664775359899 0.102 --0.4684480465309708 0.003124996147966625 0.102 -0.2639820603469262 -0.007700255273623002 0.102 -0.1258456758711975 1.048508687453042 0.102 -0.9405476029323272 0.5916247732736589 0.102 -1.035480958033257 0.56832836452934 0.102 -0.9286361834834808 0.3001996330662547 0.102 -0.4420507559873195 0.6685051746370618 0.102 -0.01927429131375017 0.9488234481629515 0.102 -0.03828677609801002 1.050574968957572 0.102 --0.1479695999368436 0.9901789492377249 0.102 -0.7672016845371208 0.8476598706179662 0.102 -0.7219648890435916 0.7146854744344324 0.102 -0.9085817803693086 0.6602474031536694 0.102 -0.2538971390978715 0.9868299819340103 0.102 -0.3502150492303563 0.3242569906968465 0.102 -0.846600682933504 0.04617399745512271 0.102 -0.1409800092171672 0.9117539158363921 0.102 -0.7885013064534953 0.4244462065070099 0.102 -0.1841745038358016 0.2299151643494274 0.102 -0.703856240779569 0.572635808261367 0.102 -0.7153230099252943 1.054410367085294 0.102 -0.6898711231981587 1.154715595686391 0.102 -0.1101652057897792 -0.2664045374115766 0.102 -1.160779746359544 0.5959521728474091 0.102 -0.4475988571522495 0.7680723933752928 0.102 -0.5186190628043287 0.7882245678737184 0.102 -0.1746665365602789 0.7870557070760387 0.102 -0.01605234690509771 0.05098919680680389 0.102 -0.1989192430016144 0.1593396421902221 0.102 -0.4596656568633735 0.3982473975774438 0.102 --0.009938783319590251 0.353051957258141 0.102 --0.09510296173807146 0.3501985770162923 0.102 --0.1501085918243583 0.4455711539174304 0.102 --0.2338527867559902 0.5459151643655887 0.102 --0.1237873749361008 0.2633230759078813 0.102 -0.2340694105109382 0.2764367872233029 0.102 -0.323889603704679 0.2002776223402084 0.102 -0.2735395255734213 0.1477974042294005 0.102 -0.5910947117774148 0.3936513813276019 0.102 -0.6934826726950305 0.05972365425683124 0.102 -0.5563253256178856 0.4444759753068381 0.102 -0.1817113392057116 0.4676396121435762 0.102 -0.4119292442651195 0.8826053680454881 0.102 -0.7169393151556588 0.3231554163520695 0.102 -0.202933142769147 0.8545452534530249 0.102 -0.7591109793026833 0.9224885196310471 0.102 -0.6831025317080462 0.6695220925835442 0.102 -0.7745899050743794 0.009230330232323905 0.102 -0.7614785210280461 -0.05975908868670261 0.102 -0.6899216978296316 -0.2159787532471563 0.102 -0.6897814220516285 -0.07120400909848938 0.102 -0.9346876663716386 0.7814931881438366 0.102 -1.059087232837671 0.6386136301645875 0.102 -0.5669692446609658 0.5868886706900094 0.102 -0.4808141842049769 0.5586752235983147 0.102 -0.03165589783746873 0.4354318789911508 0.102 --0.04226482194971903 0.4941963448235486 0.102 -0.2942770390312995 0.9335220215379507 0.102 -0.9530906445297428 1.011404216559076 0.102 -0.8902225951844355 0.8845411115543158 0.102 -0.7963789729468024 0.610763072721084 0.102 -0.2212598783195015 0.6972751821096652 0.102 -0.1331427535718133 0.3482846324509551 0.102 -0.5487114258363841 0.2150411943779777 0.102 -0.5228242135016079 0.3230198528783342 0.102 -0.3211498358670152 0.8013697020689245 0.102 -0.4931692735054347 1.104505592746891 0.102 -0.5576451037657467 1.109820090142668 0.102 -0.8433447378904715 1.066577660309542 0.102 -0.7027498598939567 0.796038335774376 0.102 -0.04283457192254434 0.5720556332362188 0.102 -0.6813838528605198 0.1916222103106892 0.102 -0.7778693423632058 0.2790574893849587 0.102 -0.3891932889753336 0.9974445979889778 0.102 -0.6565493905089237 0.9174392736450603 0.102 -0.3011598848238414 0.2623014428829658 0.102 -0.2719480247000945 0.8664307305351736 0.102 -0.4387671943609781 0.2481414738089867 0.102 -1.049030223976009 0.8246644739590548 0.102 -1.057050761791634 0.9150568304675285 0.102 -1.108952619055955 0.9811748930948742 0.102 -1.076884403800211 0.7769061022619658 0.102 -1.180970472218421 0.7994517858718703 0.102 -0.5860812167959767 1.012736753338615 0.102 -0.06203796051712732 0.8304424990619002 0.102 -0.3082598086487793 -0.4222308803543391 0.102 -0.409384394147713 0.1267732199358421 0.102 -0.6538427490433913 0.9969947536600561 0.102 -0.3700630463384308 0.9502921000246816 0.102 -1.116352121182776 0.1658125311250634 0.102 -0.589376188411028 -0.02549641497604021 0.102 -0.3596941583229384 0.5922452405998669 0.102 --0.7896436234984363 0.2786418522595888 0.102 -1.032407344368802 0.6992258553629589 0.102 -0.3879367156016787 0.8191363523860012 0.102 -0.02268218568741315 0.263165664514953 0.102 -0.7743771145548526 0.4748703442166658 0.102 --0.02530511641123456 0.5543847292050157 0.102 -0.6257191417935043 0.8709193046078708 0.102 -0.8149596533148048 0.212354339309837 0.102 -0.6345155495378949 0.8082567708458542 0.102 -0.2146366007307601 0.3427950073461849 0.102 -0.8369381784634213 0.3767867004897618 0.102 -0.9645870455394263 0.6958698203704876 0.102 -0.1168084128807171 0.6582965226197212 0.102 -0.3565695965573242 1.048554088058134 0.102 -0.9645681775360779 0.01640204628328276 0.102 -0.4993134287783916 0.9791201873265323 0.102 -0.3076230762892587 0.4766656166355986 0.102 -0.9635225011188453 0.3533780277508425 0.102 -0.0005799231287858484 0.6920956669158912 0.102 -0.128998475452245 -0.03322861096048939 0.102 -0.1840658722039827 -0.07331511795521048 0.102 -0.5473184114024868 0.6569963132737107 0.102 -0.3996189472105177 0.7138593974270863 0.102 -0.2541991904124539 0.5225540016442687 0.102 -0.6608149813574079 -0.013338602964473 0.102 -0.8941863214673529 -0.003622724591900182 0.102 -0.8779448008368317 0.996727686739788 0.102 -0.239918480308849 0.389220245285828 0.102 -0.267634166121094 1.050986768694268 0.102 -0.2337267591767629 1.123609412183644 0.102 -0.1550981301519445 1.140347451032143 0.102 -0.2256073937565621 1.555943161791936 0.102 -1.049951697377788 1.047096879742919 0.102 -0.4811958047377281 0.1380225764452051 0.102 -0.04298860938556717 0.3940240133740665 0.102 -1.082462678250306 -1.013407482225543 0.102 -0.849463711901592 0.6594909780289419 0.102 --0.02755964351225103 0.1575645041115972 0.102 --0.034715795773453 0.2200163489749204 0.102 -0.5980280419474414 0.4906968014046027 0.102 -1.049268957774949 0.4733393029967185 0.102 -0.06631076667450451 0.5026424632901655 0.102 --0.0543660863342906 1.007680043218459 0.102 --0.04154230210479165 0.942983386500824 0.102 -0.5880049081202863 0.7703243065070776 0.102 -0.6583350917751025 0.4995129562825864 0.102 -0.08175073859355166 1.125021831258695 0.102 -0.7673152501561624 1.012225462742983 0.102 -0.5625235245437604 -0.06412061246144533 0.102 -0.5981358778534097 -0.1765040525009449 0.102 -0.4962888020035933 -0.2671562167460623 0.102 --0.04671949496585767 0.04855247524040782 0.102 -0.9993816921119707 0.8057964962691397 0.102 -0.3618930716331833 1.114133432597588 0.102 -0.4296392143889506 1.203302828661542 0.102 -0.2850227455352695 -0.08472654625729603 0.102 -0.6498161477775333 0.3995999855629911 0.102 -0.8205433722158767 0.7546821451017288 0.102 -0.4888862193035557 0.205761306322897 0.102 -0.2192748350451624 0.7546601519037083 0.102 -0.8431065960509427 0.9481274113810045 0.102 -0.2347288817217524 -0.05996853307042574 0.102 -0.5297718872259523 0.8455121371497656 0.102 -0.4939387841575518 -0.04298446523359749 0.102 -0.4217162548006296 0.6268629836191351 0.102 -0.6534038785740557 0.6023930018568247 0.102 -0.07792550349394402 0.1545376183328431 0.102 -0.1191941479289277 0.7858311661051831 0.102 -0.3047938659519762 0.6714078278186627 0.102 -0.5803818505649038 0.9065540899916027 0.102 -0.4624448521604804 0.9034009310734142 0.102 -0.4788647222341896 0.01415875361773028 0.102 -0.6234296135647664 0.6839175258827018 0.102 -0.149921427165828 0.03022168051335106 0.102 -1.067565756429054 0.4016728361632335 0.102 -1.022746550303806 0.3669061717815165 0.102 -0.8701055432064791 0.4188283604291542 0.102 -0.3908469297394476 0.2029620860161648 0.102 -0.8945806270376785 0.8218570055647114 0.102 -0.1048751539432402 0.3023960259137536 0.102 -0.2297747230007587 0.03133237999773097 0.102 -1.005789818632003 0.8850012434793282 0.102 -0.1057178834872428 0.7054271725100825 0.102 -0.002695891909317023 1.004884017618582 0.102 --0.01892233560883546 1.065836185359383 0.102 --0.09759182789952726 1.155896609612491 0.102 --0.4492198367398001 1.195708521019827 0.102 --0.4397905557654075 1.7777706519234 0.102 -0.7535216965686676 0.1114335319582889 0.102 -0.8977422624909106 -0.05423191644504645 0.102 -0.845271521827172 -0.1175522464424846 0.102 -0.7520422547612688 0.5732676538214982 0.102 -0.5480572858750922 0.971203258009637 0.102 -0.2520783013276017 0.5858570319017509 0.102 -0.3405807122689973 0.7086465288734308 0.102 --0.155473989083436 0.1990682266638866 0.102 -0.002149918501187229 0.1244531524327908 0.102 -0.5026661694558696 0.432130943778025 0.102 -0.4107505138959902 0.5097468868409334 0.102 -0.4763991647159846 0.3458163723107514 0.102 -0.03506242427721541 0.0005095053315539201 0.102 -0.03409263567390323 0.7287968340522504 0.102 -0.3623891133953109 0.5424050479829601 0.102 -1.02452474161524 0.5222422579782048 0.102 -0.6470016255622097 0.09951963351259825 0.102 -0.9992887674134803 0.4644669582470024 0.102 -0.4057048843854839 0.4450029559622964 0.102 -0.57987892947334 0.1705166591600155 0.102 -0.1560079679585613 0.5661747590443689 0.102 -0.7301648244168467 0.2634500777094693 0.102 -0.6452741560575399 0.1630797164874996 0.102 -0.3058740690844388 0.5995566677076642 0.102 -0.7316938948146354 0.1625335894162003 0.102 -1.088159608585583 1.384384234756329 0.102 -0.4915457566811037 0.5021620605932223 0.102 -0.5717481765166091 0.02359501975554351 0.102 -1.005277653222786 1.021792151741224 0.102 -0.9553993557764555 1.053936514558389 0.102 -0.6721226113673495 0.452502884010907 0.102 -0.9384699880543341 0.3923230292763721 0.102 -0.7397253569692526 0.04154067588091399 0.102 -0.3358627308877761 0.4417319070265639 0.102 -1.0129832296173 0.2026775383134678 0.102 -1.000556865506031 0.2527205517901525 0.102 --0.07687838317878254 0.6063438706520916 0.102 --0.05193613927426899 0.6669226459105837 0.102 -0.622878543232898 0.2514265598313795 0.102 -0.9078127283680691 -0.5985926360775126 0.102 -0.08643809238311018 0.5476171751726218 0.102 -17.757554888211 -1.255665254495647 0.102 --8.068544767207896 -8.027196171999799 0.102 -10.994618041037 8.37648131248263 0.102 -0.9781873179694476 0.118169657452912 0.102 -0.5747556766557746 0.3311262725256905 0.102 -0.9164554108877487 0.2347264616854762 0.102 -0.1312559330151431 0.4048233860583848 0.102 -0.4906648293691703 0.6792233000723263 0.102 -0.009505063252157444 0.3100985311226057 0.102 -0.2085971363442559 0.4992748374251789 0.102 -0.853161500543947 0.5476470412579961 0.102 -16.29850448059283 4.337252358514992 0.102 -15.80327207222707 -4.557738161200698 0.102 -0.07743636962028827 1.028552038048453 0.102 -0.3841945903306124 -0.007081564470304604 0.102 -1.173427278998276 -8.452727862674248 0.102 -0.9828445665388675 -0.01861223556074809 0.102 -1.038223112780168 0.280936017198208 0.102 -1.061104609965141 0.3389315615159967 0.102 -1.149885232602385 0.2623487678753338 0.102 -0.1081847900809573 0.1182589706477441 0.102 -0.0988159614922889 0.05750867288020547 0.102 -8.844915697814908 -2.876050851270409 0.102 -0.1412794956886085 0.2483784275683753 0.102 -0.02673705004986174 0.8706469484290735 0.102 --8.22721216123362 8.225452208974144 0.102 -0.7219568919348694 0.4562809688605359 0.102 -0.1743027179762723 0.0588297043069733 0.102 -0.8934482902977992 0.1653708374509519 0.102 -0.7818430340195192 0.9675335611726823 0.102 -0.978373888878325 -0.1401742394039512 0.102 --0.09347171064437287 0.7126736095130068 0.102 -1.060244567975657 0.05704915534639609 0.102 -1.140131026157937 -0.04249985521009116 0.102 -1.075758760779681 0.1160465163389661 0.102 -0.3487020609779954 0.08902986399850638 0.102 -0.03766039899154534 0.6250356668315651 0.102 -0.8574078223721027 0.1777997822228138 0.102 -0.460155693695119 0.591271187384268 0.102 --1.111681211984331 8.27367973054494 0.102 -0.7525326955423945 0.3653246987019648 0.102 -5.380712697627945 -2.174366917156823 0.102 -0.7651062533761958 0.724390718913174 0.102 -0.8076981317562444 0.8049618243727751 0.102 --7.974499862375868 0.8516981399823262 0.102 -0.5388892617047125 0.7606634856819279 0.102 -0.889166936127228 0.1278720527426509 0.102 -0.2679850436918327 0.09454645365338531 0.102 -4.317203836404034 -5.774994145235812 0.102 --5.93320511854806 -5.307261839884852 0.102 -0.3156710161021876 0.7624763961393706 0.102 -0.4470550917149869 0.715403784030939 0.102 -4.800598439403776 5.997402005103853 0.102 -0.2124587799376649 0.4351220153138426 0.102 -0.9302161604098576 0.1849817603605569 0.102 -0.4726131191398842 0.3079313549099764 0.102 -0.8891260317431633 0.779095503162238 0.102 -15.08868282005773 -1.999682698781321 0.102 --0.05166890451682871 0.3247092020223271 0.102 -0.7142771051904377 0.8999459430448647 0.102 -0.3980535374797339 -3.30662277171864 0.102 -1.808116164062278 0.06534571431081419 0.102 -0.6941128766883642 0.3667999816868054 0.102 -0.3956605942451465 0.3518653344887656 0.102 -0.3915829340299064 0.3034242311599105 0.102 -13.65424069694158 5.97259055424486 0.102 -13.59848516544306 -5.971353804410459 0.102 -0.9727565459208551 0.1714404503466606 0.102 -0.3366408502192449 0.3731403361092567 0.102 -0.7834020741403681 0.6524717611201343 0.102 -0.84848760320539 0.8506833235348176 0.102 -0.1286028983642967 0.4704211081592455 0.102 -0.5666210092052046 1.044891131759017 0.102 -0.3372631132362737 0.01709253960584051 0.102 -0.3308625710269745 -0.0993444765836323 0.102 -0.3204498873079571 -0.2255578272687122 0.102 -0.3921868452398441 -0.07109079336990162 0.102 -0.5845545034819449 0.07617063388606571 0.102 --3.915671673034128 -5.976357400993689 0.102 -0.8341676017074839 0.07356986261909045 0.102 -1.038868790392037 0.4197029288526438 0.102 --6.202111483948313 4.93221038726879 0.102 -0.1554627052844396 0.1326202344046655 0.102 -1.120719704637678 0.821444928928785 0.102 -0.5551904321276252 0.1061478193107407 0.102 -0.5816934582994295 0.541849048065524 0.102 -0.7846057525357933 1.058635125423212 0.102 --0.004867188917760501 0.3864833716083928 0.102 -0.4348883337692118 0.03070405365539314 0.102 -0.9723894223480836 0.5729096809932096 0.102 -0.8446634988467776 0.2615978519550758 0.102 -12.69167049175834 2.997112098282792 0.102 -1.068101352066177 1.083057819912708 0.102 -0.03911749335724582 0.9930762412290947 0.102 --0.08896824651908822 0.8224217550179135 0.102 --0.0737069884341139 0.8910458304208667 0.102 --0.07461647817310066 0.7646751836458671 0.102 --0.0348096345852045 0.8441382140947905 0.102 --0.03190208121989908 0.7842029183985354 0.102 -0.8331170566266441 0.3247650187352312 0.102 -0.05817816492128663 0.2878962657974666 0.102 --0.004857277531253324 1.174250623596437 0.102 -0.09066480889993482 1.205015770714335 0.102 -0.06980759390136419 0.1994812520740403 0.102 -0.5193207379735786 0.1074472362907787 0.102 -0.8574162593407537 0.6905408396355593 0.102 -0.1897136018903703 0.8885908439534761 0.102 -16.12762241048213 -7.869450147954459 0.102 -1.094238149221697 0.540217952072847 0.102 -1.07092500558582 0.5890639078228345 0.102 -15.86818374549289 8.246690735772734 0.102 -1.069606115528855 0.1755859696651299 0.102 -0.4419431846356087 -0.05511365517996437 0.102 -0.6835726848206367 0.5472261458565839 0.102 -0.2223922135365833 0.6212536001689305 0.102 --4.354919826995978 6.068556567790324 0.102 -1.062470162391958 0.94919520752077 0.102 -0.8988565358888927 0.3118364299254661 0.102 -0.3057620190096025 -0.04307518695524311 0.102 --0.06173075847876918 0.3772403039651835 0.102 -0.6818709183794026 0.7032846201261942 0.102 -0.8399960994345428 0.5034593060031241 0.102 -0.9141885006140547 0.6142252305995738 0.102 -0.3966279661251977 0.1466489428388675 0.102 -0.06994166831988513 0.9396629919718181 0.102 -0.01625334675517556 0.9107731661485543 0.102 -7.245697152836319 -8.407099969199876 0.102 --0.08756891076753184 0.0780945544185702 0.102 --0.07166621240734461 0.005888851507574037 0.102 --0.07376998392537865 -0.07773624944062853 0.102 --0.01819828396186026 -0.06392881388255604 0.102 -0.6701285174012706 -0.05352012137696417 0.102 -0.6098557861288759 0.5959564370566059 0.102 --0.06371447220138229 1.062633124997904 0.102 -0.9841886523063 0.6063176231341389 0.102 -0.6186207171563158 0.2987872207761667 0.102 -0.7473258905186573 0.5278809406908784 0.102 -0.1189895911533663 0.8875928396898538 0.102 -0.9346982743229892 0.4994821267237338 0.102 -0.9336445144888894 0.904962321426366 0.102 -0.9478445626011364 0.9511004971094527 0.102 -1.101440095143802 0.2242836006479824 0.102 -0.1181906493211585 0.204595792706635 0.102 -0.8878869615419058 0.480827363557142 0.102 -6.854126924623968 8.399750002497356 0.102 -0.689683661280883 1.026704010146655 0.102 -0.6991041991171247 0.6178589170961317 0.102 --6.151787255213478 -8.670256050343889 0.102 -0.2969024897345913 0.2134309137447463 0.102 -0.8921458204714413 0.5701645964554787 0.102 --5.017833749564296 -2.97153765408504 0.102 -12.93008592500053 -7.994266869158046 0.102 -0.06271017506669752 0.03414430662065576 0.102 -0.142339644434558 0.9922185562561058 0.102 -0.1751920581946828 1.031656492128341 0.102 -0.2732121171464391 0.7588911008961644 0.102 -0.5398200117767217 0.258370645969687 0.102 -0.5257670363854975 1.078758102147628 0.102 -0.5247573324341218 1.168960364518934 0.102 -1.411758350358554 5.660480459824256 0.102 -12.60495635747695 8.678985532347129 0.102 -0.8712945495723455 0.06790885509768078 0.102 -0.938539382560165 0.7357276922145755 0.102 -0.2161391684848372 0.9650591191447803 0.102 -10.47040823214504 -6.23685533366146 0.102 -10.58883888427603 6.208025543454956 0.102 -0.7258640415197422 0.7572515642751755 0.102 -0.7380718095527196 0.815745507056875 0.102 -1.024594212002912 0.7853671020801283 0.102 -0.317862012740282 1.021759729506222 0.102 -0.8344627739944643 0.4164332725976277 0.102 --3.785997467837496 0.08129739138966105 0.102 -0.243863021287729 0.1672336041649077 0.102 -0.08867092658633852 -0.02695803229783025 0.102 -10.64645486889532 0.8553192335476025 0.102 -0.4758438858325889 0.7909248794555838 0.102 --6.212827100294987 8.370926962587095 0.102 -0.5131795852875678 0.5836285867027187 0.102 -3.734837523044565 0.2256098737010388 0.102 -0.3470516984868661 0.8234490777281065 0.102 -0.8035283534808753 0.8566941511744465 0.102 -0.7499302195904922 0.684707736964663 0.102 -0.5016253245703111 0.05547266660975167 0.102 -0.0891568491847011 0.3768500457939198 0.102 -0.09119264620221981 0.6338134540703683 0.102 -1.005595590652861 0.03099543294675742 0.102 -0.9314106558840817 0.5334027036963803 0.102 --2.573916357005505 3.27556335470639 0.102 -7.647944018960027 -6.149343286405649 0.102 -0.8065533816186808 -0.0371225404067548 0.102 -0.2660706848051978 0.6824539980861849 0.102 --8.043479344020737 6.413016189176403 0.102 --8.188605697461821 -6.219542757607135 0.102 -0.1754542713270306 0.333286384825221 0.102 -0.8092001567268237 0.9310347133749105 0.102 -2.192474480941008 8.207683084414432 0.102 -1.255639640160788 0.6855239970238181 0.102 -1.299390823531235 0.552457745667148 0.102 -9.353263804011856 1.43273192621627 0.102 -9.038387473324461 3.498358983067383 0.102 -0.05659104441533851 0.7141079976535138 0.102 -14.34858796924284 0.2142354164150892 0.102 -0.1762588797605706 0.540440340013402 0.102 -0.9665475766799445 0.2743924772404054 0.102 -0.4522022576053228 1.530774453228253 0.102 -8.265276789354612 -1.540584558609023 0.102 -0.7303176983430567 -0.05460379454838914 0.102 -0.1871681093354405 0.1085511314842375 0.102 -0.3372825637198734 0.6363266782966632 0.102 -0.5328742841301284 0.7088416476593005 0.102 -0.1933200826690772 0.6805453820115664 0.102 -1.157341057946707 -0.1463398691445315 0.102 -1.018749274049162 -0.05793292353806387 0.102 -0.9766172930482339 -0.06983589148594614 0.102 -0.9268498339772335 -0.07691999737070787 0.102 -0.8775334993517416 -0.1203785481903002 0.102 -0.1673822521256076 1.067406366470413 0.102 -0.6744482652749803 0.3013535643817293 0.102 -0.7703165820772873 0.3107423961264475 0.102 -0.8501728775444963 1.036848969489056 0.102 -0.1884145532890734 0.2723536485303076 0.102 -7.799020113108843 5.840125163172948 0.102 -0.4198476698531936 0.07675112267566063 0.102 -0.03556893015958207 0.7727986999122481 0.102 -0.2500341957163357 0.9563470729754274 0.102 -0.1780867337870665 0.9233328431446349 0.102 -0.6607345361640897 0.2285428107549418 0.102 -0.703420977415432 0.2376710148812655 0.102 -18.0847798296296 6.565325109283293 0.102 -18.42972166275934 -6.118956813736421 0.102 -0.2693997355385181 0.02395310306868684 0.102 -1.104031573684741 -0.07092381555127496 0.102 -0.1375344798560746 0.9530886737381397 0.102 --1.833617953294117 -8.774163498882283 0.102 -0.2136905692098711 1.016120780895253 0.102 -1.028606801031093 0.7531194252402628 0.102 -0.5618756119063345 0.4144009451688595 0.102 -13.0509388213551 -3.024143913166149 0.102 -0.3001342857638722 -0.01068494148741926 0.102 -2.766611134651537 -3.43330690907655 0.102 -0.3228087047410781 0.9156143398831343 0.102 -0.0594175510978503 -0.1199338724314869 0.102 -0.1854679890499476 0.5845215422554673 0.102 -1.834221198333621 -6.736458292504278 0.102 -3.910056230750206 2.982451067151881 0.102 -0.871956240207822 0.9249784557100649 0.102 -18.16377450179882 2.325465538964919 0.102 -0.8897843417599356 0.2811270968816048 0.102 -0.798564174526617 0.1154489155757264 0.102 -0.1148494159464106 1.092385827509162 0.102 -0.1701690582734593 0.1819243540002829 0.102 -0.1463175469094001 0.6312972632160841 0.102 -0.5964071461129932 1.082985842779227 0.102 -0.6318380501528224 1.149884289336693 0.102 -0.3404456643850424 0.2906919643945269 0.102 --8.21995470895583 -1.976424297149895 0.102 --3.036726162499046 8.279581529255175 0.102 --0.01384080954450631 0.4500754412659645 0.102 -0.1493688322347702 0.7469918416922877 0.102 -0.166692206846466 -0.1419201675328486 0.102 -7.040215257046557 0.7981706837036794 0.102 -1.06505692156696 0.5130048153566155 0.102 -0.286122468559906 0.1794561406448367 0.102 -0.9569692517955557 0.6200306573256203 0.102 -0.2601944703350376 0.4203210912937518 0.102 -0.476446050496345 0.9316955760471402 0.102 -0.8220061736376574 0.007347604552419094 0.102 -0.8025391877587504 0.04346395750094698 0.102 -0.5870048003488721 0.2442948759325508 0.102 -18.5972241508565 -2.895208830796268 0.102 -0.2094110787386306 0.2107833300597123 0.102 -1.101524783958154 0.4830162753810805 0.102 --1.318002558499414 6.591237874905301 0.102 --0.05170443849939049 0.7013356900815637 0.102 -0.435254694876213 -0.1307515525326609 0.102 -0.6211403366400673 0.7466922465488222 0.102 -0.1659088720976823 0.8214124111715542 0.102 -0.7390224075288024 0.08985343172582416 0.102 --8.460643908832607 3.353364128873542 0.102 --0.06544850348815551 0.250500740148995 0.102 --0.07296361470320523 0.299634443924512 0.102 -3.116371044918559 -8.383686157619298 0.102 -0.5322808679511185 -0.04720846953627914 0.102 --1.166961284568557 -6.360320337671025 0.102 -0.9206374844966135 0.7099613608707293 0.102 -0.4644597727766242 0.5226465770242511 0.102 -0.7946029810308557 0.8877074437446199 0.102 -0.7175098570020189 0.6691876723792965 0.102 --0.04538791132361535 0.5289136221196463 0.102 -0.1088103749271485 0.9140087763276218 0.102 -0.9348379902113991 0.3294222824299715 0.102 --2.702400462292604 -2.671116458683818 0.102 -0.3131109217155299 0.1048684760566335 0.102 -0.9678720635290946 0.4409329319215508 0.102 -0.3184802188148906 0.1570385499884327 0.102 -1.013647861343827 0.9346850137935038 0.102 --6.192609092121936 -0.8937798031294012 0.102 -15.94716387472986 1.427664545828306 0.102 --0.191876839130268 0.7036107954841537 0.102 -0.8272154622986329 0.4509564418586166 0.102 -0.2142311083508279 0.8189580802124153 0.102 -0.9186061044525973 0.02851021777331379 0.102 -0.3111580890763753 0.8602365480350229 0.102 -3.526696842874171 5.045856804247696 0.102 -0.5202269779404142 0.4815482131221492 0.102 -0.7568740408094129 -0.02941165258670687 0.102 -0.5947991954833478 0.6781969358581597 0.102 -0.5636064339095019 0.6302543050822355 0.102 --6.079859721415898 1.132355641429533 0.102 -0.05018031055036733 0.5281749289111862 0.102 -0.7373611666674568 -0.1013816474292982 0.102 -0.7693881774823065 -0.1296781025204189 0.102 -0.9190237982899652 1.020009132909522 0.102 --0.03350047551237098 0.6066389366056885 0.102 -0.2208060228326915 -0.02363410589083107 0.102 -0.2239473077883308 0.2411220426069798 0.102 -0.7788779247681619 0.1882884574162535 0.102 -0.6753280752391702 1.055423916308557 0.102 -0.006707582837906088 0.5737954984065952 0.102 -1.136419485833078 0.4101288275786128 0.102 -0.2891790633917443 0.9801664764554753 0.102 -0.340963850933399 0.51104884179521 0.102 -0.3186320948250247 0.3102366616102182 0.102 --0.01256797781050607 0.9283977425320702 0.102 -0.09924215859547661 3.883000333290253 0.102 -0.6578921064407354 0.8503161674065988 0.102 -0.6507470658582003 -0.1281912857653586 0.102 -0.723602797029984 0.8690719243069313 0.102 -0.8858969562896261 0.03843526462810218 0.102 -0.2288459678838146 0.1382898203158761 0.102 -0.3724537414082836 0.8980581185869045 0.102 -0.2358106657425154 0.88985831365887 0.102 -0.1627298005892039 0.4206474557494609 0.102 -0.3343524966022559 0.2331611060785622 0.102 -0.03845277662837585 0.3624869293312609 0.102 -0.2780100435046421 0.3661092253847136 0.102 -1.039423957328575 0.6138207672362554 0.102 -7.964706101062169 -4.231170699244386 0.102 -0.4631114040412994 0.6396692433637408 0.102 -0.6592047529151153 0.02879012796041385 0.102 -0.2742305688891905 0.2902870754571854 0.102 -0.4338764485043551 0.8223766870909068 0.102 -0.4024104417794399 0.7830915800121336 0.102 -0.02863226447617178 0.1467915688547493 0.102 -0.8215667031667986 0.5747948811688344 0.102 -0.6467233005108972 0.9506720930513443 0.102 -0.5724572977815863 0.8086015427046347 0.102 -0.4959760368616878 1.037391166669967 0.102 -0.6204242109094701 0.9092324061873452 0.102 -0.294681131614885 0.8870297058313866 0.102 -0.06839481229453849 1.063135321533684 0.102 -0.05041181719053199 1.098463856952251 0.102 -0.615994835217179 0.3519269494458502 0.102 -0.4353004354247917 0.3603842863703183 0.102 -0.9550463673229397 0.6666741669075874 0.102 -0.1602322160937221 0.8759436791092985 0.102 -0.8597132256995922 0.7527619805460541 0.102 -1.035869631345303 0.6472774964079691 0.102 -15.29474461588653 3.022337305061984 0.102 -0.2517094579923349 0.8455954631444705 0.102 -0.4453117699992082 1.067142995697861 0.102 -0.4470994356074042 1.118050680411617 0.102 -0.41390331781878 0.9840940359523966 0.102 -0.5966423738764178 0.424361627529357 0.102 -0.07634941686935813 -0.05607720477941423 0.102 -0.448727604049723 0.2205653523127573 0.102 -0.4035676931722358 0.6722027665585276 0.102 -0.4023644272496733 0.9124714926396302 0.102 -1.064370372416274 0.6883138658730744 0.102 -1.103427858470932 0.6539198794631763 0.102 -0.7978224682841559 0.3787408688364906 0.102 -0.6187840387459652 -0.03385748906523621 0.102 -0.4120702805358733 1.033306296778927 0.102 --0.07126969050019495 0.1311717145434491 0.102 -0.2523474448361863 0.9060394175049868 0.102 -0.420406394733093 0.8529942961710301 0.102 -0.5910454402094514 0.4694817409050221 0.102 -0.7747806679079823 0.2351875484343214 0.102 -0.5548759792638454 0.3657203828481155 0.102 -0.1961494132701873 0.2985703437473723 0.102 -0.08250419419390131 0.7987465085825867 0.102 --0.06516980987887094 0.5731069879395522 0.102 --0.1112068510058544 0.5860554669947989 0.102 -0.750568385047341 0.4260581077910779 0.102 -0.630423519384844 0.9807279178306509 0.102 -0.2961517199168571 0.443415333978907 0.102 -0.3862335868387753 1.039748965479155 0.102 -0.363263025183105 0.9767547127402064 0.102 -0.4950026792783427 0.7673030412246689 0.102 -0.5614278660450537 0.9335070649951026 0.102 -0.3496468905598052 0.1678652874864015 0.102 -0.8383333799032833 0.6268197435455712 0.102 -10.31047279775486 3.933239562467382 0.102 -1.00039258465709 0.709967805350801 0.102 -0.7230988580837576 0.5464693343427854 0.102 --0.007934151574348723 0.0719812105839492 0.102 --0.08133474892798098 0.9865906082962393 0.102 -0.6656809530029256 -0.0955035869105168 0.102 --0.05092864954013983 0.9097994719759659 0.102 -0.6255324433570506 1.020432870319999 0.102 -0.2022523988259566 0.7230894479399892 0.102 --0.01399754614544161 0.9714205753615724 0.102 -0.4901071069585002 0.8671909165137515 0.102 -1.358226925610743 0.3194185900075628 0.102 -1.834963826004787 1.050486358494389 0.102 -0.05556159500145888 0.4591505522824137 0.102 --1.222772857151518 -0.900731950496335 0.102 -0.7800881246454796 1.258212241376241 0.102 -0.9718901846072465 0.3238015159922653 0.102 -0.4061666741002496 1.120925604584644 0.102 -1.075735178648527 0.7219691647220523 0.102 -1.118786508117866 0.7540957183078699 0.102 -0.9795148656548177 0.7836371570099239 0.102 -0.7254378441689715 0.5964693248632216 0.102 -0.2130356422022045 1.234568996654883 0.102 -1.051662661601616 0.9967500389244082 0.102 -12.89353131590317 -4.8489308382654 0.102 -0.4080964724018646 0.2371848847395779 0.102 -0.4923317787578363 0.3957730467236794 0.102 --6.080307060735974 3.46216612426033 0.102 -0.3949599505785821 0.9636459273665828 0.102 -0.2546910153855033 0.7220121939383536 0.102 -0.8099107127596135 -0.06779514825798177 0.102 -0.2675943350457363 0.2472403959735573 0.102 --8.588596095222139 -3.313620997272722 0.102 -0.5140160562628795 0.2289798156052534 0.102 -0.6105902024593746 0.837092784620129 0.102 -0.8591625928427012 0.344991095351516 0.102 --0.07228860709048199 0.5081775130071923 0.102 --0.1442234886104708 0.5025773335961105 0.102 -0.5104322609253019 0.8265252218886898 0.102 -0.2755395969874661 0.5451943971624486 0.102 --0.07565852791549441 0.9281736338183841 0.102 -15.11019341941139 -3.058106909361443 0.102 -0.4334616969065429 0.2743320370651561 0.102 -0.1934024059505877 1.103066164533083 0.102 -0.6619313059303737 0.7737726335860146 0.102 -0.660648839964418 0.8831797833428504 0.102 -16.59345360639814 -1.336978704682112 0.102 -1.061344415110165 -0.03803730060106053 0.102 -1.092682423178668 0.01190963306013584 0.102 -0.3797495193362944 0.8547759664085831 0.102 --0.05217933505340579 0.8057657309758457 0.102 -1.065752102240369 0.8069860948002751 0.102 -1.124063349018239 0.5168330407056529 0.102 -0.6963377578128984 0.01721530465007257 0.102 -0.6814302498698041 0.9606364435948332 0.102 --0.008871864128020797 0.02953567877689587 0.102 -0.270409917258399 0.5030838050629208 0.102 -15.40033462979208 -5.821501998293374 0.102 -0.4574833445454909 0.4307488982193713 0.102 -0.2730952194560979 0.8274886058755763 0.102 -0.6862620511223468 0.7351279776198281 0.102 -0.0722341682034556 0.5956004064431479 0.102 --0.08337118394728997 0.4511250974919089 0.102 --0.1228716502393357 0.4066994658010571 0.102 --0.2311043081193704 0.4184580215336213 0.102 --0.4436807691400644 0.4136461711535688 0.102 -0.4676839028146681 0.9708264088910729 0.102 -0.7273801307490629 0.9364102462244603 0.102 -0.7389118239426796 1.069635189143428 0.102 -0.03738762232017837 0.07788882772477575 0.102 -1.026792950850077 0.3321704159333674 0.102 -0.4101868231681625 0.3996366074865665 0.102 -0.139733247012159 -0.07237993715584343 0.102 -0.2369415651228638 0.6666064480036525 0.102 -15.16484388265159 5.839583633232047 0.102 -0.31730929774273 0.9554212557979309 0.102 --0.007253994152237891 0.8431950670683235 0.102 -1.057390073754877 0.5464331756335035 0.102 -0.5936315664963341 -0.05011334388656936 0.102 -0.6699054565685576 0.5707545479391903 0.102 -0.8028998568653978 0.3095345652256276 0.102 -0.1135398479006916 -0.1424584695117878 0.102 --0.006655755371792835 0.4999050177999331 0.102 -0.7085810094468168 0.8258452566770829 0.102 -0.3502932298938661 0.7966923645830922 0.102 -0.6875531536113261 0.4753839369311623 0.102 -0.8897104311845454 0.6359986142215711 0.102 -0.9558071262505454 0.8060703794694337 0.102 -0.1951643970414223 1.14569649335541 0.102 -0.5739500044374556 0.4872988952958242 0.102 -0.5565914683330232 0.8614814905119434 0.102 -0.4710270213197805 0.1630522340775509 0.102 -0.8533261882478824 -0.07087816537104753 0.102 -0.03867287962862603 0.4854954978276603 0.102 -0.5516476908565004 1.00416234251293 0.102 -0.8845966593402225 0.6778644296061221 0.102 -0.6875949229667788 0.09796653952348638 0.102 -1.076473287391416 0.1457147985182653 0.102 -0.4409480882130572 0.1429254450982702 0.102 -0.4921093830302619 -0.01653141201509982 0.102 -0.4941518808270228 1.005759202202424 0.102 -0.2491358504079852 0.3491559939833373 0.102 -1.04827546215493 0.8797543619825204 0.102 --0.002132297900053256 0.7656052949440219 0.102 -0.6223846270519473 0.004543267382008357 0.102 --0.07080867940044977 0.8590220923724369 0.102 --0.1139935127578038 0.8636619854523826 0.102 --0.01591715426726619 0.3220242148885893 0.102 -0.6295342702123716 0.7778243412773578 0.102 -0.6340244406110018 0.6518991401820092 0.102 -0.8689400801521971 0.9616925990430858 0.102 -18.60237076229318 3.669364701680282 0.102 -0.8146897273332527 1.031385642767551 0.102 -0.5594018173839748 -0.03075029134891504 0.102 -0.4210132304073821 0.740212137895492 0.102 -0.1633250282417406 -0.05123092103630654 0.102 -0.4526484654799187 0.1055249817119901 0.102 --0.1376012951931625 0.3247518648382184 0.102 -0.9509929871795086 0.4696292190429375 0.102 -0.03132596459360511 0.701682019906117 0.102 -0.7686355784042627 0.625837446730514 0.102 -0.3872984606576039 0.6262780667369109 0.102 -0.9111681188803343 0.8633907227229322 0.102 --0.2823419308121998 -0.3709663791169926 0.102 -0.2137836756509948 0.4663781818077437 0.102 -0.367341131928782 -0.05956360282948667 0.102 -0.1556317600865576 0.4922205547642893 0.102 -0.3634407567917324 1.002608573434556 0.102 -0.2505627416294001 0.06531960001886571 0.102 --0.01964502169065437 0.2574460882890261 0.102 -0.2106608932506153 0.3712694525099622 0.102 -0.8064868407311057 0.2720064611341563 0.102 -0.02669527886890338 0.6544717329105969 0.102 -1.01252819142561 -0.09095785568396449 0.102 -1.024581172593363 -0.1222846562976532 0.102 -9.756812981528309 -8.618252181231266 0.102 --0.06729308599335096 0.7346418746183947 0.102 -0.5275437810385646 0.1967782954578925 0.102 --0.133220867417717 0.8911005414529163 0.102 --0.2868175358158642 0.9384277539964212 0.102 -9.197436431569903 8.845195387196249 0.102 --0.1288621254240122 0.1570638258985378 0.102 --0.0007613467070235041 0.2191829964858343 0.102 -0.09117749272742171 0.8459625576424985 0.102 -0.3181753523239821 0.3550291179102957 0.102 -1.098762993501947 0.9105407926283311 0.102 -1.080656931095227 0.8800797476903377 0.102 -1.151600807487982 0.93956269901047 0.102 -1.19042366932024 1.028104761055352 0.102 -1.49064861153218 0.8038358266431456 0.102 -1.337348363098759 1.179305619294726 0.102 -0.3891786825053946 0.5877139623180833 0.102 -0.829589653467289 0.140216364702673 0.102 -0.9702309769057975 0.8800379334532565 0.102 -0.04108880974419442 0.8066236084262443 0.102 -0.09745923516954802 0.6813712685748461 0.102 -0.5787730844465494 -0.614565755452893 0.102 --0.1161710409628493 0.2311497449338443 0.102 -8.11411702685629 4.439847713277366 0.102 -0.5848713462129101 0.8704394627891168 0.102 -0.5212327146404416 0.3500199304493509 0.102 -0.5534521582777922 0.5576372227311269 0.102 -0.6264663938331227 0.3856468744154785 0.102 -0.9879315097676159 0.6755141870766952 0.102 -0.1479283820489308 0.3200160988904874 0.102 -0.1816181737024162 0.7472207663378865 0.102 -0.6043487523756825 0.8084666346819617 0.102 --0.0612377919985134 -0.03691143067853069 0.102 -5.55305150066344 3.265384206219555 0.102 -0.5409117117420346 0.6067359846242137 0.102 -0.9448490019440775 0.1114063048572106 0.102 -0.5872663826628346 -0.09030913078374472 0.102 -0.5589445439217784 -0.1166398885454689 0.102 -1.002384845165965 1.981013133995039 0.102 -0.3179922052915422 -0.07028673243165247 0.102 -0.317787562507166 -0.1177913982269694 0.102 -0.2781322097792219 -0.1459918553184506 0.102 --0.02404553925284935 0.6591610062117854 0.102 -14.14217179611502 -2.645664840649078 0.102 -0.2403653415143089 0.3106014708924817 0.102 -0.9182462939301214 0.9682892636667993 0.102 -0.3242272421513692 1.058230722295773 0.102 --1.960652016716924 2.245672179080432 0.102 -12.83072098779598 -0.475396801333224 0.102 -1.101483921996203 -3.610450515499013 0.102 -0.01349900275450435 0.5408574661317966 0.102 -0.2069666244116644 -0.05470049191251752 0.102 -0.8696454446768508 1.197550933635605 0.102 -0.9477589884132726 1.134979686423857 0.102 -1.043467874807026 1.176603131640895 0.102 -1.14144062859611 1.202907305609724 0.102 -0.8154618389924865 1.138884759787047 0.102 --3.152920139475147 -5.021445865619472 0.102 -0.344432624679255 0.5589506681958055 0.102 -0.5139306922033671 0.5373814478236136 0.102 -0.7659112150580285 0.38422020197246 0.102 -0.8610130992385829 0.8985420703576502 0.102 -0.4474863633508197 0.5612340315550201 0.102 -0.7098952476595963 -0.1324583415754021 0.102 -0.4200574712218868 0.4683660471165972 0.102 -1.035720974998757 0.06945146482910562 0.102 -0.6131920815171585 0.1713385948149994 0.102 -0.8737011424246018 0.3867729397077385 0.102 -0.006488166212006343 1.077073496644502 0.102 -0.6722569031397454 0.8108363272363001 0.102 -0.5202623040413086 0.2962143179525621 0.102 -0.6343479416088367 0.5120925738223182 0.102 -1.026306994432275 1.063188434273076 0.102 -0.9705059539501845 0.9849777089672392 0.102 --0.01485934210103668 0.5304364898708342 0.102 --0.9207699279572246 4.596093614652371 0.102 -6.094181034091901 8.826367892895284 0.102 -0.5736774966673399 0.2015689370712641 0.102 -0.5018061868942394 -0.1734649986655611 0.102 -0.8660519132440904 0.5028942061695596 0.102 -1.039826026265803 0.03303668405870537 0.102 -0.8213975165540918 0.6678100029355482 0.102 -0.9331238542380035 1.087861311688306 0.102 -0.8827209544423164 1.087849703291325 0.102 -0.8666178801094784 1.058775019247557 0.102 -0.6239331532600436 0.4831020572768259 0.102 -0.1761020402986858 0.03848078641639751 0.102 -0.2377240960761408 1.037854044101592 0.102 -0.7281790016853139 0.1878173389356128 0.102 -0.6976984673485559 -0.0409431263390654 0.102 -4.843987818423788 1.249011052193601 0.102 -0.6109005696468061 1.039183478521912 0.102 -0.9870608898083916 0.3702978593542121 0.102 -0.9954516190381952 0.3417572709015562 0.102 -0.955121428539 0.2634404125017757 0.102 -0.6523710556252318 0.1969981811255751 0.102 -3.711798427253298 8.407176000694143 0.102 -0.1423360349181074 0.3730295950012569 0.102 --2.758830998612175 -1.41254378660796 0.102 -0.654673491611956 0.2877495454756872 0.102 -0.5551290306796631 0.2950780999519759 0.102 -12.3764680803027 -1.65680586742222 0.102 -10.17236124911314 -4.739414429990718 0.102 -0.6579492636303785 0.1404508632040488 0.102 -0.5996800148935519 -8.776610839981936 0.102 -0.4666082946650604 0.2647052439651313 0.102 --0.02215168314506643 0.3710806023150403 0.102 --5.607590337641139 6.788048448080141 0.102 -0.8454557992768704 0.9772870635412844 0.102 -0.847023539162729 -0.008654493186159403 0.102 --0.04000538475347609 1.130856105821381 0.102 -0.5131668609777605 0.9490405693137539 0.102 -0.3839180592690516 0.6872105030130617 0.102 -2.667987018594946 -1.880790413483566 0.102 -5.788083844843712 -3.508307418038595 0.102 -0.627341513959971 0.4173776964725233 0.102 -0.4099149197343233 0.2660916206080295 0.102 -0.1206259226925528 0.00303797455871982 0.102 -0.1513148811528454 -0.001824509420299681 0.102 -0.05060862169198362 0.2532380604562761 0.102 -13.35819627894766 5.001988416913149 0.102 -1.094534493599473 0.2931221408852226 0.102 -1.070023914550199 0.257580848376207 0.102 -0.7963525571282927 1.0929132710792 0.102 -0.7977885490801054 0.5013957931553202 0.102 --3.289177629040401 5.478579818423091 0.102 -0.1425545957267167 0.2056834871185006 0.102 -0.8041765760288697 0.1808610804352056 0.102 -0.7308677894755559 1.008104358097292 0.102 -0.4427743566823515 0.9126811531036118 0.102 --0.07920030855195818 0.689478563129822 0.102 --0.0978793474452246 0.6473704926055626 0.102 -0.4680182642223155 0.6850387517796225 0.102 -0.09805220715239724 0.1792998027847269 0.102 -0.09788148067488313 0.4723894600308216 0.102 -18.49763646419143 -0.2169509420268083 0.102 -0.4928927671302147 0.469344611118068 0.102 -0.2826824932929448 1.018145321581911 0.102 --0.08384012493632009 9.094095129193063 0.102 -1.026328091069345 0.3927186190299379 0.102 -1.083043828148075 1.000955219729482 0.102 -1.127275675981047 1.008792265213064 0.102 -0.9602469020259662 0.7364467804453456 0.102 -3.803663314320053 -5.046231164599291 0.102 -0.1131264817472653 0.03251269370105841 0.102 -11.32949676557534 1.948621414602537 0.102 -0.112580887172995 0.8158857916937393 0.102 -0.1335587671411999 0.6916005337331925 0.102 --0.07184276556495055 0.1022622049822824 0.102 -1.019932918540774 0.4834914430501467 0.102 --5.435103366351435 -7.083590720649043 0.102 -0.04665112088307755 0.4164670688769883 0.102 -0.06691316194478764 0.8727622221631939 0.102 -1.084520278282409 -0.03810642586687297 0.102 -5.74231603763509 -8.896452806164858 0.102 -0.8198039357163914 0.9645112626241524 0.102 -0.33090549525937 -0.1445292732953403 0.102 -0.8138832213767417 0.7262586166270856 0.102 --0.04399370031616075 0.4545262015856635 0.102 -0.4843915793834516 0.106134863969827 0.102 -1.052578368682224 -0.092967772866698 0.102 -1.100609779747354 -0.1018625036570181 0.102 -0.8802543610765434 0.2471096921852769 0.102 --0.07594096748622516 0.4121210172155093 0.102 -0.377659765857675 0.4412077009932589 0.102 -0.1645501768294942 0.6627469857808735 0.102 -11.60009112561658 -8.583207491292246 0.102 -0.2955388849063094 0.5208718703040081 0.102 -0.9182783933430811 -0.02735009683491096 0.102 --0.04025768391015669 0.9829207825980718 0.102 -5.145179847830544 -1.257387062579628 0.102 -9.300477174958932 -6.972130180929619 0.102 -0.2230740403462652 0.5421731696380506 0.102 -0.7717521203371728 0.4442047101779642 0.102 -0.007056514129601477 1.127324595684892 0.102 --0.007190730781331936 0.1831387660138922 0.102 -0.4729613041637461 0.7426590433253472 0.102 -0.7457846766883769 -0.001649598503408684 0.102 -8.069202820635883 0.7503531524426386 0.102 -0.3799867319665278 0.732917169577155 0.102 -3.037712998091684 3.588369344864535 0.102 -5.512878267861892 4.896666961731214 0.102 --4.371711122637103 0.8887511037161997 0.102 -0.9699385273677363 0.06107994126649265 0.102 -1.023879431771022 0.8311600629556385 0.102 -0.9800101954538328 0.8291937418050473 0.102 --0.01643458198954833 0.7132422617351981 0.102 -0.3387085356414689 0.4768667584830653 0.102 --0.1279414980126923 -0.03005531670807146 0.102 -0.2730939862318934 -0.06096859540250959 0.102 -0.2479304004855231 -0.0904026196159796 0.102 -0.1399859285900693 0.8140584962052568 0.102 --0.04454853295372357 0.1301428730406784 0.102 --8.416876802167382 -0.1072003575579385 0.102 -1.085791577677225 0.6314520577547001 0.102 -0.2448611087140054 0.498032073419522 0.102 -0.9462725059932589 -0.008339134590113853 0.102 -0.2702247590135054 1.101440947658945 0.102 -0.2752584149473897 1.145067773996366 0.102 -0.3314015485063926 1.168539661362455 0.102 -0.2433133702040717 1.077172316492726 0.102 -0.002316596242864619 1.044467281860855 0.102 --0.06428455155537804 0.1608653208438979 0.102 -9.162212097768252 6.129072255299041 0.102 -1.905205066715565 6.376133050286416 0.102 -0.293648255743081 0.7830325583728931 0.102 -0.341412997887611 0.3928651762911161 0.102 -0.8217065923158258 0.7868033196679532 0.102 -0.7817714162382776 0.7482038467713013 0.102 -0.7343953518295311 0.4861493951143955 0.102 -0.7432743638013274 0.9796263040088208 0.102 -0.3007394984078895 0.6494713084749452 0.102 -11.69224324190875 8.473678539992545 0.102 -0.2270313148990362 0.7859868386162395 0.102 -0.09649119675956956 0.5244653179120077 0.102 -14.77160973419899 -8.430713613565722 0.102 -0.02846940520260074 -0.09345931956754226 0.102 -0.5350621877381478 0.4090251327961029 0.102 -0.1043317206553268 0.5564838234158387 0.102 -0.8960513340122334 0.4500328000140459 0.102 -14.69854631598399 8.607570077863189 0.102 -0.0002702067454248556 0.1543156116211969 0.102 -0.522952370941922 0.9982515509975326 0.102 -0.9370828450661463 0.3590634982584209 0.102 --0.09127884580776793 0.7424730143842739 0.102 --0.1231965811803389 0.7752864468757049 0.102 --4.469599105973391 -0.9516632153891424 0.102 -0.3073794046268372 0.6985601473543848 0.102 -0.7022239802721044 0.2895622576563418 0.102 -6.186904874966509 -5.008311603629976 0.102 -0.9013486405875903 0.4216335738762826 0.102 -0.5170017562533084 0.6540201871252501 0.102 --0.04760900751753789 0.8770065019035015 0.102 -1.053596147858211 0.3744538916035574 0.102 -0.4941813071270096 0.1616002166470538 0.102 --0.02504556562978768 1.02637619163125 0.102 --7.118635329777833 3.896241938235404 0.102 -0.4259077959876741 0.2160123453614377 0.102 -0.3993274243633725 -0.02845817838406272 0.102 -8.350571315194673 -8.882748250102891 0.102 -0.8844853449029961 1.034446398984916 0.102 -1.001278562619251 0.9120492222441894 0.102 -0.7387676772127018 1.043445702447455 0.102 -0.1223393906486654 0.4367341840134776 0.102 -0.3575502286958591 0.02983793956670396 0.102 -2.528120433270803 2.766439179203274 0.102 -0.4885105250334666 0.5869659972865261 0.102 -0.3377132643937532 1.090326319860066 0.102 --6.999592642543465 -3.290547340605555 0.102 --0.1897436443905243 -2.287925696713677 0.102 -0.7871207691816673 0.5724396144899644 0.102 -0.5815007462325648 0.9794060223695045 0.102 -11.45534921028572 5.455712839215315 0.102 -0.7278516818791119 1.104857874799885 0.102 -0.6632282349206788 1.10115354331699 0.102 -0.6331894957812603 1.114448100681288 0.102 -0.7545467176909738 1.149997304026987 0.102 --0.6610384143653931 -4.236440851998732 0.102 -0.4779756873726124 0.2297436987939148 0.102 -0.344786914773428 0.6817715432254975 0.102 --0.05476703892883396 0.6161308240309139 0.102 -0.4127386771928195 0.5332255838671877 0.102 -0.07239658655364946 0.3999722830057872 0.102 -0.5989110832837859 -7.18218388142491 0.102 --0.07111796976386969 0.2169556890195523 0.102 -0.1369452383302344 0.600244144049522 0.102 -0.05551700831801172 1.1380786287988 0.102 -4.198485056879933 -2.184378830536302 0.102 -18.59798902706955 -2.303262211948983 0.102 -13.30677654652268 -6.884208471716943 0.102 -0.3981524965669228 7.006356701919555 0.102 -0.6760161211080011 0.4234305039274547 0.102 -1.091411912651119 0.3792869015722063 0.102 -0.9137222884794286 0.7567829733067774 0.102 --2.05235208786081 8.537713520274719 0.102 -13.22765488969345 7.001168637314983 0.102 -0.6583172099278917 0.05858013904902042 0.102 -0.9965080238039919 0.9548700003586629 0.102 -0.06971240482567174 0.3598560619243789 0.102 -0.4745139027871554 -0.02925212376917946 0.102 -0.1024740093574014 1.070671607827326 0.102 -8.113598443404653 8.979343352304136 0.102 -0.08303136231215165 0.1322760384691584 0.102 -0.565212907726912 0.749692089906393 0.102 -0.4702885189726965 -0.07935279834243082 0.102 -0.5404008207474761 0.8199013853766618 0.102 -0.1008538528794393 -0.05674733806477878 0.102 -1.229852704196881 0.4268315839174237 0.102 -0.4228398794892759 0.6925858526821342 0.102 -4.912155078911821 -6.567510827784501 0.102 -0.3651495862143665 1.079167067982006 0.102 -12.05729211786182 -3.752755959193452 0.102 -0.1230792584699414 0.2851832167939404 0.102 -0.259533910541229 0.1184359156416449 0.102 -15.1861785737414 -6.899722301656356 0.102 -18.4214845457514 8.918469509492601 0.102 -18.41943416566018 -8.912701382176147 0.102 -0.5307023811637924 -0.07664984700712844 0.102 -0.9709808443888577 -0.0534845749708632 0.102 -0.4223292660874967 0.5935120136260477 0.102 -0.7844735169245715 0.03465170266504688 0.102 -15.39426707106431 7.074667747980039 0.102 -0.7558900006735531 0.2599861481754417 0.102 -0.2097895888091999 -0.08544409806399536 0.102 -17.0080697912243 -8.950981996144121 0.102 -11.12530697224867 3.55332827600458 0.102 --6.94439069005077 0.1782940624412575 0.102 -0.3790794323885485 1.152418888241273 0.102 --0.03105766017077963 0.06840391850197525 0.102 -0.2700288181680386 0.5991148458254358 0.102 -14.00906792152125 2.790363095183508 0.102 -16.9191201132098 8.785405009698522 0.102 -0.7132817692799807 0.1109858712290067 0.102 -14.69072956952309 -0.7563442050121202 0.102 -1.06023927832064 0.08624104387034247 0.102 -0.3566182360593723 0.3733515298561274 0.102 --0.02203640733693435 0.8165330623677849 0.102 -0.7834179893660873 0.9979520711643767 0.102 -0.1022205943836349 1.12857214122803 0.102 -0.3611999613005091 0.2185350338458335 0.102 -0.4527259743435194 0.881993265179689 0.102 --5.012130582419204 -8.804129639032414 0.102 -0.1060469215488791 0.134482887912318 0.102 -0.3859354015546601 0.08089917102226928 0.102 -1.58539929870436 8.286900715002799 0.102 --0.006505352833332502 0.4224970637731558 0.102 -0.6155712928959808 0.08330648329085681 0.102 -0.7553935763033287 0.1354846786410373 0.102 --0.1111093869270691 1.025836335314449 0.102 --0.1165888727324544 0.9889146949875562 0.102 --1.563969652280452 3.816720277504555 0.102 --0.8950653241369676 -9.256297637515212 0.102 --0.03738102446867024 0.01690888955932924 0.102 -0.7331651854266967 0.1364036428332207 0.102 -0.9781657767986123 1.026509269006437 0.102 -0.9380477717816086 1.032284740363962 0.102 --8.969145991803218 2.303531228088473 0.102 -16.72817855907535 -0.3476190575030464 0.102 --5.287621791870344 8.615970166628312 0.102 -0.9353314112846793 0.05485557899422425 0.102 -0.8729741015641737 -0.03024663696772135 0.102 --0.09818213863295451 -0.2765826237817327 0.102 -0.7529451382092733 0.8855152412985247 0.102 -17.06140280990951 3.869924012444743 0.102 -17.39753651882037 -3.671603645233377 0.102 -0.5439277593257019 0.8872887349439944 0.102 -1.169744382107039 0.1236405233589768 0.102 -0.6027177050819134 0.9230428020788802 0.102 -0.9048534887337165 0.3904167301062834 0.102 -0.0630445170937233 0.9746965035895648 0.102 --0.1286183319309165 0.6211939547232389 0.102 -0.07193220828844619 0.00195448188055383 0.102 -0.4351322618500898 0.5360364570463624 0.102 -0.1533087685926942 0.05562104980734781 0.102 -0.6755460189591462 -0.01290140104975221 0.102 -0.6552331201227911 0.3732006045846148 0.102 -17.02753128205546 5.255703031182004 0.102 -17.01749399926164 -5.030080686408212 0.102 -7.530662631623374 -7.228788491402264 0.102 -0.8021401334348802 0.2339247604048569 0.102 -0.5666499802295513 0.1435345597185519 0.102 --9.016808868176343 -9.009591369158034 0.102 -1.225533874255258 0.2712995766479548 0.102 --0.01415323812554527 0.2974302486302116 0.102 -0.2079398395356839 0.6510895649370273 0.102 -0.2270215158791463 -0.1964421052333817 0.102 -0.3357270621643579 0.7446355284450332 0.102 -0.6943461643903416 1.07804381064484 0.102 -0.454505091116418 0.04751991319322953 0.102 --8.896234009904145 5.78347436785122 0.102 -0.5864751224619376 0.3112728477302901 0.102 -0.9575474175244634 0.1895299270463251 0.102 -0.692468182238742 0.9286146072882674 0.102 -0.769344144435583 0.3370938944423672 0.102 --9.039951936311823 -5.218151386330006 0.102 -0.3655511183905015 0.5686990212929688 0.102 -0.7003092014635409 0.4513895437019537 0.102 -0.8715644970555834 0.8258426847910154 0.102 -0.3933772425042009 0.510159747069979 0.102 -0.9935035218320343 0.2360371386609787 0.102 -0.6075925097427929 0.6175290189203522 0.102 -0.4088535486184248 0.01158562574216388 0.102 -0.650522009082029 1.023482700957302 0.102 -2.343192050485927 -6.069745166412617 0.102 -1.457989173644793 -5.287093663708224 0.102 -0.9267419734180588 0.8300449106161081 0.102 -0.6502940682120677 0.4199863226134086 0.102 -0.6538558009134164 0.473688379270087 0.102 -0.002630515817952957 -0.001518672449347351 0.102 -0.06542269994597025 0.06563394384444664 0.102 -0.3667490209292106 -0.08541827504943264 0.102 --3.79799351297062 -6.911172779409297 0.102 -0.1982254766804961 0.05957296290752206 0.102 -0.8736775004751195 0.3204506812072919 0.102 -1.003534030176824 0.5501209977966393 0.102 -4.132632611523814 6.927668972318514 0.102 -0.6833224462673008 0.3332829545529836 0.102 -0.7769564936650337 0.7000867985170508 0.102 -0.8234982463904461 0.8301280336108882 0.102 -0.9047422243460602 0.1989355189511278 0.102 -0.1056095797103991 0.09037714909721027 0.102 --3.752649038167137 2.6553698087938 0.102 -2.468884949648091 0.0611396296900274 0.102 -18.89695395873721 0.977410487328079 0.102 --7.076564212635787 -5.620357680608281 0.102 -0.5662379976865614 0.51739539481338 0.102 --1.398612234730285 -3.675061758238208 0.102 -0.6812350263505003 0.5908170552502476 0.102 -0.9680498557653781 0.3910841284487108 0.102 -0.4024951762143575 0.1812926913495063 0.102 -0.02478423517840279 0.8324419415451347 0.102 --8.700234047325921 -0.8582654333339397 0.102 -7.376888403701322 7.14486502480733 0.102 -0.8771808308726829 0.8532676337067611 0.102 -0.7736851522446871 0.1050185642428197 0.102 -0.4389698427136212 0.6448557309444618 0.102 -0.4916223625315773 0.3254038300799172 0.102 -0.53980631609042 0.3417281487445762 0.102 -0.6750875708515418 0.6130804698887162 0.102 -0.9920028470484129 -0.07118674455319819 0.102 -19.03078005244678 5.729271992141632 0.102 -19.04700140609339 -5.18422583844242 0.102 -0.503798554355536 0.02055114646468435 0.102 -0.1020009037913608 1.012001759360988 0.102 -0.105364807108276 0.2761993282830917 0.102 -0.1407582238302598 0.7234007731197842 0.102 -6.560537771527977 5.461025278096884 0.102 -0.9113919594860077 0.801631330270257 0.102 --7.204586037976964 -1.581117072392477 0.102 -0.8189846015968643 0.4841159591486797 0.102 -0.6857635721175449 0.5072624700940339 0.102 --0.02287850111904474 0.1107335884223664 0.102 -1.081387321586655 0.9313426609125828 0.102 -1.096018192659085 0.9471356431199619 0.102 --0.174332795538684 1.054725027300195 0.102 --3.702911600069291 7.216263245147602 0.102 -0.4941169306993506 0.8939318639398963 0.102 -0.01647716211967467 0.6051236430237391 0.102 --0.08320412306078734 0.7922485990184993 0.102 -0.619819907135793 0.6561803974925995 0.102 --8.95235479843314 8.951388040648581 0.102 -1.03308739832508 0.81594810254066 0.102 -0.8400131691925863 0.9200540131256196 0.102 --3.07794935955058 4.413825069938697 0.102 --7.092051875282392 -9.091538359592768 0.102 -0.0810309780778624 0.3039135377302608 0.102 -0.02754634645036845 1.024546076809591 0.102 -13.63244404619177 -8.862498467567439 0.102 -7.389827339393486 3.448014334790996 0.102 -0.9519699418236938 0.9266514249404063 0.102 -1.017832344697392 0.2538979755407149 0.102 -1.017360093488478 0.2297769857400618 0.102 -1.013164425062859 0.276701344121439 0.102 -0.3049997810818056 0.7371662372459358 0.102 --0.03587315264411105 -0.09948868043591881 0.102 --0.1425938179961313 -0.1654721573384506 0.102 -13.58153377398454 9.131333670110626 0.102 -0.1631577045053132 0.2608277267638668 0.102 -0.9208036900444367 -0.05056352207360548 0.102 --7.168902542434772 5.708398010404998 0.102 --0.02949624250384933 0.6867413755327112 0.102 -2.229670293473725 0.649924786734848 0.102 --7.57243979979497 9.083822508975896 0.102 -1.183057338574771 0.5469508879183971 0.102 --0.08035113522046188 0.3214642350868767 0.102 -1.027769354514156 0.4462952025168609 0.102 -0.1829912072454788 0.3585418294726458 0.102 -0.9415259469266852 0.8781225724432127 0.102 -1.031243785429913 0.1639592139966146 0.102 -0.04901815169032636 0.1730953693218751 0.102 -0.8848122733012883 0.5505799531910686 0.102 -15.28006222426211 4.673174548781168 0.102 -0.5883363640187378 0.04218666670558539 0.102 -18.76325566592306 7.565263660579766 0.102 -18.81516299512906 -7.262685442951933 0.102 -14.81485241656946 -4.863916288806903 0.102 -0.1739708896724436 0.8429696202124655 0.102 -0.9087019360063402 0.1449978713073742 0.102 -0.4608852929366657 0.003928937213449783 0.102 -0.4585034834474672 0.4932404763518768 0.102 -0.972613089796166 0.2482412673308733 0.102 -0.458341729800554 0.3300408959729098 0.102 -0.2090225962978356 0.3993103971695504 0.102 --9.064680639622029 -7.058329762177194 0.102 -0.4031457384964845 0.3309575052864054 0.102 -0.9664622002777717 0.1449150265588766 0.102 --0.06757868144583207 0.4782387858623861 0.102 -0.6354727700103043 0.5872519411511637 0.102 --0.08104371617211059 0.04173784895015838 0.102 -0.4961940531009004 0.3637120050153329 0.102 --4.940015814107675 -5.139603761477398 0.102 -0.5548452027451587 0.00428417741906361 0.102 -0.9885810570751437 1.046679079033384 0.102 -16.7504402890616 1.751270420685172 0.102 -0.664421995151687 0.6853976945107698 0.102 -0.8101361701266893 0.6394299969455643 0.102 --5.030183414648508 -4.138414420243159 0.102 -0.7406670983896676 0.735195752693676 0.102 -0.7332294660873971 0.7869544347187816 0.102 -0.7711150599135003 0.8120131716712912 0.102 -0.2365329538015411 -0.000902499264988168 0.102 -10.53174981496855 4.916724981611503 0.102 -0.6329714141676138 0.7259030888627606 0.102 -0.6104409942135109 0.7123596562230315 0.102 -0.3669054594194435 0.01382326890438412 0.102 -0.5861186261947646 0.6126080208534365 0.102 -0.7544133570009266 0.06684777920567607 0.102 -0.40371218606126 0.6482827706202968 0.102 -0.3714254612309222 -0.03099009207332511 0.102 --8.925961002399928 7.429470027023438 0.102 -0.5890397024952622 0.006608820823086418 0.102 --2.103291825842652 -5.727969340582843 0.102 -0.7931742464725996 0.720653756498439 0.102 -0.03725886376413094 0.2159434033588379 0.102 -0.04462928004370344 0.5073961697824552 0.102 -13.24890934475769 1.506527929270592 0.102 -1.029279608439611 1.019651688791255 0.102 -0.03214648805328973 0.124698982875202 0.102 --5.237491057039732 4.970733773195158 0.102 -0.5359619813215855 0.4524049609625164 0.102 -0.2494597236244646 -0.0385719614697369 0.102 -15.06867403437387 0.85971043855255 0.102 -0.4311688740087568 0.4275875955488972 0.102 -0.01246604832058371 0.9776080262676435 0.102 -0.7873108241964366 0.7912975204796228 0.102 -0.4088379912117455 0.3715722801512417 0.102 -0.8657500168529627 0.1500111649952977 0.102 -0.8488352674795242 0.7833312180426956 0.102 -0.4162553988037647 -0.1040965262374103 0.102 -17.18932341237749 -7.231329591803869 0.102 -1.011920476923888 0.4313082721595836 0.102 -1.018618822370959 -0.0221377629503469 0.102 -16.79100232173981 7.785856471459351 0.102 -0.989151707700598 0.01455270046259908 0.102 -0.7349839197752539 0.8410295118911643 0.102 -0.9334045828556722 0.2069692483253921 0.102 --1.492556866058295 -7.436603695512365 0.102 -6.960624080348997 -2.988575919111355 0.102 -0.9268461423897321 0.159598176333844 0.102 --0.0239106540699136 -0.03668290743686707 0.102 -0.8530761957988938 0.438852568238192 0.102 -0.3028162853139841 0.02103344571043896 0.102 -0.07785432736935233 0.5696614287423029 0.102 -0.3043679711223302 0.1287059999153282 0.102 --0.04647081935578572 0.2631136383535668 0.102 -0.8141384780514639 0.3522558330106528 0.102 -0.7255752500473048 0.3769889904028764 0.102 -12.03150665588722 -5.596922415942128 0.102 -0.5189644086691316 0.07336862458119527 0.102 -0.7595164251274202 0.954754429876894 0.102 -0.7833067545579936 1.028603494195982 0.102 -4.929461071688761 7.175494915231885 0.102 -0.5699994185480781 0.05829863853952297 0.102 -9.825261128358054 6.859939189421799 0.102 -0.02560299638269922 0.2914497933646706 0.102 -9.749687521404796 -7.634027141291129 0.102 -11.71356129063448 -7.569597626823379 0.102 -0.9702609662094908 1.09123813341853 0.102 -1.111654883283389 0.7908251965880687 0.102 -1.092197254910052 0.8267637561582694 0.102 -0.02000582138705569 0.3473484014396647 0.102 -5.350357477444097 -4.3896529476343 0.102 --3.848518463452238 -2.755248739628607 0.102 -1.000838410664272 0.7847722460062792 0.102 -0.9590718025301036 0.7593069489579871 0.102 -1.04589944530298 0.1965064834033628 0.102 -0.5771228767093722 0.957114260386923 0.102 -0.5733121992708163 0.7760783642017133 0.102 -0.05686927835124279 0.7828010117706313 0.102 -0.5632306274463773 0.692864916656856 0.102 -0.7131303291468573 0.04118358926145071 0.102 -1.09789819266236 0.1308901706292505 0.102 -0.08669436658803811 -0.1029347622597555 0.102 -0.06206733075056883 -0.08141540605156991 0.102 -1.041834712944733 0.9340490213756204 0.102 -0.5015164884018047 -0.06869592189220158 0.102 -0.1021365694485916 0.9481966225183865 0.102 -1.05585697309764 0.3100745629547401 0.102 -11.89632440722858 7.650256222315119 0.102 -6.540139402165726 2.554473256331192 0.102 --3.366343199876222 -0.8862013042997157 0.102 -0.03696915027882158 0.03006569364700135 0.102 -0.213882361417193 0.002810370445846375 0.102 -5.610824252428994 -7.637744726980062 0.102 -2.183663320373211 -8.805800127660415 0.102 -10.3681628697527 -5.628198377902726 0.102 -0.8493368201354846 0.5768402713546541 0.102 --6.013594234941471 2.294936156625182 0.102 -0.987940790811123 0.1475816612127976 0.102 -0.7230958273639145 0.3529613151584845 0.102 --0.03938710114448021 0.3595992390899448 0.102 -0.9084484750029033 1.090654443972376 0.102 -0.9066466563216684 1.114269192714835 0.102 -3.901965066856954 -9.071459703238498 0.102 --0.07977499425801211 1.01352461421728 0.102 --0.07483437376322585 1.032490096867786 0.102 --0.01208652956875002 -0.08745066099113932 0.102 -0.179764715232278 0.4952988944321961 0.102 --0.03913360935497192 1.094320233851281 0.102 --0.06760849473464375 1.125568517270302 0.102 -0.1298006120831059 0.1334561089325895 0.102 -0.1292480585763753 0.1055747567149897 0.102 -0.5688316681991381 0.08981627335813255 0.102 --1.3653938692432 5.529109627295134 0.102 -0.5545978333931786 0.1895090941970113 0.102 -0.6940671348602553 0.7660718553201 0.102 --2.546310380295931 -4.00754658322367 0.102 -0.5101376664397601 0.7027618830967785 0.102 -0.7263789656889041 0.572992289303962 0.102 -0.3816761702590529 0.7994911243316192 0.102 -0.9865753485522872 0.5239982415744324 0.102 -0.8302956058318139 0.108741828450999 0.102 -0.07932685207735857 0.992319372369576 0.102 -0.3314554758109416 0.5855160944241764 0.102 -0.1442116526811552 0.7827250242541406 0.102 -0.08454196382068954 0.07808003883127633 0.102 --0.05061357014027996 0.754580732028406 0.102 -0.3124247354113096 0.3728805951579366 0.102 -0.6827214419895355 0.1568001131624461 0.102 -0.04501316197755686 0.3074619649274806 0.102 -0.8906777898925 0.9772562625841827 0.102 -0.9861273449336105 0.4894551014401529 0.102 -0.7489776451390738 0.1954473323875203 0.102 -0.9996416021841076 0.102738664985074 0.102 --4.237829873228464 9.030401646331425 0.102 -0.7038976050221394 0.2641171018301346 0.102 -0.7276476967562922 0.2361131595123482 0.102 -0.4601453622222347 0.3644991836495626 0.102 -0.9810721402624299 0.2074899420566776 0.102 -0.6127626182973894 0.2281479620594308 0.102 -0.9295325116824553 1.061962435274558 0.102 -0.9338975063053505 0.4274098575409592 0.102 --0.03717489759728804 1.049806802068362 0.102 -0.738653915867962 5.161017295955331 0.102 -1.0691404987872 0.2083878117496212 0.102 -0.2792441354345366 0.06890240262984412 0.102 -0.3200551847514397 0.07630541095651899 0.102 -0.1860250158207922 0.4381962326324096 0.102 -0.5913431960025952 0.1416967141288151 0.102 -0.05559458342801599 0.735538496944479 0.102 -0.3023812366205527 1.003354442130112 0.102 -7.384616960091388 -1.244968404920535 0.102 -8.422702140148312 -0.4430170141917182 0.102 -0.9500898278833376 -0.06583641971215551 0.102 -0.6231168148693313 0.1005840716804102 0.102 -18.83383125928967 -4.016313826437042 0.102 -0.09166353017765334 0.2202853755108913 0.102 -0.128942717609249 0.5403882046793547 0.102 -0.8543526926950883 0.4005828448101346 0.102 -0.0171221392492994 0.4060099791706107 0.102 -1.073993347861367 1.053176642232077 0.102 -0.01338638099134519 0.6358805756755967 0.102 -0.6813922352609506 0.9898142406247397 0.102 -0.05012383315445799 1.024989161077379 0.102 -0.06640074277352953 0.6313492116406031 0.102 -0.9058963906732759 0.9152625338686355 0.102 -0.8698879723129869 0.1088904868085696 0.102 -0.8292084053519876 0.2930894384998498 0.102 -0.86795024018602 0.2720756271288048 0.102 -0.0834779141218728 0.742453800583566 0.102 --9.081170668528479 4.667204751111712 0.102 -7.497686421696209 -4.842413368229504 0.102 -0.8370179782356616 0.5351123295973088 0.102 -0.6031863541782071 0.2693480137550385 0.102 -3.612971459173726 -6.272870124824426 0.102 -0.7490299066832999 0.3990453582335406 0.102 -0.3264400366560094 0.2562565938492498 0.102 -10.84101300089669 -0.2322141558392172 0.102 -11.78289399773971 0.1516942202583183 0.102 -0.175253143674001 0.1578103030681796 0.102 --7.31536681824792 -6.930909018102309 0.102 -1.003039345222381 0.6186884384641483 0.102 -1.089731856600176 0.06603009839747301 0.102 -0.2784269024848119 0.473417751876888 0.102 -0.9634774249375047 0.5972167297858597 0.102 -0.1678478003433928 0.08190016759681264 0.102 -0.7919961989792619 0.9184836421375906 0.102 -0.7321222879412255 0.2961613862979245 0.102 -0.6407661792967565 0.3094989081166806 0.102 -0.007278413114141952 0.8830510607759713 0.102 -0.04174278912097008 0.8927836634976829 0.102 -0.4116636680621014 0.2860644147854046 0.102 -6.018466242965236 1.305292329129989 0.102 -0.3871109905577804 0.4647780708117107 0.102 -0.5422246284296148 1.047312546800836 0.102 -0.6496276729617307 0.2498445434961026 0.102 -0.8778840238783504 0.6993534965090882 0.102 --0.6444655385018376 -0.3878546959295998 0.102 --4.661378411900478 2.941256834315369 0.102 -17.86671943622922 -2.367981222352028 0.102 -5.714990648118173 5.775467597157624 0.102 -0.442178626483336 0.8951108020762419 0.102 -0.8913684080395122 0.08988643024537521 0.102 -0.9332373988432929 0.6397614138071139 0.102 -0.9421356075781284 0.1736404950528249 0.102 -0.5759880457314177 1.158110486151142 0.102 -0.05205439008721122 -0.01840760434831221 0.102 -10.63079925387331 -9.126759462894075 0.102 -12.72523548098331 5.887753772484224 0.102 -4.718531615443069 3.110264678789948 0.102 -0.354172280386753 -0.007649922238552074 0.102 -0.03602551984816917 0.9330727616637122 0.102 -0.04680867786254499 1.07198931889743 0.102 -0.1809028063030811 0.1333739854040154 0.102 --0.1429222411017557 0.3700717285996447 0.102 -0.6818136414277201 0.9020095414503342 0.102 -0.8172993354468527 0.3976369681244859 0.102 -0.3420640132502837 0.5386195789766295 0.102 -0.2920648854199123 1.076284020257948 0.102 -1.004855541498108 0.1749234864154162 0.102 -0.6981594265843706 0.6872249890884993 0.102 --7.212420508988012 8.045209990184555 0.102 -0.5144167350900751 0.6793252771761668 0.102 -10.48934540563413 9.072453770032727 0.102 -0.1120794737261226 0.2326896215838478 0.102 -1.021609508701469 0.04988015829487978 0.102 -0.1929130062169757 0.6071821480016169 0.102 -0.1689252527791892 0.6924982028305972 0.102 -1.088097261752415 0.1958328525810552 0.102 -1.067433454405025 0.8579223458533513 0.102 -0.3171034511894687 0.4252362573899063 0.102 -0.1085120610786532 0.4868187383882088 0.102 -0.1208653791666031 0.3816066813040018 0.102 -0.1045112338186724 0.4129365364656201 0.102 -0.2131250533851844 0.9289573962171532 0.102 -0.6249563408874617 0.1514814203032204 0.102 -4.665231985335912 9.013110318299452 0.102 -0.6234088810368175 0.5342498603202435 0.102 -0.08878698015013824 0.02780985284721032 0.102 -10.18172160464222 -2.294135861293926 0.102 -0.1203676515216077 0.06819648870665564 0.102 -1.053626961682059 0.7108235230556911 0.102 -0.3005945606446067 0.5686303587316043 0.102 -1.05908898900014 0.5627799329157104 0.102 -0.7548138832653131 0.5000219995761856 0.102 -0.2720957024308547 0.3954705919813528 0.102 -0.4617445886121971 0.6626084027524232 0.102 -0.5393316085367139 0.124686562920557 0.102 -1.070690697390716 0.229053677578038 0.102 -4.121502592874818 -7.074023478201917 0.102 -0.2049024474082204 0.9922585752979434 0.102 -6.720055167685296 -0.1145080980664919 0.102 -0.3612468883259021 0.301733241387108 0.102 -0.8678324878982959 0.01882340858931587 0.102 -9.969699604546133 0.7420483545891221 0.102 --0.221204151553616 0.03461792496447647 0.102 --0.2210175621700569 0.1394002899578408 0.102 --0.06142296861451493 0.3535211465557462 0.102 -0.8810807414453579 0.1881878194868439 0.102 -1.064861594693376 0.6185326336641409 0.102 -0.9451643353828326 0.5607683083047124 0.102 --0.01947667773135963 0.8643430484203641 0.102 --0.1077612421892627 0.4691067673778803 0.102 -0.5365133415207521 0.09042605058578772 0.102 -0.7734974196165114 0.3585896097952639 0.102 -0.2518323890983825 0.2232611660489309 0.102 -0.7206371394605589 0.6428392950958751 0.102 -0.6218346930472139 -0.1056032809843973 0.102 -0.4766625055597168 1.149519470337633 0.102 -1.071840193006725 -0.007428639907918657 0.102 -0.2323029214724864 0.4185239650421395 0.102 -0.1497900688809868 0.4478692849770127 0.102 -0.3342379763880028 1.004364827769733 0.102 -0.01335337926371551 -0.05907690108589859 0.102 -0.9613725881672025 -0.03181052316939598 0.102 -0.5898617359196907 0.5746456788654744 0.102 -0.1707456354225968 0.6161689768873962 0.102 -0.5040843025655692 0.1886288889266448 0.102 -0.3479911422714715 -4.265658930407669 0.102 -0.4886661263980786 0.5302479447181743 0.102 -0.5276777541762442 0.7354677395592564 0.102 -0.5494645678859058 0.7328272839535966 0.102 -0.4207925746348639 0.1610429908387014 0.102 -0.415827256658597 0.0503496820231674 0.102 -0.5420473789321463 0.6303165000777093 0.102 -8.005307534451687 -2.455486032956304 0.102 -0.7187040071176692 1.076739620020753 0.102 -0.2927164612553009 0.7460744442225771 0.102 --0.02158255670135498 0.05148790574964324 0.102 -0.484578070491905 0.6464618960455326 0.102 -0.5041500588719929 0.9234843698274127 0.102 -0.5259281169397728 0.5100484490252594 0.102 -0.5033512490288007 1.072873413712151 0.102 -0.9224720961337151 0.2695783792733957 0.102 -6.971270900935791 -5.607655875564652 0.102 -0.5792048189626421 0.6511063920148064 0.102 --0.05630573904725512 0.3046722966222289 0.102 -0.1995097940246118 -0.1188418903929021 0.102 --0.1989217947100105 1.210769634515655 0.102 -14.60601639089025 6.60570862899085 0.102 -0.3518243397891815 0.9602586254014489 0.102 -3.6839492739191 7.38858962733042 0.102 -0.3350890229932071 0.7808419590061806 0.102 -2.528805900150032 -7.833611317133697 0.102 -1.002525971371819 0.999194949600904 0.102 -0.8682625686495656 0.8028198840980374 0.102 -0.9007161851772197 -0.0821945489094231 0.102 -0.8704020829636943 -0.08378760116080614 0.102 -14.55565317644387 -6.251254947506681 0.102 -0.6775832384467291 0.3932619500724086 0.102 --0.0265207876264709 0.5122155335126174 0.102 -1.051223393128287 0.1309590278476413 0.102 -6.452841471121585 7.591666287070527 0.102 -0.3834732301520445 0.2270347982166172 0.102 -0.8248640484462437 0.05383247823754685 0.102 --2.064346139744897 7.513783014457102 0.102 -13.06080052593754 3.89444318666304 0.102 -3.925268724739349 6.224421570470003 0.102 -0.8384563819398991 0.6790659764134204 0.102 -0.5493856171170413 1.076638239974956 0.102 --2.339481339615408 5.916695542171101 0.102 -0.3082442348589437 -7.944874531379142 0.102 --0.2726662561498766 -0.1567451563504194 0.102 -0.009699972819629971 0.4676615513162708 0.102 -0.1667032960308696 0.952170374097103 0.102 --5.685459509688821 -6.2641055577704 0.102 --0.05256314495885135 0.08230055787741995 0.102 -1.029920136791392 6.14053190739085 0.102 -0.5615009714336004 1.022765029355595 0.102 -0.3258523092952243 0.8292625514722564 0.102 --7.893219515521899 2.05266051447312 0.102 -0.9947754145309584 0.5823220794906958 0.102 -0.7599510353993397 0.6614727521327601 0.102 -0.8284126389811197 0.8660432054145413 0.102 -0.6131234172893849 0.5657805688307125 0.102 -0.1990082705881299 0.03594050025359753 0.102 --0.1199101890242685 0.8330133059792253 0.102 -0.4753925269113144 0.4812037122163623 0.102 -0.5525103431221825 0.910621951097264 0.102 -0.5164707403976049 0.7659622716176092 0.102 -0.8698413715734653 0.7231779651492884 0.102 -0.6610656060199087 0.5214233594768277 0.102 -0.9076447416164252 0.5421933542928815 0.102 --6.099291128574844 -3.220529528805549 0.102 -8.2432306531168 2.561315763497538 0.102 -1.065963561728545 0.983048006564918 0.102 --0.06142139822698478 0.280753486492838 0.102 -0.1162479816653897 0.6328674089045044 0.102 -1.061905235698743 0.4246804674503863 0.102 -1.055508018443186 0.4489547604737686 0.102 -0.2107241850870361 0.877494063729733 0.102 -0.5810583046092557 0.1009316021758792 0.102 --0.02075041550823953 0.6278454520046841 0.102 -0.3333012905015132 0.3530206783194783 0.102 -0.8217308987836214 -0.01482968206463149 0.102 -1.084894977390767 0.1618778628792956 0.102 -0.1531503808414833 0.3972251762894781 0.102 -0.9186897795485687 -0.003076773260766792 0.102 -0.582521642087557 0.3615905993883796 0.102 -0.7593806734953952 0.1677287034737271 0.102 -0.0940869440748848 0.8697690732577865 0.102 -6.381942289039519 -1.80120495488176 0.102 -0.7747873958499767 -0.04244334643793288 0.102 -0.3420655794129784 -0.05554107805091239 0.102 -0.5656355144573165 0.2401906821830657 0.102 -0.2897040775412075 0.2880683944490567 0.102 -0.2514651007530567 0.1428150714348735 0.102 --0.1306357015247848 -0.09685559742121358 0.102 -0.9160820304168861 0.5903282473029697 0.102 -0.8932954891699351 0.5903384157563242 0.102 --0.005381443529834499 0.7930761567948883 0.102 -0.2036815582117795 0.2334221194415227 0.102 -0.2446096067058613 0.6128488334407168 0.102 -1.076331551313722 0.0319220255157173 0.102 -0.7147078556483452 0.4751611722970529 0.102 -0.9295378855348922 0.09196617456290498 0.102 -0.1052376840955687 1.037255996684375 0.102 -0.2779591043410239 0.2051269411208415 0.102 -0.1674008396311211 1.007319946901284 0.102 -0.7697578516321959 0.5483438904212311 0.102 -0.9100036770294411 0.4923525398168741 0.102 -0.3486018321267293 0.6610319087818234 0.102 -0.7940697134184298 -0.05706021154361546 0.102 -18.81348606540519 -1.275902825775264 0.102 -0.1931042980254156 0.1836686750843257 0.102 -0.7772369151436502 0.9357147342299879 0.102 --0.1670316728254589 8.006483943694704 0.102 -0.376973009590217 0.1336543318500875 0.102 --3.005448955224846 -5.877530718101026 0.102 --0.02712742733089927 0.9988036449020946 0.102 -0.04991321791946542 0.01778396041189431 0.102 -0.3648544640949034 0.8748176358303077 0.102 -1.039347315360003 0.4977458780169354 0.102 -0.6027944965716773 0.8891345985037797 0.102 -0.4225275893583939 0.715514021635832 0.102 -0.1932001787197227 0.08403556934963968 0.102 --2.296801748469485 -9.215508456278926 0.102 -0.3765121675869311 0.3288628338874183 0.102 -0.7943631267175809 0.8304242229438894 0.102 -0.736722891200067 0.7113139724678799 0.102 -1.007831861148378 0.383870947399571 0.102 --3.898378695418377 -8.941646497703063 0.102 -0.2407676583478545 0.4402465921841086 0.102 -0.277038847222268 0.9539864744141466 0.102 -0.1606610470563795 0.1071160866718795 0.102 -0.3206625880724026 0.4599774297163197 0.102 -0.1858228615985603 0.313817220751483 0.102 -0.5497133824766386 0.8425583908545643 0.102 -0.3360310165062491 0.1120283280038818 0.102 -17.17185819907441 6.135607404891694 0.102 -17.44620674216537 -5.8731230855046 0.102 -0.4355192614513481 0.05563451356415194 0.102 -0.9158034974462963 0.4785999219003963 0.102 -0.8504547146566334 0.09077148299766639 0.102 -8.939341926659081 -4.230707511982018 0.102 -0.2891121651756117 0.691852711307822 0.102 -0.9224815871981304 0.516821894642306 0.102 -0.08527602796819481 0.2822637251649878 0.102 -0.9686682579358985 0.6803548292326291 0.102 -16.16935138323182 -1.92441180210805 0.102 -0.8368639825086073 -0.3460750846246343 0.102 -0.2653157802326219 0.1730679981633707 0.102 -0.0270760946188012 0.3815646877872453 0.102 -0.8115477913723206 1.061864616556101 0.102 -0.4183852486190144 -0.03776435921183344 0.102 -0.9743977084280507 0.6268875872308138 0.102 --6.129561182010765 -7.415973406102705 0.102 --5.867097905504994 7.596676875529412 0.102 -0.9639298130716673 -0.08678334038604774 0.102 -0.1635527828181508 0.2299220462182087 0.102 -0.7603454861495847 0.2850430962033476 0.102 -0.4394640951508928 0.6096263472987657 0.102 -0.6831954843487851 0.2184236540226959 0.102 --4.03686317412628 4.978099784221484 0.102 -2.020079135448715 -3.931511855660109 0.102 -0.7757063939753414 0.1283055977194755 0.102 -0.9520490437366926 0.520640089397806 0.102 --2.812240064709194 0.04405185912063003 0.102 -0.1902724344554182 0.9501301754918722 0.102 -0.4735059704197891 0.6170410507395194 0.102 -0.9461306302648174 0.6913036474571829 0.102 --7.753812209391506 -3.081527670063722 0.102 -1.084764560629407 0.09257644421253591 0.102 -0.5745169723206985 0.4348372346158298 0.102 -1.104488952488172 -2.67588365604837 0.102 -0.07046410483731268 0.5246564280869838 0.102 -17.74576076551784 3.421112210871585 0.102 -0.1678016667625588 0.8998152209460566 0.102 -0.6282448672827365 0.3310090224286175 0.102 --0.07568134070550336 -0.1324459713886784 0.102 -0.8029927951761749 0.0906105912934182 0.102 -4.653388746325263 4.990392541685623 0.102 --0.9885462170838657 9.138762392407234 0.102 -0.4846826676293891 0.07292067679232127 0.102 -0.9544516414189407 0.8997967431350352 0.102 -0.1948033166757328 0.7725270420619494 0.102 -0.4934214696482122 0.2840508225564955 0.102 --7.524337811507655 0.1706468377600342 0.102 -0.7549267027249714 0.751190440298752 0.102 -0.7440821587878058 0.4645072503253276 0.102 -0.1951281270477866 1.073988934696598 0.102 -0.1647261314552752 1.102854709995116 0.102 -1.033798389706252 0.9003187481852507 0.102 -0.4308920871808156 0.4533582268812462 0.102 -0.279050104311142 0.737496854866746 0.102 -0.8801751583153862 0.303774133867993 0.102 -0.9098535378996786 0.2906025552422666 0.102 -0.5910404867789162 -0.1193036715258949 0.102 -0.2716982145018293 0.8473084186595339 0.102 --1.028408777063104 -1.819747580049571 0.102 -2.005723515995177 4.998322699773632 0.102 -0.7897323661853595 0.6319282918140631 0.102 -0.3753478687560655 0.2793087112438181 0.102 -1.044336368088618 0.7688260790001585 0.102 -0.3186902473421809 -0.02302912625185294 0.102 --0.1092178782074796 0.6830628100640772 0.102 --0.1250443404137449 0.7204460789703776 0.102 -0.8603561181791199 1.080322398324593 0.102 -0.845887813505484 1.107875229742741 0.102 -0.6646160737747302 0.177316380822523 0.102 -0.2120304882834047 0.1108291514985252 0.102 -12.95402784606781 -3.930320540828075 0.102 -0.8679703892943439 0.6094060811762314 0.102 --2.571770831675284 -7.992996353043506 0.102 -0.231087162806398 0.9437321305687484 0.102 -0.1814638897363498 1.04759853659863 0.102 -0.1500606321360519 1.022476224223679 0.102 -0.774702723629566 0.6029818653920992 0.102 -0.3212557978543788 0.03621555133487886 0.102 -1.046329300985286 0.9682627428800368 0.102 -0.7189642919491256 1.033399351798995 0.102 --0.0639932434146457 0.8345987585486608 0.102 -0.7037988009910482 0.8772271924721743 0.102 -0.04946092773777316 0.6021890684350123 0.102 --6.357588459551059 5.786015514544834 0.102 -1.021422793871307 0.1286997585892597 0.102 --0.01994971237004837 0.5766863282000476 0.102 -0.9673395938006122 0.5401260256481897 0.102 -1.003194082503722 -0.00330420476748099 0.102 -0.4062769990931206 0.4873416465671621 0.102 -0.7802723186357711 -0.07820331864033836 0.102 -0.8897017653134642 0.7545696675308765 0.102 -0.05824607574721096 0.1277072405088187 0.102 --9.047104248461981 1.032402339944464 0.102 -0.2362875932082271 0.9758093749138645 0.102 -0.3075206442944429 0.2456168870666564 0.102 -0.8768281132523584 0.5729644138468635 0.102 -1.043756726696857 0.677749662718116 0.102 -3.799853072471898 1.335558196158239 0.102 -0.8201556005838333 0.5974737069212994 0.102 --3.779738489381702 0.7103618460741732 0.102 -0.1148286584453374 0.9759236554642028 0.102 --0.05900287086790516 0.7796877529671111 0.102 -0.8473492158246603 0.4852122610404957 0.102 -1.02064312645359 0.7210968862358564 0.102 -0.9416173233134502 0.7132405688426992 0.102 -0.9144752891184771 0.5660502257316056 0.102 -1.088094109954747 0.565080852461465 0.102 -0.4771101593361969 0.7127834825679135 0.102 -0.4471162213222926 0.7415540105799029 0.102 -0.1378326256117121 1.078753965568126 0.102 -11.34711998530724 -1.554492249079897 0.102 -0.2804189593018265 0.6536260976904118 0.102 -0.2229498733232182 1.060650802239647 0.102 -0.2839805788872084 0.006093841408498772 0.102 -0.5007854577385842 0.1238897001042783 0.102 -0.9865920222556065 -0.09667093587778096 0.102 -0.07156175226202972 0.2692636722841 0.102 -0.7505580481631695 0.5491928559089455 0.102 -1.003604674125852 1.128522835211493 0.102 -1.061529871555977 1.12150265610379 0.102 --0.03706089242229049 0.7074270430244217 0.102 -0.1889075368147925 1.008132180882074 0.102 --8.863740629120208 -4.244927154290767 0.102 -0.517538416993615 0.2586915429644594 0.102 -0.4047606875261615 0.09504890235039616 0.102 -0.4727229053234062 0.7673405320856339 0.102 -0.2242357767075791 0.7233902904413774 0.102 -0.8498768166236507 0.06258455971956435 0.102 --0.05902189187951182 0.02806483470150963 0.102 -0.3850568304503653 0.01383951107421622 0.102 -0.04336326885126685 0.05085583047477357 0.102 -0.7243701168399002 0.006834576779002096 0.102 -0.6835824594701185 0.8373191738124324 0.102 -3.32112550693375 -4.257413147903749 0.102 -0.7531735615662375 0.09558465353846413 0.102 -0.703823499164681 0.5559440358368126 0.102 -0.2437329063675464 0.08977292140973134 0.102 --0.1472728550224033 0.06752559761463292 0.102 -0.9043064432050258 -0.106715756502062 0.102 -0.8974454231276126 -0.1706544523202884 0.102 -0.9359491304291444 -0.1176383529035585 0.102 -12.7503177703067 -6.314194218387932 0.102 -0.5103427225264116 0.5603839215712868 0.102 -11.07932505293799 -3.621843309557977 0.102 -0.3840830126725161 1.096333560653036 0.102 -1.01868315991687 0.7665327053009361 0.102 -0.1217983942490379 0.9332681521441567 0.102 -0.05635928071063559 0.9167659716471279 0.102 -0.9098186719364323 0.3343408885807494 0.102 -0.1065269698000821 0.3543079932420179 0.102 -0.8781405719894837 0.4582966671438083 0.102 -17.6874759294845 -0.2876464645112912 0.102 -15.95221800779236 2.489067388886619 0.102 -0.1219046680510248 0.9042204789216554 0.102 --0.004975282936075299 0.549452159098308 0.102 -0.5768339446388993 -0.04193475141714122 0.102 -0.3552410076046985 0.6233520797373109 0.102 -15.64560485479827 -1.12589080354106 0.102 -0.008370096048839841 0.3674705857228365 0.102 -1.192871542149954 -9.213243716993784 0.102 -0.9868375272292774 0.2693538078219858 0.102 --0.07275516763224471 0.9561980698845212 0.102 -0.6511476715089582 1.132847041569936 0.102 -0.7440143609681834 0.6646214961520071 0.102 -0.8148685450453441 0.8750606279456604 0.102 -0.5254815355478007 1.114703470045628 0.102 -0.7392235314487521 0.9113455649414691 0.102 -13.72648327168342 -5.10589482842742 0.102 --4.743212485839974 -1.734795301734964 0.102 --0.009635643429941098 0.9094466461113631 0.102 --0.04586739540182301 1.190198846302925 0.102 --0.0464957275588524 0.5551625144820156 0.102 -17.96376051515272 -6.598106279260066 0.102 -0.9528799221484562 1.080709085979945 0.102 -17.29910528816461 7.331295266370464 0.102 -1.079833447463407 0.4543534875467422 0.102 -0.8476996326062154 0.5227903008472192 0.102 --0.01247008233383725 1.089880839294333 0.102 -0.275538016858628 0.5697228404059334 0.102 -0.02988519529256754 0.9674305507818672 0.102 -0.6697633678878498 1.073595622369342 0.102 -0.355545544801704 0.4606505165905637 0.102 -0.1615276892291176 -0.1025610032244013 0.102 -12.38343533122978 9.288332261413057 0.102 -12.62663597612482 -9.123567624949338 0.102 -1.088574279975153 0.4308230880535886 0.102 -1.095183329404701 0.4052312403669716 0.102 -0.382649175846649 0.1670771360910891 0.102 -0.9309142929314312 0.4755903456294934 0.102 -6.419235465773474 9.294335414786621 0.102 -0.510039479991346 -0.02579203604116242 0.102 --9.175294607737605 -2.385042792767625 0.102 -6.562766097660887 -8.74549806779277 0.102 --0.1003371699740055 0.4305204294325854 0.102 -1.484730571411743 -0.7129653805869337 0.102 -0.9644408246981372 0.09650019578157577 0.102 -0.007537046946738627 0.6647870399841722 0.102 -0.1546145481400817 1.04083204091154 0.102 -0.2820291127778201 0.1236053394228321 0.102 --5.279961046126181 4.058165926286303 0.102 -1.033932239678136 -0.0743128631929383 0.102 -0.2127373402903877 1.07595592699728 0.102 -0.3675695364092224 0.5195781445717652 0.102 -0.9173969479850499 0.8897569547878702 0.102 -0.2679724557668876 0.9357996057799961 0.102 -1.060903477817674 2.965344490704913 0.102 -0.1061278550965252 -0.009160192481103216 0.102 -0.3060686474491698 0.1885228140762396 0.102 -0.7986180517161883 0.6792617823244377 0.102 -0.1996886667283336 0.9099656597159417 0.102 -16.13526808452195 -3.284075073562824 0.102 -0.3815756324240588 0.9208139140616292 0.102 -0.4563003886644562 0.182924903471142 0.102 -0.7803374612339262 0.868634107482923 0.102 -2.626474272136051 5.815807380259517 0.102 -0.2951261111900538 0.9109367830870801 0.102 -11.10830006174621 6.741676903693215 0.102 -0.1568401236693277 0.9362290056612869 0.102 -0.215300538100476 0.1871022312101418 0.102 -0.8146244668530628 0.4305103280129147 0.102 -0.7673549358806513 0.2071914902451766 0.102 -1.077286794430084 0.66505505875481 0.102 -1.132367265662878 0.3075214170002987 0.102 -0.1566487575213514 0.9687362232508568 0.102 -0.786293783798828 -0.02323330989351569 0.102 -0.04429583860431661 0.8525949339256051 0.102 -0.1223261714790633 0.180677944853935 0.102 -0.1996987313055389 0.7019372875286368 0.102 -0.9596468179317565 0.2899338323236232 0.102 -1.031888603403742 0.3052011838573324 0.102 -0.698715330734306 0.7176083213562434 0.102 -0.2268594864952391 0.9910151163512235 0.102 --0.08184944511186444 0.2687489159483253 0.102 -0.2369329474668804 0.1921822295928172 0.102 -0.5201635131796765 0.9731688372419423 0.102 -0.4582535942955173 0.8191135420603655 0.102 -0.2307624827500741 0.2170712894281512 0.102 -9.494817531712068 -0.8988215370867265 0.102 -15.55503841985768 -8.903131764559669 0.102 -8.195721080781288 1.620795478111474 0.102 -18.90164834450089 4.716281907839661 0.102 -0.2591588937886823 0.3248293262873162 0.102 -10.42372630609536 -7.224273753354056 0.102 -0.07367174105913277 0.1766025720393434 0.102 -0.654332168227883 -0.02724261122632298 0.102 -0.64508269916417 -0.05179363885492752 0.102 -0.7027975587479702 0.5265562982987324 0.102 -1.205427928558732 1.088380960231109 0.102 -0.1943310027692015 0.8312995945273529 0.102 -0.7294181919988747 0.6923941184319395 0.102 -0.8170427626958661 0.03462812372469262 0.102 -0.5135845698407175 0.8674015834742919 0.102 -0.3287184359185924 -0.008744206934935748 0.102 --1.044434329224047 -5.549621541480737 0.102 -15.48129457977801 9.011328569879733 0.102 -0.5363057861818726 0.05659848639130519 0.102 -0.09951498319955525 0.8931775412002697 0.102 -0.8672191400164867 0.8777568806256493 0.102 -0.3155550003682022 0.223093591103864 0.102 --5.190534503814772 1.041858544944457 0.102 -0.8470341427443989 1.001508721659109 0.102 -3.213356927893412 -0.7144963628429872 0.102 -0.1942480659854263 1.023639359085881 0.102 -0.984406479514735 1.003483934741554 0.102 -0.1347497034325852 0.8600215429775686 0.102 -0.004929666400391461 0.935353036035236 0.102 -1.073401442462959 0.4801620113675421 0.102 -0.192309202899242 0.5406632921215573 0.102 -0.5677480910983195 0.3022872685405872 0.102 -0.9842354390347535 0.08127095209126936 0.102 -0.7358044868341872 -0.03320473156639423 0.102 -0.8788625112262927 1.123037958360825 0.102 -0.4770462120710596 -0.05549021356392519 0.102 -0.9596863768829039 0.4115437055891563 0.102 --6.217146338126215 -2.250401314157441 0.102 -0.7709779787708485 1.074116822342283 0.102 -0.6702969268001202 0.008299042598492448 0.102 -0.1247600761654821 0.7636270574320883 0.102 -0.743001290381594 0.51273716357778 0.102 -0.3927079316217419 0.7577449861752115 0.102 -0.1441167960733411 1.099682154359351 0.102 -0.806597093446501 0.01709832328622883 0.102 -0.4229881839956165 0.3505432184046587 0.102 -0.7225483326904147 -0.08555429144621299 0.102 -0.7443671126008244 -0.07383034316586509 0.102 -0.8577354851415905 0.2360262399106167 0.102 -0.8356208793862555 0.2243189114928718 0.102 -1.156588504893149 1.103702209523359 0.102 -0.6108001332505235 0.1445414750017718 0.102 -0.7162214369410326 0.7280524300641489 0.102 -1.047972948375732 0.5909903486068375 0.102 -0.9363038821913003 0.6164008130915966 0.102 -1.045113920541249 0.6343063476838539 0.102 --7.002270846611558 -0.7130825282768516 0.102 -0.4788293241622374 0.4498499501125467 0.102 --6.955309641423639 -8.012224443936212 0.102 -0.6854239037796805 -0.05589536535584361 0.102 -1.061511651346486 -0.1537078824826099 0.102 --7.629166351598128 7.232327005885279 0.102 -0.3600808177923284 0.929189122170764 0.102 -16.7899290551151 0.6770788818224941 0.102 -0.4581590323793327 0.2397481903846011 0.102 -0.2153152404146544 0.2632577192109866 0.102 -0.6614412553145141 0.5588149152544271 0.102 -0.568128078312896 0.9910511920094482 0.102 --0.02154283855099944 0.4031456598871549 0.102 -0.8105789926306273 0.33021332904734 0.102 -0.07315828483450583 0.6868350399091782 0.102 -0.2960836750754998 0.08246522868872863 0.102 -12.17927467124635 2.113909867988718 0.102 -0.1784188572441634 2.91026847199737 0.102 -11.18411764778566 -5.583071563133455 0.102 -0.4141419434167205 -0.06886766983445636 0.102 -0.2731007966783467 0.8871778904740093 0.102 -0.08987358297621892 0.6110808366979563 0.102 -0.2953532621021248 0.1536091570524093 0.102 -0.7131049974809042 0.08261141300824829 0.102 -1.065859159169893 0.7500414947836399 0.102 -0.4819109368033716 0.03496547357410203 0.102 -0.09712635867968057 0.7687357597160104 0.102 -15.26262953465765 3.930955110944957 0.102 -0.3494478162912892 0.7645610388681261 0.102 -0.1409590052129069 0.2301557655302754 0.102 -0.7022803007535485 0.5944590252563254 0.102 --0.05356826437365621 0.3985305953861428 0.102 -0.4803325294588225 -0.01028719977200331 0.102 -0.6312489038376354 0.2373752135253852 0.102 -0.647314536673809 0.7047039048903386 0.102 -5.016601960789559 -0.6650626526158003 0.102 -0.5391010611361321 0.3658328766440139 0.102 -0.7884343383999917 0.3190106724841121 0.102 -0.441106476992044 0.8464254190975826 0.102 -0.272477933410624 0.7822071433513947 0.102 -1.131450898059719 0.7780699799801366 0.102 -0.8033381223676149 0.06009877799185609 0.102 -0.003177581538219794 0.7418883709204939 0.102 -19.17444705235081 3.005128916521675 0.102 -0.1849921147117911 0.8088822343914674 0.102 -0.6672990917575263 0.7210162885877704 0.102 -0.5600365783530793 0.54346106889769 0.102 -0.4769650158415438 0.909688233120207 0.102 -0.4367980366657461 0.0908617155104403 0.102 --6.462157837435833 -9.18359350931823 0.102 -1.055107150755759 0.108546583792186 0.102 -17.85549807467599 -9.314466421696986 0.102 -0.4556818101937002 0.9504231559638229 0.102 -0.9814828265686757 0.2961648885405882 0.102 -0.8470798705772664 0.8282914065884999 0.102 --8.13012085092952 -5.391093846900919 0.102 -0.5773641636044193 0.927181626980827 0.102 -0.1825527123602224 0.2468967934049285 0.102 -1.43669405087194 7.505211923625392 0.102 -9.7469071617697 3.642051489413825 0.102 -9.56814103080452 4.122095628630859 0.102 --0.09921043536893548 -0.06052517531600015 0.102 -0.0970052892815156 0.570221023603787 0.102 -0.6407258413160777 0.0181436796625386 0.102 -0.4971831757009485 0.7883118530449971 0.102 -0.637232635314087 0.07132507063255837 0.102 -0.3355235967463995 0.3074070518577713 0.102 --0.02447447998427484 0.9093613632280519 0.102 -0.3499863621267446 0.9055213542975976 0.102 -0.8293490029207702 1.049377812859848 0.102 -0.6487918094058157 0.8691196311206962 0.102 -0.3222480323184778 0.3978370275866773 0.102 -0.5612753733424579 0.2611794254384518 0.102 -9.189011019538128 2.603693319803721 0.102 -17.84588242958878 9.277592559718075 0.102 --0.1089753184572371 0.09262414404025629 0.102 --0.1187417818657154 0.07408093930432433 0.102 -1.103775597746656 1.055099136451508 0.102 -0.7745693899568198 0.5245858656516721 0.102 -0.4498965667786497 0.3495505003886204 0.102 -8.906469634120729 0.4374530859541541 0.102 -0.1636131373739343 0.3654069962699366 0.102 -0.2673728345888327 0.9683354698817231 0.102 --9.072097752279166 -6.122688270621274 0.102 --7.642877552627217 2.984823756157889 0.102 -0.6364701954816467 0.3623670469375921 0.102 -0.2991837131843114 0.6275245062166885 0.102 --0.1026538884600608 0.1903799314532817 0.102 -0.6102236501085996 0.4043336289566215 0.102 --6.611186745693548 9.181607544193531 0.102 -2.764181296181472 8.86936578082801 0.102 -7.724055417859415 -3.267107706699194 0.102 -0.2521136999167869 0.8668829079086861 0.102 -0.1110442831617409 0.5411244324675173 0.102 -0.680736170999674 0.23602292322164 0.102 -0.9675814064897166 0.6410201196912593 0.102 -1.093899722401037 1.130193464320989 0.102 -0.5871126184033111 0.7937672391039596 0.102 -0.2968753438323532 1.045030174856705 0.102 -0.9883390809791355 0.04656649630571404 0.102 -0.2577173438732333 0.0430279370491383 0.102 -0.1881602959516961 0.2075432953746639 0.102 --9.299371417363465 6.751144831624871 0.102 -0.890750587391354 0.02082639956607272 0.102 -0.6158321440243175 0.9394286031379849 0.102 -0.1508855492778764 0.1572946358999948 0.102 -0.5832642420837353 0.4096623122419841 0.102 -0.05091929573993723 0.3432921390169212 0.102 -14.02724317568544 4.862617687879036 0.102 -0.1844119436401155 0.2878975391753564 0.102 -0.2488349074325869 0.2528392320085575 0.102 --2.040832538609755 -3.194090482013704 0.102 -0.3144393074573202 0.2810534685642729 0.102 -0.7271777452577565 0.4360724789455678 0.102 -0.08231181802137214 0.9607057403947158 0.102 -0.8360894778908955 0.3489796997726628 0.102 -0.5720434419277893 1.070134533232911 0.102 -0.7064261931212752 0.1824681296977892 0.102 -14.37254470553041 -1.636740336489112 0.102 -0.1892611411743161 0.4169563020230471 0.102 -0.7153113459816891 0.8493217152047949 0.102 -0.06097549477897127 0.8037935286330911 0.102 -0.6583732180841996 0.9763268163041308 0.102 --1.51916236126573 -9.286025862474901 0.102 -0.2955579004054695 -0.06434462607651403 0.102 -1.016793954984942 0.5955935219009448 0.102 -0.3093688275572446 0.9753501019228541 0.102 -8.337243263176591 -5.354531782540609 0.102 -0.671190165913239 0.1172763997219988 0.102 -0.02624018130515038 0.7491688705061189 0.102 -10.41650141510515 1.783693681497694 0.102 -0.69739196247892 0.6416900942456768 0.102 -0.7352548217573991 0.9615693988776949 0.102 -1.11968915209096 0.5781981832095135 0.102 -1.103090831254857 0.6088131720153007 0.102 -1.127802647692199 0.5435808497250751 0.102 -0.4621628891871364 1.007439889394554 0.102 -0.8005521138407602 0.1368008871967866 0.102 -0.2380514971219614 0.8244817324113574 0.102 -0.2052393755584746 0.1353538862227811 0.102 -0.7997302716456632 0.9826427786953107 0.102 -0.3769011125787665 0.8296578231627489 0.102 -0.9807720298660588 1.064953599114805 0.102 -8.620508803477275 5.354747240585978 0.102 -0.8971476690696202 0.05177950391901716 0.102 -0.1641782007262561 0.7377826531302263 0.102 -0.4348921345365509 0.3832461451567709 0.102 -0.9044165596283021 0.6826690180052326 0.102 -0.5382650285491803 0.3865587680340987 0.102 -0.3870817540527359 0.4133766139191678 0.102 -0.405311144559039 0.8002096082256356 0.102 -0.850200071517653 -0.09433077467312757 0.102 -0.6003726104007627 0.78037831942376 0.102 -0.8526109664354838 -0.05424235283630582 0.102 -0.01689214194473781 0.02205344484900395 0.102 -0.6373498703959753 -0.01424629473713991 0.102 -0.4495349871820536 -0.08811752908792805 0.102 -0.2908862115823537 0.8649419175043378 0.102 -0.9412880612147523 0.9756465251434678 0.102 -0.9234931903776666 0.9459431415540566 0.102 -0.8219963906103006 0.6996006047486961 0.102 -0.72116740623409 0.8053632533171465 0.102 -19.04800218479315 6.365128818594613 0.102 -19.06814918089913 -6.116943283409157 0.102 -0.08955341821783409 1.049420439535089 0.102 -0.599685839356715 0.4502053597528927 0.102 -0.5025974663095345 0.4841756420159623 0.102 -0.4565818178017681 0.5433612234062267 0.102 -1.100854575662377 0.4616673881045684 0.102 -1.06452186571551 0.2854441124125633 0.102 -0.3846535872327284 0.8699384862765619 0.102 -0.3391315580074784 0.1552967769875073 0.102 -0.3254935728783303 0.6183585319734808 0.102 -0.08742457475305404 0.8223763977953773 0.102 -6.636308684642054 1.88966307708446 0.102 -1.017707915658884 0.4136430614775207 0.102 -14.2648250522623 0.825301738422426 0.102 -0.3164840518103243 0.5181229230441734 0.102 -0.326210724503387 0.1342514097161991 0.102 --0.102319840309436 0.1593503447139427 0.102 -0.2827078785365321 0.4162540977108168 0.102 -0.6100473219479102 1.123832295385976 0.102 -0.5438716782847069 0.4743027666461794 0.102 -1.085409291228502 0.6994191576512329 0.102 -0.3826114225539403 0.9796306358140576 0.102 --7.711896684029657 5.696827371837061 0.102 -0.9753039423195946 0.9300191772117159 0.102 -0.2589377870542517 0.6595962626031474 0.102 -0.4448316234869149 1.027997429852091 0.102 -0.3180701425610507 0.004123072470986756 0.102 -0.09987634775894058 1.104536043489105 0.102 --0.002091335334944452 0.9484496571909313 0.102 -18.15127888830054 -3.211006444856856 0.102 -0.4669623448834327 1.087512502354963 0.102 --0.06113366775667893 0.434493551457913 0.102 -0.1849787390952033 0.7061573653364028 0.102 -0.8185982879675751 0.9178480522985623 0.102 -0.5488222868143844 0.7898127824626009 0.102 --0.04662625814837831 0.5816805796744361 0.102 -0.7962295567891758 0.9494910061994744 0.102 -0.1992659200797001 -0.03082171034801681 0.102 -0.04020417585464505 0.7147625419874336 0.102 --0.09497883128166903 0.01956830797458256 0.102 --0.1295525478354709 -0.003845925427542196 0.102 --0.1055554990628304 0.001468532845571197 0.102 -0.45223113797543 0.793870604140153 0.102 -11.52953138002362 1.041689752766177 0.102 -1.083791067731757 -0.07998564825881205 0.102 --4.510876037375929 0.04211632342326708 0.102 -0.009587599800374181 0.09780561585278988 0.102 -6.885783284486313 -7.636555312735439 0.102 -1.071201748654898 0.540728960907729 0.102 -1.0920345544192 0.682511350635032 0.102 -1.11300450647668 0.6824115097281502 0.102 -1.142205974484622 0.726116712068642 0.102 -1.153718972867364 0.6852083090075008 0.102 -0.7897274875298149 0.2914392120080858 0.102 -0.7229715266838481 0.6197442873884983 0.102 -0.2535199846088481 0.8872701583216385 0.102 -11.91876513073392 3.6909818013082 0.102 -0.507765485124458 0.3073680017468931 0.102 -0.8912864233578233 0.6127575515588297 0.102 -0.7991987284729108 1.014273632121185 0.102 -1.186950923303086 -0.3782708703970166 0.102 -0.2497199567764245 0.7552343730266546 0.102 -0.4218485826651485 0.6552125792261442 0.102 -0.5082282842041057 0.2030585319239893 0.102 -0.1534293829504997 0.5404126787797251 0.102 -0.4824010482613985 1.060241232756622 0.102 -0.4067617460759996 1.004427991593268 0.102 -4.808370703353818 -8.980946412790759 0.102 -0.7646070144502775 -0.09921125485602195 0.102 -0.5129586182221557 0.7496682463067873 0.102 --0.06468959718721704 0.5978012443351566 0.102 -0.1121865104612098 0.6071814838714888 0.102 -12.48403476462517 -7.227320679118701 0.102 -13.42926828283259 -7.679220433071959 0.102 -4.345128626300896 -4.729214277422338 0.102 -1.088192605051219 0.7503464060325915 0.102 -1.097964052232818 0.7344490822650791 0.102 -1.146441137196254 0.2105805270450357 0.102 -0.2186550325485653 0.8976732717578464 0.102 -0.2149419442777825 0.6736941094661575 0.102 -0.2520899161211285 0.5446433472159951 0.102 -0.8684847315258644 0.04155059133179128 0.102 --0.09657240978040323 0.2573599564564146 0.102 -0.6840498852251278 0.2864026795924045 0.102 -0.6947856078783603 0.3120443855035798 0.102 -0.7029370007360054 1.00012687017017 0.102 --0.02141522044094975 0.2045343088709362 0.102 -0.3368106418549219 1.036837125877958 0.102 -0.7482247533580531 0.3153046499900213 0.102 -0.5403545546570535 0.5787908216130003 0.102 -0.7527624470814719 0.01845202566075668 0.102 -0.1093722150392864 -0.03853657396632494 0.102 -12.89343758051655 7.889856033843365 0.102 -0.3340904710525527 0.8543902760050823 0.102 -0.06071761372492344 0.4806613445441744 0.102 -0.03820252962398159 0.2734313753330201 0.102 -0.2784570787547256 -0.03214319397747523 0.102 --0.04848649716197518 0.7288879969003738 0.102 -7.757384194424878 8.014973273580573 0.102 -0.517284035083645 0.607196569834537 0.102 -0.5119260157919815 0.4050190533713919 0.102 -0.4214219706995534 0.9030862137088913 0.102 -0.7003521999181085 0.4670501734737432 0.102 -0.1021374544904983 0.4526154970368907 0.102 -0.1562449326296112 0.8013510496623863 0.102 -0.01049069385563021 0.7156241757750261 0.102 -0.2447391254052704 0.924582943210719 0.102 -0.1540627392435309 0.5157088885848262 0.102 -0.8691525578842783 0.5280990903126067 0.102 -0.9173740801568806 0.3197325911072919 0.102 -0.7301292771494881 0.05672490935117995 0.102 -0.2332959937517623 0.5154888566520571 0.102 -0.9516085135504967 0.3423469480192957 0.102 -0.5495193758974214 0.4307564015327174 0.102 -0.5556426807330919 0.3196668561678295 0.102 -0.5953878586083845 0.1947290214038162 0.102 -0.6933369751721649 1.054350986429642 0.102 -0.8562208025738827 0.9392148204710012 0.102 -0.8948227696502686 0.9424911862067309 0.102 -0.9744525208333954 0.02917604754432916 0.102 -0.4277102364729445 0.7974357497514403 0.102 -0.7545317724333684 1.057674778749417 0.102 -9.194847378131264 -1.912606657473314 0.102 -0.8302021142836791 0.6484912196433883 0.102 -0.6242595669714295 0.9586262753066778 0.102 -0.6138647040209994 1.062635354053381 0.102 -0.7139206850881917 0.7766337990756689 0.102 --0.8634886250600855 -3.04981292467716 0.102 -0.2602956474684166 0.375404583452667 0.102 -0.0004797759359811427 0.8673628678652436 0.102 -0.06807123937148678 0.430497080984402 0.102 -0.8282908129420877 0.9413571758418124 0.102 -0.9327248737371219 0.8041620950533586 0.102 -7.925624003482835 -7.958833542909213 0.102 --0.07162747831952657 0.5333517799742336 0.102 --0.05403650595095805 0.5094230947399117 0.102 --2.838568894246688 2.395390758223364 0.102 -0.07981910229444886 0.7116974030758192 0.102 --0.06671162453484995 0.06309783193764903 0.102 -0.4630464347991687 1.044520755204022 0.102 -0.4148546332644338 0.9367107139308454 0.102 -0.6108939933334729 0.7650705779356227 0.102 -1.022579627471007 0.9533623711544653 0.102 -0.08239085146874761 0.3395629981432517 0.102 -0.4272722349444623 1.048758939108417 0.102 -0.78315801050671 0.2558273781014085 0.102 -0.5432065488938528 0.2363020245330249 0.102 -0.2825568576267356 0.2614715075151146 0.102 -0.1406741469174126 0.6612372799460917 0.102 -0.4755820594885862 0.3810132257984845 0.102 -8.172556309217674 -6.760334773542072 0.102 -0.3177256451797156 0.8850832863690257 0.102 --0.08750687832985656 0.2405307725680167 0.102 -0.2627001367073442 0.4485888185312509 0.102 -0.08851106647212326 0.4971960275994697 0.102 -0.9581551806884799 0.1303985174861992 0.102 -0.3639435721222323 0.1526075213035109 0.102 -14.86587328272105 2.561783039625833 0.102 -13.46073965803741 0.6254494736591711 0.102 -0.2643445381636291 0.2759767463942537 0.102 -0.1926601125421573 0.3378411233894605 0.102 --0.01966833946533441 0.4729324955318246 0.102 -0.6352207493374897 1.005112440726371 0.102 -0.05559695717084624 0.5511621931944694 0.102 -0.1479931809773669 0.8319206188555157 0.102 -0.3961613333160432 1.022472850972173 0.102 -0.40038424944235 1.045604425686124 0.102 -0.01927038312856198 0.7893659676536074 0.102 -0.462081245881915 0.5700542137909979 0.102 -13.79385229179702 -0.3276742782578616 0.102 -1.01745242719896 0.8083409220577179 0.102 -9.923645732708099 5.543497061112578 0.102 -0.3905254230692781 0.8448730924252333 0.102 -0.1619911214012173 0.5920750680167715 0.102 -0.2077105409608567 0.5769574231284791 0.102 --2.445757548498784 9.203541280886252 0.102 -0.6952986763396345 -0.09475074247961007 0.102 -0.1276592762215146 0.3238634773429249 0.102 -0.8439268544434622 0.6033106635371606 0.102 -0.6341790672288445 0.8315386282999141 0.102 -0.6067811944332933 0.4755005472043424 0.102 -16.20090960751611 -5.433285350062798 0.102 --0.09565820521678582 0.1083020956505599 0.102 --0.09946453063967223 0.1287744971231553 0.102 --0.6112706846143277 -1.058107207513819 0.102 -0.7123295425428754 0.7030360959947615 0.102 -0.8395875169347788 0.0192628719552561 0.102 -0.2278472171311232 0.8423207349375215 0.102 --0.1997008560105283 0.2871375406619835 0.102 -0.8878933875107263 0.3387808924111622 0.102 -0.02057869901797163 0.1699867802477933 0.102 -12.52246802252376 5.231443912914781 0.102 -0.4259642457286966 1.014058412663798 0.102 -0.2766202745750909 0.7028146103250384 0.102 --0.06411599908004594 0.7106826520458717 0.102 -1.068741777884199 0.8285950670805696 0.102 -0.2984177662116356 0.8345913196706038 0.102 --0.7920878112603417 3.764931730134246 0.102 -15.05193745216137 -7.56540889166901 0.102 -0.9021904460111132 0.2582171974715617 0.102 --9.255483194802515 3.725042044645679 0.102 -19.08751525670368 -3.035341268816005 0.102 -0.6469828858652829 0.6656464940871865 0.102 -14.94907923255322 0.05574077758440337 0.102 -0.6737212360383111 -0.03365367996716665 0.102 --3.442138275574799 3.570405177113309 0.102 -0.1342343726248395 0.04713953412120703 0.102 -7.052875910061219 9.18220706234097 0.102 -0.4782751639021194 0.4135261794839903 0.102 -0.3655815537579921 0.1902264255918257 0.102 -0.6313469218310837 0.8459957718055444 0.102 -0.4118536891933344 0.2118089799228808 0.102 --4.633722883576699 6.973119229096812 0.102 --0.01626546628552299 0.9471370772183473 0.102 --0.09161157539000953 -0.014259563931883 0.102 --2.299512436379557 4.055672447944207 0.102 -0.04953041355743976 0.7603757702434546 0.102 --0.1087845654262021 1.093950128092878 0.102 -0.0160227852639278 0.4913955794018333 0.102 -0.4150426567936172 0.9622194087587478 0.102 -0.9586043803033286 0.3733241761650661 0.102 -0.5534446051462543 0.496613845449684 0.102 -0.3681480599921154 1.03016083599637 0.102 -0.3547965869496776 0.3514581567064432 0.102 -0.3864019057961487 -0.09344451017802509 0.102 -0.3778371576349953 0.967973502697138 0.102 -0.6415846742986635 0.7597657772624347 0.102 -15.03880655348038 7.831897780688172 0.102 -15.95961013337935 5.583248877063276 0.102 -2.369223463238524 7.387309258741786 0.102 -0.9720724473099804 0.4645919462498566 0.102 -0.9932491603820108 0.435265037300134 0.102 -0.607346096582088 0.2486052053804146 0.102 -1.029498546580956 0.9911600609466712 0.102 -0.2390969154498761 0.9030903069941292 0.102 -0.8736853442024906 0.6561799736009832 0.102 -0.4870705076618468 0.8436546729270678 0.102 -0.6675996588587081 1.008020693969213 0.102 -0.5700904946371974 0.2186294871007692 0.102 -0.3646118668896535 0.06631471419009599 0.102 -0.6766819332456755 0.04171459148644965 0.102 -19.2315546974662 -0.06356987137064922 0.102 -0.8830540801188577 0.9059078871693366 0.102 -0.489575737600772 0.9581581825136017 0.102 -0.2695975020727587 1.000216205392812 0.102 -12.16654212053445 -2.770305489366014 0.102 -0.513199310949213 1.050123967762328 0.102 -0.7502023868828118 0.5983349868753685 0.102 -0.2363527924593528 0.5919456734672358 0.102 -0.5351519604784025 -0.01880994853728809 0.102 -3.261769647085167 2.255890926160858 0.102 -0.06933812681973486 0.6098510615483098 0.102 -0.5471188633242684 1.028021294657862 0.102 -0.7259287376859233 0.2114350515307378 0.102 -0.6694419261553111 0.9394683290447832 0.102 -0.4223978977599639 0.1083354616445375 0.102 -7.333409252332752 5.05701509925241 0.102 -0.7636893329263325 0.646702724264959 0.102 -13.28410013726076 -2.173535113784053 0.102 -0.6414862917239571 0.2174588840021381 0.102 -0.9483406403844767 0.3104379613332887 0.102 --1.348193175094909 2.154588053698355 0.102 -0.4515490699168071 0.2908192079390985 0.102 -0.7964840705373717 -0.002498472759010899 0.102 -8.302055859220962 6.66675014973545 0.102 -0.8250422379683451 0.1902196274491707 0.102 --1.260299920473052 7.440323073508177 0.102 -0.5737963500912273 0.5667595640239858 0.102 -0.3401820707327877 0.8075329984319168 0.102 -0.05794613492072338 1.040927764734643 0.102 -0.634837584184174 0.9293031101934857 0.102 -0.599666061253473 0.7351117750203929 0.102 -3.053776843555375 -9.046563392208288 0.102 -0.9411167092194961 0.2808335213948654 0.102 -0.9115050786608638 0.6375259940264842 0.102 -0.864436047670338 1.016083577471598 0.102 -0.2315974185874672 0.8698039104511878 0.102 --3.30240812651829 -2.1033441214275 0.102 -0.3490982017246859 0.9892500181313335 0.102 -2.423832028458163 -7.064521225699282 0.102 --8.988485881050149 -1.581950209438619 0.102 --3.272978368741512 6.28678077762034 0.102 -0.5352020447688007 0.5471785842709004 0.102 -0.3887063038245128 -0.04836976856782686 0.102 -0.1866113183441247 0.6585018227554059 0.102 -1.021961555677822 0.9206217871460857 0.102 -0.1643296011425767 0.6442724546502127 0.102 -0.1993506904453368 0.5257108328532507 0.102 -0.2217312578072655 0.162975368964727 0.102 -0.1617534671883622 0.7668877463860132 0.102 -0.8350023961029497 0.7358851606393416 0.102 -0.1964147982833478 0.2536713973545371 0.102 -0.729506144888062 -1.976173711564313 0.102 --0.07471460309715254 0.9085080524681128 0.102 --0.0570462181836662 0.9277055478966282 0.102 -0.7457968754926597 0.7670684710385703 0.102 -0.2360906760403275 0.1142998126875192 0.102 -0.8023371145908472 0.5952346634738794 0.102 -0.2930094136673295 0.7618067444791164 0.102 -1.117013878823974 0.8534980543925014 0.102 -0.6161361147143893 1.004016881083343 0.102 -0.3899060536632996 0.9429671995384252 0.102 -6.13734075011322 -2.629742886488911 0.102 -7.518023929113437 -9.031787526900482 0.102 --0.04782550741742842 -0.005832018523667906 0.102 -0.6326031774713905 0.18463357210516 0.102 -0.3194183939520328 0.6450300650932111 0.102 -0.6102375876471404 -0.05739445187002445 0.102 -0.5995668651871491 -0.03648449692427004 0.102 --8.41405355725006 9.017160267772629 0.102 -1.03434116380567 -0.03940839843197508 0.102 -1.021652810861919 0.01408249840189749 0.102 -0.2721485568649853 0.9092795952601653 0.102 -0.9711231784161906 0.001795226972961966 0.102 -0.1001318815302789 -0.1077178822768657 0.102 -8.213598258384831 3.455070414433742 0.102 --3.832300074538279 -0.552472264476604 0.102 -0.9263976801831622 1.045169365723258 0.102 -0.2444056234118595 0.6912500691228853 0.102 --0.05583658999858375 0.9855086260561479 0.102 -0.7458203407006857 -0.04385061434678998 0.102 -4.798028034046517 2.20611099195912 0.102 --5.660929586929052 -8.089850664262336 0.102 -0.1390136852031543 0.8828974157241355 0.102 --0.03105219602398273 0.9218899165358261 0.102 --0.09393929225121975 0.6648103958800556 0.102 -1.130479863555739 0.01917165832118633 0.102 -1.190460142208206 0.03369294709726837 0.102 -1.390901154283543 0.09226284429703376 0.102 -1.242838566404857 -0.09700462408479807 0.102 -0.2010768460225902 0.7407451821363442 0.102 -0.384376064009932 0.5565173961216308 0.102 -0.5502094876905864 -0.04683125834747928 0.102 -4.932975849561672 -2.908945648116909 0.102 --8.028881924183967 -9.023756032537431 0.102 -0.8344103835930089 0.1686241182780772 0.102 --0.02685142294020948 0.7602830239988622 0.102 -0.5997198430604266 0.6561040014470577 0.102 -0.6740717015260865 0.7539029187349664 0.102 -0.4519874903868165 0.1337337241818485 0.102 -0.3977092859391118 0.2592348163364798 0.102 --4.805101336882088 -6.081829484641639 0.102 -0.5380368006267516 0.9419414741299852 0.102 -0.3484122884411834 0.2671857342110067 0.102 -0.3900934593107833 0.6729723138444885 0.102 --2.002577884422664 1.41224968371516 0.102 -0.6299771532215271 0.2711215930509315 0.102 -2.123859288845654 -2.74464219779951 0.102 -0.02590090280319446 0.5577652207847559 0.102 -0.01409684259954008 0.07457388672997556 0.102 -0.7736041432531078 0.675394965596568 0.102 -0.4411278648225198 0.987226010290947 0.102 -0.1431603445585649 -0.04982839282545112 0.102 --0.02872075860324821 0.3402600594642616 0.102 -0.674561385474486 1.43083052107119 0.102 --0.05033376558460761 0.2345582697475677 0.102 --0.09209713548975838 0.7672533162265961 0.102 -0.7027865520258836 0.949965491874104 0.102 -1.040995633392725 0.8435203022194139 0.102 --4.077223686500978 1.735183794435941 0.102 -14.95185675096663 -3.992189984615187 0.102 -0.3084547799248155 0.3410861193151041 0.102 -0.9818814751732405 0.7604206907195367 0.102 --0.02065742834464327 -5.969462818476583 0.102 -0.1412757572251244 0.4269665567033762 0.102 -0.9287777449251927 0.9224407610451471 0.102 -1.056537545776844 0.01389617656974547 0.102 --7.009620156885881 2.039425842487121 0.102 -0.3637078309945752 0.8130209371318008 0.102 -0.9975111616704406 0.9331780502995096 0.102 -0.3811052781615174 0.3792764483672987 0.102 -0.3947396827856773 0.9812344092727803 0.102 --1.61448491314832 -1.340556299293288 0.102 --0.04878486790533172 -0.07035685772505235 0.102 -0.2498902985298936 0.01064556313393834 0.102 --0.08931194033602376 0.5658748230384002 0.102 --0.07689158208472671 0.5834262718220328 0.102 --0.09030521492828306 0.6000377128840112 0.102 --0.09787082144200644 0.6228202580427171 0.102 --0.09209525155064442 0.9054851114004384 0.102 --0.4952463643977179 -6.934032794168542 0.102 -0.8043338163913413 0.46235344710904 0.102 --0.1793777829117212 0.6075497302568517 0.102 -0.509734252148763 0.8455688529378786 0.102 -0.5641841727053141 0.6088595899447001 0.102 -1.041300340222993 0.3531746138731287 0.102 -0.595181023005863 0.3413793026365183 0.102 -1.097674699531989 0.7671733854647368 0.102 -0.08173121205064293 0.4759588123928126 0.102 -0.4301679464542102 0.8741027045628782 0.102 -0.3688663698331227 0.6425719684085218 0.102 -0.2934734917189289 0.3539661150783464 0.102 -1.018294231958215 0.08481997717632465 0.102 -0.5653642902275786 0.3834722974289575 0.102 -0.6883015594740984 0.8822816366467052 0.102 -0.4966645227146316 0.7458263433654599 0.102 -19.06618436209985 2.099606447800743 0.102 -0.1464718251765037 0.1813731856636973 0.102 -0.5833532983257111 1.096390870906199 0.102 --0.0752071898285591 0.6655835748880186 0.102 -0.2228616346276563 0.2955015395353733 0.102 -3.786231511922756 3.874907050784327 0.102 -18.11682020025515 5.558504942638788 0.102 -18.20293246363397 -5.452640747118894 0.102 -0.2854045435112634 0.6757075665563341 0.102 -0.5538490690365316 0.04000158426046296 0.102 -0.9364689904659613 0.7583898480179051 0.102 -0.3418270715167137 0.05154882255666506 0.102 -0.7540871074330504 0.2299897594503791 0.102 -0.6064212790153316 0.02409919639694342 0.102 -0.000851620294750103 0.8247032535347893 0.102 -0.930994525061503 0.9988534662697638 0.102 --7.488446689343003 -2.339791547949029 0.102 -0.2059749257864064 0.2824101097910861 0.102 -0.3556399668102412 0.2428252206081701 0.102 -0.694956207844991 0.8106164922443424 0.102 -0.03145128270516977 0.5331749907657075 0.102 -1.512600884538076 -7.537957786183737 0.102 -0.2927529437801126 0.3167154864096302 0.102 -0.2694123187059059 1.075575535602955 0.102 -0.9572965197574758 0.7825858624360019 0.102 -1.042248020655622 0.2554465475326609 0.102 -3.698758961408318 -8.223993610136192 0.102 --0.05301898849801359 0.6867409995218846 0.102 -0.4451387926806357 0.1571175839614598 0.102 -0.1150819271882726 0.676469882633422 0.102 -7.580398468877172 0.1522656024955986 0.102 -0.648904272763279 0.7923465360386011 0.102 -0.4180201971834094 0.7694876273315989 0.102 -0.03366463231684202 0.4628506715284514 0.102 --4.006783785499273 -5.066952266975938 0.102 -1.058172769001607 1.019027668195748 0.102 -0.2284738637775327 -0.04456324600148904 0.102 -0.8257446435106723 0.8510124970185544 0.102 -0.5729151205334808 -0.01146217086128063 0.102 --0.8915609323463637 -8.328853798840253 0.102 -0.1982700591327781 0.4503373792858603 0.102 -0.4020963558102231 0.8623326035469956 0.102 -0.4308078643155882 0.2298492247911783 0.102 -0.2528436233782738 0.8256282170652131 0.102 -0.4452429344906106 0.6905243598343819 0.102 -0.8592814250946303 0.9847488642563118 0.102 --2.871424581728117 7.440637044242095 0.102 --3.975292511635448 8.073261672702003 0.102 -1.079442995038509 0.3198260068872779 0.102 -0.2118025802361891 0.3124627381607333 0.102 -0.6952824824188941 1.109025500771364 0.102 --3.784641750097876 -7.905865509510978 0.102 -0.3354996384950535 0.1818483250527611 0.102 -0.1628501370601191 0.3170269082047119 0.102 --0.09988030398560481 0.5086745497730291 0.102 --0.1346809444855921 0.559002978943522 0.102 -0.003861757859510459 0.5212738068404049 0.102 -1.057324364780489 0.787689525158106 0.102 -0.6015954029743251 0.5208232448561128 0.102 -0.4790280563099648 1.023701153454312 0.102 -0.8383976759981449 -0.07956467371713155 0.102 -1.023894869278342 0.666560555047475 0.102 -1.005722235998542 0.6530826328074817 0.102 -0.8276342028766861 -0.05436805904832519 0.102 -0.323534890360633 0.4914494418684803 0.102 -0.3510231370814055 0.4913858447675211 0.102 -0.5185230426309593 0.6300165010100612 0.102 -0.3972220437464574 0.7363580292501942 0.102 -0.3109543979024729 0.9348539335084822 0.102 -0.6032927764688077 0.3730210215155473 0.102 -0.8263190613061885 0.5531936911406565 0.102 -0.9819852222736335 0.7010204010618312 0.102 -1.079485192319875 -0.1053105058632268 0.102 -4.772488456747026 -1.618299614768513 0.102 --0.0171771364913575 0.1417918930469864 0.102 -9.604981832032912 -5.845700524306658 0.102 --0.01758161157016152 0.2341846901199362 0.102 -0.7687569635510519 0.4188720127267216 0.102 -0.9471516012369681 -6.331108797129163 0.102 -0.898233040309388 1.009345582651525 0.102 -0.374853283956531 0.9888348176367306 0.102 -1.004057417167153 0.5047150522267438 0.102 -0.7298846394498075 0.884245621564809 0.102 -0.2864828892946286 0.8496863904545828 0.102 --4.678431568774211 -6.958302587601392 0.102 -0.3556671132465425 0.3890391531691598 0.102 -14.8089645446393 -2.566107217037557 0.102 -0.7682942853652041 0.9831777214098014 0.102 --0.1042158914473803 4.846992763736628 0.102 -11.17645937518584 -6.611522110210093 0.102 -15.21015381280379 1.819046044740745 0.102 -0.2870139113184424 0.03740580016992156 0.102 -0.7462002666533103 0.6220336944057161 0.102 -0.788647847016841 0.1753815587141227 0.102 -0.7958235848826563 0.2008898753089499 0.102 -0.7517021711910225 1.027384965735066 0.102 -1.221064995189259 6.72641536845155 0.102 --7.968517923891079 -1.201481567687528 0.102 -0.5193672437143881 0.03841349129149459 0.102 -17.30690160644514 2.687947232011577 0.102 -17.87838785383522 1.437237507275129 0.102 -1.097358698620561 0.8548272826896383 0.102 -0.6709188435714182 0.4890327933145134 0.102 --0.08894145684274583 0.3867891897059609 0.102 -17.00454320194591 -1.739396385444246 0.102 -0.08836316858504259 -0.04820647350090235 0.102 --9.039880124423583 -8.02395058241302 0.102 -0.0001782077190061799 -0.03093959126060519 0.102 -0.5867973065389565 0.7018002232416807 0.102 --2.931334791395551 -9.079764450670551 0.102 -0.2897903680687997 0.2365252884402762 0.102 -0.1332018817138338 -0.1003607759620538 0.102 -0.8931400687058078 0.2228213725062848 0.102 -0.9844665048593948 0.8576732938327226 0.102 -0.8659281457848418 0.7804622700757962 0.102 -0.2052431296865505 0.796120083717741 0.102 -0.6767908238150401 0.8695826340037609 0.102 -0.324291251309834 0.5637672016846496 0.102 -0.1318654756705394 1.017589076941117 0.102 -12.05291744909356 -0.6832657874145954 0.102 -1.009874592288906 0.7425148085256692 0.102 -0.576394335050216 0.1164945777250802 0.102 -13.67232752527311 -3.231271962172212 0.102 -1.056203305561531 0.1543133982186871 0.102 -0.004825738148713968 0.274956172208184 0.102 -6.467468475963648 3.560716225629994 0.102 -0.749012466680406 0.4423246163577439 0.102 -7.275643176661924 1.750416787231487 0.102 -0.6413266863397393 0.8960033766174224 0.102 -0.2179992943824705 1.032480811199004 0.102 -0.1621515060774899 -0.07466633271166438 0.102 --0.5082484088106305 6.691290420670461 0.102 -0.3927559631673987 0.8906465673508468 0.102 --9.006927851367061 8.421203006854148 0.102 -0.7832200626918593 0.398910624820669 0.102 -0.588687993546015 0.5915766612451114 0.102 -0.4205643237007612 -0.1831084889352936 0.102 -0.5630601256157635 -0.09138317402740277 0.102 -0.5319265071089332 0.2122387196137785 0.102 -1.157153961226709 0.9907665738073098 0.102 -0.5873997455489288 0.4821636770213063 0.102 -0.5160852525089172 0.8086391943769684 0.102 -1.07118588261206 0.8953778419231995 0.102 -1.011751726700339 0.6879810878577951 0.102 -0.7521130265544124 0.7981591794628851 0.102 -0.2523737726073252 0.635868085506574 0.102 --6.96825444270115 1.092008532067397 0.102 -6.945386668176819 6.285964406131661 0.102 -0.4257293461949246 1.092796461951394 0.102 -0.427382935171464 1.140998383617239 0.102 -6.249898505991201 4.686624128011568 0.102 -0.4358691910047883 0.9596594459202384 0.102 -0.5990718689007529 0.8545177381256657 0.102 -0.7812594979759401 0.06182158759943617 0.102 -9.84378794723793 -3.552225450832381 0.102 -0.4054811032647447 0.6096459616735804 0.102 -0.710662519821564 -0.06380816106619668 0.102 -0.5093113929192219 -0.04585758182940256 0.102 -0.989565859101541 1.246280544982071 0.102 --0.09491541224593603 0.8687915622450846 0.102 --0.08875969346968547 0.8485195539730634 0.102 -16.1402419546941 -9.288584858619963 0.102 -0.2291385621275288 0.4828422329720803 0.102 -1.076823760720131 1.032605261150643 0.102 -0.4876038616601587 0.1860235843622283 0.102 -0.9261433474406082 0.127307802641011 0.102 -0.5695667811958007 0.4643013592167393 0.102 --0.01219446142629519 0.5980482962547772 0.102 --0.02767095411273646 0.08706634324573327 0.102 -0.9498932271082673 0.07611340941409345 0.102 -0.7659100405749744 -0.0113783069457465 0.102 -0.9210144126008566 0.3451366832003814 0.102 -0.2006143185445169 0.6292211072811611 0.102 -0.08694664851628835 -0.07863548981084902 0.102 -1.053204562592152 0.6574721252790809 0.102 -9.31831670301899 -9.269052655348702 0.102 -15.90279427710466 0.7586495508611347 0.102 -0.9477206242167177 0.01980905980067011 0.102 -0.4547827355278532 0.92013397999533 0.102 --3.255942061807984 -3.32457838864043 0.102 -0.114238703502404 0.7323956539010845 0.102 -0.03997429576125974 -0.07396648993772546 0.102 -0.4070392488694037 0.8276003548235789 0.102 -0.6213798510170114 0.8217109118547297 0.102 -0.3495533884790644 0.4176113338239004 0.102 -3.051252278565011 -5.520190517532042 0.102 --5.356734441950567 -0.9311654317874548 0.102 -0.4675126675574044 0.8857245859056547 0.102 -0.8445423716132641 0.871095490620487 0.102 --0.02778963405968743 0.538197635662651 0.102 -1.029416107654905 1.100622579215222 0.102 -0.5412169452721198 0.9918378631825526 0.102 -0.04965349345715022 0.9541213915169801 0.102 -0.9441829235739082 0.4485340742716601 0.102 -0.05520359758169168 0.3782980288980887 0.102 -0.5369293363610088 0.02133843740413649 0.102 -16.07750058860253 9.31513392241305 0.102 -0.3393161182660765 0.9403527905498053 0.102 -0.8666720599155154 0.670231829948056 0.102 -19.17897783128079 8.435095925908344 0.102 -19.18137035374323 -8.386653847683558 0.102 -12.01975357535241 -4.706035217261407 0.102 -0.8514449748585438 9.118926752158096 0.102 -0.03954648552778803 0.6732699315143856 0.102 -10.9328256394876 4.238432086113592 0.102 -0.5190536321322052 0.1429323920882088 0.102 --0.07253550226189036 0.8730984000148392 0.102 -0.4023048018435426 0.6919949982069187 0.102 --8.166539981797001 4.293014019673764 0.102 -1.096661008344345 1.024419061599746 0.102 -1.042891517384006 1.073026800023396 0.102 -0.335226644443249 0.9735503187409542 0.102 -0.4934447442692967 0.6976262367439972 0.102 -1.044856640585846 0.5375452418073456 0.102 -5.604815569576124 -5.855126125933277 0.102 -0.8640233950012912 0.3669489532184669 0.102 -0.6999224643336061 0.2087302692326533 0.102 -0.1731804173164066 0.014632961388476 0.102 -0.705553987519929 0.3445759509208514 0.102 -0.6702294046893476 0.209180511580767 0.102 -0.880360676843235 0.3612270510409555 0.102 -0.3608530639742097 0.8474869653933805 0.102 -1.552473542084919 -1.628890032457932 0.102 -0.1836186808516378 -0.05279748781483065 0.102 -1.129428542119484 0.3693297578628611 0.102 -0.6439991248461558 0.4405023088828989 0.102 -15.64967961020031 -2.549638902370547 0.102 -0.6828001602309529 0.7857335705564458 0.102 -0.4865341140430269 0.8165291702509534 0.102 -0.7843958643833139 0.2201397338343797 0.102 -0.4387778384246254 0.5091809544140051 0.102 -0.5718348483603782 0.8580274748411099 0.102 -0.01970894380242838 0.6834057654458165 0.102 -0.5662073405272406 0.8812045210630751 0.102 -0.7750840636318967 0.9038768283716274 0.102 -4.896060216550261 0.245543614980983 0.102 -0.544763648572824 -0.0928566236927417 0.102 -0.5397519848959985 -0.1039590773007516 0.102 -0.5376966483042533 -0.1496739319063598 0.102 -0.4793010553683376 -0.1506943035667565 0.102 --9.24160406901499 -0.5870084649164546 0.102 -0.1376272360161714 0.4907240526629385 0.102 -0.6022733909848713 -0.07003502420108151 0.102 -0.5875742560437178 -0.06864293430950891 0.102 -10.44640473159706 -1.269282328629923 0.102 --2.147113051340399 -1.980371898523448 0.102 -0.2690155512294237 0.3513871746661379 0.102 -0.7309018634007877 1.055787947266241 0.102 -0.5625978454884739 0.8214835782851484 0.102 --0.07539870842076266 0.6219290716010283 0.102 -0.372575111729816 0.608151317801704 0.102 -0.07407470084929882 0.8492113360981957 0.102 -0.9300448741569731 0.6633115745001796 0.102 --0.9149569425906172 0.8706173189514529 0.102 --1.780562584543458 0.5578554080394649 0.102 --0.1031624792778016 0.9203782358790504 0.102 --0.05489563287886348 0.8534331015100269 0.102 -0.4920742705741813 0.2210648263897186 0.102 -0.2716097295006187 0.2292170705281886 0.102 -6.558275806235622 -0.9720643162051663 0.102 -7.543296126187593 -3.844355008049735 0.102 -0.09232929540975449 0.6578016333194432 0.102 -0.3458346820512121 1.068550798570311 0.102 -0.8087060235212157 -0.09627059746331673 0.102 -0.03474851741292669 0.1008301781214338 0.102 -0.6033034295953152 0.9871247561965991 0.102 --6.134598431923787 0.1264031773784663 0.102 -0.8416380184863574 0.1529447016614283 0.102 --0.0350041033964789 0.9643459389582985 0.102 -5.613756737624264 9.234301089333862 0.102 --0.06782085998482482 0.5571773339865645 0.102 -0.1035183296502183 0.7915329935416135 0.102 -0.0108752298254922 0.1431464670316605 0.102 -0.5716416857221387 0.6705821387981652 0.102 -0.564230370563962 0.6456120665461385 0.102 -0.3745776101055893 0.7116888797349445 0.102 -0.7686006194483097 1.043217358995022 0.102 --0.01413548459106631 0.6978685042373076 0.102 -0.9584344490039884 0.4885549748770223 0.102 -4.308695115458109 -0.8934571381647711 0.102 -0.3706421136947555 0.1014544857621554 0.102 --1.861071188735614 -6.583548062975553 0.102 -0.326913196439841 -0.05070695329446635 0.102 -0.8185779224618142 0.5206955838894358 0.102 -0.6646595788709972 1.041743120027519 0.102 -0.9854740527180659 0.7327650047538656 0.102 -0.4219567652563221 0.2575150059092022 0.102 -0.591630751509828 0.2223816479924787 0.102 -1.068720078718058 -0.06809794568879637 0.102 -0.4630344785754185 0.1493056308215013 0.102 -0.5133560676944665 0.4592890678942567 0.102 --7.0944339598977 4.93622370269353 0.102 -0.06633475161791637 -0.0378411194291493 0.102 -0.4701748508687043 0.5063916225629144 0.102 -0.05308862937197689 0.1507933590643531 0.102 -0.07217384493598926 0.5410388813932396 0.102 -0.8632301800775743 0.483225076876485 0.102 -0.16601133039951 -0.0260340219976684 0.102 -0.1833948956530741 0.7220860520750404 0.102 -0.3793528015380992 1.013172042527815 0.102 -1.218900078473384 -4.218007857602957 0.102 -1.091918008315763 0.04542553397008554 0.102 -0.3876814706498106 0.7770591239493805 0.102 -0.5384918776035701 0.2795690479647188 0.102 -0.228461275824213 0.3284283634201002 0.102 -0.6112012031225049 1.018419503530684 0.102 -0.3305844562885591 0.6882766865550968 0.102 -0.1044298693773777 0.3891594892550946 0.102 -0.7937406951924105 0.3551669986472444 0.102 -0.6421123238305465 -0.08526915846614969 0.102 -0.7319063409212762 0.5285247999061669 0.102 -0.8673877323288927 1.043599259687903 0.102 --9.196828605350706 -3.301384045054147 0.102 -5.583286233588859 8.132471543910805 0.102 -0.06807556773851234 0.2280801100239216 0.102 --1.30868236813467 -0.2513858548112706 0.102 -14.58477324813968 -3.496473777354255 0.102 -0.1600833356007459 0.04098029924967549 0.102 -0.6526270305659914 -0.07113335633736173 0.102 --7.549755536876352 -6.288554751820412 0.102 -0.01033947757767466 -0.09439887653709933 0.102 -8.773722911413017 9.26269087037813 0.102 -0.9786556505342113 0.806092979728365 0.102 -0.290227828523402 0.100162265157785 0.102 -19.40009437244521 -0.7632613736996375 0.102 -0.4681894188826877 0.2107628197445974 0.102 -0.2298698522716391 0.5704012770088063 0.102 -0.4041725711484007 0.4664098107001697 0.102 -0.2620233535329712 1.028804954970954 0.102 --0.07717696875607802 -0.1051125224238978 0.102 -0.1792278125044822 0.5619382969071939 0.102 -0.6353386606066176 0.1293262969112513 0.102 -14.34816966033572 -5.368641609573531 0.102 -0.2427107075965296 -0.0170986232998251 0.102 -1.0416427565807 0.7334208373655253 0.102 -0.8316973523487755 1.017021737873027 0.102 -0.1544925205906184 0.4695840537792904 0.102 -0.1098038778626482 0.01391983930047576 0.102 -0.02031268945044444 0.7696802229891397 0.102 -0.5371970303124176 1.016858543928475 0.102 -0.9794025731037338 0.3476141402728243 0.102 -0.02144471398507077 0.2410417737536795 0.102 -0.003433265802442818 0.5931083264251769 0.102 --0.03038914755032016 0.3085299621848163 0.102 -0.7446649306127124 0.8598709399387329 0.102 -0.8539137357014869 1.055244399760387 0.102 -0.8905636996704981 0.8012536813453325 0.102 -1.75618136766811 2.274633626060107 0.102 -0.5818985327294143 0.2650204081253416 0.102 -5.462440840971893 4.083959135789006 0.102 -14.4353117975146 9.190464844208504 0.102 --1.626533794430057 9.202604612403608 0.102 --0.1048618810977648 0.808031130055064 0.102 -0.2935567156011654 0.4656719331138763 0.102 -0.4224932800702474 0.6711203396684398 0.102 -1.202471907535681 4.12099957902988 0.102 -0.8577004877775294 0.9139334653068288 0.102 -3.495716798300894 -2.828691628203357 0.102 --0.1131472998771782 0.9503766594758615 0.102 -0.2932604927844182 0.4956401524013374 0.102 -0.9347192678887351 -0.02698572928244393 0.102 -0.4433464113900112 0.9344392938046788 0.102 -2.395358372588628 -0.7408322909397657 0.102 -0.02502720401911674 1.09311583591084 0.102 -0.921825636005543 0.3753226113896986 0.102 -0.8991252913480671 0.7054628799146986 0.102 -14.53362584591297 5.345952658426843 0.102 -0.001134272048471755 0.3339836707550674 0.102 -7.259979892813922 -6.676312923414963 0.102 -0.6687163108422467 -0.07265484119130181 0.102 -0.4802287301478788 0.9906163887994082 0.102 -0.09177299959379245 0.1108211866434551 0.102 --0.167744427329139 0.9386873195678884 0.102 -3.35626571852775 -7.44946443067122 0.102 -0.6905483300801292 0.9752198412703998 0.102 -0.6431108372738661 0.492343907900206 0.102 -0.4369935500353715 0.2047752987134729 0.102 -0.7108357882097707 0.4046083024632793 0.102 -1.086402125061597 0.8006153651200877 0.102 -10.73531643815901 7.580895753148545 0.102 --0.05090101936713343 0.1095458239915713 0.102 -1.10510269291171 0.3382619026835906 0.102 -0.8832556993874583 0.5001870587815461 0.102 --6.14126136123951 4.081140175921711 0.102 -14.48636102314864 -9.05855902802152 0.102 -0.4566313610455313 0.647894918000839 0.102 -0.7114064996517724 0.1342589001799741 0.102 -1.103652338749768 0.2591307441414509 0.102 -0.06369726397560692 -0.0634706396793665 0.102 -5.772311737062023 -0.7384933274306886 0.102 -0.9834971551690971 0.8903615352899139 0.102 -0.2564304228449178 0.5078521109387485 0.102 -0.2600077988470996 0.4850119876324748 0.102 -1.050499637168605 -0.054189892883446 0.102 -0.5835410715383201 0.6325170009364387 0.102 -0.001783082882889187 0.9849191014651748 0.102 -0.2577911872384874 0.4023982503358973 0.102 -0.2280223803373545 0.3624552519783991 0.102 -0.9091920370054715 0.1092255705461514 0.102 -0.6619949068514975 0.3214865685318121 0.102 -0.8231813180133467 0.8134477890576437 0.102 -0.6136893038623671 0.4279673730415542 0.102 -0.2510318096989027 1.1019501969846 0.102 -0.4363440287028461 0.5772359096936153 0.102 -0.5957518237411966 0.09459706035225408 0.102 --6.565207557130075 3.094900688853008 0.102 -0.08990207056736516 0.9261896974752516 0.102 -0.6980009427518309 0.6594467082096954 0.102 --0.03240636994564889 0.8966583893989737 0.102 -0.8386604401644346 0.4713298602232137 0.102 -0.0298634370566577 0.5890981386741556 0.102 -0.4321217013223136 0.4055132940554752 0.102 -0.3936892638891403 0.3974832158254067 0.102 --0.006396553121712865 0.6469226124219976 0.102 -0.1120468220023299 0.84231461434849 0.102 -0.4684459118529874 0.08975475796887483 0.102 -0.4675179935316762 0.1208638421869524 0.102 -0.8507521113638836 -0.03192776415818097 0.102 -1.007702053532325 0.3526164167214915 0.102 -0.6347512953496107 0.401544059670814 0.102 -0.5383403559105361 0.3026246091101211 0.102 -10.57700583595184 3.489124472868084 0.102 -0.08096338997421909 1.09353486171181 0.102 --0.09905003375962354 0.2116819604274527 0.102 -0.4454214968294839 0.2625333689386808 0.102 -0.7941029633699798 0.4401377669940423 0.102 --0.006678586577442067 -0.01518390468295184 0.102 -0.1442536222464184 0.2980146846781553 0.102 -0.7417490387196 0.3384218953671949 0.102 -0.7102407308656998 0.9215507945531702 0.102 -15.81238223343394 -6.702456485643512 0.102 -1.103241892287284 0.8836845012609971 0.102 -0.5017876803403221 0.08999238782222879 0.102 --0.04408597676723033 0.1495064952045013 0.102 -0.6525192165025147 -0.0006874328418949904 0.102 -0.7059664676764333 0.7464823247906336 0.102 -0.2881635212052857 1.097296027935671 0.102 -0.01846258135180009 -0.01723943470060402 0.102 --5.388129621590625 5.902075045510418 0.102 -0.02095608013872518 1.062279204309393 0.102 -2.766363833682563 0.8328015345535302 0.102 --5.506153158083522 3.218898314261664 0.102 -0.8425423121796057 0.5585835354518839 0.102 -15.64728877269609 6.513776804572331 0.102 -0.03689496103181349 0.5473350342733775 0.102 --6.062497236072337 -4.256226549239607 0.102 --0.09596903766846641 0.8899262736255511 0.102 -0.4278315177919144 0.1373664194115097 0.102 -0.2927674275910861 0.9549365510653981 0.102 -0.4552888518676247 0.6214806162828818 0.102 -0.03439754860370845 -0.03643604842474971 0.102 -9.958919969002357 -9.49022087454178 0.102 -1.048902116470286 0.326715808367822 0.102 --9.175013630857775 0.05671605461087931 0.102 --3.122179339991003 9.136773586607982 0.102 -0.04526325127978215 0.1944317396523422 0.102 -0.6839707724410702 0.5713108037043885 0.102 -0.2007242965951276 0.3271964713249306 0.102 -0.6976143975682945 0.112017775895614 0.102 -0.6144515128441368 0.5016407821571744 0.102 -0.2908353776077647 0.3855458059200272 0.102 -0.2734288257692464 0.8055401878675247 0.102 -0.09426883453344592 0.2021797690845128 0.102 --8.203975360737884 7.622265478278671 0.102 -8.777762051279668 8.461656925219593 0.102 -0.04150943499234853 0.6464045500094229 0.102 --7.293044723212749 -4.337020458482763 0.102 -9.126398348878666 -8.125948125428682 0.102 -0.9166122283691358 0.733099668690001 0.102 -18.90013959419867 -2.445260959181074 0.102 -0.9752361218199906 0.6537846507254284 0.102 -0.2515275885642637 0.2917876659266809 0.102 -0.4386258588977298 0.1209083339982552 0.102 --0.04354113822940969 -9.278495795940596 0.102 -0.05039048216118368 0.6933604472438416 0.102 -0.2697921111076939 -0.07813618494972299 0.102 -0.2695418235522796 -0.1044015366787261 0.102 -0.247302821344959 -0.1261647658469016 0.102 -0.2951788599064696 -0.1144985091333556 0.102 --0.0256520689197784 0.4370192706377137 0.102 -0.6046810416342192 -0.01109711746212147 0.102 --0.10483765320993 0.2944105084556761 0.102 --0.09904484645499026 0.3177117722498118 0.102 --0.1089682003533508 0.3284424047463818 0.102 -0.2980346796940326 0.5437265881273164 0.102 -0.3538044655005887 -0.1081901078676993 0.102 --0.03567925805846997 0.8012504009817417 0.102 --0.0442066146147655 0.8255715234273761 0.102 -0.003960350879463675 0.4441514984770295 0.102 -0.6261477504746422 0.6006282215293466 0.102 -1.068228241050651 0.131075345992938 0.102 -0.8326074979253126 0.986098458815913 0.102 -0.6725588743608512 0.07863651739276255 0.102 -0.1962742735022617 0.01842864077218737 0.102 -0.4090078682088834 0.5808113446871074 0.102 -9.816780441498841 8.264054922413598 0.102 -8.398378872577203 -3.637867995935083 0.102 -5.65310359983955 -1.485843879706497 0.102 -0.6087797863682904 -0.08359326299835573 0.102 --0.03594514532355966 0.1750919415692389 0.102 -0.5632208182790743 0.3509072670083918 0.102 -0.3739155976399762 -0.1118534666087589 0.102 --0.01123164336835232 0.1641253570375305 0.102 -16.16746434792528 7.482976771776231 0.102 -0.7533449939354185 0.9959394248669444 0.102 --0.05400672223942483 0.9694130085066848 0.102 -0.5280126258338179 0.5612367009321763 0.102 -0.5047883304057083 0.9940792840028464 0.102 -0.8883613750263545 0.6574476935827982 0.102 -0.3448210158026064 -0.07366246747833859 0.102 -0.50027890460449 0.8036712206779484 0.102 -0.5812945732858535 0.4485440292343202 0.102 -0.2017288323582006 0.4772919065723223 0.102 -0.8857104058228521 1.061963882607688 0.102 -0.7396171402077144 -0.02024602034065589 0.102 -0.2379303600641832 1.007836361280384 0.102 -0.06194326020621643 1.010845386835153 0.102 -0.07648928392387348 0.4553117747674356 0.102 --0.03951995501726305 1.067182917048727 0.102 -0.8160941392529246 0.3687441323675544 0.102 -0.3268035511052961 0.3323723403112119 0.102 -0.314671633223387 0.6296109717333199 0.102 --8.083493965766062 -3.928260442920831 0.102 --0.02840157670708104 0.03733466132705887 0.102 --0.0164776079664663 0.008471580461626303 0.102 -0.2961274773387005 0.8059956190462275 0.102 -0.9557215198124032 0.8303487692785689 0.102 -0.6486252317956794 0.8250558576398134 0.102 --0.07063261577459053 0.1901285459642657 0.102 -0.611759942309111 0.4627203504985387 0.102 -0.1265437077312765 0.5698511848512714 0.102 -0.5031613986883793 -0.008786917456815377 0.102 --6.559759028223468 7.449253676259016 0.102 -0.0760463110088293 0.7766025979528253 0.102 -0.5927678158897266 1.064953653119419 0.102 -1.561852976818329 -3.270273861619489 0.102 --0.004528439266395805 0.2515508954118513 0.102 -0.5911383964777163 0.8233723227422104 0.102 -0.1774256187041241 0.5188692266183769 0.102 -0.8874466748330345 0.4043718719812988 0.102 -0.9011723452657456 0.9636475727882443 0.102 -0.31506024467295 1.083022663896226 0.102 -19.16608870988672 3.825193194226088 0.102 -1.111619066846387 0.03525139862145586 0.102 -16.9631695724183 -0.9547505452992912 0.102 -0.2192876701020317 0.3868527820645089 0.102 -0.04262362747399559 0.8226744671552548 0.102 -0.350606780867312 1.018439409957086 0.102 --0.07970125426619522 0.7240837309426754 0.102 --0.07065278373021859 0.7493840252359409 0.102 -0.6975069526885069 -0.01316908744437163 0.102 --0.0943789035914496 0.4856753818578069 0.102 -16.41416943820321 -0.9221588436680762 0.102 -0.6371243883041218 1.093039817001565 0.102 -0.4505161883361419 0.4498900892836844 0.102 --0.0488681572371432 0.2102231941191471 0.102 -0.7351853914957316 0.4165076263718676 0.102 -0.3573740599856611 0.1220594377350371 0.102 -0.5261165432578119 0.8312346128706505 0.102 -0.4899088462460988 0.2477010012008902 0.102 --0.007791277348802175 0.3102739956227186 0.102 -0.4314379840920679 0.9205706599083893 0.102 -0.93380317155279 0.8570559295004252 0.102 -0.5553787137841579 0.7158218892278405 0.102 -19.42117212200689 9.086696892514162 0.102 -19.43060340570777 -9.089563327819375 0.102 -1.052610901895332 0.8107475654135394 0.102 -1.042625019538626 0.8006617254613756 0.102 -0.2289467118638427 0.4517074350927829 0.102 -0.7786339775145504 0.7159321506076284 0.102 -10.0999212437932 -8.134371895299374 0.102 -0.9024914956427226 0.8421455622229828 0.102 -1.007274406787108 -0.07271027009202916 0.102 -12.81715649426559 -5.71345048295814 0.102 -0.4025818030636187 0.0624916653596068 0.102 -0.4675013359012093 0.05757138466289902 0.102 -0.4926226382136655 -0.02919103688786425 0.102 -0.4859626144985825 -0.09347286087083552 0.102 -1.005898742101872 1.045432379589489 0.102 -0.05524489609264628 0.0798328722865328 0.102 -0.5187508494648159 0.2804955975125116 0.102 -12.04014855379172 2.915272710432183 0.102 -0.6453017859283303 0.5454635697848715 0.102 -1.09893776372861 0.5129084215652541 0.102 -13.99664484082971 -7.994338464922977 0.102 -0.9255617481718558 0.6867175861714228 0.102 -0.6451116406749795 0.3858945779998249 0.102 -2.62931055464253 4.303127737381381 0.102 -1.120879660405573 0.4452995147011318 0.102 -12.98944917119186 2.382654768795303 0.102 -0.893893869408565 0.8680278554611754 0.102 --0.03286683713476306 0.2478634586278891 0.102 -0.2743632531313548 0.5229195473284809 0.102 -15.80815033838983 3.626581000676809 0.102 -0.2509949207297853 -0.06064826675026212 0.102 -0.1288714565549208 0.7980576134106876 0.102 -0.004407465171097659 0.9606763427508795 0.102 -18.21890619299941 4.030916674437076 0.102 -0.01490266573446954 0.20210224504629 0.102 -0.1194391417827671 -0.02385148200791558 0.102 -0.813831887419188 0.6812815390631785 0.102 -0.3123741100353044 0.5020705990222321 0.102 -0.824739242249141 1.083025933009222 0.102 -0.4906313942629233 0.004781508443222202 0.102 -1.013929749596318 0.8218449069503584 0.102 -0.6299524576189732 0.460274449907901 0.102 -0.8567998320236004 0.321737585551189 0.102 --0.0354713438444502 0.6697919299533682 0.102 -0.3904725561574067 0.1142492426117132 0.102 -3.802777605506023 9.058903972916616 0.102 -0.4566791060818727 0.03073399796145911 0.102 -0.5391829130442568 0.6849217987688198 0.102 -0.756726634165951 0.03983450526613452 0.102 -1.77267885938707 -0.9720526831416421 0.102 -0.1419465713478723 -0.0304551139064292 0.102 -0.6182770103205187 0.6406304144744851 0.102 -0.6352592006597551 0.6268382265397452 0.102 -1.027927180105113 1.044660045913207 0.102 -0.9566769082279669 0.8709860690760505 0.102 -0.3329597411810071 1.11967248464186 0.102 -0.2688044221412304 0.3051354902652072 0.102 -0.7323961753522468 0.02735127479648403 0.102 -0.4052527065149342 -0.009971985627693835 0.102 -0.912252701541878 0.7797860003609061 0.102 -0.2501905438365081 1.055080568895854 0.102 -0.3499969062030049 0.5764777835261656 0.102 -1.033357735361897 0.3780243936178208 0.102 -0.2746773891410613 0.0490073770623943 0.102 -13.83865241017728 8.230178182718149 0.102 -0.9984181278533912 0.9772980440266832 0.102 -1.073917701307576 0.6443198692853612 0.102 -0.2570327350623259 1.012873453135497 0.102 -0.4213481806068977 0.1931549423150881 0.102 -0.5360288392191099 0.8653271559616373 0.102 --0.07282826581528498 0.8143274896368725 0.102 -1.072089243230244 0.5568938655838137 0.102 -0.460380312782061 -0.1168263102697475 0.102 -0.8164372550880583 0.6189251390453089 0.102 -1.000761471244434 0.8255134609922363 0.102 -0.8035217122935596 0.7714919604632541 0.102 -0.05304892049333987 0.4040907684487054 0.102 -0.8373271565136596 0.7704827861627918 0.102 -18.42754018515865 3.122450389211549 0.102 -0.08573494688490273 0.5913915403572987 0.102 -0.5988301561414673 0.1556936373729346 0.102 -0.6035544268868036 0.06172884004101189 0.102 -6.036246696238408 4.134188341784547 0.102 -0.4326878807335857 0.007459597343122893 0.102 -0.1545615598130203 0.3421886115859357 0.102 -1.085713067602374 0.9634008280061255 0.102 -0.9096930054610421 0.9886398495797768 0.102 -0.7293955182017827 0.9869349515895951 0.102 -0.9795580408085621 0.9073802500092254 0.102 -0.1284795385896336 0.8233314880900648 0.102 -0.844303595404603 0.9628988296257224 0.102 --0.05133510330969268 1.035467810763981 0.102 -0.5891202328729537 1.041372106407507 0.102 -0.9967380692568618 -0.04418708710076308 0.102 -0.01030740189134293 0.8543126983195322 0.102 -0.02166010612006079 0.8087317361034343 0.102 -0.6293013638702272 0.4337811979996667 0.102 -0.2192976498024258 1.094981720534212 0.102 --0.006789052732041972 1.024659021459799 0.102 -9.052913829501861 4.242708496489239 0.102 -0.7218230952904486 -0.03576793277278235 0.102 -0.1840007315071019 -0.03716585486059888 0.102 -0.6633634910427539 0.5834995274305691 0.102 --0.04411582117168213 0.1950255435599282 0.102 -0.7534728784812624 0.8291325001399836 0.102 -0.9613319018581765 0.715394093678862 0.102 -1.104239219372022 1.096710257904162 0.102 -12.36569955469531 4.593003916853243 0.102 -0.9727833125953081 0.4806442590760974 0.102 --0.00380381271601719 1.063582388772831 0.102 --0.0009752720678936971 0.2934086340874666 0.102 -0.9067132365837818 0.4666073572787422 0.102 -0.8095980054841615 0.1558626656334011 0.102 -0.4479870090650451 0.8677076543710962 0.102 -0.03118205268968761 1.075595625922502 0.102 -0.2520859252482444 0.5683380171409952 0.102 -1.009267002240033 0.8444804907346785 0.102 -0.7781901617837274 0.3737486798979384 0.102 -0.7667243114897265 0.0871843505760462 0.102 -0.226392484660178 -0.104661784175721 0.102 -18.33354268803418 0.4268053783655325 0.102 --0.09095652198521496 1.051883877581653 0.102 -0.4676783378214978 0.8660715317201947 0.102 -0.8219857125904857 0.2484155499658658 0.102 -0.807232181677449 0.742938743650895 0.102 --0.1182843591889337 0.4496044535163482 0.102 -0.6682225130454201 0.6434316465218378 0.102 --0.654776661103921 7.345002338479638 0.102 --9.434002850856153 3.045308670066341 0.102 --2.314492112652577 -4.905808070016811 0.102 -2.491205434166989 -4.728339217359546 0.102 -3.897373660784888 2.075693194530234 0.102 -0.3287678765885685 0.4136235620044806 0.102 -1.000153160632483 0.3248868652032977 0.102 -9.558172852950706 9.256159700946272 0.102 --9.258157610440573 9.259039188160301 0.102 --2.685163269960619 5.163683091237494 0.102 -0.01476261330027425 0.9925321615560255 0.102 --0.3891015894476906 -3.495348170853045 0.102 -0.3763406209577965 0.3114737143874716 0.102 -0.9908855195441209 1.098425829313474 0.102 -0.4336165603483545 0.5522395680421798 0.102 -0.1150151878096641 0.8650892023833266 0.102 -0.9724954618799556 0.9545627157646267 0.102 -0.1335611458544947 -0.01309377737686458 0.102 -0.7532356937675814 1.090787196568914 0.102 -0.7026809704208775 0.4919322052526455 0.102 -0.708904083299104 0.1585720781137499 0.102 -0.4516351907858436 -0.02420161381960647 0.102 -3.184228865275823 2.84566154343993 0.102 -6.398251593154233 -8.001928467974672 0.102 -0.9564095902012193 0.1578574310802009 0.102 -0.6171621767063811 0.7936324852230792 0.102 -1.285318477449683 0.946269392203163 0.102 -0.6386724083186208 1.233141173698402 0.102 --0.3390063620276783 5.78432624470176 0.102 -0.3559665266030929 0.6934630713734035 0.102 -15.46951179925328 -3.740481973550131 0.102 --0.05814274474653034 0.8927214447125055 0.102 -0.3681431913505561 0.6761227752694434 0.102 --0.02442435297965723 0.2767028593187282 0.102 --5.32200932568231 -1.920782775354262 0.102 -0.2253187182061292 -0.07190436804711391 0.102 -0.5091275450429482 1.019006042512907 0.102 -0.408582808456372 0.4223763666144168 0.102 -0.06046787080812914 0.585167930846716 0.102 -0.3094287065515564 0.7826250676728252 0.102 -0.3417299652233796 0.2108247294530371 0.102 -0.1816676323476148 0.8655882899782024 0.102 -1.046274142826415 0.3980585080552848 0.102 -1.020255813512517 0.6334335485050621 0.102 -0.8466334828735843 0.7130491616477294 0.102 -4.877853910577635 -5.165999905365104 0.102 -0.3901031504495231 0.5282790204834789 0.102 -0.5900044430512806 0.9372515367934012 0.102 -0.8670652363509264 0.5617187915240757 0.102 --2.135991860049681 6.699157718788075 0.102 -0.8639735630665503 0.6378883371250426 0.102 --1.475180433992987 4.404430548500377 0.102 -0.1703843207308177 0.44270213371374 0.102 --0.4540764375587499 -4.972410729618869 0.102 -0.591591009922499 0.7556844464706578 0.102 -1.114470748530845 -0.008996205077734994 0.102 -0.3779328882652872 0.3518816270220597 0.102 -0.7492537227052627 0.937332890051022 0.102 -0.1188356123679641 -0.0664341870804793 0.102 -0.3750787068723074 -0.07171317833792591 0.102 -1.0440078511077 0.08451917344457263 0.102 -0.05196552039656915 0.4427757254413033 0.102 --1.77563734875267 -4.123765343083278 0.102 -7.956033657350556 0.1944725519182986 0.102 -0.1661094216960859 0.2061540159202146 0.102 --0.01689967055313783 -0.3745548623787127 0.102 --1.757965118639924 3.040757335044328 0.102 -0.4450119722372696 0.4748139950885583 0.102 -0.8728786004692483 0.443891077065808 0.102 -0.5194787414335124 0.3651899585972604 0.102 --8.436952609458936 -2.726253388825421 0.102 -2.558400887662611 3.32876381719307 0.102 -0.9534969529709691 0.6412588716420392 0.102 -9.930472216296558 4.456786130130669 0.102 -0.9101645679088276 0.8172243327122222 0.102 -0.3843602583308797 -0.02209764836160789 0.102 -0.8002235844019456 0.4131772647408432 0.102 --0.02164380556439795 1.046866549158034 0.102 -0.3465182484728069 0.1946248396971732 0.102 -0.5963467977168135 0.2906765837991147 0.102 -0.9138341400723905 0.4392099771884809 0.102 -0.7341338019043637 0.11206716321576 0.102 -0.9758324951784483 0.7156950303875942 0.102 -0.7140487426004879 8.371211076690832 0.102 -8.409704656516624 -4.570961941608299 0.102 --0.07379648723736276 0.643621918633183 0.102 -1.051788253992463 -0.02314482268974721 0.102 --5.638850830934981 9.312161058824852 0.102 --4.265926619520437 -3.242694544721529 0.102 -0.8029816237904494 0.6595304397877209 0.102 -0.1256521916580455 0.2580180642044703 0.102 -0.7976323632063856 1.069828400626325 0.102 -0.4270174443171613 0.4835737879131496 0.102 -0.8470836262777051 0.2010428082921774 0.102 -0.5324187755766224 0.4310556992576573 0.102 --5.716959814817447 -9.134015442749302 0.102 -0.4947409323534525 0.6108268726164396 0.102 -0.6026891015469427 0.9612150112731608 0.102 -0.2500397266991482 0.7819850836201699 0.102 -0.1246432235748472 0.3014213791500217 0.102 --0.06897577770442025 1.095887602740569 0.102 -0.9375296532990981 0.2489313738761192 0.102 -0.1999282405013848 0.352023615243354 0.102 --3.217726894734954 -4.380313863891306 0.102 -0.8844461802907649 0.4341294588031855 0.102 --0.02117228608701804 0.8358098598252287 0.102 -0.2331183453850262 0.8094226577098927 0.102 -0.3707512759373242 0.5820356652876917 0.102 -0.7567027652023347 0.7049989164079048 0.102 -0.3946598963386674 0.2745561488140953 0.102 -0.05191972870358415 -8.608466264623374 0.102 --0.1031044648625869 0.05843776030426209 0.102 -0.3634628366377431 0.7820969340733036 0.102 -0.4086662122580188 -0.05153160977096217 0.102 -0.2241907359532729 0.06135438857398592 0.102 -0.5846700245931666 0.5045524431046179 0.102 -0.1271064308594214 1.117680252385818 0.102 -0.6317578830276254 1.034556935822309 0.102 -3.190732074664473 8.022659843671372 0.102 --8.156536744105194 -7.076391671587808 0.102 -0.5264992214157886 1.059010579841061 0.102 -0.8701380807765751 -0.005659979923426409 0.102 -0.9199738999280165 0.4079007211139358 0.102 -0.3072778010302978 -0.09149569722771562 0.102 -1.026470702579327 0.8627142146192449 0.102 -1.035339121011989 0.1001379811660832 0.102 -0.3767050284562551 1.059105746012347 0.102 -0.1886971098738967 -0.09603762148100303 0.102 -0.1998680700324866 -0.07188033073373568 0.102 --0.03592078286816035 0.3861619182626662 0.102 -0.3580368630424647 0.5568344618425816 0.102 -0.7268061540666899 -9.295708665627902 0.102 -8.86150894928646 -6.251704352025702 0.102 -0.03174225136805854 0.3272636054274665 0.102 -0.8094828015384445 0.9050652617785485 0.102 -12.19902467064077 -8.334421018242388 0.102 -0.4341966200444809 0.3393978220651242 0.102 -11.20997216741088 2.804044574903888 0.102 -0.193892416171531 0.3798784608625451 0.102 -0.6704393880682096 0.3543447253748888 0.102 -0.3547154424578157 1.094392379113612 0.102 -0.1542591165133803 0.8526462383149015 0.102 -0.9564444438857305 0.04138402465239644 0.102 -0.8958773100543691 -0.02875504260934753 0.102 -12.94931401463806 9.501720500162101 0.102 --0.006096682116399862 0.05091948585845706 0.102 -0.5164983811480395 0.1785238766099319 0.102 -0.09051590322087075 0.3242697299330916 0.102 -1.774631973547626 9.095821499475548 0.102 -0.1021504336940191 0.1563464023564275 0.102 -1.032031789126122 0.4685641685858398 0.102 -12.96146492253799 -1.124652999421157 0.102 -0.9794134143265902 0.5547465408113073 0.102 --4.366691380574006 -2.191103834524453 0.102 -0.5088325196711028 0.3404323243193862 0.102 -9.977734397012039 -6.554098874787448 0.102 -0.7985284647265269 1.044776996130497 0.102 -0.9862622925029544 0.1830740548841286 0.102 -0.6071060071315939 0.3206912749288912 0.102 --0.01264336595454272 0.09186003087119554 0.102 -0.8740931597292986 -0.05488190265159681 0.102 -1.134601229962439 0.6386454422608208 0.102 -0.1066236080232103 0.3252542573153707 0.102 -0.3544953481865145 -0.04476503791000654 0.102 --5.004337911068982 9.477821308871318 0.102 --7.314993091720609 6.257961655244352 0.102 -1.846310450314371 2.866159239415613 0.102 -1.117829686327658 0.1019784809243096 0.102 -7.426499679884867 4.067725358169524 0.102 -0.7281199405376613 0.8277364139217124 0.102 -11.72306817078561 -9.185373705516605 0.102 --0.04510980722668219 0.6424522126813972 0.102 -0.3535216432073459 0.7286436772796787 0.102 -0.07881788557096972 0.04644079929671022 0.102 -0.6905050164331269 0.1784328396856335 0.102 -0.7030444923474167 0.4290268242271242 0.102 -0.07450450181081317 0.02252664824157037 0.102 -0.5202051526554532 0.8913324447469368 0.102 --0.1234646991279848 -1.498103620096371 0.102 -11.39451956737456 9.226751029079445 0.102 -0.1333656757494565 0.4509676852328215 0.102 -0.3247601402760939 0.6664211185604699 0.102 -1.071351112352742 0.3854523260450177 0.102 -1.078435154749443 0.3573535043523121 0.102 -0.214945251483463 0.599320618711035 0.102 -17.66648048365973 4.518288136101808 0.102 -16.59031136134645 -4.129871445945652 0.102 -0.6479493893929633 0.571976669869213 0.102 -0.4491934170508419 0.4104842604499033 0.102 -0.7569062894909286 0.9733327386375602 0.102 -0.1252869485272163 -0.04652449613602686 0.102 -0.8129078265177598 0.1252630452690358 0.102 -0.6495401914938527 0.04382645779892536 0.102 -0.1350337888034109 0.01595142911985888 0.102 -12.62798109109423 0.3896541414656993 0.102 -0.3694580364706588 0.7505379330028361 0.102 -0.03822617380082326 0.7871414034483059 0.102 -0.3424781272020611 0.6049013512925832 0.102 -0.2298373130185615 0.6436811991481319 0.102 -14.71793561369016 3.564858583972694 0.102 -0.1375753654066265 0.2771698433903336 0.102 -0.9147112339663896 0.1776275544638454 0.102 -0.6136467203453284 1.088176165208669 0.102 --0.04562155622782141 0.3742419222435517 0.102 -0.5018790343792797 0.3823973360484836 0.102 -0.3223999178048598 0.7231019765133682 0.102 -0.9104957114066978 1.040911873726189 0.102 -0.03669225353647303 0.4060795279236145 0.102 --0.0105444712362293 0.6751690689841949 0.102 -0.5574837107744998 0.2807996957874028 0.102 -0.8908415652661875 0.3735187541817171 0.102 -0.979948326383552 0.3894443276560609 0.102 -0.412139319316028 0.0339747056332175 0.102 --5.26756190222695 -7.67490496214807 0.102 +7499 +7500 +7501 +7502 +7503 +7504 +7505 +7506 +7507 +7508 +7509 +7510 +7511 +7512 +7513 +7514 +7515 +7516 +7517 +7518 +7519 +7520 +7521 +7522 +7523 +7524 +7525 +7526 +7527 +7528 +7529 +7530 +7531 +7532 +7533 +7534 +7535 +7536 +7537 +7538 +7539 +7540 +7541 +7542 +7543 +7544 +7545 +7546 +7547 +7548 +7549 +7550 +7551 +7552 +7553 +7554 +7555 +7556 +7557 +7558 +7559 +7560 +7561 +7562 +7563 +7564 +7565 +7566 +7567 +7568 +7569 +7570 +7571 +7572 +7573 +7574 +7575 +7576 +7577 +7578 +7579 +7580 +7581 +7582 +7583 +7584 +7585 +7586 +7587 +7588 +7589 +7590 +7591 +7592 +7593 +7594 +7595 +7596 +7597 +7598 +7599 +7600 +7601 +7602 +7603 +7604 +7605 +7606 +7607 +7608 +7609 +7610 +7611 +7612 +7613 +7614 +7615 +7616 +7617 +7618 +7619 +7620 +7621 +7622 +7623 +7624 +7625 +7626 +7627 +7628 +7629 +7630 +7631 +7632 +7633 +7634 +7635 +7636 +7637 +7638 +7639 +7640 +7641 +7642 +7643 +7644 +7645 +7646 +7647 +7648 +7649 +7650 +7651 +7652 +7653 +7654 +7655 +7656 +7657 +7658 +7659 +7660 +7661 +7662 +7663 +7664 +7665 +7666 +7667 +7668 +7669 +7670 +7671 +7672 +7673 +7674 +7675 +7676 +7677 +7678 +7679 +7680 +7681 +7682 +7683 +7684 +7685 +7686 +7687 +7688 +7689 +7690 +7691 +7692 +7693 +7694 +7695 +7696 +7697 +7698 +7699 +7700 +7701 +7702 +7703 +7704 +7705 +7706 +7707 +7708 +7709 +7710 +7711 +7712 +7713 +7714 +7715 +7716 +7717 +7718 +7719 +7720 +7721 +7722 +7723 +7724 +7725 +7726 +7727 +7728 +7729 +7730 +7731 +7732 +7733 +7734 +7735 +7736 +7737 +7738 +7739 +7740 +7741 +7742 +7743 +7744 +7745 +7746 +7747 +7748 +7749 +7750 +7751 +7752 +7753 +7754 +7755 +7756 +7757 +7758 +7759 +7760 +7761 +7762 +7763 +7764 +7765 +7766 +7767 +7768 +7769 +7770 +7771 +7772 +7773 +7774 +7775 +7776 +7777 +7778 +7779 +7780 +7781 +7782 +7783 +7784 +7785 +7786 +7787 +7788 +7789 +7790 +7791 +7792 +7793 +7794 +7795 +7796 +7797 +7798 +7799 +7800 +7801 +7802 +7803 +7804 +7805 +7806 +7807 +7808 +7809 +7810 +7811 +7812 +7813 +7814 +7815 +7816 +7817 +7818 +7819 +7820 +7821 +7822 +7823 +7824 +7825 +7826 +7827 +7828 +7829 +7830 +7831 +7832 +7833 +7834 +7835 +7836 +7837 +7838 +7839 +7840 +7841 +7842 +7843 +7844 +7845 +7846 +7847 +7848 +7849 +7850 +7851 +7852 +7853 +7854 +7855 +7856 +7857 +7858 +7859 +7860 +7861 +7862 +7863 +7864 +7865 +7866 +7867 +7868 +7869 +7870 +7871 +7872 +7873 +7874 +7875 +7876 +7877 +7878 +7879 +7880 +7881 +7882 +7883 +7884 +7885 +7886 +7887 +7888 +7889 +7890 +7891 +7892 +7893 +7894 +7895 +7896 +7897 +7898 +7899 +7900 +7901 +7902 +7903 +7904 +7905 +7906 +7907 +7908 +7909 +7910 +7911 +7912 +7913 +7914 +7915 +7916 +7917 +7918 +7919 +7920 +7921 +7922 +7923 +7924 +7925 +7926 +7927 +7928 +7929 +7930 +7931 +7932 +7933 +7934 +7935 +7936 +7937 +7938 +7939 +7940 +7941 +7942 +7943 +7944 +7945 +7946 +7947 +7948 +7949 +7950 +7951 +7952 +7953 +7954 +7955 +7956 +7957 +7958 +7959 +7960 +7961 +7962 +7963 +7964 +7965 +7966 +7967 +7968 +7969 +7970 +7971 +7972 +7973 +7974 +7975 +7976 +7977 +7978 +7979 +7980 +7981 +7982 +7983 +7984 +7985 +7986 +7987 +7988 +7989 +7990 +7991 +7992 +7993 +7994 +7995 +7996 +7997 +7998 +7999 +8000 +8001 +8002 +8003 +8004 +8005 +8006 +8007 +8008 +8009 +8010 +8011 +8012 +8013 +8014 +8015 +8016 +8017 +8018 +8019 +8020 +8021 +8022 +8023 +8024 +8025 +8026 +8027 +8028 +8029 +8030 +8031 +8032 +8033 +8034 +8035 +8036 +8037 +8038 +8039 +8040 +8041 +8042 +8043 +8044 +8045 +8046 +8047 +8048 +8049 +8050 +8051 +8052 +8053 +8054 +8055 +8056 +8057 +8058 +8059 +8060 +8061 +8062 +8063 +8064 +8065 +8066 +8067 +8068 +8069 +8070 +8071 +8072 +8073 +8074 +8075 +8076 +8077 +8078 +8079 +8080 +8081 +8082 +8083 +8084 +8085 +8086 +8087 +8088 +8089 +8090 +8091 +8092 +8093 +8094 +8095 +8096 +8097 +8098 +8099 +8100 +8101 +8102 +8103 +8104 +8105 +8106 +8107 +8108 +8109 +8110 +8111 +8112 +8113 +8114 +8115 +8116 +8117 +8118 +8119 +8120 +8121 +8122 +8123 +8124 +8125 +8126 +8127 +8128 +8129 +8130 +8131 +8132 +8133 +8134 +8135 +8136 +8137 +8138 +8139 +8140 +8141 +8142 +8143 +8144 +8145 +8146 +8147 +8148 +8149 +8150 +8151 +8152 +8153 +8154 +8155 +8156 +8157 +8158 +8159 +8160 +8161 +8162 +8163 +8164 +8165 +8166 +8167 +8168 +8169 +8170 +8171 +8172 +8173 +8174 +8175 +8176 +8177 +8178 +8179 +8180 +8181 +8182 +8183 +8184 +8185 +8186 +8187 +8188 +8189 +8190 +8191 +8192 +8193 +8194 +8195 +8196 +8197 +8198 +8199 +8200 +8201 +8202 +8203 +8204 +8205 +8206 +8207 +8208 +8209 +8210 +8211 +8212 +8213 +8214 +8215 +8216 +8217 +8218 +8219 +8220 +8221 +8222 +8223 +8224 +8225 +8226 +8227 +8228 +8229 +8230 +8231 +8232 +8233 +8234 +8235 +8236 +8237 +8238 +8239 +8240 +8241 +8242 +8243 +8244 +8245 +8246 +8247 +8248 +8249 +8250 +8251 +8252 +8253 +8254 +8255 +8256 +8257 +8258 +8259 +8260 +8261 +8262 +8263 +8264 +8265 +8266 +8267 +8268 +8269 +8270 +8271 +8272 +8273 +8274 +8275 +8276 +8277 +8278 +8279 +8280 +8281 +8282 +8283 +8284 +8285 +8286 +8287 +8288 +8289 +8290 +8291 +8292 +8293 +8294 +8295 +8296 +8297 +8298 +8299 +8300 +8301 +8302 +8303 +8304 +8305 +8306 +8307 +8308 +8309 +8310 +8311 +8312 +8313 +8314 +8315 +8316 +8317 +8318 +8319 +8320 +8321 +8322 +8323 +8324 +8325 +8326 +8327 +8328 +8329 +8330 +8331 +8332 +8333 +8334 +8335 +8336 +8337 +8338 +8339 +8340 +8341 +8342 +8343 +8344 +8345 +8346 +8347 +8348 +8349 +8350 +8351 +8352 +8353 +8354 +8355 +8356 +8357 +8358 +8359 +8360 +8361 +8362 +8363 +8364 +8365 +8366 +8367 +8368 +8369 +8370 +8371 +8372 +8373 +8374 +8375 +8376 +8377 +8378 +8379 +8380 +8381 +8382 +8383 +8384 +8385 +8386 +8387 +8388 +8389 +8390 +8391 +8392 +8393 +8394 +8395 +8396 +8397 +8398 +8399 +8400 +8401 +8402 +8403 +8404 +8405 +8406 +8407 +8408 +8409 +8410 +8411 +8412 +8413 +8414 +8415 +8416 +8417 +8418 +8419 +8420 +8421 +8422 +8423 +8424 +8425 +8426 +8427 +8428 +8429 +8430 +8431 +8432 +8433 +8434 +8435 +8436 +8437 +8438 +8439 +8440 +8441 +8442 +8443 +8444 +8445 +8446 +8447 +8448 +8449 +8450 +8451 +8452 +8453 +8454 +8455 +8456 +8457 +8458 +8459 +8460 +8461 +8462 +8463 +8464 +8465 +8466 +8467 +8468 +8469 +8470 +8471 +8472 +8473 +8474 +8475 +8476 +8477 +8478 +8479 +8480 +8481 +8482 +8483 +8484 +8485 +8486 +8487 +8488 +8489 +8490 +8491 +8492 +8493 +8494 +8495 +8496 +8497 +8498 +8499 +8500 +8501 +8502 +8503 +8504 +8505 +8506 +8507 +8508 +8509 +8510 +8511 +8512 +8513 +8514 +8515 +8516 +8517 +8518 +8519 +8520 +8521 +8522 +8523 +8524 +8525 +8526 +8527 +8528 +8529 +8530 +8531 +8532 +8533 +8534 +8535 +8536 +8537 +8538 +8539 +8540 +8541 +8542 +8543 +8544 +8545 +8546 +8547 +8548 +8549 +8550 +8551 +8552 +8553 +8554 +8555 +8556 +8557 +8558 +8559 +8560 +8561 +8562 +8563 +8564 +8565 +8566 +8567 +8568 +8569 +8570 +8571 +8572 +8573 +8574 +8575 +8576 +8577 +8578 +8579 +8580 +8581 +8582 +8583 +8584 +8585 +8586 +8587 +8588 +8589 +8590 +8591 +8592 +8593 +8594 +8595 +8596 +8597 +8598 +8599 +8600 +8601 +8602 +8603 +8604 +8605 +8606 +8607 +8608 +8609 +8610 +8611 +8612 +8613 +8614 +8615 +8616 +8617 +8618 +8619 +8620 +8621 +8622 +8623 +8624 +8625 +8626 +8627 +8628 +8629 +8630 +8631 +8632 +8633 +8634 +8635 +8636 +8637 +8638 +8639 +8640 +8641 +8642 +8643 +8644 +8645 +8646 +8647 +8648 +8649 +8650 +8651 +8652 +8653 +8654 +8655 +8656 +8657 +8658 +8659 +8660 +8661 +8662 +8663 +8664 +8665 +8666 +8667 +8668 +8669 +8670 +8671 +8672 +8673 +8674 +8675 +8676 +8677 +8678 +8679 +8680 +8681 +8682 +8683 +8684 +8685 +8686 +8687 +8688 +8689 +8690 +8691 +8692 +8693 +8694 +8695 +8696 +8697 +8698 +8699 +8700 +8701 +8702 +8703 +8704 +8705 +8706 +8707 +8708 +8709 +8710 +8711 +8712 +8713 +8714 +8715 +8716 +8717 +8718 +8719 +8720 +8721 +8722 +8723 +8724 +8725 +8726 +8727 +8728 +8729 +8730 +8731 +8732 +8733 +8734 +8735 +8736 +8737 +8738 +8739 +8740 +8741 +8742 +8743 +8744 +8745 +8746 +8747 +8748 +8749 +8750 +8751 +8752 +8753 +8754 +8755 +8756 +8757 +8758 +8759 +8760 +8761 +8762 +8763 +8764 +8765 +8766 +8767 +8768 +8769 +8770 +8771 +8772 +8773 +8774 +8775 +8776 +8777 +8778 +8779 +8780 +8781 +8782 +8783 +8784 +8785 +8786 +8787 +8788 +8789 +8790 +8791 +8792 +8793 +8794 +8795 +8796 +8797 +8798 +8799 +8800 +8801 +8802 +8803 +8804 +8805 +8806 +8807 +8808 +8809 +8810 +8811 +8812 +8813 +8814 +8815 +8816 +8817 +8818 +8819 +8820 +8821 +8822 +8823 +8824 +8825 +8826 +8827 +8828 +8829 +8830 +8831 +8832 +8833 +8834 +8835 +8836 +8837 +8838 +8839 +8840 +8841 +8842 +8843 +8844 +8845 +8846 +8847 +8848 +8849 +8850 +8851 +8852 +8853 +8854 +8855 +8856 +8857 +8858 +8859 +8860 +8861 +8862 +8863 +8864 +8865 +8866 +8867 +8868 +8869 +8870 +8871 +8872 +8873 +8874 +8875 +8876 +8877 +8878 +8879 +8880 +8881 +8882 +8883 +8884 +8885 +8886 +8887 +8888 +8889 +8890 +8891 +8892 +8893 +8894 +8895 +8896 +8897 +8898 +8899 +8900 +8901 +8902 +8903 +8904 +8905 +8906 +8907 +8908 +8909 +8910 +8911 +8912 +8913 +8914 +8915 +8916 +8917 +8918 +8919 +8920 +8921 +8922 +8923 +8924 +8925 +8926 +8927 +8928 +8929 +8930 +8931 +8932 +8933 +8934 +8935 +8936 +8937 +8938 +8939 +8940 +8941 +8942 +8943 +8944 +8945 +8946 +8947 +8948 +8949 +8950 +8951 +8952 +8953 +8954 +8955 +8956 +8957 +8958 +8959 +8960 +8961 +8962 +8963 +8964 +8965 +8966 +8967 +8968 +8969 +8970 +8971 +8972 +8973 +8974 +8975 +8976 +8977 +8978 +8979 +8980 +8981 +8982 +8983 +8984 +8985 +8986 +8987 +8988 +8989 +8990 +8991 +8992 +8993 +8994 +8995 +8996 +8997 +8998 +8999 +9000 +9001 +9002 +9003 +9004 +9005 +9006 +9007 +9008 +9009 +9010 +9011 +9012 +9013 +9014 +9015 +9016 +9017 +9018 +9019 +9020 +9021 +9022 +9023 +9024 +9025 +9026 +9027 +9028 +9029 +9030 +9031 +9032 +9033 +9034 +9035 +9036 +9037 +9038 +9039 +9040 +9041 +9042 +9043 +9044 +9045 +9046 +9047 +9048 +9049 +9050 +9051 +9052 +9053 +9054 +9055 +9056 +9057 +9058 +9059 +9060 +9061 +9062 +9063 +9064 +9065 +9066 +9067 +9068 +9069 +9070 +9071 +9072 +9073 +9074 +9075 +9076 +9077 +9078 +9079 +9080 +9081 +9082 +9083 +9084 +9085 +9086 +9087 +9088 +9089 +9090 +9091 +9092 +9093 +9094 +9095 +9096 +9097 +9098 +9099 +9100 +9101 +9102 +9103 +9104 +9105 +9106 +9107 +9108 +9109 +9110 +9111 +9112 +9113 +9114 +9115 +9116 +9117 +9118 +9119 +9120 +9121 +9122 +9123 +9124 +9125 +9126 +9127 +9128 +9129 +9130 +9131 +9132 +9133 +9134 +9135 +9136 +9137 +9138 +9139 +9140 +9141 +9142 +9143 +9144 +9145 +9146 +9147 +9148 +9149 +9150 +9151 +9152 +9153 +9154 +9155 +9156 +9157 +9158 +9159 +9160 +9161 +9162 +9163 +9164 +9165 +9166 +9167 +9168 +9169 +9170 +9171 +9172 +9173 +9174 +9175 +9176 +9177 +9178 +9179 +9180 +9181 +9182 +9183 +9184 +9185 +9186 +9187 +9188 +9189 +9190 +9191 +9192 +9193 +9194 +9195 +9196 +9197 +9198 +9199 +9200 +9201 +9202 +9203 +9204 +9205 +9206 +9207 +9208 +9209 +9210 +9211 +9212 +9213 +9214 +9215 +9216 +9217 +9218 +9219 +9220 +9221 +9222 +9223 +9224 +9225 +9226 +9227 +9228 +9229 +9230 +9231 +9232 +9233 +9234 +9235 +9236 +9237 +9238 +9239 +9240 +9241 +9242 +9243 +9244 +9245 +9246 +9247 +9248 +9249 +9250 +9251 +9252 +9253 +9254 +9255 +9256 +9257 +9258 +9259 +9260 +9261 +9262 +9263 +9264 +9265 +9266 +9267 +9268 +9269 +9270 +9271 +9272 +9273 +9274 +9275 +9276 +9277 +9278 +9279 +9280 +9281 +9282 +9283 +9284 +9285 +9286 +9287 +9288 +9289 +9290 +9291 +9292 +9293 +9294 +9295 +9296 +9297 +9298 +9299 +9300 +9301 +9302 +9303 +9304 +9305 +9306 +9307 +9308 +9309 +9310 +9311 +9312 +9313 +9314 +9315 +9316 +9317 +9318 +9319 +9320 +9321 +9322 +9323 +9324 +9325 +9326 +9327 +9328 +9329 +9330 +9331 +9332 +9333 +9334 +9335 +9336 +9337 +9338 +9339 +9340 +9341 +9342 +9343 +9344 +9345 +9346 +9347 +9348 +9349 +9350 +9351 +9352 +9353 +9354 +9355 +9356 +9357 +9358 +9359 +9360 +9361 +9362 +9363 +9364 +9365 +9366 +9367 +9368 +9369 +9370 +9371 +9372 +9373 +9374 +9375 +9376 +9377 +9378 +9379 +9380 +9381 +9382 +9383 +9384 +9385 +9386 +9387 +9388 +9389 +9390 +9391 +9392 +9393 +9394 +9395 +9396 +9397 +9398 +9399 +9400 +9401 +9402 +9403 +9404 +9405 +9406 +9407 +9408 +9409 +9410 +9411 +9412 +9413 +9414 +9415 +9416 +9417 +9418 +9419 +9420 +9421 +9422 +9423 +9424 +9425 +9426 +9427 +9428 +9429 +9430 +9431 +9432 +9433 +9434 +9435 +9436 +9437 +9438 +9439 +9440 +9441 +9442 +9443 +9444 +9445 +9446 +9447 +9448 +9449 +9450 +9451 +9452 +9453 +9454 +9455 +9456 +9457 +9458 +9459 +9460 +9461 +9462 +9463 +9464 +9465 +9466 +9467 +9468 +9469 +9470 +9471 +9472 +9473 +9474 +9475 +9476 +9477 +9478 +9479 +9480 +9481 +9482 +9483 +9484 +9485 +9486 +9487 +9488 +9489 +9490 +9491 +9492 +9493 +9494 +9495 +9496 +9497 +9498 +9499 +9500 +9501 +9502 +9503 +9504 +9505 +9506 +9507 +9508 +9509 +9510 +9511 +9512 +9513 +9514 +9515 +9516 +9517 +9518 +9519 +9520 +9521 +9522 +9523 +9524 +9525 +9526 +9527 +9528 +9529 +9530 +9531 +9532 +9533 +9534 +9535 +9536 +9537 +9538 +9539 +9540 +9541 +9542 +9543 +9544 +9545 +9546 +9547 +9548 +9549 +9550 +9551 +9552 +9553 +9554 +9555 +9556 +9557 +9558 +9559 +9560 +9561 +9562 +9563 +9564 +9565 +9566 +9567 +9568 +9569 +9570 +9571 +9572 +9573 +9574 +9575 +9576 +9577 +9578 +9579 +9580 +9581 +9582 +9583 +9584 +9585 +9586 +9587 +9588 +9589 +9590 +9591 +9592 +9593 +9594 +9595 +9596 +9597 +9598 +9599 +9600 +9601 +9602 +9603 +9604 +9605 +9606 +9607 +9608 +9609 +9610 +9611 +9612 +9613 +9614 +9615 +9616 +9617 +9618 +9619 +9620 +9621 +9622 +9623 +9624 +9625 +9626 +9627 +9628 +9629 +9630 +9631 +9632 +9633 +9634 +9635 +9636 +9637 +9638 +9639 +9640 +9641 +9642 +9643 +9644 +9645 +9646 +9647 +9648 +9649 +9650 +9651 +9652 +9653 +9654 +9655 +9656 +9657 +9658 +9659 +9660 +9661 +9662 +9663 +9664 +9665 +9666 +9667 +9668 +9669 +9670 +9671 +9672 +9673 +9674 +9675 +9676 +9677 +9678 +9679 +9680 +9681 +9682 +9683 +9684 +9685 +9686 +9687 +9688 +9689 +9690 +9691 +9692 +9693 +9694 +9695 +9696 +9697 +9698 +9699 +9700 +9701 +9702 +9703 +9704 +9705 +9706 +9707 +9708 +9709 +9710 +9711 +9712 +9713 +9714 +9715 +9716 +9717 +9718 +9719 +9720 +9721 +9722 +9723 +9724 +9725 +9726 +9727 +9728 +9729 +9730 +9731 +9732 +9733 +9734 +9735 +9736 +9737 +9738 +9739 +9740 +9741 +9742 +9743 +9744 +9745 +9746 +9747 +9748 +9749 +9750 +9751 +9752 +9753 +9754 +9755 +9756 +9757 +9758 +9759 +9760 +9761 +9762 +9763 +9764 +9765 +9766 +9767 +9768 +9769 +9770 +9771 +9772 +9773 +9774 +9775 +9776 +9777 +9778 +9779 +9780 +9781 +9782 +9783 +9784 +9785 +9786 +9787 +9788 +9789 +9790 +9791 +9792 +9793 +9794 +9795 +9796 +9797 +9798 +9799 +9800 +9801 +9802 +9803 +9804 +9805 +9806 +9807 +9808 +9809 +9810 +9811 +9812 +9813 +9814 +9815 +9816 +9817 +9818 +9819 +9820 +9821 +9822 +9823 +9824 +9825 +9826 +9827 +9828 +9829 +9830 +9831 +9832 +9833 +9834 +9835 +9836 +9837 +9838 +9839 +9840 +9841 +9842 +9843 +9844 +9845 +9846 +9847 +9848 +9849 +9850 +9851 +9852 +9853 +9854 +9855 +9856 +9857 +9858 +9859 +9860 +9861 +9862 +9863 +9864 +9865 +9866 +9867 +9868 +9869 +9870 +9871 +9872 +9873 +9874 +9875 +9876 +9877 +9878 +9879 +9880 +9881 +9882 +9883 +9884 +9885 +9886 +9887 +9888 +9889 +9890 +9891 +9892 +9893 +9894 +9895 +9896 +9897 +9898 +9899 +9900 +9901 +9902 +9903 +9904 +9905 +9906 +9907 +9908 +9909 +9910 +9911 +9912 +9913 +9914 +9915 +9916 +9917 +9918 +9919 +9920 +9921 +9922 +9923 +9924 +9925 +9926 +9927 +9928 +9929 +9930 +9931 +9932 +9933 +9934 +9935 +9936 +9937 +9938 +9939 +9940 +9941 +9942 +9943 +9944 +9945 +9946 +9947 +9948 +9949 +9950 +9951 +9952 +9953 +9954 +9955 +9956 +9957 +9958 +9959 +9960 +9961 +9962 +9963 +9964 +9965 +9966 +9967 +9968 +9969 +9970 +9971 +9972 +9973 +9974 +9975 +9976 +9977 +9978 +9979 +9980 +9981 +9982 +9983 +9984 +9985 +9986 +9987 +9988 +9989 +9990 +9991 +9992 +9993 +9994 +9995 +9996 +9997 +9998 +9999 +10000 +10001 +10002 +10003 +10004 +10005 +10006 +10007 +10008 +10009 +10010 +10011 +10012 +10013 +10014 +10015 +10016 +10017 +10018 +10019 +10020 +10021 +10022 +10023 +10024 +10025 +10026 +10027 +10028 +10029 +10030 +10031 +10032 +10033 +10034 +10035 +10036 +10037 +10038 +10039 +10040 +10041 +10042 +10043 +10044 +10045 +10046 +10047 +10048 +10049 +10050 +10051 +10052 +10053 +10054 +10055 +10056 +10057 +10058 +10059 +10060 +10061 +10062 +10063 +10064 +10065 +10066 +10067 +10068 +10069 +10070 +10071 +10072 +10073 +10074 +10075 +10076 +10077 +10078 +10079 +10080 +10081 +10082 +10083 +10084 +10085 +10086 +10087 +10088 +10089 +10090 +10091 +10092 +10093 +10094 +10095 +10096 +10097 +10098 +10099 +10100 +10101 +10102 +10103 +10104 +10105 +10106 +10107 +10108 +10109 +10110 +10111 +10112 +10113 +10114 +10115 +10116 +10117 +10118 +10119 +10120 +10121 +10122 +10123 +10124 +10125 +10126 +10127 +10128 +10129 +10130 +10131 +10132 +10133 +10134 +10135 +10136 +10137 +10138 +10139 +10140 +10141 +10142 +10143 +10144 +10145 +10146 +10147 +10148 +10149 +10150 +10151 +10152 +10153 +10154 +10155 +10156 +10157 +10158 +10159 +10160 +10161 +10162 +10163 +10164 +10165 +10166 +10167 +10168 +10169 +10170 +10171 +10172 +10173 +10174 +10175 +10176 +10177 +10178 +10179 +10180 +10181 +10182 +10183 +10184 +10185 +10186 +10187 +10188 +10189 +10190 +10191 +10192 +10193 +10194 +10195 +10196 +10197 +10198 +10199 +10200 +10201 +10202 +10203 +10204 +10205 +10206 +10207 +10208 +10209 +10210 +10211 +10212 +10213 +10214 +10215 +10216 +10217 +10218 +10219 +10220 +10221 +10222 +10223 +10224 +10225 +10226 +10227 +10228 +10229 +10230 +10231 +10232 +10233 +10234 +10235 +10236 +10237 +10238 +10239 +10240 +10241 +10242 +10243 +10244 +10245 +10246 +10247 +10248 +10249 +10250 +10251 +10252 +10253 +10254 +10255 +10256 +10257 +10258 +10259 +10260 +10261 +10262 +10263 +10264 +10265 +10266 +10267 +10268 +10269 +10270 +10271 +10272 +10273 +10274 +10275 +10276 +10277 +10278 +10279 +10280 +10281 +10282 +10283 +10284 +10285 +10286 +10287 +10288 +10289 +10290 +10291 +10292 +10293 +10294 +10295 +10296 +10297 +10298 +10299 +10300 +10301 +10302 +10303 +10304 +10305 +10306 +10307 +10308 +10309 +10310 +10311 +10312 +10313 +10314 +10315 +10316 +10317 +10318 +10319 +10320 +10321 +10322 +10323 +10324 +10325 +10326 +10327 +10328 +10329 +10330 +10331 +10332 +10333 +10334 +10335 +10336 +10337 +10338 +10339 +10340 +10341 +10342 +10343 +10344 +10345 +10346 +10347 +10348 +10349 +10350 +10351 +10352 +10353 +10354 +10355 +10356 +10357 +10358 +10359 +10360 +10361 +10362 +10363 +10364 +10365 +10366 +10367 +10368 +10369 +10370 +10371 +10372 +10373 +10374 +10375 +10376 +10377 +10378 +10379 +10380 +10381 +10382 +10383 +10384 +10385 +10386 +10387 +10388 +10389 +10390 +10391 +10392 +10393 +10394 +10395 +10396 +10397 +10398 +10399 +10400 +10401 +10402 +10403 +10404 +10405 +10406 +10407 +10408 +10409 +10410 +10411 +10412 +10413 +10414 +10415 +10416 +10417 +10418 +10419 +10420 +10421 +10422 +10423 +10424 +10425 +10426 +10427 +10428 +10429 +10430 +10431 +10432 +10433 +10434 +10435 +10436 +10437 +10438 +10439 +10440 +10441 +10442 +10443 +10444 +10445 +10446 +10447 +10448 +10449 +10450 +10451 +10452 +10453 +10454 +10455 +10456 +10457 +10458 +10459 +10460 +10461 +10462 +10463 +10464 +10465 +10466 +10467 +10468 +10469 +10470 +10471 +10472 +10473 +10474 +10475 +10476 +10477 +10478 +10479 +10480 +10481 +10482 +10483 +10484 +10485 +10486 +10487 +10488 +10489 +10490 +10491 +10492 +10493 +10494 +10495 +10496 +10497 +10498 +10499 +10500 +10501 +10502 +10503 +10504 +10505 +10506 +10507 +10508 +10509 +10510 +10511 +10512 +10513 +10514 +10515 +10516 +10517 +10518 +10519 +10520 +10521 +10522 +10523 +10524 +10525 +10526 +10527 +10528 +10529 +10530 +10531 +10532 +10533 +10534 +10535 +10536 +10537 +10538 +10539 +10540 +10541 +10542 +10543 +10544 +10545 +10546 +10547 +10548 +10549 +10550 +10551 +10552 +10553 +10554 +10555 +10556 +10557 +10558 +10559 +10560 +10561 +10562 +10563 +10564 +10565 +10566 +10567 +10568 +10569 +10570 +10571 +10572 +10573 +10574 +10575 +10576 +10577 +10578 +10579 +10580 +10581 +10582 +10583 +10584 +10585 +10586 +10587 +10588 +10589 +10590 +10591 +10592 +10593 +10594 +10595 +10596 +10597 +10598 +10599 +10600 +10601 +10602 +10603 +10604 +10605 +10606 +10607 +10608 +10609 +10610 +10611 +10612 +10613 +10614 +10615 +10616 +10617 +10618 +10619 +10620 +10621 +10622 +10623 +10624 +10625 +10626 +10627 +10628 +10629 +10630 +10631 +10632 +10633 +10634 +10635 +10636 +10637 +10638 +10639 +10640 +10641 +10642 +10643 +10644 +10645 +10646 +10647 +10648 +10649 +10650 +10651 +10652 +10653 +10654 +10655 +10656 +10657 +10658 +10659 +10660 +10661 +10662 +10663 +10664 +10665 +10666 +10667 +10668 +10669 +10670 +10671 +10672 +10673 +10674 +10675 +10676 +10677 +10678 +10679 +10680 +10681 +10682 +10683 +10684 +10685 +10686 +10687 +10688 +10689 +10690 +10691 +10692 +10693 +10694 +10695 +10696 +10697 +10698 +10699 +10700 +10701 +10702 +10703 +10704 +10705 +10706 +10707 +10708 +10709 +10710 +10711 +10712 +10713 +10714 +10715 +10716 +10717 +10718 +10719 +10720 +10721 +10722 +10723 +10724 +10725 +10726 +10727 +10728 +10729 +10730 +10731 +10732 +10733 +10734 +10735 +10736 +10737 +10738 +10739 +10740 +10741 +10742 +10743 +10744 +10745 +10746 +10747 +10748 +10749 +10750 +10751 +10752 +10753 +10754 +10755 +10756 +10757 +10758 +10759 +10760 +10761 +10762 +10763 +10764 +10765 +10766 +10767 +10768 +10769 +10770 +10771 +10772 +10773 +10774 +10775 +10776 +10777 +10778 +10779 +10780 +10781 +10782 +10783 +10784 +10785 +10786 +10787 +10788 +10789 +10790 +10791 +10792 +10793 +10794 +10795 +10796 +10797 +10798 +10799 +10800 +10801 +10802 +10803 +10804 +10805 +10806 +10807 +10808 +10809 +10810 +10811 +10812 +10813 +10814 +10815 +10816 +10817 +10818 +10819 +10820 +10821 +10822 +10823 +10824 +10825 +10826 +10827 +10828 +10829 +10830 +10831 +10832 +10833 +10834 +10835 +10836 +10837 +10838 +10839 +10840 +10841 +10842 +10843 +10844 +10845 +10846 +10847 +10848 +10849 +10850 +10851 +10852 +10853 +10854 +10855 +10856 +10857 +10858 +10859 +10860 +10861 +10862 +10863 +10864 +10865 +10866 +10867 +10868 +10869 +10870 +10871 +10872 +10873 +10874 +10875 +10876 +10877 +10878 +10879 +10880 +10881 +10882 +10883 +10884 +10885 +10886 +10887 +10888 +10889 +10890 +10891 +10892 +10893 +10894 +10895 +10896 +10897 +10898 +10899 +10900 +10901 +10902 +10903 +10904 +10905 +10906 +10907 +10908 +10909 +10910 +10911 +10912 +10913 +10914 +10915 +10916 +10917 +10918 +10919 +10920 +10921 +10922 +10923 +10924 +10925 +10926 +10927 +10928 +10929 +10930 +10931 +10932 +10933 +10934 +10935 +10936 +10937 +10938 +10939 +10940 +10941 +10942 +10943 +10944 +10945 +10946 +10947 +10948 +10949 +10950 +10951 +10952 +10953 +10954 +10955 +10956 +10957 +10958 +10959 +10960 +10961 +10962 +10963 +10964 +10965 +10966 +10967 +10968 +10969 +10970 +10971 +10972 +10973 +10974 +10975 +10976 +10977 +10978 +10979 +10980 +10981 +10982 +10983 +10984 +10985 +10986 +10987 +10988 +10989 +10990 +10991 +10992 +10993 +10994 +10995 +10996 +10997 +10998 +10999 +11000 +11001 +11002 +11003 +11004 +11005 +11006 +11007 +11008 +11009 +11010 +11011 +11012 +11013 +11014 +11015 +11016 +11017 +11018 +11019 +11020 +11021 +11022 +11023 +11024 +11025 +11026 +11027 +11028 +11029 +11030 +11031 +11032 +11033 +11034 +11035 +11036 +11037 +11038 +11039 +11040 +11041 +11042 +11043 +11044 +11045 +11046 +11047 +11048 +11049 +11050 +11051 +11052 +11053 +11054 +11055 +11056 +11057 +11058 +11059 +11060 +11061 +11062 +11063 +11064 +11065 +11066 +11067 +11068 +11069 +11070 +11071 +11072 +11073 +11074 +11075 +11076 +11077 +11078 +11079 +11080 +11081 +11082 +11083 +11084 +11085 +11086 +11087 +11088 +11089 +11090 +11091 +11092 +11093 +11094 +11095 +11096 +11097 +11098 +11099 +11100 +11101 +11102 +11103 +11104 +11105 +11106 +11107 +11108 +11109 +11110 +11111 +11112 +11113 +11114 +11115 +11116 +11117 +11118 +11119 +11120 +11121 +11122 +11123 +11124 +11125 +11126 +11127 +11128 +11129 +11130 +11131 +11132 +11133 +11134 +11135 +11136 +11137 +11138 +11139 +11140 +11141 +11142 +11143 +11144 +11145 +11146 +11147 +11148 +11149 +11150 +11151 +11152 +11153 +11154 +11155 +11156 +11157 +11158 +11159 +11160 +11161 +11162 +11163 +11164 +11165 +11166 +11167 +11168 +11169 +11170 +11171 +11172 +11173 +11174 +11175 +11176 +11177 +11178 +11179 +11180 +11181 +11182 +11183 +11184 +11185 +11186 +11187 +11188 +11189 +11190 +11191 +11192 +11193 +11194 +11195 +11196 +11197 +11198 +11199 +11200 +11201 +11202 +11203 +11204 +11205 +11206 +11207 +11208 +11209 +11210 +11211 +11212 +11213 +11214 +11215 +11216 +11217 +11218 +11219 +11220 +11221 +11222 +11223 +11224 +11225 +11226 +11227 +11228 +11229 +11230 +11231 +11232 +11233 +11234 +11235 +11236 +11237 +11238 +11239 +11240 +11241 +11242 +11243 +11244 +11245 +11246 +11247 +11248 +11249 +11250 +11251 +11252 +11253 +11254 +11255 +11256 +11257 +11258 +11259 +11260 +11261 +11262 +11263 +11264 +11265 +11266 +11267 +11268 +11269 +11270 +11271 +11272 +11273 +11274 +11275 +11276 +11277 +11278 +11279 +11280 +11281 +11282 +11283 +11284 +11285 +11286 +11287 +11288 +11289 +11290 +11291 +11292 +11293 +11294 +11295 +11296 +11297 +11298 +11299 +11300 +11301 +11302 +11303 +11304 +11305 +11306 +11307 +11308 +11309 +11310 +11311 +11312 +11313 +11314 +11315 +11316 +11317 +11318 +11319 +11320 +11321 +11322 +11323 +11324 +11325 +11326 +11327 +11328 +11329 +11330 +11331 +11332 +11333 +11334 +11335 +11336 +11337 +11338 +11339 +11340 +11341 +11342 +11343 +11344 +11345 +11346 +11347 +11348 +11349 +11350 +11351 +11352 +11353 +11354 +11355 +11356 +11357 +11358 +11359 +11360 +11361 +11362 +11363 +11364 +11365 +11366 +11367 +11368 +11369 +11370 +11371 +11372 +11373 +11374 +11375 +11376 +11377 +11378 +11379 +11380 +11381 +11382 +11383 +11384 +11385 +11386 +11387 +11388 +11389 +11390 +11391 +11392 +11393 +11394 +11395 +11396 +11397 +11398 +11399 +11400 +11401 +11402 +11403 +11404 +11405 +11406 +11407 +11408 +11409 +11410 +11411 +11412 +11413 +11414 +11415 +11416 +11417 +11418 +11419 +11420 +11421 +11422 +11423 +11424 +11425 +11426 +11427 +11428 +11429 +11430 +11431 +11432 +11433 +11434 +11435 +11436 +11437 +11438 +11439 +11440 +11441 +11442 +11443 +11444 +11445 +11446 +11447 +11448 +11449 +11450 +11451 +11452 +11453 +11454 +11455 +11456 +11457 +11458 +11459 +11460 +11461 +11462 +11463 +11464 +11465 +11466 +11467 +11468 +11469 +11470 +11471 +11472 +11473 +11474 +11475 +11476 +11477 +11478 +11479 +11480 +11481 +11482 +11483 +11484 +11485 +11486 +11487 +11488 +11489 +11490 +11491 +11492 +11493 +11494 +11495 +11496 +11497 +11498 +11499 +11500 +11501 +11502 +11503 +11504 +11505 +11506 +11507 +11508 +11509 +11510 +11511 +11512 +11513 +11514 +11515 +11516 +11517 +11518 +11519 +11520 +11521 +11522 +11523 +11524 +11525 +11526 +11527 +11528 +11529 +11530 +11531 +11532 +11533 +11534 +11535 +11536 +11537 +11538 +11539 +11540 +11541 +11542 +11543 +11544 +11545 +11546 +11547 +11548 +11549 +11550 +11551 +11552 +11553 +11554 +11555 +11556 +11557 +11558 +11559 +11560 +11561 +11562 +11563 +11564 +11565 +11566 +11567 +11568 +11569 +11570 +11571 +11572 +11573 +11574 +11575 +11576 +11577 +11578 +11579 +11580 +11581 +11582 +11583 +11584 +11585 +11586 +11587 +11588 +11589 +11590 +11591 +11592 +11593 +11594 +11595 +11596 +11597 +11598 +11599 +11600 +11601 +11602 +11603 +11604 +11605 +11606 +11607 +11608 +11609 +11610 +11611 +11612 +11613 +11614 +11615 +11616 +11617 +11618 +11619 +11620 +11621 +11622 +11623 +11624 +11625 +11626 +11627 +11628 +11629 +11630 +11631 +11632 +11633 +11634 +11635 +11636 +11637 +11638 +11639 +11640 +11641 +11642 +11643 +11644 +11645 +11646 +11647 +11648 +11649 +11650 +11651 +11652 +11653 +11654 +11655 +11656 +11657 +11658 +11659 +11660 +11661 +11662 +11663 +11664 +11665 +11666 +11667 +11668 +11669 +11670 +11671 +11672 +11673 +11674 +11675 +11676 +11677 +11678 +11679 +11680 +11681 +11682 +11683 +11684 +11685 +11686 +11687 +11688 +11689 +11690 +11691 +11692 +11693 +11694 +11695 +11696 +11697 +11698 +11699 +11700 +11701 +11702 +11703 +11704 +11705 +11706 +11707 +11708 +11709 +11710 +11711 +11712 +11713 +11714 +11715 +11716 +11717 +11718 +11719 +11720 +11721 +11722 +11723 +11724 +11725 +11726 +11727 +11728 +11729 +11730 +11731 +11732 +11733 +11734 +11735 +11736 +11737 +11738 +11739 +11740 +11741 +11742 +11743 +11744 +11745 +11746 +11747 +11748 +11749 +11750 +11751 +11752 +11753 +11754 +11755 +11756 +11757 +11758 +11759 +11760 +11761 +11762 +11763 +11764 +11765 +11766 +11767 +11768 +11769 +11770 +11771 +11772 +11773 +11774 +11775 +11776 +11777 +11778 +11779 +11780 +11781 +11782 +11783 +11784 +11785 +11786 +11787 +11788 +11789 +11790 +11791 +11792 +11793 +11794 +11795 +11796 +11797 +11798 +11799 +11800 +11801 +11802 +11803 +11804 +11805 +11806 +11807 +11808 +11809 +11810 +11811 +11812 +11813 +11814 +11815 +11816 +11817 +11818 +11819 +11820 +11821 +11822 +11823 +11824 +11825 +11826 +11827 +11828 +11829 +11830 +11831 +11832 +11833 +11834 +11835 +11836 +11837 +11838 +11839 +11840 +11841 +11842 +11843 +11844 +11845 +11846 +11847 +11848 +11849 +11850 +11851 +11852 +11853 +11854 +11855 +11856 +11857 +11858 +11859 +11860 +11861 +11862 +11863 +11864 +11865 +11866 +11867 +11868 +11869 +11870 +11871 +11872 +11873 +11874 +11875 +11876 +11877 +11878 +11879 +11880 +11881 +11882 +11883 +11884 +11885 +11886 +11887 +11888 +11889 +11890 +11891 +11892 +11893 +11894 +11895 +11896 +11897 +11898 +11899 +11900 +11901 +11902 +11903 +11904 +11905 +11906 +11907 +11908 +11909 +11910 +11911 +11912 +11913 +11914 +11915 +11916 +11917 +11918 +11919 +11920 +11921 +11922 +11923 +11924 +11925 +11926 +11927 +11928 +11929 +11930 +11931 +11932 +11933 +11934 +11935 +11936 +11937 +11938 +11939 +11940 +11941 +11942 +11943 +11944 +11945 +11946 +11947 +11948 +11949 +11950 +11951 +11952 +11953 +11954 +11955 +11956 +11957 +11958 +11959 +11960 +11961 +11962 +11963 +11964 +11965 +11966 +11967 +11968 +11969 +11970 +11971 +11972 +11973 +11974 +11975 +11976 +11977 +11978 +11979 +11980 +11981 +11982 +11983 +11984 +11985 +11986 +11987 +11988 +11989 +11990 +11991 +11992 +11993 +11994 +11995 +11996 +11997 +11998 +11999 +12000 +12001 +12002 +12003 +12004 +12005 +12006 +12007 +12008 +12009 +12010 +12011 +12012 +12013 +12014 +12015 +12016 +12017 +12018 +12019 +12020 +12021 +12022 +12023 +12024 +12025 +12026 +12027 +12028 +12029 +12030 +12031 +12032 +12033 +12034 +12035 +12036 +12037 +12038 +12039 +12040 +12041 +12042 +12043 +12044 +12045 +12046 +12047 +12048 +12049 +12050 +12051 +12052 +12053 +12054 +12055 +12056 +12057 +12058 +12059 +12060 +12061 +12062 +12063 +12064 +12065 +12066 +12067 +12068 +12069 +12070 +12071 +12072 +12073 +12074 +12075 +12076 +12077 +12078 +12079 +12080 +12081 +12082 +12083 +12084 +12085 +12086 +12087 +12088 +12089 +12090 +12091 +12092 +12093 +12094 +12095 +12096 +12097 +12098 +12099 +12100 +12101 +12102 +12103 +12104 +12105 +12106 +12107 +12108 +12109 +12110 +12111 +12112 +12113 +12114 +12115 +12116 +12117 +12118 +12119 +12120 +12121 +12122 +12123 +12124 +12125 +12126 +12127 +12128 +12129 +12130 +12131 +12132 +12133 +12134 +12135 +12136 +12137 +12138 +12139 +12140 +12141 +12142 +12143 +12144 +12145 +12146 +12147 +12148 +12149 +12150 +12151 +12152 +12153 +12154 +12155 +12156 +12157 +12158 +12159 +12160 +12161 +12162 +12163 +12164 +12165 +12166 +12167 +12168 +12169 +12170 +12171 +12172 +12173 +12174 +12175 +12176 +12177 +12178 +12179 +12180 +12181 +12182 +12183 +12184 +12185 +12186 +12187 +12188 +12189 +12190 +12191 +12192 +12193 +12194 +12195 +12196 +12197 +12198 +12199 +12200 +12201 +12202 +12203 +12204 +12205 +12206 +12207 +12208 +12209 +12210 +12211 +12212 +12213 +12214 +12215 +12216 +12217 +12218 +12219 +12220 +12221 +12222 +12223 +12224 +12225 +12226 +12227 +12228 +12229 +12230 +12231 +12232 +12233 +12234 +12235 +12236 +12237 +12238 +12239 +12240 +12241 +12242 +12243 +12244 +12245 +12246 +12247 +12248 +12249 +12250 +12251 +12252 +12253 +12254 +12255 +12256 +12257 +12258 +12259 +12260 +12261 +12262 +12263 +12264 +12265 +12266 +12267 +12268 +12269 +12270 +12271 +12272 +12273 +12274 +12275 +12276 +12277 +12278 +9.545241594889406 0.2826905789312277 0.102 +-0.2341598795305072 0.2304464446628514 0.102 +4.702790840103074 -4.120870626435569 0.102 +4.710041598394258 3.842095245107387 0.102 +3.67839197267467 0.06330762691502217 0.102 +1.780765682645565 2.64889714281597 0.102 +1.729380341795453 0.5924853168403524 0.102 +1.139595618380878 -2.6208970158134 0.102 +-2.988909952287409 4.951884770115252 0.102 +3.062129538508073 1.549216084095788 0.102 +2.774813125510342 0.5398369013259863 0.102 +-4.378974986868921 -3.601044102604422 0.102 +0.5382465719268232 1.621973680373222 0.102 +3.533862340825488 0.8788218261235607 0.102 +2.307435708602201 1.220827521125297 0.102 +2.351948511267773 -1.25189866524679 0.102 +0.9385414426515716 -0.6811088726847727 0.102 +-1.360375594610724 -1.913316662274912 0.102 +0.7664442821932504 0.2790168349191206 0.102 +1.419238984445374 -0.1217365854861272 0.102 +2.23012604830976 -0.00724416636831227 0.102 +2.969225691780323 -0.1792061824590916 0.102 +3.756824994247889 -1.276762323853328 0.102 +5.87373615042538 -0.5278237427513124 0.102 +1.274876282710428 0.3753368699282685 0.102 +4.713575557403539 0.671101842836047 0.102 +3.275050221468228 0.4087052582802696 0.102 +2.224444518312041 0.4914333384519612 0.102 +0.2779784452624462 -0.3283493252960548 0.102 +1.378929702849055 1.462147461002324 0.102 +0.9099516667745422 0.9608698243773598 0.102 +0.2418727593947951 0.7462883050091391 0.102 +0.6376091824243267 0.6578654077662255 0.102 +0.3579800228648623 0.3657399268856993 0.102 +0.514407409808924 1.05428469637998 0.102 +-1.425487665056884 1.398061321852379 0.102 +0.6001872452532148 0.4370836139894506 0.102 +0.5431465588966385 0.2024674249918214 0.102 +0.68181859391343 0.8889490397545015 0.102 +0.7432721137683456 1.128814557239894 0.102 +0.4172267159764814 0.5890372694157866 0.102 +0.1808771992495055 0.5106863614308589 0.102 +-0.2292133170429983 0.7580484986561224 0.102 +0.005038758277410904 1.231365478437024 0.102 +0.4662626474233119 0.8183991281263372 0.102 +0.2870188967735396 0.9806766761112249 0.102 +1.003193811395863 0.6017026072813365 0.102 +1.369005974038803 0.892966459968898 0.102 +0.7969780069280321 0.4978031524953285 0.102 +0.9998117440089095 0.372302660260952 0.102 +1.011377953514181 -0.05696274235110702 0.102 +0.7428404843519426 0.007066013836496481 0.102 +0.9491105066722645 0.1417959839422555 0.102 +0.8489047606382046 0.7582407093512631 0.102 +-0.2696402937997802 4.251728966753187 0.102 +0.3284716512274575 1.273793007929489 0.102 +0.09179164555382452 0.2047372917848992 0.102 +0.3239533071543413 0.112266207637293 0.102 +0.4979972306899047 -0.04798407791782094 0.102 +0.1923457004216322 0.3386912067584698 0.102 +-0.04380630655499768 0.4049061788864061 0.102 +4.115374495701731 1.916513761775596 0.102 +1.79949661257948 0.1809073157937176 0.102 +1.82594484447191 -0.3566136489998594 0.102 +3.224361294361987 3.219548575004239 0.102 +1.176818033806411 1.048786770524653 0.102 +1.297265913700089 0.6453475714787557 0.102 +1.84435118656226 1.086606188808986 0.102 +1.218241500546658 0.1233654601012986 0.102 +0.956960977024798 1.207767884347243 0.102 +2.46156361146421 6.739251988283599 0.102 +3.703494268298194 0.473141334574515 0.102 +3.12556428146484 0.7811198525939167 0.102 +2.690989479113246 1.013817737398247 0.102 +2.644970706738678 0.1029472376578678 0.102 +9.024051818731163 3.471012867134486 0.102 +0.003798389442935719 0.9105818196363474 0.102 +-0.02660233289445403 0.6731553941689696 0.102 +0.1498778605679961 0.8754665593599095 0.102 +2.539070707923843 -0.2504685709348499 0.102 +13.94430373860618 -3.757576159801484 0.102 +0.6900369650876965 0.1547031365582113 0.102 +-2.5073393415234 0.05787385086452831 0.102 +14.30137744729102 3.295092863579012 0.102 +1.886540366102484 1.604690510923723 0.102 +4.117635641190483 0.8983729859400994 0.102 +4.255158406155313 0.2562411928067914 0.102 +4.246457483503089 -0.5403183573212093 0.102 +3.483324589173649 -0.6699603032936206 0.102 +2.91877977638128 -0.7950774001936144 0.102 +-0.1629276247325238 -0.1841754126199107 0.102 +0.1165524853051736 -0.0815547500611023 0.102 +0.3068919790407711 -0.08264844236705451 0.102 +0.1713425405385597 0.06368075527074657 0.102 +-0.01441582082309819 0.05127807925387841 0.102 +0.1390895919147285 0.6503271522468216 0.102 +0.8829410267989066 -0.001529582185950085 0.102 +0.8333044010391947 -0.2398631470168419 0.102 +-0.8806491613339007 -6.265651897680293 0.102 +0.4555490720434495 0.09406400509075409 0.102 +0.04669586497467693 0.5248518196921285 0.102 +-0.1032486689765396 0.5491811661765325 0.102 +3.304585158654175 0.01164557562554475 0.102 +2.033166933468377 0.7962562836558905 0.102 +-1.502002593693517 0.3514513064390139 0.102 +0.05548351271765826 0.7714848642095619 0.102 +-0.09590684449254024 0.7922326916401036 0.102 +0.7714448728999204 0.6318765484989759 0.102 +0.4015166810830433 0.2132176348307657 0.102 +2.976617211266006 0.2130595873209531 0.102 +2.397869162142678 0.8102932830023961 0.102 +0.8631773110722473 0.3820108535684766 0.102 +0.4978079691825564 0.6970739752995512 0.102 +0.2809044259241627 0.6144009794567685 0.102 +0.4041478089838781 0.9484863298298518 0.102 +0.3643402782397492 1.088374542087114 0.102 +0.4884695736889352 0.3346264416295001 0.102 +8.039784494369011 -3.138207334536254 0.102 +0.6140634831660555 0.0317486217180535 0.102 +0.6474468091759762 -0.1242676555571925 0.102 +0.6347453898142759 0.301897987648204 0.102 +0.5487892914338893 0.5629910400275159 0.102 +0.5951678057722544 0.7961960716741571 0.102 +5.000831787155806 -1.799682199495471 0.102 +0.3112426740452984 0.4804276023280427 0.102 +0.3250370924002047 0.8549746009781448 0.102 +0.5517442666394526 0.9248221512643297 0.102 +0.6317923296291594 1.021536863115879 0.102 +0.7867053143743805 0.9833705299800772 0.102 +0.4594345994326337 0.450311679345383 0.102 +0.2023191295387604 0.1933918547612086 0.102 +0.954497685138146 0.4802476007649761 0.102 +1.114003221221827 0.4879112740080628 0.102 +0.3763376793609362 0.7050108332559835 0.102 +0.05924495792097439 0.3332550783368373 0.102 +0.6739992983560781 0.5389121090975353 0.102 +3.782657627105922 1.391442212235506 0.102 +2.872899017786772 -2.947813023722173 0.102 +0.8185140266579567 0.1125205290845859 0.102 +0.7176595814612815 0.4053389217553788 0.102 +-0.254095124626143 0.9766565626767704 0.102 +-0.1353464587706053 0.6686346715773552 0.102 +0.7079098658757679 0.7601450746844431 0.102 +0.9207591157021171 0.2707037860840775 0.102 +1.051840942261846 0.2380279196190689 0.102 +2.460424290829014 1.802475065627041 0.102 +0.6122002068587409 1.164192748862527 0.102 +0.8202642283319053 0.8752835333444091 0.102 +0.8786235222218026 1.092608667791609 0.102 +0.9626798876053645 0.7151412663510441 0.102 +0.9313841155202213 0.8526242370813494 0.102 +1.071442203836982 0.6952982591032959 0.102 +3.21614931757 1.182784049894373 0.102 +0.8846266073865956 0.6002059027550405 0.102 +1.015794161848863 0.9202417099457869 0.102 +2.113746571866641 0.2441337300716595 0.102 +-0.3725688018276706 -1.302687403286011 0.102 +0.3731087763993322 0.007839809774635585 0.102 +-5.919691707701194 2.179073382425941 0.102 +1.586475769351917 0.3495607257980259 0.102 +4.775466758893864 1.362173272875314 0.102 +2.498232631999234 0.3950254663942266 0.102 +1.183688358393392 0.882016335335172 0.102 +3.831742014385249 0.7921486673776135 0.102 +0.1061820217304531 1.069838696795837 0.102 +0.243220393044422 1.11532376843428 0.102 +3.521171507527834 1.976621998941025 0.102 +1.000135394890352 0.05593915212697478 0.102 +0.09812167888499677 0.4375799248206891 0.102 +1.412927095861137 -0.695182915048754 0.102 +1.161658792692221 -0.3437847407408329 0.102 +0.2962113575206623 0.2711715643960498 0.102 +0.2097552620246202 -0.032472945560238 0.102 +0.01243278684180257 -0.2680681946325446 0.102 +0.08962320115262197 0.9744593308891264 0.102 +-0.02647582728575406 1.042012900661626 0.102 +1.64587523495835 0.8574848182986369 0.102 +1.53599896251379 1.116692541546261 0.102 +4.048673379682724 0.5103454056104311 0.102 +3.892333913412678 0.2734402203275821 0.102 +4.033579906726795 -0.0729953092871011 0.102 +4.602934743250575 -0.2097488232083037 0.102 +2.983407490831704 1.091899761355918 0.102 +3.495720054530524 0.2893334222975612 0.102 +3.048717486706999 0.5481386073330361 0.102 +3.46179429304479 0.6284085104977681 0.102 +6.871291043172909 6.616354722548346 0.102 +2.249476032721894 -0.4011430926139443 0.102 +1.949670830324538 -0.8419762063160697 0.102 +1.361115695703721 -1.520527912968183 0.102 +7.551451542413793 1.207356200769607 0.102 +1.941027685138627 0.4742642303934176 0.102 +0.6277051527193717 -0.4144346640528506 0.102 +-0.3504827283744349 0.4910995598517309 0.102 +6.551962658938231 -6.356366645697777 0.102 +2.317131617111424 -5.748320026019953 0.102 +16.19914921506512 -0.3940942701423877 0.102 +0.1846959274534177 0.9985000007241981 0.102 +5.831147433315875 0.7006033926035701 0.102 +0.4831947269249201 1.185144327426701 0.102 +2.862029577024769 0.8084421023249391 0.102 +2.353823269482138 0.2096941599875754 0.102 +3.733436759556081 -0.3186468616449984 0.102 +0.4045835337604914 -0.0747162183195384 0.102 +0.248657871811493 0.4305323488348587 0.102 +11.50183430646482 6.217609558274917 0.102 +1.231546471597875 -0.09631929320653523 0.102 +10.61751250861 -6.343992601308511 0.102 +1.035007395914449 0.1311321297676953 0.102 +3.765449878041141 1.099781382251639 0.102 +0.8342930831226344 0.2183608944711258 0.102 +0.07149182499367593 0.1017868554881978 0.102 +-0.02607883060343155 0.1585234052956138 0.102 +-0.06898422404134351 0.291434002695444 0.102 +0.1623767425942105 0.7856303431958622 0.102 +-0.1981269111036293 0.1011644891017405 0.102 +-0.9926650758122558 -0.1462150957443756 0.102 +1.576031801807118 0.1176030947664589 0.102 +-0.4043686670332863 2.06602046629413 0.102 +0.6598832901348471 2.81583379180575 0.102 +2.807252985126521 1.326161891709985 0.102 +-0.04099387188089736 -0.09850901605875989 0.102 +0.5494260059528409 0.1018625220643302 0.102 +16.30033327205565 6.472707848324681 0.102 +-6.012980294511872 6.462194768032569 0.102 +3.522444225349052 1.156418747243326 0.102 +3.440806151386326 1.503768053985886 0.102 +3.251841321008214 -0.2961968998297126 0.102 +0.07393303582162176 0.0163155582802131 0.102 +2.558159572318314 0.6340179377572953 0.102 +2.076179017647165 1.051155296033791 0.102 +3.491656359334111 -0.1098650759991722 0.102 +0.9976923074542693 1.067559185903111 0.102 +1.484113116878738 0.5461882644352749 0.102 +2.784418987083074 0.3055051108121987 0.102 +0.2501539682114602 0.9011084636731475 0.102 +0.2773368034803274 0.03733743787558015 0.102 +1.105919820867226 0.5947237012047963 0.102 +1.039953977847311 0.5262379799792765 0.102 +1.777133710823279 4.452466371025528 0.102 +16.6572181772387 -6.637201268369739 0.102 +2.011436021563809 0.02829262046023539 0.102 +-6.8521440252273 -6.599413884207391 0.102 +1.168316138125923 0.7800359788717633 0.102 +0.1417341159465966 0.2679649888079567 0.102 +4.037157445431952 1.215008078456058 0.102 +2.456892817312513 -0.005857195753493993 0.102 +0.8865945194286173 0.6767526086149255 0.102 +1.146431548738299 0.3359801156458725 0.102 +0.6880047350632739 0.2290313715898906 0.102 +-0.696577135611668 7.300785572835866 0.102 +3.309018121630301 0.9375947974043938 0.102 +6.4020163942391 3.321872406979205 0.102 +4.862346133366618 -0.9194526198435711 0.102 +1.011985129380145 1.625503647643805 0.102 +0.8091447431662664 1.437349345537731 0.102 +1.791911747367279 0.3577530691665053 0.102 +0.2844555687469261 0.3477511322791802 0.102 +2.457476618009053 1.060864771168741 0.102 +0.07081724777764541 0.8534565422207125 0.102 +-6.676247046417888 -1.277238613486827 0.102 +2.519969974471607 -0.7817581655142855 0.102 +4.928560240732721 2.547843929965819 0.102 +0.8289945760298716 1.235499253960877 0.102 +2.857713468893325 0.02636603763583467 0.102 +1.126234819230722 0.005619420174188119 0.102 +0.06540185461667508 0.6838264271801666 0.102 +3.223807817986168 0.6141401988597974 0.102 +-0.02384772672902783 0.7508269090034001 0.102 +0.01616777174233122 0.2570531359505739 0.102 +12.41413174147546 -1.06014468441982 0.102 +0.09025674791122849 1.705998964917274 0.102 +1.71983893182651 -0.08387554169994368 0.102 +1.621761446320531 -0.3252361514820335 0.102 +0.1189446520912754 0.5736419570720116 0.102 +0.2249770385456122 0.1224159467916719 0.102 +0.1458608075696008 0.1451465436087749 0.102 +1.423982660828702 2.129594809424976 0.102 +0.2143038361627992 0.6690680703577732 0.102 +0.3963403796251093 0.7985428835695054 0.102 +3.089936106903142 2.10355260927216 0.102 +0.4864251490991824 0.2582562811730776 0.102 +3.188688891091392 0.226325630367735 0.102 +3.286878268696194 4.784303036496691 0.102 +-0.02618334546819684 0.5825758384881192 0.102 +1.020766720771056 0.4373808455731468 0.102 +1.693537492358454 1.403315604984223 0.102 +1.993672520249531 1.28445978020038 0.102 +6.861610871644724 -1.995939806130309 0.102 +0.6923907208606354 0.05698746561132781 0.102 +-0.04252246690645865 0.5016130664031049 0.102 +-0.1005937458632175 0.4559344520813097 0.102 +-0.1269384338558633 0.3673158613316858 0.102 +-0.01021826287103217 0.8280956162748641 0.102 +-0.1082999510837758 0.8883242091360971 0.102 +-0.06675436086931714 0.9713546117261009 0.102 +-0.3672537653208753 -0.8916838532281113 0.102 +0.7924167682556692 0.3568718955368065 0.102 +1.241565495807484 1.295732252447808 0.102 +0.7466319297697886 0.8314431969373625 0.102 +0.05042991450318384 0.6188573177216881 0.102 +0.8664041731855998 0.4587969146068457 0.102 +0.3814574027533528 0.1394035046122545 0.102 +0.7570211188189818 0.2001178284279225 0.102 +4.038171191814163 2.61278347623382 0.102 +1.858284670150309 0.8122885656011772 0.102 +0.5904380908982589 -0.05150700697412955 0.102 +0.6753633768373005 -0.02772870130814288 0.102 +0.744182312423373 -0.08617207409338301 0.102 +0.8187473862732964 -0.05361172425241049 0.102 +0.9185719183698781 -0.09279113633272251 0.102 +0.9850678839557622 -0.265678303608353 0.102 +2.22454615089982 0.7091392221107736 0.102 +2.622077839614273 0.8284369890417427 0.102 +0.8397350390038938 0.3026104792270878 0.102 +3.882643576129421 0.03830704991526454 0.102 +-0.1364411486567469 0.2024163052948284 0.102 +0.3983484256803907 0.512554213330553 0.102 +2.271337763589365 0.9986643801976915 0.102 +0.3279903715058683 0.2026514518867864 0.102 +3.640281429912874 0.7128648838879952 0.102 +0.6085772237355617 0.1513008525403492 0.102 +0.9210986073535556 1.038788414463189 0.102 +3.08297869210813 0.031974753844703 0.102 +0.4684498383534705 0.165785520023788 0.102 +-0.1063920340758614 -0.007915214098120574 0.102 +-0.2934324275448884 -0.05767553277476882 0.102 +0.4300898648888773 1.03353195649975 0.102 +0.1236962113437936 1.212217478252748 0.102 +0.4138444805169562 0.8775612861215433 0.102 +0.7504387250474313 0.5738243492343041 0.102 +0.4803958713278981 0.9088438780526973 0.102 +0.2165704502580713 0.8326192879768465 0.102 +0.8215552278850374 0.03277704161717998 0.102 +5.324993621319206 0.1590520187939465 0.102 +0.861623049605349 1.008212400447853 0.102 +0.5789616398347743 0.3544259397054795 0.102 +0.5286964012067976 0.7599441166564416 0.102 +0.5594426120075241 0.6425796308778389 0.102 +0.4858205274156369 0.6179553867179681 0.102 +3.095897012094796 -1.523050714006116 0.102 +4.150681537059036 -2.364988100695203 0.102 +0.4931213335624987 0.0442257600262279 0.102 +0.1911803015170718 0.5777087814773297 0.102 +0.2668681530169529 0.5445434789381578 0.102 +0.3399490683090743 0.926541903402531 0.102 +0.4466134994391938 0.7422789043414657 0.102 +0.8916377064732072 0.08199123790399938 0.102 +0.5608157240025917 0.2924249717751403 0.102 +0.4351690606739492 0.3836002854888164 0.102 +0.5332194272757221 0.8541759221465451 0.102 +0.4685464449648508 0.5353302577166424 0.102 +0.7066377500317126 0.9658109551257783 0.102 +0.5794625006127102 1.00385585431538 0.102 +0.5799014860738502 1.078746331725292 0.102 +4.346348091804557 0.6224713825939464 0.102 +1.333226707965364 1.086731833301193 0.102 +0.3583883057908251 0.6305080065322795 0.102 +2.075810719280748 -0.2081366471158571 0.102 +0.03031646632534023 -0.05765940162269034 0.102 +0.7134221209316376 1.049522565359095 0.102 +0.808594478348529 1.067019589170051 0.102 +0.5307812373097772 0.4068864826839531 0.102 +0.6352342179182866 0.9480623906702399 0.102 +0.66837802008573 0.4545491052605374 0.102 +0.9336771347764435 0.4037323104949567 0.102 +0.5734304854263127 0.7156700961826472 0.102 +0.3312718577453445 0.5527668061398257 0.102 +-1.433266459620679 3.213700303479298 0.102 +0.7915050001440387 0.7223955355151988 0.102 +0.9791404457292856 0.2777177567093849 0.102 +0.4170850260253945 0.291226389596318 0.102 +0.3050193623363815 0.693027148280385 0.102 +16.80331119733105 -3.123360041409959 0.102 +3.476954036982294 0.09899996190265446 0.102 +2.518144188505129 1.295196235014592 0.102 +13.6671168745314 -7.071241885295381 0.102 +0.7181893090857718 0.6911297899440325 0.102 +0.5449278644079321 0.4909565567714965 0.102 +0.6164001101285973 0.8738603142546131 0.102 +0.4805658658617523 0.9840825977739533 0.102 +0.0220987289908682 0.4551416288699208 0.102 +-0.8432424850080404 0.8050497341616916 0.102 +0.710804715333283 0.3269194721864904 0.102 +-0.009362076234954522 0.3404900041781114 0.102 +0.3693339456388063 0.4347642072148999 0.102 +-3.152890242165177 2.106169986279163 0.102 +0.6193436518097347 0.5894070070603833 0.102 +0.4380360759074043 0.6546265619633813 0.102 +0.6101083844410659 0.5090951470461353 0.102 +1.421583787839635 0.2357986016924487 0.102 +-0.1913650899279741 1.195508294458751 0.102 +0.3130773365412053 0.7813808745149866 0.102 +0.6753936781560967 0.8226981328413665 0.102 +0.6832266918532401 0.6071987372546896 0.102 +0.6225606638433505 0.2281739449282696 0.102 +-3.340154820960894 -7.135730425634269 0.102 +0.7457643691252254 0.9237081737109157 0.102 +0.6355063317838213 0.7341451074565573 0.102 +0.9868245660288101 0.9841311223006202 0.102 +4.367661669608585 1.157795345471968 0.102 +0.01415106611134925 0.9742667257182411 0.102 +10.74834835250192 -3.288201000157785 0.102 +2.682141008588539 -0.09794137025915031 0.102 +0.9843761706014313 0.2037574363743817 0.102 +0.4498568586212285 -0.0007710576612446222 0.102 +0.6421403004959257 0.379368806939438 0.102 +0.2975788128089086 1.062252242556866 0.102 +0.9552242053369255 -0.01956853014014048 0.102 +2.38607706543896 -0.2082996618149958 0.102 +3.326447242418097 0.7638416547499259 0.102 +4.635356628674811 0.2222341719263668 0.102 +0.1277295832763881 0.3698503926097203 0.102 +-0.008464663648790605 -0.03390028919913818 0.102 +0.9449507138986346 0.5606750457554953 0.102 +3.925488606104029 0.9658487704193898 0.102 +3.861112426094385 0.6022109516795278 0.102 +3.95880266568118 0.6999082052174781 0.102 +0.7246792810430345 0.4997435136256106 0.102 +7.428553904315998 -0.5181577583602763 0.102 +4.326028258096382 -1.241290929926241 0.102 +5.177400574893204 1.107219181826152 0.102 +-0.1441097979182403 1.045989792131464 0.102 +-0.3731712552316382 -4.055997673074705 0.102 +0.1458729856722264 0.003832151281109395 0.102 +2.837100390664869 -0.4962753859965465 0.102 +3.111342931082484 0.3534451560307262 0.102 +1.073219593451983 0.9976793119612627 0.102 +0.2217806025959881 0.267226447913409 0.102 +0.3423815871611074 -1.165507501858395 0.102 +0.4986336499760846 -2.257945153578914 0.102 +0.8117632902222656 0.4344476126185522 0.102 +3.713502135039549 0.9046993247675382 0.102 +0.8263035595869006 0.9542021176898391 0.102 +1.936875010190475 0.9556302004023891 0.102 +4.27132535815101 1.51523467270933 0.102 +2.210125734511803 -2.153507365173072 0.102 +3.721961618563927 0.2559534231332306 0.102 +4.863043106254446 1.964618840335043 0.102 +1.505638682538069 0.7500481200410267 0.102 +0.1598966473923256 0.7119773703042254 0.102 +0.8100919010155363 1.1577331927267 0.102 +1.090330286706311 1.19158300962145 0.102 +0.7472124809413794 0.115266100077598 0.102 +0.03689542640636753 1.048207577796548 0.102 +0.6579250732715741 1.107134661485972 0.102 +0.931705702654222 0.3372648058353817 0.102 +0.8850637226651327 0.8960407084616717 0.102 +0.8703507097423062 0.819610170839283 0.102 +0.9850370588625176 0.7858306579633554 0.102 +3.891236304319387 -7.509524862974732 0.102 +0.8690140908821105 0.1550630717953946 0.102 +0.9200891796648151 0.7771519897017398 0.102 +1.384484756906863 0.04661439992214395 0.102 +-3.871655261207544 7.182573757981117 0.102 +1.006295834862953 0.6660627396354792 0.102 +-7.183604136195631 -3.710685154747266 0.102 +0.9988117208615576 0.8503097685892008 0.102 +1.019520807722705 0.7484128440620711 0.102 +0.1761435341970177 0.4514522109850322 0.102 +3.456193212488631 0.4333004207005674 0.102 +1.072009281742462 0.06218978880915594 0.102 +1.050010969231527 0.002536730963754318 0.102 +1.102895074738425 -0.08182714276505487 0.102 +0.3084515950446253 0.4110909833252891 0.102 +4.016914113340159 -0.4023810752077084 0.102 +3.832130842553529 -0.7370777413732035 0.102 +4.288183387932376 -0.2614871027411423 0.102 +6.330064102854079 1.574663235548834 0.102 +3.763810078407198 -0.1009185643980371 0.102 +4.95396399411025 5.554316251414537 0.102 +0.7732544723069349 0.7875112326400627 0.102 +0.9553568416763011 0.918388463162805 0.102 +13.82109894736417 7.589907611954125 0.102 +2.913009843471644 0.419987750041161 0.102 +0.1754244568786227 1.076847134135189 0.102 +2.142787943383561 1.518960066775199 0.102 +0.9308631772702853 0.6309904228865153 0.102 +0.8159118133453216 0.5831737121219205 0.102 +3.122099688135381 0.9641799655641883 0.102 +0.2389401779979483 1.041233587497697 0.102 +2.36864126683174 0.5943422051883221 0.102 +0.1079749935559381 0.5069961432934954 0.102 +1.093123384367193 0.7639185793436426 0.102 +-0.04120054299823474 0.2200507751009823 0.102 +5.708506020684922 -2.922341761316508 0.102 +4.294586283161202 0.02029510675296404 0.102 +0.1919167355360943 0.9375272291253897 0.102 +-0.1467208597862421 0.2846586432494385 0.102 +4.034022434490109 0.1647443929090915 0.102 +1.942773230190835 0.6408381851959406 0.102 +3.182451058453921 -0.1369138002966545 0.102 +9.255069870082391 7.652017418382917 0.102 +0.6983847181074337 1.25951204398232 0.102 +0.5470867815304512 1.383337116325736 0.102 +2.237370978341182 0.346391171559256 0.102 +0.3683771101129509 0.08112290557771425 0.102 +3.341710093575391 0.2070339407606151 0.102 +2.908639346422417 0.6454137332829371 0.102 +3.040060842151824 1.341035784663239 0.102 +0.8608466245584034 0.5243163221145862 0.102 +-1.234579676190918 -1.064808744374931 0.102 +2.333420571205235 3.606216231349733 0.102 +2.444035673966291 2.404076992873675 0.102 +1.93114110287636 0.2837098614624907 0.102 +-8.117657483906935 3.986057956351082 0.102 +1.189425451741866 0.2258405296293634 0.102 +2.533932102869053 0.2442035278031675 0.102 +-0.7570853173947566 0.2786634382580758 0.102 +2.860657571526084 0.9749703168239373 0.102 +2.814475318625488 1.130611456616036 0.102 +1.074949287090628 0.3846481305542466 0.102 +1.062637667282633 0.3130531693096817 0.102 +0.07776022964388654 0.2674216939264721 0.102 +1.890633909626783 -0.1079859595092171 0.102 +2.089663029292339 0.6071013453137422 0.102 +0.9138015966505368 0.2103584708707113 0.102 +0.2145252337382935 0.03032038499504149 0.102 +0.04229911256147934 0.387153875102913 0.102 +-0.08531412364236166 0.09426736773646126 0.102 +0.3792488605600965 -0.2012189213984078 0.102 +0.3118851486338721 -0.0200988828646123 0.102 +0.2635765442905281 0.1704839415429548 0.102 +-0.2252456723952244 1.503749726478208 0.102 +1.50831787429121 0.966134824645253 0.102 +1.664815898365358 1.030318009285744 0.102 +1.686152731711639 1.211400295125598 0.102 +3.84493597831485 0.4290470030860775 0.102 +1.418713400409179 0.4417550554777842 0.102 +0.7208061893513573 2.223939051019213 0.102 +-0.5451080899832086 1.238596514088054 0.102 +6.147266993302895 5.156362895483361 0.102 +0.1032957458452353 0.7432014502887616 0.102 +0.6333732940337666 0.08988055665177248 0.102 +1.731140687170062 -0.582667182341016 0.102 +3.31649950122531 -1.114651733082012 0.102 +2.22035574229688 0.1298157463845387 0.102 +0.3552390811388301 0.2653798268461474 0.102 +-0.4832459432290848 -0.3981488813135729 0.102 +1.081647817892387 0.9350966815433832 0.102 +-3.252130414575802 -1.979731885448271 0.102 +-2.297007640702064 -3.73047415255522 0.102 +5.148502394623584 -0.3623520918079346 0.102 +1.059172355476481 0.6281189287811042 0.102 +0.7226666147740051 -0.2056187170113969 0.102 +1.373185647154092 3.45718034887184 0.102 +0.8435502540490358 0.6483068807352366 0.102 +0.02966032908729054 0.1593580418082243 0.102 +-0.05611454083683597 1.143075312728539 0.102 +0.006643547010611812 1.117834009356842 0.102 +2.521113024662105 0.928854410015296 0.102 +1.661569490450103 0.2245042147981357 0.102 +0.5598501096967938 0.0178732416395853 0.102 +0.9424070218501449 0.04746697185846652 0.102 +-0.1648553163145043 0.5967781705231867 0.102 +-0.1812971459228972 0.5167100724946601 0.102 +4.013311591233019 0.3457383555553338 0.102 +2.670063656957798 0.4224794623922613 0.102 +2.809174269676074 -0.26141131222097 0.102 +1.640754173183843 0.5002008535426977 0.102 +0.1226576778839118 1.017806015134026 0.102 +3.890964319465242 7.749833684478759 0.102 +1.602262262317148 1.625080776085776 0.102 +2.202275232468081 2.07225680569689 0.102 +1.345517244572579 -7.594074047159917 0.102 +0.9876771717398388 0.1093853411573145 0.102 +3.069315908926806 -0.3746964319040745 0.102 +2.358597161776465 0.385836593359113 0.102 +3.663999171731336 1.265687045520197 0.102 +5.82207238853548 2.452839433738457 0.102 +0.09259273921229833 0.816972999402371 0.102 +2.805640213325909 0.1944959149367614 0.102 +1.547375329993946 -0.05095203482697967 0.102 +2.967911143716971 0.9144960693115618 0.102 +-0.07042820796802579 0.6943781896328259 0.102 +2.166570361459491 0.8604457355116465 0.102 +1.070130017252392 1.070406445345593 0.102 +-4.93322035483675 0.05516050309388981 0.102 +1.781484580112286 0.9530576373062108 0.102 +1.277362564907913 -1.014613959543452 0.102 +-0.3947269378136846 0.1194655534313916 0.102 +8.563007191270545 -7.354820995996203 0.102 +17.31130734158497 4.751318238143331 0.102 +2.108909479801355 0.3981140034303575 0.102 +0.004681357498590255 0.1041207755480318 0.102 +14.23312869205125 0.6930019319540071 0.102 +-0.4397204446380869 0.8840642047046186 0.102 +1.159284785290799 0.6376908486975824 0.102 +2.74395847053772 0.6847008952018024 0.102 +9.361579221936243 1.750637650546234 0.102 +0.2373286657514068 0.4848539339492959 0.102 +1.277135277589852 0.5043918118212112 0.102 +2.164976590255586 -4.023462281448667 0.102 +1.624888939549177 0.7137082426321985 0.102 +0.1095635024332771 0.05859624041487515 0.102 +-5.169577338749918 4.356164389776706 0.102 +1.10574604677984 0.174973481843354 0.102 +4.509490052485618 -0.5098664295985201 0.102 +0.05851821062078411 0.9171615069351228 0.102 +-7.618247427369718 0.9257904238277535 0.102 +0.8719696717276331 -0.04374336247848974 0.102 +0.8537542913728038 -0.1142953337507809 0.102 +0.7943748458465898 -0.1134640176221008 0.102 +3.440027339430864 1.017910310013027 0.102 +3.611409762111041 1.001286966866649 0.102 +0.1932423247328348 0.3909539802378968 0.102 +1.102103005474307 0.1135275433856397 0.102 +0.1058233167246604 0.9094695042657621 0.102 +2.009032410874325 -0.5198468611273472 0.102 +1.13931014531885 -0.2259927599925733 0.102 +0.275604230323588 -0.04517618347897098 0.102 +3.267183144915609 -0.5511731484034901 0.102 +1.277453576141232 0.9891966005825668 0.102 +1.356405919168926 -0.2888186226226871 0.102 +3.353911497658226 -0.1060685431631067 0.102 +1.100780903104701 0.6417603683191471 0.102 +-0.1914298867612651 0.8323797205953855 0.102 +7.59660819182325 2.061114367529969 0.102 +-0.1414692983752143 -0.08999287217071136 0.102 +2.628457802632352 1.146457576350247 0.102 +0.267718000817153 0.2311650531222283 0.102 +0.3337791900372278 0.3121335805249371 0.102 +1.256647428087852 2.686902601265027 0.102 +0.6845218017253645 1.181915896362285 0.102 +6.015576662343444 -4.813380257827073 0.102 +3.222629406554702 1.444645279088859 0.102 +1.31349546963253 1.76351600226762 0.102 +3.877121188288403 1.105699466652442 0.102 +4.386999142381039 0.916434029049163 0.102 +4.662906927460824 1.013984083813809 0.102 +8.44622991755096 -2.261849345032855 0.102 +0.8342855738789655 0.7137976920027048 0.102 +0.1558192712297561 0.20759713850508 0.102 +2.637661365750963 0.2951731749770819 0.102 +1.417568196290293 1.248824392548493 0.102 +0.5329227749810657 -0.1275694551152238 0.102 +0.4663236016461764 -0.1008594929125164 0.102 +1.873981271613917 -1.332874841967225 0.102 +5.621209890345053 3.3664900201194 0.102 +-0.1935051707044139 0.4241227509618524 0.102 +13.64226802380546 5.17247452801674 0.102 +1.853076645651677 0.01532705588772626 0.102 +0.1560860613154256 -0.05059024897486783 0.102 +0.006616882361785006 0.2140511872271583 0.102 +0.1154091567024896 0.3057207375386665 0.102 +3.752780255185742 1.660896731466163 0.102 +0.122258565045327 -0.6296779221854707 0.102 +3.899329369344859 -0.232567163530499 0.102 +0.4112330209607618 0.05745855296353646 0.102 +0.1382664486323045 0.9589867515206922 0.102 +4.177694824371113 0.444952250537724 0.102 +4.4192168224895 0.4134752101203714 0.102 +3.617941320433976 -0.08810514358964024 0.102 +0.3825811926974361 -0.05057029485831507 0.102 +0.9117025108399013 -0.4547305006432302 0.102 +17.99607541704449 7.852901244696347 0.102 +1.834429195074738 0.4868093016432652 0.102 +-0.4094884499194347 3.237621624665906 0.102 +-0.1231696172322805 0.04487506176880268 0.102 +4.062158075466237 1.052165962793585 0.102 +2.759090395944626 1.683684252470291 0.102 +0.9780735281950811 -0.1374992455835924 0.102 +0.9035204255367258 -0.1716854202562942 0.102 +0.2790164321654959 0.817535784598855 0.102 +3.537728756171956 -0.3714758068724711 0.102 +0.0475571343255318 0.05891417558940554 0.102 +-7.946272250178267 8.028185943308573 0.102 +4.044521107678271 1.452839897821567 0.102 +0.04189606100320797 -0.161918478997273 0.102 +0.2598233409957599 1.237158814649115 0.102 +-0.08514320890394854 -0.05139876623542005 0.102 +6.45116471758303 0.004703951720473439 0.102 +1.049133321481179 0.5812256160536171 0.102 +0.6587471475109785 0.1982963681657506 0.102 +0.01153389161912415 0.008865751025928124 0.102 +3.04152109488601 0.6817132266467025 0.102 +-0.05398215864426881 0.8803376867031455 0.102 +0.2779538714202706 0.08291106449116793 0.102 +0.7652628299330915 -0.04521619285608935 0.102 +8.465173576041254 -5.747350841890242 0.102 +17.94592041475416 -1.326501054767576 0.102 +0.760348680912445 0.06940579966608451 0.102 +3.160727514746794 0.512488171808355 0.102 +3.343427033927681 0.5221680725900849 0.102 +3.550439349555713 0.537446516340445 0.102 +0.0004728748793384752 5.614245807285279 0.102 +6.242472152783628 -1.473342940829477 0.102 +3.636604163370888 0.3531947418508319 0.102 +-0.1427361864594418 0.7281414896365253 0.102 +2.333819673871587 0.06982757325789207 0.102 +-0.1500180260938048 -0.4789248686383922 0.102 +0.2220676404202451 0.9730401311549173 0.102 +0.750204542683824 0.4431584178719414 0.102 +1.165800238791272 0.4155840024008198 0.102 +0.03842478705734206 0.831766338424353 0.102 +-0.07197382292622118 -0.2182584475535583 0.102 +3.813109654814343 0.1719004086395952 0.102 +3.59928803203619 -2.054014614822401 0.102 +0.9845931965930221 1.417125934544902 0.102 +3.126492021833384 1.111531974554701 0.102 +0.5362156820315965 1.129821019287587 0.102 +0.4566322543030004 1.085805565523571 0.102 +1.541013555151001 1.321382187591956 0.102 +3.498832686896726 0.7597082349970671 0.102 +1.078549249374045 0.4568053046996572 0.102 +1.324742429346784 0.7794501129716567 0.102 +14.82205651419165 -2.116714047412077 0.102 +-2.450728823243587 1.138341513412894 0.102 +0.2906433341798037 0.9180511268936968 0.102 +0.9468401305691477 1.121780547343705 0.102 +0.8937880354458051 1.166636097919858 0.102 +1.026736642630985 1.149599528200701 0.102 +3.374338981649014 1.307895390187883 0.102 +4.12781356392169 3.531796811926712 0.102 +0.4963898968843765 0.1244390029573741 0.102 +12.4584157535254 -5.501461653592888 0.102 +0.8057122591915246 0.1739277001975109 0.102 +2.476743630637828 0.5222659937071364 0.102 +-1.700874503373687 -7.922694487005769 0.102 +1.029705510706959 0.1865402179730565 0.102 +10.47438515311901 4.119000391415637 0.102 +0.8049994921679535 -1.464224879456778 0.102 +11.74668360542321 -8.439080873638806 0.102 +1.026483453368625 1.014813917979608 0.102 +2.501131950909748 0.7737241924936191 0.102 +3.978732877449243 0.8198125608058999 0.102 +0.7860780127252768 0.2418543746689789 0.102 +1.543562091455842 7.987673843455681 0.102 +3.31598853841861 1.768070598990835 0.102 +18.0882948383992 -8.144480384249178 0.102 +2.779232541331206 -0.1205776335031207 0.102 +2.516525761174431 -0.1310095236176868 0.102 +0.329911289066076 0.04824172960126474 0.102 +-8.203877409039741 -7.773202962248998 0.102 +0.8707415808980448 0.2532231155180106 0.102 +0.4431749851157582 -0.05230047770022216 0.102 +0.1677080273096354 0.8321084861311243 0.102 +1.127534773221099 0.05675666648349172 0.102 +4.144195727228904 0.6061842311967155 0.102 +1.115583107347717 0.2814355327499539 0.102 +0.9640141892050086 -0.06508550014956532 0.102 +3.587586404320655 0.1805007724072993 0.102 +4.437525395389772 2.263273912404054 0.102 +-0.09895942901285866 0.1509191432722836 0.102 +2.062939849044084 0.9070402736006736 0.102 +0.5710811650359613 0.0634798115841889 0.102 +0.9896420282818622 0.5340830780660391 0.102 +-0.2165546942460186 -0.004982818845890139 0.102 +1.385831268718267 0.6659827141497019 0.102 +-1.305727174764556 5.886041295811151 0.102 +1.233979963141056 1.148393954277777 0.102 +0.9192167968690219 0.5119582212076415 0.102 +0.3584534324942013 -0.08956420183964987 0.102 +0.01751057686113435 0.7122014789802744 0.102 +0.2383863750954976 0.3296237261882428 0.102 +17.78876253858568 -4.980983400443452 0.102 +2.132200180661866 1.212095069643237 0.102 +0.1167237447562953 0.100462466574172 0.102 +-0.08070799825374815 0.8459457124580861 0.102 +0.6868895553633365 -0.07703352862736301 0.102 +1.933619711387674 1.067725914373212 0.102 +1.119951603266482 0.8327464302373715 0.102 +3.246236360679539 0.8291557331652154 0.102 +2.763495608200504 0.8929029760943593 0.102 +0.8213660271921805 0.8289807051582693 0.102 +3.911816296200408 -0.08247685552242931 0.102 +0.8420263407869157 -0.008004038407792204 0.102 +3.813207673900577 1.226739572382449 0.102 +3.457467926344751 -5.089113920538485 0.102 +2.590407875509312 -3.773697584811146e-05 0.102 +15.0517918561404 -8.009059623644493 0.102 +0.8914059217261093 0.3360507725621934 0.102 +-0.06526654290704989 0.3675288858965818 0.102 +-0.09807255575729364 0.4061928631704594 0.102 +0.9234564835077773 0.7219099131420911 0.102 +0.7207526612009348 -0.03847241260609766 0.102 +1.162591552268018 0.9588657603056012 0.102 +-0.14163906361093 0.1256669382131727 0.102 +3.173509273933499 0.08620112259662176 0.102 +0.2444932953689665 0.3794329329474367 0.102 +2.712585844795151 0.01311475951534288 0.102 +0.3317725566828455 0.7344540558401619 0.102 +0.9662699594144761 0.6708944093239602 0.102 +17.95759767969664 0.508360389760326 0.102 +2.223919681446599 -0.1612891216067973 0.102 +3.734144587253842 0.6080207198484823 0.102 +-0.5813013475601602 -0.06574047638613512 0.102 +-0.08582475812001711 1.03263831962337 0.102 +-0.1482570195250348 0.9806646204331915 0.102 +0.1940954295308157 0.7503603510977396 0.102 +0.07439066135625975 0.3995203238893672 0.102 +1.298359772806207 0.2597182485557937 0.102 +5.320173329626217 2.239198365470833 0.102 +0.2655423001031275 0.4457958398490731 0.102 +5.725764899135998 1.364302658532327 0.102 +4.042047378275342 -1.68772869497727 0.102 +0.6233387482952296 -0.2169082860101351 0.102 +0.1160933479358346 0.6908154107869655 0.102 +-5.263619253167153 -8.030392734536061 0.102 +1.952349821145596 0.1182375361693645 0.102 +-0.0451181254069619 0.1152606390933411 0.102 +0.4191671195333728 0.1751812285770236 0.102 +0.7127055909601967 0.2766090913822119 0.102 +1.095752061910868 0.5297238951719078 0.102 +2.397363816437335 0.9474050525858436 0.102 +15.71781580004198 4.546496042258526 0.102 +0.5522753194297292 0.1506388951345133 0.102 +0.06205383178073873 1.098051066807105 0.102 +0.01936450874355546 0.7795839932131695 0.102 +0.0373023810644531 0.5812442420670937 0.102 +0.2036770383049763 0.8648964009260844 0.102 +-0.3277773014485897 0.8715859145648429 0.102 +3.366757344566021 0.3486123654991681 0.102 +0.4554984969228951 0.3291903660924601 0.102 +12.04908639723953 8.125460511674257 0.102 +2.627967499835542 0.5509128738354072 0.102 +11.28438242973396 0.8926677626105644 0.102 +-0.1111553058679763 0.2239522869275282 0.102 +-5.429861906041353 7.963858174727184 0.102 +10.66059634207139 -1.162147260755226 0.102 +4.009131492183151 0.05734922308276107 0.102 +2.2172548653461 1.102205357991778 0.102 +2.317740463058115 1.065290690155991 0.102 +0.6918452315361403 0.01697103971236499 0.102 +0.2208916691633447 -0.09479774578856426 0.102 +0.2665122309793693 -0.1397690257137075 0.102 +0.392963073831383 1.164311138896172 0.102 +0.09435648822037968 -0.02400201075203708 0.102 +8.379968261528074 5.462139454724824 0.102 +2.356709711140949 -0.3692965862017636 0.102 +1.039985512365602 0.9703669157290626 0.102 +0.7822331215392089 -0.008891940395341271 0.102 +15.51595007972947 8.23201000086309 0.102 +2.09876221292117 -0.05176794751646244 0.102 +2.224725033629841 -0.6480593970836278 0.102 +3.409648031396691 2.515491972963483 0.102 +0.01201789971116034 0.3073491285788075 0.102 +0.7038009500948492 -0.1317389881286793 0.102 +0.7461289880536222 -0.156914456667726 0.102 +-4.603511398975031 -5.689757762631887 0.102 +1.651032989843505 -0.9414336891506566 0.102 +0.132995566320461 -0.1645605755482376 0.102 +3.331487256536834 1.06869553582689 0.102 +1.533778810143937 0.229581636865536 0.102 +0.6003315469415333 3.896158311178005 0.102 +0.5019734805415845 -3.10507339835827 0.102 +-2.12615297592788 8.411457386688051 0.102 +-0.07895713259300315 0.7435996928815372 0.102 +0.9872521505552203 0.4060088737583655 0.102 +2.455759129631088 0.1294936041762245 0.102 +0.6213740299720886 0.001135467762167243 0.102 +0.9370804392925335 0.09375303073746198 0.102 +0.2435080645837658 0.5906617723152344 0.102 +0.7075451023383876 0.1879424172972358 0.102 +2.33523712902683 1.397319573840133 0.102 +2.391231016494592 1.191441354350071 0.102 +0.08803078555440697 0.6682784417978705 0.102 +0.9924224693015679 0.1560964285215383 0.102 +0.1877579200242524 0.2798100259501438 0.102 +1.073139235352344 1.285276486607838 0.102 +15.54709974096637 -4.943897667446352 0.102 +3.402627363427701 0.8999088394172907 0.102 +-0.04703938422883431 0.9252112737490158 0.102 +-8.239409800741765 5.87763663231477 0.102 +2.893474262559709 0.2837979519381891 0.102 +0.8873218070811286 0.4174023553792407 0.102 +0.09793517227865373 0.6019741279863169 0.102 +0.4272117288017454 0.4369549677786779 0.102 +0.842444954974388 0.07599411712490708 0.102 +-8.284595689782501 -5.412866284623754 0.102 +0.5212705564526081 0.2553697091574746 0.102 +0.009141188667966996 0.5257057838184931 0.102 +5.841178516484325 -8.058137124131866 0.102 +3.454044839613553 -0.01804618192721889 0.102 +0.7964542217385833 0.3222704413409687 0.102 +0.174267201570601 0.6386515495774712 0.102 +2.345845209638782 -0.06341942148824467 0.102 +2.076228782266468 0.1070466611139976 0.102 +2.56196638064025 1.489492724911802 0.102 +-0.03071251894910215 1.001697897579474 0.102 +-0.05252239377945341 0.5294634816071737 0.102 +0.5342722477455578 0.9570461689820668 0.102 +2.567833904979812 1.038518321449628 0.102 +4.169545139441173 -0.9022596767599762 0.102 +2.803997723088185 0.4385519595087248 0.102 +-0.0738018278085007 0.5065733443858438 0.102 +-0.07074984578955927 0.4527051946946904 0.102 +3.933221130436341 2.264969157625278 0.102 +5.085127358082101 0.648538872933386 0.102 +1.834852297409225 1.259343814546742 0.102 +3.749139286296574 0.3596339491539444 0.102 +0.251806748089617 0.6675168874712141 0.102 +0.2423131647813842 2.064439637848061 0.102 +5.689629719801377 8.288504096195577 0.102 +0.7464977748931594 0.3565269331556846 0.102 +0.6337617117989018 0.4284758221478286 0.102 +1.909151790671186 0.3808982921214223 0.102 +0.7942064808665422 0.9480974023804288 0.102 +0.07363456717467649 0.569591192853053 0.102 +0.4043659624336551 -0.1529969209889306 0.102 +0.1407930017372872 0.403873814109912 0.102 +0.4680970158756881 0.04714987585656191 0.102 +-0.1845056099417252 0.9155578139189305 0.102 +0.05332683308253549 1.167647563561034 0.102 +1.035857019128919 0.09138188380420199 0.102 +0.4158328931349832 0.8188209498603918 0.102 +2.943767760308052 -0.03218208651282353 0.102 +-0.07743896918990319 1.09770009100073 0.102 +-0.03840751099398192 0.7848940820681063 0.102 +-0.3203664686107701 0.379648965467106 0.102 +3.810787842982993 0.9905374155562416 0.102 +0.1998034379960109 0.1619025865584338 0.102 +2.886950206578982 0.5315341368412511 0.102 +0.2010275208624362 0.0714269441614109 0.102 +0.7429389346029155 0.6048022406878968 0.102 +0.6349581416170673 -0.05594593835077277 0.102 +-8.077365134210581 -2.53665376135692 0.102 +0.448358923806999 0.5135610890811245 0.102 +0.9601956212523538 0.9544968386074496 0.102 +0.3171090569332475 1.023375554537219 0.102 +0.4014525433275019 0.627038387088293 0.102 +0.006694919693828592 0.6226046139337277 0.102 +0.1877677351123035 0.241907535118553 0.102 +1.062693300494224 -0.04132800768247764 0.102 +0.6544457596425639 0.2597179004159865 0.102 +2.528042630204499 -1.842409196565382 0.102 +2.759561375618245 2.604358220550892 0.102 +0.1672302653577033 0.5532215557743342 0.102 +0.3862478529416752 0.5524952023691095 0.102 +0.2869908954860885 0.887471169188493 0.102 +0.6322395853496341 0.7892000879010153 0.102 +-2.524589161430049 -5.714775771593049 0.102 +3.795095216084081 0.0185646909103318 0.102 +1.079667820726985 0.5023688711196836 0.102 +7.577537977563544 8.254669631122571 0.102 +3.595387390871595 -0.9323753346623339 0.102 +0.08557932743593304 1.009112294677859 0.102 +0.3711754077058074 0.1824649398162965 0.102 +0.9964716981486417 0.007050424836126295 0.102 +5.061561884953592 -2.274806129501789 0.102 +3.242167208924133 1.021018315618163 0.102 +0.5159161200501641 0.4416300434882661 0.102 +4.198669630590524 1.122066101886263 0.102 +0.3981936305825647 1.048434699145322 0.102 +0.3676114395913437 0.9542803664983736 0.102 +-8.253859871653644 2.070752205780556 0.102 +4.473016385776827 -0.8360023377330316 0.102 +0.3509579858852883 0.8857373258617054 0.102 +0.5268872791400719 0.8872273839029859 0.102 +0.4509230463983823 0.2171143502320102 0.102 +0.144168221703724 0.4832953524021563 0.102 +0.4518664399006695 0.8652029912716455 0.102 +0.8856622222020861 1.001246663990771 0.102 +-5.020412369122488 -1.727316088252273 0.102 +0.2443389898420575 -0.01069249745049922 0.102 +0.7446938604253162 0.1540323892911564 0.102 +0.5439410105205489 -0.06895690697783041 0.102 +0.1415903366161667 1.144376359418446 0.102 +0.6081968518176099 0.9098532570496645 0.102 +0.7080033727526438 0.4498255110760974 0.102 +0.505413713785268 0.2079213263016218 0.102 +0.9572543130804562 0.2521550945213925 0.102 +4.881633434136773 -0.01998575769139319 0.102 +0.3246977758250172 0.3774090409107407 0.102 +0.4865652582403861 0.7690195947389656 0.102 +0.5949794247235604 0.1132717048879464 0.102 +0.4154363354955532 1.078391890281734 0.102 +2.579973161642793 -0.4828981147080799 0.102 +1.781217641473256 1.98248225325221 0.102 +12.77896717234479 -2.860750598201857 0.102 +1.032298039180018 0.4078984273874409 0.102 +1.036239893006279 -4.179849245290449 0.102 +3.616198771354316 0.8270328083553382 0.102 +-0.06181201424567001 0.6651954147684296 0.102 +0.7098541855806068 0.8076147276374445 0.102 +0.8131782309276303 1.023609817019542 0.102 +0.4080979474655527 0.1060296874696288 0.102 +1.182179974818877 1.514805485380158 0.102 +0.5871971612858484 0.6755322487742762 0.102 +0.6811342929128995 1.059579104366451 0.102 +0.5453803860533276 0.3263947074099058 0.102 +0.5376915283630722 0.6089995660367977 0.102 +0.6218188902495538 1.078795774316589 0.102 +0.2472898693952864 0.7053837934996412 0.102 +0.4627788368202647 0.5949344510146284 0.102 +0.5199434347272875 0.8161628637225742 0.102 +0.5563596039787768 1.035671265326484 0.102 +0.4345840225088147 0.9077014204351804 0.102 +1.858951663771347 0.6693354622438452 0.102 +0.8847577177634206 1.048355673359114 0.102 +0.5762496769538256 -0.1214971968963013 0.102 +0.3262974195428529 0.9719242514776024 0.102 +0.8304888763185097 0.3527652560822701 0.102 +0.8505773822371527 1.056879920384367 0.102 +0.8313951636790265 1.104635961420215 0.102 +0.3287128134228649 -0.1387636842312214 0.102 +0.01467005226959777 0.4898086993084276 0.102 +0.1355991585068126 0.5962696041633755 0.102 +0.694609082329827 0.7168114171986462 0.102 +0.9948508287961906 0.4839634689216623 0.102 +4.125588664292176 0.7405697718855759 0.102 +1.029059625245627 0.2761840284088407 0.102 +0.4148672293526671 0.7075033435013386 0.102 +0.34625432363617 0.5152554134431175 0.102 +0.04818695167968282 0.7382048651712179 0.102 +1.125166258562937 0.7154455739339839 0.102 +2.103409324763498 0.7100332819659479 0.102 +0.9119354580546236 -0.04572865749358977 0.102 +0.5208969862099493 0.1563505365734493 0.102 +0.477727081998003 0.7356561468999501 0.102 +0.6117222616044531 1.121527888705928 0.102 +0.6025165678737475 1.038404448583336 0.102 +0.659360985108022 0.9796551745702485 0.102 +0.4669423974874284 1.020062730543645 0.102 +0.5014031003623381 0.6455653622973694 0.102 +0.3111513541423445 0.594716243629306 0.102 +0.7146328723675974 0.8772450274969769 0.102 +0.7658927269411163 0.8766009817460616 0.102 +2.412361846877851 0.3137200392925203 0.102 +0.4712589515100387 0.4117879700799647 0.102 +0.347495092307858 1.066037946139727 0.102 +0.3359694572469732 1.09302642254323 0.102 +0.0301002327529837 0.8724692552456296 0.102 +2.541221952441215 -7.905508842949613 0.102 +0.5325329672742938 0.6936283336528224 0.102 +0.5357420101358432 0.3632967580238665 0.102 +0.1232705593213659 0.2238982739827368 0.102 +0.5699558001288616 0.3969458022807193 0.102 +0.348745668613817 0.6654217667618368 0.102 +0.4372149845209066 0.1364689664502466 0.102 +4.532157916553106 1.69151292235863 0.102 +0.1581088099994874 -0.1100277966270174 0.102 +0.4809065583802304 0.3738460123098902 0.102 +0.5664942588808637 0.7543196766538086 0.102 +0.6849093091630547 1.011192046782846 0.102 +0.733148909774412 0.986396933684843 0.102 +0.5885518448507504 0.9699885724279509 0.102 +0.6878064010307697 0.9397569236273605 0.102 +3.647133083701039 -0.1848166501742454 0.102 +0.298441725582768 0.5330693416295458 0.102 +0.2853631042060159 0.5666585821973225 0.102 +1.218144625510936 0.0169723444543484 0.102 +0.5083918847874586 0.282781064547345 0.102 +0.5910700637052477 0.3090175124080414 0.102 +1.386868920031964 0.5575678964382218 0.102 +0.5174538787109467 0.5769570963848845 0.102 +0.5580551018850743 0.8049500925331099 0.102 +0.7657849504896606 1.028440320559245 0.102 +3.341047063553487 0.6448134766630853 0.102 +0.5803885348759866 0.5486550411541794 0.102 +0.4578843147288351 0.9328501040136998 0.102 +12.97890588208397 3.396210654426669 0.102 +-0.0144060450350288 0.4490165520312403 0.102 +0.5303519747684411 0.7255584555341631 0.102 +0.4258424367830221 0.7926293560109982 0.102 +0.8091503498031607 0.6702736117052203 0.102 +0.3043275210359546 0.6337099772833624 0.102 +0.3673702533209334 0.311141314741833 0.102 +3.095081706694943 -0.1037715500180562 0.102 +-0.2890336771421049 -2.182234490574724 0.102 +0.7403959269221574 0.7254616766734218 0.102 +3.179235149212964 0.3387024047934309 0.102 +1.603855639824226 -0.1925618772521805 0.102 +0.5164139594156437 0.5271813699368965 0.102 +1.078617087765571 2.019470575164002 0.102 +0.9079132016036425 0.3791450627357604 0.102 +3.942238354703125 0.1513467586940846 0.102 +0.5814852055691658 0.1960311021146663 0.102 +4.436119278292753 0.1965066302352522 0.102 +-2.086953920399566 2.236310982542306 0.102 +-2.97177936636579 3.301675654380886 0.102 +0.8964290315632359 0.6343894594137619 0.102 +0.1182934033693755 0.8628745486461531 0.102 +0.4072734773065879 -0.02721799454944669 0.102 +3.406896571234533 -0.2448390678469274 0.102 +0.493479731265721 0.4919715769364478 0.102 +0.2122309801005343 0.5486625987636702 0.102 +0.2329249249899455 0.6161063151350813 0.102 +2.91713105221846 1.20725643209398 0.102 +0.619184890835857 -0.7976485176008624 0.102 +0.7916825529915944 0.5457570561220318 0.102 +0.7619342596660773 0.6788531357676219 0.102 +0.6100901166812336 0.9918836346380471 0.102 +0.3304674301662673 0.2403266691962891 0.102 +3.586108941984929 0.04055193570183697 0.102 +0.3845330215764559 0.9265122831785744 0.102 +1.605343745859053 0.6005858019572984 0.102 +0.9357461754090362 0.9835523534506462 0.102 +1.778738691169073 0.2295891112421587 0.102 +5.707043873898095 -2.322398709678944 0.102 +0.6119068411783571 0.4647541029315673 0.102 +0.445694673978365 0.6222915425282568 0.102 +0.6047273247205123 0.3885208199788732 0.102 +0.562920502796406 0.8856175232041417 0.102 +0.5717345661600348 0.2439130901066075 0.102 +0.6469065699112746 0.8937949239704577 0.102 +2.356125684699313 0.7153178141211005 0.102 +18.26967726024188 5.936191139829474 0.102 +0.4901797429802636 0.8591254569974189 0.102 +0.7436375950177588 1.208956320945203 0.102 +0.7002465140150556 0.5711815584543696 0.102 +0.5858833890125665 0.8399899552258399 0.102 +-0.01330095297900872 0.2975965814157023 0.102 +-4.595494057120941 5.569136530070042 0.102 +-0.2215165355254179 0.3538361568924884 0.102 +7.457213701913715 4.533055471461389 0.102 +0.6114432897032983 0.6307568217401809 0.102 +0.6561830552949405 0.04097286777707449 0.102 +4.186293233307018 1.312910472299433 0.102 +0.6237538391962607 0.831789702121943 0.102 +0.9622050396151233 1.032583522483741 0.102 +0.6088969223304412 0.2797351845204296 0.102 +0.5451717027862493 0.4377192389697387 0.102 +-0.1045363648084554 0.9340396568606257 0.102 +1.191020068847308 -0.6339972416388847 0.102 +-0.1088024527300128 0.3155290223708724 0.102 +0.5058935341903369 0.9330312745805976 0.102 +-0.03968899990490184 0.7055484946513085 0.102 +0.412261643270052 0.4746451023585438 0.102 +1.001333696460203 0.564418383112146 0.102 +0.5623664074195636 0.5197321457434819 0.102 +0.4389390797673426 0.5429291304432327 0.102 +3.288802346367641 0.1227212910906179 0.102 +0.7435154446948109 0.9560523034631625 0.102 +3.818417949337376 -0.5317407688829444 0.102 +0.4043608258085645 0.3452953651738866 0.102 +0.2493623866697199 0.7929886981516383 0.102 +4.154535892618282 0.06629959744572773 0.102 +0.6008361676424835 0.746301794969555 0.102 +0.6546963592529274 0.5825746748349311 0.102 +3.093520592412481 0.2408365420983552 0.102 +3.202737025779733 0.7435431732507256 0.102 +1.271063148305069 -0.2196479888404583 0.102 +0.5094663814502463 0.08208570872585166 0.102 +0.5911717945454582 0.6019311154568102 0.102 +2.286651614399895 0.86348364206021 0.102 +6.532329823197732 -1.003092504240107 0.102 +2.628349455189968 -0.9927122909370028 0.102 +2.984315037714991 -1.130701716428963 0.102 +0.356616993138393 0.7685522911444991 0.102 +0.3716925598952007 0.593661459148487 0.102 +0.4473274454519504 0.9878011490720264 0.102 +3.623118520405615 1.129223617456931 0.102 +2.278810170157742 2.918066326944719 0.102 +1.097344616991903 0.2155340348523151 0.102 +0.6814759040160805 0.6461703902787866 0.102 +0.4671804283467598 0.2937746901001389 0.102 +0.6651166096866117 0.8597567338001059 0.102 +0.4788373141339974 -0.002306592284798803 0.102 +0.855699753539124 0.4121999205877696 0.102 +0.5782751385564017 0.4771825480267348 0.102 +0.6823510885721067 0.3754683595121198 0.102 +4.154660525336753 -0.2345495500631528 0.102 +0.5269364317429233 1.019804012975863 0.102 +0.4587317816528858 0.7097765057132795 0.102 +1.936557160269518 0.8163464362161712 0.102 +3.1133075844912 -0.2791603037577972 0.102 +0.6836181313063522 0.296462810733947 0.102 +-2.141056214724164 -1.468530101152089 0.102 +3.141774343799283 0.6126044746031988 0.102 +0.3873891023788766 0.4000068367737178 0.102 +0.9693598626803414 0.3339997112802719 0.102 +0.9111276772544937 0.4552502024966612 0.102 +0.4710909869264943 0.6536248809092542 0.102 +1.323348366321442 -0.03639189166045147 0.102 +0.1562496916644581 -0.3021031993558241 0.102 +0.827907553029279 0.4687106852960954 0.102 +1.00769135672669 0.2333904794663685 0.102 +0.2742691186734523 0.3155901321134848 0.102 +3.886384303676329 0.6978144496682367 0.102 +5.824618467696966 0.09801509281178977 0.102 +0.7590398941807741 0.394813621575876 0.102 +0.7799317441120256 0.1371319608127403 0.102 +2.605004278205587 0.6955659518996903 0.102 +6.519957719808422 0.79654354145415 0.102 +0.7029261894750874 0.1056451501948568 0.102 +0.6520348376823577 0.615043611449875 0.102 +1.72588531754401 0.8087109996957847 0.102 +1.494556147135366 0.01352315771318777 0.102 +0.8188865864748828 0.9885274472248893 0.102 +0.7620759123147651 0.3158706829678329 0.102 +-0.3577208941842511 1.181214869880611 0.102 +0.272523975123021 0.1251018447199438 0.102 +-0.08310507573617015 0.1930848929147403 0.102 +0.001152467676093018 -0.06865522351982851 0.102 +0.01724134191695813 -0.1102729118578529 0.102 +0.0715904403538692 -0.1196685673419667 0.102 +0.3596141586272884 0.4772754249289652 0.102 +0.05305311937503931 0.2324961233577783 0.102 +0.7149452363869567 0.9287169499607804 0.102 +0.2678044146547383 -0.07601225366798345 0.102 +2.116556181543042 1.79824714964254 0.102 +4.927981388374888 1.558116937883166 0.102 +5.473149077951028 -1.0717192548324 0.102 +0.3827021684707229 0.6706278433574978 0.102 +-0.01907556909505837 0.9527310852852293 0.102 +0.426777083094028 0.2631510888410954 0.102 +0.6423016729923517 0.5459656553081362 0.102 +2.632056381856315 0.9602656418876491 0.102 +0.2861518992062558 1.102822195269843 0.102 +2.120979429269985 -3.046175593428934 0.102 +3.083580421436705 3.714839256105568 0.102 +0.6583678494306052 0.3253292699740366 0.102 +0.2112130205130872 0.7033664232159483 0.102 +0.9663556432839489 0.4370126706777318 0.102 +0.1369487109919134 1.46453870772363 0.102 +0.8017168259941588 0.07700456338693405 0.102 +-0.8367697493325562 -3.108352509036747 0.102 +0.6406322598040952 0.1380580617972031 0.102 +0.2532708011085542 0.8576182304538867 0.102 +0.2762366898234471 0.3965963153449032 0.102 +0.697693379320117 0.8477575404123699 0.102 +15.59212638861789 1.975431304067094 0.102 +1.278524409813104 0.8606242399105715 0.102 +4.673034114649298 -5.054131283983663 0.102 +-0.06830504393599093 0.5807229334664569 0.102 +2.34903103532068 1.637788222406826 0.102 +0.3478493436520532 0.8106985602956966 0.102 +0.6136345700108443 0.7034689930228042 0.102 +12.9049337565403 2.099350007938687 0.102 +-1.555330225495244 4.431607063086831 0.102 +0.2782238677015986 0.7411697447278288 0.102 +-0.05318741031273556 0.3228067779140913 0.102 +0.1648870540241262 1.047344951653374 0.102 +1.730437721725341 0.4898738761477661 0.102 +0.1220375213700526 0.185577185178309 0.102 +0.7690011421175262 0.5232392803518704 0.102 +3.019572260654398 1.867492411477637 0.102 +1.539044420989764 0.8589058955411705 0.102 +-0.03294303778444866 0.6177451827178454 0.102 +0.9250919439058864 1.073143761012975 0.102 +0.912100101098875 1.13052677616466 0.102 +2.245429052204594 -1.010954390058926 0.102 +1.044756586997775 0.03691694847242628 0.102 +-0.008247588026420012 0.4151878362873772 0.102 +1.336896672962908 0.1477950655136267 0.102 +1.730464320175995 -0.1889116316594668 0.102 +1.480350700109986 0.3039243185278653 0.102 +10.16931638258717 -4.451643246090582 0.102 +0.9667470152261646 0.3693400471766933 0.102 +0.8505603832033302 0.1197318267652604 0.102 +-0.04965332207718895 0.06911866670210486 0.102 +2.017230314896796 0.3206465050485028 0.102 +1.419372977735886 0.9719150487230006 0.102 +3.942726253619311 1.329407322295156 0.102 +3.687766446133841 0.7644939522063116 0.102 +0.9619884246261804 1.068365946184463 0.102 +2.286495609986726 0.6122804642126185 0.102 +2.34655636274122 0.5022947198047646 0.102 +4.455904628703259 3.095548391343112 0.102 +3.634476600225027 1.461888031312468 0.102 +0.9049908023961726 0.1160724690472079 0.102 +2.041065687645184 -0.3882381634147458 0.102 +0.8825374242601399 0.1968746250828307 0.102 +1.464196704288294 0.1787705980463584 0.102 +1.055415135523014 0.3602792256347273 0.102 +1.06112790258839 1.028622779799711 0.102 +0.2805902164212682 0.4977495364880919 0.102 +2.148475309670681 0.9870478167556673 0.102 +0.668838001453254 0.4245171034824563 0.102 +14.57266433410239 -6.266484392918422 0.102 +0.06515505711592758 0.4292826512041749 0.102 +0.6731588784773789 0.6842843550386539 0.102 +6.779060078027076 -3.495126472568568 0.102 +3.958829875661274 0.5080463928901606 0.102 +0.9561713956030126 0.5885821454059659 0.102 +0.7089916501933861 0.5322613557546068 0.102 +0.8674240375847265 0.9848046936225945 0.102 +0.6698017578982713 0.7853474722837959 0.102 +10.21123261345024 8.317735918788379 0.102 +-0.235633425014404 0.663116373717672 0.102 +0.01364969303993683 1.023924581898869 0.102 +0.01172726163351467 1.068591619298826 0.102 +0.1779820482935793 0.008946052518915962 0.102 +5.977628669159311 1.768775369061408 0.102 +3.887717390944062 0.9092318561759132 0.102 +-0.8657372811836016 1.630978862200474 0.102 +2.887392269463332 0.1635925924203501 0.102 +0.2484463977734324 0.9398180858149512 0.102 +0.1569860895693981 0.9245949910007989 0.102 +0.9456032132080398 0.28412983889692 0.102 +1.228035874951855 0.2975769902712795 0.102 +0.8037006308736437 0.7436300595332577 0.102 +3.383452061136722 0.079563893237414 0.102 +1.056093792074626 -0.1032715229954035 0.102 +1.127393952564334 -0.1422872049359835 0.102 +0.6947187015835544 0.5024653478548541 0.102 +0.9928694519501617 1.101338754389172 0.102 +0.885227860163878 0.286658227827173 0.102 +0.8234806647741602 0.4026656542046909 0.102 +-0.08331590012991782 1.28251263224974 0.102 +-0.2730441066435888 1.320467977205973 0.102 +0.1498147353228326 0.3406108738312058 0.102 +0.4665945441645294 1.059531744034885 0.102 +4.520545972557373 4.949640788424868 0.102 +3.635586753016156 5.855454388658346 0.102 +0.01431863745556023 2.631124790007747 0.102 +0.8942951482743051 0.8169663796570107 0.102 +3.852075951314722 -3.19091121097627 0.102 +3.099733893338311 -3.658283891925805 0.102 +-1.291097496442739 2.345103223709073 0.102 +0.8661937644357173 0.7288494033137187 0.102 +2.712083732179924 1.124974457011607 0.102 +1.067359193061921 0.1753728863363881 0.102 +0.1947679400556671 0.7930345394333608 0.102 +2.160475856386416 0.4935591427603302 0.102 +2.437291752927037 0.7234966787739197 0.102 +3.951146680462486 1.670609207184752 0.102 +2.154862303474564 0.04433618738383958 0.102 +3.297668588864891 0.2803375636505154 0.102 +-0.3969796151927921 0.6186747262722961 0.102 +-0.5501038909971956 0.4898496345590248 0.102 +0.05961053364064677 -0.02183041575882852 0.102 +0.1439356247149477 0.5212070577891441 0.102 +0.8999700567376221 0.8481574663318435 0.102 +0.8844813469935036 0.9304661331708257 0.102 +0.8475552566796501 0.904898907486735 0.102 +2.682133463090947 1.25447294894414 0.102 +0.3355521551358787 0.4423286370604539 0.102 +1.538865017638769 0.4331800950133401 0.102 +-0.06179107367455115 -0.008917276436356909 0.102 +0.9003878173327542 0.5545227565772134 0.102 +1.143654138994823 1.122039034123457 0.102 +3.176395392749722 -2.168335086745063 0.102 +8.408969348481252 0.2293957761738318 0.102 +3.456079622290875 0.179228995133819 0.102 +0.7507707928859683 1.075992851182967 0.102 +0.7040463901896417 1.082693669340202 0.102 +0.6858987060230712 1.13864506717061 0.102 +0.7330448302010163 0.6339879661826551 0.102 +0.2658146548311308 1.023786830187037 0.102 +-0.231331919437646 1.069564677740164 0.102 +0.781029269847019 1.099889651588475 0.102 +0.3541646923833268 0.3996813085438806 0.102 +-3.266713022353968 0.4496521538313465 0.102 +9.66423111847287 -8.218960607740962 0.102 +0.1798063821042042 0.6729671851943889 0.102 +0.8451699518440539 0.5732243760557223 0.102 +0.71921427528644 -0.3801379317639285 0.102 +2.238266901487239 0.2476142680649086 0.102 +7.239616869356635 -8.063135525446087 0.102 +0.5017202972747284 -0.08136358956556707 0.102 +-5.601191191611653 -3.833998868802495 0.102 +1.498590906682764 -0.2177213778670891 0.102 +-0.03714470039224333 0.01850115369014412 0.102 +0.2936702614032248 0.1559956401614808 0.102 +15.88438371889848 -2.242161065250387 0.102 +0.9222663503652009 0.922069333943514 0.102 +1.008004108524291 0.3326273681660733 0.102 +1.082422570037913 0.3401196613038098 0.102 +1.103034717852983 -0.03303700440293646 0.102 +1.161720993299124 -0.06333312766627429 0.102 +18.29861055551884 3.255058981207484 0.102 +0.7156405399295154 0.03734608165277622 0.102 +2.604799975562064 1.393932874349325 0.102 +-0.08763811103482773 -0.09677748293856836 0.102 +-1.750578572483549 -0.3090420484370635 0.102 +4.845270691342968 -0.3574684540361061 0.102 +7.266913312909063 -4.747437072863518 0.102 +0.7628191973570911 0.481468857889918 0.102 +9.73051534140933 5.682768923463311 0.102 +1.045540379627103 1.083640148710514 0.102 +2.979573636429407 0.2994758608021709 0.102 +-8.300834028166094 -0.5482613332291245 0.102 +4.185700527202277 -0.1048746664478994 0.102 +1.017377761293705 0.7755394650259327 0.102 +2.543856315496217 0.1029076255980172 0.102 +-0.01622080481322628 1.087506612507764 0.102 +0.967296802880842 0.7639512113638616 0.102 +0.03339159969887516 0.3465938205527651 0.102 +-0.01648247257093823 0.3847515630087116 0.102 +3.042801507512205 0.4455128955257832 0.102 +0.9279699177496383 0.002189749300555373 0.102 +0.8985302419908214 0.05057798627768578 0.102 +0.7572900293044951 0.7560112826919309 0.102 +0.9439566728715805 0.8037112450613304 0.102 +-6.00863633774731 0.1061628271423925 0.102 +2.032573368568273 1.184109579798224 0.102 +0.3697466704474341 -0.6356703536983073 0.102 +0.5518320143499125 1.235549071259161 0.102 +1.38988711145893 0.7921520300494985 0.102 +1.032399718293678 0.6921525612456846 0.102 +15.03946627915049 6.349670605740387 0.102 +9.536980950640681 -2.740427566036986 0.102 +3.909979483316622 0.3464135771404566 0.102 +1.337882342778376 0.3331643094346736 0.102 +0.1912545554125717 1.129388524484787 0.102 +2.573700539899557 0.4931491367857356 0.102 +0.02183707509339827 0.9472687425797471 0.102 +0.8533978511744496 0.8671212966775651 0.102 +0.53965566324442 -0.02444191857381613 0.102 +3.799449115625912 0.667132552032227 0.102 +1.558697128371718 1.453047514180241 0.102 +3.394491516619625 1.19457099007171 0.102 +2.69977483677095 -0.7658824274255407 0.102 +0.2021067774655116 1.043519253831255 0.102 +0.7695911078350731 0.5911547026674525 0.102 +-0.1273871880896834 1.111715175291146 0.102 +0.7733353467065127 1.86297812841292 0.102 +0.8787298022844101 0.7970663440671389 0.102 +0.889231415033455 -1.059507893461128 0.102 +2.706396089045454 0.2100805393017364 0.102 +4.63715124818692 -2.052985236169459 0.102 +0.1962239302477234 0.4730227449008995 0.102 +0.9578505496613592 0.1849828553114424 0.102 +0.8795983338028934 -2.049233027098007 0.102 +1.477796483303008 -2.254258126581151 0.102 +3.688486949371848 1.017168639036194 0.102 +0.9295741868001177 0.8765888137247545 0.102 +0.9526241471122464 0.8686637474836658 0.102 +6.672374906819245 2.31982466934955 0.102 +0.8029001354906706 0.9132444303086038 0.102 +-0.104557104212494 0.5838754529706335 0.102 +3.516435638945586 0.3996813621888184 0.102 +0.9962734008478642 0.7069224240174258 0.102 +-2.857868474689667 6.333541234146255 0.102 +0.2576370132614128 1.077657185719439 0.102 +2.005049781376508 -0.05388927168505162 0.102 +1.008702044288296 0.8007200689583858 0.102 +0.9994952522549755 0.8962247662316263 0.102 +0.9920827469926857 0.753191558246035 0.102 +0.9679813275709478 0.02668918368863984 0.102 +0.9610649864282891 0.06800616600603941 0.102 +1.099574715809323 0.8930305040340537 0.102 +-0.01156681418150664 0.8701180158839974 0.102 +18.51314755386365 -6.275336822556814 0.102 +0.9705366194986554 0.8272895339591333 0.102 +4.45537201509852 1.309562168461101 0.102 +0.48763867029358 -5.946427199167061 0.102 +0.4922474000608586 -0.3230069969858104 0.102 +-0.2194794156353727 0.1544627931718091 0.102 +0.1123164832402237 0.02061732440780107 0.102 +3.666101376481083 -0.5308201252389252 0.102 +1.068147597748065 0.7295227003399763 0.102 +4.969350800879315 1.209793429223461 0.102 +1.072351791268953 0.02276873454562089 0.102 +0.04418800586075477 0.9615034298449097 0.102 +0.832093633764629 0.7892570367146304 0.102 +0.9957142990619933 0.9403842793786789 0.102 +0.09399958243792821 1.125526300520572 0.102 +0.1297669674836666 -8.933788866000162 0.102 +1.033774692902809 0.4820216604920846 0.102 +2.599352663484763 2.149138856527391 0.102 +2.964356863236368 -0.5879132364980008 0.102 +0.5508471969963628 1.084851640577373 0.102 +0.5041584619246151 1.091163123452302 0.102 +-0.02739508049842828 1.446488719960157 0.102 +0.2286111663365511 0.1619801085820669 0.102 +1.223743520966383 0.4728341481025958 0.102 +0.9291923304320528 0.6851958113971837 0.102 +-3.168132177035708 -8.143526634138773 0.102 +0.6057665006607462 0.0784293701831429 0.102 +0.9799298447183556 0.640825255354565 0.102 +2.881389371127895 1.047560761381866 0.102 +1.088979736379151 0.7958327175034274 0.102 +1.085180933261575 0.8287644496101413 0.102 +1.135299833674484 0.7705286496242634 0.102 +1.464352720191569 -0.4953237181130306 0.102 +1.313523548991605 -0.4909597217417231 0.102 +2.014388317633717 0.597177544589214 0.102 +0.9227954874489405 0.5871777723974813 0.102 +0.8487296054532667 0.6057787680971524 0.102 +0.1283569314056224 0.7813004526088744 0.102 +-6.84571954165116 -2.372463384879885 0.102 +16.53698173600453 -8.468423244947552 0.102 +0.1324737192732494 0.7488990985495274 0.102 +1.025363365193937 0.8776269945517406 0.102 +0.7408099296039705 0.7981448609935711 0.102 +0.186867117127739 -0.0721393702483433 0.102 +0.3064489892754505 0.07487713385739969 0.102 +3.531260522210959 1.267330126735388 0.102 +0.8388942125964566 -0.183357341467515 0.102 +4.422054604134435 2.020097761347622 0.102 +2.219793933289156 1.361822764317778 0.102 +1.931679627196396 0.5724711516841655 0.102 +-2.043327194682207 -2.795513595197216 0.102 +1.088557986992818 0.2929321730629332 0.102 +0.1552512676990091 8.760100126014191 0.102 +2.789672428538652 1.021042767116238 0.102 +0.2190920181147856 1.081601347252107 0.102 +0.2196887174004901 1.33457584226857 0.102 +4.268982428987345 0.9659412446049355 0.102 +0.9156114583034085 0.1656256694940996 0.102 +15.48944650428619 -3.175582788985542 0.102 +0.3301785110630983 -0.05705607983454802 0.102 +0.4107757033947477 0.01776129962971804 0.102 +0.2467379156270151 0.04695183390554479 0.102 +4.069755240903282 -0.5776858109277163 0.102 +0.3479985956187363 0.1185709592544801 0.102 +2.645204784435004 -0.2243069942813098 0.102 +-0.1336447359505068 -0.05737054221270466 0.102 +-0.2411500732559661 -0.07202010065390546 0.102 +1.99087416500002 0.1989459120728127 0.102 +1.047476658267468 0.6566592383846379 0.102 +1.545824579075672 0.6689256081095127 0.102 +2.949829984322612 1.46869673231898 0.102 +0.1484169231651584 0.0447190364610757 0.102 +0.9825906139851072 -0.03950428097905201 0.102 +0.5654375935885442 4.640696117954913 0.102 +3.880733513820213 -0.4397984246160994 0.102 +4.831083277020658 -1.23704350260242 0.102 +16.54031958635693 0.9914376461960928 0.102 +3.135663988567416 1.267824200411026 0.102 +0.8432079734603961 0.1480785241527083 0.102 +4.242629474845432 -0.3978219561841396 0.102 +0.0619244394819445 0.8227641083284548 0.102 +3.364690295941071 -0.4882472883169712 0.102 +0.2974499186433007 0.2055870868012722 0.102 +0.0930675900450126 0.5333642089799071 0.102 +1.838725198878268 0.9983645993509873 0.102 +1.468565981753992 1.089608888123182 0.102 +-1.396371834442967 -5.106359657284322 0.102 +3.615938092496002 0.5914930016579616 0.102 +3.971371384277913 0.2707297919337315 0.102 +0.09076299985567976 0.3396988450049834 0.102 +5.048737217358035 0.8599581775980515 0.102 +2.839355001661989 0.6946605709176583 0.102 +3.043600517779435 0.9893232646365384 0.102 +4.032251240023252 0.9120391547227957 0.102 +0.5698560900601592 1.114145684501111 0.102 +0.3106008761742069 1.512323365432335 0.102 +4.133963619218822 0.2681588865792331 0.102 +2.596628651533822 -6.615299019979365 0.102 +-0.1562035239258319 -0.3866790373019283 0.102 +2.895714848832472 0.8817289532759083 0.102 +0.3751402903071485 1.283376055054141 0.102 +0.5833787827150518 -0.1845697183536805 0.102 +2.163762215597076 -1.618776352920921 0.102 +1.210272916151146 0.7405030283112828 0.102 +1.953135248906948 -0.2399272718251621 0.102 +3.627371087911663 0.9385886935662111 0.102 +1.793148030785638 2.289394919010895 0.102 +0.3189749168743947 0.8955444616285235 0.102 +-6.329791261915089 -8.356096890127647 0.102 +1.046680406284403 0.4238063669511364 0.102 +14.03205324025292 -0.5986482306877673 0.102 +2.749957238250069 0.8173065718359387 0.102 +0.08305831076108026 1.050485596471145 0.102 +0.6487982818325819 1.160053550418316 0.102 +0.2631023157243332 0.2820162814220684 0.102 +1.863646676086631 1.46363547868388 0.102 +2.340417725133865 0.326655273500338 0.102 +0.9019682980603545 0.2364822883587951 0.102 +2.646224644047636 -0.401628853839437 0.102 +3.857544909836678 1.982352891111596 0.102 +1.566122077841346 1.060949633343642 0.102 +1.600228785870359 0.9471356378427916 0.102 +0.2275038283766376 0.2335311997909467 0.102 +0.8152020730961654 0.6109839705584822 0.102 +0.355335915076981 0.2207566271208816 0.102 +2.597670732281445 4.609336325531268 0.102 +0.1599519861220643 0.3696452808616129 0.102 +4.888033964879316 0.4535054678284071 0.102 +4.900419485248775 -6.148505694148499 0.102 +0.03873402276494201 1.003243588945291 0.102 +1.749677319220625 0.6934525930894178 0.102 +1.694762111014809 -0.3799588455816288 0.102 +0.9440350893541282 0.5154584765986783 0.102 +0.03300387386829504 0.0882558604451049 0.102 +1.073033549301817 0.5661097271547888 0.102 +1.122895975253661 1.031962450031056 0.102 +3.212561316723093 0.9234228556473673 0.102 +1.056984829312878 0.1012171758243352 0.102 +-0.1401122109874581 0.8257489189790651 0.102 +3.811031231677526 -0.9953452382637276 0.102 +3.708952569244723 0.1724428149650128 0.102 +0.4947817989919641 1.134668656386434 0.102 +2.432067851108089 -0.1043028699006817 0.102 +3.290295544016314 -0.07065414314528123 0.102 +0.280938848160873 -0.01430425834028503 0.102 +0.2264092421217185 1.015950016845558 0.102 +3.375741822720868 -0.8400050640906536 0.102 +0.1353009095861752 0.4506119050255529 0.102 +4.2212996741001 -8.324555308948067 0.102 +3.086309068123584 0.8919415930897731 0.102 +-4.941524686143516 2.795740273759077 0.102 +0.3210150967783506 0.01130489528667905 0.102 +0.07344283681976065 -0.06929776898959908 0.102 +0.2157512583735579 0.9062184716405949 0.102 +0.1509415573247308 1.073444446060782 0.102 +2.190474336977743 0.408850118664029 0.102 +4.033136644137432 -1.310653049813715 0.102 +1.250070263734695 1.081967586245362 0.102 +3.268009134548979 -0.2235540577080317 0.102 +2.578548693229704 -1.336152352918889 0.102 +-1.627417487729631 0.8519318233179979 0.102 +1.168646080760123 0.120869806309421 0.102 +0.8789788663213853 0.4960566758004679 0.102 +12.12202259948117 -6.845196818695514 0.102 +0.08849917356887826 0.4684141893489343 0.102 +9.969922763097621 3.245442432984487 0.102 +-6.238452380975549 4.965489841298582 0.102 +1.143813829914478 0.6017974124381729 0.102 +1.992926175547171 0.9856420253271643 0.102 +1.344133478681238 -0.8682344974598966 0.102 +13.82288113703535 -5.457690958137229 0.102 +4.093659292573527 0.822039765727784 0.102 +1.071485310744115 0.2646152571045118 0.102 +-0.06151416398490724 0.2457262564870936 0.102 +3.615373749037249 0.2830862215455995 0.102 +0.926613341139597 1.302046465936464 0.102 +0.176485267102463 0.03845140717141533 0.102 +0.2813351970871163 0.7671610984927969 0.102 +-0.0492702265324898 -0.1801977892318443 0.102 +0.7821464615043515 0.8272167022367868 0.102 +3.390493829736503 0.7262353270608548 0.102 +3.795520577327077 0.2887067013909681 0.102 +0.1289791356077253 0.8139424067865717 0.102 +12.87303237553794 0.7639087839588956 0.102 +2.618977865562189 0.2236783182782389 0.102 +0.2380702575504079 -0.06129731074359912 0.102 +1.728130391898113 0.1367579481024129 0.102 +1.01974889125945 -0.03177026231575229 0.102 +3.772213810975809 0.8662972044095065 0.102 +0.2947100195940962 1.152266898287213 0.102 +2.250394947805162 0.7687446758177736 0.102 +1.000238753336568 -0.114882925766265 0.102 +0.0169911838263856 -0.03405875806966454 0.102 +-0.8545258042076687 -0.7122612591050955 0.102 +0.2006404630803381 0.4354297654814122 0.102 +12.98095284322565 9.087216711348669 0.102 +1.320013895720325 0.463404232729869 0.102 +0.9176019837063401 0.2963937687756935 0.102 +1.764520832008831 1.011467038230485 0.102 +2.138797442942669 0.3249521468489829 0.102 +3.269758402573616 2.070506749322449 0.102 +1.933180547645977 1.210272419563201 0.102 +1.043344648682136 0.9051839068413002 0.102 +0.6247987166053846 0.1888130292496926 0.102 +0.224770500682347 0.5220521187616016 0.102 +0.6596996465088992 0.09022858099800006 0.102 +1.810836007724953 -0.07076797835680795 0.102 +1.82245099426875 0.8907396895644879 0.102 +0.04544395975664286 0.1845309521825256 0.102 +2.737958614091403 8.175200266189826 0.102 +3.16522340253673 0.4103847787881878 0.102 +-8.526540318005264 -4.262353059386077 0.102 +4.976372028691885 3.276937026144728 0.102 +0.4495390831932441 -0.08267525156158857 0.102 +3.415657825569568 1.100562092082842 0.102 +12.03555430746091 4.803327316399032 0.102 +3.424523419722397 0.8259435286666179 0.102 +3.856463491221135 1.049007134499309 0.102 +2.950334582244849 1.003216305628903 0.102 +1.682868492422797 0.2991444052036364 0.102 +2.570343557107975 0.3197840143614615 0.102 +3.308289636915112 -1.425870276453644 0.102 +4.442904295395113 -1.63170639251484 0.102 +0.6765744385361018 -0.1737559242798148 0.102 +2.69316377691516 0.6058832314873603 0.102 +0.3904195493590595 0.04881538601545085 0.102 +-0.05215436073468871 0.8129234646708823 0.102 +1.32925770961725 -0.1349742184363648 0.102 +4.110048487838413 0.009592544029036981 0.102 +-0.0388433494815289 0.1869903220722174 0.102 +1.20707854264729 0.3551646955385214 0.102 +1.924092929121419 -0.02410524764467045 0.102 +4.512736542360448 -0.007002086195714474 0.102 +4.66553106570335 0.0007968935916348469 0.102 +5.365268886390241 -0.7335284384690738 0.102 +-6.379667587043922 3.017831608070959 0.102 +7.513711754769714 2.889905989822728 0.102 +1.0386041866267 1.216224940708003 0.102 +1.072087213281205 0.2014505927896456 0.102 +12.76258115637707 5.812522176177646 0.102 +-0.01435348086336867 0.244349705833109 0.102 +1.617547070654517 6.125143508290731 0.102 +1.173225891331794 7.173331038974051 0.102 +3.527665713779987 -0.05708333276469349 0.102 +5.620371791716641 2.777336479744881 0.102 +0.1862403139978319 0.9686289460989892 0.102 +5.523090917208815 -4.1766741388129 0.102 +1.048485514798969 1.05765784603899 0.102 +1.136217924920205 -0.1064247711622665 0.102 +5.271137883611464 4.892953838080411 0.102 +0.2954120788581108 0.2373240708012624 0.102 +3.788929628316717 -0.2418815585243445 0.102 +3.361719724635384 0.4538011812707315 0.102 +3.260520067173825 0.4878086198636023 0.102 +3.455856177803036 0.559435702520983 0.102 +1.605280382360407 -1.429135704300452 0.102 +0.842000900413469 -0.07557033934062507 0.102 +1.602598849210799 0.01365453775859432 0.102 +1.690898742155926 -1.963415198226957 0.102 +-9.079173596684074 4.949027381331151 0.102 +0.1431388611793234 0.2992360451958994 0.102 +1.598509302101065 0.7901412942380133 0.102 +1.436736808507252 0.8978082193220343 0.102 +2.772384029928864 3.348079182517669 0.102 +2.077294661822002 1.464863311523112 0.102 +-0.04701046877678752 -0.05511503176760194 0.102 +3.011061094647436 1.172873750338429 0.102 +1.222658907532557 -3.287911216192172 0.102 +1.695417144313179 0.923389830374561 0.102 +-0.1095921474767321 0.2823329905274962 0.102 +1.715085628311754 1.102226153002197 0.102 +0.7636296465003881 -0.07649311599870534 0.102 +3.975633713167402 1.030024897246611 0.102 +1.706992194885321 3.057618676936276 0.102 +-0.09616503654990793 0.6626757349089527 0.102 +4.564153477796779 0.6748571298946232 0.102 +4.345204716640544 -3.153767061411539 0.102 +0.0564556880438731 0.3608630475395637 0.102 +2.273201538829197 -0.308537263914608 0.102 +2.173806370045667 -0.2625642971376081 0.102 +0.01167106968381271 0.1439554068659226 0.102 +0.9403034562192659 0.2267058069744267 0.102 +0.2099132190387972 0.3012113418564452 0.102 +2.773475424308497 -0.059234538761926 0.102 +4.572395551521375 0.4189300698281964 0.102 +3.976826447272209 0.4248377967460615 0.102 +4.053447309660055 0.4264424258323565 0.102 +3.537858263576088 0.9751061146756352 0.102 +0.3341970704861619 0.2858541982009603 0.102 +0.399147407878955 0.2704151963335782 0.102 +-6.937087903608831 -5.259730573332032 0.102 +3.527690438285621 -2.555651182082451 0.102 +0.222961233065847 0.7692113319499981 0.102 +4.08229657479184 0.6562098588512902 0.102 +3.365708099329813 -0.03509297942145686 0.102 +1.076083421363175 0.5986125514218522 0.102 +0.7966452729335289 0.2080335005476572 0.102 +2.870401863461716 -0.2015040916559531 0.102 +18.55619916480617 1.753050005139899 0.102 +7.227423349722627 -1.277581834718821 0.102 +-0.1409993484272377 0.5030605825983656 0.102 +2.691285211956015 1.900837552231647 0.102 +2.824913573882655 0.2515542997117159 0.102 +0.24329383425416 0.1981140437165191 0.102 +3.310535398301742 0.8634044287191951 0.102 +3.704042101580082 -0.02682616317125796 0.102 +0.02083779937872367 0.7533133195945592 0.102 +7.157396090317134 5.461888430232446 0.102 +-6.90902828832728 8.63675649185998 0.102 +2.811535217298311 0.6376583333473858 0.102 +2.441197248619818 0.5885772868668873 0.102 +1.171404265775272 0.8407233814646713 0.102 +10.95795190029371 7.263070638883065 0.102 +4.107587480270688 1.651173375764796 0.102 +0.3047134181709817 -0.04986948034415671 0.102 +2.352052620279658 -0.5682774551840342 0.102 +1.600384005353974 1.110930976359036 0.102 +3.00408142226222 0.6072981182276337 0.102 +1.123975500475538 0.3805819211737846 0.102 +3.135022687800062 -0.8316398558806688 0.102 +0.1098205736757257 0.2741257331422018 0.102 +0.07377343749499682 0.06864655686084807 0.102 +5.538711759087412 0.6795894049986128 0.102 +3.279458551893016 0.6928899668071908 0.102 +2.607385671727636 -2.412501287031538 0.102 +1.14083699449442 0.5523785609558923 0.102 +7.506155948358166 0.3087220619367232 0.102 +-8.532270180990942 -7.115818785533156 0.102 +0.7057462668182128 -0.5071718377126113 0.102 +0.7979521172622774 0.02599527684281112 0.102 +0.2274894990464713 -0.2566350338094208 0.102 +4.698814197673271 -0.7778206823966978 0.102 +4.657175826366347 -1.086738357311388 0.102 +0.8954250326991376 0.7512272413877497 0.102 +8.647654823070134 8.848187442036458 0.102 +1.843853245928442 0.2047041013825436 0.102 +10.2756432230136 1.066854966832745 0.102 +0.6560052012431141 0.2287593692559383 0.102 +15.69309565476478 3.247003172986346 0.102 +0.8848685983465832 -0.07215427551149109 0.102 +0.8994080604401686 -0.1199049557862984 0.102 +0.9309725970992576 -0.139093134121041 0.102 +1.433055240539219 1.167450583500043 0.102 +2.611753170078909 0.3777283333515154 0.102 +1.98820392787496 0.3989790479924019 0.102 +2.45256669911959 -0.2354189981848506 0.102 +2.849536954470446 0.3615448898562587 0.102 +0.8088724410751471 -0.09234787872149253 0.102 +1.01876983929663 -0.3758549974095974 0.102 +4.309341422618008 0.5038026942319085 0.102 +0.8345294927637049 0.4910280537720081 0.102 +0.6444555158497693 0.06264349800843752 0.102 +2.129406509584879 0.7881110745084852 0.102 +0.07524271776160241 -0.4671473341263537 0.102 +2.720010302585718 0.102459125522707 0.102 +0.8465779256895763 0.1789953354549754 0.102 +0.08239393177637819 0.3142553804055803 0.102 +3.716447901315542 1.177096997759426 0.102 +8.808651229484754 1.470268429791586 0.102 +0.07778349759089967 0.8923991067502524 0.102 +3.418873463027559 0.2552777349503222 0.102 +0.1034912085165073 -0.1233240530462745 0.102 +5.506801414958638 -0.02688877765807064 0.102 +2.0579217907482 0.6715688911719935 0.102 +0.1170202345603345 0.9477716818644681 0.102 +3.972588880805548 -0.001284914767295959 0.102 +2.463888956521933 0.4521000943525904 0.102 +11.91232692106796 -3.960815520984757 0.102 +0.1507958062361596 0.9953131205768713 0.102 +0.07423139461633743 0.728716305832232 0.102 +-4.600291614791531 1.095832678647493 0.102 +0.5441863787915655 0.04522738954281338 0.102 +2.698698420406886 0.3606589206378588 0.102 +2.036083661119695 0.5061723473781032 0.102 +-0.1197266916257326 -0.1486160214825683 0.102 +1.983555799473675 0.8929138254878782 0.102 +1.080737130172945 1.117246768334351 0.102 +3.576368632012724 -0.2577819000198922 0.102 +0.583882995916873 0.002418173639772113 0.102 +0.3910666618892163 -0.1247423202964995 0.102 +3.322939330920671 1.616913202744754 0.102 +3.829391654089304 0.3572568710536465 0.102 +0.8024631434530087 0.4638822837083322 0.102 +-4.021233217650055 -4.881137888062975 0.102 +2.549875912989206 0.8383696540325295 0.102 +-0.0573384311107983 1.044118140120752 0.102 +1.192996158914254 2.438730280070367 0.102 +-0.07422995858574609 0.1257176860792869 0.102 +2.561297574159695 -0.06536842140395616 0.102 +2.205645496835844 0.6286217015963467 0.102 +1.836606519551759 -0.5170677989365616 0.102 +7.976654826050311 -6.576206954044835 0.102 +-0.1077431810253512 0.9900082418663598 0.102 +2.216263125248199 0.04506763538858317 0.102 +2.274621845558767 0.1390639907689313 0.102 +8.078119756327197 7.001084448934379 0.102 +6.390471076109172 4.229528723511261 0.102 +4.053738506280697 -0.2120861637563042 0.102 +2.876430513125451 -0.06193077136089523 0.102 +-0.9163264642450334 3.770419776371124 0.102 +2.294169916538022 -0.1085567534248991 0.102 +1.756989170712777 1.534805205664463 0.102 +0.4760215258185586 -0.06957936099140646 0.102 +0.08838805533245324 0.933747769392432 0.102 +0.4116756150201494 2.437682630177095 0.102 +0.114256079774139 0.9917911681456787 0.102 +4.212482276196911 0.8229859121579015 0.102 +0.7818313013233175 0.10188502567661 0.102 +0.8520406499319974 1.137363420811144 0.102 +1.754950616364096 -0.01149718298360021 0.102 +8.335655525915213 -0.7137389659953379 0.102 +9.42338019643503 -0.9281051266002136 0.102 +4.778308451182659 2.321377397333774 0.102 +0.5196892371433504 0.1327458988302782 0.102 +0.05151024790629837 0.1374297256750632 0.102 +4.003577698892448 1.114601600251464 0.102 +1.858830784704252 0.3186958050952117 0.102 +4.478262528547448 0.5419407051844729 0.102 +2.471868009578501 0.8348065984556132 0.102 +1.420568272771647 -0.02869179038791184 0.102 +0.1435983005072514 0.6833193172256277 0.102 +-2.294407631801676 0.6281662523021617 0.102 +2.26668014993825 0.4001166313933679 0.102 +1.888692894539394 0.09698391914478618 0.102 +18.77485885888504 -0.4574202248208545 0.102 +14.32896052654207 4.543890881117773 0.102 +3.706775286166087 -0.142413078726484 0.102 +2.004733927256451 -1.099212054336636 0.102 +1.663434287210853 -0.03048956332592886 0.102 +4.322228377494606 0.1073099798174515 0.102 +2.885700584316905 5.309288061770789 0.102 +2.951950196541309 0.4850967357912629 0.102 +4.374107336567844 -0.4473520279789311 0.102 +3.163174843994554 0.6735488230318837 0.102 +18.39935821116038 8.819918796828613 0.102 +1.506834676695919 -0.1269843581262955 0.102 +3.955884919223427 1.517434446421946 0.102 +1.430314928713199 0.4979517980667115 0.102 +-0.1403954169285577 0.6251095307416438 0.102 +-0.1330678077039541 -7.374591037017708 0.102 +-0.06954515310034921 0.8998462364732579 0.102 +2.385471242756622 2.029808890197279 0.102 +1.789693645658925 0.05713362318199238 0.102 +-2.134806866512697 -6.743702149963386 0.102 +2.393475022392963 0.2319711457322413 0.102 +3.515656635112242 1.046785681743151 0.102 +0.02693902058912954 -1.037254256236084 0.102 +0.4903486783261886 -0.1208647464030579 0.102 +0.450356923491031 -0.1679851903730172 0.102 +0.4329341492323227 -0.2254296525882081 0.102 +0.8181357391790303 -0.1309588285530715 0.102 +-0.05325765279696354 0.1445783548757144 0.102 +0.1401394726766035 0.8442747276552991 0.102 +-8.508778486043147 6.73229960732881 0.102 +-0.1277858074047348 0.7828407514326617 0.102 +-8.477808572602193 8.500491431818837 0.102 +-0.06730661815326101 1.005755199027713 0.102 +4.958950346068173 7.034657186629697 0.102 +0.1156568158492961 0.3881272217105695 0.102 +0.211553338801212 0.3565264689383658 0.102 +0.8063634542577656 0.2895465004906883 0.102 +0.6470248386920597 0.009951230950740951 0.102 +1.45721243320981 -8.753375979762577 0.102 +3.758250608962962 0.4347887352206275 0.102 +3.579418109539794 2.321921860915418 0.102 +0.9737100951333315 1.139408027109056 0.102 +8.963650642633961 2.390381711063897 0.102 +-5.513339173739405 -1.043843062043333 0.102 +4.31885477996471 4.32957031737121 0.102 +15.62302104323294 0.7753092550977299 0.102 +9.151885630570197 -6.625934907162693 0.102 +1.839660072534854 0.5799542683731472 0.102 +-5.174965780229613 -6.706059635250174 0.102 +0.9147469543321721 0.6632458086238798 0.102 +14.81281839346224 9.105045538677755 0.102 +0.7808947827900204 0.8659207485396537 0.102 +0.07308330205395114 0.5198790445339855 0.102 +1.095490013139303 0.4106766722044185 0.102 +1.115502281044137 0.4532510242366365 0.102 +3.092292459858895 0.5038846543823753 0.102 +-0.2464389130827981 0.5535097458982829 0.102 +3.72013836050863 -6.372659900924077 0.102 +0.1252880442264057 -0.03116088172393906 0.102 +-0.258632660012671 -0.1390646098156773 0.102 +1.093493104271692 3.105036942563427 0.102 +9.369213839334375 4.615445170313 0.102 +1.612297664329284 -0.7829706864026086 0.102 +2.475803803542663 0.9617312778341021 0.102 +0.0049345009859168 0.07740193513267092 0.102 +0.08387387498643811 0.2394590926388323 0.102 +0.0858231305957933 0.7778904601445036 0.102 +-0.1526638589703385 0.437831552601693 0.102 +-0.1528685429690753 0.4700596038791449 0.102 +3.646487690409794 -0.7135159778948811 0.102 +2.648339192718336 1.077820148161387 0.102 +2.867772352841472 1.268260627867545 0.102 +0.4862588128828645 0.07141791971203591 0.102 +3.760076622934633 3.113157069412225 0.102 +6.305639293551526 -2.651731164957837 0.102 +1.625832534156999 0.1384651645680529 0.102 +0.9037775081491231 -0.3316391567286103 0.102 +0.02579641824351393 0.119885918951136 0.102 +0.1750737831979176 0.9043037785473585 0.102 +0.2198122142111708 0.458149971170646 0.102 +1.069710584528195 -0.9511826640943808 0.102 +1.07869581977594 0.1305731003489375 0.102 +0.009228217846738865 0.03776135531946626 0.102 +3.68501328612592 1.557776453031974 0.102 +0.5842556042824472 0.02939720175019245 0.102 +-0.9343163581291798 -1.410686907110179 0.102 +3.204276011616312 -0.448747341714425 0.102 +1.259596772734346 0.1884359067250415 0.102 +1.076214751828096 0.9642737648546089 0.102 +0.1040638850112229 3.142742325917115 0.102 +0.003944738718325887 0.1716712976430363 0.102 +0.1726528270784032 -0.01929260579649044 0.102 +0.6078838115205959 -0.06886301964306868 0.102 +1.829049312384779 -0.1652431900797177 0.102 +-4.809011412838701 6.886934360033298 0.102 +0.7074098848909199 -0.01016718380412453 0.102 +0.7588331659460976 1.154910227018142 0.102 +-4.134171713767011 3.773279190754464 0.102 +3.766840359481972 0.08728929531007466 0.102 +-0.02288307812657009 1.145373301266487 0.102 +3.613153466241 -0.3215063934202074 0.102 +5.988260028967236 -0.9836818077646048 0.102 +2.200430112421274 2.380667863884326 0.102 +-7.159071127966816 1.980983700000972 0.102 +5.132902899665972 1.368295995755352 0.102 +17.27287840484848 -0.5719373039505038 0.102 +4.572988904467905 1.514437297001805 0.102 +3.370302466619445 0.986787920391662 0.102 +-0.07164673464800103 0.3907891740596569 0.102 +1.382320119080159 2.371674475152178 0.102 +4.780872428785203 8.986570757493622 0.102 +0.3291564609677861 0.08882658473841927 0.102 +-3.093312272683506 -3.06195414669849 0.102 +0.132506570337072 0.07486945672312108 0.102 +-0.1467540739977832 0.5535046328263986 0.102 +1.105822828712903 4.110413918614207 0.102 +0.2432928567588123 0.9925219031747201 0.102 +4.14055791822791 0.5035045583312373 0.102 +-0.1159421860941776 0.7038603357076085 0.102 +2.167050859448653 -0.08722190554688654 0.102 +-0.6605579635898478 5.71772990790663 0.102 +1.451574113995184 1.208062097639363 0.102 +5.316865937666648 -1.241635080599139 0.102 +5.365642457714056 -1.485098735902821 0.102 +1.009607402354129 0.1361195061166632 0.102 +3.066784769955076 1.069648165650152 0.102 +1.102085674203523 0.8675186229456808 0.102 +1.132096365765127 0.8593367533438228 0.102 +-0.4012631851968769 2.836735189836059 0.102 +1.006666621770162 0.0785417657775675 0.102 +18.3478758444762 -2.303427308071874 0.102 +0.11794193520535 1.050809357620107 0.102 +0.8472681251424561 0.3294061029380581 0.102 +0.7361306078848358 0.300500339021985 0.102 +-0.08672916834752614 1.060317592169496 0.102 +1.74733770209569 0.8533471395648931 0.102 +0.3601264606422262 -0.01777089718421692 0.102 +3.047206142900687 0.8149117475583166 0.102 +0.2853459108066799 0.8540771934379947 0.102 +0.1582793444386992 0.09234452726080705 0.102 +4.638865572755668 1.177344811097419 0.102 +0.07442773303268399 0.1675034126500341 0.102 +1.010764546452972 0.9871220949052386 0.102 +2.736008525732494 -0.1655027896484928 0.102 +-8.458404123124547 1.156324578629342 0.102 +0.2506703028538199 0.09910763929519496 0.102 +1.902491584099176 0.7495833127893857 0.102 +3.30463447434209 1.364078860937723 0.102 +0.358769457729582 1.212088977366963 0.102 +1.410223214421436 1.662554493837044 0.102 +1.521913052304905 1.753423908417415 0.102 +-1.796872615317226 6.993836679127763 0.102 +0.1521318783496501 0.1791054778336886 0.102 +0.3112729752887901 0.9420084579555527 0.102 +2.745755504248336 0.4631077927578691 0.102 +0.8448960380958077 -0.04243620121505232 0.102 +0.9641243362894388 0.115024886364604 0.102 +0.6256508811834107 0.1137779248324037 0.102 +0.2445666376526894 1.160892085355809 0.102 +3.724254020293206 0.6817434791508687 0.102 +1.297607527693624 0.05962946948321882 0.102 +3.639270754306635 2.692382978551386 0.102 +1.611174085702104 0.2805250963213708 0.102 +0.2926289845494956 0.3737191792403081 0.102 +0.5665281112988668 -0.07101996211909917 0.102 +-0.1420433786609074 0.3241743856342613 0.102 +2.799758742584411 1.524938892289032 0.102 +0.6414570060426642 1.222720348631222 0.102 +2.959810512869824 0.693779859761432 0.102 +11.21447453307324 -4.809292845952656 0.102 +2.118437233760821 1.130143961588407 0.102 +1.583937092639925 1.250914150220217 0.102 +3.848299704795708 -0.1582873551558372 0.102 +3.132204419480523 0.1800135494065324 0.102 +0.3153282401451036 0.8051338043871766 0.102 +1.002451713822786 1.033053321616521 0.102 +0.9181115003023105 0.06917193691738333 0.102 +5.423221774194125 -3.347049776058564 0.102 +3.460219729501123 0.365957013847052 0.102 +-0.06962722169674572 0.0807038040849057 0.102 +1.559935205125713 0.5233195931393236 0.102 +0.02979967182591976 0.4205273200970327 0.102 +3.161634139521591 0.8555324950818238 0.102 +1.656098489114811 0.5625972128898284 0.102 +-0.1178925016858269 0.8496365687503581 0.102 +1.404986051635311 -0.1963555909349254 0.102 +17.17112126692517 7.652551950080065 0.102 +0.07181736032943101 -2.733396923487588 0.102 +0.6984660903859624 -2.624676124327714 0.102 +0.05608877090220799 0.02678827485872166 0.102 +2.573200625690513 7.266906372626115 0.102 +2.377709550096502 1.029678251369472 0.102 +-0.1424227807650882 0.9129743462169535 0.102 +0.9883935139778741 0.9175748179679974 0.102 +2.851330774816196 0.118263655349439 0.102 +-0.0683283292153461 -0.1282524315235968 0.102 +7.773029896012814 -2.483308276940873 0.102 +0.4787951123543576 1.274826304827564 0.102 +0.7124037662157003 -0.06410692533907583 0.102 +1.030767583511254 0.2131293910417856 0.102 +1.161465048272322 1.184490430998765 0.102 +0.1454535702043719 1.103425168303718 0.102 +2.13096315405369 0.163435001547092 0.102 +0.2117905877062789 0.009951698059438302 0.102 +3.972164990687159 1.175773285883986 0.102 +5.752991176320509 6.132489626785756 0.102 +9.020273374648164 -3.776666175337721 0.102 +5.029787337126852 1.800394563267616 0.102 +4.5088740491463 1.016417821535782 0.102 +1.194303068279116 0.9838853653063754 0.102 +0.5714057159516217 0.0930350714754459 0.102 +4.31896572930741 2.770757911597003 0.102 +8.229734500927401 -9.113062659128451 0.102 +0.08763941270003439 0.03664457733091579 0.102 +16.32674224214815 5.24441899187581 0.102 +4.050200069458363 1.328084720965059 0.102 +18.06733690788482 -9.082560100558654 0.102 +1.01408950700772 0.5077521413543864 0.102 +9.070466516843801 1.068224995101652 0.102 +-6.69299467061216 7.446253842419472 0.102 +-0.1954328404811053 0.7207888731024032 0.102 +-0.03170958614652774 0.09085609215104713 0.102 +2.746927010816142 0.9599460201293565 0.102 +0.3791641247337094 -0.01082053965401426 0.102 +4.307943065509821 -0.1160008942543948 0.102 +0.6856262802359324 0.2630583998324932 0.102 +16.97202972027194 -4.208675579654243 0.102 +18.39700275798727 5.020146427401587 0.102 +-8.501369211592262 -8.640739041357433 0.102 +2.004174446763293 0.09149475594662775 0.102 +0.9979359213943476 0.1853074762165835 0.102 +6.20486828011112 0.337821637597943 0.102 +2.381633607307365 1.278988607468672 0.102 +0.2277370276923405 0.4139316611702551 0.102 +-0.9411580535481847 8.835406033249351 0.102 +2.193753168455655 0.5377108222928014 0.102 +3.960873342445424 0.07763425710528653 0.102 +3.838240464635621 1.136380717073498 0.102 +0.13335933505085 1.083056353405565 0.102 +1.032696544546045 0.6116805557338456 0.102 +7.219984739331464 1.67861204700034 0.102 +4.448951624888161 -0.2954825651377224 0.102 +-0.02439736029553958 0.3131582185401092 0.102 +0.4887237536148485 -0.02214805129761333 0.102 +0.3660747198214513 -0.1498141878040029 0.102 +0.7427454015613459 -0.02597680265306331 0.102 +-0.06530888276066091 0.4271256529522723 0.102 +3.521282842347925 1.418900453554499 0.102 +0.3799350672057012 -0.07262583811503485 0.102 +1.069909060757843 0.5331033481507815 0.102 +0.6555332619920796 0.1694411072061881 0.102 +1.106168025890781 0.04410889559972923 0.102 +0.5409449043032911 0.0730840970473965 0.102 +0.7395726030838741 -0.06387882094952976 0.102 +0.9609979483621254 0.6219382282557234 0.102 +6.129651239619744 -0.1651963545868665 0.102 +1.085018446923471 0.6566915890892717 0.102 +1.106375139709266 0.6941990297279115 0.102 +0.6799490250097093 -0.05371230068472921 0.102 +3.550174207777854 0.8234668199209982 0.102 +0.7852064030503796 1.645247611341367 0.102 +4.838408605704124 0.2695386201195854 0.102 +0.7915960220138774 -0.03416824488950009 0.102 +0.9942269369677574 -0.08679086595043539 0.102 +0.05008436387525525 0.2620998161883235 0.102 +1.133022264947505 0.3041327229670338 0.102 +1.23586658511704 0.8005132504227727 0.102 +0.3624499385414289 0.1261726984107343 0.102 +1.053844488140469 0.4518195429635878 0.102 +-0.3432737566882585 0.2313823419903644 0.102 +1.838862849603315 0.4127481454786903 0.102 +0.0258314056493 0.8970150358863136 0.102 +-0.07876885676130056 0.8774516322372784 0.102 +0.432020987738739 -0.1244513095720868 0.102 +1.097568675835786 0.6208084126426043 0.102 +2.589111981150484 -0.1445644729170801 0.102 +1.169356937752867 0.02722316567646424 0.102 +1.617075252512566 0.4155113147028059 0.102 +1.113442996665048 0.927196188283801 0.102 +-0.1301556075053555 1.022411461858739 0.102 +0.9230267561263192 0.4759390551705369 0.102 +4.219585961631903 2.132567117660415 0.102 +0.9995748076899993 0.4564140058962134 0.102 +1.786241762117928 1.146872338288513 0.102 +0.1250526657254346 0.7171518913758171 0.102 +3.900501893768602 0.774189785222254 0.102 +1.670696539556932 0.651414990980743 0.102 +0.122096778056495 0.1261180704067594 0.102 +1.103614496688372 0.5609428740297038 0.102 +1.638090189027489 -0.4661703652453307 0.102 +3.175564283772456 -0.2330967106994878 0.102 +-0.2279713604530995 1.828992102992892 0.102 +3.025092059648674 -0.04631500529451642 0.102 +19.06534140233368 7.001918126262076 0.102 +0.08561178199307504 1.316084996041511 0.102 +0.0363308753277931 1.071430541297524 0.102 +11.4301223611084 -1.929566992881284 0.102 +-0.1521711817671384 0.08251606820982989 0.102 +-9.089028673767697 3.024997100301494 0.102 +0.09428275736989926 0.08204914807126323 0.102 +3.433173754673323 -0.1168454643996007 0.102 +0.3181588991430486 0.3383741256979128 0.102 +0.7721487744859807 0.1657323356146154 0.102 +1.795221561590693 -2.437981158913304 0.102 +-0.1141737046633597 0.7319343455366298 0.102 +-0.102311376313458 0.7633934128057548 0.102 +0.08924813919363153 0.847754468191793 0.102 +0.3034035314927372 0.4453452138325235 0.102 +-0.03589565256741568 0.3543666288645114 0.102 +3.873977936076091 0.1830239437840211 0.102 +1.662974204582117 -6.497146005749966 0.102 +0.8724411680130985 0.06136567568552823 0.102 +-4.897510789595394 8.868296492710968 0.102 +1.101291113950713 0.7316417641571338 0.102 +0.1238913632373333 0.8839093716835805 0.102 +0.227472761438168 0.947364709935164 0.102 +17.1345523752351 3.187672429319508 0.102 +-0.006198234475187353 -0.000449059101541656 0.102 +0.4797608413978594 0.193525659797623 0.102 +1.076376919443048 0.08506472746897349 0.102 +12.458828677057 -8.754295860175562 0.102 +-0.1839931994860625 1.007703396574963 0.102 +1.02960084546269 0.5574280652545731 0.102 +-0.163212992710462 0.2270011291744308 0.102 +0.04594648912431526 -0.001410330919827415 0.102 +1.870523946314727 3.830830227239666 0.102 +2.625220693716056 0.6266234224534952 0.102 +2.496339014444267 -0.07564795836302363 0.102 +2.640074668662151 0.02693369709847345 0.102 +1.073602567299524 0.8891083210179359 0.102 +0.4704274183626969 0.1201913998050855 0.102 +4.127699488954398 0.1844267507935075 0.102 +0.6843784445546004 0.2033207563716846 0.102 +0.8714319413215639 0.2277066303851443 0.102 +2.933688809973072 0.7626965520366137 0.102 +0.2573329437665508 0.3541228635262583 0.102 +4.119481717669155 -0.7462803167423244 0.102 +0.9484513096568784 -0.1121170235455449 0.102 +4.083466079980652 1.132037958251053 0.102 +1.353447151849019 0.6166261028194362 0.102 +1.333014289227639 0.6997493698452834 0.102 +2.867110908278439 1.594841666099358 0.102 +3.620354978080176 0.09437685924540817 0.102 +-0.5619576489855557 1.471715782216313 0.102 +1.069597660890015 -0.06619160041893174 0.102 +0.8225109140253303 0.7412798034876651 0.102 +3.50587782185451 0.4528051743825706 0.102 +3.763003519530573 -3.89873031695127 0.102 +-2.928071853889662 -0.9846007791445094 0.102 +0.3391234273065936 0.351995614676214 0.102 +-0.0622383971806078 -0.07531793956682629 0.102 +0.05649804706333197 0.4611572974734169 0.102 +0.8025658999968688 -0.06981679282749036 0.102 +0.1907767738697914 0.8413317942954592 0.102 +0.4028691542200549 1.122636196400696 0.102 +0.8278477382541081 0.9249540760366748 0.102 +0.8628310940897781 -0.02468974048912451 0.102 +0.177380281463637 0.4197370069981897 0.102 +0.2902618963853335 0.7959111444124343 0.102 +5.523812067361004 0.3629828928612489 0.102 +0.536989002708111 0.3015213836446123 0.102 +0.3791947397444351 0.2429475054222451 0.102 +0.6599886237913184 -0.08964865223774128 0.102 +1.020117754683893 0.1553249024463913 0.102 +-0.2714249695150477 1.223012899296078 0.102 +-0.0949325098818803 0.9577851679446401 0.102 +4.140254376256892 1.017986507874571 0.102 +2.552724414601029 0.5540607641984664 0.102 +2.132789325441945 1.342238576210709 0.102 +3.394992163030105 -0.3472215772711406 0.102 +5.030496074112714 -0.684749409719198 0.102 +1.185064887070342 -0.1715902172044525 0.102 +0.008566135073397527 1.178807942870714 0.102 +0.9302897421320424 0.4383668631565659 0.102 +-2.248681754245752 -8.910068182673454 0.102 +0.7633219695652415 0.2493197878845796 0.102 +2.249380629489294 1.049423120739424 0.102 +-0.1128715554630765 1.179415398188402 0.102 +0.6680810240013202 0.7455478034950482 0.102 +6.653562219384739 8.658978107032661 0.102 +-1.895538244911479 1.51170036884523 0.102 +0.09967891584846714 0.120665068087365 0.102 +-0.04118320694882693 0.8457445729176769 0.102 +3.978102386470934 -0.1184620829727241 0.102 +3.444490398879676 0.04611583348968618 0.102 +11.70552997159733 3.623679290958752 0.102 +0.7720373429372313 0.4232405075180423 0.102 +0.01397322457446819 0.8210192693167411 0.102 +0.8677016407921224 0.5478408837744326 0.102 +-0.01166703011590611 0.2015558529681549 0.102 +0.03125153092898985 0.6476602488927542 0.102 +1.035816272818916 -0.5539946005315572 0.102 +3.690229250121268 0.4090038060607723 0.102 +0.4761641314822627 0.3147095605372359 0.102 +0.04198906964416949 0.7986154945733985 0.102 +3.662409844497797 -1.624991222717814 0.102 +0.9518617751415069 0.7353494250053682 0.102 +1.390814245051036 0.1716435805291146 0.102 +14.25313119027728 2.014149660570842 0.102 +0.3682606318727701 0.7398289174944398 0.102 +10.54380672773678 -7.485821502421951 0.102 +-0.05526087853872665 0.7368019350100895 0.102 +2.397362949148366 0.07939648332321539 0.102 +2.353204624162661 0.1545574686094459 0.102 +3.594190248084525 1.074047324582463 0.102 +0.02131649662154174 0.2273677008817847 0.102 +3.070299447945628 0.7586618019890338 0.102 +2.821062806761322 0.864279104940662 0.102 +0.9694099617712768 0.5641607562804938 0.102 +2.456401403980266 0.3549363612738444 0.102 +1.136296595841558 0.7432907421672882 0.102 +1.066795307009457 0.2887334012970036 0.102 +1.954529805362723 0.05158930260897202 0.102 +0.2888551906572803 0.01804967495902208 0.102 +0.7500529798604532 0.6456314431395591 0.102 +-0.1966093498877683 1.115146715493546 0.102 +3.152332968031565 1.043839934852607 0.102 +0.1182443284828277 3.64610148058887 0.102 +0.4016352219354131 0.08419159005882604 0.102 +0.4306209456813545 0.08822488160588916 0.102 +-0.01324351291664158 0.1299641097877023 0.102 +-0.280860466986591 0.09427614357602811 0.102 +7.510965049514015 -5.942479906549788 0.102 +-0.02700866735944823 0.8972826437583751 0.102 +2.679774622462805 0.75306769065864 0.102 +0.442625355707605 0.0343960318743764 0.102 +3.573913680411063 1.600112860341606 0.102 +2.717422343841191 1.221380643546162 0.102 +3.104570376240498 1.437302248686865 0.102 +1.876193536952739 0.4388397989157205 0.102 +0.1526672700599503 0.2351015540900229 0.102 +0.1879585877202468 0.2095913830684932 0.102 +3.203425909274579 1.10958668819671 0.102 +1.292883830244974 1.153553908726761 0.102 +1.293979410088293 1.236609744326972 0.102 +-0.09744869996955303 0.3799838021979333 0.102 +-0.09129882935837146 0.3545690189478811 0.102 +0.2859520232028563 0.0652937770187525 0.102 +1.9798451692424 -0.1546068401624337 0.102 +0.2819471305458052 0.9472403105802899 0.102 +0.2033824592471612 0.1300812762538327 0.102 +0.2498215778955682 0.6301027150200044 0.102 +0.1763165942402152 0.8574241961783711 0.102 +-7.20021191213088 -0.3066571214669257 0.102 +0.6651592827668262 0.3928829497309416 0.102 +2.372973510801723 1.106030044595994 0.102 +3.120967123631347 -0.03849545055808173 0.102 +2.106323100999572 0.8407901149836751 0.102 +1.335280805743831 0.9559538348228862 0.102 +2.940562340540467 0.03254617908385803 0.102 +1.115124827341668 0.9641694350163494 0.102 +6.478235401086362 -4.144681968721978 0.102 +11.55683545335532 2.251168058010475 0.102 +0.7218043303591273 0.2186629551980287 0.102 +2.935969459693196 1.334046492117237 0.102 +0.8377515302822197 0.8501643676669274 0.102 +0.01014793977999139 0.68640968386231 0.102 +1.047976835228693 0.9937748363632177 0.102 +1.06885826739451 -1.295669848794873 0.102 +0.3930613063794132 0.3229612465852453 0.102 +1.483964772446767 -0.05257802375855034 0.102 +-1.188308947987982 -0.4011898949967317 0.102 +0.4186735999596238 0.1365269904964183 0.102 +-4.166654648429582 -8.731402074812753 0.102 +4.286565723637103 0.4029704555735201 0.102 +-0.03682184531483801 1.022815722726771 0.102 +1.07998369790665 -0.00574798932780812 0.102 +0.307830721965896 0.7515175331443024 0.102 +1.05347351513402 0.9404981014226064 0.102 +2.299583896077073 0.01618092810708827 0.102 +0.2463589143289147 0.2507918588652284 0.102 +4.4022965604486 -0.5840574064796294 0.102 +0.1178379874929389 0.4781656612322511 0.102 +3.264529358887738 0.2142672921086084 0.102 +-1.199379671356919 -4.005826602022222 0.102 +2.162067817551287 -0.4698564222701359 0.102 +0.3402744422652914 0.6997603248148009 0.102 +14.21515598875796 -8.953494909193015 0.102 +2.07466267503092 1.56725163698059 0.102 +3.014107433337745 0.03265585238149932 0.102 +3.682375673506658 0.3118709257892317 0.102 +15.51516301053081 7.370405066658364 0.102 +18.76326655119191 -4.089790656360871 0.102 +0.9738210150178563 0.6932504176987622 0.102 +-1.640190051039084 -1.316356863801343 0.102 +-1.758702564822201 -0.9375236158388921 0.102 +-1.009321726389485 1.385739932153232 0.102 +0.8610429764759906 0.8025826701661398 0.102 +0.7611165398960137 0.2314177608501332 0.102 +0.2371338556015199 -0.03757009201875584 0.102 +13.54938930695243 -1.705752530514111 0.102 +14.03684816005437 -2.701972069154135 0.102 +0.1800081416829916 1.178510053345477 0.102 +4.334327919257164 1.271728933950043 0.102 +0.9289299521247596 0.2466907838459549 0.102 +10.7227513544533 0.04469426618755323 0.102 +0.8290632615674673 0.01064333254217359 0.102 +2.458278640045799 -0.9217993540350913 0.102 +3.319130048074469 0.5760423610538512 0.102 +3.381838018062533 0.6048302348455104 0.102 +6.107888341146379 1.105890282793254 0.102 +0.1743376480099807 -4.684624621300864 0.102 +0.7245196745420026 0.4274684644268779 0.102 +0.7327709662567685 0.460938993289395 0.102 +0.804224290349813 0.7073894771521666 0.102 +0.6724864487543998 0.1219607483605838 0.102 +0.9432693612515113 -0.1770125416657604 0.102 +0.9069265577311397 -0.2406022374679797 0.102 +3.49299063795257 0.007728526617284699 0.102 +-9.145598731456156 -3.189764252353787 0.102 +0.8210722886084197 0.2552495625180969 0.102 +-0.08836061603321604 0.01542963718491409 0.102 +0.0847623070589892 1.072481987100319 0.102 +1.097617587186248 -0.1172598308939332 0.102 +4.288151304713328 0.7184224658092517 0.102 +0.005778717131926229 0.5691318346823062 0.102 +3.567074503212757 -0.1272941326184948 0.102 +1.465594664568167 0.8254926880070831 0.102 +1.095584688338691 0.1373292883255614 0.102 +-0.8371254679798423 0.5873269671075014 0.102 +-0.355009029130808 1.007881298986574 0.102 +-5.315665718409227 -2.521161687951865 0.102 +0.442184447111228 1.063656053995802 0.102 +3.578878955134863 1.204492153864775 0.102 +2.032971683808952 -0.7079025511246766 0.102 +2.084112938660857 0.03124534186965309 0.102 +-0.1340151661524997 0.4059106017310402 0.102 +1.11849054423885 0.6150670377689207 0.102 +3.572259621843795 3.542965174245261 0.102 +-7.508840253816642 -7.15524761401841 0.102 +0.08159727876217818 -0.2283819511676762 0.102 +5.965745744360772 3.017284883791044 0.102 +0.05405435855337403 0.8951519617623099 0.102 +-7.632077883635701 7.052953970198875 0.102 +0.1291308930725225 -0.05911892022223771 0.102 +-0.1078302648775572 -0.06791243886214512 0.102 +0.2042350331570014 0.2575270761351635 0.102 +-0.186350283639686 -0.1355062914355052 0.102 +1.089633787234486 0.4791424648089747 0.102 +0.04768701694638992 -0.08912230070998632 0.102 +0.04535890683298231 -0.1200849888082171 0.102 +2.337216855822444 1.160777935191008 0.102 +2.24037716086565 1.193495322961195 0.102 +-0.9149071563374825 3.255255412788642 0.102 +0.4086735726768957 -0.05094986513647608 0.102 +1.756678374844929 1.691522470479819 0.102 +0.4679769110330222 0.3517718391063654 0.102 +0.3828616610010578 0.1718916201122353 0.102 +2.202316789367062 0.7550461225788724 0.102 +6.71349450039603 -1.440514806242367 0.102 +0.4080377815292987 0.5368451203914868 0.102 +-0.001961868270944666 0.7957194817514418 0.102 +1.072784821314534 -0.2825475931483747 0.102 +2.905761970306696 -0.1454454216229437 0.102 +0.1934454525418454 -0.1035457327326153 0.102 +0.5848784592243748 0.1399597321092157 0.102 +2.530009100697292 0.04200593277192135 0.102 +0.7212008236207655 0.1336599566298406 0.102 +4.159208239287813 1.190542331801884 0.102 +0.8667910405554382 0.6511501552795522 0.102 +0.9393650055475341 1.163404834716177 0.102 +1.442614158564647 0.6205559981169406 0.102 +1.581893646792831 2.801398101463843 0.102 +-0.03327451214370362 0.2765154692000633 0.102 +0.5539409273307665 -0.04348758918729732 0.102 +0.1125880641691097 0.6670670522344712 0.102 +1.133165441564416 1.071105218808603 0.102 +1.007733013115085 0.286675313347251 0.102 +3.351681620748839 -1.811839066489703 0.102 +0.7272764212917509 1.169761540631802 0.102 +0.7096345313643948 0.2474241318653631 0.102 +0.1284319740084309 -0.1256685843824061 0.102 +0.2728469062668561 0.9016433313803308 0.102 +0.2361447719458401 0.01651510182039855 0.102 +0.6888739844379305 2.488743028396852 0.102 +1.045261522017888 -0.07450418949669996 0.102 +0.2032965421735321 0.9858917471792714 0.102 +0.2185816195884142 0.3366516346426266 0.102 +17.46411803182955 -2.341081899737752 0.102 +0.02921056039717299 1.143448136711142 0.102 +0.03695236423564827 0.6782837384056291 0.102 +2.675944415320773 -0.01523916601351776 0.102 +11.07576671607714 9.104703674955445 0.102 +3.530523956487237 0.2072062546187463 0.102 +1.921536298539283 -0.6166620457152046 0.102 +0.4934828627552688 1.006892621776757 0.102 +1.204452566260945 0.6183292482139346 0.102 +0.06555735917249836 0.9853970567027026 0.102 +2.45136740324621 0.7871787174047018 0.102 +-0.1770514597474498 -1.773081855399414 0.102 +2.722204443460362 0.2959152889842486 0.102 +3.010050116938101 -0.2831375887174507 0.102 +0.2821376823724767 0.4238402738407534 0.102 +2.534358338554026 0.6985122624763684 0.102 +0.171830945455422 0.3201486720144001 0.102 +0.821135809446743 -0.02720038247619262 0.102 +0.2428270213245248 0.8246271603309658 0.102 +1.135872224789976 0.2068655828796444 0.102 +1.129378340641358 0.2533894381635303 0.102 +0.01204597848631628 0.36634587716456 0.102 +19.09355502415901 -7.082251952991026 0.102 +1.482346438950394 -0.333312049173336 0.102 +3.850332218787671 0.1182367703604779 0.102 +0.06048952801111523 0.6589438187369595 0.102 +0.5914442479117271 -0.2977542821324381 0.102 +0.2750545541730346 1.055245306395559 0.102 +3.692558967067942 0.8332442219405798 0.102 +0.4557866277634462 1.16016717329403 0.102 +0.2955779807727067 0.101373130097367 0.102 +0.943439262167181 0.7022732105402651 0.102 +2.77461224902001 0.04904268149647496 0.102 +16.99214475223032 -7.498576259654126 0.102 +0.4185732035661768 0.671805177608309 0.102 +0.05265145857954538 0.8542025915439123 0.102 +0.8734438590974734 -0.1489427766081713 0.102 +-2.22227895519502 3.627373509892029 0.102 +0.01085836405538256 0.8484619530696558 0.102 +0.489333056334335 0.1541675100594304 0.102 +0.2452106989819354 0.461108425923335 0.102 +0.754370694123489 0.09349589123675317 0.102 +1.301693809520356 2.008548308925289 0.102 +1.653251829193063 1.285181235102819 0.102 +2.154524627537794 1.060366085193329 0.102 +3.314734996376977 1.006236904852273 0.102 +2.900188219623692 1.118963229885744 0.102 +0.6593944339344805 3.283764699568919 0.102 +5.491668354651178 -0.4303619729166026 0.102 +-0.07656973421203034 0.7713704778081159 0.102 +2.482266195859062 2.656399399288272 0.102 +1.012674782157274 1.085292317657729 0.102 +0.8242272977752695 0.3261386463514681 0.102 +0.2853587805331372 -0.189343202908084 0.102 +1.104781930867099 0.5111829547112069 0.102 +1.120885545240844 0.521578949157488 0.102 +4.350345739640451 0.3205950908258561 0.102 +0.4641788695080083 0.01482270911149532 0.102 +0.8208156656478118 0.642437341288032 0.102 +0.8197860317132739 0.5617111589604987 0.102 +0.9395618926501634 -0.0672510787111827 0.102 +0.9358968172139746 -0.0441516772575199 0.102 +0.6004403048806817 0.01650167962786038 0.102 +-0.2551095388824996 -0.2457853981179079 0.102 +3.175264169454721 0.5709163389617909 0.102 +0.6866645162422167 1.339706068685797 0.102 +-0.08678158117844934 -0.02975548990126544 0.102 +11.33417427132101 -0.6140885221605632 0.102 +17.51584857162472 -6.18899354022081 0.102 +3.505085044239817 0.683525315430793 0.102 +3.580131503895568 0.7011300267769041 0.102 +0.2063973194452206 0.7382113825474579 0.102 +3.461998620180098 0.9372550624854487 0.102 +17.14534913767889 -9.131285688471621 0.102 +1.727845789156753 1.315845779068636 0.102 +1.807586487989811 1.344037320527967 0.102 +0.339093577916911 0.5803016742791488 0.102 +-2.557607208476997 2.667262679409418 0.102 +2.975653268386233 0.3816921585596961 0.102 +0.3733403114263394 0.7927365037358975 0.102 +0.6372667970190817 -0.02836509248058715 0.102 +0.4820926067837197 0.9517865655051254 0.102 +0.3579245896946361 0.0562521688295274 0.102 +-8.75529074481946 0.3442986683333947 0.102 +0.6798754566623652 0.1830657382901946 0.102 +0.4587893479284712 0.2706498965156429 0.102 +2.277816377483922 1.131699439436627 0.102 +0.8576555358352366 0.7003156470153575 0.102 +0.7401453863484718 0.03899758853479496 0.102 +2.913132100584632 0.2111294460066479 0.102 +0.9321405119872425 -0.02103979522823628 0.102 +2.335853069296609 0.6462933859456808 0.102 +0.2686224775254722 0.6875223222880872 0.102 +0.718912512958984 0.8310137336256412 0.102 +3.502901157875532 0.588836777700754 0.102 +2.058680189491543 -0.1208793475190274 0.102 +-0.0607258861269601 0.09309197193873295 0.102 +0.6670951491372032 0.07035447955435649 0.102 +0.0527105116327152 0.4088933572017129 0.102 +-0.6167903384920612 0.6742732435654595 0.102 +5.60641330986227 2.026735739385316 0.102 +10.66962120698838 -8.970800983724507 0.102 +3.397197484667455 0.1572562220986934 0.102 +0.08179351649319926 0.6384810437918969 0.102 +12.70843463524825 -7.82637649549977 0.102 +2.552659624813565 0.7671951120967287 0.102 +0.5593413225491672 0.1825635606211982 0.102 +5.468915047784696 4.085968362928549 0.102 +0.05105343195475845 0.5590085368964434 0.102 +0.1652721918243622 0.5774672490875227 0.102 +2.13812930749703 -1.384484299765213 0.102 +0.2640116211095803 0.5672430575598275 0.102 +3.145646285930092 0.0189960642653368 0.102 +3.203910183515696 -0.008083864699517282 0.102 +2.448343162388957 0.9133593981701186 0.102 +2.480066277262989 1.42575370049498 0.102 +0.1153827116999538 0.6427610933368115 0.102 +2.483934631507952 -0.3743414375154471 0.102 +1.567091688199889 0.7295423692331361 0.102 +-0.5343575603817223 0.174744961968661 0.102 +0.0643359487095556 0.5931393621449504 0.102 +0.739408371627754 0.2502797756878795 0.102 +-6.189064384720691 -7.455864757235176 0.102 +4.520537022366221 0.3121449395438711 0.102 +1.137894252702346 1.368358784528032 0.102 +0.4384706913862261 1.010752221617784 0.102 +-3.744704621966335 -6.094081169810138 0.102 +0.1249861662963048 0.6183435952407227 0.102 +0.1226372918370108 0.3382449685169315 0.102 +0.4496503874639555 0.4249970065392982 0.102 +0.4194633250756021 0.4119182055319648 0.102 +-0.06121164799467727 0.4861676439531016 0.102 +-0.08311556306885927 0.4718824936196632 0.102 +-0.01499426273430571 0.5424663267683829 0.102 +-1.01532677000881 -9.179913696018797 0.102 +-0.06295765202968119 -0.0324796358606255 0.102 +0.9798667002943178 0.483666072578834 0.102 +0.2557468554305902 -0.1114834065877056 0.102 +0.2928159453125938 -0.1265870838118519 0.102 +0.1604938905390175 -0.07636033646276243 0.102 +0.8477502009847158 0.4485367630290132 0.102 +0.7381019070142942 0.3248294103511205 0.102 +0.8937114331502474 0.3874337204239361 0.102 +1.012428190759876 0.03106754923667809 0.102 +0.3449047511989934 1.042582492652657 0.102 +0.4662619014298653 0.7962705053672706 0.102 +0.1042487708354533 1.032091108291279 0.102 +2.691039215330281 0.8913884241897629 0.102 +1.197972399514879 -0.2687457712411433 0.102 +1.271991559450219 -0.2911783157814329 0.102 +-3.662588731251354 5.557432811955307 0.102 +-4.037326260435868 -2.562408942638417 0.102 +0.183471127940459 0.1441093742253415 0.102 +0.1805985833848784 0.084250285411144 0.102 +0.1918018120521165 0.1075125402410025 0.102 +3.218235269340755 -9.070798722890986 0.102 +-0.04160060664416003 0.04403983442806644 0.102 +-7.211646801051075 3.037717093647709 0.102 +2.567509444082523 1.191676910527699 0.102 +2.175421051302453 2.666388062350173 0.102 +5.382200202952111 1.287131246534302 0.102 +1.188474774846265 1.090499771822115 0.102 +1.418748341679406 0.7176295383801528 0.102 +0.9723826660776368 -3.023677049759394 0.102 +0.4367415802787664 -0.02131127664961514 0.102 +0.8546352207049199 0.2727171394220134 0.102 +0.1008866186330979 0.8885021846791326 0.102 +0.758341482429336 -0.01854846078975033 0.102 +1.15527783684174 1.860657145616988 0.102 +2.721646353549817 0.4058779939741842 0.102 +1.147471520193096 0.511330920328613 0.102 +0.505649405798021 0.8383811847499879 0.102 +-0.1123746451310792 0.1857228806409821 0.102 +0.7307998565730319 0.5826581724122399 0.102 +3.506604314532126 0.1525895226459207 0.102 +4.100296701132763 -0.1523855590490669 0.102 +0.2102091606653054 0.499141345680735 0.102 +3.292364370977032 0.3391966761764995 0.102 +0.4040793715724504 0.4491580456926262 0.102 +-3.913912296696489 2.742431292788284 0.102 +0.2411403061872598 0.5683257344435348 0.102 +1.512911293860677 1.03267351257502 0.102 +-0.05650501937455363 0.5128558272098381 0.102 +-0.08173859970259661 0.5318482444865232 0.102 +0.7344729066360023 0.1781497485540019 0.102 +-0.0478180262921459 0.7607224252213605 0.102 +0.7892517669963151 0.3929453845894618 0.102 +4.030601560673749 0.9960616488644958 0.102 +2.714348017624394 -0.05172863281647736 0.102 +2.99722741119323 0.1622909890170253 0.102 +15.21417480186333 -1.219995982352117 0.102 +3.162590333015863 1.742944414312181 0.102 +3.14970200342366 0.2845516086341741 0.102 +0.8117261705977153 0.1428787352772942 0.102 +0.4255944733939314 0.2043895844178756 0.102 +3.157852221931393 -0.3533559030339926 0.102 +-0.02917517837999695 0.5201937598666334 0.102 +0.2912704032928312 0.6710381246244516 0.102 +0.5070331622457019 0.2381100618543494 0.102 +0.5590099484138189 0.9503522607274276 0.102 +4.04132341301411 0.2639130828935491 0.102 +0.5177590350292781 0.113801171626404 0.102 +-0.9425963156749823 2.093590091239379 0.102 +1.890338389512007 1.835135339606523 0.102 +0.4091751316627352 0.9033061717961035 0.102 +1.519963575225682 0.1658854321362146 0.102 +2.411029529038431 0.5359920665936986 0.102 +-0.2548406458133444 0.46319290726015 0.102 +-7.505686774971021 -9.062801390485259 0.102 +0.909617190375853 0.3590490014775901 0.102 +1.028283236706515 0.07046421782433547 0.102 +0.3560873098137827 0.8622218116853588 0.102 +-0.1038520205193161 0.5192422794847067 0.102 +-0.6012275697632542 6.276638415893459 0.102 +0.2364839230592636 0.8778658945155563 0.102 +0.2734471203525731 0.2538010484499248 0.102 +-0.008661674835433663 -0.0941159307139398 0.102 +0.8496370216097326 0.993593049977333 0.102 +0.5879388696088729 0.7194979617892168 0.102 +2.883065684803463 2.254409533284423 0.102 +3.014674891496205 2.479272999672668 0.102 +0.4240778058997586 0.8467837907982916 0.102 +-0.04482881575032791 0.9516559519374224 0.102 +1.442747945574304 1.337196153897945 0.102 +0.7691416101980812 -0.2102214803596801 0.102 +0.7496789496572343 -0.288500455618484 0.102 +1.57283582280167 -0.6054122380949915 0.102 +-0.02266153001116662 0.4854538265897156 0.102 +6.218119002030538 -9.085120148444995 0.102 +3.066223947595582 0.6320376541153079 0.102 +-0.01468336484702735 0.7735081482046039 0.102 +3.942208828244165 0.9063547889597882 0.102 +0.855890437280703 0.006614628826647038 0.102 +0.09095914724194901 0.3740017448564214 0.102 +1.900281159273051 1.121880687771609 0.102 +0.3526264406982931 0.3031088219608338 0.102 +0.6323775175945323 0.1610043780326842 0.102 +6.470474107233017 -7.37313481360114 0.102 +0.8443046435803876 0.3930862505983776 0.102 +0.2712501914226503 0.3701038354024804 0.102 +0.8828464326476476 0.3698342157008279 0.102 +2.299579959061776 0.9334499319870526 0.102 +0.09935578989156825 0.1765471455409728 0.102 +2.834459228686094 0.4904767142062826 0.102 +2.866504820738461 0.4619812000269318 0.102 +0.1673507602970343 0.2554777787407611 0.102 +0.3894191298207209 0.8435483985895327 0.102 +0.2330665451318799 0.6499064857995103 0.102 +0.3920653513033479 0.8194332803581298 0.102 +0.3767687225449655 0.5268069365448924 0.102 +-0.007976909978035431 0.7194796355064694 0.102 +0.1721573866789538 0.7488902709994538 0.102 +0.9334451472061731 0.3718091226796232 0.102 +0.3763172996418671 1.018127089698591 0.102 +2.367345402088569 0.8949649755119565 0.102 +14.75378762594349 -4.704179938210874 0.102 +0.2141591226031877 0.6328076077812728 0.102 +18.66079583881536 4.225058222707745 0.102 +1.559207607221328 -4.836148826625726 0.102 +3.053129938109404 -0.208384691529691 0.102 +3.129242655775709 -0.1729287827433938 0.102 +14.50848202294949 -7.118670394086966 0.102 +15.55336476928792 -7.192135477194384 0.102 +0.8507166108119032 0.2455153794604115 0.102 +-0.06272998183687706 -1.410088034279033 0.102 +1.706192200516729 0.3909159936894989 0.102 +2.322377582533295 -0.4490697820211529 0.102 +0.5539746551475736 0.2685372138316566 0.102 +-0.001765181517721247 0.2252208832756599 0.102 +6.667865979132167 7.737381080308365 0.102 +-0.01759157565380589 0.924775168926281 0.102 +1.013101080918314 0.4170380884156046 0.102 +0.02877644838669981 0.5440395483736162 0.102 +0.1600656600338363 0.6027908256504404 0.102 +15.63583367904876 5.762325875600417 0.102 +-2.573753505141817 -7.496878651477825 0.102 +0.4460819285117886 0.1731736168720692 0.102 +7.209939167222068 2.440964637751141 0.102 +2.526072631632309 -5.000935280911063 0.102 +0.3553931921523411 0.1776395346438388 0.102 +3.775537799646299 0.2044559765131137 0.102 +0.6776371778465362 -0.1088346953966267 0.102 +0.6961878367316333 -0.102542429342978 0.102 +0.6217976078139198 0.4456850730784399 0.102 +0.7142056097895289 0.3849483897333795 0.102 +0.6361392132570484 0.2761496026733076 0.102 +0.02428051308147598 0.6036038515524071 0.102 +3.354960830008476 1.416563031503708 0.102 +3.658005694134162 0.6588113696874606 0.102 +-0.08054409625053902 0.8105392209275701 0.102 +0.5880457330568891 0.8563409171078034 0.102 +1.909000458288766 1.007889618358583 0.102 +0.7042316032038723 0.8987864513408761 0.102 +15.33078916829487 -8.785510706276085 0.102 +0.9969834907940246 -0.1995341500906191 0.102 +3.284191178611209 -0.1298950988919823 0.102 +0.013142855750781 1.046092135453264 0.102 +0.006245371147556873 0.5930798057488724 0.102 +1.007736744871584 0.3949602297878473 0.102 +0.2327877039758442 0.2946285653855894 0.102 +3.206405732908763 0.1680666167077846 0.102 +17.28211367680283 6.727295997099584 0.102 +-0.1043819555756951 0.4940196206688012 0.102 +3.512272080771842 -1.18297831067692 0.102 +0.8877919599298121 0.5216491161705086 0.102 +-0.01627853743003195 0.6384014586315416 0.102 +3.822263257283353 0.06700843809999593 0.102 +-0.04416183169806068 0.4383249789181748 0.102 +-2.734208671769266 9.025293084874658 0.102 +2.953361220103303 -0.4418098528053309 0.102 +0.03480044716883225 0.7614277667154524 0.102 +-0.08760699867068351 0.4461606689737795 0.102 +-0.1143324998869828 0.4362881855706827 0.102 +0.07230273127929479 0.6700262333022008 0.102 +0.9787853239434997 1.084192134580589 0.102 +-2.195451862798278 5.345233811763675 0.102 +0.525735731805982 0.2216759122030417 0.102 +0.719743840579701 0.1621936180705686 0.102 +4.082120218122067 0.1096190194844091 0.102 +0.7560916647618322 -0.1100170836727307 0.102 +4.749890820170131 -0.1409402334639299 0.102 +0.8649151635986211 1.03692166669686 0.102 +0.1404319511987479 0.114174014394364 0.102 +2.12655422583515 -0.1353962367653284 0.102 +0.820260128028735 0.1950709109180017 0.102 +0.04924799297413568 0.4930366925887499 0.102 +0.159931299160419 0.6608584204884544 0.102 +0.9840355415014461 0.230569238837993 0.102 +0.9385707285800473 0.6563471434982739 0.102 +0.1743791943570236 0.8087931904485706 0.102 +2.510211423787559 0.1615449861116449 0.102 +19.05431902097365 -5.272920594195349 0.102 +0.7345448098531097 0.7707771505169012 0.102 +0.3821653206743367 0.7648600982689948 0.102 +0.3662618180208195 0.1582234221237236 0.102 +3.875568989759535 -1.472913140973763 0.102 +2.505880832168772 0.3096506498697279 0.102 +0.3952584200526059 0.9692047038442796 0.102 +0.384558797369469 0.992685965219654 0.102 +3.028083970687041 -5.969938193510055 0.102 +0.6442087622914582 -1.865362752004867 0.102 +-0.0683587457407433 0.1711484178033995 0.102 +0.7314613376792232 -0.1231602647659058 0.102 +0.9623354369304303 0.1650953642412335 0.102 +1.635341410755579 -0.09398894614099088 0.102 +0.5161601270748353 0.5103175594691355 0.102 +-6.126976891229631 -5.924629770852028 0.102 +1.538209875971184 0.3602943917563904 0.102 +0.8874516470100797 0.6996425838479005 0.102 +1.019138513985089 0.9427341039076355 0.102 +0.1715827015705907 0.5309382129218644 0.102 +0.09703860078243809 0.7218143930597598 0.102 +4.634410624919967 -0.3821570220990961 0.102 +0.1187946836418014 0.590135514859515 0.102 +0.4729862365329607 0.4804450295670629 0.102 +0.8116914379737564 0.339153474342961 0.102 +0.3070119962569137 0.3030081751787435 0.102 +2.919709865539291 0.5861392598521133 0.102 +0.6105923492222275 -0.03790929591188526 0.102 +-0.1043134893918045 1.082899211503881 0.102 +0.1732819637039157 0.4809035310401732 0.102 +-1.382405574698823 -0.05248470832247622 0.102 +-2.815658420276728 7.471643041621971 0.102 +-0.1676985916303961 -0.03986795892206425 0.102 +0.8901379716689423 1.079162609800989 0.102 +12.97925553312449 -4.697142846252773 0.102 +0.7743834508411941 0.9626124317248576 0.102 +0.4558447717556471 0.6711764552593202 0.102 +-9.012297924347882 -1.282837550536056 0.102 +0.6297956870008986 0.5681677380659763 0.102 +0.3405654967483744 1.012386927052692 0.102 +0.4568531137150225 0.8932555000939996 0.102 +0.3924254809491229 1.071945844829447 0.102 +0.7669399790995324 0.9979492455140301 0.102 +0.4266716272153324 0.7600268091468869 0.102 +0.7117385088555013 0.3006691403265535 0.102 +2.294594730731583 0.4725783125828421 0.102 +0.5654886933219851 1.932970757776447 0.102 +0.3355346683195491 0.9487695986390778 0.102 +2.625390415181697 0.4865170984289168 0.102 +0.6243573134862987 0.7566383002038246 0.102 +1.892350572288076 0.6156387801183463 0.102 +0.9617465006813535 1.001306418199879 0.102 +3.053237627460601 0.1816157287548185 0.102 +0.4282407852886615 0.3471627025804236 0.102 +0.5328228085943808 0.4574746655381322 0.102 +0.6795242320845515 0.03715899435074944 0.102 +0.592734275395543 0.5049310184426592 0.102 +0.8885873402224472 -0.0454259711455003 0.102 +0.3260513550804303 1.073109134118117 0.102 +0.3720222247906591 1.043604122654459 0.102 +0.7903196201230621 0.05062455133192747 0.102 +3.182565960985605 0.8010379193232109 0.102 +0.4315423495428966 1.110030110371558 0.102 +1.696061251727263 0.8624383137980656 0.102 +0.8684236062766917 0.4311183769281783 0.102 +3.766613594845723 1.329728368556027 0.102 +2.082292330296704 0.9889521934067845 0.102 +-0.1041055787364548 0.1164483240489803 0.102 +0.6988896563970848 1.06472320731447 0.102 +10.94044483673798 5.276565120062142 0.102 +0.9747701785360682 0.4658258812999376 0.102 +6.340258211383158 2.130702886753329 0.102 +0.03567884452807938 0.4747772961153883 0.102 +-4.306563068554028 -7.682102749422799 0.102 +0.5834573789211343 0.9448250706442776 0.102 +1.157178362340577 1.013112903492683 0.102 +0.4454395556355364 0.3054927302606744 0.102 +0.2166613437872515 0.573107067605545 0.102 +0.562427209013989 0.1301054434370195 0.102 +0.4824816595585775 0.435679389415984 0.102 +2.67929816339908 -0.5602459185494298 0.102 +0.893890374727291 0.2616015868070758 0.102 +-0.006956278094713257 0.5054973265154648 0.102 +0.9329180065347965 0.9609044615310088 0.102 +3.644187545923654 1.047049323058308 0.102 +-1.625450723007889 1.961444265997037 0.102 +0.8397831032480741 0.6704805057331052 0.102 +0.5879043427794379 0.6248467761095071 0.102 +10.38924660042613 -2.414803852537279 0.102 +0.005381226797332524 0.2878599540152078 0.102 +0.9678892058742303 0.534834437456521 0.102 +0.06906770304318859 0.5382039239525879 0.102 +12.99728147048186 -6.188199937794948 0.102 +3.967070825921058 0.7600109080660631 0.102 +0.5733202979314648 0.1619575608946833 0.102 +0.4957325653563662 0.8051176339577228 0.102 +0.3349800403685347 -0.07789292951164729 0.102 +0.5673089996982313 0.7011905120244775 0.102 +0.3128067340142578 0.9938309384915412 0.102 +-7.15400446175333 6.073009010706421 0.102 +0.4643516598005144 0.756108721211048 0.102 +0.3941757261088324 0.1897941836450498 0.102 +0.2513283624908192 0.5137369159564471 0.102 +0.5222748889037205 0.1883261544359729 0.102 +16.89240278751022 -1.512061471493058 0.102 +0.1896597671186015 0.5532385374513867 0.102 +1.0927517121459 -0.05845123115265799 0.102 +0.4217196793770537 1.055975272678149 0.102 +0.9407297540641962 0.9349137113471514 0.102 +0.3347592661864429 0.4898368556302303 0.102 +0.3917631734335186 0.7243168624695414 0.102 +1.551097267359415 0.3074021413363223 0.102 +0.4254913751761661 0.1115247348640755 0.102 +-0.001218730214019128 0.6614791024626283 0.102 +0.6072761948477888 -1.225898222295496 0.102 +-1.253120906180249 -7.075345372808338 0.102 +3.660296034466738 0.2181932337703427 0.102 +0.1846355518699909 0.1777127387094165 0.102 +0.4207014377346592 0.6327975919065824 0.102 +0.4454025054792445 0.7758916174346412 0.102 +-0.0757066782193854 0.3111066307931895 0.102 +4.750267285994717 1.541807923291343 0.102 +3.796402570644546 0.551091157794545 0.102 +0.568402081791601 0.3167986977843757 0.102 +13.66099386681473 3.958839570813757 0.102 +2.024598014918509 0.7335905861984116 0.102 +0.5347909711451013 0.794060491981411 0.102 +0.610636142327458 0.9694524826210841 0.102 +3.741658911205213 0.5478100315819633 0.102 +0.3182983977982368 0.7139378124230606 0.102 +0.7701960283893221 1.046755874115011 0.102 +-0.01141286355044526 1.00066707374973 0.102 +0.6234652546824979 0.8915377759596008 0.102 +0.3548676293267168 0.9826997800976842 0.102 +-0.07252623251460424 0.5522326268206491 0.102 +1.092954712008165 1.04285247074916 0.102 +4.211252026942685 -1.476392391264752 0.102 +0.4399667057685154 0.8858892472994421 0.102 +0.7931287648179741 0.5673442853975278 0.102 +1.96488077063744 0.3462052225404047 0.102 +0.6043827223291421 -0.1448445934799489 0.102 +0.5555387100656526 -0.1535454458423437 0.102 +0.5358687732564068 -0.1791884093087678 0.102 +0.8981808128980862 1.027926755345767 0.102 +0.5328205250123459 0.633369730401292 0.102 +0.4907502156377902 0.5695134391907171 0.102 +0.1134836380091567 -0.004980203604683995 0.102 +0.8471117891154606 1.023608574129925 0.102 +0.6574731944644668 1.028773491038174 0.102 +0.6554952988545508 1.053967938956995 0.102 +6.173860978964959 -2.031151694594543 0.102 +0.2578307301578259 0.8888570199735513 0.102 +0.713759910549026 0.01317926378296077 0.102 +0.5942735566612775 1.060857067018675 0.102 +-0.3978473035203117 -0.009012685006260492 0.102 +-0.1776778628816269 0.3820768668749107 0.102 +0.7845640270540712 0.7406773001864321 0.102 +0.09635189315641481 0.5737889686449514 0.102 +0.03744985590945545 -0.03477202467889838 0.102 +0.3325519262052207 0.4185470240073795 0.102 +2.145874719164466 0.1020743560443534 0.102 +3.764516592905421 0.9206627781193288 0.102 +2.310278466243335 1.734888054702584 0.102 +2.521032435406879 1.101524353852012 0.102 +1.114547027443381 1.10693397271267 0.102 +0.324663272543365 0.5262809225619112 0.102 +8.410847360761233 4.268205619084145 0.102 +2.573963098480274 -3.432302892506175 0.102 +2.690892326779511 0.9561851593280871 0.102 +2.318469143314602 0.5583355207214589 0.102 +0.6192420572292038 -0.1102965129870802 0.102 +0.2444852422368773 0.1470206442593541 0.102 +0.9613679859399624 0.9827113270689787 0.102 +0.4044366127585459 1.025392403619202 0.102 +0.5036761132797584 0.1725467019559127 0.102 +0.3488918343531688 1.766840533909429 0.102 +-5.319585800173673 -9.093910651411024 0.102 +0.7380575661294584 0.8881443068103209 0.102 +0.4190601564843937 0.6061878206026986 0.102 +4.202614904889869 2.369770736111399 0.102 +3.360275035397787 0.9441119485152156 0.102 +0.9052215839912279 1.060003897602506 0.102 +0.9271906682177582 0.537067980488811 0.102 +0.7447803767735535 0.226043865182311 0.102 +0.7647170301193131 0.8474356078527536 0.102 +3.642539153914592 0.01188023211037945 0.102 +0.8684693114073299 0.6247510311999201 0.102 +0.2840486878353781 0.4685575954339609 0.102 +2.168620605937906 -2.50217186371574 0.102 +0.3493780949662143 1.082441938736132 0.102 +0.3792578053467225 0.6178421481570646 0.102 +3.210629802058469 0.461757432282513 0.102 +0.4929813325089886 0.3969462479296928 0.102 +0.62710312749055 0.3993892392381916 0.102 +0.1882223957506411 0.05356805695182126 0.102 +1.073735872701909 -1.079523902642479 0.102 +1.678639928802824 -0.2537378341014319 0.102 +0.4506086978339418 0.8291054942042064 0.102 +2.308781292356902 0.7821609154040066 0.102 +0.2845490345929045 0.5905977526997359 0.102 +0.567414763457049 0.3655940073930306 0.102 +1.025114049449352 9.154663560829269 0.102 +0.4827434702078115 0.1026012751997393 0.102 +2.576035900932989 0.9658646568258552 0.102 +18.87199012861052 0.8845779408573793 0.102 +0.5469505157565668 0.7412015299973487 0.102 +0.8303365181699895 1.042185603559721 0.102 +2.362397337593073 -0.1247827552588138 0.102 +0.5422864017289506 0.9843369537171607 0.102 +0.6552336892355333 1.080550538416591 0.102 +0.9628660092035979 0.4023123780969038 0.102 +1.340596023605223 0.8388759238328187 0.102 +0.5789238537823217 1.033557276746215 0.102 +0.6847489370913387 0.9617183162298251 0.102 +0.6281869131034954 1.047273613473644 0.102 +0.5081209369961454 0.624311402408618 0.102 +2.411160622296618 -0.1524087869754631 0.102 +0.1137497281626444 0.8369279224916115 0.102 +1.034046655490782 -2.300947496335156 0.102 +-1.971802274944594 3.037489991995471 0.102 +3.291579285417607 1.161680969163252 0.102 +0.3866469915300095 0.9427558832190153 0.102 +0.8907359147647081 0.4688697258567157 0.102 +0.4202238501911196 0.5589108349205687 0.102 +2.914620998484202 0.8209986990258499 0.102 +0.4076002456347911 0.9270849820276456 0.102 +0.555494683208795 0.3485353519640378 0.102 +0.7377743097638674 0.3861169005674014 0.102 +-0.07511084533877342 0.2187679906442186 0.102 +1.015684094733957 0.5385667768707094 0.102 +0.7449512523689691 1.048333465636316 0.102 +0.3848739344417416 0.8700480909024089 0.102 +0.6167302981309035 0.8078621346503613 0.102 +0.6338397776153668 0.3234942869699222 0.102 +0.5044249680043533 0.4204047491318554 0.102 +9.499027802444402 -5.874771261418918 0.102 +0.5231962248088053 0.3400868392676545 0.102 +0.5403015104693052 0.8758966663636754 0.102 +0.02991625075917962 0.5083899244600574 0.102 +0.8776641068323892 1.018768946330125 0.102 +3.190203301424923 1.592739564615625 0.102 +0.4982680609915451 0.8861641078936404 0.102 +0.06249562288545189 0.754301691297113 0.102 +0.5109941943235503 0.781972363299376 0.102 +0.5409760082170404 0.9040172371717179 0.102 +0.487671167479295 0.5955897268408916 0.102 +0.5120799937305841 0.6782191104309824 0.102 +0.5913375564730197 0.4079620960153393 0.102 +1.369747399855662 0.2229460255865904 0.102 +1.071755465984831 0.4069579527011815 0.102 +-7.687578000308929 -1.372238190442519 0.102 +0.635725646983577 0.8204859809444738 0.102 +0.08515416387370252 0.418134892341587 0.102 +0.7217820000912752 0.5593864606220016 0.102 +1.205848481354005 0.1750862425479719 0.102 +0.702429406066209 0.8274341947012274 0.102 +0.3693911519666999 1.067148140537784 0.102 +0.3146139408120469 0.6568456737559825 0.102 +0.6052013085005441 0.251217445848302 0.102 +0.963097257674426 0.04742040087700648 0.102 +-7.376941474270764 -2.805913720555618 0.102 +0.006474626767184597 -0.1495312466897489 0.102 +-0.01257442877688395 -0.1995452634062317 0.102 +0.3060826029773195 0.1840844865255711 0.102 +0.4517738274638248 0.531122277605043 0.102 +3.13245940030174 0.5415138131985822 0.102 +0.7928687935045996 0.5245819282884825 0.102 +-0.1392567136922007 2.218693815774226 0.102 +0.5149865184837722 0.3804579441481341 0.102 +0.8388566407198343 1.079604051945976 0.102 +0.8621285846086214 1.088040791948034 0.102 +0.8063359530536031 1.09996877758797 0.102 +0.1136108266947096 0.2495634248331551 0.102 +1.734130221352491 0.2016935612782281 0.102 +0.5025962546161972 0.721291431277489 0.102 +0.7153604839078073 0.7354704537159541 0.102 +0.5051836482251563 0.7417955919131284 0.102 +0.6334975445588281 1.110023575972051 0.102 +0.5607430692900266 1.061466537290483 0.102 +0.5427587777387637 0.5856363348139638 0.102 +0.5453093292756913 0.8267534616003042 0.102 +0.4399098714604188 0.6005413980368944 0.102 +0.6587396103164327 1.00425337756055 0.102 +0.6844976483494208 0.9855690724064229 0.102 +0.7094387607502265 0.988834613859488 0.102 +0.5728844047478854 0.7849756032850272 0.102 +-0.1925650513331931 1.294167291254677 0.102 +1.517589392565703 0.09183385146977402 0.102 +0.3607066687137706 0.9121003483121599 0.102 +0.1879071959089059 0.5365543881970334 0.102 +0.4084642355750039 0.7432365337410203 0.102 +2.189522357171112 5.135255624901665 0.102 +2.311286662434347 -0.8524111743490028 0.102 +0.6686708199184884 0.7140173644116393 0.102 +0.5017184057880653 0.3568083853763345 0.102 +0.6885468176344824 0.4695408389066342 0.102 +0.6505360524304091 0.8370350978413778 0.102 +-0.07257175656000336 0.613884647269769 0.102 +0.7175035658805484 0.7190650384351909 0.102 +0.3260839517417575 0.6205237392402392 0.102 +0.283164467306988 0.5488362013510875 0.102 +-1.418833978358876 -2.688461975659515 0.102 +0.3899782957622961 0.4878453493847084 0.102 +0.5864722394190426 0.6496307232898451 0.102 +9.117023755848047 6.54791090403714 0.102 +0.362596893290089 0.9281643462229031 0.102 +3.971227648854492 -0.2666699887912302 0.102 +0.4357208382828639 0.4628747046202704 0.102 +0.6392510951642592 0.9220802633639157 0.102 +0.1645761638298761 0.9489834701090093 0.102 +0.4878309498726986 0.286426932319938 0.102 +0.4202584384382852 0.4997763952130195 0.102 +0.923785784801091 0.02549273493404027 0.102 +0.6861052184436297 -0.003761818945207556 0.102 +-7.552581808459294 8.94703762625395 0.102 +0.5694229700562852 0.8348447367876533 0.102 +0.5158869019923715 0.4823053982356242 0.102 +0.5248160764586246 0.554048207441032 0.102 +1.344822864952756 0.4034567372277242 0.102 +-9.131120262641847 5.857307033616507 0.102 +0.5785663755318476 1.051457608432732 0.102 +-0.09473775778937944 0.2049904214263396 0.102 +0.4758240109123323 0.8829251379104796 0.102 +0.2978435973296241 0.6157891296884032 0.102 +0.8717625808528157 1.067857072435915 0.102 +2.17642668201925 -0.01430643663615066 0.102 +-0.1392234888799547 0.8850194094955761 0.102 +0.5733504927294855 0.5713561163345994 0.102 +0.5483714770610675 0.7110343480883019 0.102 +-0.08092442250973218 0.6775621824434219 0.102 +0.1627645620378159 0.02414467532546663 0.102 +3.911021685541856 0.4553619166070916 0.102 +-2.045700534029966 -2.056325478835292 0.102 +0.3916591230065953 0.3619841055931325 0.102 +6.833149726935322 1.383779735621835 0.102 +0.2963979358743177 0.048203540476515 0.102 +0.7613848673284634 0.9419457128359647 0.102 +-0.7249064597216905 -0.3250909378443899 0.102 +0.5033403391103873 0.9637617352106007 0.102 +0.641365446239047 0.4713184127739132 0.102 +0.2311888549002015 0.6864092132069265 0.102 +0.3484175908157265 0.6063928505195705 0.102 +2.615998814016147 -0.8393492482650237 0.102 +0.5127656216086572 0.6013748007912157 0.102 +5.004507536854738 2.165862279869893 0.102 +1.051049889089096 -0.1994815749861496 0.102 +0.4675520216656557 0.6312206738036736 0.102 +0.6280197025076938 0.6139810074738812 0.102 +-9.175534132317321 -7.858504138251117 0.102 +0.1824259604820398 0.7741810617136857 0.102 +0.7836168866681293 0.3022847956256606 0.102 +0.2632688409281901 0.5893892610434677 0.102 +0.5151301814190306 0.7100559132433332 0.102 +1.67396096811027 -0.1414556163465008 0.102 +0.4683562380748759 0.845530621667225 0.102 +-5.377228596646064 0.935009002799545 0.102 +0.7260490954796636 0.9643037040814935 0.102 +0.4083375228965886 0.77898449191182 0.102 +0.4125822598118905 0.8032404039639559 0.102 +1.86758070688542 0.1549877168665798 0.102 +0.7723842728208906 0.7127905060527205 0.102 +1.598198958674177 0.2055608183571871 0.102 +4.11153726585469 0.3675630299564051 0.102 +0.7125892076649714 1.016066233661339 0.102 +1.115123333785041 -0.04942602971489059 0.102 +1.13811905685571 -0.03443152016442695 0.102 +1.158795679000858 -0.009037114159541977 0.102 +0.6797158314337437 0.5795213037629422 0.102 +2.994793635870897 -0.1170325620106992 0.102 +0.6131245112035425 0.4182485765709413 0.102 +0.2529667735794026 0.4023931935822035 0.102 +0.4512060798942652 1.044534265441698 0.102 +1.073931715383426 0.2406053206516192 0.102 +1.829175413982391 0.741015911198634 0.102 +0.3143402460084128 1.046704178729381 0.102 +0.2388446794473224 -0.7984197213420903 0.102 +0.7801947121039738 1.017630621984771 0.102 +-0.0951785141963376 0.2657059686059494 0.102 +2.016058785716169 1.038642130131263 0.102 +16.37995809381178 -5.531905515363995 0.102 +0.5246490463721237 0.6571952665886623 0.102 +2.382885444483222 -0.008205296938331066 0.102 +0.9104584465946625 0.9833189040991284 0.102 +1.133550401749712 0.09404676032979477 0.102 +3.974242972528125 -0.07279850976956972 0.102 +1.659450060434714 0.8125890237008051 0.102 +-0.1277869676771587 0.1587598690083813 0.102 +2.755473220355023 0.2420605467927529 0.102 +0.6608918560812393 0.9551889393521575 0.102 +0.7861523138130424 0.6924374789024028 0.102 +0.7776253948959837 0.650992606727637 0.102 +0.5630527166314141 0.6174825679443716 0.102 +3.268545564101757 1.092186937295491 0.102 +0.4312238861134857 0.7258189181226909 0.102 +0.8275196050759621 0.08326357259796734 0.102 +0.816413857390122 0.0605791214771389 0.102 +1.724243865198659 -1.10977401928421 0.102 +0.606805069069127 1.014573171130339 0.102 +0.664897921929443 0.9312725468783514 0.102 +11.55984573535771 -5.823772082241065 0.102 +0.4903622233902539 0.6655464348315389 0.102 +5.167329740557452 -0.01820341243620581 0.102 +0.5841321673840884 0.3779151423971541 0.102 +0.5513173687219113 0.3825650908206556 0.102 +0.6124859367097473 0.6544655225799534 0.102 +0.4326438615719106 0.9307656533771649 0.102 +2.025480713163941 -7.128123636265415 0.102 +0.5753990341725441 0.3390384963141039 0.102 +3.008320263976612 0.1010433320874344 0.102 +3.577812396747438 0.3299439519295102 0.102 +0.4608546288083303 0.3891513933153428 0.102 +0.2631543412506546 0.7245726498762458 0.102 +0.02418281558867876 -0.08129213338437949 0.102 +2.864350259316767 -0.401208373674774 0.102 +2.936625830866715 0.0996547992193709 0.102 +0.3118137130776389 0.2218800258271175 0.102 +0.585010230542235 0.230717326183745 0.102 +0.6336487941261224 0.9977790791856863 0.102 +0.681076758862787 1.082937062483444 0.102 +0.1923887565047437 0.6097826584272926 0.102 +-0.04281716599239768 0.4616805890148795 0.102 +0.7498652985052121 0.8667224008567084 0.102 +0.5869580232435375 0.5259823755398269 0.102 +0.6833907661333484 1.036443750781346 0.102 +1.239194763793119 0.9337278053006055 0.102 +0.7928916506900858 1.038310236155558 0.102 +3.865206676923521 0.5148980405573098 0.102 +3.627060876078147 0.7676331110715611 0.102 +0.8024805861241172 0.7998216488764528 0.102 +0.9129438848019711 0.09115411157452577 0.102 +0.935469373855351 0.1238969370068127 0.102 +0.5478769522011485 0.2410881207200417 0.102 +0.6948150325474949 0.9191322063526439 0.102 +0.2877657708264139 -0.06319573243409886 0.102 +0.1023972317197219 -0.05247115163583606 0.102 +3.75623437604916 1.045868239591481 0.102 +2.315181635112351 -0.1703176862817131 0.102 +0.5933006866842186 0.9877695861816905 0.102 +0.4599470445944372 0.1443290090911535 0.102 +0.6381503885966149 0.4512559049711307 0.102 +0.5063098690994378 0.2657182529808474 0.102 +0.6345870327862256 0.9736427142156974 0.102 +0.77682135484531 1.072516762679818 0.102 +0.5626729086214517 0.72586729769233 0.102 +0.3370453174124936 0.6434061479861048 0.102 +0.217064837255027 0.05500586150324854 0.102 +-0.1656995733405838 0.6477264224787813 0.102 +0.6130843959392762 0.3033692162853412 0.102 +0.3071647892805858 0.5617989007522483 0.102 +1.654655004199962 -1.619516628673369 0.102 +0.5291129052824637 0.931582194851007 0.102 +0.6015827443877807 0.4849986447203767 0.102 +-0.1025353505348745 0.07536863062856489 0.102 +-0.08820756793319054 0.04024520766326504 0.102 +0.7595007414835016 1.26338625457263 0.102 +0.7490078544858011 0.7023578422247853 0.102 +0.464949908675615 0.9958886423945229 0.102 +0.5663649234120738 0.4476198011411929 0.102 +0.5809177370215268 0.8156763024607538 0.102 +0.03532452331858467 1.096137986565521 0.102 +0.3203910518136761 0.5076881517792549 0.102 +0.576271547111584 0.9170714876347528 0.102 +0.2742896054903566 0.102462013571653 0.102 +0.6849790598575387 0.5214192096627639 0.102 +0.4021722270898901 0.6542818932574519 0.102 +0.6093347006417064 0.9438061648736694 0.102 +0.4967994170437461 0.4584304472225326 0.102 +0.3558023967684225 0.242680759706376 0.102 +0.4435135153308552 0.4892214586507888 0.102 +0.9045797458009821 0.4037366882736442 0.102 +0.757083690791411 0.1352696208999934 0.102 +3.2179852333403 0.6836402403863922 0.102 +2.384634164647452 -1.537259914924487 0.102 +0.8560304691246067 0.08656835448070377 0.102 +0.6033539903881006 0.8297762788440193 0.102 +3.357685810811767 0.2728189731772833 0.102 +13.18726993462096 7.314787324694192 0.102 +0.4587316542285946 0.5644429663043038 0.102 +0.7449013837799812 1.015968356410244 0.102 +0.5646414126464018 0.2165414883711235 0.102 +0.6652060673930564 0.8811963044921098 0.102 +0.5936584608053127 0.8804466702552595 0.102 +0.5346871688363709 1.043117436048075 0.102 +0.1410287379142992 0.5746076233986338 0.102 +0.7545696803642844 0.9761561052706113 0.102 +0.7311526807678177 0.9401002735356 0.102 +-0.08366454705114433 0.3314925016189003 0.102 +2.049587468681303 0.1880121224851461 0.102 +2.152959823610979 0.9215053733189844 0.102 +0.4367043850318867 0.6896804463830186 0.102 +0.1500746779697372 0.6275504934149888 0.102 +0.9074894819057294 0.6131108473014856 0.102 +0.5785260819771771 0.4275511962889105 0.102 +6.197869732699559 2.608644333220332 0.102 +0.4601659658424711 0.9616402412405565 0.102 +0.4289983738236762 0.954689775245253 0.102 +0.6733977049686104 1.484903238247894 0.102 +0.5328791280277473 0.533658162169162 0.102 +3.843380690307914 -0.09364051201498419 0.102 +0.4709235856184273 0.5109336690698657 0.102 +0.5386714341290424 0.1694794387324344 0.102 +1.262298629331967 0.5730828001777984 0.102 +0.5389852564190285 0.513233187895099 0.102 +0.9208445852570107 0.7526176972780485 0.102 +0.8321613159457962 1.007278013941787 0.102 +1.158946853592842 0.3729523416269271 0.102 +0.5543024772162155 0.6740608840451444 0.102 +0.8757997911975175 0.1071855213299083 0.102 +17.86996604687802 1.288336794657977 0.102 +0.4987741257074679 0.5392923052846939 0.102 +0.6096282248868242 0.8525687475427464 0.102 +0.5174728416571814 -0.06697324028819215 0.102 +-4.349522305276184 4.612465853611033 0.102 +2.595912105699687 1.644173746744003 0.102 +5.128945541695025 0.3795399560594114 0.102 +0.2754624410349504 0.6436554499174824 0.102 +1.127231960252375 1.235401326569681 0.102 +-0.04909129788126003 1.10835660924863 0.102 +4.018423385697033 6.680506674199997 0.102 +0.907456875848127 1.006085429276936 0.102 +15.01288768421413 3.905979045432016 0.102 +0.3001020511723811 1.085068647992997 0.102 +1.029112231186656 0.2584267358662424 0.102 +0.4656560537931076 0.6170726787103701 0.102 +5.150915095501163 -8.894446918139691 0.102 +0.5559538226578356 0.5412324967330385 0.102 +0.4830659818553301 0.8263088653147146 0.102 +0.1397406845888424 -0.2230650819222973 0.102 +0.5507207252986954 0.7733563489114519 0.102 +0.4409408973859715 0.4015465865809142 0.102 +2.819103334321681 -0.6421207156110077 0.102 +0.2402881066118787 0.9210122578704754 0.102 +1.109308164094023 1.004510011453634 0.102 +1.00681379665379 0.2572932646034111 0.102 +5.665493859216689 1.700505724240549 0.102 +15.67724161876582 9.124029874339298 0.102 +0.07775490937203697 -0.009216675571823605 0.102 +0.224455957224495 0.8544164510532969 0.102 +0.4712897036255861 0.2282806001713615 0.102 +0.3544490711122149 0.540483357963999 0.102 +2.311450858659856 1.012255714694217 0.102 +0.4610481177712247 0.7302847172514992 0.102 +8.37754309720922 1.120414797774353 0.102 +1.219561148719698 -0.2216089485378056 0.102 +0.3432887684142175 0.0227143126008227 0.102 +17.77490414008412 8.798677366368931 0.102 +2.694932896755793 0.5433558162614647 0.102 +0.684036296817997 0.3254065606124139 0.102 +0.4574932276543559 0.9098227674429531 0.102 +0.9857439597573625 0.6668411834093451 0.102 +-4.378628159822901 -1.558893121573167 0.102 +3.639095576909929 8.859720293437992 0.102 +0.5105042721616948 0.8728547027319429 0.102 +0.5169789758052534 0.9943201814609293 0.102 +3.17247330883571 -1.225940835901416 0.102 +3.505638468260431 1.208420857976709 0.102 +0.5666725013931798 0.9763182717368294 0.102 +0.587708044553176 0.7656241223748694 0.102 +0.4342269079355114 0.2274550929759861 0.102 +12.02586974964005 9.081952889361578 0.102 +0.5506388080936885 1.011105833192547 0.102 +0.8756429543944486 0.3158991249599072 0.102 +0.5570228365087267 0.4173012401011435 0.102 +0.7638677360299531 0.6105835720772956 0.102 +5.919154545518338 -5.65139250954265 0.102 +0.315901283753921 1.188285803127285 0.102 +0.5889843581627144 0.4566880412367239 0.102 +0.6837347552343211 1.108778567698242 0.102 +0.5199525465410699 0.05810220498018655 0.102 +2.352903189854443 -0.2799080913315224 0.102 +0.6975324388945061 0.6665978811914325 0.102 +0.6347340161014339 0.6345935706107703 0.102 +0.6175909619208798 0.3677504331917008 0.102 +2.071325861226867 1.258038926100066 0.102 +0.3464278121286651 0.3802264790232065 0.102 +1.267884372785099 0.4422310596035525 0.102 +0.9502547948552597 0.3185086223233868 0.102 +-0.01603440393631069 0.6961270850492343 0.102 +2.888172546060153 2.962651010769073 0.102 +0.25891684828315 0.9639604793886284 0.102 +0.6725974179302925 0.9090438733399741 0.102 +0.1922646281450534 1.096173742130376 0.102 +0.8429774217007987 0.4725273979370614 0.102 +4.314031182872763 -0.7453330934730182 0.102 +-0.005437494289039042 1.953321809076487 0.102 +0.6576330217119678 -0.05730208737726082 0.102 +-0.07041730689038699 0.9524134113841234 0.102 +3.414117062709546 0.4004427826273693 0.102 +1.052600247753635 0.2157759596757235 0.102 +0.3678724200768961 0.5016337621419752 0.102 +0.3485284231861878 0.1446866580076773 0.102 +0.9431597593890602 0.4583987518801097 0.102 +9.863495675448775 -3.56297051283637 0.102 +1.785076598635536 0.5360150297938423 0.102 +3.690486236759548 4.107510405773366 0.102 +0.1185590208670857 0.2049601525023139 0.102 +3.189367083781783 1.356908031238013 0.102 +0.8919478609607265 1.538025874711338 0.102 +-0.3907117965607724 1.301587800957939 0.102 +0.6549959575494654 0.2852630073250831 0.102 +1.734286927864755 0.3329347353776705 0.102 +13.60615280199355 2.700587904343816 0.102 +0.03423439861368655 0.3279347229886208 0.102 +0.013204618704954 0.3256512950906527 0.102 +2.086254112374986 0.350480242617305 0.102 +0.4480485056126515 0.3691374086015445 0.102 +1.030148123565646 0.3864670779851798 0.102 +6.230880082537258 -0.6000638361355288 0.102 +0.08808142827882634 0.9892816149035936 0.102 +0.5107363740109567 -0.01604520501983254 0.102 +-0.1946657855433752 0.1956336877391355 0.102 +3.962684391057995 -2.036449015987574 0.102 +3.955442161384444 0.6578830227428099 0.102 +3.711566116728156 -0.2181372394800407 0.102 +-0.04053086693904052 0.377057474983736 0.102 +0.5267404069048379 0.9139323532461914 0.102 +0.4463473785381983 7.553365630602915 0.102 +0.3619723813908949 0.6853599128360364 0.102 +0.4941604537430579 0.5108541730854863 0.102 +0.4218370567905103 0.3153741497550966 0.102 +0.264067337748414 0.337740914922373 0.102 +0.5796745001628205 0.7367566388747786 0.102 +1.37790785906943 0.5050247610291346 0.102 +0.8171921859546684 0.3108977138000777 0.102 +-0.2382961588636536 -3.114935603900443 0.102 +0.8750781373335413 0.3996216389947302 0.102 +0.3294710020261147 0.4031438556902279 0.102 +0.07709570443266277 0.4491166321001565 0.102 +3.47310430928918 0.8840602577125366 0.102 +0.6668656275695423 0.6287011492451801 0.102 +4.040848713418238 -0.01637496885805443 0.102 +3.357202595627577 0.1432839445419213 0.102 +0.7263682379127919 1.079168506007369 0.102 +-4.849352283369967 -4.384368334707926 0.102 +0.4371922548297201 0.2827389428908042 0.102 +0.4009164871638939 1.347995367557597 0.102 +0.3139510175852198 1.108311558572315 0.102 +7.725527422175231 -7.132330464218416 0.102 +0.5643507606207975 0.8568044979928179 0.102 +0.3994359008481072 0.609920636420162 0.102 +-0.009866537565606317 1.022751616386602 0.102 +0.4810474896231426 0.6369227989579243 0.102 +0.4324685872278988 0.5791688836455016 0.102 +-5.642467457803794 5.66895243799482 0.102 +0.84889954646633 0.3663611137248161 0.102 +4.997968360295976 -7.568361624645184 0.102 +0.7204807058469506 0.6162247397184928 0.102 +0.8064869856578867 0.9686213782370641 0.102 +1.050760853231989 0.5010521568832091 0.102 +0.6248386199945052 0.0216344458191888 0.102 +0.6981356927376468 0.784164366879729 0.102 +-0.05300365998367233 1.201012572031916 0.102 +3.178937712933842 0.9882532104927247 0.102 +0.3268275281850315 0.7694462014636996 0.102 +-9.279818414725007 -5.350819981332364 0.102 +0.9882136457026257 0.3135647520426499 0.102 +3.58309844935158 1.363656672414659 0.102 +0.6099814583883645 0.7769211031882326 0.102 +-0.01071045425284894 0.6033745454118448 0.102 +0.1333217501911275 0.2058220958885142 0.102 +0.9617482709124507 0.2717069510852634 0.102 +0.530407335307474 0.2770402579864965 0.102 +1.922053775981339 0.1967094945304421 0.102 +0.6626862599524763 0.6022188863853948 0.102 +0.5675403155673773 0.5940516038559607 0.102 +1.612234988474885 1.365348784170786 0.102 +0.8437868870518288 0.01712403760960154 0.102 +0.8015184493265124 -0.1644258756462934 0.102 +3.71372154721634 -0.07726994182389135 0.102 +3.918563725852579 0.6370566925137218 0.102 +4.688966890850748 0.8436240979461717 0.102 +0.4861540974668716 0.7161446168269043 0.102 +0.09076253145085006 -0.09615476017944251 0.102 +0.1689227989252995 0.3969314463906198 0.102 +-2.63351977469591 -4.77444222203022 0.102 +0.3696249775154504 0.6510719062320318 0.102 +-0.04461827676867733 0.9815789069243807 0.102 +0.421526056455531 0.9783714786614914 0.102 +0.3776980818379352 0.8998314408545932 0.102 +0.923609215251243 0.5588092288434974 0.102 +0.5305854041960247 0.429856905369273 0.102 +3.400991167648836 -0.1725924392190034 0.102 +1.638689461262288 0.3480213672028014 0.102 +0.597348974066863 0.5799589132800683 0.102 +0.7750227208289664 0.3371554354823186 0.102 +3.220386483354151 0.2792556467313176 0.102 +0.7081539757820207 0.9463069044901693 0.102 +0.6274440044742398 0.2566016008146499 0.102 +3.623151211836341 0.5341004537506667 0.102 +3.875977984551365 0.9500326446004301 0.102 +0.02087829925485253 0.7365629310129148 0.102 +0.1838945406860319 0.6982659011184131 0.102 +0.7061331635960064 0.3572969607550138 0.102 +0.4817327319362373 0.05344926762855026 0.102 +0.6694885960767678 0.02120739391416606 0.102 +0.2734143287157305 0.5217584113408759 0.102 +4.458121514468537 -0.1104219985143261 0.102 +0.3028938801815741 0.8723826400478163 0.102 +0.2984219472687386 0.8998560665547328 0.102 +0.5847397318275561 0.2851897411684125 0.102 +0.5888922605059677 0.6995659783971055 0.102 +0.9896289919689828 0.1276805157640244 0.102 +0.1185691811420912 0.4241643446687783 0.102 +0.6386243890977659 0.8674795928623849 0.102 +-4.829516596695593 7.662263080627789 0.102 +0.5076799572315556 0.9054114827803078 0.102 +0.6551233143484126 0.6400047861482857 0.102 +0.6571383059933216 0.5268197180453241 0.102 +0.6409157630304106 0.5110041053752011 0.102 +-0.07712501246354825 0.6472561361602721 0.102 +-0.0004307015141466957 0.4696851856182925 0.102 +-0.1340253182148941 0.941433151043953 0.102 +0.229841944083144 0.7959676869784791 0.102 +0.5090411782093616 0.3123009512077222 0.102 +0.3962400403954752 0.4235283895724262 0.102 +1.872702976648681 0.9385815267087898 0.102 +0.4275174331144132 0.1545870196796525 0.102 +4.204180356785521 1.454675210874683 0.102 +-1.414350305241415 7.846888797832129 0.102 +0.5330808804949076 -0.08398192891098712 0.102 +15.88621693170133 -4.058522898304736 0.102 +1.222813834211025 -0.4801255325062529 0.102 +-5.987039790522135 9.113196267201738 0.102 +-0.04543935908676337 0.3016260469212114 0.102 +0.3033291376625886 0.5037301117125783 0.102 +0.5582385960777494 -0.006596355033935856 0.102 +0.7000232407975218 0.4250729660613712 0.102 +0.4556740477154292 0.6401379363478281 0.102 +12.27180946663078 2.840557418859738 0.102 +1.673615973218236 0.4482657657520021 0.102 +9.385201745632397 -7.240083785379179 0.102 +1.487493586137887 1.142500747575358 0.102 +0.6571092325420445 0.3017066239993403 0.102 +0.9031776152641242 1.229177370292037 0.102 +17.85607241974578 -3.377528715164409 0.102 +0.9395717600767819 0.06961549197651028 0.102 +1.059957735074927 -0.02340086657214241 0.102 +-0.343049763081839 -0.1022108892958791 0.102 +0.3573268203409495 -0.07303454725908338 0.102 +1.052870598091888 0.3837725844560549 0.102 +1.054737389292409 1.070496339939558 0.102 +0.6598019276567825 0.3540643251915945 0.102 +3.262431733092357 0.5390639667590373 0.102 +2.514617863310249 0.4661033194860932 0.102 +0.3734146361161803 0.3460850006875706 0.102 +0.4386351453077186 0.8098986705291013 0.102 +3.74924698763695 0.7483784300531475 0.102 +3.090674701201602 0.1158336123258001 0.102 +0.1046623845923757 1.16259196036882 0.102 +1.150677128415219 1.669017940083012 0.102 +6.034795373738584 1.447257017153441 0.102 +-0.2514359395940979 0.8699558135432256 0.102 +0.04848067074226248 0.7046875683771447 0.102 +0.6229763812578419 0.4954833836882927 0.102 +0.7692146788155588 0.5469303917995729 0.102 +0.4285502468244611 0.5230534584958632 0.102 +0.9880614329888806 -0.06213434540675546 0.102 +0.2154817431907975 0.1769271043024605 0.102 +0.5551019772934001 0.4685107712953 0.102 +0.6910610380460922 0.8685470154569368 0.102 +1.366685767889713 0.7465959434975237 0.102 +6.689944669720998 -0.3592849021389849 0.102 +0.6799920800073624 0.8437305299418268 0.102 +-3.162244655261833 -0.2492443982847949 0.102 +0.5959944094731395 1.098760162797406 0.102 +0.2932900845487643 -0.03253352332397003 0.102 +2.061483270870525 0.4252870888048218 0.102 +-1.070935574427761 0.1435639559496673 0.102 +0.4358722721018113 0.06332503600818774 0.102 +2.924126764155516 0.3503747259961049 0.102 +0.4124010538845472 1.001858635400448 0.102 +0.8463171978200607 1.173328715841879 0.102 +2.188792190110774 1.668459753950947 0.102 +0.3957615120746539 0.293164801743693 0.102 +0.6000306897357003 -0.6098122742640029 0.102 +9.570036754331293 9.169504340615434 0.102 +0.9057629525665473 0.1898826771306339 0.102 +14.32399445177576 5.799492273143424 0.102 +0.504384729196715 1.031397932941774 0.102 +1.552219568162574 0.01185729919962442 0.102 +2.381414685697068 0.3571947077570308 0.102 +0.3387510371778575 0.2212872510935163 0.102 +0.8282410299057625 -0.8113278777095875 0.102 +0.6130278743182521 0.6093879823594138 0.102 +0.1991363273392572 0.4546337896643377 0.102 +0.9374732712764076 0.2631342932730649 0.102 +4.189254864214776 -4.544544489716917 0.102 +1.781426711197461 0.4274911000554581 0.102 +0.2321592754427002 -0.1223912248607264 0.102 +3.011022096063395 -0.9285226893678058 0.102 +0.6627726950132122 0.5572593596449502 0.102 +4.597701538137096 -2.504407790485223 0.102 +3.530173184153861 0.06865675481031065 0.102 +0.0604382467752777 0.2073073198320571 0.102 +9.249594651979979 -9.220436264807347 0.102 +0.6656466160168818 -0.3059156965640991 0.102 +0.6770557366194444 0.5633058561336807 0.102 +0.2431865214664014 1.018131316967364 0.102 +0.6406266835168742 0.6826059778929066 0.102 +0.5236834198926994 1.171210847792575 0.102 +5.447123579537267 9.034542718117148 0.102 +0.3200461335583349 0.2666284021120016 0.102 +0.6398578694372021 1.128469544738529 0.102 +3.341006698700134 -0.6461668015063164 0.102 +0.100524985579216 -3.937456791368483 0.102 +1.031993901308724 0.1155077838196038 0.102 +1.050075485884488 0.06467637847779817 0.102 +2.788260587480575 -0.1928556748715154 0.102 +0.3992894642155708 0.5810523264327367 0.102 +4.098756796862682 2.931004908778209 0.102 +-0.1698014877389533 0.9513542634722355 0.102 +1.206177226869122 -0.03794634883219339 0.102 +2.524884092988675 -0.171730062833744 0.102 +1.306557405025007 1.587946209093244 0.102 +0.5654668833054692 1.160514415048898 0.102 +-0.04728767836665806 0.5574021816444401 0.102 +0.5778039320699353 0.2615907661877366 0.102 +3.071446640212128 -0.4953760279487325 0.102 +0.721728954419022 0.9503073331515879 0.102 +0.3887211616923854 0.6372358692307576 0.102 +0.5239891526968133 1.076558459325124 0.102 +3.371221549574693 0.008676835925561585 0.102 +4.387596090982791 0.5261110408398593 0.102 +-0.1579887949122073 0.8444338332942116 0.102 +0.3672757054145103 0.8149020998220921 0.102 +0.6406576285708161 0.211878845176519 0.102 +0.8715758884685625 0.9981019216170074 0.102 +3.531816887425418 -0.7890796405917033 0.102 +1.02338043631678 0.5822651265335507 0.102 +2.044075198139473 0.06420653294289522 0.102 +1.084357201006839 1.018325297918306 0.102 +0.008725082664145008 0.8855565145707393 0.102 +0.6169082276230452 0.5294887044958074 0.102 +0.1280111460633878 0.4970920879906946 0.102 +0.9426658476797151 1.052857003559297 0.102 +0.6303618697756048 0.8467058454707415 0.102 +12.60557489678126 5.029885895933434 0.102 +0.4818506307103596 0.9327938281706176 0.102 +0.320987358068988 0.1398674318546672 0.102 +0.7373828018435096 0.6656622729435386 0.102 +0.361359329663983 0.8374969710848517 0.102 +2.021673207240755 -0.3021982036092711 0.102 +3.74012140911055 -0.4545415549451751 0.102 +0.2454727745198411 0.6056352446825938 0.102 +0.6373613984289521 0.6013818666439182 0.102 +2.772023599709395 -1.573236886912564 0.102 +3.873398764537422 1.1872116262955 0.102 +14.68712571221743 8.219656597420201 0.102 +0.381232523078396 0.4628005716627515 0.102 +0.134186585954959 0.926744802662874 0.102 +3.135944497632839 1.900957333512852 0.102 +0.5697686010556403 0.4982281325599959 0.102 +1.283651392763014 0.3145945958476983 0.102 +2.208298168086902 1.031792403861835 0.102 +0.4761296414724717 0.6853497342153865 0.102 +0.8056210442611916 1.120486584404868 0.102 +1.648260717914223 1.858992464633636 0.102 +3.655233890806122 0.9764244466761448 0.102 +4.363980997713039 1.025002659952176 0.102 +3.693148173324025 1.099719357478829 0.102 +0.7634468180517832 0.7338953904406847 0.102 +2.471099497915881 0.6601972114100777 0.102 +0.5400662122833675 1.059606677202101 0.102 +1.765257915265636 -0.8956523077042571 0.102 +0.3012452676916462 0.9606954069233558 0.102 +4.411916239917361 0.05927506966016931 0.102 +3.152435229951639 -0.1014406439971671 0.102 +4.89008467194973 0.6523465288096227 0.102 +0.6481852441233799 0.7697860403269217 0.102 +-1.917811571371946 0.1590074838010251 0.102 +-0.1146979872992435 0.009783954743222554 0.102 +-0.163945873073943 0.02301982918150661 0.102 +-8.869581139177294 7.513143003927482 0.102 +0.6058252447167896 0.5571048940229518 0.102 +0.7995943694496012 1.003308069320908 0.102 +0.7569438570293195 1.101302818554983 0.102 +0.2298768615267036 4.099604152848348 0.102 +1.391736324468097 0.5971961795347753 0.102 +1.021649435875608 0.6411281744321042 0.102 +-0.2916816724956724 -0.3999123349340067 0.102 +1.072159245684815 -0.1363549872614443 0.102 +3.853163807195554 5.175045600512133 0.102 +0.6161970862143331 0.0992577883696934 0.102 +-0.08570847607233764 0.7220099137730377 0.102 +-0.1426619158419975 -0.2831299526771269 0.102 +-0.8422868514654011 -2.451670897038475 0.102 +-3.080066235078551 1.069440895109087 0.102 +3.869693926492312 1.423972466189034 0.102 +0.3240639914601268 0.1675251023771754 0.102 +0.2219916414526339 0.5970220733329619 0.102 +0.1424807328632578 0.380568232547544 0.102 +0.1916016111290666 0.8201348514759751 0.102 +2.735951191337534 1.05329634981477 0.102 +0.3632074939029817 0.5668602654001612 0.102 +3.918268282276617 0.8389362446165912 0.102 +0.594839414377155 0.3590507670517311 0.102 +0.002078557917604091 0.02341043092806325 0.102 +0.422814166023594 -0.004160484873933651 0.102 +0.9667171609132053 0.298811458775197 0.102 +0.6166246998724542 0.3199538529395807 0.102 +0.9733041044114049 0.004848585707034913 0.102 +3.325460132315422 1.235594296020597 0.102 +1.307397010643 1.03931908952951 0.102 +3.809001372521852 1.043193343169606 0.102 +0.8686600456903728 0.8821331645730921 0.102 +1.357887516634468 0.01060946210195512 0.102 +3.993041799741384 0.1211551592708314 0.102 +1.08609191848743 0.1924430314890936 0.102 +7.056563381948642 3.722230354968169 0.102 +0.962374282513301 1.102079137324663 0.102 +3.324762346051338 0.07066837607587707 0.102 +1.163531821700825 0.07422472775030908 0.102 +-0.1593611033653096 0.1735046519482438 0.102 +0.3620033623576261 -0.1223919361012042 0.102 +0.3428898418860509 -0.09933411054388699 0.102 +1.610969445385069 0.6579828296796028 0.102 +0.2091107732635635 0.2281949919812795 0.102 +3.055353763499809 0.2984944021881398 0.102 +0.1092916942167083 0.152348974754749 0.102 +0.4126710951265324 0.3819402138968835 0.102 +0.7729485325418072 0.3755211733943974 0.102 +1.999831376162814 0.260986001161197 0.102 +0.9383836590870266 1.012145795357261 0.102 +2.414963417637297 0.4748026828781305 0.102 +0.06097601228653744 1.072897195818585 0.102 +3.565189182468795 -0.1900221051672468 0.102 +1.103645199381067 0.0172782554609339 0.102 +0.709537316444267 0.5941818684030731 0.102 +2.384234630743068 0.6789618860246881 0.102 +0.6892497583293887 0.7986653000067001 0.102 +-0.02832921889406538 0.4285125661754672 0.102 +1.282334792336248 -0.07404715042620501 0.102 +1.169979529881985 0.2822333061877162 0.102 +0.6835494049302461 0.3447415773265004 0.102 +-0.01171838087180428 1.064450820549635 0.102 +0.6015052358953255 0.3341394923419554 0.102 +4.404666738786824 -1.021125093337643 0.102 +-0.2710787010057157 0.1791349095487939 0.102 +3.368060082859198 0.8234260770650136 0.102 +1.640475639504796 0.07961834084994139 0.102 +3.221913367398174 -0.09249427294803378 0.102 +2.965743700244408 0.8428615600712605 0.102 +0.7092328286599665 0.4837658888531894 0.102 +1.943747393750218 -0.3015977047566585 0.102 +0.03309797899610727 0.2805133313168173 0.102 +3.273133979568848 0.8869731446544693 0.102 +0.6871990550232043 0.437706959999981 0.102 +0.2999543392336615 0.8330222347801055 0.102 +3.031621232423692 0.2485813760540361 0.102 +0.8804910172459472 0.4491873885541977 0.102 +0.6093646264606126 0.7258095767242263 0.102 +6.757034712457404 0.2922773526367715 0.102 +0.6675502885992001 0.494548497107081 0.102 +-9.153579062138348 2.073314031793636 0.102 +0.9792664288008881 0.3870381033014717 0.102 +0.7513528848315817 0.5024436715765488 0.102 +2.892943634794166 -1.035770279824436 0.102 +-0.02169322664277897 -0.1220544901764465 0.102 +-0.05558985198005048 0.6326157466444061 0.102 +3.954895612126937 0.593492118443145 0.102 +3.934562129632477 0.2350312121702917 0.102 +1.055011997452392 1.122480593574471 0.102 +3.486790397861906 -8.216565159988646 0.102 +0.726066252829821 0.9096376144137868 0.102 +19.15718926665836 -1.582541432325318 0.102 +0.6714832684219646 0.2452501325776451 0.102 +0.3980899345121484 0.6887884099855971 0.102 +0.441527820573725 0.1513590895012093 0.102 +3.239543932043228 0.05349210802610347 0.102 +3.725772934046028 2.140179196179335 0.102 +0.3461569555822281 0.7540974833880052 0.102 +0.8148565134318044 0.3769608103102973 0.102 +2.661208165594069 4.010521761972867 0.102 +2.143356812918896 0.3774105139216504 0.102 +-1.730163521790174 -5.985738853853214 0.102 +2.747308556769777 -0.08600031327156778 0.102 +-0.1532799344015376 0.7065741587998834 0.102 +0.1573879478841028 0.43117500848917 0.102 +4.233541890113673 -0.1793202495721327 0.102 +4.198410285303424 -0.3142897169939097 0.102 +1.897978520072999 0.7941919918571287 0.102 +4.116017771486834 -0.4556202381737861 0.102 +7.172326443132023 9.310356631520973 0.102 +-0.050208987925548 0.598287885717098 0.102 +0.2260866868366446 0.7226417281009526 0.102 +0.6135869137438003 0.6790937093774626 0.102 +0.316290867451532 0.9214611109213243 0.102 +1.017558861542681 1.052097397071084 0.102 +0.06807291893174197 0.841257737135267 0.102 +0.6281105141793463 0.3453302343367624 0.102 +6.008190029176038 7.180077849852452 0.102 +0.3416406781432696 -0.02755693416872895 0.102 +0.6489799765600313 0.4113073722315709 0.102 +0.34510733469139 0.7889648277837541 0.102 +1.871467888330157 -0.04552338141270541 0.102 +0.245554080354668 -0.08598085650604156 0.102 +17.36569613592364 5.836173631882502 0.102 +0.7007980008544464 0.6304791370486262 0.102 +0.9829781222883912 0.2546481439747876 0.102 +0.2882386199055788 1.033662675619224 0.102 +-0.06261513665662177 0.01615458263732846 0.102 +-0.03091110786149448 -0.01296721177300775 0.102 +-0.7767271053033495 5.024812917970479 0.102 +3.515435294614282 -0.5134475004616363 0.102 +0.1727492837993534 -0.1529827304451625 0.102 +2.407644460397207 -0.05236118285636502 0.102 +1.043150697497929 0.1572668791647397 0.102 +0.6459803126371839 0.1111345810905469 0.102 +0.8922925658390131 0.2177233920235548 0.102 +12.90455176226322 -3.822542283558241 0.102 +12.59055398572071 -1.9111757534908 0.102 +1.592499339861197 0.8891573474989114 0.102 +4.209878479302143 0.3698169080647545 0.102 +2.284713794201201 1.305586763609899 0.102 +-8.136851855289397 4.948787319644656 0.102 +-0.04004630798100581 0.6523278448648848 0.102 +-7.741022403725596 -4.681605786599021 0.102 +0.06099267638333397 1.027704490840705 0.102 +0.9614548053317803 0.09090153220290344 0.102 +0.9440985734631732 1.087667037676421 0.102 +0.7927728236057204 0.8888489892473319 0.102 +1.108427112035485 0.3148703848943608 0.102 +0.1185703437467216 0.5512866173429173 0.102 +0.4082242422725355 0.2432333983304124 0.102 +1.021666820379028 -0.01522394806085308 0.102 +1.007406421752013 1.00369399482144 0.102 +1.947861854861296 0.41657267057255 0.102 +2.070012224909703 8.938563963054417 0.102 +2.83881786515065 0.3021052813706673 0.102 +2.67055052360582 0.6740315471819686 0.102 +3.724019852188466 -0.8445014158891876 0.102 +4.000837719624178 0.552929299899685 0.102 +0.4811224922716488 0.02915450141835548 0.102 +0.2036462913305089 0.523673724510083 0.102 +-6.169376170192638 -1.784374276245304 0.102 +0.8928886806924321 -6.868193095806348 0.102 +9.70921073876646 3.838475330766452 0.102 +-7.573776988146172 -5.97463744932609 0.102 +1.040961359930122 0.3349277147067544 0.102 +0.2194496862772029 1.057783903754194 0.102 +0.01218285134568859 0.3948312639989371 0.102 +2.228431455530574 0.1937239778762132 0.102 +0.7408111137328189 0.5212245128348659 0.102 +4.385195281272194 0.7693309133160142 0.102 +0.9862821282619164 0.3520247457739286 0.102 +4.730481845888328 1.762204344880102 0.102 +0.4753529684080645 1.079580514701235 0.102 +1.01485682751838 0.4671989209146707 0.102 +3.969220667225858 -0.5085190892701248 0.102 +-0.01512807503332293 0.9772456810192642 0.102 +2.671532403045363 1.183400031765084 0.102 +2.305861024840466 -8.982195008284949 0.102 +2.989733035526577 1.715926393716626 0.102 +0.7470190043458987 0.4121266929263374 0.102 +0.9434946846349826 0.7806534408106428 0.102 +1.883641153718714 1.039582541608391 0.102 +0.1812337117269331 0.3500850797711466 0.102 +-0.423102225670982 0.3531089525345414 0.102 +3.217415911650354 0.3694777058798999 0.102 +0.3020739534548507 0.1273559893673097 0.102 +0.2694589907343299 0.1493682988892904 0.102 +13.05955634726848 4.588864967865837 0.102 +4.078910955337022 0.9542891562905992 0.102 +0.2635581752189795 -0.02845929769647809 0.102 +3.814265926830577 0.7276635670217674 0.102 +18.04936613274728 -7.021567523480868 0.102 +1.023828660796671 -1.629659460909169 0.102 +2.602697116624411 0.1452280040614979 0.102 +19.08786594400238 2.689290554561351 0.102 +5.626211828960028 0.129499148367249 0.102 +1.930345395075008 -0.416628115291967 0.102 +0.6950019212275681 0.6983882004225058 0.102 +0.1321843918862363 0.1653731169268626 0.102 +-1.659524635506089 2.630195314273397 0.102 +0.9581372576256911 0.6502658856771708 0.102 +2.096067927672278 0.6440860282945555 0.102 +0.8852992818212716 0.9598393409367967 0.102 +0.736209163994864 0.06444244133187876 0.102 +1.570908773894406 -2.855075118159012 0.102 +2.510272961682687 1.004000597546874 0.102 +0.07953452887332418 0.4974149917676443 0.102 +0.494547746535962 1.067728907702558 0.102 +0.8978855950305262 0.797603244920446 0.102 +16.44626543346513 3.911982064913581 0.102 +0.6611628842099594 0.6559465477497232 0.102 +3.658876875795605 0.1552702042398793 0.102 +0.2835155415199789 0.7079542773483415 0.102 +3.717298262736171 1.860730722710765 0.102 +0.3541791158423329 0.3310915020357812 0.102 +0.5994142589336248 0.05165083921239642 0.102 +-0.245347092382279 0.4032809765939014 0.102 +-0.2664454867816818 0.2990449470432139 0.102 +2.776415428634945 0.3701848231511293 0.102 +3.601211404410493 0.8918896455306884 0.102 +1.662131479652241 2.134460841646996 0.102 +0.9876442244730439 0.5842563281973885 0.102 +4.034561693967392 2.07689953429592 0.102 +1.20732264548594 -1.984389604563845 0.102 +0.2325417096249999 1.073372421841713 0.102 +1.082058410597627 0.5225461634085781 0.102 +0.8606035226406092 0.9640944771900369 0.102 +1.254973124501722 -0.03831075312246297 0.102 +4.840740818131553 4.409730410069168 0.102 +0.3740044215679554 0.3810996470511139 0.102 +3.197133754303817 2.720521715614203 0.102 +3.778041138157061 -0.03412098943436199 0.102 +0.7690926635156087 0.4574646910691693 0.102 +0.3544861862706381 -0.4050171947639433 0.102 +0.7254899258031225 0.8505513928831001 0.102 +0.4641871043650745 -0.00947862982235036 0.102 +4.832712773970213 1.023163569568839 0.102 +5.158868585113956 2.374379409371727 0.102 +0.754208987538256 0.2994771163781275 0.102 +0.9914281579396138 0.033728208920191 0.102 +2.616050738056982 0.4297306554691063 0.102 +2.037424452561986 0.8338852778706961 0.102 +0.7102330344669345 0.5103848677000263 0.102 +0.6960025155502851 0.3880199425317242 0.102 +1.415196965732037 0.2961821270750942 0.102 +1.009047435656093 0.2107170859386146 0.102 +0.9862348604805546 1.266122075731118 0.102 +2.861495728236049 1.1697290868191 0.102 +0.6402515353174777 0.7087164121816287 0.102 +4.041494311193134 1.593869199082677 0.102 +2.237413148413779 0.8167113683700686 0.102 +0.003168309117172108 0.9518691991791233 0.102 +0.4210157292885435 -0.09977977321714986 0.102 +0.8264939121721853 0.7640339101731944 0.102 +1.098846364367635 0.243971147202982 0.102 +1.027339669415273 0.3566806478863452 0.102 +1.77210039480945 -0.1306226589102025 0.102 +1.059561042115244 1.521236552507717 0.102 +2.802590121650726 0.748880711965547 0.102 +-0.1167456724833755 0.8071939620088354 0.102 +1.475896808373332 0.238166785086029 0.102 +0.7727738570837809 0.01740623564850253 0.102 +3.145833338697752 0.7257833452183796 0.102 +0.4469903996930459 0.2483446707291128 0.102 +1.901340036316963 0.8856228890440296 0.102 +0.8979755916897179 0.3046345035026929 0.102 +0.9171281223965865 0.8922268940742026 0.102 +0.0648184588908922 0.9384277808174492 0.102 +3.74226474228154 0.9831389097821088 0.102 +3.047452162561706 -2.527905090985741 0.102 +3.854244909886011 1.322306799453943 0.102 +0.8485378851270915 0.9360649929516076 0.102 +1.035866546118817 -0.0447492744386548 0.102 +2.177630004634257 0.6819216984258667 0.102 +-2.534959805694949 1.605737398772185 0.102 +3.411130714166594 0.6606069278381643 0.102 +0.3519682429608108 0.456729704310812 0.102 +0.1328485723155532 0.243274488926537 0.102 +16.86004044950575 1.852738189805878 0.102 +0.9237834321939795 1.802722563982931 0.102 +0.8713820744724003 0.02513703822195088 0.102 +3.149907485666577 0.3217833693277016 0.102 +3.071335238777816 1.187758455702698 0.102 +4.803635333877786 1.192883267971927 0.102 +4.61671061877823 -0.5401141770282798 0.102 +1.077963016501555 0.3629251138368425 0.102 +1.326814969806767 0.5104881947269548 0.102 +1.688583339877039 0.7637278522455238 0.102 +0.7171511840384477 0.6496096114138381 0.102 +3.295093939580829 0.6320403689348588 0.102 +2.390255909563151 1.489162332863939 0.102 +1.075485133964448 0.4722322516111082 0.102 +1.05120090545062 0.5527370537552836 0.102 +-0.02138943504751057 0.4012896464560388 0.102 +-0.03344320689257794 1.057114111794317 0.102 +0.9838830370425173 0.7256404552379531 0.102 +0.1275037588030017 -2.238032279370053 0.102 +2.804040875797136 0.9279601123973833 0.102 +2.690851483158386 -0.3248945393867397 0.102 +0.1838648655581359 1.028661515042598 0.102 +0.8726430569488161 0.9100243390164 0.102 +7.091418053550004 -0.06175530030054128 0.102 +0.942185577527151 2.232111316539971 0.102 +2.373548530391637 0.7562972229515119 0.102 +0.1575578412605942 0.4669371845643123 0.102 +0.2683340863387775 0.005285605319966518 0.102 +10.22736457984733 0.4716507378805077 0.102 +2.601839287593043 0.06610043830336494 0.102 +0.6698794168237182 0.5151834873755199 0.102 +1.45781161486012 -0.8348062860533557 0.102 +3.800536899993751 2.470901769434326 0.102 +0.887312864612782 0.9822720678793544 0.102 +0.6762695936555886 -0.1332834780853081 0.102 +0.6388109294633036 -0.1652273991736719 0.102 +0.6527046535583848 0.803950998549217 0.102 +4.504574169764034 0.8457410481087445 0.102 +0.01051565243881873 -0.0480146080409557 0.102 +5.538122044006658 5.430246019296548 0.102 +0.9811506354251976 1.050143740211801 0.102 +1.038326240672082 -0.1491020500391651 0.102 +0.1879318393162029 1.060808129838798 0.102 +1.943552859066577 2.882449309889859 0.102 +4.130307577762026 -0.3511322259692891 0.102 +0.9271750004570198 1.107610108184102 0.102 +1.527711526028678 0.5907856401649036 0.102 +3.392105280519923 2.173981013874446 0.102 +0.7132213106019163 -0.1699005226962201 0.102 +3.117284524969548 0.42163206503622 0.102 +1.798021871582289 0.6341288813635338 0.102 +0.1487390819457248 1.025144883369215 0.102 +2.570221745737729 0.9073931647948403 0.102 +2.365047246630623 0.2801203673161903 0.102 +0.6871485095608062 0.7701246944100795 0.102 +0.9127164931942437 0.9402455578917226 0.102 +0.903168493904278 0.90958199665185 0.102 +4.624294112368024 2.094410285002808 0.102 +3.666111950961409 0.890737404874239 0.102 +0.9312301830101621 0.1806117386013402 0.102 +-0.04960577112154473 0.6846331712005911 0.102 +-0.4725979879496039 1.094417986395666 0.102 +0.3744118870233577 -0.09474403023497481 0.102 +2.470671658305106 0.05218799233285597 0.102 +-0.1186257025376316 0.3386413498084732 0.102 +-0.03614667667238539 -0.07554382515632987 0.102 +-2.842819871518934 0.4563119840291779 0.102 +8.398981965019662 7.924679880653961 0.102 +1.08551236155302 0.3159677326103564 0.102 +0.2660983466312638 0.8385876398328586 0.102 +0.72858814898281 0.817472327695161 0.102 +5.642801361663867 -0.7442708266478679 0.102 +0.7647651675180861 0.9002943471035462 0.102 +0.9462260142026043 0.02557096821658486 0.102 +-0.02699831029275352 0.07610122870761175 0.102 +-0.1314658472988897 1.378300215601392 0.102 +0.2687795721287944 1.09959919367732 0.102 +0.6892201800269622 0.552307027417637 0.102 +0.254994672972148 0.7775020197889804 0.102 +3.737012878723105 0.03668963987872906 0.102 +0.6715361849210062 -0.9614865135074488 0.102 +2.839454276315361 0.5845136731512508 0.102 +-0.01887167219672858 0.1789899910525548 0.102 +-0.06270158752195024 -0.09917681853492143 0.102 +3.139317323679275 1.190570408002412 0.102 +0.9725055892761925 0.4139129314224162 0.102 +0.2064240327815708 0.9564886723501905 0.102 +3.836869593628915 0.2391209789869078 0.102 +2.941449237696933 0.2533417809466622 0.102 +-0.06101858331693136 0.7961474243955963 0.102 +1.846894844304007 0.3704950116270775 0.102 +0.9185194948625643 0.8291014407566157 0.102 +0.07479526411127085 0.3521330434333086 0.102 +-6.771931854611838 0.5481466952152814 0.102 +2.98165018379834 1.240229535915374 0.102 +16.17049195456953 -7.99540051828455 0.102 +0.8037695519821765 0.7295124716029051 0.102 +19.14494729258787 6.007014963302728 0.102 +0.7545456239349182 0.5892140693629924 0.102 +0.6339682108531193 1.179010064488246 0.102 +3.606994855826736 -0.03424604508523919 0.102 +2.857533177119852 0.1959541222362604 0.102 +0.1867453141019538 0.7190307053126094 0.102 +4.549901401756385 -0.6849363464435801 0.102 +0.9192997913493623 0.3890528741893334 0.102 +0.3326096946365791 0.8792602839281886 0.102 +15.05610682558712 -0.1518387335185105 0.102 +0.1493616480676304 -0.02544399228399958 0.102 +0.3711093287782843 0.4108026613093079 0.102 +4.566155498255304 0.103881941191876 0.102 +2.092137476216811 -0.9322438250577689 0.102 +-6.232042558552201 -3.121393276840883 0.102 +1.372965942733658 -0.07885220712613329 0.102 +16.02163574336995 -3.179589669138043 0.102 +-0.05007129374959893 -0.3705565102613232 0.102 +0.05476146508067699 -0.3250366211247266 0.102 +0.1428216397494047 0.5509737266512128 0.102 +0.05161320488796772 -0.06489491568306853 0.102 +0.7308499405145054 0.7499477360295249 0.102 +0.8943548045462862 0.5779931537741493 0.102 +1.06931101854956 0.04189477708471475 0.102 +1.056269053398635 0.01908268756540491 0.102 +3.797162897657202 0.3973492856929484 0.102 +0.942888862994085 3.693986492682432 0.102 +0.881033946602655 0.8111223744288122 0.102 +0.8220259037262515 0.4544404303873048 0.102 +3.96397903083216 -0.8847769621833059 0.102 +5.796519102543106 -6.604488259955317 0.102 +0.900379469202686 0.8790305588697597 0.102 +13.76298041609218 -6.248570826671699 0.102 +1.027444131621103 0.7914379768855966 0.102 +1.052893281914323 1.008275727224573 0.102 +0.1967226690933665 0.686521594413502 0.102 +0.8691269984458672 0.8497790427370728 0.102 +1.050035527440283 0.7464076054388217 0.102 +3.846769157571012 0.6563119250618203 0.102 +14.36999229382404 -8.006146524605553 0.102 +-0.09510686969211296 0.6291776798441561 0.102 +1.014991171582274 0.1055526229815407 0.102 +0.9738936737743941 0.1869022276365422 0.102 +0.8934103733643783 0.1434398248245093 0.102 +0.9212914989512466 0.1491736225475061 0.102 +0.7510269481226004 0.1738492088607089 0.102 +0.9201725061124884 0.8011322950331329 0.102 +-2.205973662725818 -0.740908991415659 0.102 +1.069124518691783 0.8438550892361824 0.102 +1.129130671501642 -0.07491291141331631 0.102 +2.253737284281337 1.873061814227184 0.102 +-0.002419109425604634 0.3089225171130984 0.102 +3.426291427841881 -2.235819947819429 0.102 +5.252765957689061 0.9034983920323232 0.102 +4.287517005234543 1.080764325968269 0.102 +1.277329193680945 0.1313609586166509 0.102 +1.016677670252828 0.7175526126782685 0.102 +0.2993877123532699 1.014038380210859 0.102 +0.9047422969644147 0.001216277386827737 0.102 +1.097790335363698 -0.1773202569834437 0.102 +-4.335922008456722 6.278561760650421 0.102 +0.252520829028624 0.3050158256472495 0.102 +0.1956265181913092 0.652885643717626 0.102 +3.350599292050251 0.6966519897606167 0.102 +5.786165145306197 1.034462177745067 0.102 +0.1226184405839486 0.04062299941283905 0.102 +0.2738161766382047 1.079726907138213 0.102 +0.6514876991001504 0.4402441944938606 0.102 +1.059039956266681 0.3369463267239932 0.102 +1.418190329857493 5.341385127802514 0.102 +13.56253911329315 1.396513772583325 0.102 +2.126405236478972 -0.3652902501728548 0.102 +-0.1295438766242554 0.2487476461073487 0.102 +0.244757601292791 1.093275850388352 0.102 +0.9150876871448688 0.8636092640434125 0.102 +-0.09662245413092962 0.296807990529518 0.102 +2.281056656220434 2.222882711118725 0.102 +2.685778744110694 1.551632689123826 0.102 +-0.09006168428507896 0.596324412596411 0.102 +0.8005105323580297 0.4130318687547844 0.102 +1.03036714311079 0.8484202575815774 0.102 +2.182570186601174 0.02541407792387352 0.102 +0.4365024153068449 1.084581541976616 0.102 +0.528934267598877 1.099731558977721 0.102 +0.8385308447111354 0.1011010593820644 0.102 +0.8415068073584143 0.8814522160063928 0.102 +0.9670976371986023 0.8051561996466895 0.102 +1.399615359533439 0.3704857090115535 0.102 +1.131356990102174 0.1178523332916928 0.102 +1.708988871533305 -0.4960660216894105 0.102 +0.351081279738373 1.110255182634445 0.102 +2.263882836741821 1.549475432018226 0.102 +0.8361300013537091 0.5391736747198151 0.102 +3.48364909858135 0.5076709295158032 0.102 +1.39018367795742 1.058226400922273 0.102 +2.429429981755311 -0.2899467072881971 0.102 +3.48795754333868 -0.1883645381826874 0.102 +0.8387412650730461 0.974723033946335 0.102 +0.7338100428416863 1.104316925559488 0.102 +0.7094965363236024 1.107890297268796 0.102 +1.615724057134534 0.547669330568566 0.102 +3.476718191384628 1.767465843457223 0.102 +0.9293854923069829 0.9455218797407636 0.102 +3.245992317744431 0.3337983122007906 0.102 +6.773229066776578 4.82946293659868 0.102 +4.091140502492074 -0.06876111702217176 0.102 +2.686543707324174 0.8230179555432824 0.102 +0.2849527456582803 0.2925311580259869 0.102 +15.24680450419198 -2.712058088090726 0.102 +3.122587132793043 6.716064063949587 0.102 +9.164662445307723 -1.988455817032183 0.102 +-3.293067165843052 -4.003132353129846 0.102 +0.8439833348484745 0.05781445229893289 0.102 +3.25486977516817 0.9609815492052216 0.102 +0.0004572921402100565 6.602381463726826 0.102 +0.8302200004702243 0.5926753054335959 0.102 +4.041822954457996 0.5998490881987902 0.102 +1.989474705808302 0.8339038102014207 0.102 +0.2644315366013263 0.7581738215431936 0.102 +2.222315204871744 0.9282546429552098 0.102 +0.937910638890584 0.8660285641518791 0.102 +0.9431035475876133 0.607334201051229 0.102 +1.807910293286049 0.3020347378682837 0.102 +1.284903498883004 0.740682947583839 0.102 +-0.6383829640364588 -4.537764853724988 0.102 +3.145418358801738 0.2334548404578427 0.102 +1.006439751806963 0.7626809232446754 0.102 +3.572225666924855 0.4025308645352859 0.102 +3.984551094042801 0.2009051334161297 0.102 +0.2622469854990243 0.4745136884838578 0.102 +1.095478460536569 0.9471103071345619 0.102 +2.302926160981927 0.7069464054441275 0.102 +0.8920447584052161 0.7252612228188039 0.102 +2.599366023120474 1.101006584675851 0.102 +0.9467850570314552 0.827207256372133 0.102 +1.4317663727571 0.03810236827350488 0.102 +0.8369918633111251 0.378851255724455 0.102 +3.48609833224408 0.8240368215506838 0.102 +-0.09247773982795637 0.908768665998768 0.102 +2.767556379201507 -1.175386369839458 0.102 +4.201980849935211 0.01108952300873672 0.102 +0.8838551248368017 0.8338608280716269 0.102 +1.133881758848639 0.03086826913813885 0.102 +1.399474662105439 0.8510205892899054 0.102 +1.071213687068015 0.8121779944082355 0.102 +1.104378840085047 0.8126092788257357 0.102 +0.6868969957835092 -0.2400819144233756 0.102 +0.9736313149844689 -0.113184939636237 0.102 +2.617736167393622 1.307228325979643 0.102 +0.08640970811223406 -0.1595292148561392 0.102 +1.12248325533627 0.1487328401581187 0.102 +0.03753092391424322 1.025736020858614 0.102 +1.002076429121278 0.7832817632059165 0.102 +3.981811699388471 -2.733306881357258 0.102 +0.9729169482664735 0.8981969120171693 0.102 +4.282089919629701 -2.016128153018615 0.102 +0.9858525174400193 0.7688674351329994 0.102 +1.004958667677176 0.6870666145689248 0.102 +3.461512449372619 -0.0532346229815885 0.102 +0.1610348251276451 0.4982544673228594 0.102 +0.6029924151464006 0.2117044200408913 0.102 +0.8844621797102857 0.8648653639438588 0.102 +8.114330748033945 -1.614649543252393 0.102 +0.2667883591653561 0.2024337397319743 0.102 +0.9079140602713092 1.093129283243383 0.102 +1.525929859085704 0.8064727555268656 0.102 +0.9506478934916017 0.003204465534543384 0.102 +0.725614033080647 0.1105482386572647 0.102 +0.8609211560773871 0.1374545003239725 0.102 +3.143425862697359 0.9091908871213026 0.102 +2.776803567916653 1.078597190707841 0.102 +0.7086529678052388 0.08304438901925873 0.102 +0.04170782604217242 0.9815328274752281 0.102 +0.9500407658038189 0.3532600286403854 0.102 +0.7444378255504795 0.6231859498372705 0.102 +2.588306801114582 0.5921855605992917 0.102 +3.667869279725701 -1.097324537007683 0.102 +1.363345830170167 0.09039361586654843 0.102 +0.4834591527527928 1.045202448143993 0.102 +0.9738145704781153 0.7445998782765401 0.102 +6.186102951743925 -3.194933848092486 0.102 +0.7983336981049377 0.1242896652551767 0.102 +3.860353908992479 1.587409467373581 0.102 +3.848718889431726 1.760213611400385 0.102 +0.7955602192468003 0.5939256634003158 0.102 +1.017548813684963 0.8210154721517877 0.102 +0.8898783447772616 0.6557266510459883 0.102 +1.052372696516745 0.7124958582634633 0.102 +3.573317341258559 0.5858331097410812 0.102 +0.9746876399473988 0.8721137933900098 0.102 +1.111976325286089 -0.1019105681380036 0.102 +1.094831039082582 0.366186267461767 0.102 +0.05638694148720932 0.07890844291793479 0.102 +0.6072465218016648 1.298059183049852 0.102 +2.293295371585505 -0.3583532017983334 0.102 +2.44485159807539 1.231384786057194 0.102 +0.3741742236127205 0.2899522184307457 0.102 +0.9942278719425242 0.8261781130291365 0.102 +1.147601785222259 0.8114236618226971 0.102 +0.8474473579237719 0.6322953480008215 0.102 +3.605296302695558 0.2372353968648445 0.102 +1.463129948706543 0.4367829827248764 0.102 +1.034686977138631 0.730918997087489 0.102 +0.02734315242422215 0.9602698706637747 0.102 +0.5483911493728514 -0.2201050508487613 0.102 +1.467660536909611 0.9355519366754833 0.102 +-0.009556352768029694 1.043595677246205 0.102 +7.055573802253083 -2.776348164151929 0.102 +1.051139540794227 0.4053604591024436 0.102 +7.492210720488833 -1.852579492376267 0.102 +1.905599588205722 -0.189609512843892 0.102 +7.920297748028689 -0.1759503097151347 0.102 +-4.105816015917396 -6.8818042896351 0.102 +3.068724480249143 0.9424448798330451 0.102 +13.53294477936497 0.1151923135346315 0.102 +10.64807324708857 -5.459617765296144 0.102 +0.9656311302349813 0.7839481245279251 0.102 +-5.741994460770059 7.190705089802663 0.102 +15.20607407371061 -5.514079980093651 0.102 +0.02517538458404113 0.1788236539830557 0.102 +0.1529164029871551 0.9026600931406343 0.102 +5.341026205632928 -2.618850466444822 0.102 +9.423856876362386 8.540671032823669 0.102 +1.900818213519341 3.430599251144593 0.102 +0.8245143229652444 0.9064109629983916 0.102 +0.7683953913554461 0.5013766691233781 0.102 +-8.273213104222494 -3.434114609519986 0.102 +1.919955155201265 2.123016830615291 0.102 +1.17306875383233 0.7399099250810132 0.102 +0.9509943190133654 0.8492125756086517 0.102 +3.985442343446798 1.280431545055995 0.102 +0.4058810526799709 -0.3046254462010445 0.102 +5.104010802074273 -4.588022676104059 0.102 +3.159151825752637 -0.6235254176480401 0.102 +1.033075613746212 0.7621947941519132 0.102 +-0.002182348354098283 1.318412106335938 0.102 +0.9980647398595919 0.7717256996241422 0.102 +1.003029906812652 0.7363129674106424 0.102 +14.96114156151822 2.630329278235441 0.102 +4.491413532459988 1.164346273437737 0.102 +0.08839410378120142 1.09678653719928 0.102 +0.112646342980838 1.091488045887723 0.102 +0.9736960632303048 0.8496099313009456 0.102 +2.208337416299585 -1.874515105082226 0.102 +0.8032523405679833 0.7665447027373545 0.102 +0.7505024470872765 0.7776979943224417 0.102 +0.9471993871696274 0.8870308735627496 0.102 +0.6280000874811291 0.04543659574656898 0.102 +4.903917543167893 5.128763443668665 0.102 +3.358242422942163 1.131485375353387 0.102 +4.034153596535857 0.7495704627115213 0.102 +1.075690409160577 0.7793128200192143 0.102 +1.105775614586384 0.7793811982196325 0.102 +1.123225223250051 0.7935652153760372 0.102 +17.97565803655597 2.341648336529556 0.102 +1.091714937530492 0.05672725020035528 0.102 +1.388899941864276 0.9270414109428206 0.102 +0.2411821962713432 0.1749692524032949 0.102 +4.136196073001312 0.8475421240577107 0.102 +-0.5677389568756492 -1.647088175642341 0.102 +-0.7519838440991385 -2.077910556123662 0.102 +2.836892580483553 1.031405085317059 0.102 +1.045816161675618 1.170296937571545 0.102 +-0.06238654060362506 0.1973688111947247 0.102 +-0.4170385447379121 -0.2089583104537486 0.102 +1.913974090772116 1.282422882312915 0.102 +2.195942898138677 1.258757250894561 0.102 +2.064897425054474 -0.4586514581587653 0.102 +3.295295516701146 0.4709589214783186 0.102 +3.427041964237331 0.4836146007971928 0.102 +0.8543687418223984 0.7816045130017196 0.102 +7.623718662365352 6.163125250562452 0.102 +1.053245116143982 0.6051223238577443 0.102 +0.181016778767263 0.878440927158623 0.102 +0.1035196227287858 1.050653280695974 0.102 +0.7453366993193227 0.5507616237197177 0.102 +2.834997306823235 1.816188987041925 0.102 +2.9626714094348 0.5541372274095274 0.102 +0.485075537332673 2.161202196950226 0.102 +1.045341321036662 0.7780431904887083 0.102 +0.2297433040727234 -0.1671508640513041 0.102 +0.3361599224068627 0.4681622798063874 0.102 +1.163151497614791 0.4629095811137579 0.102 +3.857236976108327 -0.3017306018215222 0.102 +0.01370640279417963 1.000960746926534 0.102 +1.057761518554802 0.7950316526178658 0.102 +4.546275255256452 2.451874923593595 0.102 +1.09593813374013 1.133703125160438 0.102 +0.04605639482471898 0.1128660302044482 0.102 +2.937093097454127 -0.2446472167816597 0.102 +1.485606674675858 -0.9994962098999313 0.102 +-1.536485614366047 3.765778686724591 0.102 +4.033590878647944 0.8509271778293269 0.102 +1.255222141608595 1.363102559268429 0.102 +2.134120270831171 0.4458444848717552 0.102 +2.940080520731596 0.1563990526911622 0.102 +-0.1158437707549668 -0.2120221627968276 0.102 +0.8642308916285408 0.5871839128903955 0.102 +0.9887536161115755 0.8044746049007663 0.102 +1.060722605381084 -0.7732338781300508 0.102 +4.274551313890627 5.554075444532761 0.102 +0.7304807639539219 -5.154147674093793 0.102 +0.5669088342426848 1.091117900855007 0.102 +0.296936119757031 0.727717939773073 0.102 +0.1398943568673287 0.3531250455485898 0.102 +0.1089638431616473 0.4584575361601448 0.102 +1.34002475162902 -0.2119789036532587 0.102 +0.4608141942808766 0.06920536919451484 0.102 +1.090039870108545 0.9175394711991809 0.102 +1.457099640813954 -0.1673115560498161 0.102 +0.03990137969898258 0.209930444974149 0.102 +0.5312930761697773 0.003263721743639622 0.102 +5.015036834916328 -0.182639687659688 0.102 +0.9357856282741283 0.9048493691420736 0.102 +1.026963855776734 0.6632469854367778 0.102 +0.4916017984822572 -0.06716085245182403 0.102 +0.8097924547215882 0.2310013256554384 0.102 +0.1152233338090311 0.5284340227640599 0.102 +0.9996758797420029 0.8741587519744586 0.102 +0.9903344025725568 0.9611239489059802 0.102 +3.389199544662802 1.043389189013979 0.102 +-7.032826036858866 -7.585059180683194 0.102 +0.4900285019011279 0.3040896861730855 0.102 +0.8752381741177857 0.1749963891309682 0.102 +2.537869426539895 1.974374017781692 0.102 +3.948791465106741 0.3824965474731948 0.102 +-0.122106386618233 0.4653662462352899 0.102 +2.654756222511405 0.1783501250482139 0.102 +0.1403121786182599 0.3205993820967473 0.102 +0.7004908540241461 -0.03246649297897759 0.102 +0.398579779985769 0.03615659928491974 0.102 +7.18935451264848 -9.098637140095997 0.102 +1.981271346914848 0.5372064794094055 0.102 +0.8564739029471236 1.110731265396449 0.102 +1.038813921405612 0.8096058766670839 0.102 +0.2455845192109051 0.2208793634088747 0.102 +0.08954950112664511 0.2901596464459323 0.102 +2.743688243522254 0.161331419424225 0.102 +0.2579560861416074 0.9131757238206626 0.102 +1.960826895984577 0.6034751305474492 0.102 +5.776867975757035 -1.767278051229351 0.102 +1.950267045715164 -0.08650254453900987 0.102 +3.600267515345602 0.6443207211981876 0.102 +-0.03082622149599065 0.3327555814334582 0.102 +1.479309080942484 0.6895357839762051 0.102 +11.71882179900404 -3.033075584840009 0.102 +1.314799536756759 0.8948484451286757 0.102 +5.767613693732233 -0.2313239080956381 0.102 +1.35504477656695 0.2789627271086078 0.102 +0.9039308852910261 0.2784629192940062 0.102 +-0.3318437947195728 0.7847581397492206 0.102 +1.552227441161119 -0.2699417958215408 0.102 +2.599180577410634 -0.6675145320045951 0.102 +4.711285352461433 -1.729602353591539 0.102 +-4.633948433067326 -0.7328633855929093 0.102 +0.8714735949334442 0.753716461547424 0.102 +-0.7779042340740349 0.01412279302449198 0.102 +0.1308899828631276 0.02763179338103357 0.102 +0.9541245674349345 0.6907040759339811 0.102 +1.05749935158774 0.8617162249606991 0.102 +-0.08360938340052132 0.9802407633899013 0.102 +0.1914403341053656 0.02464879100627148 0.102 +0.8990693365701776 0.4355449223615249 0.102 +1.439992666098825 0.5524858697952081 0.102 +-0.06431659859864505 0.8626048537714395 0.102 +0.885640654320032 1.113983484679977 0.102 +1.626232474985985 1.017680515362204 0.102 +3.450836074715505 1.155508364371019 0.102 +3.847274816876168 0.8692098264379997 0.102 +1.25467245280016 -0.1550500943424542 0.102 +0.3769742874286562 1.128876596432135 0.102 +0.1806647151149265 -0.04376095676682783 0.102 +0.408196821180658 1.220534683075303 0.102 +4.066741204839194 0.8708593147723077 0.102 +16.75976644483909 -2.303117337150079 0.102 +0.2055689048690685 1.073614627337083 0.102 +1.06313371996133 0.7625862301757889 0.102 +1.77010622498807 0.7820617206083372 0.102 +0.8080158944254231 0.09255190608118412 0.102 +9.551971605804113 2.83475230309504 0.102 +1.053007634485324 0.8281333581075284 0.102 +8.75661320886489 -2.977902105722208 0.102 +-0.07699337092894513 0.92367665269883 0.102 +-2.487631006090171 -2.068149217509582 0.102 +2.147247593841278 -0.1892928964324183 0.102 +0.0005193140798308688 0.9359939005809836 0.102 +0.04189060336845413 0.9423376901385623 0.102 +2.191951545341777 0.4682608968815162 0.102 +0.8258598457605693 0.1607345482273219 0.102 +1.498739354429971 0.9077401807597687 0.102 +1.000065401934016 -0.01502227892591405 0.102 +3.255392539943256 -0.0424488580760287 0.102 +0.07601983914470836 -0.04331449468364877 0.102 +-0.7177979302571337 -8.365612538475554 0.102 +0.3156027842911308 2.752780366814154 0.102 +2.241030015198125 0.2993021986863983 0.102 +0.9879043374262491 0.5536267900391783 0.102 +0.781196173051467 0.9263896717134796 0.102 +1.865407385164416 1.185358098587368 0.102 +1.065651601949942 0.648375153250488 0.102 +2.694035711713851 1.303674569613178 0.102 +2.472639733012189 1.60919967132374 0.102 +0.9456572432648169 0.7577261606736656 0.102 +1.315925298657056 0.2049990986888264 0.102 +2.280837314783023 0.3562256165515691 0.102 +0.7832843645791405 1.187642378341696 0.102 +4.797791066558955 2.962186092146989 0.102 +0.8757834835165179 0.2677433533752701 0.102 +18.910495957172 8.170144415236297 0.102 +5.90149307986876 -3.719543065387747 0.102 +0.7843673517505186 0.07407870862331545 0.102 +0.842992826302661 0.7352638824448613 0.102 +10.22297565097026 2.059192191645153 0.102 +-3.6413950831226 1.399887858647026 0.102 +2.663242824875271 -0.1576552230500101 0.102 +5.315213411518084 0.4771491769081484 0.102 +1.049789783115248 0.8831514743528782 0.102 +2.068513716145805 0.3011178391417139 0.102 +1.962499518460837 1.150354939633662 0.102 +0.7132401606816244 0.06055109909372612 0.102 +0.1350531789731657 0.8598401892882636 0.102 +3.733941933115894 0.30339038722029 0.102 +3.334505115220329 0.4037608434968819 0.102 +1.614738128587641 1.064728788643794 0.102 +0.3185870727326933 -0.1118124959759383 0.102 +0.2629534484715512 -0.5174688066326896 0.102 +1.054778570322126 0.08632830690001589 0.102 +4.812771860109997 7.990277622881305 0.102 +3.722895115393277 1.423025815612913 0.102 +3.733723824539322 -0.1757299883689604 0.102 +0.9269349014571366 0.2833311415983742 0.102 +0.781611190343825 0.6181313851259875 0.102 +0.02195276597686929 0.05538054392916354 0.102 +5.105610939146199 2.785432638993807 0.102 +-2.93332681574866 -6.423381650179692 0.102 +-5.542423855038649 3.446206951339404 0.102 +3.096270548674112 1.017866123401269 0.102 +2.17594520593429 0.2614389615968288 0.102 +3.479359607331976 -0.2806402705624858 0.102 +0.8536262070331306 0.5004482632445502 0.102 +1.306116241414401 -1.265781963446586 0.102 +8.917797857841267 -0.2996183827867898 0.102 +1.372758428686551 -0.3991511717716634 0.102 +2.246893836351149 0.4449619037338379 0.102 +-0.1150929792057599 -0.1126901937982479 0.102 +-0.1394277427024346 -0.1218459402000488 0.102 +4.093591445853646 0.5550133167258482 0.102 +0.6941285613923671 0.0369899332070396 0.102 +2.929255039563234 1.067512712569468 0.102 +1.068258053224481 1.04973286897617 0.102 +3.40770115697284 -0.06521992148197432 0.102 +11.08292621402616 8.187096954694319 0.102 +1.002092469778871 -0.1502367210425921 0.102 +0.06611039017773804 0.2500935436442662 0.102 +-0.1165549341337921 0.5617565163609208 0.102 +0.1482490366159679 0.766320658059661 0.102 +0.9889228988168675 0.6823337993927912 0.102 +11.76092381472618 -1.155387620953856 0.102 +7.457062050559963 -3.792026604339941 0.102 +1.056390986395318 0.1947790661206366 0.102 +0.168429048522065 0.6920384026144453 0.102 +-0.4231225930858267 1.674905535607479 0.102 +-0.6551397843087613 1.865265139195138 0.102 +2.769313084128294 0.1066931386565322 0.102 +0.9349885627347502 2.02140312728652 0.102 +1.905668546625684 0.03559674029748415 0.102 +-6.089698038758862 3.941237676087036 0.102 +0.3531780349844413 0.1989776451965355 0.102 +0.1820173061102339 0.4692980367244333 0.102 +1.019855297948127 -0.08207674880574686 0.102 +2.253993171610103 0.6626234053913524 0.102 +1.974428256784921 0.7118899555022118 0.102 +0.09053729110591649 0.006405047032413493 0.102 +0.8760945530899199 0.1298182015486938 0.102 +4.207046588695579 0.6624843317085335 0.102 +14.92426908504133 1.347346746671873 0.102 +3.929345708885863 -0.1559489189525861 0.102 +-8.153012895304897 3.024011731706512 0.102 +0.4991963728635853 0.05734010115582977 0.102 +-9.12478492960464 -0.4926558074373948 0.102 +0.28025961963489 -0.09956995555743091 0.102 +1.010860227768968 0.1945780759832905 0.102 +0.2400977528089661 0.846893288145914 0.102 +-1.978137901467675 0.5273939843894114 0.102 +0.3379674868726524 -0.2582971052832445 0.102 +6.61863439298377 1.781317635710195 0.102 +2.628031917752877 0.8962404804863783 0.102 +-0.27022962513736 9.164148864083025 0.102 +0.5906248138412951 -1.497126393796336 0.102 +10.18705849581743 9.15789103994352 0.102 +0.2139365165817648 0.2863955429177865 0.102 +0.1246910947775826 -0.1055577534242588 0.102 +0.5444636737471912 1.106076300207468 0.102 +2.636146524286952 1.23688595160049 0.102 +4.265093017509242 0.5829861099114271 0.102 +0.04916913332505744 0.3474662557645367 0.102 +0.03559588498816751 0.3657740266751531 0.102 +3.971832824005396 1.847597631832934 0.102 +2.927795169217654 1.956723262381578 0.102 +0.9737860590254716 0.6034644108687185 0.102 +0.2166500392334018 1.027979420230581 0.102 +3.584892377588313 0.9577165899599258 0.102 +5.51686117375233 2.319915195159523 0.102 +-0.1278878468523216 4.887133207121515 0.102 +-0.05026830398646934 -0.2666342078402589 0.102 +3.232982034754838 1.284007756901796 0.102 +-0.2601390681540984 -0.5543183328755564 0.102 +-0.09257908115572344 1.133196829709251 0.102 +-0.04684653167236903 0.1655043521157879 0.102 +3.000474141568927 0.956027077540195 0.102 +1.003205669505218 0.6437102645321031 0.102 +4.275584115697344 1.37237466534871 0.102 +1.024058329186742 0.01247424102252265 0.102 +-9.036212928336694 -2.237854671918158 0.102 +1.793111660041146 0.9875957402398782 0.102 +0.3278933375401609 1.132117390524029 0.102 +1.793899948501971 -0.7454760923735304 0.102 +6.453527784325177 1.207208256151837 0.102 +1.795359345258838 -0.2326695690140921 0.102 +2.253638371414312 4.100596898467798 0.102 +0.2572983249279255 0.07685857695405543 0.102 +-1.130494238415131 0.4954505569755551 0.102 +0.200381120021762 1.01434005533087 0.102 +3.547964085626964 0.6219504933130799 0.102 +0.7181623967867361 0.7837101787281247 0.102 +1.698804696035467 0.03350450932319996 0.102 +1.064839232593804 1.092197481623683 0.102 +0.06571559878284661 0.04819200364471196 0.102 +0.9426858884435789 0.5782040382061548 0.102 +0.8146648221204741 0.5301236224761831 0.102 +0.2191759310527053 1.098521120479661 0.102 +0.2228510239613943 1.124826730053222 0.102 +0.8696982646465512 -0.1896419767682431 0.102 +-0.1143523386627717 0.6096230511356657 0.102 +0.9975095307110657 1.178871246361989 0.102 +1.033746953988669 0.4218494676278737 0.102 +0.9923101209935896 0.4286678372291041 0.102 +2.968716302404715 0.4293550003757747 0.102 +-0.09974026816927881 1.620185402406218 0.102 +2.527877785106086 -0.0225086160855755 0.102 +5.008136770629054 6.213471542912027 0.102 +2.055433397023626 1.111620412941827 0.102 +-6.456997031407678 2.412657158001307 0.102 +1.172394494748936 0.3258904481081248 0.102 +-0.03735591190174326 0.2468849132756653 0.102 +1.375712893005855 1.198917438826835 0.102 +0.1734072351056106 0.9214245246926219 0.102 +1.049775191007416 0.2607378166313416 0.102 +0.8589177482945701 0.2063572288142843 0.102 +1.09710757846364 0.3846514368430432 0.102 +0.9352407857770346 0.4957111860614919 0.102 +1.057192862052581 0.6769436078724419 0.102 +1.885829873345017 0.5298833824745429 0.102 +4.14413677291887 1.092969893556687 0.102 +3.908549847601062 0.09893362007757327 0.102 +0.9594705842035547 -0.0421011406499438 0.102 +2.145625197588348 1.448583172758967 0.102 +-0.4748844712390455 -0.6388659579838701 0.102 +0.8062546833415831 -2.289424258394936 0.102 +0.2602592413042592 1.039378833874737 0.102 +0.6579653984556435 1.134028146529607 0.102 +2.93167947054308 -0.08964369156607412 0.102 +2.882047630015291 0.6197635304227389 0.102 +3.850470130431902 1.08183577890789 0.102 +1.753657873623132 1.082633662756458 0.102 +0.2196608408686617 0.9275971694555023 0.102 +5.245069574269357 -0.8966565965494354 0.102 +3.030923447791216 0.3534979149341146 0.102 +15.04924537957704 -3.719889094318826 0.102 +0.054811177016208 -0.0482462390532161 0.102 +-0.1572170275158886 1.085756822807309 0.102 +-0.474189258830741 -2.605785832585549 0.102 +3.264715686868781 0.7555759095862201 0.102 +0.2007691012670907 0.7642115228817347 0.102 +0.7601766662632714 1.120231294653948 0.102 +0.4701077138027801 -0.04744718731642912 0.102 +14.52277293568374 7.217605910333841 0.102 +3.034622549427062 1.413000694358868 0.102 +-0.08600614451107462 0.5650288140002944 0.102 +2.115325649407072 0.5278915140497917 0.102 +4.327646885032038 1.812434449349412 0.102 +9.924601600865516 -1.6253070158337 0.102 +-0.2796590591324857 -9.397732717202523 0.102 +3.87610624867413 0.3852628064537201 0.102 +0.2139333042770969 -0.06604105990847828 0.102 +0.9993467639076785 0.926889661781191 0.102 +0.1653954037468595 0.3451411672600344 0.102 +1.984702534460045 0.9485319565245975 0.102 +-0.1227721232280325 0.5296530419509877 0.102 +2.899415779317362 -0.3179784196427211 0.102 +-0.05951406827160535 0.3441158393921371 0.102 +0.3744255149019295 0.1019122709206852 0.102 +1.489240618338747 1.553428155127215 0.102 +2.29330424449904 -0.05722668886003852 0.102 +3.305220126482742 -0.397478932436693 0.102 +2.670003834250525 0.2551992991001391 0.102 +2.565963102462091 0.1926564885861305 0.102 +0.4496744300907274 1.468810227064611 0.102 +0.5964576150160968 0.1743332809781168 0.102 +0.08691550966036167 0.6960915394095469 0.102 +12.877276718364 -6.977250768751748 0.102 +3.477643181649933 0.3996441709185395 0.102 +0.8419242461379381 0.8132409569500544 0.102 +2.522890041701315 0.3616239665315013 0.102 +2.152731564347067 0.7346948102723135 0.102 +3.764144344586818 0.8091525896256152 0.102 +-0.02854301828474154 0.8133564855941171 0.102 +0.6186417251274984 0.05661362466569855 0.102 +0.823564751684821 0.5100208953114482 0.102 +-0.6335429247627502 0.915344056725351 0.102 +0.6680703679352704 0.275906174322263 0.102 +0.1277003062851094 0.288251038358341 0.102 +3.452917674831061 1.621585012227307 0.102 +0.06194198456290842 1.127096245305997 0.102 +0.2583725138755838 -0.0551530703351417 0.102 +0.08044881247817129 0.7502545220185061 0.102 +2.808440230471577 0.8092959065873749 0.102 +9.949903505901773 -9.399544936704054 0.102 +0.7432107519329477 0.4884097228983321 0.102 +0.5755977753062119 0.01606251118184551 0.102 +0.3301993022968205 0.07373746112462926 0.102 +4.610078301487755 1.901031389512021 0.102 +3.404617598934899 0.1982854720176314 0.102 +2.371904053000585 0.4367809126583795 0.102 +1.223441222207291 0.06891320298596029 0.102 +1.12377413780465 0.5775337921201846 0.102 +0.971271875151841 0.1408523098329733 0.102 +1.086935800045792 0.7127878220902654 0.102 +10.6236247754604 6.263541963755483 0.102 +3.626575354068403 -0.1231161344848901 0.102 +0.4141572501762228 0.2743437204858771 0.102 +2.239729439980937 1.430709005197718 0.102 +0.13766533418533 0.9458894053632321 0.102 +1.433077198156523 0.1137501363194682 0.102 +1.243532125068795 0.2431577026120025 0.102 +2.010891069985067 1.396873992603242 0.102 +3.22779772726129 2.326074699340669 0.102 +1.692929174310631 1.005413293024843 0.102 +3.452330575667949 -1.017774463039977 0.102 +0.7611827474788043 0.8109355923071695 0.102 +0.7057613772402889 -3.656444243777443 0.102 +0.7709437064080655 0.5698131965915647 0.102 +0.3464526298146673 0.4242103359849069 0.102 +3.939188027158039 4.6774785180925 0.102 +-0.06545486399203854 0.05640453064874891 0.102 +1.271042042165089 1.44061229818775 0.102 +-0.08714135362522304 -0.00792934044434688 0.102 +0.3149752188015055 0.09509942309122454 0.102 +1.879852813984337 -1.693976285949107 0.102 +2.79113707291949 -0.896315649075987 0.102 +-0.05825068890492896 -0.4964336409959536 0.102 +5.807038399109832 4.590560079144033 0.102 +0.04350949207423743 0.4415855600500242 0.102 +4.549263919220973 -1.355655877892338 0.102 +1.461037531979737 1.023776968738463 0.102 +-1.598428116197678 -3.438771938728565 0.102 +0.5016292368092051 -0.1654039861483096 0.102 +3.450111241926225 2.945775032248502 0.102 +5.844078064505243 0.3842128693652803 0.102 +0.1921891714678102 -0.008219213678446045 0.102 +1.004275214279998 -0.03562874937101045 0.102 +3.475585170816619 0.2326197811404312 0.102 +4.187034665414247 0.9279815733334337 0.102 +0.899575934585084 0.494927000199256 0.102 +1.411882242862105 1.113366219124618 0.102 +0.533055887689144 0.1398974410684945 0.102 +0.8242354005478039 1.129664020854721 0.102 +1.215526451782279 1.209240222805539 0.102 +2.824872279366036 1.067090025239715 0.102 +18.15526207119511 6.893363641215572 0.102 +0.7889732144129561 0.4452887084889424 0.102 +-3.44090652938788 8.443587978658368 0.102 +3.794379526088854 0.6079387643694469 0.102 +0.6299814438841103 -0.08118937820844278 0.102 +3.991940309209036 0.6351854935404435 0.102 +4.129837302677916 -1.130067231556588 0.102 +-0.1847270492557863 -0.0835471152995759 0.102 +0.3740277790474548 0.1970680273300387 0.102 +2.42392344406379 1.349946796571632 0.102 +2.213339482893191 0.9881918849341441 0.102 +1.088650722119291 1.097393335974716 0.102 +-2.459627747765941 4.489801598834123 0.102 +0.2447211919000277 -0.1439114847456855 0.102 +8.326621769704252 -4.790989960065061 0.102 +7.985268889866736 1.596658460589147 0.102 +1.083567581334528 0.04332888545590203 0.102 +-0.2500038030729595 0.8115832502254607 0.102 +0.2140579013712695 0.245771984258034 0.102 +2.41775912324884 0.6287213547178493 0.102 +-0.01211529784226479 0.8469410755861411 0.102 +2.408683693762275 -0.5008257614731488 0.102 +1.724042390658716 1.041570145156609 0.102 +2.854165541666817 1.371168958053651 0.102 +1.654918745751148 1.505984790878395 0.102 +1.121146825306726 0.6705822642818282 0.102 +19.18053217404799 -2.838262336230342 0.102 +1.434557223958252 -0.2602869392722829 0.102 +1.107283075668887 0.08165980830648609 0.102 +1.23631110121212 0.869691230880228 0.102 +1.18116523262608 0.9240681374240802 0.102 +3.923793780388848 1.237087158366871 0.102 +2.671129283394841 2.352851342440076 0.102 +1.567590436219799 1.096517156951268 0.102 +0.9422422058762595 0.157454086549357 0.102 +1.932167247230316 -2.102815476561919 0.102 +-0.005516387814192518 0.2662996631201363 0.102 +0.09609405780193664 0.5529446717632198 0.102 +0.9362727513388373 0.2065265308481784 0.102 +-0.08621902650538632 0.2855787399234096 0.102 +1.537685703689272 2.000276829666649 0.102 +1.109544373041126 -0.4385179726634607 0.102 +2.534612708224061 1.37543613670643 0.102 +1.029672348253417 1.103321634282507 0.102 +0.3442589432523902 0.9057996327460526 0.102 +3.910620385119255 -0.6222751895556885 0.102 +1.002288777983424 0.627894150892978 0.102 +-2.685624043502016 -1.633696085407118 0.102 +-3.615681900914202 -1.268262314236794 0.102 +0.0145027282318942 0.9290922076692882 0.102 +0.8136352384857066 0.9347964455557083 0.102 +0.8927377598239081 6.341145943549679 0.102 +2.898132002916467 0.6822044439512805 0.102 +3.298604214998165 0.2375949785459355 0.102 +1.562825756440516 0.1596665678994819 0.102 +0.1618899019301214 1.090326736426184 0.102 +1.030844853643076 1.069744789829642 0.102 +0.4834849260411078 -0.09393691677063741 0.102 +0.7798460282133748 0.7629949861382812 0.102 +4.202760075469825 -5.675209980189988 0.102 +-5.481834835147944 -0.2476076269453159 0.102 +-6.409554203729227 -0.6599216897680774 0.102 +1.096746042307537 0.8458784031394693 0.102 +13.28888887823402 -8.930793336051753 0.102 +3.007041508248768 -1.797736895366189 0.102 +0.7738476664763445 1.34196794259297 0.102 +0.954775158524102 2.482643296794249 0.102 +0.1033746327593233 0.3240951545281063 0.102 +2.649210792788083 0.3440977454091929 0.102 +3.467009082998364 1.071903970693699 0.102 +3.042333408080759 -0.705961595935331 0.102 +0.9134022431320895 0.3213490743067982 0.102 +0.8146369520078537 -0.5916989202480974 0.102 +-0.08519622561254923 -0.07331057980627537 0.102 +-0.2112485407746638 0.2913127148726897 0.102 +3.012656042670847 1.038834094816007 0.102 +0.8532467906874364 0.1597617354209436 0.102 +1.014150960880693 0.4841584525870936 0.102 +0.1433247393081716 0.7044308601480562 0.102 +0.06114455192146122 0.2882013697449132 0.102 +3.992610721647525 0.9506227037917456 0.102 +1.058546370111057 0.4821102950611001 0.102 +2.717051729213285 -0.2463037570621577 0.102 +1.557341529519548 0.9934526465146597 0.102 +-0.1911594495934968 0.2605295941314519 0.102 +2.246888189826957 -0.2418775109592845 0.102 +4.022235569950914 -0.7044222733957309 0.102 +2.557082553035855 -2.808393179793994 0.102 +0.7373528807027195 0.2759078498555894 0.102 +0.280860642563243 0.2194466079489994 0.102 +19.13730597851313 -6.169676652263472 0.102 +2.181139826952092 0.08181820000690274 0.102 +-0.1030654244499786 -0.05034411089719212 0.102 +-0.1149948246861061 -0.02992635013840528 0.102 +5.404028329423874 -1.921900414790332 0.102 +1.990927305681166 0.15377224960741 0.102 +0.1020751189666115 0.4051873712987912 0.102 +0.820986100977851 -0.3194036315436657 0.102 +0.006758978877412116 -0.02038350327133986 0.102 +2.418716517903544 2.199570852458434 0.102 +0.6244743112366559 0.07122016171760119 0.102 +0.1071370316913857 -0.03585024075888306 0.102 +0.095957210169962 0.8674620460937418 0.102 +-0.09725285497673845 1.012539904918818 0.102 +0.03534579715041598 0.244824982023032 0.102 +0.07109115195191125 0.2208046609629167 0.102 +3.035784963629277 3.419206951701624 0.102 +0.2686814127641227 0.9301069920047257 0.102 +0.8548091373781962 0.8331695548894361 0.102 +1.322535894051391 0.3699696602666636 0.102 +16.06621564514002 -1.296368567027585 0.102 +0.7059527959550395 -8.219243169462136 0.102 +2.066754940895384 0.5586245810328226 0.102 +0.2277406689983104 0.1386051314097972 0.102 +0.02489765561329952 -0.01084699805391636 0.102 +1.651579829527118 0.9740267622828884 0.102 +0.9590947919959903 0.2059118334004502 0.102 +1.68744732517677 0.5354063008125864 0.102 +1.957974853399677 1.011049650308211 0.102 +0.3855725206435291 1.096491152274979 0.102 +-0.7897131998034492 1.312474458896984 0.102 +3.646000291230319 1.193315257955487 0.102 +1.551177695225535 -0.4074427341658269 0.102 +0.5690101416994846 0.1090661280299414 0.102 +1.709979933876826 0.2504706536965787 0.102 +-9.154914516903521 6.505624753904888 0.102 +0.6183272339673314 0.1288356399163869 0.102 +18.00140965512085 -0.1275866355852844 0.102 +3.016656137266783 0.7326456427824467 0.102 +9.180153487480528 5.253988561745736 0.102 +3.001031602538147 0.5107033513293502 0.102 +0.2725137634933394 -1.476783752374953 0.102 +0.2948731949148702 0.9364648384995775 0.102 +1.021304626401749 0.899070277963978 0.102 +-0.001494516158670156 0.7419906760354614 0.102 +0.7828336965653969 0.4745191461163989 0.102 +-0.1062330019564871 1.045290350823985 0.102 +3.338594762177834 1.494044833457102 0.102 +5.432655638518479 -4.946722291973101 0.102 +0.3086968052265934 0.03063720490840614 0.102 +0.3225307285006509 -0.03832034334381094 0.102 +0.9751762550583375 0.9319284424844346 0.102 +0.04715571894033386 0.8187647752026357 0.102 +0.2071647311661239 0.8115519888085846 0.102 +6.160440698474705 0.7479647323521614 0.102 +4.367790487850894 -0.03696574809093551 0.102 +0.5651604854531671 0.03836584493285752 0.102 +-2.041877518626519 6.149174581666971 0.102 +3.946747986317458 0.3059003364083053 0.102 +3.381055697858622 0.7675160414585817 0.102 +3.74068277201803 -0.6278059709810043 0.102 +1.984583605881826 1.227146513993489 0.102 +16.28405800974317 -9.089669558627339 0.102 +-0.1576682765648911 0.3446488943923904 0.102 +0.1071686592576072 1.013543259443302 0.102 +0.01239245884047509 0.3447301758543911 0.102 +3.42871718469443 0.130980451985095 0.102 +1.954832941396714 1.510768753236409 0.102 +1.588671999191489 0.4682724981719709 0.102 +3.024245882797904 4.285388766698239 0.102 +1.044405793013742 0.28304737358514 0.102 +1.065467761445992 0.5809722327133872 0.102 +1.078722525027553 0.8676413323985384 0.102 +5.062202693186125 -1.155831759658078 0.102 +0.06521139535367326 0.3802074399934962 0.102 +4.002170283803997 -1.060349988786809 0.102 +3.904395940628845 -1.155553659573544 0.102 +0.5168425682514829 1.114071922878139 0.102 +0.1200664265585572 0.7372317448610586 0.102 +13.8584609933252 8.237758127740433 0.102 +0.234949579107874 0.9619730426624791 0.102 +1.494300014193904 0.4877417445295693 0.102 +2.903031170206073 0.4718215911712703 0.102 +10.14923094214612 4.934383628037676 0.102 +0.9033135455115758 0.6788590773026579 0.102 +1.038600788519212 1.038925250885892 0.102 +0.2581661419663975 0.4915630159061809 0.102 +1.090302264952229 0.5793191438137134 0.102 +0.1722826699619625 1.10346615776584 0.102 +0.9323252467983851 1.138201587885959 0.102 +3.421054410415565 0.962437814268633 0.102 +0.830558154256577 -0.1038174228461473 0.102 +0.8758095661602995 1.393396113862578 0.102 +3.092395843053876 -1.067101533655963 0.102 +0.3038388649891909 0.3594988554141587 0.102 +1.775507916248628 0.1100411245622194 0.102 +0.3142079885286754 -0.06208857028842608 0.102 +0.5342907703724782 -0.05458256252134365 0.102 +7.868553844020114 3.448972081506939 0.102 +2.491485523492662 0.7337311921652481 0.102 +0.6644474364957651 0.146170499089047 0.102 +1.172670486285855 0.5760718023034646 0.102 +0.06660758000074504 1.232051716303874 0.102 +4.025388329757576 0.09555978531209885 0.102 +3.914973052681578 1.016085688826426 0.102 +2.841828829837611 0.9129606228111092 0.102 +3.435889024070867 0.7649563550996683 0.102 +0.3316591768676346 -0.008685208321007169 0.102 +1.575939656683393 -0.1146750198646502 0.102 +0.2704805257645138 0.8721924005531303 0.102 +0.9845325605158667 0.08562720578628397 0.102 +0.9809004392179405 0.06362180550592211 0.102 +-0.2295012218345658 0.1191257824900529 0.102 +0.8226648441899316 0.6951500228540811 0.102 +3.684411338621459 0.5405880963557772 0.102 +0.2032955953360486 0.0404102588545449 0.102 +1.482301274486784 1.389795562815771 0.102 +0.383117989665908 -0.02979000099813501 0.102 +14.81741744967134 -3.035546090052391 0.102 +-0.2924836984159698 0.9437205358135183 0.102 +-0.0979060212254861 -0.1211989354755285 0.102 +-0.08775375395465954 -0.1653595764006857 0.102 +3.801114707117764 0.4860268387106643 0.102 +0.6722255909151852 0.2140875288213048 0.102 +1.083185275732128 0.1572174057136664 0.102 +6.639827511532495 -5.151240233896821 0.102 +2.684479576902222 0.4798367425995158 0.102 +3.671207944405687 -0.3854448983222334 0.102 +1.630036604053968 0.9030929082316623 0.102 +17.88836296532099 3.799363341785821 0.102 +0.8985921507108443 0.1691754691379447 0.102 +1.02965992697434 0.4612669349043041 0.102 +4.608786917996448 1.341256186725314 0.102 +3.115018371677602 0.656137863226029 0.102 +1.271566053454604 -0.002402238785474704 0.102 +0.9872459149074 2.778420316875347 0.102 +-0.01221589547980251 0.3619021746655803 0.102 +1.547643785895126 0.913192149879489 0.102 +1.802658334141641 -0.0003957022692694309 0.102 +4.86473959731787 0.8447216475159244 0.102 +4.197364339080576 0.542156776359489 0.102 +4.066595286058321 -0.2931093126923442 0.102 +3.350175339050861 -0.2719533863021317 0.102 +4.374051148464403 1.653734129828722 0.102 +-3.117217991600541 -9.271740347313264 0.102 +0.8552311266369838 1.324416954617967 0.102 +0.1680715414500256 0.9821644182824063 0.102 +1.89802600943551 0.3281978147534534 0.102 +0.8651086158118791 -0.09214421631135336 0.102 +1.799250131849136 1.047699127643727 0.102 +-0.04634696641014575 0.09212702699045668 0.102 +0.166157649835871 0.04906974916825203 0.102 +9.549528126031657 1.084030402097003 0.102 +13.9140869861516 9.102970939817791 0.102 +7.642841730972102 5.126997569090764 0.102 +0.3345794913059131 0.2651875276186502 0.102 +0.7803971526805219 -0.06481261927976234 0.102 +0.8754735014899712 0.7769313254902892 0.102 +-6.269220298506688 -9.139823127309947 0.102 +3.838944828179024 0.5534278118904045 0.102 +-0.1167170949691761 0.6463618666166616 0.102 +3.036977968857881 1.119253849800987 0.102 +0.9840976232048826 1.010443929199323 0.102 +0.9022988426501316 0.06722739053284486 0.102 +0.9209763753047751 0.04787569609976976 0.102 +-0.09907201121074159 0.8281869087934093 0.102 +2.798787232146514 0.9684919137180558 0.102 +0.9210639611094645 0.229841582274819 0.102 +-5.436953438995262 5.129488258998413 0.102 +2.85407516500111 1.089881506912721 0.102 +0.03277779633486513 0.8513909833618548 0.102 +1.093920847544747 0.6051430455420647 0.102 +4.286924244157871 -0.4625730579231899 0.102 +3.747982597143324 0.5043474665123616 0.102 +0.2219251910470165 -0.01063688301255173 0.102 +7.258027032325053 7.425912023306855 0.102 +2.896760318809356 1.010486380512654 0.102 +0.3883787751957883 0.01085374544572653 0.102 +1.748651954682022 -0.3054065632821345 0.102 +0.2161012252167176 0.4785815641774565 0.102 +4.691581923350848 0.3549424547292721 0.102 +0.910281460604568 0.6948719854025535 0.102 +2.038329207903069 0.3741193287243212 0.102 +-9.036957652096424 -6.135668031556984 0.102 +0.2570621229116505 0.02617266162928248 0.102 +-0.1777705533571452 1.052820758669751 0.102 +-0.2522967992777188 1.016018396424599 0.102 +1.178794738817421 -0.1069628878560721 0.102 +3.671761811862915 -0.272353677697632 0.102 +2.533491704222826 -1.129356490307396 0.102 +4.719253633305502 0.5047364788522679 0.102 +4.243342420543873 1.616216170665106 0.102 +0.3006193062636467 -0.001252675680084632 0.102 +1.778927315069765 1.434361558599243 0.102 +0.1132040592122271 0.7628620002993995 0.102 +3.782945983245873 1.159042913548046 0.102 +3.83255960179465 -2.238104905423749 0.102 +-0.6323619428179394 -1.091067656046435 0.102 +2.02896673779684 1.955717217765281 0.102 +0.4823035519929289 1.105302740814554 0.102 +3.328786744669473 -0.0523666649314122 0.102 +0.7715991263543163 4.187842976580209 0.102 +-0.02018494173536634 1.17388628308086 0.102 +17.16863824370035 0.3952857894763691 0.102 +-0.4251146932182769 -5.513261334416288 0.102 +4.571159280692981 3.436466160212907 0.102 +1.182977848152227 1.136091289110702 0.102 +11.10265002412288 -8.040458383860884 0.102 +12.22249723244122 -0.07144838924153428 0.102 +16.3842113411408 0.4434153815658027 0.102 +1.155962749019048 1.095288339329863 0.102 +-4.96431960655452 3.579010095224228 0.102 +1.223975316448179 1.023635947191556 0.102 +3.142492511988221 0.4764830048548401 0.102 +3.511735562857138 0.3458500904014129 0.102 +0.1951205708639911 0.3068039197246888 0.102 +1.51988864540239 1.071353660528516 0.102 +0.26152584976413 1.122231246830194 0.102 +0.2883972358620501 1.12092513536556 0.102 +1.028535892350487 -0.1121266507814624 0.102 +3.227652512396263 -0.9671436512104086 0.102 +0.2396045006031827 0.3559035389044484 0.102 +0.08775225562041433 0.5148150217258346 0.102 +3.247562527751878 -0.7342656141586635 0.102 +-0.1435911173341028 1.238005764027854 0.102 +-2.101873451360395 1.053627420480245 0.102 +6.961317790660676 -0.7880215876836356 0.102 +0.6969630432577198 0.1292344024176066 0.102 +0.5134219430333444 0.03378427128061304 0.102 +-0.1692300612213269 0.7889633662033344 0.102 +2.446039084339923 0.265876647649706 0.102 +2.179063487906724 -1.184770288813046 0.102 +0.2845155361358275 0.1834740604260852 0.102 +5.00174625186293 0.1470887036739981 0.102 +0.3443892466484533 0.1000482853516195 0.102 +17.25407677312046 -5.55697678926979 0.102 +0.07806819937905946 0.328849474331518 0.102 +9.958223549368551 6.79315031909081 0.102 +4.067355289251948 1.733794069596423 0.102 +0.960737867854406 0.2279968489076696 0.102 +3.900799917726919 -0.02266445484185946 0.102 +10.77883366766435 3.088762583626552 0.102 +-0.3660954656902074 3.719203897534186 0.102 +0.8837670317629155 0.2452365869771006 0.102 +-0.03380252235236425 0.1373910180932817 0.102 +1.351718794670842 -0.5742785020310328 0.102 +0.1953819770982848 0.907655319454683 0.102 +0.9238418163423825 -0.1155324106648538 0.102 +0.1091593725945467 0.03961113475904311 0.102 +1.081354333692239 0.7469670520112024 0.102 +0.2220251590278767 0.4382110866744532 0.102 +2.589456552776012 -0.3553483342248104 0.102 +1.674721878572825 1.073356323488631 0.102 +7.952231418379919 0.7182151045660619 0.102 +-0.04927578687253522 0.9010377953316817 0.102 +2.617983195117673 0.334159078941333 0.102 +11.45241789699508 -7.518549892957406 0.102 +3.900686678397335 1.064670185843338 0.102 +2.235590975539449 -0.06833368909941623 0.102 +0.6479725191340799 0.1854666153807565 0.102 +8.436337416129511 1.988412030602788 0.102 +-5.320858052768 6.128218077813572 0.102 +0.5211304624645685 -0.03581415093338639 0.102 +2.311359102568242 6.01124070687346 0.102 +3.123943537708127 1.349704718026724 0.102 +1.824604107265244 0.2514200212482619 0.102 +0.8167351251538715 -0.07308225763291686 0.102 +2.583336879547612 0.5313957859023157 0.102 +0.4596612563842583 -0.1284201284351683 0.102 +0.8447759503904697 0.5190352195639827 0.102 +6.246983753764515 -1.147599811132669 0.102 +3.939161747935819 0.04064321201233517 0.102 +0.2744962617209862 1.002565445329533 0.102 +0.05910076964328723 0.3094527949634399 0.102 +-0.129497657097224 0.4458473919321518 0.102 +-7.986854653092551 0.05606291099959403 0.102 +0.3220926536110284 0.4597868247829217 0.102 +-0.0940062709063041 0.6867360036535279 0.102 +17.37638384351324 -2.9508946652344 0.102 +-1.700562564167818 9.038108286941494 0.102 +2.380877196193804 -0.6839804109530007 0.102 +3.793068072236235 0.3362504251376951 0.102 +0.397543337923947 -0.09816357720441074 0.102 +2.427191844496146 0.9973205598712119 0.102 +1.08747219676349 0.4360684341807797 0.102 +1.568887432864985 0.3855693914112398 0.102 +-0.09680690358778678 0.8660187235920341 0.102 +2.801115543804018 0.6917637691927464 0.102 +3.564640892352776 1.02414768128466 0.102 +0.1664922186569105 -0.002570001575692345 0.102 +-3.876673981979716 -0.4600044408272073 0.102 +1.495420071376066 3.140086241113878 0.102 +0.961971526821424 -0.8992771510086057 0.102 +-0.04125698821675233 1.080484427157541 0.102 +12.06819480590104 6.94559572417237 0.102 +2.259252896288822 0.07359197537567926 0.102 +0.1700899080846635 0.1935622421304518 0.102 +1.671050482341766 -0.06972978731286794 0.102 +4.338847377791122 -0.3495488353431175 0.102 +16.28879549099322 9.172190332754315 0.102 +5.495387998510115 0.9691880401925629 0.102 +0.01552494191627177 0.1576841196025597 0.102 +7.822262768072631 9.116440559395382 0.102 +13.23195193353691 -0.8837285372913162 0.102 +4.334617902528482 0.4405493282575765 0.102 +2.096344809645871 1.175528008565467 0.102 +3.199579857099807 0.5237798045936487 0.102 +1.757788147768506 0.2788034687902232 0.102 +0.4307010326433389 0.0101583678321193 0.102 +11.02445956357636 -4.166422954571132 0.102 +-0.0903087474885421 0.1760501045908335 0.102 +2.440049795767319 3.253632644425502 0.102 +2.152941490085285 3.104955237617717 0.102 +0.5071689843385094 0.1414635512462539 0.102 +0.1974200698980464 1.231795947790048 0.102 +4.387675892798879 1.473503166993238 0.102 +0.710148621257663 -0.7098561543271943 0.102 +0.9518507542156771 -0.1264859199908421 0.102 +0.009559695112085362 0.8700029154090523 0.102 +4.755121520703134 0.1173991286807623 0.102 +5.90436419021789 -2.62206103384877 0.102 +0.1051582819055565 0.970284211789862 0.102 +0.07792086351361303 0.832428781797702 0.102 +8.420351615473887 -8.18847344844497 0.102 +2.056353972178146 0.6234367881779335 0.102 +-0.2399861581607586 1.159002910157907 0.102 +0.7557378173996958 -0.06281260668275052 0.102 +0.141499106478211 1.055516622279939 0.102 +0.1341584960323866 1.008282833199985 0.102 +3.207856657566794 -7.08130138669203 0.102 +0.6458428174051996 0.08215347540525998 0.102 +1.333611960508051 0.564020346835886 0.102 +2.798579689009994 -4.282093620753803 0.102 +3.340084439071384 -3.105679733897057 0.102 +-0.01364734922103106 0.02198693251844448 0.102 +3.32063824353186 -0.2027372275503608 0.102 +-0.1088289557076632 -0.7124118893814825 0.102 +0.1637479204208084 1.066792987721583 0.102 +0.8308138730823137 0.2796952067591503 0.102 +0.3669226881120374 1.178014065534284 0.102 +0.8337764597492419 0.6232446413600912 0.102 +4.060340701740309 0.03810235581073852 0.102 +-6.620475240054469 9.19568826168369 0.102 +10.09397309145311 -0.4707701311432746 0.102 +-2.740693928416341 0.8285910827520534 0.102 +0.3542330672618237 0.7197075068443169 0.102 +11.0437846506915 1.78105069104048 0.102 +-1.073279177987544 6.596498176124963 0.102 +1.444373539021841 0.7720224355319062 0.102 +1.849022581101379 6.901567680833841 0.102 +1.857976316973264 -0.9861628911114015 0.102 +18.93861591817074 3.494841398816175 0.102 +4.06778929176224 0.2008732308860366 0.102 +3.822972914352555 -1.861809665781567 0.102 +-9.349970692961339 -4.617476688290704 0.102 +2.777533742475987 2.064517425917784 0.102 +3.85899891298795 0.3163753119884456 0.102 +2.825703499684078 -0.03145963611130378 0.102 +4.608174461165564 -0.8917297378771445 0.102 +0.9778141022302633 -0.01729627704637183 0.102 +1.555333953883725 0.05355822287435112 0.102 +-5.141566296960525 1.955628651463879 0.102 +0.4559472594195154 -0.0689210902094254 0.102 +0.2118239836918065 0.8852884939776213 0.102 +0.06700865148520704 0.1913965340098076 0.102 +2.013175168892924 -1.89750135554019 0.102 +3.977795610555122 1.381556208729841 0.102 +0.5751670444143864 -0.03066697347809945 0.102 +0.9767396336749578 1.112558321563429 0.102 +2.049660667313317 -0.01254931529025447 0.102 +2.699251284164127 0.05899668963779558 0.102 +0.5522989061711595 -0.1016737350244588 0.102 +2.333205311191857 -0.1004000436068095 0.102 +-0.1575784817101105 0.7475182837340244 0.102 +0.5905429145187574 1.140782039760506 0.102 +0.8683421700370936 0.3509937660168633 0.102 +1.281104306859074 -0.7784317246613858 0.102 +4.481753013541491 1.860559878926214 0.102 +2.422136568696843 0.1808978705634674 0.102 +-4.347963938630089 1.731578596036539 0.102 +0.1410247242700291 0.2176582534799034 0.102 +1.036957772877162 0.9207098719700483 0.102 +2.324769375255239 0.3730124059200032 0.102 +13.51174394055782 -7.956277644322815 0.102 +2.735826027497825 -0.4570334624661151 0.102 +1.09271673061232 0.463651623816386 0.102 +2.551758716440758 0.4328425014448196 0.102 +2.346643406051356 0.983632365604824 0.102 +1.058849706860124 0.515401675211362 0.102 +0.8616573040256099 -0.05710956302885044 0.102 +2.1828169206852 7.583242278521529 0.102 +16.69398025756643 5.810766475603778 0.102 +-6.27678942529373 -4.507660703748524 0.102 +1.081514235144396 0.8527253777401028 0.102 +3.597870015283258 -0.4500707257451367 0.102 +2.964443005363693 -1.327710370061168 0.102 +-0.1794649504327049 0.5700691146739109 0.102 +1.295608637698779 0.8222447399189901 0.102 +-0.1211454440731769 0.9669290011597307 0.102 +3.421536343894545 -0.004846028627885995 0.102 +2.562348697781716 0.3708205020339976 0.102 +0.8006870417467895 0.8484021108414521 0.102 +2.854747265926271 -2.040670211598954 0.102 +0.4423215094096567 -0.1020571582318014 0.102 +-3.305481993310989 4.057363676131362 0.102 +-0.01970072572257954 0.1041778718449131 0.102 +2.486247035408477 0.09479203160861302 0.102 +5.365304167465182 1.638771460142193 0.102 +0.07234575554867193 0.9627223558246588 0.102 +15.57606914770359 6.749268433547681 0.102 +0.5858001681849424 0.08665910335364142 0.102 +2.427076515537611 1.134349762627452 0.102 +2.341452372688152 0.839906399858523 0.102 +2.758756634713203 1.270183481933101 0.102 +1.213022550510242 0.4136198393617481 0.102 +-0.2980235006025176 0.003423744953673306 0.102 +0.6182757793995839 -0.05394776853376591 0.102 +1.243381250848811 4.649667965190559 0.102 +1.593131517626557 0.8522669303312251 0.102 +3.948452115782176 1.088947029145136 0.102 +0.2927205224448999 0.08677474078644266 0.102 +3.550793665483252 0.264033147587425 0.102 +3.554802216251804 -0.01025478188224853 0.102 +0.2177943782423682 0.7551540516403076 0.102 +0.1480314219151246 0.8247103001011507 0.102 +0.1669775030376758 1.012188146370334 0.102 +1.468055585473809 2.575612944096798 0.102 +0.9778134465212324 0.04865479587426919 0.102 +-0.1129297322877565 -0.09257148527442446 0.102 +5.764424685850865 -1.375598123351543 0.102 +3.064263325839553 -0.3106089656561341 0.102 +2.42187651467489 0.863360806692373 0.102 +15.00187360404622 5.159009722373851 0.102 +-0.1078285840103073 0.7792080510189616 0.102 +1.04079542396714 0.4373963502499113 0.102 +-3.710897161636053 6.3469408152601 0.102 +3.713267455468417 0.1121798290297098 0.102 +3.744799434888268 0.1547995403346629 0.102 +1.715605280094956 0.6458916466417098 0.102 +0.2191651103069843 0.3852670935756001 0.102 +0.0206066798209902 0.1044756479516681 0.102 +2.894759325651555 -0.02494151261247749 0.102 +2.19146393096339 -6.285782495377576 0.102 +2.902996090792718 4.897940413265959 0.102 +1.650671395709871 0.2682557536267269 0.102 +-0.07499425474180507 -3.439480568444865 0.102 +-0.610957009054182 -3.688351287669835 0.102 +-0.2956979478373403 2.505822966246349 0.102 +0.08840841407610958 -0.1143775082910545 0.102 +5.250783405776549 -5.438249621378898 0.102 +2.234506184908847 0.3830887519763776 0.102 +3.092862110516536 0.705395000818776 0.102 +19.12298283608695 1.85711750739693 0.102 +2.117096925975699 0.07321397171953083 0.102 +0.4627554971460579 -0.08566164918352534 0.102 +-0.2016326392376959 0.6166353148261351 0.102 +3.821895138277323 0.9348658181823462 0.102 +2.660424608015397 1.116521335950437 0.102 +3.71423680308029 1.050589364708647 0.102 +1.112836145674154 -0.01749337449527456 0.102 +0.7955912487827355 0.2660414125509746 0.102 +5.105025278163337 -3.761704352185832 0.102 +1.627709967541413 -3.656732593125962 0.102 +-0.2481285888668879 8.067539248275038 0.102 +0.1600121125239042 0.292063254862258 0.102 +2.996296373825137 5.965938213328678 0.102 +1.386785021823992 -0.15185934928068 0.102 +1.895605254849006 1.371306393257354 0.102 +7.53963428184637 -3.247991864873812 0.102 +0.005115000560094602 0.2381760781401191 0.102 +2.943029556867877 0.1932074683293255 0.102 +0.902253926158221 -0.1467080170567915 0.102 +3.48961569635652 0.9943304451029322 0.102 +-2.925731968755168 5.513801878263206 0.102 +2.628847777897169 1.751092824553855 0.102 +1.765521403399583 -0.4384764502277422 0.102 +0.2155961365364484 0.1479303282704672 0.102 +19.11028754325077 9.134039548482312 0.102 +1.649666238633853 1.130475279401027 0.102 +0.9689108769593435 -0.0888290204717169 0.102 +19.2137172728735 5.100725471312911 0.102 +4.016259882912398 1.068023094227333 0.102 +4.109942893887576 -9.091686376247088 0.102 +0.6569847352024841 -0.03835830874077747 0.102 +3.566771711867397 0.9256557906310371 0.102 +2.805839867527907 -0.0792043196175391 0.102 +2.74091400107743 1.013854423368251 0.102 +4.234210525297181 0.1479224417435479 0.102 +4.243406368977258 0.05355349809474558 0.102 +1.054041163998051 0.1239250944732199 0.102 +1.073626091088107 0.1109312270827202 0.102 +0.4285907640057016 -0.07824739243534537 0.102 +3.401852699057313 -0.7115922210299506 0.102 +6.512261072055594 0.4879728235505619 0.102 +3.453367676749294 -0.4285468297424482 0.102 +1.065510364835108 0.4288231327613463 0.102 +0.06851231422683672 0.4799530476962539 0.102 +1.065830383135519 0.911515314241815 0.102 +0.9472164792246056 0.6763502782345248 0.102 +0.7087798517773924 1.217330843942899 0.102 +2.95308366530331 1.147989297378675 0.102 +0.5027736012298522 0.009590032519336151 0.102 +1.125681627025779 0.4146653712687051 0.102 +2.203538339995273 0.301560510270112 0.102 +0.1440876293861239 0.7982942799042685 0.102 +2.76663271802403 -0.0033943490851601 0.102 +2.536619399767722 0.9670410754058516 0.102 +1.231769257940612 0.6878791627284315 0.102 +2.070233219977465 0.7708747541483696 0.102 +2.287309991636779 0.1791670905177943 0.102 +0.148161987140446 0.7317557924614415 0.102 +2.419126558422897 0.3975037920490588 0.102 +0.9677951959119456 0.5041538348790232 0.102 +0.7658118592838056 0.1232654586525004 0.102 +-9.108785678644217 9.113084677771905 0.102 +-0.1322099041075316 0.5867494596745747 0.102 +0.3201000067764773 0.4288722560407595 0.102 +0.783460586142094 0.186558218731377 0.102 +0.3929887282792977 0.02372634803364715 0.102 +-0.01434080636041115 0.08475369977853804 0.102 +-0.01632371512931388 0.2237463981316973 0.102 +5.925618992781781 2.100971225489827 0.102 +7.999032062926092 2.481330301564245 0.102 +0.250069914397675 0.1647068059463729 0.102 +2.358731238935015 1.231339201161859 0.102 +-0.2134271877602616 0.9644418037095595 0.102 +2.596888595960078 0.6529823056816414 0.102 +2.166557638082802 -0.7835544748457716 0.102 +-0.09149087506771368 0.7015246578216481 0.102 +18.24855666562879 -5.695188838569944 0.102 +4.108092045093002 1.260694640395812 0.102 +3.671028931369815 0.2668754606636658 0.102 +3.740920788831473 1.251334137798989 0.102 +4.440843453972343 -3.646846461651705 0.102 +2.858783815660614 0.4206965589547469 0.102 +3.003934543239433 0.6624240704456859 0.102 +2.691837711056669 0.1344790174866951 0.102 +3.577713044363074 -0.607017831684124 0.102 +0.7924177464852251 -0.08018690314056373 0.102 +-5.455663520722304 -5.144695285114577 0.102 +3.196577435158994 1.060344906382867 0.102 +2.268836012813753 0.5245187732697388 0.102 +0.9492929635727755 0.3868374238690861 0.102 +0.8759465858847444 0.5726580636049206 0.102 +1.531434248240484 -5.778318667503312 0.102 +0.6712481837532068 0.001749595339110468 0.102 +0.4183758848866811 1.139583785873976 0.102 +0.1035170297050517 0.2301971976655869 0.102 +8.543630893284675 -6.570786305821056 0.102 +0.9474939707938632 0.4201306642034595 0.102 +-0.1573946993048815 1.150960268572866 0.102 +1.199898284610405 0.5337353367939024 0.102 +0.7311165254012766 0.08787117152551632 0.102 +0.763217597757452 0.1475649760649584 0.102 +1.733719205003426 0.9744016323178115 0.102 +0.2069914892586541 -1.837757785273856 0.102 +5.058063500514232 -1.490894995276705 0.102 +3.541159799206206 1.492011698125944 0.102 +4.392809588597435 -6.863240468121658 0.102 +1.016405497558397 1.316250143011556 0.102 +1.020244554599527 0.04793610126899896 0.102 +-0.1418764069967054 -0.008210329133922771 0.102 +6.483861939356743 5.856134701156571 0.102 +-0.298317976870806 0.7116979183428641 0.102 +3.299800746962942 1.935271837683192 0.102 +-0.07029295583098386 1.026978938062868 0.102 +2.765448572956374 1.174928396447209 0.102 +0.009305120434599147 1.092584224611058 0.102 +0.2388610065081957 0.5390660160376011 0.102 +0.1097449788421023 -0.1014043936852507 0.102 +2.613724760705359 0.759994434994861 0.102 +0.931580182440389 0.3054076583138456 0.102 +0.07118401611401493 0.8043907443893256 0.102 +3.561918401000357 0.1243661575881322 0.102 +0.08256583315099827 0.913176118365631 0.102 +0.2962455369731302 0.326005817445629 0.102 +1.919015353428994 0.6934703057829986 0.102 +3.447424001746128 5.277285171461886 0.102 +3.020447356317436 0.8793293562713154 0.102 +2.237858353189402 0.5758758548607613 0.102 +3.688047163331531 0.3584472918918232 0.102 +2.497835567098125 -0.5791740244473437 0.102 +2.505695796683239 0.8139716143976169 0.102 +0.1113209136456779 0.9294317292449851 0.102 +0.2309935560086095 0.1899307126513409 0.102 +1.040158601566712 0.6345447388244988 0.102 +1.612704598185172 -0.03996172427864306 0.102 +1.110958078890459 0.3477281184152539 0.102 +1.136118545088569 0.985191549573617 0.102 +3.563596433713088 0.762397242845507 0.102 +4.008469655828236 0.4679028211266911 0.102 +4.094726382950271 0.4646798005660625 0.102 +1.124957348381067 0.6419499447070869 0.102 +4.593427006595894 -0.06460244499288892 0.102 +0.3099535286411888 0.2544415831337488 0.102 +-0.1110221466671635 0.911020741272165 0.102 +1.687733562785789 0.1583187458784479 0.102 +2.070108187162858 0.8204522476184928 0.102 +2.87100370355691 0.2332210062070273 0.102 +2.308533966566147 0.2431072240128378 0.102 +0.3962867396874075 0.1203172302225157 0.102 +0.5369958993427659 0.02478345782569445 0.102 +1.253517134284602 -0.37671258725942 0.102 +0.2667439264356894 0.05654848838394949 0.102 +-1.060606170564158 0.9300887287124975 0.102 +-0.1785260919166053 0.1386498777905497 0.102 +-3.83279742483924 9.210724046554937 0.102 +3.314200424781912 0.8209907635752423 0.102 +1.2938110675533 1.107870087432097 0.102 +1.09359954077354 0.9827587803066299 0.102 +3.564319435882368 0.464852618348682 0.102 +5.274384587898627 -0.5618727416623797 0.102 +-1.901204201737277 -4.367490853609495 0.102 +0.4566292143528405 1.113285009182877 0.102 +-8.151723562454267 -6.632348087769511 0.102 +1.365720530263064 2.944878929988904 0.102 +3.04539777881106 -0.139897376064708 0.102 +3.682301918794727 0.7215726189956305 0.102 +0.7428429983637247 0.1349812537142286 0.102 +-0.1283271321727237 1.063754493391566 0.102 +3.839435611015821 -0.03416196576420829 0.102 +3.864481141330955 1.001595597693583 0.102 +0.1207650965717851 0.2636008491888301 0.102 +0.7999202720589089 0.6304573045854034 0.102 +11.48994832118177 -9.067524479607316 0.102 +1.762000956375428 -0.05426101232477989 0.102 +10.07364173583876 -6.753270591760121 0.102 +2.918214310055839 -0.5098721728028119 0.102 +1.122909855427727 1.157962371402686 0.102 +3.917729657528454 1.139241528989214 0.102 +1.845721258794164 -0.1172150120098403 0.102 +0.2606727833901909 0.8041021141615043 0.102 +-0.2969241496079206 1.10685839547577 0.102 +3.228657493698506 -0.1845624041944423 0.102 +0.8950902573519636 -0.09755124662671351 0.102 +0.03458602924486249 0.3071488244333047 0.102 +1.135991538979319 0.8974492682268194 0.102 +1.015824110520666 0.9649390899336939 0.102 +-5.078576655911538 -3.340410796627966 0.102 +3.104821899408622 0.83646431839193 0.102 +2.005464815299138 -0.2254700406590098 0.102 +0.124342677682623 1.064133210747493 0.102 +0.006920191942911961 0.1246574061926201 0.102 +0.352376406396876 0.001146931747833051 0.102 +9.267977387890816 -4.700803747395021 0.102 +0.8871817180958227 -0.02351182057316275 0.102 +14.60992375039109 -5.487622652545477 0.102 +5.266131604503533 1.979790272920746 0.102 +1.995161164090093 0.657989291223954 0.102 +0.7843786284923361 -0.4126013170927025 0.102 +0.9812749668317358 0.1738190836696302 0.102 +17.17781858669362 -8.306870297674148 0.102 +0.8159002181326026 0.7232117284560333 0.102 +2.399034802360982 1.065736040665911 0.102 +5.099989606007928 1.229590960753476 0.102 +3.204413329656884 0.8685170545042553 0.102 +1.833393149173682 1.537568950369231 0.102 +1.871286211914571 0.266236626373978 0.102 +3.65956161035558 0.924686837644067 0.102 +3.091881099493435 0.2000639883593822 0.102 +0.9076132984286798 0.5312952754676094 0.102 +-1.471039596781447 5.168873316396357 0.102 +3.173809657032666 0.6347271403584909 0.102 +3.794576603577561 0.1355804950739097 0.102 +2.743301977729406 0.7504838981079031 0.102 +2.498585829451442 0.5921965980255379 0.102 +0.5299453143248151 0.0919271749049172 0.102 +1.569256135706957 1.155274000866106 0.102 +2.572763992265553 0.03634868733495795 0.102 +4.460811151213805 6.148367494745038 0.102 +-0.1961306315608771 0.4706900148251307 0.102 +1.044669304502476 0.1081173597931055 0.102 +3.303593044814755 0.5094347099826024 0.102 +0.1864068903940235 0.3668713178212563 0.102 +2.446958097791203 -0.05904681325514046 0.102 +-4.888729567242184 -7.546791279840086 0.102 +0.03379031682298694 0.06683694053516044 0.102 +1.043344203612371 -0.0190818019408492 0.102 +1.01031984111285 0.1690176302381581 0.102 +-3.615087627887798 -7.672180757240739 0.102 +0.6679520766284246 1.766157486136674 0.102 +2.722479366496798 1.399976523701456 0.102 +0.02974388937151238 0.1398334722875747 0.102 +4.03634378622997 0.810582124561384 0.102 +12.44229162533721 4.092060595967332 0.102 +-0.7458151095821637 1.13095223356145 0.102 +2.856294285351176 0.6607524572913557 0.102 +3.587398333164792 1.271567572475278 0.102 +5.982404912423897 3.747262249715965 0.102 +-9.06888635142991 3.990705555487627 0.102 +4.443131468096185 0.654425886587213 0.102 +1.363681993302156 1.006397657628979 0.102 +2.296992474346793 -1.38706316639304 0.102 +0.08343986109628079 1.029812308535988 0.102 +1.08521331290898 0.5477767259067753 0.102 +-0.6312907638885448 2.339887421815797 0.102 +0.2988008023414359 0.7752906858378628 0.102 +2.649808430630221 0.5973969920722353 0.102 +0.9144062284791684 -0.06942162970787634 0.102 +3.431936922885869 0.7099875131510908 0.102 +3.644790487914627 0.31690053939005 0.102 +0.3538526970010397 0.287040708065257 0.102 +2.614661892478412 -0.2948512663644779 0.102 +5.005846875942257 1.046914628297569 0.102 +1.486148186266435 0.3820889172579287 0.102 +1.973136018010246 -8.864887946343793e-05 0.102 +3.627898934508412 1.725382213703321 0.102 +2.774959860141843 -0.362260248016908 0.102 +0.1992606759439647 0.414592681219196 0.102 +0.127531290693785 0.05447533752544063 0.102 +3.963738670497062 0.9790476601515032 0.102 +1.425644365391517 0.1939498497423698 0.102 +0.2383203944673397 0.4419056723727797 0.102 +1.689346350560156 0.08991949105236462 0.102 +2.496662253602498 0.8812004158395779 0.102 +2.73052138684303 0.3431957030969256 0.102 +3.782000348761623 -0.1677416348423327 0.102 +1.512520522370264 1.208025380122511 0.102 +4.657866053221469 2.685452076470548 0.102 +0.8126049554333825 8.360504487634797 0.102 +1.17143468874507 2.181464124116285 0.102 +0.5506817759702156 0.06023050780614665 0.102 +4.901579733635208 -2.044713952814343 0.102 +4.765209677042249 -8.282786060796628 0.102 +0.2280224226818927 0.03690838359610953 0.102 +-2.222683164579553 -5.208883890577201 0.102 +4.493497514247815 0.4588535263927234 0.102 +-1.212204553694986 1.776200059923088 0.102 +4.103556579295818 3.161718312005302 0.102 +19.04665287519733 -8.053482431898221 0.102 +0.3557914921146401 -0.04761684264309856 0.102 +1.819662103484878 0.1298927082888618 0.102 +0.05047233770136533 0.1619276321114126 0.102 +4.363296828174851 2.528868606076732 0.102 +8.834296594380106 0.6954183983314514 0.102 +2.618960262358358 -0.06324420865366807 0.102 +0.7924286311410558 0.1548541925267801 0.102 +0.2596335155686315 0.4189080366064669 0.102 +-0.2159055895714689 0.05903885497439344 0.102 +3.497057838738921 1.121888259388215 0.102 +7.120610175151691 3.113319138191311 0.102 +19.02736262275135 -9.03500613205394 0.102 +2.905998336663986 9.309335984949948 0.102 +1.087743248562371 0.6791316433815177 0.102 +0.1631839105933537 0.1205192880728125 0.102 +2.857972499056887 0.8503949745758869 0.102 +7.037012105498256 0.7997988067324202 0.102 +0.9415408181861979 0.2412316695849159 0.102 +18.54850975611566 9.222416502069816 0.102 +4.022889696433434 -0.1319606469268758 0.102 +1.416073730007211 1.879693537617102 0.102 +0.6283829629623143 1.142427360012769 0.102 +1.115339116989319 0.5397426694159991 0.102 +1.093705441844178 0.2703063647607292 0.102 +0.007198449329178688 1.145437428889085 0.102 +2.867270169301488 0.7381142873076647 0.102 +3.31752268602695 -4.411727894958705 0.102 +0.3092675508854561 0.1952841029676818 0.102 +-7.166641504250134 4.955733878023137 0.102 +-0.4491665116044467 0.7434393510864304 0.102 +-0.006438505741147811 0.1506304620215957 0.102 +-0.2901477806396027 0.6101752841604728 0.102 +0.5556088150858602 1.136161601411065 0.102 +-8.830471761065832 -9.313462452768622 0.102 +6.210074908775095 1.809425055788152 0.102 +1.11186406855968 0.7517872351239878 0.102 +-0.3996914313404982 1.421031217589333 0.102 +0.7657037131454636 0.04375583387062054 0.102 +0.06268210057452848 1.00636187140467 0.102 +2.228573492181411 0.8687932252708471 0.102 +13.0322503245323 -0.2882505372135395 0.102 +4.786647983952559 -0.5976063495183199 0.102 +3.030753634406693 0.9279281690124381 0.102 +1.510043185593541 -0.07687037554430579 0.102 +-8.280988251945688 9.12185094177792 0.102 +-9.098203893851036 8.285228311319099 0.102 +0.09629182061035335 0.9528825990533534 0.102 +2.147171509898112 0.5914655454653093 0.102 +-0.02046189445531673 1.114696522926206 0.102 +1.080977311933399 -0.09217198810313264 0.102 +1.033388069280215 0.3114799801779435 0.102 +0.8417816730783095 -1.271546743974047 0.102 +7.019604114993791 -6.720542692882836 0.102 +0.2072239334860926 0.3246842801432488 0.102 +-4.24521376540434 7.98923921138667 0.102 +-0.07407198191970943 0.1478112772840954 0.102 +1.059056683451148 0.981228083620585 0.102 +0.2992368464743578 0.3896316758086741 0.102 +0.8634924846849262 0.294768887163715 0.102 +0.1318428481747092 2.340578453010926 0.102 +19.23583719728535 4.465190715870441 0.102 +0.2208676588790234 0.2070137025853126 0.102 +1.763519884693891 0.9044483639146601 0.102 +0.4158900184984856 -0.1168502932882517 0.102 +2.099163736357074 -0.2846557015951119 0.102 +1.621147795048461 1.186999925298216 0.102 +0.8667258842174134 0.4792914977163515 0.102 +0.3776590307133334 0.2186435662403528 0.102 +-0.06437084868217362 0.2692820146379566 0.102 +5.118844460140902 1.589187661079618 0.102 +2.919509272313613 0.9424853956343588 0.102 +1.757693732460274 0.1563808912788247 0.102 +0.2357310627025397 0.0675427307666461 0.102 +0.02919593049432845 -0.2178752133974168 0.102 +0.09667370353610273 0.1029402911618554 0.102 +3.516453373300016 0.920522240476404 0.102 +0.3045905910792611 -0.1474705055439164 0.102 +1.078573712060819 0.6235309244975512 0.102 +-3.556893948036436 4.809153181534953 0.102 +14.40431479688636 -1.40246839092385 0.102 +2.203858052678682 -0.3359486251115066 0.102 +3.079318175243304 7.474922989277764 0.102 +-6.210903846501404 8.304118340597039 0.102 +0.4322951256838962 9.26055997328319 0.102 +4.130222345010782 0.4284224102606167 0.102 +0.7752686728632985 0.2211593994110467 0.102 +0.1094861238054989 0.7984832780675125 0.102 +2.479309333315364 -0.1207534044193768 0.102 +-0.06431219026370602 0.0399224114409441 0.102 +0.3991677639262476 0.155715577150196 0.102 +2.129495731191326 0.6580702399883979 0.102 +-0.2076902858409785 -6.51104144332006 0.102 +1.082447659292619 0.6430917872980498 0.102 +4.788601462471934 -1.441684232166489 0.102 +1.70698811095161 1.14638104741394 0.102 +0.4657462880685913 -0.02532660456810954 0.102 +1.475837316969075 1.283882725665322 0.102 +-0.005793579140353226 0.8910853316851963 0.102 +3.632480151250005 0.4082784093205417 0.102 +-6.308492018375784 1.392947989905325 0.102 +0.1232742407684176 1.116376462474107 0.102 +-0.06264608511238766 0.7145226597816916 0.102 +0.863454749571359 0.6738868078375569 0.102 +2.561990572037346 1.126754468211726 0.102 +1.739346249695608 0.7478971158967359 0.102 +1.361615535451754 1.327119168879063 0.102 +0.05233600459824576 0.8735480492495583 0.102 +2.487541850800401 1.166184204065217 0.102 +0.9438447175989211 -0.09035956383209461 0.102 +1.53433267766677 -0.1808784045537735 0.102 +0.9114589034683582 0.2539672504872023 0.102 +4.018799250990784 0.6867229661996139 0.102 +0.2267829466176017 0.2480377201096004 0.102 +0.6802931880685628 0.09884796805883134 0.102 +2.19435630839531 0.3400111547024374 0.102 +3.055933182524253 1.259519248420026 0.102 +-0.09747221686172786 0.7475893226760203 0.102 +0.2060666999480562 -0.1365170493082302 0.102 +3.173032222004952 -0.06224160849894073 0.102 +1.352477032159389 0.8043849642906116 0.102 +1.090449491211806 0.03162053109384875 0.102 +0.1510737090619213 0.9677217426795159 0.102 +0.2413017517287364 0.2736240555045394 0.102 +1.03525984236396 0.5043672934300246 0.102 +3.295405439251821 0.1819945947730566 0.102 +3.673071259906119 0.6006250256940242 0.102 +0.4146342884803187 0.03645253303387787 0.102 +3.564632682340046 1.147481893459231 0.102 +0.1321940447998132 0.4718409730429193 0.102 +-0.3083618859567352 0.4422586633048032 0.102 +0.8973230100865422 0.7757181507889706 0.102 +16.16280639010868 1.388702482768717 0.102 +4.017729057666298 0.4014054353768044 0.102 +-0.2478647726953185 -1.076195256265904 0.102 +0.006400785718219905 0.7617837167831385 0.102 +-0.020416038812349 -0.05362654426430444 0.102 +-0.09265890261337158 0.429671583280815 0.102 +0.06682588760703922 0.00236361188929524 0.102 +-7.168959209124123 3.982466777124505 0.102 +0.6579680105882437 -0.009067875199920833 0.102 +3.09690345740373 0.5837624637931004 0.102 +0.8309557103362577 0.1309279139065851 0.102 +0.1082990271395099 0.3550093547534354 0.102 +0.9466030021057139 0.537191622348801 0.102 +8.759114879426681 -1.311131186250384 0.102 +-5.683064893310597 2.898374308209313 0.102 +1.365450257058272 0.452353855860137 0.102 +2.703993082926906 3.701622080289454 0.102 +2.009312918370027 0.4513412890730542 0.102 +-0.05786287481339858 0.1293034197685201 0.102 +2.002088985776495 0.7825560651325025 0.102 +11.2820111057783 4.446118113125941 0.102 +2.10654050505546 0.2884877601542359 0.102 +0.9924233651109132 0.5083702397161859 0.102 +2.527651610225397 0.5067574103976397 0.102 +0.541450472025482 0.121366286540707 0.102 +0.593099613673202 -0.09319402698061087 0.102 +3.999969933735192 -0.1939625970681188 0.102 +-0.1042160616086445 2.857521705886263 0.102 +1.485815163039655 -1.764504961358735 0.102 +0.2882658559312191 0.753271888711904 0.102 +0.3478631959926435 1.157592215505442 0.102 +0.02613807383997682 0.02200396154189104 0.102 +0.3112210990917049 1.36593105967697 0.102 +-0.1818230545776148 0.6697485617953932 0.102 +3.438755143751111 1.392490105143945 0.102 +0.8672592622836574 -0.00504148399016011 0.102 +-0.04099610000797743 -0.03991194268137892 0.102 +0.9000267628755484 0.0262337831868903 0.102 +0.4783679905850332 0.1348574949887317 0.102 +0.7577676556405951 0.6277464768804752 0.102 +1.837564964284542 0.07489642530993301 0.102 +1.65145112627377 0.02363614070894268 0.102 +0.3271278546694113 0.6787992966289451 0.102 +0.4428598174685703 -2.540709963393821 0.102 +0.6738131729456175 0.05085773912519102 0.102 +2.983305443293909 -0.3573199379185554 0.102 +2.788446561753087 0.2656192572410231 0.102 +1.744301541569564 0.04409070882485554 0.102 +5.190804642400563 3.64866610609797 0.102 +1.073759576622783 0.2178590322439956 0.102 +0.7562408130704441 0.4672639797482105 0.102 +0.00354327825289847 0.1904354146180599 0.102 +1.547468660891632 3.9627222889669 0.102 +4.217187901782403 3.972832004748659 0.102 +0.3774637859994802 0.2670093081768528 0.102 +-1.353854705879634 2.865948108538231 0.102 +0.9678011674320508 -0.3252018194243013 0.102 +1.254379322946709 1.675312975474554 0.102 +5.331247563730845 3.052499899337797 0.102 +1.085835890478302 -0.03596746972783302 0.102 +0.1312981333528921 0.6662330806454824 0.102 +0.3100728014344061 0.056911714707371 0.102 +0.1903521169724363 0.4914530602400396 0.102 +0.3347079439421962 0.1292332417333428 0.102 +0.250629008171474 1.063647505581371 0.102 +-8.131807111547751 -9.487649477251578 0.102 +6.913228079528351 2.069475671876246 0.102 +0.272154451401509 0.7860233253830716 0.102 +4.949001631728081 1.37829703095555 0.102 +4.248176971360088 -0.0487122908007098 0.102 +1.162560999600437 -0.8763012821725594 0.102 +0.5911046370121127 1.196069429462685 0.102 +0.9300814514053899 0.5215982749715258 0.102 +2.067420671460214 2.267479197984143 0.102 +1.032262271817635 0.9908839558125424 0.102 +1.158969970862152 0.1621548360186033 0.102 +3.38570849352925 -1.230269952041976 0.102 +0.230440586229909 0.5060075252342343 0.102 +8.464920813794844 2.967879814092882 0.102 +0.5072254275380809 -0.7399827557063686 0.102 +0.4274475346013673 -0.919093384757107 0.102 +3.803069622551758 -0.3771782734551803 0.102 +1.000072996549959 0.9103007390830405 0.102 +3.849330409694679 -0.2096491928331214 0.102 +-5.613299759493463 -8.478674972861716 0.102 +0.1650520737071381 1.124414290622362 0.102 +0.6948322504578097 0.2774929417842114 0.102 +0.8163519116633579 0.4795566756990294 0.102 +0.1848087265093037 0.4347999123468828 0.102 +16.34277917117989 2.564867959524698 0.102 +0.378758543180033 0.06737342376518152 0.102 +4.239419616463829 1.233056530728716 0.102 +4.282368626882652 1.166400806244183 0.102 +17.10059233048319 8.664364987310801 0.102 +16.34401874176172 8.294750992430112 0.102 +0.07979526182556362 0.5541946502552215 0.102 +0.1130967744699387 0.07905748944202665 0.102 +2.945937041682267 0.8802043936243648 0.102 +-1.496438688650889 -0.691136808926298 0.102 +0.4953091606211569 0.2245688019346599 0.102 +2.02331504316779 0.9532163067886713 0.102 +4.185765934321634 1.773156111843342 0.102 +2.754455461102344 0.619169944628334 0.102 +0.6964325621597985 -0.04925553005694659 0.102 +3.076507176799148 1.140871001656005 0.102 +-9.156415314597634 -8.453362343759869 0.102 +2.029743800458998 0.1355592070943537 0.102 +-0.2187620198319163 1.237315730274852 0.102 +0.7508931438922654 2.004475838980466 0.102 +3.493253836286591 -0.03835260114207405 0.102 +1.694155765076869 0.8268087697473488 0.102 +0.08178855500781633 0.1360091916714072 0.102 +3.154594972123371 0.3687827256659342 0.102 +1.745808863959939 -8.093742572639574 0.102 +0.09747486460592066 0.01971127370260271 0.102 +1.867156924790794 -0.2737934205132729 0.102 +4.320848470176943 0.8724354035845852 0.102 +-0.1932341356695847 0.8748026941331771 0.102 +0.0802926403277243 0.08320483520485085 0.102 +1.160199023222881 0.6893408482849893 0.102 +-0.06549765010133327 1.071458000990179 0.102 +-0.1301525861081926 0.9970798939065411 0.102 +0.7073517229286186 5.504791063839988 0.102 +-0.06742104358536351 0.1063329397601299 0.102 +0.1293681779576963 0.9053816989335207 0.102 +0.5036266033557002 0.09832658644504069 0.102 +2.813780316750651 1.220938403711161 0.102 +0.2528105992815072 -0.04001837761581865 0.102 +1.98868270456605 1.702399455471822 0.102 +0.7409457476493492 -0.0425266361354046 0.102 +3.895221986164052 2.837816738842027 0.102 +0.7741521226596736 -0.1371946387584626 0.102 +0.4021541933181625 -0.002429657127525876 0.102 +0.7831035572769106 1.130375900041279 0.102 +2.178216913868863 1.158539234274557 0.102 +1.007301607707842 1.123677793469041 0.102 +2.698890900323214 1.06436796471 0.102 +3.998688702435194 0.8707153514830295 0.102 +-7.171664068826553 8.059269952882783 0.102 +2.539942133671289 -0.100892476751815 0.102 +-0.06011387731507568 0.2281148823818701 0.102 +0.09146350479109078 0.06181523620380244 0.102 +0.773541707273677 0.402664367917674 0.102 +0.05584211717201461 0.8379623110930249 0.102 +0.9133772732377361 0.642425809876351 0.102 +2.301478353337144 -0.2293429323169336 0.102 +17.44713714417787 -1.730925861586963 0.102 +1.636966966574072 0.7534114395798436 0.102 +0.6872184947725788 0.07726236898434803 0.102 +0.0331707516032632 1.122612679306801 0.102 +2.086842473837258 0.4760097057396806 0.102 +1.758561699590273 1.235199470615444 0.102 +0.2214204724149542 0.3113470629403634 0.102 +4.379331023520646 -0.1955687500216877 0.102 +0.7210607363932201 -0.09446457158720806 0.102 +3.647972723564425 -0.06380145347006802 0.102 +0.7161464666158696 1.136681421485523 0.102 +0.1406436979641721 0.1948533024295173 0.102 +1.531398057210525 2.270362838693368 0.102 +1.332592608216592 2.230995046934853 0.102 +1.643745457864599 2.444652976667685 0.102 +1.94495036064394 2.464516800396537 0.102 +0.09847604483891155 0.4876173524320854 0.102 +2.720877194568522 -0.1141203699952114 0.102 +12.00689219953144 -4.964205829344721 0.102 +0.2208778267554869 0.09369249743268693 0.102 +12.99771703432332 8.185437749204585 0.102 +6.383796037545899 -8.423155190448654 0.102 +2.035619870115335 0.9983933198259665 0.102 +0.1546879627892197 0.8105238695289724 0.102 +3.628767463039867 0.470913511357815 0.102 +4.127003817123546 1.525657835013937 0.102 +3.440710535432361 1.258039575742515 0.102 +-2.75114766943835 -2.445857121340366 0.102 +1.136031087925735 0.9416800823977047 0.102 +5.351780368717081 2.568944738321207 0.102 +2.819517183829741 -0.1584442977258507 0.102 +1.095001735179318 1.070280120276516 0.102 +4.183371548312144 -0.655203042345352 0.102 +3.437170449589134 0.3142206347350978 0.102 +3.435079723457033 0.5968587170824255 0.102 +3.401277092810312 0.5395372052990151 0.102 +0.8073584318332838 0.0008197009551854266 0.102 +10.08660376725017 7.464610539721066 0.102 +-8.90990512728205 -4.929023636187241 0.102 +-2.500993793397599 -3.231247182135072 0.102 +0.5974256630844996 -0.01674296711872021 0.102 +1.733959213801605 0.0972737453400912 0.102 +0.1664181900946662 0.1612373469466315 0.102 +-0.03335317500430807 0.8740252836473545 0.102 +1.15167444383397 0.9217574513532645 0.102 +3.912225433181537 0.5528348033352483 0.102 +4.818322516483992 -3.493671817072589 0.102 +2.272134031369437 -0.5371723855395569 0.102 +-0.1266035978418453 0.7578852507654212 0.102 +0.03537735765463286 0.9219460879783935 0.102 +0.8788797688315451 -0.102788270057457 0.102 +0.8764679185395756 -0.1208210219004228 0.102 +0.8455036311896834 -0.1442746959785732 0.102 +0.8344375353530559 0.4239716765580251 0.102 +3.49788718760377 1.313904485685764 0.102 +0.7337601950094814 0.4018818041269823 0.102 +0.4478464913198399 3.619171699764727 0.102 +0.4551068556480757 1.069609338332466 0.102 +3.932500973144009 -0.3519408491210997 0.102 +0.2369338905151844 0.7720486372134798 0.102 +-0.06351667230662422 -0.05386421474842999 0.102 +5.297563202728795 0.6651587213512239 0.102 +2.182233789144249 0.2062714334191303 0.102 +0.06266515234754567 0.5092714398473459 0.102 +0.6384666237036491 0.02933078857045219 0.102 +1.01467089175281 0.6204408513693209 0.102 +-0.03125125555777705 0.2020349614764737 0.102 +2.292146071443362 0.30772650794949 0.102 +0.4497307099708644 0.1978064871726282 0.102 +-3.24389123190611 -5.354292564289935 0.102 +12.284663244067 -6.068814547317556 0.102 +1.801638533144933 0.8346338742038761 0.102 +0.798516241447095 -0.05586752150383924 0.102 +0.6981490730377602 0.7391247020029716 0.102 +1.485256170453597 0.8738898826473374 0.102 +-0.8760440800793861 4.370128815532779 0.102 +1.506968180594729 -0.03007942756769861 0.102 +0.8702545828981054 0.5106039924934013 0.102 +1.104210031861109 0.2964795457185145 0.102 +2.85175323989615 -0.1110246999900076 0.102 +-0.07742607451552019 1.046338095073763 0.102 +0.3667889622437166 -0.03100427016696933 0.102 +18.41027568331003 1.387232031743509 0.102 +3.783291444309864 1.501690367519727 0.102 +0.9903783032503085 0.6182775101317073 0.102 +2.58975376503717 0.2711319462653581 0.102 +0.07418793788001921 0.8716832381808048 0.102 +1.680921829957405 0.7040897224660421 0.102 +-0.06731778371013272 0.8858057881298005 0.102 +17.11224501745462 1.141965218367079 0.102 +4.269233240368242 1.968073289522319 0.102 +0.06993056288090341 0.7114997201755663 0.102 +0.05426165540884884 0.6737726494773814 0.102 +1.303459318371859 0.422537807296554 0.102 +2.361113784168155 1.909977794892129 0.102 +0.4898266743516451 -0.4760939326022094 0.102 +1.352967962602891 1.139559552699053 0.102 +0.06294761369157845 0.2729935090245101 0.102 +4.361444763160406 2.140937847039553 0.102 +0.9168738419943487 0.4203513826242342 0.102 +0.3440163661225319 -0.1698316447397975 0.102 +7.775972034085733 -1.031942696810381 0.102 +11.24512905109559 -6.795679724208243 0.102 +0.4499356857281862 0.1217528069148029 0.102 +-9.268380365994888 -4.042292547212027 0.102 +-0.177910187604303 0.05208076303378784 0.102 +2.276440321210676 0.8227246659766992 0.102 +3.6310383209646 -0.2401980048053208 0.102 +19.44817364417029 -2.129027622827208 0.102 +0.09582203191251426 0.257958622389126 0.102 +15.39784088724527 -6.102410788054541 0.102 +1.533925110224359 -1.200632182651584 0.102 +4.230645181969184 1.048871664964118 0.102 +0.8346064652395275 -0.05557016599742681 0.102 +0.844580284822972 0.03386052188907874 0.102 +16.34366664512707 7.490136209815526 0.102 +3.7279153208328 0.8697801220005434 0.102 +0.1371261352268636 0.09672645244894963 0.102 +1.991859533485584 1.092075707410756 0.102 +3.713970367583428 0.2101919113704058 0.102 +4.241012376825078 0.4740180810927274 0.102 +0.3708666367433315 0.03216916929706139 0.102 +3.564041639674418 -1.38584942866259 0.102 +-0.1879465745228845 0.3178221267502681 0.102 +0.3512449526304603 0.07730291282929164 0.102 +3.690532555210233 0.9453916707352288 0.102 +2.058834012504762 0.2465917164425208 0.102 +1.708855092980798 -0.02045630574430042 0.102 +1.456689827378562 -0.08401574901409964 0.102 +0.7284441558344817 -0.01790073372070527 0.102 +-0.1103742532297375 0.6812718673076141 0.102 +-0.07805321323487513 0.4071572511070914 0.102 +0.24808570313896 0.1224939467827368 0.102 +0.1934639089210203 -0.1991287283255472 0.102 +2.594707733386057 -0.2070080371504824 0.102 +0.1603220576230732 0.8519341090912415 0.102 +0.1713128391371447 0.2236552113510793 0.102 +0.6395091843876779 0.2441797221120305 0.102 +2.128625538216636 0.001323325377523732 0.102 +3.07931291808454 -0.01791354662358156 0.102 +2.990948615281525 0.7883443253955068 0.102 +0.1269477521331449 1.03633280455092 0.102 +3.543172450906926 1.096778638053258 0.102 +0.6902683812109576 0.407304955313657 0.102 +2.43725355511569 -2.137228645060576 0.102 +2.25271593161233 -0.1105470746815352 0.102 +0.4081795407570852 1.10306995493351 0.102 +2.502835033062351 2.943157597987909 0.102 +0.01742124135241305 0.1976465656195421 0.102 +0.2177708798898665 1.002867850577795 0.102 +3.7315273844918 0.4039144367140692 0.102 +0.1421657798952076 -0.07730543127472186 0.102 +0.5584566867816743 0.0841375641654029 0.102 +1.591489629459454 0.0660680828287362 0.102 +0.5273303419407962 -0.01195784495901991 0.102 +15.2885761901772 -1.836319001057704 0.102 +3.346170569042931 0.8774589683130189 0.102 +1.467540829580464 -0.02354103990519206 0.102 +3.816863475401213 1.090251097224256 0.102 +2.257867843818331 0.7302180792349366 0.102 +1.955204554236075 0.7646681691007793 0.102 +0.1342597316202315 -0.09245224024788586 0.102 +0.8752776794620969 1.138911991644845 0.102 +6.041962494051715 0.07649497694265525 0.102 +3.426476659032418 -0.577258999907916 0.102 +2.40609798668239 -1.082306947528671 0.102 +0.5145348623490829 -0.1042401192246691 0.102 +0.1526242176896001 0.06971850200035995 0.102 +0.4943869669088957 -0.2343896705672523 0.102 +-9.243948818669855 1.175016022681055 0.102 +5.013434203780297 -0.4617044362352631 0.102 +0.2597381769379751 0.6100489319709969 0.102 +-0.08751357249533534 0.8945221753377628 0.102 +4.901500312490917 1.704113753023224 0.102 +4.910419253229045 -3.038983400861871 0.102 +3.837289860446817 0.006415769388644056 0.102 +2.657330314147472 0.3752352962956089 0.102 +4.584763833954113 0.5356849964355466 0.102 +1.070160831086005 1.156195524608235 0.102 +0.8082589455746799 0.5450896027963104 0.102 +3.097819822326533 0.2927506911170471 0.102 +4.335895247339076 -7.797723847073482 0.102 +2.312481365835906 0.4210589365275651 0.102 +-0.2356448840218031 0.9219169482928721 0.102 +1.662658469644176 0.6001736709860384 0.102 +-7.222181953103458 -8.161682768613515 0.102 +4.147331113695907 -0.03899005266037307 0.102 +4.336224757388342 0.1830718800169458 0.102 +1.074307927864519 0.6649878368624277 0.102 +11.75238981402743 5.576926499116101 0.102 +-0.03171547033897174 0.7281454009420112 0.102 +0.06049452698916166 1.049802065161938 0.102 +-4.08450265315027 0.5229175031953144 0.102 +2.944103582563161 0.631953758735702 0.102 +2.18420458687844 0.8047788468812787 0.102 +3.579955599757212 -0.07685456332241453 0.102 +12.19546657978786 1.493929212761282 0.102 +0.7766180494643171 -0.0950179014415293 0.102 +0.8385748193398396 0.687628196076831 0.102 +4.081005755092566 -0.02505064677484649 0.102 +2.388971788082201 -0.08397446754149784 0.102 +0.2534346919243357 0.1875838336307969 0.102 +-9.291290655899243 0.5268710799509995 0.102 +1.185306764500302 1.274137063882901 0.102 +0.07053146715311555 -0.09329276416226256 0.102 +0.3320969186914333 0.826552283929831 0.102 +0.1967677087345299 0.890964912185362 0.102 +13.03637123926411 -5.463837490379324 0.102 +13.8830274219798 -4.643740610468245 0.102 +0.1575987613664673 1.274913048633002 0.102 +1.029862508906133 0.2358592132554461 0.102 +8.209607599722865 -3.886426665222428 0.102 +-9.15486173720304 -7.05171792509073 0.102 +4.121635779250591 1.386601190658739 0.102 +0.03812711003173164 0.03976876896744096 0.102 +0.2359889770542574 0.9022986331792748 0.102 +-0.005611760564858109 0.3216231880883049 0.102 +2.936326430216702 0.5233117880187792 0.102 +6.733687825624961 2.765825411980458 0.102 +1.877471028773898 0.2252745383193895 0.102 +-0.1186254775310931 0.09040965385385541 0.102 +3.911820968436528 0.4050057805970585 0.102 +2.467718498946836 -0.1713372277992423 0.102 +1.287237002440871 0.4694326162819881 0.102 +2.636797909206453 1.02227879266016 0.102 +0.08918444789393722 0.3936903576474687 0.102 +0.3148874559611675 0.2814743448540597 0.102 +1.891134821583591 0.9733071990279892 0.102 +1.114542031019183 0.03104215923339855 0.102 +2.478497142431819 0.2137518448477167 0.102 +0.124322874181427 0.9642076692346635 0.102 +0.1355836534148805 0.9797305122173896 0.102 +-3.174741900426802 9.435457964928332 0.102 +1.117485987407033 0.7670117258396041 0.102 +-0.06359343674798006 0.8275708657009317 0.102 +3.676978743749629 -0.1011143621585938 0.102 +4.491452639616183 -0.4128503252104772 0.102 +0.007297512681799978 0.4345773839595006 0.102 +5.333516085835109 -0.2084590444393821 0.102 +-0.08608868632397378 0.238331644775853 0.102 +0.7297847863660001 0.1951068446305429 0.102 +1.831920068026427 0.9426164467973264 0.102 +-0.9260655247059328 2.731581057261709 0.102 +0.2117787038135097 0.7798921680194959 0.102 +11.97919846776175 -7.649443586341611 0.102 +2.304154934234813 0.1066009571128615 0.102 +2.106546069643516 -0.5904677408699885 0.102 +1.989475165385662 0.05845826245312766 0.102 +3.684971059881479 1.344875522356252 0.102 +-0.08116014497958079 0.06276786630965099 0.102 +0.9090798526794867 -0.02230846670286407 0.102 +-6.219345031264798 5.765744154081084 0.102 +1.065767146058279 0.1410704494088919 0.102 +-6.594661598907519 6.662345429582975 0.102 +3.763151208062861 0.2498290254265864 0.102 +0.9513144131750506 0.6346076616424895 0.102 +2.829157066692182 1.444318619815263 0.102 +6.616296053785135 -5.757754206642465 0.102 +0.6996433780294397 0.2098223955752696 0.102 +0.1922485161127504 -0.403436862750608 0.102 +13.67681238002584 6.524647124610429 0.102 +1.098175853739665 0.6617038058427562 0.102 +0.09595448294866261 -0.07451975027818103 0.102 +2.674157614984469 0.3247808289924853 0.102 +4.306255128597233 -2.816688876739206 0.102 +1.249519000087602 0.4124096955381408 0.102 3 1 0 0 $EndNodes $Elements -7 11194 1 11194 -2 1 3 3698 -1 1878 1152 3143 770 -2 2428 322 2885 1160 -3 914 2202 446 1472 -4 417 3242 1310 3162 -5 463 1800 1059 2228 -6 653 1526 502 1527 -7 3068 776 2037 1154 -8 1616 411 2209 2099 -9 363 1706 1150 2767 -10 1394 3444 573 3378 -11 428 1877 2895 1291 -12 786 1621 1316 3228 -13 635 1608 720 1673 -14 1602 3604 427 2959 -15 1488 76 77 2437 -16 3189 2203 232 1921 -17 569 3234 1148 1426 -18 2393 1529 214 3121 -19 604 2953 2097 1419 -20 1078 1800 463 2416 -21 772 1721 274 1496 -22 498 1438 842 2235 -23 3003 1919 1263 3404 -24 707 1400 1704 3514 -25 3617 1813 641 2779 -26 1487 2460 55 56 -27 1274 1245 1749 2266 -28 2469 12 13 1566 -29 1306 261 1421 1753 -30 256 2109 841 1530 -31 1026 1950 510 2579 -32 3444 1394 3473 3612 -33 2565 2473 3473 1394 -34 474 1298 752 2251 -35 2638 842 2648 1226 -36 3478 2412 1851 375 -37 428 1291 882 2632 -38 604 1403 2204 2953 -39 2723 3271 1364 382 -40 362 1637 765 1811 -41 764 1849 1137 2399 -42 1827 1185 2229 712 -43 730 1890 223 1467 -44 3047 581 2023 1622 -45 2803 1564 1897 518 -46 1470 848 2242 2692 -47 1384 1038 1394 3378 -48 1650 1360 3305 391 -49 2277 1639 81 82 -50 1340 1038 1384 3325 -51 822 2258 511 2001 -52 215 1874 925 1933 -53 1212 618 1339 2974 -54 1341 3786 1657 641 -55 1809 733 2035 1201 -56 3300 1825 824 2152 -57 1678 500 2710 1350 -58 592 3364 1307 1578 -59 371 1699 1178 2939 -60 546 1898 835 1840 -61 3323 1108 2744 1751 -62 1661 3239 1008 2739 -63 1720 2405 777 2542 -64 1874 1282 2870 269 -65 1642 1643 1571 659 -66 1796 507 2787 1269 -67 201 1859 3189 2330 -68 416 1545 2755 1922 -69 504 2169 1177 2153 -70 1519 2117 1606 624 -71 1421 261 1853 1976 -72 2854 1258 2664 291 -73 24 1561 1852 23 -74 226 2043 3204 1833 -75 2108 2388 1862 218 -76 2726 3798 2242 506 -77 700 1828 957 2090 -78 1513 255 2996 2083 -79 1782 1939 784 3839 -80 1814 1280 2802 330 -81 2549 1613 71 72 -82 1336 3282 368 1920 -83 723 1978 945 1656 -84 2694 1494 2112 516 -85 1638 1393 3384 452 -86 1564 3374 724 1897 -87 619 3607 1393 1638 -88 1961 1251 1973 650 -89 1114 1667 677 2730 -90 353 1531 966 2530 -91 2854 291 2808 1287 -92 1460 934 2578 1881 -93 1636 102 103 2883 -94 1772 1290 2826 246 -95 1731 1224 2853 402 -96 1796 1269 2664 643 -97 2484 834 1832 1329 -98 835 1732 612 1840 -99 2270 620 3463 1790 -100 714 1682 2890 2007 -101 1053 2218 840 2450 -102 1449 3647 725 1960 -103 1528 943 2470 2012 -104 1623 367 3325 1384 -105 584 1489 947 2881 -106 2273 1559 2665 982 -107 2057 1227 2288 3114 -108 3820 2723 907 1908 -109 2892 2963 998 1858 -110 1351 3361 569 2207 -111 1476 2542 777 2365 -112 2807 902 2794 1293 -113 2765 1831 637 2515 -114 239 2685 1239 2894 -115 3107 1387 3337 301 -116 3736 1791 1302 1790 -117 1907 421 2941 1257 -118 830 2309 223 1444 -119 408 1987 3059 1719 -120 1351 2207 769 3377 -121 632 1709 3209 2595 -122 2071 1066 3213 1361 -123 1419 3251 3817 604 -124 1466 1997 2991 921 -125 1093 2684 500 1678 -126 997 2505 384 2038 -127 1297 2138 320 3504 -128 742 1744 430 1794 -129 1678 1350 2580 1119 -130 1284 3285 553 2769 -131 731 1990 247 1461 -132 2323 2734 1902 785 -133 2954 651 1683 3140 -134 730 1467 248 1981 -135 1363 1747 3412 243 -136 355 2431 2420 1694 -137 874 1799 312 1962 -138 1449 1960 212 3689 -139 1753 203 2882 1306 -140 1928 450 2989 1324 -141 2070 743 2979 1249 -142 1961 498 2235 1251 -143 2743 938 2972 1322 -144 2791 503 2350 1253 -145 923 1617 3125 2370 -146 2580 1355 2286 1119 -147 93 1776 2821 92 -148 595 2610 1086 2219 -149 1785 2616 90 91 -150 2410 1075 1923 3279 -151 540 2930 3370 1365 -152 3494 761 2194 1808 -153 786 2195 3354 1621 -154 1721 217 2092 2265 -155 3831 2372 3012 1371 -156 1914 671 2038 1289 -157 1217 1609 508 3790 -158 2875 3488 422 2876 -159 1436 1696 1892 738 -160 653 1527 2866 1822 -161 2348 430 1744 2954 -162 302 1783 1274 1822 -163 2654 554 3222 1378 -164 1384 3378 573 3019 -165 3109 2305 3270 594 -166 1617 321 1909 1339 -167 3064 1860 3830 1240 -168 953 3134 1266 1992 -169 2288 668 1815 2362 -170 1522 3687 1267 2746 -171 1151 2010 527 2397 -172 2182 2617 2377 492 -173 1266 3134 541 2247 -174 2074 1341 3026 639 -175 2807 1293 3787 242 -176 2387 374 2019 1328 -177 1788 1646 2922 795 -178 540 1316 1621 2930 -179 1340 3325 367 2008 -180 419 1913 2703 1406 -181 546 1840 1259 3160 -182 2000 572 2672 1273 -183 1272 2860 850 1907 -184 1526 653 2528 1684 -185 1013 2075 605 1539 -186 3180 843 2190 1282 -187 758 1638 1845 3461 -188 3523 3562 1708 652 -189 409 1442 1009 3015 -190 1420 1817 428 2632 -191 1810 370 2514 1295 -192 1490 878 2110 1835 -193 1870 1291 2895 800 -194 3190 1290 268 2921 -195 3220 558 3152 1304 -196 1078 2796 627 1800 -197 3475 294 2620 1457 -198 1555 3288 1164 3505 -199 472 1861 915 2066 -200 746 2176 3383 1710 -201 1882 1373 2133 717 -202 1613 1837 70 71 -203 226 1833 870 1967 -204 2409 2659 1762 483 -205 635 1819 2698 1681 -206 878 1490 3602 1611 -207 1775 1346 2616 278 -208 1482 3776 589 2237 -209 2514 640 3276 1295 -210 1758 628 2397 1443 -211 3129 657 2274 1356 -212 1463 654 1568 3811 -213 1093 2999 323 2683 -214 872 2086 747 1895 -215 2813 1604 2647 244 -216 1941 1386 2520 774 -217 2583 1759 1475 710 -218 3064 276 1859 1860 -219 1683 651 1702 2983 -220 3286 539 2644 1311 -221 2665 1559 1968 464 -222 1757 1660 1901 658 -223 419 1839 2613 2656 -224 1346 89 90 2616 -225 1792 1514 3785 332 -226 744 2095 826 2220 -227 725 2126 3480 1241 -228 979 2586 417 1774 -229 632 1623 1384 3019 -230 1817 1420 1869 645 -231 1469 3574 338 2691 -232 1386 1941 496 3575 -233 1459 3302 1305 249 -234 781 1624 523 1766 -235 717 1743 221 1882 -236 1383 3598 305 2713 -237 1727 401 1820 1563 -238 2352 1374 2594 213 -239 1561 262 3153 1852 -240 664 1406 2127 3240 -241 1503 54 55 2460 -242 1496 2437 77 78 -243 1672 1571 1820 401 -244 1552 365 1796 643 -245 1624 781 3594 1625 -246 1850 1354 2378 755 -247 3057 327 2378 1354 -248 2319 1325 3407 807 -249 1497 3366 1057 3149 -250 1501 629 2797 2054 -251 229 2165 2996 1583 -252 2409 1504 3717 942 -253 2882 706 2851 1306 -254 1869 1420 2633 487 -255 3473 1456 3500 3612 -256 1465 2183 721 3568 -257 1178 1699 600 3100 -258 2946 1318 3700 915 -259 1238 2636 834 2484 -260 3022 1365 3370 461 -261 466 3701 1533 434 -262 2209 411 3259 1311 -263 646 2854 1287 2161 -264 484 2662 3730 1711 -265 893 2267 273 1665 -266 201 1936 839 1859 -267 2068 704 2134 1330 -268 645 1494 2957 1818 -269 3220 1371 3012 558 -270 2007 1342 2108 218 -271 368 2299 838 1543 -272 1998 1312 2494 207 -273 1247 2482 2212 1246 -274 1330 2134 36 37 -275 2989 716 2200 1324 -276 11 1675 3051 10 -277 1927 2677 563 3341 -278 1611 2208 2110 878 -279 2115 780 2830 1317 -280 1664 2958 1702 651 -281 891 1877 428 2480 -282 785 1902 490 1686 -283 2464 409 3228 1316 -284 1883 1321 3123 606 -285 1904 1423 1971 672 -286 2065 665 2244 1327 -287 1872 1344 2318 689 -288 1983 272 1743 1587 -289 275 1834 870 1833 -290 2039 966 3122 1388 -291 2218 1053 2944 1368 -292 2905 1630 2194 761 -293 1226 2933 497 2638 -294 810 2172 1320 2634 -295 628 1758 1054 2891 -296 2710 922 3424 1350 -297 1913 736 2652 1326 -298 1124 2906 284 2518 -299 3019 1413 3217 632 -300 834 1954 342 1832 -301 2200 716 2201 1368 -302 551 3452 1414 2327 -303 1519 624 3717 1525 -304 2780 641 1657 1722 -305 2019 650 2552 1328 -306 2020 1537 3813 397 -307 2071 1361 2868 578 -308 2623 1335 2226 203 -309 1909 875 2833 1357 -310 3310 2533 1152 1878 -311 337 1802 3026 1813 -312 1546 2753 2337 560 -313 1161 2958 307 2449 -314 1929 1552 3066 749 -315 1607 600 1699 2611 -316 1021 2183 317 2022 -317 1102 3073 518 1897 -318 2447 2049 366 1380 -319 254 1385 709 2139 -320 2365 1471 3521 599 -321 3054 2165 898 2078 -322 2516 1337 2592 839 -323 1571 1672 2253 659 -324 2071 578 3600 1427 -325 912 1850 418 2147 -326 1557 924 1979 288 -327 232 2236 3099 1921 -328 1251 2831 319 1973 -329 2193 378 1804 1615 -330 2087 552 3009 1379 -331 2274 1379 3010 424 -332 483 1762 1110 2789 -333 1054 2442 605 2020 -334 475 3048 784 1939 -335 3645 1635 2115 1317 -336 2679 308 1915 1454 -337 2447 794 3274 2049 -338 692 1545 416 1867 -339 605 2075 1216 3178 -340 3114 1375 3778 1531 -341 3757 561 3779 1532 -342 1850 912 2748 1354 -343 1286 868 2253 1672 -344 1530 1816 2992 256 -345 638 2295 986 1899 -346 2407 849 2029 2620 -347 2119 239 2894 3199 -348 1188 2694 516 2602 -349 890 2302 771 2129 -350 376 1943 1424 3353 -351 1633 1376 2907 522 -352 1154 1763 699 3435 -353 1212 3206 415 2400 -354 547 2100 1019 2122 -355 2451 1518 1836 640 -356 1487 3144 1665 273 -357 1488 274 1666 3145 -358 611 3363 1284 2082 -359 1535 676 1548 3821 -360 1536 265 1549 3822 -361 3316 685 1793 1592 -362 285 2423 883 1565 -363 715 1558 3841 1645 -364 674 2660 1387 3107 -365 2680 859 2585 1347 -366 658 1643 405 1757 -367 729 1676 396 1873 -368 265 2952 2092 1549 -369 1704 1349 2546 407 -370 1278 3262 1545 692 -371 654 1579 3047 1142 -372 353 1884 3343 2057 -373 2177 1780 1901 1660 -374 1486 1990 1114 3375 -375 249 1305 3307 2354 -376 3048 1120 2286 1355 -377 1061 1521 1520 1786 -378 2594 1374 2192 836 -379 3152 558 2076 1480 -380 2201 468 2218 1368 -381 879 1650 391 1835 -382 732 1563 1820 3793 -383 1926 540 2141 1401 -384 1775 278 1931 1481 -385 683 2934 1425 3819 -386 2307 1396 2778 227 -387 625 3779 1360 1650 -388 408 1399 708 3345 -389 2660 1364 2629 559 -390 1976 219 3159 1421 -391 256 2761 1299 2109 -392 1643 658 1820 1571 -393 968 1999 717 2133 -394 2746 241 3702 1522 -395 59 1665 3144 58 -396 73 74 3145 1666 -397 2352 267 2908 1374 -398 2951 264 3821 1548 -399 1422 3484 612 3740 -400 2739 1367 3543 369 -401 3484 1422 3758 1540 -402 916 1958 2722 1457 -403 3429 383 2563 1359 -404 1514 1792 1793 685 -405 2056 1401 2141 691 -406 1595 2945 64 65 -407 1194 3083 507 1796 -408 1841 752 2398 1517 -409 3540 1806 2370 603 -410 3022 1048 3071 1365 -411 446 2058 2550 1472 -412 1438 3732 2648 842 -413 230 1771 3070 1640 -414 1801 2917 2527 538 -415 2646 1193 3494 1808 -416 2451 640 3437 1468 -417 2789 1468 3437 483 -418 1488 2437 1496 274 -419 664 3240 2712 1734 -420 321 1617 923 2531 -421 1835 391 1956 1490 -422 1224 2922 794 2447 -423 1895 2525 2162 872 -424 1669 711 1718 693 -425 2471 1547 3775 311 -426 1525 648 2041 1519 -427 1487 273 1503 2460 -428 2332 863 2466 1370 -429 1578 1463 1991 592 -430 1705 3400 369 3543 -431 1373 3294 204 2133 -432 3473 2473 3368 1456 -433 3548 1614 386 3476 -434 3602 1490 1956 681 -435 1099 1873 396 2811 -436 1821 2419 2808 291 -437 1500 1970 3468 587 -438 2923 1692 1774 616 -439 2087 1379 2274 657 -440 3058 1377 3471 287 -441 2392 3142 1982 532 -442 1807 1592 1922 686 -443 1250 1899 383 3062 -444 1219 3014 482 2474 -445 801 3255 1059 2210 -446 824 1825 211 2009 -447 2362 421 2485 1375 -448 1998 1502 3534 756 -449 655 2769 1415 3309 -450 3841 1558 3808 630 -451 732 3660 1886 1563 -452 1463 1578 3170 654 -453 1450 3270 1030 2394 -454 2472 304 2204 1403 -455 2184 1474 3316 398 -456 345 1843 701 1629 -457 2918 1433 3597 2572 -458 1727 1563 1886 719 -459 1482 3762 549 3207 -460 611 2082 1331 3571 -461 1021 2022 3680 2839 -462 1861 2491 2946 915 -463 1286 1672 401 3737 -464 2172 464 3192 1434 -465 709 2012 2916 3091 -466 3494 1416 2905 761 -467 1745 1395 2813 244 -468 2314 3119 2189 1033 -469 1252 705 1738 1857 -470 1167 2990 562 1812 -471 2222 1573 3567 679 -472 1489 348 3522 1767 -473 3043 3140 386 1614 -474 1513 2083 99 100 -475 743 2070 229 1583 -476 1956 391 3305 1388 -477 1265 502 1526 2356 -478 2713 941 2653 1383 -479 2510 1381 2645 783 -480 3309 351 3846 1540 -481 1892 1696 2222 679 -482 220 3477 2109 1299 -483 1881 665 2065 1460 -484 1442 409 2464 2061 -485 3726 3836 1649 688 -486 56 3509 3144 1487 -487 76 1488 3145 3510 -488 2529 1395 2720 210 -489 1745 830 2720 1395 -490 723 1656 475 1939 -491 2215 260 2441 1566 -492 2469 1566 2441 857 -493 1940 702 3729 327 -494 502 2960 977 1527 -495 1009 2191 2727 1778 -496 551 2327 1303 2792 -497 1175 2779 958 3138 -498 645 1818 892 1817 -499 3235 969 2568 1711 -500 2331 80 3329 1407 -501 537 1923 1033 2189 -502 2132 1606 2117 913 -503 972 2933 1226 1966 -504 3113 1500 2008 367 -505 1493 3388 1131 1981 -506 790 1872 689 1871 -507 1290 1772 2119 268 -508 371 2893 1031 1699 -509 1926 1401 303 2371 -510 2408 959 2564 1735 -511 1081 2163 208 2260 -512 1404 825 2641 1770 -513 209 2096 3099 1294 -514 2347 1412 3295 52 -515 2490 1539 3683 357 -516 2425 1397 2847 820 -517 1794 749 3066 2033 -518 1253 3301 910 2791 -519 2163 1483 2794 902 -520 757 3155 3135 2212 -521 3348 292 3439 1491 -522 3384 3623 1894 452 -523 2127 1406 2703 577 -524 1793 416 1922 1592 -525 2443 2840 2053 462 -526 3309 1415 3116 351 -527 1667 2909 3666 677 -528 3729 2379 2378 327 -529 1743 717 1999 1587 -530 1991 727 3775 1547 -531 3051 666 2883 1553 -532 2724 35 3296 1466 -533 1410 2479 1406 664 -534 2159 512 3547 2160 -535 2331 1407 2747 772 -536 2330 3189 1921 2671 -537 1278 692 1584 2017 -538 2032 771 2302 2627 -539 279 1333 3154 2463 -540 2132 913 3827 1803 -541 1535 234 3538 676 -542 1757 1826 1910 776 -543 2180 681 2862 1725 -544 1952 1674 2505 718 -545 2619 660 3194 1452 -546 1553 2883 103 104 -547 405 2970 1314 1930 -548 1171 2977 468 2201 -549 2942 2040 3445 1043 -550 1086 2867 505 2219 -551 2366 1600 2769 655 -552 252 3149 1693 1444 -553 2534 283 2649 1409 -554 704 1466 3296 2134 -555 63 64 2945 2429 -556 2118 851 1942 2179 -557 583 1742 2608 1509 -558 3475 1410 2448 294 -559 1514 685 3316 1474 -560 3554 41 42 1918 -561 613 1995 1082 2760 -562 2347 775 2776 1412 -563 682 2555 1314 2970 -564 2583 1477 3193 1011 -565 2880 638 3766 1567 -566 1279 3460 899 3074 -567 778 2396 1136 3401 -568 714 2007 218 1596 -569 1544 3650 1254 2553 -570 364 2911 1077 1755 -571 3754 2476 3554 1288 -572 1001 2385 496 1941 -573 1453 292 3650 1544 -574 1669 693 3837 1730 -575 276 3064 1293 2203 -576 3401 1599 2416 463 -577 1971 1423 3011 372 -578 223 1890 2740 1444 -579 1654 2858 28 29 -580 3716 1823 3758 1422 -581 2063 2939 2249 873 -582 2633 1420 2632 882 -583 3153 262 3236 1428 -584 1644 2253 2439 326 -585 1757 776 3068 1660 -586 1396 2307 2152 824 -587 2113 703 3348 1491 -588 1930 1826 1757 405 -589 848 1454 1915 3252 -590 595 2219 1065 2879 -591 2706 1023 2245 3035 -592 2317 2812 2036 854 -593 3152 1480 3299 1031 -594 1940 327 3057 1591 -595 1536 2578 1837 265 -596 1964 788 2280 1601 -597 1389 1390 380 3381 -598 2279 2278 3533 984 -599 2361 1562 3715 413 -600 1050 1912 441 2566 -601 2076 716 2989 1480 -602 3498 1447 2255 1446 -603 319 2831 1218 2432 -604 1644 682 2970 1642 -605 2223 1581 3809 817 -606 2151 1441 2676 237 -607 2215 3467 3411 260 -608 2590 2589 442 2588 -609 1999 227 1983 1587 -610 1915 1435 2913 671 -611 1303 2891 397 1972 -612 3288 1555 3669 333 -613 1546 2369 1110 3495 -614 1139 2710 500 1992 -615 2064 1087 3208 2182 -616 1790 1302 1366 2270 -617 1718 711 1848 412 -618 2978 2005 2767 1150 -619 1200 3359 1338 2559 -620 2305 3109 1426 1148 -621 3258 1918 3214 1268 -622 3782 365 3150 1426 -623 1332 524 3594 2027 -624 393 3081 740 1348 -625 1121 1122 306 477 -626 3523 1684 2528 399 -627 3259 1705 3286 1311 -628 2048 481 2291 1485 -629 3271 3624 2629 1364 -630 1884 826 2095 1848 -631 2052 763 3431 1508 -632 1996 2427 2132 744 -633 3557 2639 3566 656 -634 2386 254 2139 1498 -635 2918 960 2834 1433 -636 2769 1600 3847 1284 -637 2366 381 3847 1600 -638 2694 1188 3632 1551 -639 799 2013 754 1866 -640 3331 1504 3403 370 -641 1888 636 2072 1543 -642 3649 1749 1245 2211 -643 430 1945 749 1794 -644 331 2059 927 2103 -645 935 2487 462 2053 -646 2880 1567 3743 1208 -647 2852 791 2682 1431 -648 1053 2450 469 2021 -649 1496 3106 2331 772 -650 2041 440 2117 1519 -651 342 2512 985 1832 -652 3822 677 3666 2303 -653 2013 1586 3788 754 -654 322 2428 2654 1378 -655 3758 1823 2366 655 -656 1759 580 3690 1475 -657 1915 308 2652 1435 -658 3713 1427 3600 1824 -659 703 1438 498 2717 -660 1572 1697 3339 286 -661 2273 1446 2995 1559 -662 2221 1680 2687 587 -663 1504 2409 1153 3403 -664 2687 1680 3747 792 -665 2777 216 2091 1548 -666 2730 1549 2092 217 -667 2966 1455 3023 908 -668 1718 702 1940 693 -669 2794 1483 2236 232 -670 1898 1035 3079 3712 -671 1503 775 2347 3141 -672 1780 668 2704 1677 -673 1516 2444 250 3719 -674 1738 727 1991 3322 -675 1260 3618 620 2270 -676 493 290 586 585 -677 633 3730 1409 2649 -678 3635 1610 601 3561 -679 1459 249 3224 3018 -680 1674 1952 563 3490 -681 1122 536 3198 306 -682 1841 1517 3433 499 -683 967 2700 356 2642 -684 1610 811 2416 1599 -685 787 2607 1143 2823 -686 272 1288 3554 1918 -687 2882 1459 3018 706 -688 402 3371 3052 1731 -689 1663 676 3538 2413 -690 1404 1770 3324 667 -691 1894 1016 3367 1015 -692 634 1570 3682 1453 -693 3475 1839 2479 1410 -694 1985 946 2821 1776 -695 3682 2880 292 1453 -696 2089 1477 3503 598 -697 625 1650 879 1988 -698 600 2113 1491 3100 -699 885 1649 293 2495 -700 262 1561 856 2571 -701 437 3327 1271 2657 -702 1541 758 3461 1804 -703 925 3072 2332 1370 -704 990 2225 1261 3472 -705 2853 1524 3469 402 -706 2221 587 3468 1524 -707 774 2520 2519 2199 -708 3516 1577 3710 614 -709 1802 337 2118 2179 -710 1811 765 2644 1746 -711 3493 696 2158 1416 -712 725 1441 2841 2126 -713 2003 251 2929 1455 -714 1867 2077 1584 692 -715 230 3072 2560 1771 -716 2237 589 1499 1074 -717 3354 2195 3241 314 -718 933 2046 2458 3293 -719 389 2224 1369 3459 -720 1775 1481 3159 219 -721 1219 2474 1307 3364 -722 2683 3215 2264 953 -723 1528 2185 19 20 -724 1482 3207 1439 3776 -725 724 2174 2943 1897 -726 805 1641 2914 2545 -727 586 290 1213 529 -728 509 2817 1141 1984 -729 1827 2401 1828 414 -730 1209 3212 1718 412 -731 1934 2154 2892 919 -732 2080 1590 3345 708 -733 2718 1505 2504 242 -734 1616 2099 1637 615 -735 947 1489 1767 3102 -736 2236 1483 3146 266 -737 963 306 1196 377 -738 364 1755 833 2238 -739 2012 709 2185 1528 -740 2929 251 2984 1728 -741 3568 495 2955 1465 -742 2904 1456 2701 944 -743 2213 1652 2972 938 -744 1616 615 3735 1484 -745 3713 1824 3463 620 -746 2296 1659 3507 1179 -747 633 2649 1083 2757 -748 1117 2431 355 2887 -749 2583 469 3086 1477 -750 1908 907 2722 1958 -751 447 1866 754 1942 -752 3454 1182 3695 1582 -753 2102 663 1213 290 -754 2077 1867 2086 872 -755 1200 2559 528 3196 -756 2065 68 3414 1460 -757 708 1399 3584 1716 -758 1900 3381 380 3486 -759 1183 1789 485 3281 -760 2234 1461 2621 222 -761 2789 1004 3828 1468 -762 2711 1064 3753 1574 -763 2691 960 2918 1469 -764 3502 3225 700 2090 -765 3091 973 3211 1498 -766 1050 2566 929 2702 -767 3118 1029 3050 1478 -768 1398 3030 1507 733 -769 1280 1814 2041 648 -770 3413 1465 2955 827 -771 1904 672 3157 1799 -772 3078 1632 2858 690 -773 2540 1773 2072 636 -774 1410 664 1734 2448 -775 3390 714 1596 3411 -776 2798 1683 2983 1170 -777 1998 207 3835 1502 -778 1799 874 3556 1904 -779 904 2226 3639 2116 -780 1454 848 1470 3139 -781 3367 1472 2550 1015 -782 1951 1105 3691 1345 -783 647 1805 3062 1924 -784 2102 403 2609 663 -785 1325 2319 332 3785 -786 1507 2772 2035 733 -787 1442 627 2796 2169 -788 2883 666 2388 1636 -789 2186 828 1932 2324 -790 1655 467 861 862 -791 1553 9 10 3051 -792 704 2068 3636 2815 -793 2958 1161 3425 1702 -794 2756 1473 2647 809 -795 470 2137 1222 2838 -796 1592 1807 398 3316 -797 1935 2489 561 3757 -798 228 2828 908 1575 -799 3190 2921 2151 237 -800 587 2687 2008 1500 -801 600 1607 3394 2113 -802 1910 1826 1930 806 -803 634 2181 424 1570 -804 1903 690 2858 1654 -805 1729 2851 2043 226 -806 2119 3199 3260 268 -807 43 2282 1268 3214 -808 577 1706 974 2127 -809 1690 2675 513 2547 -810 505 2320 1065 2219 -811 2664 3232 1821 291 -812 3375 772 2747 1486 -813 2628 1130 3834 1556 -814 1449 258 3698 1598 -815 1589 3514 1704 407 -816 399 3649 2211 3135 -817 370 1810 3656 3331 -818 2367 236 2961 1620 -819 2969 1756 2955 495 -820 3039 981 2313 3174 -821 1727 719 3837 1591 -822 2048 1485 2845 994 -823 1347 3599 596 2680 -824 769 1929 749 1945 -825 3118 1764 906 1765 -826 2072 1773 2223 817 -827 239 2119 836 2192 -828 3448 1493 2776 775 -829 304 2472 647 1501 -830 2147 1585 2738 782 -831 1013 3073 542 2075 -832 3822 2303 235 1536 -833 1225 1891 204 3294 -834 419 2656 1183 3186 -835 2017 1584 3750 616 -836 1990 1486 2747 247 -837 2255 918 3663 465 -838 1308 1873 1099 3231 -839 411 1616 3726 1906 -840 2694 1042 2957 1494 -841 1475 1963 1962 710 -842 3200 3303 2254 1097 -843 613 2760 3577 1601 -844 2124 1506 2436 699 -845 543 2814 1319 3039 -846 2244 1529 2393 257 -847 1295 646 2161 1810 -848 1140 2225 354 2506 -849 3757 1532 3362 1301 -850 2963 1511 3676 998 -851 1786 1520 3630 1787 -852 3557 1492 491 2639 -853 697 1506 2124 1864 -854 2382 1689 2081 455 -855 1945 430 2348 1740 -856 1804 378 2500 1541 -857 336 1863 799 2107 -858 415 3206 849 1846 -859 1981 248 2776 1493 -860 1192 3515 277 1889 -861 3149 252 2605 1497 -862 3836 3726 1616 1484 -863 2250 722 2504 1505 -864 2080 708 1716 1691 -865 1324 672 1971 1928 -866 60 61 2333 1612 -867 3411 3467 2123 1440 -868 1863 336 3007 3679 -869 945 1978 333 2028 -870 363 2965 974 1706 -871 3320 1579 3550 1277 -872 1987 408 2440 1569 -873 1883 606 3132 1512 -874 562 3024 3595 1812 -875 1995 613 2758 1511 -876 3032 1509 2526 694 -877 3590 1518 2451 307 -878 2506 1726 3805 1140 -879 595 2879 1222 2137 -880 296 2154 3745 2889 -881 674 3107 1181 3457 -882 1968 1445 3654 1125 -883 588 1755 1077 3267 -884 2766 1626 1980 621 -885 1776 680 2966 1985 -886 1159 3087 1203 1911 -887 1406 2479 1839 419 -888 2526 1509 2608 373 -889 1698 2659 2409 942 -890 1160 2885 763 2052 -891 2052 1508 2959 427 -892 680 1296 3746 2003 -893 221 1743 3258 1994 -894 1610 1599 3611 601 -895 3401 1136 3611 1599 -896 3469 1580 3371 402 -897 2718 866 2752 1505 -898 212 1960 3245 1576 -899 3516 1179 3507 1577 -900 577 2643 1150 1706 -901 828 2120 435 1932 -902 781 1766 2691 2171 -903 1232 739 3430 1348 -904 1637 2099 2209 765 -905 2132 280 3627 1606 -906 3568 1619 2681 495 -907 2182 492 2044 2064 -908 293 2088 1044 2495 -909 2827 1052 1982 3156 -910 1364 2660 674 2836 -911 3509 57 58 3144 -912 3510 3145 74 75 -913 3022 1857 3501 1048 -914 1951 2915 2055 1105 -915 3347 565 1390 1389 -916 3539 597 2981 1712 -917 1634 2582 859 2680 -918 410 1645 3841 1419 -919 1701 26 27 3078 -920 1356 2274 424 1875 -921 1355 2580 334 2417 -922 2959 1133 3603 1602 -923 2318 1602 3603 689 -924 940 2775 355 1694 -925 2093 1560 3555 753 -926 210 3608 1215 2529 -927 1607 2611 3299 450 -928 3204 3334 215 1933 -929 1657 745 2561 1722 -930 1259 1840 612 3484 -931 3424 922 3433 1517 -932 3731 812 2871 1513 -933 1657 2031 2030 745 -934 1964 1601 3577 385 -935 2259 489 3179 1534 -936 2023 778 2339 1622 -937 2906 1124 3374 1564 -938 1441 3814 271 2841 -939 1329 1832 985 2793 -940 2788 1515 3519 436 -941 1828 2956 2170 414 -942 614 3291 1987 1569 -943 309 2077 872 2162 -944 2147 418 3551 1585 -945 3146 1081 3518 1739 -946 1400 707 1689 2140 -947 1329 3273 564 2484 -948 1991 1547 3531 592 -949 1934 458 2079 3648 -950 2864 1640 3804 1215 -951 3838 917 2947 2567 -952 2500 789 3137 1541 -953 3289 992 3027 1534 -954 2509 898 2984 1523 -955 2910 1201 2035 3465 -956 3117 429 2833 1556 -957 2628 1556 2833 875 -958 1453 1544 3175 634 -959 93 2252 680 1776 -960 983 2247 541 2178 -961 2671 870 1834 2330 -962 2466 201 2330 1834 -963 1620 2961 920 3042 -964 811 1610 3635 2517 -965 1881 2578 1536 235 -966 1769 2322 1127 3397 -967 952 2256 318 1948 -968 628 3136 1151 2397 -969 2223 1773 2540 471 -970 3486 1238 2484 1900 -971 540 1926 2464 1316 -972 1505 2752 214 2250 -973 2313 981 2041 1814 -974 1298 474 2902 1782 -975 954 2239 460 2246 -976 2754 852 2685 1593 -977 2908 1593 2685 239 -978 1130 2628 505 2867 -979 642 3272 1256 2145 -980 1694 1695 2820 940 -981 2122 1019 3197 3530 -982 2553 950 3175 1544 -983 654 1142 2651 1568 -984 2221 1524 2853 793 -985 3047 1622 3655 1142 -986 2339 303 3655 1622 -987 1887 2567 2947 511 -988 623 622 3198 299 -989 667 1905 3815 1404 -990 966 2039 561 2489 -991 231 1069 1207 426 -992 2177 1993 2436 3761 -993 1208 3439 292 2880 -994 887 3519 1515 2217 -995 1297 2811 720 2138 -996 1605 1569 2440 735 -997 1642 659 2253 1644 -998 3314 3263 2338 796 -999 1792 747 2086 1793 -1000 1398 733 1809 2457 -1001 2770 1597 3751 1146 -1002 2130 3794 2935 1017 -1003 1569 1605 3516 614 -1004 1803 412 1848 2095 -1005 3248 3845 2458 821 -1006 2196 1058 3230 3065 -1007 1508 3432 762 3741 -1008 1946 1565 3373 705 -1009 2738 1585 3551 1092 -1010 1400 3584 593 3633 -1011 2682 791 2596 1550 -1012 242 2504 1235 2807 -1013 1577 3507 287 3471 -1014 1906 807 3407 1838 -1015 3426 478 2737 1174 -1016 1086 2146 410 2742 -1017 2132 1803 2095 744 -1018 1994 809 2647 1604 -1019 2540 636 3382 1580 -1020 3811 1568 691 2499 -1021 2031 1657 3786 576 -1022 1080 2980 1332 2027 -1023 2411 1614 3548 607 -1024 2350 503 3535 1605 -1025 2177 1660 3068 1993 -1026 1565 1946 3253 285 -1027 3078 27 3644 1632 -1028 2858 1632 3644 28 -1029 279 2463 3615 2380 -1030 510 1950 823 2258 -1031 2699 1550 3313 853 -1032 796 2753 1281 2389 -1033 2489 1935 2630 993 -1034 2699 243 2682 1550 -1035 3174 1042 2694 1551 -1036 2711 1574 2786 531 -1037 1478 3694 432 3118 -1038 533 2037 776 1910 -1039 3602 877 3517 1611 -1040 2408 1735 2291 481 -1041 795 2922 1224 1731 -1042 1117 2323 785 2431 -1043 1663 2777 1548 676 -1044 1780 2177 1815 668 -1045 319 2432 750 1597 -1046 1501 2271 3624 629 -1047 623 241 2403 395 -1048 1436 436 2222 1696 -1049 914 1472 3367 2576 -1050 2441 260 3411 1596 -1051 3291 1619 3568 721 -1052 3592 1573 3848 753 -1053 983 2897 1242 2247 -1054 2907 1911 2744 522 -1055 1847 2296 503 2791 -1056 1793 2086 1867 416 -1057 2136 1659 2296 804 -1058 1267 3687 253 1795 -1059 2606 1608 3790 508 -1060 1952 2084 2702 929 -1061 2408 481 2103 927 -1062 995 2073 356 2454 -1063 616 1774 3438 2017 -1064 701 1843 1189 3410 -1065 326 2322 682 1644 -1066 1356 642 3673 2535 -1067 2193 1615 3063 818 -1068 2367 1620 2386 961 -1069 1154 2037 533 1763 -1070 1575 908 3023 1576 -1071 29 30 2475 1654 -1072 2302 890 2120 1916 -1073 2166 1916 2120 828 -1074 1723 352 3722 2859 -1075 2440 408 3345 1590 -1076 1901 3793 1820 658 -1077 1942 851 2024 2198 -1078 1759 2483 2538 580 -1079 1204 1625 3594 524 -1080 392 2106 1430 3567 -1081 3469 1112 2540 1580 -1082 1367 2739 1413 3447 -1083 1289 506 2242 1914 -1084 619 1638 758 3646 -1085 1566 13 14 2215 -1086 1968 1559 2995 1445 -1087 3803 422 1864 2124 -1088 2093 289 3520 1560 -1089 554 2654 1176 3177 -1090 232 2203 1293 2794 -1091 2194 1630 3579 1107 -1092 2422 1043 3445 1609 -1093 2663 1609 3445 669 -1094 1807 686 3809 1581 -1095 285 2399 1137 2423 -1096 1494 645 1869 2112 -1097 1462 2068 3719 250 -1098 2064 2044 2317 854 -1099 2676 1598 2497 237 -1100 558 3012 1171 2076 -1101 532 1982 1052 2774 -1102 2803 1111 2906 1564 -1103 2707 1707 263 2562 -1104 2981 979 3278 1712 -1105 1871 689 3603 2678 -1106 448 1925 1134 3158 -1107 1932 2214 2355 899 -1108 1876 737 2010 2801 -1109 2175 701 1846 2800 -1110 3035 1713 2562 263 -1111 1669 3110 3343 711 -1112 1483 2163 1081 3146 -1113 441 1912 3641 2457 -1114 3376 1202 1204 329 -1115 1385 254 3042 1603 -1116 581 3320 1263 2023 -1117 3230 1334 1756 2911 -1118 2351 2187 1858 998 -1119 1666 274 1721 2265 -1120 1216 2075 542 3097 -1121 3471 1144 2681 1577 -1122 3592 753 3555 1670 -1123 1346 2285 88 89 -1124 3132 606 2433 1628 -1125 17 2829 2284 16 -1126 2316 2006 2310 897 -1127 1576 3639 3130 1575 -1128 792 2461 2731 1340 -1129 428 1817 892 2480 -1130 1962 2618 2021 710 -1131 657 1912 1050 2087 -1132 1984 1141 3748 2414 -1133 1473 45 46 3266 -1134 2077 309 3750 1584 -1135 458 1934 919 2452 -1136 679 3567 1430 3711 -1137 2001 511 2947 2502 -1138 3017 2390 1191 1352 -1139 2148 449 2822 1975 -1140 2487 935 2311 2066 -1141 2967 2910 3465 987 -1142 2115 206 2292 1710 -1143 1503 273 2267 1724 -1144 3775 727 3163 1588 -1145 1532 3779 625 3796 -1146 1028 2492 901 2125 -1147 3359 3651 2357 305 -1148 1673 2465 1819 635 -1149 282 2188 3684 1778 -1150 3394 1607 3330 1003 -1151 2388 812 2435 1636 -1152 203 3302 1459 2882 -1153 1462 250 2444 3041 -1154 1082 1995 296 2889 -1155 3547 2105 3727 1315 -1156 1645 410 2146 1969 -1157 2028 333 3669 1736 -1158 2761 1627 2830 780 -1159 2410 2624 2625 1075 -1160 3320 581 3047 1579 -1161 3744 1589 2899 846 -1162 639 1586 448 3158 -1163 966 1531 3778 3122 -1164 897 2193 818 2316 -1165 1807 1581 3524 398 -1166 1717 2375 1676 728 -1167 2016 394 3527 1919 -1168 2019 374 3703 1671 -1169 3513 2084 1952 718 -1170 678 2818 1015 2550 -1171 3029 1583 2996 255 -1172 650 1973 969 2552 -1173 2336 1661 3400 768 -1174 277 1358 3806 1889 -1175 3677 1020 2129 771 -1176 3393 2085 2468 985 -1177 1727 1591 3057 670 -1178 2024 437 2657 1662 -1179 2080 845 2982 1590 -1180 1730 1886 3660 420 -1181 1375 3114 2288 2362 -1182 2511 1863 3679 1001 -1183 3323 1751 748 1750 -1184 2829 17 3185 1603 -1185 2751 608 2420 1686 -1186 1017 2471 311 2130 -1187 627 2210 1059 1800 -1188 1880 1593 2908 267 -1189 608 1631 2886 971 -1190 1188 2602 1137 1849 -1191 1481 713 3681 3159 -1192 2193 897 2239 1768 -1193 1501 647 1924 2271 -1194 693 1940 1591 3837 -1195 59 2548 893 1665 -1196 2265 894 2549 1666 -1197 425 3276 640 1836 -1198 601 3611 3823 1679 -1199 3045 911 2945 1595 -1200 2272 1715 3646 758 -1201 2136 804 2914 1641 -1202 1903 1654 2475 841 -1203 3140 3043 2348 2954 -1204 1681 3790 1608 635 -1205 3042 920 2829 1603 -1206 1418 2865 1772 246 -1207 831 2844 2140 1689 -1208 906 1764 2863 1138 -1209 2083 2996 2165 3054 -1210 1725 850 2860 2180 -1211 3350 1779 2916 238 -1212 1572 797 3080 1697 -1213 235 2101 1103 3049 -1214 2813 886 3092 1604 -1215 2206 903 2645 445 -1216 520 2150 1024 2478 -1217 356 2073 3166 2642 -1218 1994 1604 3092 221 -1219 1008 1709 632 3217 -1220 803 2098 851 2118 -1221 858 2709 3402 2088 -1222 1703 2070 1249 3638 -1223 2333 264 2951 1612 -1224 2548 1612 2951 893 -1225 1837 1613 2952 265 -1226 2549 894 2952 1613 -1227 1989 1988 2231 880 -1228 1895 747 2491 1861 -1229 3660 1677 2704 420 -1230 3172 513 2675 1797 -1231 1200 3196 1344 2042 -1232 1170 2881 947 2798 -1233 3507 1659 3563 287 -1234 1066 2071 619 3340 -1235 2115 1635 2754 206 -1236 2832 1182 3799 1700 -1237 1892 1700 3799 347 -1238 515 2161 1287 3164 -1239 1713 3035 962 3121 -1240 1780 1677 3660 732 -1241 653 1822 1274 2266 -1242 3790 1681 3705 1217 -1243 436 1436 2956 2788 -1244 1280 648 3656 2503 -1245 1695 1694 2420 608 -1246 1744 742 3590 1664 -1247 1251 2235 3451 2831 -1248 2710 1139 2767 2005 -1249 851 2098 437 2024 -1250 653 2266 1749 2528 -1251 1337 2516 240 3773 -1252 2498 1858 2187 519 -1253 1075 2625 328 2569 -1254 3765 3839 784 2417 -1255 950 2553 498 1961 -1256 884 3280 1169 2455 -1257 3236 262 2571 1651 -1258 3259 768 3400 1705 -1259 362 2493 1470 2692 -1260 2672 1687 3725 1273 -1261 3146 1739 2404 266 -1262 3645 253 2764 1635 -1263 2754 1635 2764 852 -1264 2967 987 2498 2047 -1265 3774 384 2505 1674 -1266 1339 618 3125 1617 -1267 421 1907 850 2485 -1268 820 2610 3734 2425 -1269 1409 901 2942 2534 -1270 3355 983 3287 1629 -1271 1882 221 3092 1618 -1272 269 1225 3070 1771 -1273 222 1739 3518 2234 -1274 2805 259 3095 1618 -1275 1357 2833 429 2835 -1276 2805 1618 3092 886 -1277 2666 1634 2680 596 -1278 1530 841 2475 3723 -1279 608 2751 1166 1631 -1280 1561 2488 1701 856 -1281 26 1701 2488 25 -1282 709 1385 3398 2185 -1283 1102 2456 542 3073 -1284 3034 222 2621 1748 -1285 3059 1987 3291 721 -1286 3034 1748 277 2335 -1287 1717 728 3692 2919 -1288 1504 3331 1525 3717 -1289 2543 3028 2150 520 -1290 1220 3007 336 3415 -1291 2930 1621 3354 964 -1292 2386 1620 3042 254 -1293 3324 1770 223 2309 -1294 313 1634 3301 1253 -1295 523 1624 1202 3087 -1296 1523 3418 95 96 -1297 1056 2672 572 3686 -1298 652 1708 2782 1986 -1299 1344 1872 2240 423 -1300 803 2062 437 2098 -1301 1686 2420 2431 785 -1302 1972 397 3813 1628 -1303 1562 2361 2663 669 -1304 2646 1808 2885 322 -1305 415 3410 1189 3148 -1306 1687 2153 734 3725 -1307 1576 3245 2116 3639 -1308 2940 1000 3405 1809 -1309 1503 1724 3448 775 -1310 3560 286 2886 1631 -1311 2830 1627 2991 233 -1312 2761 256 2992 1627 -1313 953 1992 500 2684 -1314 926 2359 576 2074 -1315 2588 442 3747 1680 -1316 528 2318 1344 3196 -1317 373 3436 1347 2526 -1318 2016 797 3434 1679 -1319 807 1318 2946 2319 -1320 2921 268 3260 1071 -1321 3440 1197 3643 1905 -1322 951 2306 1534 3179 -1323 1100 2142 881 2143 -1324 396 3772 2465 1673 -1325 3807 1234 3358 2034 -1326 397 2891 1054 2020 -1327 1439 3486 380 3564 -1328 1294 266 2404 1777 -1329 720 2811 396 1673 -1330 690 1903 2391 3408 -1331 1588 2633 882 3344 -1332 2176 1651 3801 220 -1333 1659 2136 1210 3563 -1334 399 1264 3562 3523 -1335 328 2625 1076 2600 -1336 1614 2411 847 3043 -1337 1368 2944 312 2200 -1338 1670 3555 2411 607 -1339 3454 1582 3430 739 -1340 267 2352 973 1779 -1341 3539 1712 2645 1381 -1342 2080 1691 3613 454 -1343 1892 2345 2575 738 -1344 1558 715 1984 2414 -1345 1340 2008 2687 792 -1346 2895 1877 2419 662 -1347 2739 369 3400 1661 -1348 790 1871 376 2262 -1349 3774 1674 3490 1187 -1350 1381 2510 591 3420 -1351 543 1551 3632 2379 -1352 815 3724 205 1688 -1353 2657 2269 1854 675 -1354 3777 1020 3677 1668 -1355 2576 1510 3752 914 -1356 1643 1642 2970 405 -1357 2176 746 3236 1651 -1358 3125 618 2686 1851 -1359 2375 1717 2532 1018 -1360 1388 3122 550 2862 -1361 1872 790 1893 2240 -1362 1747 3515 1192 3412 -1363 897 2310 460 2239 -1364 1159 2144 523 3087 -1365 1454 3585 1343 2679 -1366 3528 773 2521 1109 -1367 1442 2061 2210 627 -1368 379 2167 881 2142 -1369 3238 1671 3175 950 -1370 301 3513 1181 3107 -1371 2346 1703 3638 258 -1372 292 3348 1254 3650 -1373 1526 1684 3523 652 -1374 3051 1675 3755 666 -1375 3275 382 2360 867 -1376 762 3201 1424 1943 -1377 1305 2896 225 3167 -1378 2752 866 2562 1713 -1379 616 2486 895 2923 -1380 1400 3633 1349 1704 -1381 1185 3750 309 2229 -1382 1212 2974 548 3206 -1383 1685 2393 3121 962 -1384 3089 832 3613 1691 -1385 863 2459 240 2516 -1386 2777 1663 3311 1131 -1387 1467 223 1770 2641 -1388 1079 298 1391 1390 -1389 516 2112 883 2602 -1390 1886 1730 3837 719 -1391 2062 803 2281 2094 -1392 1892 679 3711 1700 -1393 1675 2469 857 3755 -1394 2629 1096 3537 559 -1395 2322 1769 2555 682 -1396 1848 711 3343 1884 -1397 1615 1804 3461 678 -1398 1444 1693 2720 830 -1399 2336 602 3239 1661 -1400 1662 814 2198 2024 -1401 314 2243 3704 1732 -1402 782 2148 912 2147 -1403 2399 1737 2501 764 -1404 2419 1821 2781 662 -1405 2820 1695 3053 431 -1406 2145 1714 3673 642 -1407 3131 1418 2261 3670 -1408 1906 1838 3259 411 -1409 2992 1816 3399 921 -1410 1061 1786 578 2868 -1411 2844 1690 3089 295 -1412 2657 675 3684 1662 -1413 2153 1687 3582 504 -1414 3590 307 2958 1664 -1415 3304 1865 3337 1113 -1416 2461 792 3747 2462 -1417 1364 2836 2360 382 -1418 2659 1698 3557 656 -1419 3133 2015 2257 313 -1420 2341 1668 3677 488 -1421 2999 1093 1678 3496 -1422 352 2860 1272 2915 -1423 1431 3120 86 87 -1424 2016 1679 3823 394 -1425 1268 2282 2756 809 -1426 1501 2054 3090 304 -1427 889 2166 828 2186 -1428 959 2557 324 2564 -1429 3821 3542 2128 1535 -1430 497 2816 1218 2638 -1431 1628 2433 930 1972 -1432 988 2358 790 2262 -1433 1918 3258 1743 272 -1434 452 1894 1015 2818 -1435 1733 2170 738 2575 -1436 1730 420 3110 1669 -1437 1929 769 2207 3150 -1438 2051 2050 2198 814 -1439 1521 453 1626 1520 -1440 498 2553 1254 2717 -1441 2050 2051 2607 787 -1442 1552 1830 425 3066 -1443 2980 1708 3562 568 -1444 263 1707 3534 1502 -1445 2468 2085 2297 889 -1446 2698 1083 3840 1681 -1447 2206 1733 2575 903 -1448 2263 766 1366 1302 -1449 639 3158 926 2074 -1450 1736 944 2325 2028 -1451 2979 743 2890 1682 -1452 3545 1273 3725 2301 -1453 1282 1874 215 3180 -1454 220 1299 3383 2176 -1455 2675 1690 2844 831 -1456 47 48 3815 1905 -1457 1322 2157 2158 696 -1458 506 3593 1221 2726 -1459 3032 694 1741 3825 -1460 2818 678 3461 1845 -1461 2370 1806 2838 923 -1462 1344 423 2349 2042 -1463 814 2188 282 2051 -1464 1056 3582 1687 2672 -1465 2980 1080 2782 1708 -1466 295 1716 3584 1400 -1467 2193 1768 2500 378 -1468 744 2220 459 1996 -1469 1688 205 2979 1682 -1470 1399 3586 593 3584 -1471 2472 3466 2558 647 -1472 1932 435 2060 2214 -1473 901 1409 3730 2662 -1474 3118 1765 3333 1029 -1475 1115 1714 2145 3499 -1476 987 2452 919 2498 -1477 1774 1692 3278 979 -1478 2923 445 3278 1692 -1479 1394 1038 2732 2565 -1480 408 1719 3586 1399 -1481 799 1866 928 2107 -1482 2120 2006 2316 435 -1483 1958 429 3117 1908 -1484 906 1408 3126 1765 -1485 341 2795 3756 1876 -1486 1608 2606 2138 720 -1487 3221 751 3792 1742 -1488 2245 234 3044 1685 -1489 2393 1685 3045 257 -1490 350 2237 1074 3093 -1491 2798 386 3140 1683 -1492 2922 1646 3274 794 -1493 1942 2198 2050 447 -1494 1526 652 1986 2356 -1495 1738 705 3373 1781 -1496 638 1899 1250 3766 -1497 1502 2706 3035 263 -1498 774 1925 448 2383 -1499 3686 2164 2727 1056 -1500 1291 1870 3344 882 -1501 2125 484 3111 3456 -1502 3613 832 3805 1726 -1503 2027 2171 2782 1080 -1504 2180 1723 3602 681 -1505 822 1974 510 2258 -1506 568 3155 757 1842 -1507 1507 3030 310 2919 -1508 84 85 3396 1889 -1509 641 2780 958 2779 -1510 3078 690 3408 1701 -1511 2834 960 2691 1766 -1512 454 2306 845 2080 -1513 992 2506 354 2174 -1514 1682 714 3390 1688 -1515 1169 2608 1742 3792 -1516 222 3034 2404 1739 -1517 598 3578 1147 2089 -1518 2541 1161 2449 3379 -1519 3579 1630 3297 759 -1520 2547 832 3089 1690 -1521 2561 381 2780 1722 -1522 747 1792 332 2491 -1523 610 2279 1464 3818 -1524 1418 3131 213 2594 -1525 297 2089 1147 3176 -1526 703 2121 3732 1438 -1527 619 2071 1427 3607 -1528 1171 2201 716 2076 -1529 2343 932 2427 1996 -1530 208 1667 3277 2260 -1531 3041 2444 2778 1396 -1532 446 2202 881 2290 -1533 846 2256 952 2342 -1534 2384 787 2823 1885 -1535 3163 1781 3373 487 -1536 2483 1759 2583 1011 -1537 3724 1754 3124 205 -1538 2826 956 3124 1754 -1539 2205 379 2142 2294 -1540 2616 1785 2971 278 -1541 845 2306 951 2257 -1542 3276 425 2381 1917 -1543 2355 2214 2060 819 -1544 3540 1383 2653 1806 -1545 2838 1806 2653 470 -1546 3425 534 2983 1702 -1547 451 1893 790 2358 -1548 561 2039 1360 3779 -1549 3069 1746 2644 539 -1550 2165 1728 2984 898 -1551 2933 972 3339 1697 -1552 1545 3262 609 2755 -1553 1542 1047 3000 2931 -1554 3098 1698 3627 280 -1555 3020 3768 2513 209 -1556 1786 1787 3600 578 -1557 2115 1710 3383 780 -1558 2532 1819 2465 1018 -1559 287 3563 1210 3058 -1560 2712 514 3674 1734 -1561 3588 1734 3674 1118 -1562 3543 1199 3286 1705 -1563 865 2587 637 1831 -1564 1863 2511 2013 799 -1565 2321 2439 2253 868 -1566 725 1241 3245 1960 -1567 3578 598 2932 2344 -1568 670 3737 401 1727 -1569 2335 1747 1363 3791 -1570 1318 807 1906 2415 -1571 3602 1723 2859 877 -1572 2272 451 3541 1715 -1573 3203 1947 2496 1088 -1574 2346 948 3226 1703 -1575 1060 3781 1970 1500 -1576 2070 1703 3226 229 -1577 257 3629 1327 2244 -1578 978 2034 345 3112 -1579 201 2466 863 1936 -1580 494 2725 1062 3314 -1581 1761 3508 431 3053 -1582 1865 3304 552 3298 -1583 1568 2651 2056 691 -1584 2506 992 3289 1726 -1585 1289 2038 384 2467 -1586 231 2799 3640 2190 -1587 2518 1741 3693 1124 -1588 2067 489 3693 1741 -1589 1597 2770 1973 319 -1590 1516 3784 2476 860 -1591 2184 398 3209 1709 -1592 1228 3082 584 3188 -1593 277 1748 3771 1358 -1594 1741 694 2585 2067 -1595 3622 2938 1883 1512 -1596 2362 1815 2941 421 -1597 772 3375 217 1721 -1598 2668 1725 2862 550 -1599 1735 2564 2090 957 -1600 1554 1068 2877 315 -1601 3422 1233 1557 288 -1602 1581 2223 1126 3524 -1603 1841 3843 570 2104 -1604 2507 1760 3832 1211 -1605 2645 1712 3278 445 -1606 2112 1869 2637 883 -1607 1658 858 3593 2467 -1608 2752 1713 3121 214 -1609 710 2021 469 2583 -1610 1323 2927 1542 346 -1611 2333 3542 3821 264 -1612 3600 1787 3630 798 -1613 261 1306 2851 1729 -1614 3221 2670 2368 751 -1615 3586 1719 3059 1021 -1616 1334 827 2955 1756 -1617 588 2719 833 1755 -1618 2031 2268 2278 2030 -1619 2267 216 3448 1724 -1620 1636 2435 101 102 -1621 1448 360 3654 1445 -1622 1215 3608 864 2864 -1623 2555 1769 2993 1313 -1624 2016 750 2816 1957 -1625 2461 2462 2230 443 -1626 1615 678 2550 2058 -1627 1871 2678 1943 376 -1628 1237 2544 805 2545 -1629 3789 1754 3724 815 -1630 968 2307 227 1999 -1631 2296 1847 2914 804 -1632 833 2719 1633 3512 -1633 1126 2223 471 2898 -1634 2120 890 2310 2006 -1635 1947 331 2326 2329 -1636 2895 1855 3715 800 -1637 2508 531 2786 1844 -1638 774 2383 1001 1941 -1639 633 2387 1328 3235 -1640 2696 519 2187 3055 -1641 2016 1919 3003 750 -1642 425 1836 1518 3349 -1643 3726 688 2415 1906 -1644 2642 2011 2745 967 -1645 713 1856 3130 1335 -1646 368 3282 1309 2299 -1647 2250 2101 3171 722 -1648 1841 2104 2251 752 -1649 2170 1733 3036 414 -1650 2785 3173 2328 340 -1651 2164 282 1778 2727 -1652 244 3409 1197 3440 -1653 310 3129 1356 2535 -1654 3069 3619 673 1746 -1655 1738 1781 3163 727 -1656 2016 1957 3080 797 -1657 216 2267 893 2091 -1658 2210 2061 2464 801 -1659 422 3488 3246 1864 -1660 238 2470 1428 3350 -1661 1976 1853 2513 853 -1662 1471 2418 1156 3521 -1663 1955 795 1731 3052 -1664 1124 2259 724 3374 -1665 1432 3024 562 2824 -1666 618 1212 2400 2686 -1667 3669 1186 3536 1736 -1668 2233 2232 880 2231 -1669 2104 999 1752 2251 -1670 2334 339 2967 3565 -1671 1648 825 2276 3780 -1672 2206 895 3036 1733 -1673 2280 788 2069 2705 -1674 2410 525 2936 2624 -1675 3275 867 2613 644 -1676 1411 2243 808 3620 -1677 2588 793 2763 2590 -1678 2589 2590 2763 1380 -1679 1131 3311 730 1981 -1680 3625 3760 2907 1376 -1681 340 2328 1006 2424 -1682 2165 229 3226 1728 -1683 2929 1728 3226 948 -1684 1831 1851 2686 865 -1685 1726 3289 454 3613 -1686 3574 1265 2356 1986 -1687 460 2310 890 2129 -1688 1523 96 97 2509 -1689 2501 1737 3464 546 -1690 1664 651 2954 1744 -1691 1450 2394 1297 3504 -1692 3811 2499 3501 3322 -1693 424 2181 3272 1875 -1694 3053 971 3218 1761 -1695 2365 599 3102 1767 -1696 2477 3205 261 1729 -1697 3506 1321 1883 2650 -1698 1898 3712 2312 835 -1699 1892 347 2156 2345 -1700 1732 835 2312 964 -1701 2030 2278 2279 610 -1702 353 2530 826 1884 -1703 2439 2321 2809 1073 -1704 904 2116 3480 2896 -1705 3218 557 3556 1761 -1706 900 2238 833 2155 -1707 3105 2173 3579 759 -1708 824 2009 3041 1396 -1709 2969 1077 2911 1756 -1710 1021 2839 593 3586 -1711 1667 1114 1990 3277 -1712 323 3000 1047 2924 -1713 1680 2221 793 2588 -1714 1434 3192 1125 2670 -1715 1002 3720 2513 1853 -1716 2507 1045 3478 1760 -1717 2765 1760 3478 375 -1718 2837 472 2066 2311 -1719 435 2316 818 2060 -1720 2968 1900 2484 564 -1721 1222 2531 923 2838 -1722 1576 3023 2912 212 -1723 1945 1740 3377 769 -1724 1859 839 2592 1860 -1725 990 3061 354 2225 -1726 2371 801 2464 1926 -1727 1224 2763 793 2853 -1728 3733 357 3683 1758 -1729 641 1813 3026 1341 -1730 3248 821 2216 3525 -1731 3349 2033 3066 425 -1732 980 2329 935 2053 -1733 3395 3382 636 1888 -1734 3570 1250 3062 1805 -1735 1331 2082 381 2561 -1736 3312 1752 3769 673 -1737 2335 277 3515 1747 -1738 3162 1278 2017 3438 -1739 3200 1195 3317 3303 -1740 697 1272 1907 1257 -1741 957 3268 2291 1735 -1742 1341 2074 576 3786 -1743 1266 2247 1242 3001 -1744 2119 1772 2865 836 -1745 1771 2560 1874 269 -1746 838 2299 3544 2640 -1747 3475 644 2613 1839 -1748 3651 2042 2349 802 -1749 1991 1463 3811 3322 -1750 1073 2809 955 2661 -1751 1861 472 2525 1895 -1752 1779 3350 1084 3386 -1753 681 1956 1388 2862 -1754 1440 236 2367 2025 -1755 1222 2879 1065 3243 -1756 2957 330 2802 1818 -1757 3161 892 1818 2802 -1758 837 2048 994 2837 -1759 261 3205 1002 1853 -1760 2239 954 3351 1768 -1761 2971 1785 2821 946 -1762 1265 3652 805 2544 -1763 1760 2765 888 3832 -1764 1294 1777 3020 209 -1765 1105 2055 3246 3488 -1766 3508 1761 3556 874 -1767 2256 2014 2806 318 -1768 2532 473 2698 1819 -1769 1697 3080 497 2933 -1770 97 2078 898 2509 -1771 1336 1920 3809 686 -1772 803 3223 1175 2281 -1773 2146 820 2847 1969 -1774 23 1852 2749 22 -1775 579 2843 1097 2254 -1776 1939 1782 2902 723 -1777 331 2103 837 2326 -1778 2567 918 2255 1447 -1779 2311 935 2329 2326 -1780 3105 1162 3201 2173 -1781 816 2622 3529 1639 -1782 3379 560 2337 2541 -1783 2338 1036 2541 2337 -1784 863 2516 839 1936 -1785 3606 2294 2142 1100 -1786 2630 1935 2735 459 -1787 825 1648 3573 2641 -1788 253 3645 2002 1795 -1789 2773 1720 393 3446 -1790 2264 2584 2178 541 -1791 2659 656 3566 1762 -1792 683 3397 1127 2934 -1793 2937 2703 1913 1326 -1794 1947 3203 2059 331 -1795 383 1899 986 2563 -1796 2298 1230 395 2403 -1797 713 1481 1931 1856 -1798 2329 980 2496 1947 -1799 787 2384 447 2050 -1800 1737 2399 285 3253 -1801 2060 2168 2290 819 -1802 819 2290 881 2167 -1803 2048 837 2103 481 -1804 1334 3614 2197 827 -1805 412 1803 3827 1209 -1806 1729 226 1967 2477 -1807 1138 924 1557 466 -1808 3172 1797 2887 1101 -1809 3442 2043 2851 706 -1810 1260 2270 1366 3308 -1811 3090 2573 2204 304 -1812 2455 2105 3547 512 -1813 3180 2421 3224 843 -1814 2718 2707 2562 866 -1815 2143 881 2202 2373 -1816 2179 3788 1586 1802 -1817 2320 2581 3243 1065 -1818 1964 385 2305 2973 -1819 643 2664 1258 3589 -1820 2366 1823 3138 958 -1821 3716 439 3138 1823 -1822 3748 1141 2917 1801 -1823 671 2913 997 2038 -1824 492 2377 871 2869 -1825 553 2661 1415 2769 -1826 1962 312 2944 2618 -1827 2365 1767 3522 1476 -1828 1033 1923 1075 2569 -1829 2194 763 2885 1808 -1830 3148 3419 2400 415 -1831 2993 1769 3397 683 -1832 1851 1831 2765 375 -1833 3782 1426 3109 1959 -1834 723 2902 1164 3288 -1835 3676 1511 2758 3714 -1836 1834 3699 1370 2466 -1837 300 400 1244 1072 -1838 1648 3780 50 51 -1839 2031 576 2359 2268 -1840 3337 1865 2702 301 -1841 2281 439 3620 2094 -1842 864 2445 240 2459 -1843 1078 2416 811 2603 -1844 2788 2956 1828 700 -1845 2271 1924 3429 1096 -1846 3413 827 2197 949 -1847 1595 3629 257 3045 -1848 2388 666 3755 1862 -1849 1531 353 2057 3114 -1850 3162 3438 1774 417 -1851 1062 991 1949 3254 -1852 1286 2822 2321 868 -1853 2750 1837 2578 934 -1854 891 3164 1287 2808 -1855 3638 1798 3698 258 -1856 927 2300 959 2408 -1857 1649 2443 462 2111 -1858 2010 1151 3284 2801 -1859 2634 1844 2786 810 -1860 1266 3001 1139 1992 -1861 1876 2001 2502 737 -1862 1880 267 1779 3386 -1863 1753 1421 3159 3681 -1864 3498 358 2674 3838 -1865 2332 2026 2459 863 -1866 3771 2277 3806 1358 -1867 2617 975 2376 2377 -1868 2667 1847 2791 910 -1869 1785 91 92 2821 -1870 1586 639 3026 1802 -1871 3147 38 39 3784 -1872 302 3458 1275 1783 -1873 1275 3458 1276 2159 -1874 508 3365 1262 2606 -1875 686 1922 2755 1336 -1876 1638 452 2818 1845 -1877 2101 235 2303 3171 -1878 1230 869 567 395 -1879 778 2023 3527 2396 -1880 802 2349 954 2246 -1881 887 2434 289 2093 -1882 2177 3761 2941 1815 -1883 1914 3252 1915 671 -1884 228 1575 3130 1856 -1885 2536 1007 3247 1801 -1886 3012 2372 2977 1171 -1887 1828 2401 3268 957 -1888 1004 2789 1110 2369 -1889 2497 1798 3124 956 -1890 448 2511 1001 2383 -1891 1746 673 3769 1811 -1892 1264 399 3135 3155 -1893 2695 821 2458 2046 -1894 730 1312 2740 1890 -1895 2395 2962 2949 479 -1896 1225 269 2870 1891 -1897 2422 2534 2942 1043 -1898 1615 2058 446 3063 -1899 440 2041 981 3038 -1900 1434 3040 1320 2172 -1901 2935 2040 3014 1017 -1902 2942 482 3014 2040 -1903 1219 2471 1017 3014 -1904 379 2355 819 2167 -1905 1593 1880 206 2754 -1906 3300 2152 3532 245 -1907 1689 707 3744 2081 -1908 2517 1948 2603 811 -1909 3279 900 2155 2410 -1910 1586 2013 2511 448 -1911 2569 2598 2314 1033 -1912 674 3457 485 1789 -1913 1634 2666 910 3301 -1914 1515 3225 3553 2217 -1915 224 2402 3534 1707 -1916 3700 1318 2415 2111 -1917 1649 2111 2415 688 -1918 1471 2365 777 3657 -1919 1675 11 12 2469 -1920 2148 1975 2748 912 -1921 540 1365 3071 2141 -1922 952 1948 2517 3352 -1923 1265 2544 2960 502 -1924 381 2366 958 2780 -1925 703 2717 1254 3348 -1926 1135 2248 534 2857 -1927 1228 3443 1949 2149 -1928 2806 2014 2899 734 -1929 1220 3016 1058 3088 -1930 97 98 3054 2078 -1931 1057 3709 1693 3149 -1932 2887 1797 3380 1117 -1933 3638 1249 3739 1798 -1934 472 2837 994 2525 -1935 3570 1805 3833 535 -1936 2667 2545 2914 1847 -1937 1090 2216 821 2695 -1938 3203 1088 2696 3055 -1939 2181 634 3175 3728 -1940 2781 1855 2895 662 -1941 2498 919 2892 1858 -1942 2505 1829 2985 718 -1943 726 1594 3307 270 -1944 1720 2773 741 2405 -1945 1331 2561 745 3678 -1946 983 2178 3112 3287 -1947 3142 2392 2454 905 -1948 2130 311 3344 1870 -1949 3000 1094 477 2931 -1950 2696 2047 2498 519 -1951 1244 2364 2160 1248 -1952 1460 3414 2750 934 -1953 2995 465 1448 1445 -1954 778 2228 1059 2339 -1955 2935 669 3445 2040 -1956 1954 2827 3156 342 -1957 3485 1812 3595 1237 -1958 464 1968 1125 3192 -1959 1561 24 25 2488 -1960 2060 818 3063 2168 -1961 3033 1825 3300 989 -1962 1543 2072 817 3812 -1963 847 2135 3377 1740 -1964 3632 755 2378 2379 -1965 413 3845 1292 2361 -1966 1338 3216 1045 2559 -1967 1990 731 2260 3277 -1968 548 2697 916 2029 -1969 767 1458 1366 766 -1970 2457 1809 3405 441 -1971 1552 643 3589 1830 -1972 834 2636 3492 1954 -1973 1668 2341 2430 941 -1974 1640 2864 2026 230 -1975 1008 3217 1413 2739 -1976 3228 409 3015 1854 -1977 1955 3052 3382 3395 -1978 984 3533 325 1479 -1979 2861 1039 2655 2297 -1980 1528 20 21 3637 -1981 687 1967 870 2671 -1982 2781 1821 3232 933 -1983 1849 418 1850 755 -1984 2166 889 2297 2655 -1985 774 2199 3580 1925 -1986 424 3010 986 2295 -1987 1423 1904 3556 557 -1988 429 1958 916 2835 -1989 1639 2277 3771 816 -1990 1717 1128 3356 2532 -1991 3778 1375 2485 2668 -1992 1165 2775 940 2690 -1993 617 1433 2834 2144 -1994 1243 2586 979 2981 -1995 2505 997 3688 1829 -1996 1686 490 3635 2751 -1997 640 2514 1153 3437 -1998 2963 2892 2154 296 -1999 825 1404 3815 2276 -2000 1518 3590 742 3349 -2001 2650 1883 2938 486 -2002 347 3227 783 2156 -2003 1618 3095 1373 1882 -2004 552 2087 1050 3298 -2005 1649 885 2840 2443 -2006 1933 275 1833 3204 -2007 2736 2825 2478 1024 -2008 2508 1844 3319 1111 -2009 3600 798 3463 1824 -2010 2824 2353 3280 884 -2011 568 3562 1264 3155 -2012 2592 224 3830 1860 -2013 1647 1533 1180 2004 -2014 418 1849 764 3551 -2015 1612 2548 59 60 -2016 1666 2549 72 73 -2017 475 1896 1120 3048 -2018 204 1891 909 2950 -2019 2290 2168 3063 446 -2020 2991 1997 3685 233 -2021 3470 1397 2425 3406 -2022 2749 1852 3153 943 -2023 1851 2412 2370 3125 -2024 2483 1223 3661 2538 -2025 2734 2323 2382 455 -2026 902 2807 1235 3067 -2027 1028 2474 482 2492 -2028 1893 451 2272 3137 -2029 838 3237 1888 1543 -2030 3407 768 3259 1838 -2031 1230 2298 3802 3292 -2032 2985 1829 3688 485 -2033 1868 2067 2585 859 -2034 1837 2750 69 70 -2035 2626 684 1554 315 -2036 2034 3358 1843 345 -2037 3061 1102 1897 2943 -2038 2022 317 3310 1878 -2039 991 585 2149 1949 -2040 82 83 3806 2277 -2041 1962 1963 3508 874 -2042 1337 2402 224 2592 -2043 2454 2392 2304 995 -2044 1457 2620 2029 916 -2045 1465 3413 317 2183 -2046 235 3049 665 1881 -2047 499 1343 3843 1841 -2048 2825 2032 2627 996 -2049 1461 2622 816 2621 -2050 2203 3189 1859 276 -2051 2067 1868 3179 489 -2052 1856 1931 3318 228 -2053 718 2985 1181 3513 -2054 3293 413 3715 1855 -2055 2269 786 3228 1854 -2056 1835 2110 2233 879 -2057 1231 3759 591 2510 -2058 1896 1174 2737 1121 -2059 1179 3535 503 2296 -2060 3264 1862 3755 857 -2061 1108 3511 522 2744 -2062 1276 3290 512 2159 -2063 520 2406 1014 2543 -2064 3848 436 3519 1965 -2065 457 2468 889 2186 -2066 1535 2128 3044 234 -2067 1973 2770 2568 969 -2068 415 1846 701 3410 -2069 843 1594 1653 3385 -2070 1547 2471 1219 3531 -2071 1284 3847 381 2082 -2072 3395 438 3126 1955 -2073 275 1933 925 2975 -2074 1737 3253 1035 3464 -2075 2342 2081 3744 846 -2076 2802 1280 2503 3161 -2077 557 1966 3011 1423 -2078 2614 1974 2795 1012 -2079 436 3848 1573 2222 -2080 1492 932 2343 2374 -2081 1596 218 1862 3264 -2082 1609 2663 3365 508 -2083 1775 3659 2285 1346 -2084 2525 994 2845 2162 -2085 1602 3491 1211 3604 -2086 3800 3723 31 32 -2087 1942 754 3788 2179 -2088 3179 1868 3770 951 -2089 2256 846 2899 2014 -2090 420 2704 1227 3110 -2091 3017 1352 3233 2593 -2092 1345 896 2593 3233 -2093 1442 2846 2191 1009 -2094 2625 2624 2936 1076 -2095 1738 3322 3501 1857 -2096 3376 3046 1911 1203 -2097 2744 1911 3046 1751 -2098 1135 3188 584 2248 -2099 675 1854 3015 3387 -2100 729 3648 2079 1676 -2101 3574 1986 2782 338 -2102 2702 1865 3298 1050 -2103 1330 37 38 3147 -2104 1495 3628 1979 3763 -2105 1645 1969 2847 715 -2106 1340 2731 2732 1038 -2107 2158 963 377 1417 -2108 1474 2184 3239 602 -2109 1813 3617 3223 337 -2110 2001 1876 3756 822 -2111 1313 3332 1314 2555 -2112 1466 921 3399 2724 -2113 521 3369 1297 2394 -2114 1652 3552 661 2972 -2115 528 2559 1045 2507 -2116 2240 1893 3137 789 -2117 2787 507 2695 2046 -2118 2823 456 3197 1885 -2119 1356 1875 3272 642 -2120 1279 3569 564 3273 -2121 325 1655 862 1479 -2122 980 2395 479 2496 -2123 3696 3761 2436 1506 -2124 2156 903 2575 2345 -2125 1528 3637 2749 943 -2126 2566 1927 3341 929 -2127 3429 1924 3062 383 -2128 1466 704 2815 1997 -2129 595 2137 3060 1405 -2130 687 3441 2477 1967 -2131 758 1541 3137 2272 -2132 2671 1921 3099 687 -2133 1903 841 2109 3477 -2134 1382 3628 1495 3671 -2135 1513 100 101 3731 -2136 3081 586 529 740 -2137 1357 2697 1339 1909 -2138 1473 2756 44 45 -2139 844 2817 509 2011 -2140 1028 3346 1307 2474 -2141 1816 3800 32 33 -2142 468 2591 840 2218 -2143 2051 282 2164 2607 -2144 2384 1885 3708 928 -2145 1601 2280 2758 613 -2146 458 2772 3692 2079 -2147 419 3186 736 1913 -2148 492 2869 970 2044 -2149 2007 2890 3029 1342 -2150 1583 3029 2890 743 -2151 3274 2131 1647 2049 -2152 855 2867 1086 2742 -2153 3525 2138 2606 1262 -2154 244 3440 3324 1745 -2155 1905 667 3324 3440 -2156 1552 1929 3150 365 -2157 2197 2122 3530 949 -2158 2480 892 3161 2114 -2159 2480 2114 3164 891 -2160 2059 813 2300 927 -2161 3237 438 3395 1888 -2162 1988 1989 3796 625 -2163 2338 2337 2753 796 -2164 1780 732 3793 1901 -2165 3676 3714 2997 480 -2166 1431 87 88 2852 -2167 537 3088 1058 2196 -2168 1158 3191 339 2334 -2169 546 3464 1035 1898 -2170 318 2806 1177 3037 -2171 559 3336 1387 2660 -2172 2135 847 2411 3520 -2173 1176 2654 637 2587 -2174 1971 1003 3330 1928 -2175 1607 450 1928 3330 -2176 56 3 57 3509 -2177 76 3510 75 4 -2178 3117 779 3820 1908 -2179 1582 3695 741 2773 -2180 820 2146 1086 2610 -2181 2388 2108 2871 812 -2182 2242 848 3252 1914 -2183 1641 2572 3597 2136 -2184 1010 2508 1111 2803 -2185 2868 3450 2254 1061 -2186 1758 1443 3210 3733 -2187 2217 2804 2434 887 -2188 762 1943 1133 3741 -2189 1641 805 3652 2572 -2190 901 2662 484 2125 -2191 646 1295 3276 1917 -2192 490 1902 952 3352 -2193 2459 2026 2864 864 -2194 2968 1389 3381 1900 -2195 1966 1226 2648 3011 -2196 800 3715 1562 3794 -2197 1543 3812 1920 368 -2198 1419 2097 2742 410 -2199 2278 2268 2554 3533 -2200 1595 65 66 2790 -2201 3812 817 3809 1920 -2202 1386 3575 2314 1034 -2203 447 2384 928 1866 -2204 2470 238 2916 2012 -2205 1864 3246 2055 697 -2206 2537 626 3208 3005 -2207 644 3475 1457 2722 -2208 2816 497 3080 1957 -2209 2391 1903 3477 220 -2210 2770 1146 3111 2568 -2211 1537 3178 1147 3578 -2212 715 2847 1397 3675 -2213 1511 2963 296 1995 -2214 569 1426 3150 2207 -2215 3105 759 3297 2018 -2216 2064 854 3008 1087 -2217 1639 3329 80 81 -2218 736 3816 1435 2652 -2219 2262 2453 2873 988 -2220 3129 3641 1912 657 -2221 2156 783 2645 903 -2222 2612 1959 3109 594 -2223 2028 2325 3426 945 -2224 1455 2966 680 2003 -2225 826 2530 993 2630 -2226 449 2148 782 2658 -2227 989 2746 1267 3033 -2228 2982 2015 3133 735 -2229 504 2846 1442 2169 -2230 2566 441 3405 1927 -2231 3411 1440 2025 3390 -2232 1932 899 3460 2324 -2233 3725 734 2899 2301 -2234 2677 1927 3405 1000 -2235 996 2783 1039 2604 -2236 1482 2237 350 3762 -2237 661 2948 1322 2972 -2238 1916 2166 2655 343 -2239 1400 2140 2844 295 -2240 1953 2913 1435 3816 -2241 617 2144 1159 3760 -2242 2710 2005 3433 922 -2243 374 2387 1115 3499 -2244 1480 2989 450 3299 -2245 2257 2015 2982 845 -2246 2351 480 2300 813 -2247 2359 936 2554 2268 -2248 211 1462 3041 2009 -2249 3391 760 3151 3104 -2250 3668 371 2939 2063 -2251 1143 3453 456 2823 -2252 843 2354 3307 1594 -2253 2735 1935 3757 1301 -2254 2392 532 2850 2304 -2255 2654 2428 2515 637 -2256 1723 2180 2860 352 -2257 736 3186 1183 3281 -2258 2631 478 3426 2325 -2259 968 2133 204 2950 -2260 810 2665 464 2172 -2261 2036 2812 2374 931 -2262 392 3657 777 2106 -2263 1799 3157 2200 312 -2264 1648 51 52 3295 -2265 2735 1301 2036 931 -2266 1378 2213 2646 322 -2267 1778 3684 675 3387 -2268 1996 459 2735 2343 -2269 2154 1934 3648 729 -2270 1923 537 2196 3279 -2271 2601 2599 328 2600 -2272 697 2055 2915 1272 -2273 765 2209 1311 2644 -2274 2742 2097 2953 855 -2275 3061 2943 2174 354 -2276 2157 1322 2948 2874 -2277 2782 2171 2691 338 -2278 972 1966 557 3219 -2279 2275 3763 1979 924 -2280 2772 458 3465 2035 -2281 1231 2510 783 3227 -2282 1788 795 1955 3265 -2283 2066 915 3700 2487 -2284 1795 2002 3685 937 -2285 826 2630 459 2220 -2286 2579 2614 2688 1025 -2287 284 3596 1402 2518 -2288 2249 3833 2558 873 -2289 1279 3074 379 2205 -2290 1974 2614 2579 510 -2291 650 3238 950 1961 -2292 213 3211 973 2352 -2293 3126 1408 3265 1955 -2294 3142 1132 3156 1982 -2295 1032 2650 486 3077 -2296 788 1964 3392 530 -2297 673 3505 1164 3312 -2298 3564 1391 1499 589 -2299 858 2998 1221 3593 -2300 815 1688 3390 2025 -2301 387 2856 1036 2338 -2302 2886 1977 3218 971 -2303 2651 1142 3655 2056 -2304 1401 2056 3655 303 -2305 574 3021 1199 2635 -2306 929 3341 563 1952 -2307 310 3030 1398 3129 -2308 844 2917 1141 2817 -2309 3227 347 3799 2045 -2310 1846 849 2407 2800 -2311 3219 1977 3339 972 -2312 2861 2406 2604 1039 -2313 1948 318 3037 2603 -2314 3281 485 3688 1953 -2315 2872 460 2129 1020 -2316 770 3143 572 2000 -2317 1492 3098 2427 932 -2318 1993 3435 699 2436 -2319 1742 583 3040 3221 -2320 570 3139 999 2104 -2321 2125 3456 2551 1028 -2322 1909 2581 2320 875 -2323 1763 3803 2124 699 -2324 1144 3267 1077 2969 -2325 930 2792 1303 1972 -2326 1140 2964 1261 2225 -2327 1537 2020 605 3178 -2328 239 2192 1374 2908 -2329 2609 404 270 2287 -2330 1021 3059 721 2183 -2331 533 1538 3803 1763 -2332 705 1252 3626 1946 -2333 474 3312 1164 2902 -2334 1916 343 2627 2302 -2335 3281 1953 3816 736 -2336 2915 1951 3722 352 -2337 1345 1104 3722 1951 -2338 1521 1061 2254 3303 -2339 595 1405 3734 2610 -2340 905 2454 356 2700 -2341 1740 2348 3043 847 -2342 2669 1006 2328 2591 -2343 513 2964 1140 2547 -2344 1671 3238 650 2019 -2345 734 2153 1177 2806 -2346 2827 1954 3492 1184 -2347 1548 2091 893 2951 -2348 2265 2092 2952 894 -2349 1170 2983 534 2248 -2350 485 3457 1181 2985 -2351 2973 1155 3392 1964 -2352 314 3241 808 2243 -2353 1814 330 2957 2313 -2354 723 3288 333 1978 -2355 2913 1953 3688 997 -2356 853 3313 219 1976 -2357 777 2405 3749 2106 -2358 1766 523 2144 2834 -2359 3553 3225 3502 2069 -2360 2705 2069 3502 324 -2361 786 2269 2657 1271 -2362 1030 3321 1429 2987 -2363 362 1811 3769 2493 -2364 253 3687 1522 2764 -2365 2886 286 3339 1977 -2366 2612 1194 3782 1959 -2367 98 99 2083 3054 -2368 2093 753 3848 1965 -2369 2230 2462 3747 442 -2370 809 1994 3258 1268 -2371 293 2998 858 2088 -2372 1989 2537 3005 1149 -2373 1691 1716 295 3089 -2374 1475 431 3508 1963 -2375 2297 501 2308 2861 -2376 910 2666 1167 2667 -2377 2093 1965 3519 887 -2378 875 2320 505 2628 -2379 2021 2618 2944 1053 -2380 2828 228 3318 1985 -2381 3122 3778 2668 550 -2382 1039 2783 343 2655 -2383 992 2174 724 3027 -2384 1503 3141 53 54 -2385 43 44 2756 2282 -2386 1877 891 2808 2419 -2387 1090 3083 1194 2612 -2388 993 2530 966 2489 -2389 3468 1970 3781 1112 -2390 28 3644 27 2 -2391 2658 782 2738 2241 -2392 1496 78 79 3106 -2393 712 2229 2845 1485 -2394 2162 2845 2229 309 -2395 1220 2100 547 3016 -2396 1546 3495 1281 2753 -2397 1014 2700 967 2543 -2398 869 2903 3663 359 -2399 2527 2721 3127 538 -2400 2155 833 3512 3002 -2401 303 2339 1059 3255 -2402 849 3206 548 2029 -2403 1869 487 3373 2637 -2404 677 3822 1549 2730 -2405 3467 2215 3257 1089 -2406 624 1606 3627 2227 -2407 585 991 1255 493 -2408 1093 2683 953 2684 -2409 2748 1975 3737 670 -2410 1745 3324 2309 830 -2411 1902 2734 2342 952 -2412 668 2288 1227 2704 -2413 1137 2602 883 2423 -2414 1116 2988 1024 2150 -2415 1440 2123 2961 236 -2416 2478 2604 2406 520 -2417 1676 2375 3772 396 -2418 582 1458 767 1510 -2419 780 3383 1299 2761 -2420 3360 1351 3377 2135 -2421 350 3093 1025 2693 -2422 788 530 3553 2069 -2423 3068 1154 3435 1993 -2424 2573 855 2953 2204 -2425 1988 879 2233 2231 -2426 1754 3789 246 2826 -2427 1034 3797 2520 1386 -2428 1710 2292 3328 746 -2429 272 1983 3754 1288 -2430 905 2700 1014 2308 -2431 1220 3415 1019 2100 -2432 969 3235 1328 2552 -2433 1464 2279 984 3169 -2434 701 2175 3355 1629 -2435 1069 231 3385 1653 -2436 3209 1126 2898 2595 -2437 715 3675 509 1984 -2438 3242 417 2586 3610 -2439 1634 313 3770 2582 -2440 3055 813 2059 3203 -2441 216 2777 1131 3388 -2442 3454 1231 3227 2045 -2443 2978 499 3433 2005 -2444 334 2580 1350 3424 -2445 3365 2663 2361 1292 -2446 2062 2094 3620 808 -2447 3550 3474 2729 1277 -2448 68 2065 3269 67 -2449 985 2512 1132 3393 -2450 2032 2825 2736 488 -2451 2705 1055 2758 2280 -2452 1025 3093 1026 2579 -2453 1550 2596 219 3313 -2454 2556 1106 3166 2073 -2455 549 2636 1238 3207 -2456 1693 3709 210 2720 -2457 1874 2560 3072 925 -2458 1085 2850 532 2774 -2459 1124 3693 489 2259 -2460 2297 2085 3393 501 -2461 633 2757 1115 2387 -2462 3791 829 3034 2335 -2463 1303 2327 628 2891 -2464 3579 2173 3432 1107 -2465 3201 762 3432 2173 -2466 1529 3489 1103 3497 -2467 911 3045 1685 3044 -2468 432 2863 1764 3118 -2469 316 1068 1479 862 -2470 1975 2822 1286 3737 -2471 608 971 3053 1695 -2472 3129 1398 2457 3641 -2473 2325 944 2701 2631 -2474 2738 351 3116 2241 -2475 1090 2695 507 3083 -2476 2830 2002 3645 1317 -2477 1794 2033 3349 742 -2478 2830 233 3685 2002 -2479 1388 3305 1360 2039 -2480 738 2170 2956 1436 -2481 3728 1256 3272 2181 -2482 2819 2490 2673 1010 -2483 1918 42 43 3214 -2484 2670 1125 3654 2368 -2485 1032 3077 995 2304 -2486 1150 2643 1070 2978 -2487 1347 2585 694 2526 -2488 380 1390 1391 3564 -2489 2716 3283 1160 2052 -2490 1477 2089 297 3193 -2491 2410 2155 3002 525 -2492 737 3601 527 2010 -2493 2081 2342 2734 455 -2494 2374 2343 2735 931 -2495 1842 757 3615 2463 -2496 965 2341 488 2736 -2497 2925 2619 2584 1046 -2498 814 1662 3684 2188 -2499 3624 3271 2797 629 -2500 941 2430 470 2653 -2501 217 3375 1114 2730 -2502 1099 2811 1297 3369 -2503 1816 33 34 3399 -2504 857 2441 1596 3264 -2505 1919 3527 2023 1263 -2506 2065 1327 2790 3269 -2507 67 3269 2790 66 -2508 1796 365 3782 1194 -2509 266 1294 3099 2236 -2510 1797 2675 831 3380 -2511 460 2872 802 2246 -2512 449 2658 955 2809 -2513 3310 949 3530 2533 -2514 445 2923 895 2206 -2515 1454 3139 570 3585 -2516 1879 1180 433 2733 -2517 271 571 3167 2841 -2518 2042 3651 3359 1200 -2519 1750 2426 1076 2936 -2520 926 3158 1134 2597 -2521 1880 3386 2292 206 -2522 2888 3417 3392 1155 -2523 2741 1037 2693 2574 -2524 548 2974 1339 2697 -2525 3101 2376 2725 494 -2526 1170 2248 584 2881 -2527 876 698 2876 2878 -2528 437 2062 808 3327 -2529 2215 14 15 3257 -2530 2619 2925 2926 660 -2531 1878 770 3680 2022 -2532 320 2216 1090 3504 -2533 3110 1227 2057 3343 -2534 1777 2404 3034 829 -2535 763 2194 1107 3431 -2536 1162 3151 1424 3201 -2537 2450 3455 3086 469 -2538 631 1214 3368 2473 -2539 989 2403 241 2746 -2540 2377 2376 3101 871 -2541 1498 2139 709 3091 -2542 1223 3128 544 3661 -2543 3008 3005 3208 1087 -2544 3161 515 3164 2114 -2545 1235 2504 722 3031 -2546 791 2852 88 2285 -2547 2438 3096 2900 1123 -2548 35 36 2134 3296 -2549 2171 2027 3594 781 -2550 1905 3643 46 47 -2551 479 2949 1236 3416 -2552 902 3067 208 2163 -2553 3727 2105 3792 751 -2554 2455 1169 3792 2105 -2555 3799 1182 3454 2045 -2556 1873 1308 2889 3745 -2557 2809 2321 2822 449 -2558 1026 3094 590 1950 -2559 1725 2668 2485 850 -2560 424 2295 3682 1570 -2561 2880 3682 2295 638 -2562 563 2677 1158 3342 -2563 2326 837 2837 2311 -2564 1709 1008 3239 2184 -2565 3555 1560 3520 2411 -2566 2000 2546 3680 770 -2567 771 2032 488 3677 -2568 2025 2367 3670 815 -2569 610 3678 745 2030 -2570 2137 470 2430 3060 -2571 311 3775 1588 3344 -2572 1876 2801 3284 341 -2573 1146 3085 1041 3111 -2574 978 1452 3807 2034 -2575 3195 2249 2939 1178 -2576 1701 3408 2391 856 -2577 2351 813 3055 2187 -2578 1144 2969 495 2681 -2579 337 3223 803 2118 -2580 1458 582 3367 1016 -2581 982 3229 358 2273 -2582 1985 2966 908 2828 -2583 329 2848 3046 3376 -2584 941 2713 3777 1668 -2585 1452 978 2584 2619 -2586 1085 2920 1027 2768 -2587 633 3235 1711 3730 -2588 877 2293 1190 3517 -2589 1414 3136 628 2327 -2590 247 2747 1407 3529 -2591 3127 2721 2986 1040 -2592 2053 2840 2395 980 -2593 1492 2374 2812 491 -2594 1139 3001 363 2767 -2595 2768 2689 2850 1085 -2596 2584 978 3112 2178 -2597 1594 726 316 1653 -2598 1640 3070 259 3804 -2599 3006 2189 3119 1022 -2600 511 2258 823 1887 -2601 2307 968 3532 2152 -2602 2539 1149 3005 3008 -2603 2240 789 3351 423 -2604 407 2301 2899 1589 -2605 1971 372 3732 2121 -2606 2036 390 3008 854 -2607 2839 3680 2546 1349 -2608 18 19 2185 3398 -2609 1242 2965 363 3001 -2610 2812 2317 3115 491 -2611 546 3160 1092 2501 -2612 227 2778 3754 1983 -2613 542 2456 990 2759 -2614 2283 3476 386 2798 -2615 1224 2447 1380 2763 -2616 1816 1530 3723 3800 -2617 1036 2857 534 3425 -2618 1082 2889 1308 3231 -2619 2508 1010 2673 1049 -2620 3076 3636 2068 1462 -2621 2113 3394 2121 703 -2622 2438 930 3123 3306 -2623 1516 860 2778 2444 -2624 3099 2096 3441 687 -2625 2920 1085 2774 2570 -2626 3251 1451 2063 3817 -2627 1127 3363 611 2934 -2628 1685 962 3035 2245 -2629 1428 2470 943 3153 -2630 855 2573 1130 2867 -2631 326 3642 1127 2322 -2632 1998 756 3526 2605 -2633 1676 2079 3692 728 -2634 1123 2792 930 2438 -2635 2688 2574 2693 1025 -2636 1037 2715 350 2693 -2637 324 2557 1055 2705 -2638 2702 2084 3513 301 -2639 2476 40 41 3554 -2640 1534 3027 724 2259 -2641 1529 2244 665 3489 -2642 3102 599 3521 2283 -2643 2741 2615 2714 1037 -2644 1779 973 3091 2916 -2645 900 3065 364 2238 -2646 1110 1762 3566 2224 -2647 2508 1049 2711 531 -2648 2564 324 3502 2090 -2649 3789 815 3670 2261 -2650 457 2793 985 2468 -2651 750 2432 1218 2816 -2652 2491 332 2319 2946 -2653 1129 3075 2275 3056 -2654 2804 2217 3553 530 -2655 722 3171 1098 3031 -2656 1652 2213 1378 3222 -2657 3200 2928 3391 1195 -2658 619 3646 1715 3340 -2659 594 3270 1450 3202 -2660 936 2359 926 3528 -2661 2054 2797 3820 779 -2662 1052 2827 1184 3025 -2663 1315 3727 751 2368 -2664 2614 1012 3004 2688 -2665 342 3156 1132 2512 -2666 1030 2987 521 2394 -2667 1204 3084 1205 3662 -2668 248 3573 1412 2776 -2669 2308 1014 2406 2861 -2670 3094 1074 1499 590 -2671 2674 1283 3601 3479 -2672 1909 321 3243 2581 -2673 480 2997 959 2300 -2674 2536 2669 2977 1007 -2675 1639 3529 1407 3329 -2676 289 2434 1173 3360 -2677 1277 2729 575 3404 -2678 1539 2490 2819 1013 -2679 1206 316 862 861 -2680 672 1324 2200 3157 -2681 1889 3806 83 84 -2682 2276 3815 48 49 -2683 1412 3573 1648 3295 -2684 61 62 3487 2333 -2685 3542 2333 3487 1168 -2686 1040 2424 1006 3127 -2687 3652 1469 2918 2572 -2688 1971 2121 3394 1003 -2689 2658 2241 3116 955 -2690 3151 1162 3105 3104 -2691 1580 3382 3052 3371 -2692 2911 364 3065 3230 -2693 2604 2478 2825 996 -2694 1189 1843 3358 2289 -2695 3609 389 3459 2363 -2696 1605 735 3133 2350 -2697 2073 995 3077 2556 -2698 905 2308 501 3013 -2699 2169 2796 3037 1177 -2700 2603 3037 2796 1078 -2701 2965 3389 2712 974 -2702 2496 2708 2696 1088 -2703 1656 945 3426 3427 -2704 3441 2096 3720 1002 -2705 3245 1241 3480 2116 -2706 1082 2987 1429 2760 -2707 2635 3612 3500 574 -2708 886 2529 1215 2805 -2709 3706 2123 3467 1089 -2710 2900 1027 2615 2741 -2711 1748 2621 816 3771 -2712 2358 988 2762 2577 -2713 2199 2519 2521 773 -2714 1013 2819 518 3073 -2715 1010 2803 518 2819 -2716 1037 2714 1051 2715 -2717 786 1271 3241 2195 -2718 1369 3115 970 3459 -2719 1110 2224 389 3495 -2720 2798 947 3102 2283 -2721 1714 3356 1128 3673 -2722 2047 2696 2708 1005 -2723 2213 938 2743 2646 -2724 1489 584 3082 3181 -2725 885 2495 1044 2962 -2726 478 2631 2701 1214 -2727 439 3716 1411 3620 -2728 953 2264 541 3134 -2729 1313 2993 3326 2315 -2730 2900 3096 2768 1027 -2731 1431 2682 243 3412 -2732 1741 2518 1402 3825 -2733 16 2284 3257 15 -2734 2403 989 3300 2298 -2735 2428 1160 3283 2515 -2736 2765 2515 3283 888 -2737 1809 1201 2910 2940 -2738 2967 339 2940 2910 -2739 2584 2264 3215 1046 -2740 1151 3136 1414 3284 -2741 2840 885 2962 2395 -2742 942 2227 3627 1698 -2743 80 2331 3106 79 -2744 3065 900 3279 2196 -2745 1175 3138 439 2281 -2746 1211 3491 528 2507 -2747 1195 377 1196 3317 -2748 2563 986 3009 3546 -2749 52 53 3141 2347 -2750 2496 479 3416 2708 -2751 2026 2332 3072 230 -2752 3173 2785 2932 1095 -2753 2669 2536 3127 1006 -2754 3831 2414 3748 281 -2755 2426 526 2600 1076 -2756 996 2627 343 2783 -2757 3360 2135 3520 289 -2758 316 726 2877 1068 -2759 1946 3626 1035 3253 -2760 1485 2291 3268 712 -2761 326 2439 1073 3642 -2762 3542 1168 3587 2128 -2763 3315 2522 3004 1157 -2764 1699 1031 3299 2611 -2765 1362 3442 706 3018 -2766 1467 2641 3573 248 -2767 2044 970 3115 2317 -2768 3703 374 3499 2145 -2769 1283 3753 1064 3250 -2770 1153 2409 483 3437 -2771 1857 3022 3079 1252 -2772 2921 1071 2733 2151 -2773 3429 1359 3537 1096 -2774 379 3074 899 2355 -2775 207 2494 3311 1663 -2776 1312 730 3311 2494 -2777 3177 2289 3844 554 -2778 3182 3181 3082 1229 -2779 1777 829 3791 3020 -2780 1529 3497 2250 214 -2781 2101 2250 3497 1103 -2782 1305 3302 904 2896 -2783 735 2440 1590 2982 -2784 3040 1434 2670 3221 -2785 2736 1024 2988 2524 -2786 573 3447 1413 3019 -2787 3479 2502 2947 917 -2788 1184 3244 517 3025 -2789 2917 844 3166 2527 -2790 2721 2527 3166 1106 -2791 1123 3315 551 2792 -2792 1319 3038 981 3039 -2793 1320 3596 284 2634 -2794 1461 247 3529 2622 -2795 843 3385 231 2190 -2796 425 1830 3589 2381 -2797 2757 1083 2698 473 -2798 1698 3098 1492 3557 -2799 901 2492 482 2942 -2800 921 2991 1627 2992 -2801 1228 2149 1229 3082 -2802 1943 2678 3603 1133 -2803 1431 3412 1192 3120 -2804 1418 2594 836 2865 -2805 2607 2164 3686 1143 -2806 2703 2937 2643 577 -2807 2977 2372 3247 1007 -2808 680 2252 3767 1296 -2809 93 94 3767 2252 -2810 3355 2175 3674 514 -2811 2800 1118 3674 2175 -2812 203 2226 904 3302 -2813 1405 3060 965 3742 -2814 1870 800 3794 2130 -2815 784 3048 1355 2417 -2816 244 2647 1473 3409 -2817 843 3224 249 2354 -2818 2957 1042 3174 2313 -2819 1055 2557 959 2997 -2820 1768 3351 789 2500 -2821 313 1253 2350 3133 -2822 3242 1172 2901 3559 -2823 611 3571 1425 2934 -2824 2003 3746 2984 251 -2825 2926 2927 3194 660 -2826 494 2389 1281 3101 -2827 3526 756 3534 2402 -2828 1551 543 3039 3174 -2829 2591 2328 3173 840 -2830 255 3849 1342 3029 -2831 1357 2835 916 2697 -2832 513 3172 1261 2964 -2833 2202 914 3752 2373 -2834 1022 3119 496 2385 -2835 2341 965 3060 2430 -2836 2323 1117 3380 2382 -2837 1689 2382 3380 831 -2838 1279 2205 1392 3569 -2839 2304 2850 2689 1032 -2840 1182 2832 741 3695 -2841 2846 504 3582 2191 -2842 3183 1229 2149 585 -2843 237 2497 956 3190 -2844 1067 1628 3813 2344 -2845 3742 2524 2988 335 -2846 1873 3745 2154 729 -2847 873 2855 3817 2063 -2848 293 3372 1221 2998 -2849 3286 1199 3021 3481 -2850 1369 2639 491 3115 -2851 1102 3061 990 2456 -2852 2141 3071 2499 691 -2853 1432 2824 884 3256 -2854 2690 940 2820 3690 -2855 1782 3839 3765 1298 -2856 2591 468 2977 2669 -2857 1239 2810 299 2894 -2858 3307 1305 3167 3558 -2859 778 3401 463 2228 -2860 1135 2857 1036 2856 -2861 1098 3261 1235 3031 -2862 3312 474 2251 1752 -2863 1652 3222 554 3844 -2864 3522 348 3184 3581 -2865 3022 461 3712 3079 -2866 621 1791 3736 2766 -2867 3630 2766 3736 798 -2868 3270 2305 3321 1030 -2869 2132 2427 3098 280 -2870 2189 3006 3088 537 -2871 3007 1220 3088 3006 -2872 517 2615 1027 2920 -2873 373 2608 1169 3280 -2874 1063 2842 1097 2843 -2875 574 3500 1456 2904 -2876 245 3532 1372 3707 -2877 259 2805 1215 3804 -2878 1810 2161 515 3810 -2879 3496 1944 1094 2999 -2880 1827 712 3268 2401 -2881 2349 423 3351 954 -2882 2727 2191 3582 1056 -2883 433 271 3814 2733 -2884 2543 967 2745 3028 -2885 2150 3028 2745 1116 -2886 302 3842 1432 3458 -2887 606 3123 930 2433 -2888 3708 1019 3415 2481 -2889 2106 3749 2832 1430 -2890 1236 3249 1158 2334 -2891 988 2873 579 2762 -2892 1468 3828 307 2451 -2893 2011 2642 3166 844 -2894 2369 3379 2449 1004 -2895 231 426 1230 3292 -2896 2920 2570 3025 517 -2897 2774 1052 3025 2570 -2898 905 3013 1132 3142 -2899 2122 2197 3614 547 -2900 1197 3409 1473 3266 -2901 3628 1382 3421 3422 -2902 2138 3525 2216 320 -2903 526 2426 1750 748 -2904 2646 2743 3493 1193 -2905 1062 2725 1255 991 -2906 3119 2314 3575 496 -2907 614 3710 1619 3291 -2908 2522 2900 2741 2574 -2909 499 3697 2679 1343 -2910 1234 3807 661 3552 -2911 370 3403 1153 2514 -2912 2370 2412 3216 603 -2913 1822 2866 3842 302 -2914 527 3210 1443 2397 -2915 1195 3391 3104 1163 -2916 3844 2289 3358 1234 -2917 2088 3402 2994 1044 -2918 1461 2234 3518 731 -2919 2888 1155 2973 3234 -2920 1517 2398 334 3424 -2921 1172 3075 1129 2901 -2922 2711 1049 3210 2849 -2923 2565 1198 631 2473 -2924 2652 3462 2937 1326 -2925 1239 2685 852 3702 -2926 1063 2843 579 2873 -2927 3334 2421 3180 215 -2928 3831 281 3247 2372 -2929 3006 1022 3679 3007 -2930 543 2379 3729 2814 -2931 2884 2814 3729 702 -2932 2567 1447 3498 3838 -2933 2235 842 2638 3451 -2934 2338 3263 3254 387 -2935 3314 1062 3254 3263 -2936 2650 1032 2689 3506 -2937 2639 1369 2224 3566 -2938 2926 2925 2924 1047 -2939 2450 840 3173 3455 -2940 406 1479 1068 1554 -2941 801 2371 303 3255 -2942 3436 373 3280 2353 -2943 2534 2422 3705 283 -2944 1609 1217 3705 2422 -2945 1478 3050 838 2640 -2946 3621 2884 3212 1209 -2947 1718 3212 2884 702 -2948 62 63 2429 3487 -2949 1081 2260 731 3518 -2950 1732 964 3354 314 -2951 2036 1301 3362 390 -2952 2986 2556 3077 486 -2953 2117 440 3621 2523 -2954 348 1489 3181 3182 -2955 2832 3749 2405 741 -2956 2930 964 2312 3370 -2957 3310 317 3413 949 -2958 3050 1029 3237 838 -2959 3018 3224 2421 1362 -2960 2599 2601 3797 1034 -2961 2344 2932 2785 1067 -2962 2127 974 2712 3240 -2963 3521 1156 3476 2283 -2964 1446 2273 358 3498 -2965 1801 538 3127 2536 -2966 387 3254 1949 3443 -2967 3237 1029 3333 438 -2968 2522 2574 2688 3004 -2969 2018 1163 3104 3105 -2970 2556 2986 2721 1106 -2971 1670 607 3548 2418 -2972 3476 1156 2418 3548 -2973 2434 2804 3417 1173 -2974 1190 1191 695 2208 -2975 2732 2731 2461 443 -2976 3614 3718 3016 547 -2977 2286 3634 1944 1119 -2978 1109 2521 1655 325 -2979 2925 1046 3215 2924 -2980 1711 2568 3111 484 -2981 3391 2928 2842 760 -2982 3200 1097 2842 2928 -2983 3436 2353 2990 1300 -2984 624 2227 942 3717 -2985 1827 3572 2486 1185 -2986 3784 1516 3719 3147 -2987 2068 1330 3147 3719 -2988 1091 3128 1223 3482 -2989 3271 2723 3820 2797 -2990 3023 1455 2929 2912 -2991 366 2004 444 1937 -2992 2714 3244 2771 1051 -2993 278 2971 3318 1931 -2994 1998 3616 2740 1312 -2995 1444 2740 3616 252 -2996 856 2391 220 3801 -2997 796 2389 494 3314 -2998 768 3407 1325 2336 -2999 1176 2587 865 3419 -3000 2186 2324 3460 457 -3001 2476 3754 2778 860 -3002 1105 3488 2875 3691 -3003 2945 911 3587 2429 -3004 1152 2533 456 3453 -3005 1798 2497 1598 3698 -3006 1000 3191 1158 2677 -3007 1101 2976 1261 3172 -3008 1670 2418 1471 3657 -3009 3635 490 3352 2517 -3010 2829 920 3706 2284 -3011 2346 2912 2929 948 -3012 2126 2841 3167 225 -3013 1546 560 3379 2369 -3014 2938 3622 2424 1040 -3015 1283 2674 358 3753 -3016 1602 2318 528 3491 -3017 1379 3009 986 3010 -3018 2683 323 2924 3215 -3019 593 2839 1349 3633 -3020 2212 2482 3615 757 -3021 350 2715 1051 3762 -3022 647 2558 3833 1805 -3023 2711 2849 3250 1064 -3024 1619 3710 1577 2681 -3025 670 3057 1354 2748 -3026 3195 535 3833 2249 -3027 3561 1166 2751 3635 -3028 313 2257 951 3770 -3029 2205 2294 3606 1392 -3030 797 1572 3561 3434 -3031 1679 3434 3561 601 -3032 746 3328 1428 3236 -3033 3076 937 2815 3636 -3034 3673 1128 3357 2535 -3035 3096 2438 3306 349 -3036 1603 3185 3398 1385 -3037 17 18 3398 3185 -3038 884 2455 512 3290 -3039 3326 3169 406 2315 -3040 2869 2363 3459 970 -3041 1844 2634 284 3319 -3042 3430 1582 2773 3446 -3043 3404 575 3751 3003 -3044 750 3003 3751 1597 -3045 1418 246 3789 2261 -3046 575 2729 1041 3085 -3047 216 3388 1493 3448 -3048 3384 1260 3308 3623 -3049 1894 3623 3308 1016 -3050 2262 376 3353 2453 -3051 594 3202 1090 2612 -3052 1630 2905 1417 3297 -3053 3257 2284 3706 1089 -3054 3249 1236 2949 2994 -3055 2855 3466 2472 1403 -3056 1222 3243 321 2531 -3057 355 2775 1101 2887 -3058 1997 2815 937 3685 -3059 49 50 3780 2276 -3060 542 2759 1091 3097 -3061 529 1213 271 433 -3062 2686 2400 3419 865 -3063 1040 2986 486 2938 -3064 3527 394 3823 2396 -3065 3205 2477 3441 1002 -3066 1084 3350 1428 3328 -3067 1116 3406 335 2988 -3068 2759 2728 3128 1091 -3069 487 2633 1588 3163 -3070 2638 1218 2831 3451 -3071 1432 3256 1276 3458 -3072 2962 1044 2994 2949 -3073 3171 2303 3666 1098 -3074 1333 3084 1204 524 -3075 859 2582 3770 1868 -3076 2445 2446 3709 1057 -3077 2689 2768 3096 349 -3078 3472 544 3128 2728 -3079 3210 1049 2673 3733 -3080 1023 2706 1502 3835 -3081 2873 2453 3353 1063 -3082 2609 2287 571 663 -3083 1203 3087 1202 3376 -3084 1322 696 3493 2743 -3085 2375 1018 2465 3772 -3086 2143 2373 3752 566 -3087 240 2445 1057 3366 -3088 3734 335 3406 2425 -3089 3835 2413 3538 1023 -3090 2738 1092 3160 3165 -3091 1336 2755 609 3829 -3092 1320 3040 583 3449 -3093 3328 2292 3386 1084 -3094 3768 3020 3791 1363 -3095 700 3225 1515 2788 -3096 3370 2312 3712 461 -3097 1855 2781 933 3293 -3098 2398 3765 2417 334 -3099 3300 245 3802 2298 -3100 3669 1555 3619 3069 -3101 2096 209 2513 3720 -3102 646 1917 1258 2854 -3103 1382 3671 597 3539 -3104 1066 2762 579 3213 -3105 219 2596 3659 1775 -3106 2900 2522 3315 1123 -3107 3216 2412 3478 1045 -3108 525 3323 1750 2936 -3109 884 3290 1276 3256 -3110 3796 2539 3362 1532 -3111 3697 1070 3462 2679 -3112 1574 3229 810 2786 -3113 2869 871 3609 2363 -3114 1670 3657 392 3592 -3115 2551 1041 2729 3474 -3116 1424 3667 1063 3353 -3117 1372 2950 909 3658 -3118 3663 918 2567 1887 -3119 2538 2690 3690 580 -3120 1917 2381 3589 1258 -3121 1842 3108 2980 568 -3122 669 2935 3794 1562 -3123 810 3229 982 2665 -3124 2872 2357 3651 802 -3125 998 3676 480 2351 -3126 1789 1183 2656 3483 -3127 2613 867 3483 2656 -3128 258 1449 3689 2346 -3129 1101 2775 1165 2976 -3130 1849 755 3632 1188 -3131 231 1437 3658 2799 -3132 458 2452 987 3465 -3133 3587 1168 3487 2429 -3134 2107 2481 3415 336 -3135 2898 1060 3795 2595 -3136 1522 3702 852 2764 -3137 475 1656 3427 3428 -3138 1456 3368 1214 2701 -3139 1315 2368 3654 360 -3140 382 3275 907 2723 -3141 2285 3659 2596 791 -3142 648 1525 3331 3656 -3143 2876 2877 404 2878 -3144 3131 3670 2367 961 -3145 2800 2407 3588 1118 -3146 2620 294 3588 2407 -3147 361 3346 1028 2551 -3148 3008 390 3362 2539 -3149 1595 2790 1327 3629 -3150 3071 1048 3501 2499 -3151 297 3176 1216 3097 -3152 2357 3777 2713 305 -3153 2126 225 2896 3480 -3154 3578 2344 3813 1537 -3155 1985 3318 2971 946 -3156 1001 3679 1022 2385 -3157 1157 3452 551 3315 -3158 35 2724 3399 34 -3159 3250 2849 3210 527 -3160 609 3262 1278 3162 -3161 2872 1020 3777 2357 -3162 2615 517 3244 2714 -3163 3583 588 3267 1377 -3164 956 2826 1290 3190 -3165 241 623 299 2810 -3166 2046 933 3232 2787 -3167 2293 877 2859 3338 -3168 1304 3152 1031 2893 -3169 1178 3100 1208 3195 -3170 2690 2538 3661 1165 -3171 3807 3721 2948 661 -3172 1510 2576 3367 582 -3173 609 3162 1310 3829 -3174 1073 2661 553 3285 -3175 1036 3425 1161 2541 -3176 3169 3326 3819 1464 -3177 2993 683 3819 3326 -3178 2245 1023 3538 234 -3179 1247 2380 3615 2482 -3180 3601 737 2502 3479 -3181 2664 1269 2787 3232 -3182 3760 3625 3058 617 -3183 1054 1758 3683 2442 -3184 2128 3587 911 3044 -3185 2762 1066 3541 2577 -3186 1734 3588 294 2448 -3187 1629 3287 3112 345 -3188 1238 3486 1439 3207 -3189 644 2722 907 3275 -3190 999 2493 3769 1752 -3191 1834 275 2975 3699 -3192 925 1370 3699 2975 -3193 3111 1041 2551 3456 -3194 2445 864 3608 2446 -3195 2856 3187 3188 1135 -3196 1783 1275 2364 1784 -3197 1289 2467 3593 506 -3198 559 3537 1113 3336 -3199 752 1298 3765 2398 -3200 2358 2577 3541 451 -3201 1387 3336 1113 3337 -3202 1812 3485 2667 1167 -3203 1237 2545 2667 3485 -3204 2855 873 2558 3466 -3205 2424 3622 3631 340 -3206 3738 545 3402 2709 -3207 1000 2940 339 3191 -3208 3550 361 2551 3474 -3209 1285 3642 1073 3285 -3210 883 2637 3373 1565 -3211 2386 1498 3211 961 -3212 557 3218 1977 3219 -3213 3611 1136 2396 3823 -3214 2314 2598 2599 1034 -3215 605 2442 3683 1539 -3216 1273 3545 2546 2000 -3217 2301 407 2546 3545 -3218 1092 3551 764 2501 -3219 3161 2503 3810 515 -3220 1810 3810 2503 3656 -3221 2643 2937 3462 1070 -3222 367 1623 3795 3113 -3223 2047 1005 3565 2967 -3224 1534 2306 454 3289 -3225 2011 509 3470 2745 -3226 1216 3176 1147 3178 -3227 812 3731 101 2435 -3228 392 3567 1573 3592 -3229 3304 3546 3009 552 -3230 2063 1451 3665 3668 -3231 3608 210 3709 2446 -3232 1172 3168 556 3075 -3233 2712 3389 2897 514 -3234 1663 2413 3835 207 -3235 371 3668 1304 2893 -3236 871 3101 1281 3609 -3237 3621 1209 3827 2523 -3238 2117 2523 3827 913 -3239 2289 3177 3148 1189 -3240 673 3619 1555 3505 -3241 1658 3774 1187 3738 -3242 2636 549 2771 3492 -3243 3244 1184 3492 2771 -3244 2980 3108 3154 1332 -3245 1842 2463 3154 3108 -3246 2052 427 3604 2716 -3247 1235 3261 208 3067 -3248 1628 1067 3631 3132 -3249 2533 3530 3197 456 -3250 2107 928 3708 2481 -3251 544 3472 1261 2976 -3252 30 31 3723 2475 -3253 2111 462 2487 3700 -3254 1667 208 3261 2909 -3255 2054 779 3834 3090 -3256 2305 1148 3234 2973 -3257 3304 1359 2563 3546 -3258 2190 3640 2870 1282 -3259 1891 2870 3640 909 -3260 1230 300 2903 869 -3261 307 3828 1004 2449 -3262 1533 3701 433 1180 -3263 2652 308 2679 3462 -3264 399 2528 1749 3649 -3265 773 3528 926 2597 -3266 3095 3591 3294 1373 -3267 2199 773 2597 3580 -3268 1185 2486 616 3750 -3269 40 2476 3784 39 -3270 3267 1144 3471 1377 -3271 3293 2458 3845 413 -3272 1449 1598 2676 3647 -3273 467 1655 2521 2519 -3274 3234 569 3361 2888 -3275 3419 3148 3177 1176 -3276 1138 3056 2275 924 -3277 68 69 2750 3414 -3278 1128 1717 2919 3357 -3279 440 3038 1319 3621 -3280 1323 346 2157 2874 -3281 335 3734 1405 3742 -3282 1524 3468 1112 3469 -3283 1589 3744 707 3514 -3284 203 1753 3681 2623 -3285 1658 2467 384 3774 -3286 1158 3249 545 3342 -3287 1925 3580 2597 1134 -3288 1348 3430 3446 393 -3289 3454 739 3759 1231 -3290 1234 3552 1652 3844 -3291 1348 740 1557 1233 -3292 240 3366 1497 3773 -3293 2779 1175 3223 3617 -3294 2736 2524 3742 965 -3295 1111 3319 284 2906 -3296 1367 2635 1199 3543 -3297 1210 3335 617 3058 -3298 1099 3369 521 3231 -3299 2305 385 3577 3321 -3300 2760 1429 3321 3577 -3301 3826 2640 3544 555 -3302 1508 3431 1107 3432 -3303 2759 990 3472 2728 -3304 674 1789 3483 2836 -3305 1376 1633 2719 3549 -3306 3406 1116 2745 3470 -3307 471 2540 1112 3781 -3308 1998 2605 252 3616 -3309 1477 3086 1095 3503 -3310 3663 2903 300 1072 -3311 2542 1476 3522 3581 -3312 3143 1152 3453 2784 -3313 983 3355 514 2897 -3314 1167 2666 596 3599 -3315 3249 2994 3402 545 -3316 2984 3746 3418 1523 -3317 617 3335 3597 1433 -3318 2586 1243 3168 3610 -3319 2159 2160 2364 1275 -3320 944 1736 3536 2904 -3321 2535 3357 2919 310 -3322 1989 1149 2539 3796 -3323 1527 977 3842 2866 -3324 858 1658 3738 2709 -3325 2965 1242 2897 3389 -3326 2271 1096 2629 3624 -3327 522 3511 3512 1633 -3328 389 3609 1281 3495 -3329 3261 1098 3666 2909 -3330 1108 3323 525 3002 -3331 1240 2718 242 3787 -3332 2346 3689 212 2912 -3333 1500 3113 3795 1060 -3334 1271 3327 808 3241 -3335 832 2547 1140 3805 -3336 760 3667 1424 3151 -3337 1389 2968 1392 3347 -3338 3361 1173 3417 2888 -3339 241 2810 1239 3702 -3340 3525 1262 3365 3248 -3341 3845 3248 3365 1292 -3342 3453 1143 3686 2784 -3343 2793 3576 3273 1329 -3344 2804 530 3392 3417 -3345 1335 2623 3681 713 -3346 1509 3032 3449 583 -3347 3825 1402 3449 3032 -3348 856 3801 1651 2571 -3349 2360 2836 3483 867 -3350 603 3216 1338 3540 -3351 1441 725 3647 2676 -3352 1285 3363 1127 3642 -3353 663 571 271 1213 -3354 3511 1108 3002 3512 -3355 1173 3361 1351 3360 -3356 1437 3707 1372 3658 -3357 2226 1335 3130 3639 -3358 414 3036 3572 1827 -3359 2486 3572 3036 895 -3360 1637 362 2692 3783 -3361 2242 3798 3783 2692 -3362 2110 2208 695 2233 -3363 1623 632 2595 3795 -3364 3622 1512 3132 3631 -3365 323 2999 1094 3000 -3366 1778 3387 3015 1009 -3367 1345 3233 3338 1104 -3368 2293 3338 3233 1352 -3369 501 3393 1132 3013 -3370 2513 3768 2699 853 -3371 3123 1321 3506 3306 -3372 3011 2648 3732 372 -3373 438 3333 1765 3126 -3374 2874 2948 3721 1323 -3375 85 86 3120 3396 -3376 2490 357 3733 2673 -3377 1403 604 3817 2855 -3378 443 1198 2565 2732 -3379 1247 1246 3103 649 -3380 1470 2493 999 3139 -3381 1441 2151 2733 3814 -3382 22 2749 3637 21 -3383 2640 3826 3694 1478 -3384 1157 3672 1414 3452 -3385 2544 1237 3595 2960 -3386 3024 977 2960 3595 -3387 1450 3504 1090 3202 -3388 1250 3570 1567 3766 -3389 3669 3069 3481 1186 -3390 1095 2932 598 3503 -3391 1067 2785 340 3631 -3392 1707 2707 3830 224 -3393 2718 1240 3830 2707 -3394 3135 2211 1246 2212 -3395 2353 2824 562 2990 -3396 2758 1055 2997 3714 -3397 1119 1944 3496 1678 -3398 3735 615 3798 2726 -3399 2483 1011 3482 1223 -3400 1889 3396 3120 1192 -3401 1083 2649 283 3840 -3402 968 2950 1372 3532 -3403 243 2699 3768 1363 -3404 1113 3537 1359 3304 -3405 2532 3356 3824 473 -3406 2689 349 3306 3506 -3407 3640 2799 3658 909 -3408 573 3444 1367 3447 -3409 3481 3021 3536 1186 -3410 361 3605 1307 3346 -3411 1416 3494 1193 3493 -3412 2795 341 3672 1012 -3413 2919 3692 2772 1507 -3414 2421 3334 3442 1362 -3415 3826 555 3559 2901 -3416 3479 917 3838 2674 -3417 3143 2784 3686 572 -3418 1187 3490 563 3342 -3419 1094 1944 3634 476 -3420 2868 1361 3213 3450 -3421 2254 3450 3213 579 -3422 2334 3565 3416 1236 -3423 1259 3484 1540 3846 -3424 665 3049 1103 3489 -3425 1649 3836 3372 293 -3426 3735 3372 3836 1484 -3427 3604 1211 3832 2716 -3428 3283 2716 3832 888 -3429 1825 3033 3664 211 -3430 1795 3664 3033 1267 -3431 3286 3481 3069 539 -3432 431 1475 3690 2820 -3433 2814 2884 3621 1319 -3434 760 2842 1063 3667 -3435 886 2813 1395 2529 -3436 575 3085 1146 3751 -3437 822 3756 2795 1974 -3438 1342 3849 2871 2108 -3439 779 3117 1556 3834 -3440 1051 2771 549 3762 -3441 1243 2981 597 3671 -3442 2123 3706 920 2961 -3443 1392 2968 564 3569 -3444 1700 3711 1430 2832 -3445 2904 3536 3021 574 -3446 1091 3482 297 3097 -3447 2856 387 3443 3187 -3448 3188 3187 3443 1228 -3449 3086 3455 3173 1095 -3450 2927 1323 3721 3194 -3451 3759 3423 3421 591 -3452 615 1637 3783 3798 -3453 937 3076 3664 1795 -3454 630 3251 1419 3841 -3455 1300 2990 1167 3599 -3456 3338 2859 3722 1104 -3457 1382 3420 591 3421 -3458 358 3229 1574 3753 -3459 3696 1257 2941 3761 -3460 286 3560 3561 1572 -3461 1631 1166 3561 3560 -3462 3423 1233 3422 3421 -3463 1252 3079 1035 3626 -3464 1277 3404 1263 3320 -3465 654 3170 3550 1579 -3466 3550 3170 3605 361 -3467 1307 3605 3170 1578 -3468 3095 259 3070 3591 -3469 1320 3449 1402 3596 -3470 1165 3661 544 2976 -3471 527 3601 1283 3250 -3472 3004 1012 3672 1157 -3473 509 3675 1397 3470 -3474 205 3739 1249 2979 -3475 1285 3285 1284 3363 -3476 1265 3574 1469 3652 -3477 2569 328 2599 2598 -3478 2402 1337 3773 3526 -3479 2605 3526 3773 1497 -3480 1911 2907 3760 1159 -3481 2275 3075 556 3763 -3482 499 2978 1070 3697 -3483 2043 3442 3334 3204 -3484 471 3781 1060 2898 -3485 1310 3653 1309 3829 -3486 3273 3576 3460 1279 -3487 398 3524 1126 3209 -3488 3614 1334 3230 3718 -3489 1513 2871 3849 255 -3490 1508 3741 1133 2959 -3491 3808 3220 3665 630 -3492 3668 3665 3220 1304 -3493 2757 473 3824 1115 -3494 556 3764 1495 3763 -3495 3694 3826 2901 1129 -3496 1506 697 1257 3696 -3497 1393 3713 620 3618 -3498 1462 211 3664 3076 -3499 3230 1058 3016 3718 -3500 1129 3056 432 3694 -3501 955 3116 1415 2661 -3502 3242 3610 3168 1172 -3503 3242 3559 3653 1310 -3504 305 3598 1338 3359 -3505 388 2102 290 493 -3506 444 1879 3260 536 -3507 2635 1367 3444 3612 -3508 2299 1309 3653 3544 -3509 348 3182 1229 3183 -3510 1293 3064 1240 3787 -3511 1066 3340 1715 3541 -3512 231 3292 3802 1437 -3513 1798 3739 205 3124 -3514 977 3024 1432 3842 -3515 443 2230 1937 1938 -3516 592 3531 1219 3364 -3517 2738 3165 3846 351 -3518 3070 1225 3294 3591 -3519 1019 3708 1885 3197 -3520 94 95 3418 3767 -3521 535 3195 1208 3743 -3522 655 3309 1540 3758 -3523 521 2987 1082 3231 -3524 1451 3251 630 3665 -3525 3807 1452 3194 3721 -3526 1381 3420 1382 3539 -3527 2136 3597 3335 1210 -3528 46 3643 1197 3266 -3529 2573 3090 3834 1130 -3530 565 3347 1392 3606 -3531 2708 3416 3565 1005 -3532 1495 3764 1243 3671 -3533 556 3168 1243 3764 -3534 1347 3436 1300 3599 -3535 3211 213 3131 961 -3536 341 3284 1414 3672 -3537 526 861 2601 2600 -3538 1122 1121 2737 202 -3539 2793 457 3460 3576 -3540 1605 3535 1179 3516 -3541 1393 3618 1260 3384 -3542 1474 602 3785 1514 -3543 2336 1325 3785 602 -3544 432 3056 1138 2863 -3545 2719 588 3583 3549 -3546 3260 1879 2733 1071 -3547 1801 3247 281 3748 -3548 3160 1259 3846 3165 -3549 1115 3824 3356 1714 -3550 1245 1244 400 3103 -3551 3081 939 3581 3184 -3552 3549 3583 3625 1376 -3553 1427 3713 1393 3607 -3554 1383 3540 1338 3598 -3555 545 3738 1187 3342 -3556 1047 1542 2927 2926 -3557 2726 1221 3372 3735 -3558 3198 536 3260 3199 -3559 1309 3282 1336 3829 -3560 3058 3625 3583 1377 -3561 3559 555 3544 3653 -3562 3663 1887 823 359 -3563 1790 3463 798 3736 -3564 3746 1296 3767 3418 -3565 1425 3571 1331 3678 -3566 1026 3093 1074 3094 -3567 1425 3678 610 3818 -3568 1208 3100 1491 3439 -3569 535 3743 1567 3570 -3570 3175 1671 3703 3728 -3571 3193 297 3482 1011 -3572 3423 3759 739 1232 -3573 1732 3704 3740 612 -3574 2145 1256 3728 3703 -3575 2243 1411 3740 3704 -3576 1411 3716 1422 3740 -3577 283 3705 1681 3840 -3578 245 3707 1437 3802 -3579 377 2018 3297 1417 -3580 1343 3585 570 3843 -3581 621 1980 344 2263 -3582 1979 3628 3422 288 -3583 1464 3819 1425 3818 -3584 2414 3831 3808 1558 -3585 3220 3808 3831 1371 -3586 3426 1174 3428 3427 -3587 1938 202 2737 631 -3588 1245 1784 2364 1244 -3589 2519 2520 3797 467 -3590 3307 3558 2287 270 -3591 2876 698 3691 2875 -3592 3167 571 2287 3558 -3593 3184 1270 586 3081 -3594 2894 299 3198 3199 -3595 348 3183 1270 3184 -3596 536 1122 202 444 -3597 1937 444 202 1938 -3598 3084 1333 279 1205 -3599 2340 1205 279 2380 -3600 590 298 869 359 -3601 869 298 1079 567 -3602 1391 298 590 1499 -3603 3103 400 300 649 -3604 1230 426 649 300 -3605 3198 622 1196 306 -3606 2877 2876 1538 315 -3607 1653 316 1206 1069 -3608 1204 3662 526 329 -3609 526 748 2848 329 -3610 395 567 344 623 -3611 1079 767 344 567 -3612 623 344 1980 622 -3613 2263 344 767 766 -3614 963 346 1542 2931 -3615 963 2158 2157 346 -3616 1315 360 1448 1248 -3617 2004 366 2049 1647 -3618 1380 366 1937 2589 -3619 2018 377 1195 1163 -3620 2102 388 2232 403 -3621 3081 393 1720 939 -3622 2390 403 695 1191 -3623 2233 695 403 2232 -3624 2609 403 2390 876 -3625 270 404 2877 726 -3626 2878 404 2609 876 -3627 1554 684 2315 406 -3628 3169 984 1479 406 -3629 3803 1538 2876 422 -3630 1247 649 426 1207 -3631 466 434 906 1138 -3632 1408 906 434 3265 -3633 3274 1646 434 2131 -3634 1533 1647 2131 434 -3635 1937 2230 442 2589 -3636 1938 631 1198 443 -3637 1879 444 2004 1180 -3638 3317 453 1521 3303 -3639 3317 1196 1626 453 -3640 3663 1072 1448 465 -3641 740 529 466 1557 -3642 433 3701 466 529 -3643 3797 2601 861 467 -3644 1094 476 1121 477 -3645 1121 476 1120 1896 -3646 3634 2286 1120 476 -3647 306 963 2931 477 -3648 2737 478 1214 631 -3649 388 493 1255 976 -3650 1333 524 1332 3154 -3651 3662 1206 861 526 -3652 2626 533 1910 806 -3653 315 1538 533 2626 -3654 1145 565 3606 1100 -3655 1079 1390 565 1145 -3656 1079 1145 566 767 -3657 3752 1510 767 566 -3658 1145 1100 2143 566 -3659 3183 585 586 1270 -3660 3564 589 3776 1439 -3661 359 823 1950 590 -3662 1302 1791 621 2263 -3663 1980 1626 1196 622 -3664 388 626 880 2232 -3665 1989 880 626 2537 -3666 388 976 3208 626 -3667 2626 806 3332 684 -3668 2315 684 3332 1313 -3669 3691 698 896 1345 -3670 3046 2848 748 1751 -3671 1314 3332 806 1930 -3672 2293 1352 1191 1190 -3673 698 876 1353 896 -3674 3017 1353 876 2390 -3675 3017 2593 896 1353 -3676 325 936 3528 1109 -3677 325 3533 2554 936 -3678 3581 939 1720 2542 -3679 2376 975 1255 2725 -3680 975 2617 976 1255 -3681 2617 2182 3208 976 -3682 1458 1016 3308 1366 -3683 1448 1072 1244 1248 -3684 475 3428 1174 1896 -3685 3517 1190 2208 1611 -3686 1624 1625 1204 1202 -3687 1069 1206 3662 1207 -3688 1205 2340 1207 3662 -3689 1348 1233 3423 1232 -3690 3103 1246 2211 1245 -3691 1783 1784 1245 1274 -3692 1207 2340 2380 1247 -3693 3547 1315 1248 2160 -3694 1416 2158 1417 2905 -3695 465 2995 1446 2255 -3696 3630 1520 1626 2766 -3697 434 1646 1788 3265 -3698 1553 104 1 9 +7 18364 1 18364 +2 1 3 6088 +1 1459 3025 431 2672 +2 1762 4321 452 3904 +3 211 2871 1085 2204 +4 2864 522 4806 1829 +5 2750 2098 5642 999 +6 2638 311 5398 2044 +7 1256 2686 5590 3349 +8 2236 856 4877 2929 +9 1267 4762 2652 2359 +10 1347 3035 1014 2443 +11 293 3392 1940 5063 +12 1486 1874 5154 2421 +13 3960 2367 4975 614 +14 645 2924 1473 2345 +15 3809 2819 4011 1428 +16 5217 2283 5675 1820 +17 1284 3426 1750 3740 +18 1538 4505 5510 2438 +19 2750 443 2974 2098 +20 3672 4530 2443 317 +21 4544 845 4819 1946 +22 5535 1830 3992 1277 +23 4889 2665 1271 5371 +24 593 5663 2408 2224 +25 5940 1836 4017 1262 +26 4045 4511 3088 573 +27 1590 2505 348 4293 +28 1762 4377 680 3611 +29 2239 4735 2263 429 +30 3893 1473 2924 4414 +31 2099 1650 5465 2956 +32 3559 1845 3641 2893 +33 842 4673 1857 3953 +34 5632 918 2834 1936 +35 2499 2529 2342 1107 +36 221 2019 5262 2519 +37 382 5560 1859 2948 +38 205 3144 1285 2392 +39 2198 3524 870 256 +40 2158 6105 2296 261 +41 5506 2974 1916 5359 +42 2661 4206 2890 441 +43 3179 3351 2482 353 +44 2114 4640 2132 295 +45 1333 4514 814 2777 +46 2691 2109 2587 291 +47 4667 1864 3866 1504 +48 3309 2086 5427 219 +49 1707 812 2136 4802 +50 5356 2205 2406 801 +51 6163 406 5261 1865 +52 5877 1345 3866 1864 +53 4544 1982 4944 845 +54 949 2790 4552 2611 +55 2437 494 4897 2666 +56 2408 864 3906 2224 +57 5448 2041 2388 860 +58 1274 2792 936 2594 +59 2834 682 4896 1936 +60 682 3128 1448 2719 +61 4865 265 2578 2123 +62 3268 1871 4197 688 +63 1780 2288 2251 4932 +64 273 4095 5418 2456 +65 991 2726 1462 3211 +66 3195 1181 2410 3672 +67 5484 1922 2952 917 +68 6220 2574 2634 809 +69 4400 1947 4735 866 +70 2100 5120 51 52 +71 2661 441 2696 4024 +72 1459 3447 945 3025 +73 2938 1932 5831 1009 +74 3374 1876 5561 1284 +75 1219 3739 5478 2459 +76 1965 5665 511 5601 +77 5446 5805 2688 941 +78 1958 3895 1147 5325 +79 837 5235 2323 5370 +80 2191 5939 2040 5699 +81 3278 1064 3973 1885 +82 2596 1014 3012 3564 +83 898 4260 1524 2618 +84 1308 1977 2725 5872 +85 2189 2781 294 6141 +86 722 5017 1940 3724 +87 1114 3404 5082 3153 +88 1478 2244 772 4212 +89 1957 454 1958 5325 +90 3105 1028 3495 4680 +91 3933 1712 5171 299 +92 1562 3699 1873 4933 +93 4271 1949 4780 611 +94 5865 3271 1573 4266 +95 2779 2162 4319 212 +96 3895 1958 4861 621 +97 4653 2587 4884 819 +98 2142 5853 2214 507 +99 1759 2114 785 5407 +100 3713 4849 3097 1281 +101 350 4128 1615 2533 +102 1738 2562 365 4482 +103 4218 843 2584 2108 +104 4624 1828 5464 2379 +105 5696 930 4024 2650 +106 5254 789 5631 4091 +107 1916 3996 1070 3975 +108 2406 2205 2645 967 +109 2644 5431 1886 4536 +110 1825 3563 784 3932 +111 5262 2019 4968 737 +112 4375 5519 4379 1376 +113 4616 856 3504 2060 +114 663 4232 1636 2516 +115 1013 3434 1510 2805 +116 3497 4096 2713 482 +117 549 2410 1181 3082 +118 1783 951 2483 5575 +119 720 3026 2013 5951 +120 1338 4347 1785 5156 +121 5702 2014 4747 970 +122 3152 3951 2494 607 +123 3784 1963 5090 874 +124 2158 973 2486 2485 +125 2017 2472 880 5515 +126 2933 3072 2440 1122 +127 373 2539 1811 4792 +128 4223 1365 3864 2045 +129 4343 2045 3864 654 +130 5036 484 4851 3553 +131 6130 1930 3904 452 +132 2184 2987 1108 5948 +133 5476 2453 6219 2020 +134 4236 632 4878 2008 +135 2458 1466 4707 4054 +136 4462 2366 5096 1553 +137 2974 443 3996 1916 +138 1134 2682 333 2588 +139 2620 450 3924 2275 +140 980 3329 1411 2867 +141 1396 2898 1063 2850 +142 4309 4820 2006 929 +143 2583 2079 3831 867 +144 1449 3128 682 2834 +145 2952 411 4756 1981 +146 814 4650 5569 2777 +147 3603 4344 2866 312 +148 2515 1080 3635 2082 +149 2092 790 1984 5227 +150 3991 2685 2475 1102 +151 4769 2024 5408 1107 +152 5930 1935 4192 211 +153 3144 205 4190 1931 +154 949 2389 267 2390 +155 3916 2245 4194 422 +156 1608 3816 805 3043 +157 2938 1205 3649 1932 +158 4780 1949 3430 1332 +159 1428 4706 481 3809 +160 4064 1931 4190 1133 +161 4611 1436 4263 2137 +162 1740 4315 372 2843 +163 4936 2107 2967 969 +164 1160 2553 893 2552 +165 4659 1938 6011 1470 +166 1846 6059 708 2964 +167 1469 3827 1131 4147 +168 781 3113 987 2747 +169 857 3746 1425 3552 +170 5574 963 3904 1930 +171 1492 2414 1382 3557 +172 1522 5627 2932 2438 +173 4731 4396 885 2722 +174 1067 2748 501 2731 +175 1986 4830 698 3434 +176 3392 811 3724 1940 +177 4097 635 4795 2001 +178 5629 1360 5100 2059 +179 5073 904 2697 5666 +180 2050 3923 2180 881 +181 3861 813 5179 1783 +182 2528 677 4764 1890 +183 786 4217 1736 4422 +184 2498 4554 3383 813 +185 1130 3657 1733 3656 +186 6096 2445 2618 1847 +187 640 2746 1695 4552 +188 415 2957 1505 3308 +189 4727 440 3250 1751 +190 1708 4966 1876 3374 +191 733 2979 1995 4823 +192 1023 2426 1022 2714 +193 4042 1964 3479 1006 +194 5702 2325 5967 2014 +195 5353 4073 1969 5367 +196 4271 1249 4122 1949 +197 2568 807 5457 2131 +198 3811 1482 1856 225 +199 2254 446 2388 2041 +200 603 3551 1584 3047 +201 2571 5605 1543 4222 +202 3070 360 3641 2212 +203 2468 1177 3071 2469 +204 1345 2647 797 3866 +205 821 2843 1876 4966 +206 2074 2075 721 1100 +207 3826 226 3629 5106 +208 4447 2190 830 2258 +209 94 2088 4010 93 +210 1014 2596 317 2443 +211 433 2942 1488 2679 +212 5269 1960 4178 1135 +213 1592 4880 986 2209 +214 2736 2900 2565 1010 +215 3327 2342 1259 5583 +216 1334 2122 3161 5953 +217 911 3692 270 2610 +218 5161 2116 5783 1663 +219 1819 2511 417 3296 +220 3776 1644 5594 2937 +221 6003 1870 770 4710 +222 1099 2736 1010 2748 +223 3146 2357 2642 994 +224 3972 215 2592 4474 +225 5967 932 5784 2377 +226 1538 2687 679 4323 +227 1790 4513 369 3586 +228 5444 57 58 4616 +229 5462 5251 2103 3208 +230 2303 509 5982 2248 +231 4178 1960 4430 693 +232 5939 412 4496 2040 +233 789 5930 1850 3988 +234 1677 2461 713 4179 +235 3498 568 2704 3852 +236 3370 4045 2720 1184 +237 3160 38 39 3986 +238 1381 2769 1095 3643 +239 2200 763 4800 2199 +240 1600 2537 649 4235 +241 3999 2231 2726 719 +242 6111 1125 3924 1963 +243 2862 268 2333 4606 +244 4446 1964 5917 1413 +245 803 1973 5058 2076 +246 83 2370 4940 82 +247 3099 1191 5853 3129 +248 3728 1972 5501 675 +249 1317 3297 1082 3409 +250 2399 234 3703 4047 +251 2180 3693 5245 2628 +252 2797 1998 6150 758 +253 2894 6021 2525 388 +254 4104 1517 4432 2405 +255 2605 1166 5000 3037 +256 3479 284 3083 2051 +257 5233 1973 5505 2402 +258 1025 2604 1669 4792 +259 2444 1009 2601 2437 +260 613 2084 1101 3849 +261 3270 518 2600 3714 +262 4059 4305 2845 1468 +263 790 4620 1962 5119 +264 2113 751 5681 2742 +265 2579 443 2750 4529 +266 2571 3993 2093 1154 +267 5303 847 3334 2072 +268 4446 1413 4683 2448 +269 2529 524 6113 2342 +270 3707 529 2542 1158 +271 428 4802 2136 2823 +272 5939 2191 2870 3877 +273 356 4645 6036 2252 +274 227 3150 1879 4476 +275 2337 958 5771 2431 +276 620 4419 2036 6075 +277 740 4338 2328 4516 +278 3641 2327 3688 2893 +279 2416 4021 2815 860 +280 1991 5238 2286 1021 +281 30 5309 1934 3273 +282 2903 2069 3074 919 +283 2675 420 4602 2139 +284 3728 1065 3987 1972 +285 2687 1538 2438 4300 +286 3003 584 2769 2183 +287 3987 435 4051 1972 +288 4543 2520 2843 821 +289 3188 1320 3787 2372 +290 3758 400 2247 1580 +291 3292 1326 2509 3703 +292 2714 1022 5962 2592 +293 3314 1996 6166 778 +294 2169 2951 2723 1034 +295 3917 3974 2933 1430 +296 3050 1709 5189 2102 +297 875 3855 2132 5859 +298 5277 944 3345 2800 +299 2116 306 2444 5539 +300 1773 4137 660 3936 +301 2273 2186 5610 358 +302 2456 2187 5606 273 +303 4988 2065 3994 765 +304 1164 3533 234 2399 +305 2158 2485 974 6105 +306 2044 5549 925 2638 +307 2675 4234 746 2110 +308 5871 2238 1046 2237 +309 754 3694 1623 3218 +310 973 2158 261 3573 +311 3960 1545 5301 2367 +312 2673 1043 4528 2157 +313 735 4724 2112 2854 +314 2248 976 5957 2303 +315 3966 734 3841 2207 +316 2079 2583 3058 1064 +317 5553 2972 5075 773 +318 1093 3134 472 3543 +319 1041 3822 5317 3355 +320 1907 4915 717 5134 +321 1043 4457 1840 4528 +322 3823 2489 3538 246 +323 3968 1993 4553 1170 +324 4474 957 3532 2418 +325 97 98 5111 2424 +326 2228 6007 1013 3546 +327 5994 5046 674 3435 +328 2397 3745 969 5723 +329 3070 1438 5671 2975 +330 3263 1029 4479 2021 +331 2878 954 2506 3536 +332 783 3955 1298 2277 +333 730 2624 4943 4135 +334 385 2105 1572 5007 +335 4097 2001 4325 1356 +336 1443 3098 1970 5149 +337 2583 867 5966 2269 +338 3309 1075 3582 2086 +339 2182 2680 2983 1193 +340 1651 2903 919 2424 +341 3883 2345 3418 1008 +342 2470 5609 785 5372 +343 4732 2960 4229 343 +344 2050 5004 984 3163 +345 887 2599 489 3109 +346 5176 397 4217 2095 +347 799 5541 1985 2582 +348 3070 2212 3320 1044 +349 1565 3937 1353 2803 +350 2424 2762 96 97 +351 1109 2858 469 2813 +352 3158 1241 2739 3310 +353 4896 3820 5632 1936 +354 4236 2008 5915 1367 +355 2805 4311 4017 227 +356 1123 2873 1059 2586 +357 2246 4417 4370 831 +358 5427 2086 5305 2560 +359 1837 4434 657 3975 +360 6168 4083 1816 2598 +361 2010 2733 925 5549 +362 988 4980 2329 5013 +363 2176 1624 5603 2177 +364 3787 247 6039 2289 +365 3878 1361 3673 2758 +366 2672 431 4749 2220 +367 3592 212 4319 2009 +368 793 3126 1500 5299 +369 5023 946 4048 2134 +370 5637 2835 2106 756 +371 2801 3886 3605 1115 +372 2677 1048 5813 2355 +373 1405 3550 332 3029 +374 5606 2187 5545 1775 +375 4479 387 5142 2021 +376 2536 5571 1786 236 +377 4677 2313 3715 251 +378 4587 2092 5906 276 +379 1417 3121 346 4609 +380 3993 2571 4222 1664 +381 2515 2011 4127 376 +382 2378 2631 5702 970 +383 2831 1169 4435 5165 +384 2954 2046 4668 1537 +385 518 2877 1129 2600 +386 4678 2015 4106 513 +387 5119 201 5701 2268 +388 1669 2604 1232 2767 +389 2499 3373 3367 2529 +390 4008 1396 2850 3635 +391 2316 1729 4436 444 +392 1068 2806 1319 3266 +393 2343 4616 58 59 +394 2770 1266 2837 2868 +395 560 4149 1818 3117 +396 6151 2043 5657 1901 +397 808 2794 1985 5541 +398 3263 2021 4178 693 +399 5255 2454 3043 805 +400 4363 996 3095 1848 +401 3009 2097 4161 1189 +402 1005 2742 5398 2882 +403 2105 385 5837 3224 +404 5924 2349 5771 958 +405 915 5280 2039 2829 +406 607 2494 1352 3700 +407 3676 5999 5158 636 +408 4549 1618 2723 2488 +409 793 5429 1401 3126 +410 1189 4161 1756 3332 +411 4624 2379 5039 4567 +412 499 4501 5802 2484 +413 4576 1814 3120 5423 +414 3706 2223 2928 979 +415 4599 1769 2923 3899 +416 3544 2412 4881 1116 +417 441 3338 5202 2696 +418 2244 3373 2499 465 +419 2304 4329 678 6229 +420 4562 2093 4937 778 +421 3993 461 4938 2093 +422 875 2367 5301 3855 +423 1044 3320 4931 2833 +424 1084 3542 1147 3895 +425 4618 2033 4586 1407 +426 3995 2111 5050 921 +427 616 2859 1476 3648 +428 1347 3269 482 2713 +429 4385 654 3864 2210 +430 2669 644 5480 2033 +431 4498 6085 4648 780 +432 640 4373 1887 2746 +433 955 5980 5750 2627 +434 4462 4111 5917 2366 +435 4042 2366 5917 1964 +436 3135 2513 99 100 +437 2394 2625 4105 1124 +438 2179 2838 5527 368 +439 346 4532 1927 5441 +440 398 2626 1871 5113 +441 4428 2128 4481 279 +442 2176 2177 962 4939 +443 975 2446 350 2659 +444 5188 2385 3579 955 +445 5148 5051 448 2976 +446 848 3265 6032 4491 +447 5266 5922 1033 3494 +448 3610 749 4715 2427 +449 432 4304 3640 2350 +450 2668 2129 5146 791 +451 3743 1604 5146 2129 +452 1770 4022 1155 4138 +453 2586 629 5809 4895 +454 4883 621 3095 1782 +455 2806 3807 3261 1319 +456 622 5621 2154 2788 +457 3940 1705 5139 288 +458 1038 4159 1849 4145 +459 2795 879 5957 2295 +460 2673 2157 3139 452 +461 3865 690 2946 5070 +462 295 4185 5486 2114 +463 3711 2630 2506 954 +464 3954 2765 3747 1025 +465 5293 2303 5957 879 +466 4865 2123 5958 2211 +467 2337 3877 4031 477 +468 6013 742 4319 2162 +469 667 4237 1765 3989 +470 5406 980 5188 2085 +471 2675 2110 5102 420 +472 2958 4804 4026 1567 +473 3105 2108 4978 1028 +474 4873 2039 5280 1209 +475 66 67 3923 2050 +476 4161 2097 3552 207 +477 873 4480 1921 5038 +478 2248 960 2308 5931 +479 2130 3154 1601 5259 +480 4201 2042 4330 457 +481 3874 2336 6158 1287 +482 317 2596 1233 3253 +483 2916 521 5584 2209 +484 3111 2145 3272 1024 +485 2556 2557 4740 863 +486 1916 3975 657 5359 +487 4249 766 3660 2174 +488 2742 1005 5250 2113 +489 2258 830 3629 4148 +490 1603 3750 542 4363 +491 3036 2808 5535 1277 +492 2603 222 4497 1923 +493 2277 2885 5096 783 +494 2298 854 2594 404 +495 5595 643 3475 2250 +496 5529 2255 3949 387 +497 6103 2295 5957 976 +498 4988 1641 4601 2065 +499 1947 5969 2263 4735 +500 5378 2495 2591 1056 +501 2121 2504 4205 1279 +502 4837 1239 3884 2566 +503 2426 519 4887 3812 +504 4125 439 3188 2372 +505 1521 3960 5864 2763 +506 3946 2225 4151 433 +507 345 3547 2249 6184 +508 635 4995 1794 4795 +509 5211 2077 4716 413 +510 2050 881 2155 5004 +511 885 4396 1713 3647 +512 2412 960 2910 2909 +513 5539 771 5783 2116 +514 2645 510 6046 2312 +515 5352 2588 333 2104 +516 1782 2963 223 5043 +517 2440 2630 6066 2653 +518 2051 3083 4020 841 +519 4817 2727 2569 583 +520 228 4595 1506 2285 +521 5882 4404 3732 1915 +522 493 2576 974 2485 +523 2518 1031 5753 2138 +524 4744 1405 3029 2332 +525 1713 4396 4731 4550 +526 2351 2399 4047 822 +527 230 4800 1593 5083 +528 870 5281 6183 1681 +529 3156 245 2773 3704 +530 4727 2375 5880 440 +531 252 2795 2295 6103 +532 5324 5472 2660 465 +533 4617 1872 5428 2227 +534 1740 4269 1369 4315 +535 883 5180 2105 3224 +536 3074 299 5788 2065 +537 3430 2059 4095 1332 +538 4549 2488 4418 715 +539 2921 80 81 2527 +540 302 4662 1613 4786 +541 4363 1848 4561 1603 +542 4204 1577 4938 2493 +543 2012 823 5393 2159 +544 2451 1048 2677 2813 +545 2416 860 2388 4761 +546 3176 1273 4628 2078 +547 4157 434 4571 2611 +548 4221 1433 5198 2053 +549 1563 4199 1065 3728 +550 893 4065 4878 2436 +551 3050 2102 6037 301 +552 1598 4715 1108 2987 +553 2230 4157 1287 4308 +554 3477 762 4635 2083 +555 1370 4023 364 2335 +556 3818 1343 4998 1983 +557 2928 483 3644 2523 +558 3581 1245 4571 2063 +559 3217 1312 2913 3646 +560 3552 2097 4760 857 +561 2854 2339 4297 735 +562 1559 5092 825 2501 +563 5697 3950 2186 6055 +564 2655 608 3333 3958 +565 2337 2950 6091 958 +566 3020 2232 5622 963 +567 1603 5689 1140 3750 +568 2959 2532 70 71 +569 2903 597 4642 2069 +570 1032 6010 2645 2312 +571 5655 2022 3867 453 +572 3961 2170 886 4711 +573 5921 54 55 3504 +574 3545 2415 4568 496 +575 4443 1647 1406 2344 +576 3538 2166 5239 246 +577 2046 2954 296 5888 +578 3494 1033 3806 2100 +579 3871 517 2800 3345 +580 4781 5390 2699 990 +581 6161 1269 3824 2055 +582 601 2543 1628 4447 +583 877 4572 2322 6062 +584 3020 273 5606 2232 +585 1148 4216 1733 4921 +586 2363 1206 2307 4835 +587 4217 786 4683 2095 +588 2348 21 22 5656 +589 2205 5356 1882 6087 +590 3062 238 2734 3459 +591 5813 2354 6022 2355 +592 3329 980 5406 2283 +593 5531 1826 4158 367 +594 2368 3133 2667 525 +595 5414 2178 5855 1497 +596 3635 496 4568 2082 +597 5803 2582 1985 6060 +598 705 3880 1693 3621 +599 913 3860 4713 2197 +600 3069 2449 2961 3249 +601 2712 874 5090 2382 +602 1067 2755 1198 2981 +603 3831 2079 5002 25 +604 2080 4092 307 5400 +605 6109 2078 4628 279 +606 3949 2083 4635 1094 +607 5065 1862 5707 3867 +608 1878 4477 661 3546 +609 2902 5399 3736 1583 +610 4988 765 5941 2088 +611 4113 6088 4320 2361 +612 2732 5350 4940 2370 +613 5532 2082 4980 988 +614 2167 4654 939 5107 +615 428 2823 1357 2340 +616 709 3726 4729 2569 +617 2322 5253 495 6146 +618 2440 2653 2731 501 +619 1878 4476 5639 884 +620 2658 4855 1670 5387 +621 1198 3442 475 2981 +622 2645 2205 6087 510 +623 459 4038 2113 5250 +624 4112 455 3556 2310 +625 3826 1089 3473 1753 +626 5161 733 4823 2116 +627 2147 5178 796 3471 +628 1220 2757 330 3038 +629 6134 4679 5543 2196 +630 3457 966 4684 2222 +631 2111 3125 1029 5006 +632 954 2878 5011 3649 +633 1614 4809 661 2396 +634 2823 2136 3776 767 +635 3989 1765 4384 1136 +636 1447 4151 1311 3793 +637 3663 2144 4425 1019 +638 1977 4977 734 5297 +639 2541 5085 4776 281 +640 5374 3493 995 2788 +641 2279 6221 2462 1000 +642 2884 2875 2491 1278 +643 4952 383 5128 2175 +644 250 4003 1440 3913 +645 1464 4666 1559 2501 +646 5176 2095 5828 1702 +647 4778 2465 5517 1598 +648 2335 364 4576 3853 +649 2648 940 2315 3891 +650 879 2312 6046 5123 +651 666 3940 1688 4007 +652 282 2712 1054 2945 +653 4579 2141 4867 373 +654 4394 2099 5972 1272 +655 3280 1384 5277 2800 +656 2961 1340 3952 2707 +657 4577 2421 5154 407 +658 1595 3489 290 4857 +659 410 3818 1983 5162 +660 2990 1047 3677 2201 +661 1487 4075 619 3901 +662 3132 528 2753 3729 +663 709 2569 2727 1512 +664 286 4870 2032 4466 +665 757 3321 1722 2828 +666 1011 3496 533 2403 +667 4182 2151 5396 1394 +668 275 5503 1980 5337 +669 3125 2111 3995 276 +670 2869 519 3499 5354 +671 924 5902 2192 3984 +672 3320 2212 5411 752 +673 2712 2382 6232 1054 +674 5479 2764 3029 332 +675 2332 3029 2764 1200 +676 2892 357 5830 2072 +677 1122 3617 1430 2933 +678 2063 729 5843 3581 +679 933 4828 6098 2710 +680 4844 481 2847 2848 +681 3017 1221 2772 3333 +682 1478 4212 5565 2717 +683 3006 546 3945 2203 +684 3190 3637 2832 530 +685 6083 2115 4661 714 +686 3966 2207 5003 1409 +687 3838 2691 3843 1724 +688 4320 1069 3432 2361 +689 3457 5587 5207 966 +690 501 2914 1122 2440 +691 1933 5121 1306 4312 +692 6103 976 4537 2145 +693 4641 6003 4070 463 +694 3722 283 4255 2398 +695 2046 5888 2615 998 +696 2495 1023 2714 2591 +697 1315 4507 217 2441 +698 4952 2175 4644 1718 +699 2235 4904 814 4514 +700 1606 4766 631 2968 +701 4905 2369 5457 807 +702 3486 2580 4357 1042 +703 1572 4160 627 4775 +704 727 5762 2221 2671 +705 1132 3933 2069 4642 +706 4428 1480 4754 2128 +707 3105 625 4218 2108 +708 5609 2470 5727 1906 +709 332 4758 1758 5479 +710 2854 2112 4142 370 +711 3652 1102 4515 2122 +712 1354 3737 235 3441 +713 3879 2814 3930 498 +714 3514 2573 5824 426 +715 3006 2203 3823 1192 +716 4867 2141 5256 1474 +717 4176 2400 6034 1891 +718 1696 210 2478 4785 +719 2241 1023 2495 5620 +720 1009 2444 306 2938 +721 2833 3246 4841 1455 +722 1257 3282 314 3474 +723 3578 572 3732 2509 +724 4661 2115 4982 1389 +725 702 2135 218 2534 +726 206 2612 1899 4154 +727 2464 1530 4121 3798 +728 1141 5507 2482 3351 +729 221 5225 2169 3284 +730 3388 1052 3694 2226 +731 3161 2122 4515 300 +732 1955 3019 3354 534 +733 1662 3145 354 4505 +734 2194 800 5242 2711 +735 1874 1486 2563 4398 +736 880 2472 1559 4891 +737 852 2751 1269 2684 +738 2626 6123 2166 892 +739 2615 2744 2731 1057 +740 572 4838 1915 3732 +741 2690 2134 4048 319 +742 2947 2970 5982 509 +743 5881 2094 4061 204 +744 2874 3799 2839 3190 +745 5184 366 4739 2208 +746 3170 5364 1414 4554 +747 1067 2981 475 3116 +748 1878 884 6009 4477 +749 516 5238 1991 5207 +750 2334 2979 733 5045 +751 208 2791 1046 2238 +752 2425 2749 4965 219 +753 2770 3428 4215 1266 +754 581 3415 1214 2635 +755 357 4467 2135 5164 +756 1783 5575 557 3861 +757 4385 2210 4263 1436 +758 3065 664 5746 2394 +759 478 2670 5687 5987 +760 1614 2396 5577 4335 +761 2522 3792 1151 5825 +762 1534 3533 1164 3585 +763 1269 4220 1858 3824 +764 3756 1531 5239 2166 +765 879 5123 1897 5293 +766 1888 4351 248 4464 +767 1644 4947 290 3489 +768 3298 3398 2911 1291 +769 2122 1334 3527 4686 +770 6035 1948 2409 4623 +771 4268 1304 5228 2144 +772 1669 2767 843 4579 +773 2461 1677 5720 1798 +774 2518 2138 4338 740 +775 1769 5167 815 2923 +776 545 2739 1241 3259 +777 5260 4127 2011 5948 +778 1437 3312 473 4089 +779 2221 5684 5793 903 +780 3369 3488 2757 1220 +781 1406 472 3134 1721 +782 3365 765 3994 2360 +783 5207 5587 6149 516 +784 1141 3351 1043 2673 +785 3560 284 4446 2448 +786 722 3724 1770 5159 +787 2826 1071 3390 2944 +788 1092 3299 1184 2720 +789 3060 1002 5786 2597 +790 1507 3887 1297 4136 +791 1638 4478 254 4086 +792 1022 2672 2220 5962 +793 1714 5025 757 2828 +794 3313 3156 2849 1152 +795 2731 2744 2755 1067 +796 3449 2755 2744 296 +797 2145 3111 252 6103 +798 5761 4279 1453 3800 +799 2533 4566 2659 350 +800 3338 1061 3679 2276 +801 2677 307 2917 4200 +802 1061 4426 5613 2883 +803 1086 2810 491 2759 +804 5876 1838 5172 204 +805 4843 2418 3532 488 +806 4218 2141 4579 843 +807 4055 1745 3928 1088 +808 4362 673 5018 2243 +809 2434 575 3751 2558 +810 2761 2565 2900 1072 +811 5831 2858 2601 1009 +812 489 4417 2246 4415 +813 4406 1937 2316 444 +814 2004 2690 1051 6014 +815 3656 2188 5076 1130 +816 1109 4200 1852 4814 +817 2637 4380 1755 5735 +818 2615 1057 4807 998 +819 6148 4429 686 2227 +820 2934 1133 4190 2148 +821 1371 6137 2305 4555 +822 2046 998 2334 4955 +823 501 2748 1010 2914 +824 2506 2630 2440 3072 +825 3759 1094 4635 2160 +826 4969 871 4950 2585 +827 4912 637 3147 2353 +828 2091 910 5056 2610 +829 4077 591 3207 4556 +830 2422 244 5069 1104 +831 393 1539 5616 1954 +832 2084 4973 3661 1101 +833 3560 2448 4278 1420 +834 2635 3512 3297 581 +835 1067 3116 1099 2748 +836 1454 3735 5097 4531 +837 1474 3289 1802 4569 +838 2167 5107 6094 851 +839 3114 1305 4049 840 +840 2176 5039 2379 1624 +841 89 2856 4539 88 +842 6106 2195 5993 476 +843 3474 2825 3216 1257 +844 1115 3522 1597 4209 +845 1066 3584 1350 3023 +846 3656 326 3906 2188 +847 2602 371 4918 1974 +848 3080 361 5099 2156 +849 1401 4964 338 3126 +850 753 4827 2004 3684 +851 5967 2377 4747 2014 +852 900 2466 4644 2175 +853 5273 3150 5180 883 +854 3003 2183 4965 1003 +855 1263 3312 1437 3155 +856 2267 5850 947 3188 +857 1081 2824 491 2810 +858 3520 2182 5342 972 +859 3138 2331 4055 1088 +860 3682 1423 4551 2292 +861 4182 224 3566 2151 +862 1565 5897 2274 3937 +863 2733 2643 5066 925 +864 2236 5921 3504 856 +865 4109 4489 3068 1388 +866 4009 2477 5533 1503 +867 5267 2788 995 4272 +868 5727 2470 5211 413 +869 4125 1760 5661 2299 +870 3731 2528 5956 1392 +871 382 2948 1558 2980 +872 5694 1477 2536 236 +873 2032 1201 1797 4466 +874 5969 2349 5924 795 +875 2598 513 4106 4812 +876 1268 2734 238 3438 +877 1204 3124 568 3498 +878 3510 2160 4635 762 +879 2932 4871 1788 6051 +880 4658 2350 3640 815 +881 1697 3289 625 4565 +882 2420 4774 5040 454 +883 2051 5399 1006 3479 +884 5973 4962 985 3395 +885 2608 1143 4761 2388 +886 424 6089 2236 2929 +887 2800 517 1018 3280 +888 1695 3874 1287 4157 +889 1473 5534 3418 2345 +890 1661 4329 1466 4736 +891 3640 1275 5109 5302 +892 1216 2704 568 3407 +893 3147 637 6118 1950 +894 1573 4374 609 2718 +895 3332 506 3939 2196 +896 1506 4787 5744 2285 +897 4863 1408 5413 2524 +898 5057 2157 4528 804 +899 5602 3561 335 5240 +900 227 4476 1878 4630 +901 2337 477 5711 2950 +902 2781 2189 5711 2782 +903 2049 3318 3621 1000 +904 4001 1467 3212 4483 +905 2412 3544 2308 960 +906 2155 3063 4987 397 +907 3556 456 3455 2310 +908 2838 2179 4249 1105 +909 3817 2258 4148 829 +910 6052 1677 4179 3980 +911 2990 2201 5024 1616 +912 2120 4341 820 5424 +913 1761 3094 6005 2616 +914 2620 2749 3142 2503 +915 43 2429 1094 3759 +916 1081 2810 1086 2811 +917 2796 2670 5717 827 +918 1108 4715 749 3476 +919 2362 32 33 5573 +920 1462 3586 369 3211 +921 2457 4824 1737 964 +922 1197 3031 582 3669 +923 4104 2405 4927 634 +924 3431 1126 4451 1728 +925 1271 2705 587 2807 +926 2769 1381 4071 2183 +927 445 5589 1946 4819 +928 1762 5622 2232 4377 +929 87 2262 3753 86 +930 4598 5326 3859 1139 +931 1378 5938 3022 2185 +932 1365 4223 1853 3890 +933 2532 956 2276 3693 +934 3127 274 5453 2272 +935 2718 609 4763 2689 +936 4859 1875 4150 732 +937 2376 3988 1850 5664 +938 1188 3096 530 2832 +939 2821 4596 1704 5838 +940 542 4361 1917 5163 +941 3274 3597 2918 1302 +942 1007 3037 5852 4873 +943 1304 2778 5775 3471 +944 3154 780 4648 2508 +945 5246 2284 3677 1047 +946 2342 6113 2496 1259 +947 2827 1082 3167 3515 +948 4431 1899 5258 746 +949 252 3111 1554 2716 +950 6126 2302 5633 423 +951 2794 808 5952 2364 +952 1214 2753 528 3330 +953 3715 2313 5446 941 +954 1653 4033 983 3508 +955 3389 2206 3977 1052 +956 5255 2071 6116 2454 +957 2272 964 2775 3127 +958 2613 3682 2292 1303 +959 5504 2119 3786 289 +960 214 4052 1173 2309 +961 4724 2634 2574 389 +962 4173 953 3697 2298 +963 2425 2538 3142 2749 +964 842 3953 1832 5105 +965 4772 1896 5791 2333 +966 544 3064 1128 2737 +967 657 3219 1664 4222 +968 2902 424 5358 2264 +969 855 1974 4918 2441 +970 6016 477 4031 2202 +971 5754 1164 5061 2213 +972 2169 985 4592 2951 +973 3343 2433 4684 966 +974 3442 1198 2901 2737 +975 1089 3826 5106 1716 +976 4929 2218 6167 699 +977 2578 914 5695 2123 +978 2731 2653 2941 1057 +979 208 4037 1893 2791 +980 1723 2967 2107 5296 +981 3906 864 4180 2188 +982 2647 1345 4087 2648 +983 1722 287 5454 2381 +984 3757 4081 3252 1463 +985 2751 1910 5147 612 +986 3682 2613 5765 414 +987 365 2562 4448 4449 +988 525 2904 6042 2368 +989 5312 2526 3088 982 +990 2904 3926 3675 1002 +991 2779 741 6001 2162 +992 5345 6203 2958 1050 +993 219 5427 927 2425 +994 3297 1317 3796 2709 +995 5779 1934 5309 3681 +996 4649 201 5310 2037 +997 6042 1150 3497 2368 +998 5570 2487 3294 437 +999 1962 1017 2545 4139 +1000 2646 4690 1410 4180 +1001 3388 2226 5130 548 +1002 3694 754 5131 2226 +1003 5982 2970 1038 2910 +1004 6109 279 4481 2492 +1005 361 5896 1635 4116 +1006 548 3466 1452 3388 +1007 3865 2286 4762 1267 +1008 4362 2243 5910 1620 +1009 5922 6089 2531 1033 +1010 1337 5193 1925 2599 +1011 3945 909 5009 2203 +1012 1341 3300 558 3149 +1013 3677 451 5314 2201 +1014 92 2783 5449 91 +1015 2875 1092 3474 2491 +1016 1219 4164 1742 3739 +1017 2715 1502 4340 2976 +1018 5608 365 4449 2288 +1019 4480 873 3787 2289 +1020 1395 3576 334 3925 +1021 2517 3612 3929 982 +1022 3457 670 4064 5587 +1023 3313 1299 2799 3485 +1024 1955 534 2546 6010 +1025 1277 3064 544 3036 +1026 2153 800 2194 1146 +1027 2334 998 4807 2979 +1028 739 3296 987 4472 +1029 2079 1064 3278 5002 +1030 6170 1017 5313 2502 +1031 261 4126 1571 3573 +1032 2452 3340 2519 890 +1033 776 6168 1978 2497 +1034 5675 806 3632 2407 +1035 551 3239 1186 2799 +1036 1312 3406 321 2913 +1037 5997 5391 937 2957 +1038 4263 269 3213 2137 +1039 3190 530 2849 2874 +1040 2424 919 4601 2762 +1041 3053 2605 3037 1007 +1042 3841 1166 5003 2207 +1043 2855 3379 2759 491 +1044 1988 535 2409 4028 +1045 445 4819 1886 5431 +1046 2133 2476 5673 846 +1047 5782 504 3142 2538 +1048 2557 2556 2922 512 +1049 4577 1853 4514 1333 +1050 2849 1106 2876 2874 +1051 3421 878 4728 2195 +1052 2152 2787 2678 704 +1053 5467 1279 4205 1892 +1054 1023 3499 519 2426 +1055 3709 2550 4272 995 +1056 2768 502 3908 3023 +1057 5334 6014 2986 507 +1058 290 4947 1945 3748 +1059 5233 2402 6046 510 +1060 1744 1168 2745 5218 +1061 1036 2211 4143 2090 +1062 3332 2196 5543 1189 +1063 1385 3371 1386 2844 +1064 312 2866 1350 3584 +1065 2447 1436 4611 3207 +1066 4555 2305 3566 224 +1067 5514 2115 6083 3231 +1068 5902 2507 5753 1031 +1069 3359 1364 2995 3813 +1070 5478 4831 3882 1992 +1071 293 3055 3873 4632 +1072 377 5095 1894 3022 +1073 4157 2230 5048 434 +1074 3774 1081 2811 3093 +1075 4345 2309 5556 904 +1076 1146 2194 6143 3912 +1077 858 2178 6216 2593 +1078 1952 4419 620 4134 +1079 3389 253 4834 2206 +1080 2280 605 4078 4689 +1081 2479 2320 3746 857 +1082 940 6052 3980 2315 +1083 1555 4919 2743 1079 +1084 5491 215 3972 2282 +1085 5048 2230 5035 1520 +1086 1595 3301 462 4560 +1087 1362 3535 647 4381 +1088 2867 458 3579 2385 +1089 5638 3764 409 5456 +1090 1288 3131 1119 3042 +1091 1967 5284 862 2556 +1092 3611 680 4644 2466 +1093 3447 4327 5736 776 +1094 3416 1313 3013 3717 +1095 2597 2962 2907 1138 +1096 1898 5448 860 2815 +1097 2867 2213 5061 458 +1098 5969 1947 5946 2349 +1099 1243 3620 1071 3399 +1100 2546 967 2645 6010 +1101 3952 2224 6179 1418 +1102 1364 3686 589 2995 +1103 480 3317 1255 3316 +1104 2797 758 5093 2204 +1105 3132 2881 3018 1144 +1106 1451 2133 6057 4636 +1107 1032 2312 879 2795 +1108 639 4168 2038 3303 +1109 283 2047 4691 3828 +1110 2824 3041 2855 491 +1111 3209 2493 4938 461 +1112 5071 616 3648 5588 +1113 1514 4367 1151 3792 +1114 1991 3343 966 5207 +1115 1546 4019 723 5199 +1116 4255 2535 2534 1359 +1117 3905 1160 2552 3685 +1118 2659 4566 5465 1650 +1119 667 5027 1325 4922 +1120 2281 872 2305 6137 +1121 2330 3550 2423 1363 +1122 3836 1245 5298 2389 +1123 530 3096 1152 2849 +1124 4746 724 4669 2341 +1125 2410 549 2895 3620 +1126 3705 2209 5584 1446 +1127 2803 1353 5108 2023 +1128 943 4494 2038 4168 +1129 4151 2225 5129 1311 +1130 4220 612 5286 1859 +1131 3447 1459 4887 4327 +1132 257 3554 1426 2870 +1133 2424 5111 2513 1651 +1134 3066 2572 3330 528 +1135 48 49 3518 2632 +1136 294 3153 1802 5118 +1137 2307 1206 5947 4902 +1138 747 2686 1256 3045 +1139 2565 2925 2914 1010 +1140 1721 3134 213 4805 +1141 783 4042 1006 2264 +1142 4473 1090 2703 5434 +1143 2361 3432 3466 548 +1144 1639 4527 5604 2977 +1145 810 2776 371 2602 +1146 911 3730 464 3692 +1147 1915 4838 1397 3982 +1148 2761 1072 3041 2824 +1149 5529 387 4479 1933 +1150 3928 2090 4143 1088 +1151 3971 3321 5781 851 +1152 791 5053 4337 2668 +1153 2928 2223 4333 483 +1154 3919 1714 2828 4336 +1155 752 5563 2125 3320 +1156 801 3016 1965 5356 +1157 1144 3066 528 3132 +1158 2757 3488 2758 1068 +1159 3706 3011 5626 2223 +1160 1648 3716 5551 4465 +1161 1286 3180 315 3184 +1162 2867 1411 5754 2213 +1163 3161 2380 5866 915 +1164 5898 780 3154 2130 +1165 1875 4061 1495 4456 +1166 2403 533 5020 3850 +1167 2900 2736 3050 301 +1168 1221 3148 316 3215 +1169 712 3208 2103 4757 +1170 1324 3295 598 3444 +1171 1961 3318 5698 263 +1172 2239 429 5834 2374 +1173 4477 4301 2396 661 +1174 4160 5180 3150 1836 +1175 2452 890 6219 2453 +1176 4119 792 3460 5298 +1177 2133 1451 5524 2476 +1178 2620 2503 6232 450 +1179 5253 2234 3285 495 +1180 3706 524 2529 3367 +1181 1952 5713 391 5220 +1182 4423 1439 5276 2219 +1183 700 4785 2478 5231 +1184 2623 1155 5141 2253 +1185 2098 1040 2754 4420 +1186 2898 4593 4926 277 +1187 4213 1404 4243 3650 +1188 1031 5604 2192 5902 +1189 6158 207 4994 2233 +1190 4633 1579 3334 847 +1191 1390 3444 598 3922 +1192 2808 3036 3848 1053 +1193 1658 2854 370 5212 +1194 1204 3548 1388 3068 +1195 2726 2231 4860 1462 +1196 1805 5368 965 3387 +1197 2758 3673 2806 1068 +1198 1358 3506 584 3003 +1199 876 2857 1943 5502 +1200 3052 2335 3853 926 +1201 296 2954 1076 3449 +1202 1271 2807 2147 5371 +1203 1463 3252 1199 4030 +1204 5989 206 4154 2787 +1205 3620 1243 3672 2410 +1206 776 2497 945 3447 +1207 2360 5409 1723 3365 +1208 1100 2294 3872 2005 +1209 1335 3742 588 3642 +1210 2998 2772 3018 2881 +1211 3102 3198 2949 1190 +1212 2053 5317 389 4221 +1213 2888 692 5600 2340 +1214 1192 3092 1145 3006 +1215 2101 3143 3380 1218 +1216 1885 5656 22 23 +1217 1002 3060 309 2822 +1218 3999 1435 6211 2231 +1219 5905 791 5146 2804 +1220 390 4648 6085 1881 +1221 2332 486 2899 4744 +1222 1205 3201 4823 1995 +1223 4774 2420 5578 1860 +1224 3965 2413 5645 920 +1225 1805 4847 500 3143 +1226 2708 1116 5383 2986 +1227 300 4515 3727 2469 +1228 2174 1058 5645 2413 +1229 4658 4366 432 2350 +1230 1957 5738 2420 454 +1231 826 3555 5231 2478 +1232 6006 288 2521 3542 +1233 4620 790 2092 4587 +1234 2856 89 90 3483 +1235 781 2747 4016 2319 +1236 4105 5644 3695 1124 +1237 2534 2535 5926 702 +1238 3295 1324 3443 2994 +1239 2277 1298 4208 5447 +1240 2740 2496 6113 524 +1241 2599 1925 4417 489 +1242 6209 5983 1931 3627 +1243 2759 2760 2930 1086 +1244 1100 2323 5235 2074 +1245 1161 2944 238 3062 +1246 4308 2233 4994 760 +1247 5672 2462 6221 442 +1248 2684 287 3971 2514 +1249 6126 423 5000 2260 +1250 5675 2407 5916 1820 +1251 3340 2452 4174 447 +1252 3421 1383 4018 2658 +1253 4855 2658 4018 258 +1254 3925 2662 3423 1395 +1255 2813 469 6164 2451 +1256 4078 1368 6184 2249 +1257 2772 1221 3215 3018 +1258 825 1872 4617 2501 +1259 6178 1387 2590 2589 +1260 4125 2299 5355 439 +1261 3971 851 6094 2514 +1262 5018 1639 4793 2243 +1263 2070 5345 2453 402 +1264 4198 380 3919 2359 +1265 4336 1267 2359 3919 +1266 5337 1980 4671 2660 +1267 3127 1399 6198 274 +1268 3186 6029 4012 1372 +1269 1452 3389 1052 3388 +1270 1032 4094 1955 6010 +1271 1103 6157 5492 3769 +1272 4569 2253 4867 1474 +1273 6115 2774 4482 2181 +1274 4299 677 2528 3731 +1275 4713 3860 3179 353 +1276 2983 2680 3582 1075 +1277 5250 1005 5354 2241 +1278 3641 360 5252 2327 +1279 504 5782 1922 5484 +1280 5850 2267 4954 1200 +1281 3746 2320 4201 457 +1282 3566 1337 5237 2151 +1283 4116 2190 5099 361 +1284 2101 3979 348 5368 +1285 1355 3448 1203 3352 +1286 2595 2831 5956 285 +1287 3072 278 3536 2506 +1288 1342 3415 581 3453 +1289 967 2860 5863 2406 +1290 3669 2855 3041 1197 +1291 1761 3034 5555 3491 +1292 1159 3267 1296 3091 +1293 2296 1087 3379 2935 +1294 1900 3288 1174 3668 +1295 4998 1343 5824 2573 +1296 3658 1312 3217 3775 +1297 3040 5807 1743 5210 +1298 874 5226 1829 3784 +1299 3909 1419 3659 2846 +1300 2168 2354 3842 5495 +1301 2518 5348 355 2977 +1302 2946 690 5319 2381 +1303 3912 2348 4685 1146 +1304 3244 3487 3085 1247 +1305 3166 3395 2026 5339 +1306 4193 1855 6040 2439 +1307 784 3725 5978 4502 +1308 3349 2464 3798 1282 +1309 4050 202 3896 2319 +1310 3982 2411 5882 1915 +1311 1639 5018 1119 4527 +1312 3507 2999 3096 1188 +1313 958 6091 2163 5924 +1314 3551 1439 5611 2256 +1315 2712 2300 5226 874 +1316 5672 1857 4673 2462 +1317 1178 2752 899 4090 +1318 5749 395 6231 2472 +1319 5612 2406 5863 297 +1320 3031 1197 3197 2953 +1321 1697 5118 1802 3289 +1322 4786 3093 2811 302 +1323 237 3525 1291 2911 +1324 1114 3153 294 2781 +1325 5497 1309 5919 2608 +1326 4774 1860 4182 1394 +1327 2990 655 5751 4879 +1328 1868 3575 5686 928 +1329 2616 266 3034 1761 +1330 208 3177 4056 1607 +1331 4803 2640 3346 1602 +1332 3151 1220 3038 3193 +1333 2662 589 3077 3423 +1334 2087 5836 2708 1051 +1335 3489 1595 4560 3039 +1336 2817 3011 3706 3367 +1337 2620 2275 5914 1003 +1338 2256 4589 1584 3551 +1339 2208 870 3524 1815 +1340 3573 1571 5103 2358 +1341 259 4783 5792 2293 +1342 5743 2029 4100 5375 +1343 2318 905 5251 5462 +1344 691 4547 1675 3009 +1345 2737 2901 3378 544 +1346 310 4199 1563 3907 +1347 4572 877 6017 2432 +1348 2824 1081 3774 2761 +1349 5372 2271 5117 1001 +1350 5802 835 4753 2484 +1351 5466 824 2217 694 +1352 3188 439 5820 2267 +1353 2567 6048 1429 4373 +1354 4183 598 3295 4605 +1355 2070 4164 1219 5197 +1356 1072 3197 1197 3041 +1357 3183 2384 5722 401 +1358 2826 5927 3497 482 +1359 5751 2362 5573 4879 +1360 5663 593 3612 2517 +1361 2112 1041 4498 4142 +1362 2927 4698 1908 5980 +1363 3720 4134 620 5193 +1364 1442 5117 2271 4185 +1365 4012 2436 5970 1372 +1366 1534 4219 1361 4062 +1367 5054 2338 5661 1760 +1368 3057 2998 3092 1192 +1369 5162 968 3805 2287 +1370 3085 3202 3054 1186 +1371 3453 581 3297 2709 +1372 1574 2361 548 5130 +1373 1752 4512 613 3849 +1374 43 44 3941 2429 +1375 3679 1061 2883 4776 +1376 272 2089 6124 2442 +1377 2468 2469 3727 849 +1378 1773 3661 369 4513 +1379 3493 5374 5614 2728 +1380 6158 2336 5405 207 +1381 2337 2431 5939 3877 +1382 3959 1521 4854 2561 +1383 2180 4903 2532 3693 +1384 2948 1859 5286 1163 +1385 4434 2559 4721 1117 +1386 5084 2273 5960 1274 +1387 587 2705 1270 4107 +1388 1427 3713 1281 3225 +1389 312 2868 5342 3603 +1390 2247 400 2657 4580 +1391 3811 992 4842 1482 +1392 3485 245 3156 3313 +1393 4747 2377 5641 447 +1394 1827 4606 1090 4473 +1395 5632 2417 5851 918 +1396 3632 1101 3936 2407 +1397 3459 1209 3133 3062 +1398 2368 1161 3062 3133 +1399 5299 5723 969 2906 +1400 41 3510 5709 40 +1401 5593 3194 4423 408 +1402 482 3269 1243 3399 +1403 3276 3468 3104 1246 +1404 5175 471 4665 2695 +1405 2966 2881 3132 3729 +1406 1821 50 51 5120 +1407 232 3370 1184 3943 +1408 1068 3266 330 2757 +1409 2212 3641 1845 5411 +1410 373 4792 1669 4579 +1411 5645 2280 4689 920 +1412 923 2370 83 5591 +1413 518 3270 1319 3261 +1414 4253 504 5484 2352 +1415 2101 1218 4183 3979 +1416 1004 4058 2299 5661 +1417 678 5972 2099 2956 +1418 2582 2321 6023 799 +1419 2426 3812 2672 1022 +1420 336 4188 1467 3422 +1421 2015 4678 1448 5546 +1422 3275 3425 2982 1276 +1423 2808 1053 3310 2739 +1424 2712 282 5067 2300 +1425 2642 2357 5483 665 +1426 2595 2027 4901 763 +1427 5514 3231 4110 1227 +1428 3335 1248 3089 3384 +1429 208 2238 4766 3177 +1430 2244 1478 4503 3373 +1431 2811 1086 2930 2840 +1432 1186 3239 1247 3085 +1433 2891 411 4524 2560 +1434 955 2627 2085 5188 +1435 3453 2709 3796 1251 +1436 3454 315 2965 3636 +1437 3002 547 3352 3249 +1438 2682 2683 2798 333 +1439 2362 1019 5779 3681 +1440 3666 336 3422 4141 +1441 4864 2073 6140 836 +1442 2997 3832 3642 588 +1443 2479 1097 4201 2320 +1444 4086 254 4619 2395 +1445 5430 2284 4695 1678 +1446 5935 2414 1492 3245 +1447 1167 3066 1144 3000 +1448 2978 1128 3064 3248 +1449 4021 2416 4870 286 +1450 2592 215 2591 2714 +1451 5036 3553 2578 1402 +1452 2961 3316 3002 3249 +1453 3078 3002 3316 1255 +1454 4702 556 3781 1975 +1455 3426 2411 5764 1750 +1456 2965 1145 3092 2966 +1457 325 3146 1458 3683 +1458 3901 3254 3911 1487 +1459 2839 1148 3637 3190 +1460 3967 1454 4756 2383 +1461 2891 2383 4756 411 +1462 479 3299 1092 2875 +1463 3007 1016 3505 5093 +1464 3121 1417 4299 3731 +1465 2972 5264 473 3312 +1466 2723 559 5607 2488 +1467 3737 1354 3512 2635 +1468 561 3591 1527 3189 +1469 1210 3630 1355 3500 +1470 2546 3625 2860 967 +1471 5132 2917 307 4092 +1472 1408 4863 1676 3260 +1473 2875 2884 4270 479 +1474 2982 330 3266 3427 +1475 2032 2564 4682 1201 +1476 1076 2954 1537 4270 +1477 2565 485 3617 2925 +1478 855 2126 5884 1974 +1479 2773 1165 3059 3078 +1480 3002 3078 3059 547 +1481 2429 2897 3949 1094 +1482 3298 565 4275 3398 +1483 2998 1120 3333 2772 +1484 5253 2322 4572 959 +1485 4419 1525 4649 2036 +1486 327 3420 1294 3203 +1487 5449 2783 3921 1774 +1488 2707 3783 2876 480 +1489 3469 2918 3440 580 +1490 4948 4098 3520 972 +1491 2600 1129 3767 3182 +1492 3256 4248 3668 3917 +1493 3115 4935 4452 1483 +1494 5462 1735 5401 2318 +1495 2966 3092 2998 2881 +1496 2844 1386 3220 3916 +1497 2174 2413 3965 409 +1498 2174 3660 4834 1058 +1499 1180 3377 1528 3027 +1500 4543 1748 5809 2520 +1501 3688 2327 5035 760 +1502 4278 2448 4683 786 +1503 3275 2973 3461 579 +1504 301 3197 1072 2900 +1505 4332 2524 5413 624 +1506 2279 5934 1078 3788 +1507 5322 1927 4532 1643 +1508 1130 2622 909 3657 +1509 3578 3035 3593 572 +1510 2976 448 5799 2715 +1511 2509 1326 3012 3578 +1512 375 3567 2031 5288 +1513 5269 1135 2429 3941 +1514 5702 604 4622 2325 +1515 4796 1926 756 2164 +1516 2760 2759 3379 1087 +1517 1608 3043 3818 5425 +1518 3328 1096 3951 3152 +1519 4067 3380 3143 500 +1520 2546 534 6088 3625 +1521 3527 1334 5633 2302 +1522 606 4068 5792 2792 +1523 2973 3577 3468 1264 +1524 3749 1330 3326 3755 +1525 1087 2939 492 2760 +1526 4339 1297 3887 2719 +1527 2191 5331 257 2870 +1528 705 3098 1443 3880 +1529 421 4900 2504 2121 +1530 3378 2901 3449 1076 +1531 3746 457 3559 2893 +1532 855 2441 217 4949 +1533 954 3649 1205 3711 +1534 3112 3279 3237 555 +1535 5732 2460 1206 2363 +1536 1235 3382 561 3322 +1537 2078 5391 1808 3176 +1538 4350 938 3870 2326 +1539 3903 4956 6071 2314 +1540 612 5147 2311 5286 +1541 4255 1359 4924 2398 +1542 3371 2589 2590 1386 +1543 3587 1062 5057 2700 +1544 2097 3009 1675 4760 +1545 678 4329 1661 3450 +1546 5192 2047 5311 908 +1547 1342 2753 1214 3415 +1548 2842 3110 5076 1410 +1549 5101 1242 4832 2210 +1550 3339 3103 3174 1215 +1551 2864 2300 5067 1409 +1552 3033 2827 3515 1237 +1553 3922 2920 3391 1390 +1554 3442 4227 3981 475 +1555 2705 3178 4032 1270 +1556 3382 1235 3241 3107 +1557 4747 447 4174 2606 +1558 2949 3106 3165 1194 +1559 3149 558 3634 3778 +1560 3409 327 3203 3574 +1561 315 3180 1145 2965 +1562 3787 873 4125 2372 +1563 1183 3173 1212 3112 +1564 575 2434 1484 5033 +1565 1412 3214 594 3721 +1566 3106 2949 3198 536 +1567 3140 1190 3283 2992 +1568 3229 349 2992 3283 +1569 2631 981 5472 2816 +1570 2387 5214 511 5805 +1571 1394 2172 5040 4774 +1572 1315 2441 4918 3680 +1573 3053 1007 3459 2734 +1574 3969 1170 4553 2346 +1575 418 2125 3898 6127 +1576 2397 1499 1902 5500 +1577 2058 2521 288 5139 +1578 4383 430 5493 2376 +1579 3903 2314 4981 470 +1580 2961 2449 3929 1340 +1581 4511 4045 3370 1422 +1582 1221 3017 1222 3148 +1583 1152 3281 1299 3313 +1584 5457 2369 4634 1763 +1585 1190 3140 523 3102 +1586 3186 1095 3651 2912 +1587 321 3192 1403 3691 +1588 2019 221 3284 4289 +1589 2625 2394 5746 1485 +1590 4150 671 4748 2255 +1591 3333 608 3480 3017 +1592 2101 5368 1805 3143 +1593 2588 5352 905 4124 +1594 3584 1066 3428 2770 +1595 5804 4403 576 2786 +1596 4329 2304 4707 1466 +1597 3828 4691 1786 305 +1598 3875 2481 6110 1123 +1599 2873 1123 6110 2480 +1600 295 2784 1442 4185 +1601 1194 3165 562 3228 +1602 4024 1626 4967 2650 +1603 3162 5473 4038 1083 +1604 4948 647 3535 5538 +1605 5337 2378 4140 275 +1606 480 2876 1106 3317 +1607 2411 3982 309 5764 +1608 2901 1198 2755 3449 +1609 3324 1552 4257 3323 +1610 2224 3952 3612 593 +1611 832 4619 1502 2715 +1612 1240 3683 1458 3654 +1613 997 1727 3099 4146 +1614 3357 3347 3172 1238 +1615 3340 1077 4801 2519 +1616 4301 885 5577 2396 +1617 3176 771 5289 2356 +1618 2482 5507 2466 900 +1619 3315 1324 3444 3777 +1620 1870 2581 3452 770 +1621 4295 4077 4556 1586 +1622 551 3511 1149 3196 +1623 409 3764 4249 2174 +1624 1215 3600 1364 3359 +1625 5394 3218 1623 5078 +1626 4802 428 5109 2419 +1627 438 2577 1793 4833 +1628 995 3493 1475 3709 +1629 1084 2386 6006 3542 +1630 5576 628 3789 3491 +1631 5035 2327 5252 1520 +1632 2378 970 5635 4140 +1633 5939 2431 5771 412 +1634 482 3399 1071 2826 +1635 1000 2462 4673 2049 +1636 3287 1254 3164 3402 +1637 3261 3548 2877 518 +1638 3498 2877 3548 1204 +1639 2786 576 4356 4701 +1640 237 2911 1096 3328 +1641 1097 2479 392 3985 +1642 3343 381 5716 2433 +1643 4661 1389 4981 2314 +1644 1082 2827 327 3409 +1645 3425 1142 3193 3038 +1646 3018 3215 3000 1144 +1647 1194 3283 1190 2949 +1648 720 2229 6223 3411 +1649 3161 300 6077 2380 +1650 1696 4785 700 2504 +1651 1466 2458 615 4736 +1652 3401 3089 3189 1527 +1653 568 3124 1240 3407 +1654 1185 3240 1292 3482 +1655 2182 515 3582 2680 +1656 6232 2382 5090 450 +1657 2073 4934 1542 6140 +1658 3046 3262 3363 1307 +1659 2027 2595 285 5623 +1660 1514 4227 1128 2978 +1661 2301 4463 4905 938 +1662 2362 3681 31 32 +1663 1228 3206 1293 3361 +1664 1991 1021 5308 3589 +1665 4820 2476 5524 427 +1666 2994 3443 3001 329 +1667 3437 3001 3443 1236 +1668 2773 3054 3202 1165 +1669 2383 5210 1743 3967 +1670 3283 1194 3228 3229 +1671 3096 2999 3281 1152 +1672 1557 4255 283 3828 +1673 1226 3185 1181 3195 +1674 1188 3364 1251 3507 +1675 3182 1322 3714 2600 +1676 5014 427 5862 2915 +1677 2831 2595 3815 1169 +1678 1232 2621 4699 6135 +1679 555 3723 1183 3112 +1680 3362 3159 3185 1226 +1681 3107 328 3173 3108 +1682 5863 2860 4113 297 +1683 4941 5369 1126 3804 +1684 4383 2417 5632 430 +1685 3168 3108 3173 1183 +1686 2530 5498 1800 5667 +1687 2593 569 4499 2025 +1688 1145 3264 546 3006 +1689 1752 4794 1493 4512 +1690 5547 888 5795 2442 +1691 3258 1257 3216 3403 +1692 329 3833 1380 3606 +1693 2403 937 6109 2492 +1694 2827 3033 3420 327 +1695 1855 4193 413 4716 +1696 4675 2907 3847 520 +1697 2296 2935 3889 261 +1698 2390 3719 2790 949 +1699 3714 1118 3427 3270 +1700 760 5035 2230 4308 +1701 1294 3420 1159 3440 +1702 2716 1554 4627 4036 +1703 5818 3268 4840 850 +1704 2422 1104 2629 5721 +1705 950 2170 3961 5628 +1706 2707 480 3316 2961 +1707 3862 1111 4101 3394 +1708 1051 2690 319 3608 +1709 2428 599 3008 3827 +1710 1484 3869 1323 3590 +1711 5498 2530 4629 638 +1712 3035 1347 2713 3593 +1713 4758 2330 4871 952 +1714 1805 3387 672 4847 +1715 1226 3227 563 3362 +1716 4208 1298 4877 2343 +1717 3874 794 6061 2336 +1718 3078 1255 3704 2773 +1719 3537 4063 2848 1127 +1720 1481 3619 1162 3744 +1721 3287 3056 3465 1225 +1722 2521 2058 6210 798 +1723 3884 2003 4646 4304 +1724 838 2738 1728 4856 +1725 3425 3275 3013 1142 +1726 3448 2662 3925 1203 +1727 3176 2356 4979 1273 +1728 3262 3046 3350 539 +1729 3623 3350 3046 1335 +1730 1876 2843 372 5561 +1731 2720 2825 3474 1092 +1732 3550 2330 4758 332 +1733 2695 4665 2346 1020 +1734 1244 3406 1312 3658 +1735 551 2799 1299 3511 +1736 4719 2543 5919 1309 +1737 3056 3287 3402 567 +1738 6066 2630 3711 467 +1739 3805 968 4103 4908 +1740 3082 1181 3185 3366 +1741 1283 3396 554 3356 +1742 3209 1664 3219 1117 +1743 5799 3045 6172 2715 +1744 1549 3614 1362 4003 +1745 2603 4769 3327 222 +1746 3193 563 3227 3151 +1747 4558 5726 787 1012 +1748 1986 3434 1013 6007 +1749 3745 2397 5500 203 +1750 4864 836 3100 3101 +1751 2631 2378 5337 981 +1752 1182 3238 1246 3302 +1753 3077 1292 3240 3137 +1754 1187 3519 1354 3441 +1755 3182 3601 3436 1322 +1756 2849 3156 3704 1106 +1757 1313 3639 1142 3013 +1758 1349 4068 606 2685 +1759 4443 2344 5069 244 +1760 3209 2996 4687 1564 +1761 2399 2351 5061 1164 +1762 3047 2346 4553 603 +1763 4604 2458 4054 1320 +1764 1170 2541 281 3968 +1765 2870 1426 4031 3877 +1766 2541 1170 3969 2540 +1767 1098 2994 329 3606 +1768 3191 3210 4147 1131 +1769 1480 4428 5952 3808 +1770 4176 422 4194 2400 +1771 1757 2339 4999 474 +1772 4616 2343 4877 856 +1773 2687 3097 4392 679 +1774 5183 1746 4960 2809 +1775 4862 2809 4960 725 +1776 614 4975 1818 4149 +1777 1294 3196 1149 3203 +1778 831 4589 318 2246 +1779 3275 1276 3577 2973 +1780 3994 1629 5511 2360 +1781 3103 1182 3302 3174 +1782 948 1692 527 5382 +1783 3827 1469 4165 2428 +1784 3662 1348 3255 3794 +1785 2691 4472 3696 2109 +1786 3573 2358 4798 973 +1787 1696 6230 2216 2391 +1788 5243 1519 5483 2357 +1789 703 5844 1889 5278 +1790 3059 1165 3235 1210 +1791 4061 2735 5876 204 +1792 3390 2895 3775 1295 +1793 5484 917 5703 2352 +1794 3834 1527 3591 4306 +1795 4814 1852 6208 2432 +1796 1254 3235 538 3164 +1797 1324 3315 1236 3443 +1798 5109 1275 4646 2419 +1799 4230 354 3450 1661 +1800 3031 2953 5463 2401 +1801 1183 3236 646 3168 +1802 3597 3274 3239 551 +1803 1246 3238 322 3276 +1804 1398 3749 336 3666 +1805 4159 1039 2852 745 +1806 3077 3137 3598 1121 +1807 3197 301 6037 2953 +1808 1229 3576 1395 3634 +1809 4271 4108 2549 1249 +1810 3165 3106 3463 1176 +1811 3687 2435 5651 1252 +1812 3239 3274 3417 1247 +1813 5103 585 4551 2358 +1814 3672 317 3253 3195 +1815 3810 3015 3410 1351 +1816 2868 312 3584 2770 +1817 4464 248 4554 2498 +1818 3322 3243 3242 1235 +1819 3172 3242 3243 553 +1820 1235 3242 1213 3241 +1821 1216 3158 314 3282 +1822 3195 3253 3227 1226 +1823 3151 3227 3253 1233 +1824 3069 3249 3352 1203 +1825 1571 4126 1435 3999 +1826 428 1784 5302 5109 +1827 2704 1216 3258 3300 +1828 3400 564 3424 3086 +1829 961 4014 268 2862 +1830 2262 4539 1541 5290 +1831 4044 2392 5540 942 +1832 5469 2104 4490 894 +1833 1288 3042 231 3341 +1834 2139 5855 2178 858 +1835 3738 5327 6127 1883 +1836 5061 2351 5542 458 +1837 5027 667 3989 2119 +1838 3883 1008 4448 2562 +1839 2886 793 5299 2906 +1840 3174 3302 3204 540 +1841 2991 1691 819 4884 +1842 3031 2401 4860 582 +1843 3586 1462 4860 2401 +1844 1254 3287 1225 3311 +1845 1499 4361 6238 1902 +1846 3112 1212 3171 3279 +1847 562 3230 1195 3228 +1848 4775 2706 4745 1572 +1849 380 5025 1714 3919 +1850 3296 417 4564 987 +1851 3235 1254 3311 3233 +1852 4102 1917 5300 338 +1853 3204 3104 3436 1185 +1854 5859 2374 4991 875 +1855 1145 3180 1286 3264 +1856 1207 5475 1978 4812 +1857 5815 3899 692 3825 +1858 3940 666 5108 4155 +1859 3356 1212 3173 328 +1860 3042 1119 3067 4310 +1861 1180 3027 561 3382 +1862 3237 3279 3171 1187 +1863 1075 3309 1381 3643 +1864 3700 3892 3506 1403 +1865 3779 3821 3441 235 +1866 2391 2216 4285 861 +1867 3576 1229 5870 2526 +1868 293 4632 2766 4688 +1869 2090 4158 4844 1036 +1870 3339 1215 3359 3205 +1871 1479 3490 4773 2365 +1872 2171 1968 4753 835 +1873 1159 3424 564 3267 +1874 878 5387 1670 2487 +1875 4042 783 5096 2366 +1876 3012 1014 3035 3578 +1877 3436 3601 3240 1185 +1878 670 3457 2222 5683 +1879 3458 2982 3427 1118 +1880 2389 949 2611 3836 +1881 1309 5497 2265 6187 +1882 1971 280 2745 4303 +1883 3152 1293 3206 3328 +1884 2653 6066 467 2941 +1885 3688 1425 3746 2893 +1886 4746 2341 3543 472 +1887 1115 4382 5867 3522 +1888 3701 468 4122 2548 +1889 2549 2548 4122 1249 +1890 3350 3623 3238 1182 +1891 3538 1479 2365 5047 +1892 2392 4044 5403 205 +1893 2209 3705 4023 1592 +1894 279 4628 1273 2364 +1895 3664 1149 3511 3200 +1896 3281 3200 3511 1299 +1897 4745 2706 3728 675 +1898 1850 3505 1016 5664 +1899 1182 3103 539 3350 +1900 3178 2665 4499 569 +1901 694 2217 4401 2693 +1902 2891 935 5210 2383 +1903 536 3785 1468 2845 +1904 965 5368 348 2505 +1905 239 2920 1217 3718 +1906 1430 3617 485 3942 +1907 3611 2466 5507 1141 +1908 1095 2769 584 3651 +1909 3104 3204 3302 1246 +1910 2136 812 4441 3776 +1911 4944 2756 4536 845 +1912 876 5502 2218 5005 +1913 1257 3258 1216 3282 +1914 2799 1186 3054 3485 +1915 3335 3001 3437 1248 +1916 4197 892 5047 2365 +1917 313 3311 1225 3205 +1918 5632 3820 2643 430 +1919 1346 4043 1463 3529 +1920 1434 3765 662 4231 +1921 3424 1159 3420 3033 +1922 4166 4310 3067 1548 +1923 552 3223 1322 3436 +1924 3205 1225 3465 3339 +1925 4554 248 4351 3170 +1926 3001 3335 3833 329 +1927 2867 2385 5188 980 +1928 3107 3241 3376 328 +1929 1250 3381 1321 3484 +1930 3086 3424 3033 1237 +1931 3108 1180 3382 3107 +1932 2982 3425 3038 330 +1933 3202 538 3235 1165 +1934 885 3647 5998 5577 +1935 1241 3407 1240 3259 +1936 4431 2375 4727 703 +1937 1911 3290 1465 5557 +1938 3347 3357 3267 564 +1939 2662 3448 2995 589 +1940 4841 2447 5678 1455 +1941 2877 3498 3852 1129 +1942 1283 3086 1237 3396 +1943 1821 3518 49 50 +1944 3988 2376 5493 1374 +1945 287 1722 3321 3971 +1946 3124 3419 3683 1240 +1947 4173 3872 3873 953 +1948 3403 558 3300 3258 +1949 3719 2390 4331 906 +1950 815 5167 1920 4658 +1951 4197 2365 4773 688 +1952 1233 3369 1220 3151 +1953 553 3243 1236 3315 +1954 3242 3172 3347 1213 +1955 3361 3159 3362 1228 +1956 287 2684 1269 6161 +1957 1099 3116 4914 5923 +1958 516 4762 2286 5238 +1959 2050 3163 65 66 +1960 4067 1217 3136 3380 +1961 3437 1236 3243 3322 +1962 1212 3356 554 3171 +1963 524 3706 979 2740 +1964 3384 3089 3401 562 +1965 5586 5013 2329 623 +1966 2873 2480 4110 445 +1967 3414 3319 3348 1282 +1968 2554 3348 3319 570 +1969 3184 315 3454 3364 +1970 1293 3152 607 3531 +1971 462 3301 1338 2547 +1972 4035 4144 3341 231 +1973 2862 4626 6092 961 +1974 577 4240 1461 2889 +1975 1238 3645 1390 3391 +1976 2858 1109 4814 2601 +1977 320 3129 4881 2412 +1978 4927 2405 4432 1612 +1979 54 5921 5922 5266 +1980 2832 3184 3364 1188 +1981 1351 3410 1291 3525 +1982 3916 422 4176 2844 +1983 3159 537 3366 3185 +1984 2624 2030 4602 420 +1985 3184 2832 3637 1286 +1986 3108 3168 3377 1180 +1987 2899 1171 3565 2926 +1988 2275 3924 1125 4818 +1989 3140 2992 4372 1431 +1990 2596 3564 3369 1233 +1991 562 3165 1176 3384 +1992 2944 3390 3438 238 +1993 2353 1607 1884 4912 +1994 4464 2498 5658 1444 +1995 1234 3516 1329 3580 +1996 5671 1438 4077 4295 +1997 474 3155 5145 1757 +1998 2914 2925 3617 1122 +1999 1017 6170 1809 5175 +2000 2643 2733 5537 1374 +2001 2403 3850 2957 937 +2002 3199 210 4011 2819 +2003 3210 3191 3433 1310 +2004 3455 213 5647 2310 +2005 3068 3419 3124 1204 +2006 2617 1202 3481 3492 +2007 1377 3622 1330 3803 +2008 5954 5380 421 2121 +2009 766 4249 2179 5077 +2010 1095 3186 1372 3879 +2011 6063 3467 984 5170 +2012 4040 235 3737 4386 +2013 2517 4511 1422 5857 +2014 382 2980 6210 2291 +2015 660 5916 2407 3936 +2016 1992 3882 2834 918 +2017 975 2659 1650 5148 +2018 1241 3158 1216 3407 +2019 1155 4022 5955 2539 +2020 3545 496 3635 2850 +2021 3241 1213 3400 3376 +2022 4113 2860 3625 6088 +2023 1179 3262 539 3465 +2024 580 3440 1159 3091 +2025 3281 2999 3507 532 +2026 2920 239 3539 3391 +2027 564 3400 1213 3347 +2028 1261 3414 578 3257 +2029 3328 3206 3451 237 +2030 1700 4007 4922 1325 +2031 4913 1866 4752 2613 +2032 4656 1654 5136 2674 +2033 3512 1354 3519 3167 +2034 3322 561 3189 3437 +2035 3089 1248 3437 3189 +2036 1131 3616 323 3191 +2037 2763 2694 4854 1521 +2038 2888 2887 5583 1259 +2039 3209 1117 4721 2996 +2040 3066 1167 4290 2572 +2041 2436 4012 2552 893 +2042 1222 4298 316 3148 +2043 303 3927 1323 3869 +2044 2024 4769 2603 6053 +2045 5711 477 6016 2780 +2046 3235 3233 3630 1210 +2047 3416 3451 3521 1313 +2048 1252 3560 1420 3687 +2049 826 2478 210 3199 +2050 3164 1234 3580 3402 +2051 2773 245 3485 3054 +2052 2846 3659 3056 567 +2053 2317 3549 2962 503 +2054 3202 3085 3487 538 +2055 3390 1295 3375 3438 +2056 1777 5074 722 5159 +2057 380 4198 1807 5323 +2058 2490 476 5993 2782 +2059 2509 1258 4047 3703 +2060 2100 52 53 3494 +2061 4355 1817 4660 862 +2062 3440 2918 3597 1294 +2063 1330 2997 588 3803 +2064 3390 1071 3620 2895 +2065 1256 3349 1282 3348 +2066 3356 328 3376 1283 +2067 3451 3416 3525 237 +2068 2845 3463 3106 536 +2069 353 4195 1703 4713 +2070 284 3560 1252 3083 +2071 547 3059 1210 3500 +2072 3757 233 3363 3944 +2073 3600 3305 3686 1364 +2074 3077 1121 3778 3423 +2075 3436 3104 3468 552 +2076 3379 2855 3669 1253 +2077 247 3787 1320 4054 +2078 1819 3296 739 4765 +2079 3270 3427 3266 1319 +2080 929 2006 3199 2819 +2081 2833 1455 4093 1044 +2082 3198 3102 3478 1153 +2083 323 3244 1247 3417 +2084 3226 3543 2341 419 +2085 1768 5784 6196 3175 +2086 3086 1283 3376 3400 +2087 4157 2611 4552 1695 +2088 4739 1587 2542 2208 +2089 3487 3244 3516 1234 +2090 625 3105 1632 4565 +2091 1052 3977 1623 3694 +2092 399 5021 2281 4866 +2093 3525 3416 3717 1351 +2094 367 4158 2090 3928 +2095 2565 2761 3774 485 +2096 780 1795 4142 4498 +2097 353 2482 900 4195 +2098 1885 23 24 3278 +2099 5234 1588 5851 2417 +2100 1296 3439 1348 3662 +2101 3519 554 3515 3167 +2102 432 1869 6169 2566 +2103 3446 5934 4972 1693 +2104 5614 5374 5766 2257 +2105 414 4916 4283 3079 +2106 2558 1074 5366 2434 +2107 3521 3451 3206 1228 +2108 4194 1556 4950 2400 +2109 3651 3892 3700 1352 +2110 2443 4530 3269 1347 +2111 6111 3646 2913 1125 +2112 3300 1341 3852 2704 +2113 3191 323 3417 3433 +2114 892 4197 1871 2626 +2115 3274 1302 3433 3417 +2116 3951 1460 6117 2494 +2117 4940 5350 4247 2527 +2118 2921 2527 4247 971 +2119 239 3439 1296 3539 +2120 2973 1264 3456 3461 +2121 3686 3305 3482 1292 +2122 3600 540 3482 3305 +2123 428 2340 5600 1784 +2124 4536 2756 4512 1493 +2125 538 3487 1234 3164 +2126 1118 3223 552 3458 +2127 1485 5746 2563 3839 +2128 1959 4340 1502 4563 +2129 1772 3786 1136 4846 +2130 2918 3469 3433 1302 +2131 1483 2395 5619 4207 +2132 3708 455 4112 2796 +2133 3468 3276 3456 1264 +2134 617 4880 1592 4246 +2135 1981 4596 917 2952 +2136 1185 3482 540 3204 +2137 4831 5478 3739 768 +2138 2640 4803 834 6237 +2139 2982 3458 3577 1276 +2140 5684 2171 835 5793 +2141 3167 1082 3297 3512 +2142 2571 1154 3509 2779 +2143 1517 4293 348 4432 +2144 1507 4136 311 2638 +2145 3642 3286 3623 1335 +2146 3109 489 4415 2124 +2147 4129 2237 4779 1260 +2148 3212 1301 3886 2801 +2149 1991 3589 381 3343 +2150 5338 1191 3100 836 +2151 3894 3948 3192 3858 +2152 551 3196 1294 3597 +2153 2892 5008 5522 2639 +2154 3550 1405 5516 2423 +2155 2966 3729 3636 2965 +2156 4513 1790 5990 2522 +2157 3792 2522 5990 683 +2158 2173 5523 5040 2172 +2159 3803 3306 3530 1377 +2160 2544 3744 1162 5714 +2161 561 3027 1528 3591 +2162 4859 732 4312 2022 +2163 5616 855 4949 1954 +2164 3409 3574 3664 1317 +2165 1187 3171 554 3519 +2166 3349 308 5867 2464 +2167 1753 3473 5200 2311 +2168 4182 2676 4555 224 +2169 3252 2428 6047 1199 +2170 2411 3426 738 5882 +2171 4634 3765 2838 1105 +2172 4439 2075 6142 1630 +2173 3047 1584 4318 4789 +2174 5673 2476 4820 4309 +2175 3371 560 4228 2589 +2176 1572 2105 5180 4160 +2177 563 3639 1313 3521 +2178 5310 201 4139 2545 +2179 2172 1394 5396 2173 +2180 250 3913 1049 2926 +2181 1359 2534 218 3291 +2182 1045 5168 2165 4234 +2183 1250 3484 322 3286 +2184 2279 3788 442 6221 +2185 4390 1508 4082 2062 +2186 3147 1401 4037 2353 +2187 3673 586 3807 2806 +2188 4532 2067 4976 1643 +2189 1712 3933 1132 5692 +2190 3103 3339 3465 539 +2191 2702 2671 3624 487 +2192 5426 1551 5887 2516 +2193 2887 2641 4497 222 +2194 498 2983 1075 3643 +2195 3793 523 3140 1431 +2196 3687 2502 5208 2435 +2197 4813 2656 6090 1814 +2198 466 4350 2326 3325 +2199 2228 3546 661 4809 +2200 3636 1342 3453 3454 +2201 3364 3454 3453 1251 +2202 3988 2474 5631 789 +2203 762 5778 1835 3510 +2204 728 4791 2007 4233 +2205 233 3530 1307 3363 +2206 1746 5183 378 4910 +2207 3138 943 6072 2331 +2208 2895 549 3658 3775 +2209 2723 2951 4592 559 +2210 5472 1909 3934 2816 +2211 362 2459 5478 1992 +2212 595 3326 1330 3622 +2213 3789 1457 4657 3094 +2214 6005 3094 4657 777 +2215 1567 2606 4174 5373 +2216 5005 2456 5418 876 +2217 1317 3664 532 3796 +2218 1355 3352 547 3500 +2219 2515 3599 3090 1080 +2220 1237 3515 554 3396 +2221 2309 4345 3587 214 +2222 1695 2746 794 3874 +2223 1232 3963 1042 2621 +2224 4704 2649 3999 719 +2225 681 3756 1771 4708 +2226 1933 4312 732 5529 +2227 933 3503 1777 5016 +2228 5774 744 4607 5789 +2229 3205 3359 3813 313 +2230 2474 4314 1737 5631 +2231 570 3115 1483 4207 +2232 3137 241 3767 3598 +2233 265 3537 1889 4983 +2234 2045 4343 1379 6131 +2235 2354 2168 3935 889 +2236 3276 322 3484 3456 +2237 3461 3456 3484 1321 +2238 5270 5737 4422 1736 +2239 4336 2828 5319 690 +2240 4213 2699 3943 1404 +2241 2874 2876 3783 3799 +2242 3763 2551 4332 624 +2243 5580 3021 5513 2657 +2244 3896 202 3569 1631 +2245 3448 1355 3813 2995 +2246 2439 6040 685 5487 +2247 2705 1271 2665 3178 +2248 2292 4551 585 6190 +2249 3213 707 4842 2137 +2250 4886 2743 4919 576 +2251 3488 550 3878 2758 +2252 4028 1371 4555 1988 +2253 4484 1927 5322 4706 +2254 6000 6028 1671 3514 +2255 4814 2432 4897 494 +2256 1421 6049 2025 4499 +2257 288 6006 1688 3940 +2258 1943 2857 5837 385 +2259 3548 3261 3807 1388 +2260 3267 3357 3539 1296 +2261 867 3273 1934 5966 +2262 3133 1209 5280 2667 +2263 2206 766 5077 3977 +2264 924 4242 2507 5902 +2265 4387 2446 4610 1569 +2266 2452 2453 5345 1050 +2267 1514 2978 242 4367 +2268 4287 2436 4878 632 +2269 3664 3574 3203 1149 +2270 1999 5845 392 4540 +2271 3052 4458 5808 618 +2272 5663 2517 5857 1803 +2273 1363 3181 4871 2330 +2274 3783 2707 3952 1418 +2275 2904 525 3397 3926 +2276 594 3255 1348 3721 +2277 1858 5560 382 3655 +2278 3015 3381 3791 590 +2279 1503 5964 2120 5424 +2280 1539 393 2654 3754 +2281 869 3220 1386 2590 +2282 772 4545 1602 3346 +2283 5734 882 4618 3019 +2284 449 3464 1856 4751 +2285 3518 1015 4659 2632 +2286 3873 3055 3697 953 +2287 1228 3362 563 3521 +2288 3727 2475 5823 849 +2289 3465 3056 3659 1179 +2290 1995 6065 3711 1205 +2291 3954 1391 4688 2765 +2292 3988 1374 5537 2474 +2293 3192 321 3406 3858 +2294 737 4000 5476 2020 +2295 1215 3174 540 3600 +2296 6214 504 4253 2812 +2297 2850 1063 4590 3545 +2298 43 3759 2160 42 +2299 2437 895 5019 2444 +2300 2069 3933 299 3074 +2301 1358 3691 1403 3506 +2302 3968 2993 5992 1993 +2303 763 4901 1593 4800 +2304 2740 979 3927 2741 +2305 1244 3658 549 3082 +2306 2740 2741 5815 2496 +2307 1887 5975 794 2746 +2308 2251 2288 4449 5797 +2309 1873 4657 1457 5052 +2310 1118 3714 1322 3223 +2311 4242 628 5753 2507 +2312 3069 334 5312 2449 +2313 2532 2959 5496 956 +2314 2621 1042 4357 1987 +2315 305 1786 5571 4729 +2316 4518 2455 4981 1389 +2317 4888 2002 4495 3123 +2318 645 4359 1472 2924 +2319 1296 3662 580 3091 +2320 355 4793 1639 2977 +2321 1880 6008 386 2722 +2322 4108 386 6008 2549 +2323 2548 2549 6009 884 +2324 3707 1104 5069 529 +2325 3381 3015 3810 1321 +2326 3357 1238 3391 3539 +2327 887 5237 1337 2599 +2328 3488 3369 3564 550 +2329 5904 2931 6096 1847 +2330 2920 3922 3136 1217 +2331 2343 59 60 4208 +2332 3275 579 3717 3013 +2333 3058 2583 2269 6227 +2334 1323 3927 979 2928 +2335 4067 500 4181 2721 +2336 977 2259 3383 4907 +2337 4672 1265 2796 4112 +2338 3137 3240 3601 241 +2339 1351 3717 579 3810 +2340 2934 2652 4762 516 +2341 3445 1316 4175 2486 +2342 4650 2651 4999 1658 +2343 1292 3077 589 3686 +2344 975 3462 4610 2446 +2345 1419 3944 1179 3659 +2346 4267 3839 2563 1486 +2347 2468 4799 5567 1177 +2348 5905 2804 3992 1830 +2349 2644 260 5750 5182 +2350 2843 2520 5819 1740 +2351 2150 865 4646 2003 +2352 3082 3366 3894 1244 +2353 3207 591 5678 2447 +2354 303 3780 1920 5167 +2355 2898 277 5794 2473 +2356 2153 1146 4685 2785 +2357 5189 4039 6037 2102 +2358 3292 3878 3012 1326 +2359 3564 3012 3878 550 +2360 1398 2997 1330 3749 +2361 5110 4788 5344 1231 +2362 1335 3046 1307 3742 +2363 553 3645 1238 3172 +2364 563 3193 1142 3639 +2365 6082 3923 67 68 +2366 3264 1286 3637 3247 +2367 5567 503 5786 2512 +2368 1937 2177 5603 363 +2369 2321 2582 5803 1223 +2370 3286 322 3238 3623 +2371 6076 2450 5593 408 +2372 3311 313 3630 3233 +2373 5044 1767 3758 901 +2374 6164 1318 5798 2451 +2375 2403 2492 4481 1011 +2376 2780 1112 5443 2490 +2377 5637 840 4049 2835 +2378 5436 470 4981 2455 +2379 4314 2474 5537 514 +2380 1311 3881 523 3793 +2381 1112 3076 331 3716 +2382 3744 2544 5807 344 +2383 3298 1291 3410 3712 +2384 2088 5941 1224 4010 +2385 4921 3247 3637 1148 +2386 5984 2619 2146 240 +2387 3210 1310 3794 3255 +2388 994 2642 5704 405 +2389 377 3344 1887 5385 +2390 1696 2391 4011 210 +2391 2483 951 4875 2484 +2392 3536 278 4171 1318 +2393 5420 1509 6112 2575 +2394 4351 1888 6048 2567 +2395 251 3715 1698 4868 +2396 5199 3222 3847 1546 +2397 2962 3549 3847 2907 +2398 4957 2815 4021 1719 +2399 1004 2682 1134 4058 +2400 2846 567 3402 3580 +2401 2214 1157 5064 2614 +2402 932 5967 2325 3771 +2403 1088 4143 505 3138 +2404 3281 532 3664 3200 +2405 3036 544 3378 3848 +2406 3952 1340 3929 3612 +2407 2503 6214 1054 6232 +2408 1102 3652 543 3991 +2409 858 2593 2025 5209 +2410 2677 2355 5400 307 +2411 3610 1491 4443 244 +2412 1453 4475 809 4029 +2413 1240 3654 545 3259 +2414 2085 5640 806 5406 +2415 5877 3331 4087 1345 +2416 5159 2463 5016 1777 +2417 1464 2501 4617 4388 +2418 4583 3540 4738 1680 +2419 5162 1983 5499 968 +2420 5221 2473 6017 877 +2421 3894 3854 3531 3948 +2422 3468 3577 3458 552 +2423 3348 2554 5080 1256 +2424 5853 2142 4881 3129 +2425 5551 5758 4543 1929 +2426 595 3622 1377 3588 +2427 2825 2720 4045 573 +2428 362 4811 2964 2459 +2429 260 4015 5640 2085 +2430 1176 3463 1380 3833 +2431 3847 3797 4018 1546 +2432 3580 1329 3909 2846 +2433 2817 310 3907 3011 +2434 1024 3272 5512 3653 +2435 5372 1001 5211 2470 +2436 2898 2473 5221 1063 +2437 4061 1875 4859 2735 +2438 3214 1412 4067 2721 +2439 1524 4102 1950 5369 +2440 3593 2713 4096 1397 +2441 427 5014 2006 4820 +2442 2685 606 5275 2475 +2443 599 3909 1329 3008 +2444 454 5040 1701 1958 +2445 3115 570 3319 3819 +2446 4903 2180 3923 6082 +2447 2697 2698 4550 4731 +2448 946 5023 1997 5688 +2449 495 3285 2242 5562 +2450 1945 5187 5060 3748 +2451 1681 1406 1721 5860 +2452 4524 927 5427 2560 +2453 2064 3405 342 5127 +2454 5879 6122 4427 2140 +2455 2602 512 2922 3304 +2456 2688 2689 4763 941 +2457 1633 3801 1325 5027 +2458 1370 4246 1592 4023 +2459 746 5880 2375 4431 +2460 4025 2508 4648 390 +2461 3131 1288 3881 3010 +2462 2045 6102 220 4223 +2463 983 2533 4664 3508 +2464 3337 6092 4749 431 +2465 2802 1526 4869 2633 +2466 2093 4562 3509 1154 +2467 2694 2763 6034 871 +2468 2822 6042 2904 1002 +2469 1229 3634 558 3403 +2470 361 3080 1393 5896 +2471 4536 1493 4794 2644 +2472 303 3869 1484 3780 +2473 2340 1357 2887 2888 +2474 3530 3665 3588 1377 +2475 3008 1329 3516 3616 +2476 1429 5385 1887 4373 +2477 4980 2018 5949 2329 +2478 578 3529 1463 4030 +2479 2324 2577 438 5138 +2480 3616 1131 3827 3008 +2481 5713 1952 4134 3910 +2482 1419 3909 599 4081 +2483 3209 1564 5242 2493 +2484 4204 2493 5242 800 +2485 2318 5098 1642 4958 +2486 1691 2991 5528 4970 +2487 2425 927 5782 2538 +2488 1489 4098 1823 4557 +2489 848 5911 2222 4684 +2490 3071 1177 5567 2512 +2491 3380 3136 4183 1218 +2492 3102 523 3881 3478 +2493 5554 449 2315 3980 +2494 3921 2783 4010 1224 +2495 2454 1343 3818 3043 +2496 3315 3777 3645 553 +2497 4478 1638 4810 2537 +2498 4056 1606 2968 4025 +2499 1910 2751 852 5693 +2500 939 1919 1201 4682 +2501 936 5329 1839 5458 +2502 1467 4188 1301 3212 +2503 3651 1352 4076 2912 +2504 2204 1085 4051 2797 +2505 1155 2623 5151 4138 +2506 3433 3469 3794 1310 +2507 1404 3943 1184 3299 +2508 827 2199 3772 5885 +2509 610 1971 4303 3528 +2510 1192 3823 246 3057 +2511 2753 1342 3636 3729 +2512 1107 5408 465 2499 +2513 3379 1253 3889 2935 +2514 5962 2220 5272 957 +2515 1255 3317 1106 3704 +2516 3749 3755 4188 336 +2517 503 5567 4799 2317 +2518 3244 323 3616 3516 +2519 1548 3067 673 4521 +2520 857 4760 392 2479 +2521 3687 1420 6170 2502 +2522 4107 2430 5192 908 +2523 3598 3149 3778 1121 +2524 2837 2880 4381 647 +2525 5716 381 4313 2803 +2526 2082 5532 2011 2515 +2527 3068 325 3683 3419 +2528 3791 1398 3666 3667 +2529 1300 3413 464 4613 +2530 2298 404 5249 4173 +2531 459 5378 5804 3122 +2532 3064 1277 3992 3248 +2533 1162 3619 571 3957 +2534 3601 3182 3767 241 +2535 3530 3306 3742 1307 +2536 6091 2950 5711 2189 +2537 5547 2530 5667 888 +2538 2689 2688 5665 1208 +2539 1798 3331 345 4755 +2540 844 2439 5487 2896 +2541 1259 3825 692 2888 +2542 4656 2674 5467 383 +2543 1019 2362 5751 3663 +2544 3538 2489 4984 1479 +2545 2099 4394 448 5051 +2546 3791 3667 3712 590 +2547 3966 2555 5810 1831 +2548 5142 387 3949 2897 +2549 605 2955 1368 4078 +2550 2852 2853 4354 745 +2551 3474 314 6145 2491 +2552 4993 5206 2955 605 +2553 2743 4123 4609 1079 +2554 4105 2625 4677 251 +2555 4153 4583 3998 1596 +2556 969 2967 396 2906 +2557 2109 1692 4884 2587 +2558 4720 1139 4072 2771 +2559 4984 2489 5009 909 +2560 778 4937 1577 3314 +2561 4659 1470 4697 2632 +2562 4107 1270 3044 2430 +2563 1153 3785 536 3198 +2564 3375 1295 3775 3217 +2565 5179 813 3383 2259 +2566 239 3718 1348 3439 +2567 2298 3697 5697 854 +2568 757 5829 1912 3321 +2569 2928 2523 5821 1323 +2570 5438 1967 2556 863 +2571 2813 2677 4200 1109 +2572 1183 3723 1211 3236 +2573 2865 1073 3604 4238 +2574 782 5515 2096 3689 +2575 2031 5031 761 5295 +2576 2062 868 5333 3846 +2577 2030 2624 730 4486 +2578 2437 2666 5137 895 +2579 1816 6133 513 2598 +2580 3015 590 3712 3410 +2581 2202 5985 833 5263 +2582 3280 3187 4471 1384 +2583 1402 2578 265 4983 +2584 6234 4784 1583 3736 +2585 1284 3740 520 3374 +2586 227 4630 1013 2805 +2587 2225 3946 5052 924 +2588 3414 1261 3819 3319 +2589 508 3272 2145 4537 +2590 3123 1523 5177 2616 +2591 2511 2989 3726 417 +2592 3361 1293 3531 3854 +2593 3554 1227 5347 3618 +2594 1062 3139 2157 5057 +2595 3314 1577 4204 5796 +2596 1941 5247 1035 6021 +2597 936 4783 2028 5329 +2598 259 5229 5064 3470 +2599 94 1641 4988 2088 +2600 3214 2721 4181 1175 +2601 5976 5810 1376 4379 +2602 4629 2530 5547 1091 +2603 2418 1674 3972 4474 +2604 1037 4259 6190 3562 +2605 2359 897 2908 4198 +2606 816 2324 5774 5789 +2607 4252 1683 4170 4911 +2608 1032 2795 252 4094 +2609 5523 2173 4971 324 +2610 508 2308 3544 5450 +2611 899 3556 455 4090 +2612 3049 5479 1758 5840 +2613 1053 3802 6145 3310 +2614 2542 5281 870 2208 +2615 1903 4203 335 4703 +2616 5338 836 6140 3678 +2617 4905 807 4296 3342 +2618 1412 3721 1348 3718 +2619 2142 507 2986 5383 +2620 3944 1419 4081 3757 +2621 818 4892 391 2290 +2622 2276 574 5245 3693 +2623 3528 1904 4962 5973 +2624 498 3643 1095 3879 +2625 3145 2609 4394 1272 +2626 5464 1828 5348 2518 +2627 2156 1231 4004 3080 +2628 4304 432 2566 3884 +2629 5682 2640 6237 1998 +2630 1193 2983 498 3930 +2631 594 3214 1175 3888 +2632 4957 5677 1898 2815 +2633 5134 2544 5714 1907 +2634 3026 6194 2347 978 +2635 621 4861 1848 3095 +2636 218 3260 1676 3291 +2637 2913 321 3691 3558 +2638 3742 3306 3803 588 +2639 3145 4407 747 2609 +2640 2134 4827 753 5023 +2641 3237 3821 3779 1645 +2642 3654 3061 5535 545 +2643 1445 5333 2265 4438 +2644 822 4047 1258 2863 +2645 3072 2933 3974 278 +2646 459 3122 1083 4038 +2647 3590 698 4830 2730 +2648 3149 3598 3767 1341 +2649 3423 3778 3634 1395 +2650 1141 2673 452 4321 +2651 2512 3675 3926 1230 +2652 4025 922 5748 2508 +2653 2394 1124 5887 3065 +2654 5554 1944 3464 449 +2655 3815 4917 4053 1169 +2656 4272 2550 5021 399 +2657 3411 6194 3026 720 +2658 3644 1510 4930 2523 +2659 5191 3245 4186 1491 +2660 5752 2969 4716 2077 +2661 4229 3234 6047 343 +2662 882 4036 5519 2669 +2663 3493 2728 5488 1475 +2664 3565 1171 4416 3698 +2665 3542 2521 4214 1147 +2666 1850 5930 211 3505 +2667 1405 4744 1049 4196 +2668 3576 2526 5312 334 +2669 2852 1039 5959 3626 +2670 4667 3547 5877 1864 +2671 3286 3642 3832 1250 +2672 844 2896 5436 2455 +2673 1622 4184 754 3218 +2674 4917 5717 2670 478 +2675 2671 2702 5979 727 +2676 2621 1987 5536 4699 +2677 3644 2820 4114 1262 +2678 1692 2109 3696 527 +2679 2153 4750 359 5796 +2680 1282 3798 578 3414 +2681 3645 3777 3444 1390 +2682 273 3020 1332 4095 +2683 5391 5997 5471 1808 +2684 1203 3925 334 3069 +2685 4748 5636 3477 2083 +2686 786 4422 1809 4278 +2687 3384 1176 3833 3335 +2688 4061 2094 4851 1495 +2689 2096 5515 880 3194 +2690 2541 2540 5776 907 +2691 4784 2531 5376 1583 +2692 3942 3256 3917 1430 +2693 3168 646 3526 3377 +2694 2702 487 5160 2703 +2695 3540 4583 4153 676 +2696 3966 1409 5067 2555 +2697 4934 2073 5235 837 +2698 2512 1230 6077 3071 +2699 5853 1191 5338 2214 +2700 665 5754 1411 2642 +2701 686 5287 2124 4388 +2702 1612 4605 1098 4927 +2703 2745 1168 5548 4898 +2704 1370 2335 3052 618 +2705 3662 3794 3469 580 +2706 2985 1113 4192 4770 +2707 3712 3667 3911 3298 +2708 3543 3226 5756 1093 +2709 724 4186 3245 1492 +2710 5976 490 5872 2725 +2711 3901 619 4826 2553 +2712 1782 3095 996 2963 +2713 3698 1456 4088 3565 +2714 4738 3540 1587 4739 +2715 5088 2245 3916 1804 +2716 4274 1617 4281 4187 +2717 2153 2785 1861 4750 +2718 2892 2639 4467 357 +2719 3839 4267 3304 4152 +2720 223 2963 2445 6096 +2721 1484 2434 5366 3780 +2722 2471 3896 1631 5079 +2723 1321 3810 579 3461 +2724 1989 3084 5475 1207 +2725 704 2678 1127 4909 +2726 3588 3665 4043 1346 +2727 885 4301 1880 2722 +2728 639 3303 5614 2257 +2729 1251 3796 532 3507 +2730 3237 1187 3441 3821 +2731 2526 5870 573 3088 +2732 276 3995 1791 4587 +2733 2798 4490 2104 333 +2734 4226 2580 3486 1366 +2735 4187 1400 3480 4274 +2736 3557 1382 4172 731 +2737 1904 3528 1030 4402 +2738 236 1786 5192 2430 +2739 2376 5664 1016 4383 +2740 1404 3299 479 4243 +2741 5580 902 4290 3021 +2742 2708 5450 3544 1116 +2743 2287 3805 5596 828 +2744 3671 2646 5598 1327 +2745 1155 2539 373 5141 +2746 2884 1278 3848 3378 +2747 3341 3478 3881 1288 +2748 3969 471 5270 2540 +2749 3159 3361 3854 537 +2750 1153 4144 1468 3785 +2751 2004 4827 2134 2690 +2752 4768 1739 824 1529 +2753 3541 2768 4236 1367 +2754 504 6214 2503 3142 +2755 1512 4016 2747 709 +2756 1129 3852 1341 3767 +2757 2921 971 2890 4206 +2758 1025 4792 1811 3954 +2759 5748 3073 4191 1601 +2760 2695 1020 5310 2545 +2761 1992 3702 5353 362 +2762 5056 1432 911 2610 +2763 3330 2572 6031 1494 +2764 3751 1285 5389 2558 +2765 5807 2544 5134 1743 +2766 5756 1497 4602 2030 +2767 2515 376 4414 3599 +2768 3788 2575 5336 442 +2769 1512 2727 5726 1511 +2770 5370 4085 5458 1839 +2771 1033 2531 4784 3806 +2772 1115 4209 531 2801 +2773 1513 3117 4991 2374 +2774 5996 3025 945 5928 +2775 2942 1447 3978 3868 +2776 788 2636 5068 1793 +2777 3228 1195 4541 3229 +2778 1261 4229 1575 3819 +2779 904 5073 1842 4345 +2780 643 1863 1060 3475 +2781 2390 267 5474 4331 +2782 2553 1160 3254 3901 +2783 3567 375 5375 2637 +2784 4380 2637 5375 1637 +2785 1673 6072 943 4168 +2786 1984 2268 5701 3501 +2787 3110 436 4546 2622 +2788 3894 3858 3406 1244 +2789 5694 2830 4670 1477 +2790 1301 3326 595 3886 +2791 457 4330 5274 3559 +2792 3535 1362 3614 3857 +2793 1160 3905 565 3254 +2794 1059 4698 629 2586 +2795 205 5403 2148 4190 +2796 1745 4046 367 3928 +2797 3395 3166 3175 610 +2798 5913 1587 3540 5055 +2799 1488 5963 4920 2679 +2800 1939 4082 1508 5205 +2801 5194 2555 5067 282 +2802 4559 2651 4904 1544 +2803 2962 2597 5786 503 +2804 2945 2607 5194 282 +2805 4434 1837 6078 2559 +2806 838 2053 5198 2738 +2807 948 2991 4884 1692 +2808 1792 5135 796 4674 +2809 2744 2615 5888 296 +2810 6195 4791 728 3290 +2811 2233 4308 1287 6158 +2812 2825 573 5870 3216 +2813 2180 2628 5974 881 +2814 3445 3079 4283 1316 +2815 2522 5825 1773 4513 +2816 4836 1938 5261 406 +2817 1976 4647 5763 3541 +2818 3829 2561 4854 526 +2819 2871 1113 5049 2872 +2820 1854 5308 2946 1328 +2821 2656 1173 4052 4169 +2822 3614 1549 5747 2617 +2823 6176 2711 4687 18 +2824 3854 3894 3366 537 +2825 1685 3055 293 5063 +2826 3254 565 3298 3911 +2827 3496 4690 2646 533 +2828 4373 640 5315 2567 +2829 4351 2567 5315 1581 +2830 252 2716 5734 4094 +2831 934 1953 5581 2579 +2832 5578 743 6212 2676 +2833 4933 2679 4920 1562 +2834 4839 1674 2418 4764 +2835 465 2660 4671 2244 +2836 318 5435 4415 2246 +2837 2221 903 3624 2671 +2838 5745 1568 5260 3476 +2839 5948 1108 3476 5260 +2840 211 4192 1113 2871 +2841 5195 5468 3991 543 +2842 2348 3912 20 21 +2843 326 4216 1148 2839 +2844 4169 633 6090 2656 +2845 1030 2894 388 4402 +2846 5770 374 4712 3221 +2847 3635 1080 3090 4008 +2848 2945 2812 4253 1156 +2849 1622 4072 1139 3859 +2850 782 3596 2017 5515 +2851 2200 3815 2595 763 +2852 695 4805 213 3455 +2853 1640 4821 1104 3707 +2854 1079 4285 5648 1555 +2855 2016 2634 4724 735 +2856 2668 4337 3146 994 +2857 1355 3630 313 3813 +2858 1053 3848 1278 3802 +2859 5689 324 4971 1140 +2860 4906 1414 5364 2316 +2861 3288 1900 6104 5244 +2862 1357 2823 767 5397 +2863 805 3816 1731 4709 +2864 2034 4874 642 3730 +2865 4732 3609 3888 1175 +2866 861 4484 4011 2391 +2867 3522 4639 4392 1597 +2868 2779 212 5605 2571 +2869 2691 291 4504 3843 +2870 3956 1346 3529 4121 +2871 3265 848 4684 5854 +2872 1653 3508 656 4718 +2873 2409 535 3473 4623 +2874 2943 5440 1616 5024 +2875 479 4270 1537 4243 +2876 3644 483 4333 2820 +2877 2997 1398 3791 3832 +2878 6223 3412 859 3411 +2879 3867 1306 3125 5065 +2880 1001 5951 2013 5846 +2881 5336 2575 6112 1034 +2882 3930 2814 4287 1490 +2883 3030 4693 669 5731 +2884 3463 2845 4305 1380 +2885 1304 4268 5402 2778 +2886 2699 4213 2879 990 +2887 5894 1611 6192 2905 +2888 1725 5925 3900 3183 +2889 2038 4494 5685 463 +2890 5765 2613 4752 1799 +2891 2484 4753 6070 2483 +2892 2837 1266 4215 2880 +2893 4089 2143 4726 1437 +2894 2359 2652 5630 897 +2895 2617 571 3857 3614 +2896 1618 5336 1034 2723 +2897 5393 823 5582 2612 +2898 3181 1363 4570 3908 +2899 1447 2942 433 4151 +2900 514 2010 4163 4694 +2901 6077 1230 3926 3397 +2902 1836 3150 227 4017 +2903 2955 3957 3492 1368 +2904 2437 2601 4814 494 +2905 4123 2743 4886 1055 +2906 2351 822 2984 5542 +2907 1059 5182 1908 4698 +2908 2796 827 5885 3708 +2909 3262 1179 3944 3363 +2910 2031 3567 1137 5031 +2911 2030 4486 1093 5756 +2912 1554 3111 1024 4655 +2913 4626 2862 4606 1827 +2914 3651 584 3506 3892 +2915 2700 5772 214 3587 +2916 4516 2328 5603 1624 +2917 326 3656 1733 4216 +2918 4582 1547 4987 3063 +2919 5190 3762 5459 1772 +2920 3393 4978 2108 2584 +2921 2556 862 4660 2922 +2922 4887 519 2869 4327 +2923 1691 2585 5395 819 +2924 2978 3248 3992 242 +2925 717 3735 1454 3967 +2926 3710 4894 4558 1012 +2927 4840 3808 5550 1990 +2928 5545 2187 6114 3900 +2929 1752 3849 1101 3632 +2930 4747 2606 5635 970 +2931 936 5458 404 2594 +2932 264 4029 2016 5442 +2933 5031 1137 5660 2774 +2934 4482 2774 5660 1738 +2935 370 4142 1795 5343 +2936 2170 2841 4322 886 +2937 3466 1441 4376 4681 +2938 1711 4872 1968 3690 +2939 1044 4093 1438 3070 +2940 3351 3179 4457 1043 +2941 4642 597 4420 2754 +2942 1668 4847 672 4453 +2943 5802 4501 4853 230 +2944 571 3619 1481 3857 +2945 5563 5680 3898 2125 +2946 2890 971 4247 2889 +2947 2941 467 4807 1057 +2948 2244 4671 4545 772 +2949 1783 2789 5173 951 +2950 3217 596 4368 3375 +2951 4103 968 5499 3024 +2952 3942 1416 4286 3256 +2953 4741 4248 3256 4286 +2954 2085 2627 5750 260 +2955 2654 997 4354 3754 +2956 5200 3360 4520 1163 +2957 4315 1369 5542 2984 +2958 2033 4618 882 2669 +2959 3097 2687 6153 1281 +2960 2065 4601 919 3074 +2961 1965 3016 1208 5665 +2962 3378 1076 4270 2884 +2963 1290 3109 2124 5287 +2964 2568 2131 6226 5091 +2965 4127 3893 4414 376 +2966 2253 718 5691 2623 +2967 6177 2752 4501 499 +2968 1166 2605 522 5003 +2969 1659 5212 1315 3680 +2970 230 3772 2199 4800 +2971 3331 1798 5720 4087 +2972 960 2248 5982 2910 +2973 2469 3071 6077 300 +2974 1607 2353 4037 208 +2975 1781 4502 1506 4595 +2976 787 2570 5086 1012 +2977 1645 4510 555 3237 +2978 3017 3480 3595 1222 +2979 3134 3005 5647 213 +2980 1485 5186 4677 2625 +2981 909 2622 4546 4984 +2982 825 5015 4440 1872 +2983 4044 942 4408 3075 +2984 3703 234 4062 3292 +2985 1624 2379 5464 4516 +2986 2518 740 4516 5464 +2987 3960 614 5832 5864 +2988 577 2889 4247 5350 +2989 578 4030 1199 3257 +2990 562 3401 1533 3230 +2991 2261 1450 4614 5685 +2992 2605 3053 4806 522 +2993 2816 604 5702 2631 +2994 4611 2137 4842 992 +2995 2364 1273 4979 2794 +2996 978 2347 416 5572 +2997 4942 456 5059 5112 +2998 2634 2016 4029 809 +2999 5553 2054 5264 2972 +3000 1494 4386 1214 3330 +3001 3567 2637 5735 1137 +3002 3979 4183 4605 1612 +3003 3381 1250 3832 3791 +3004 5015 825 3523 5416 +3005 1959 5827 653 3462 +3006 4117 4214 2521 798 +3007 3958 1531 4767 2655 +3008 1308 3653 2087 6038 +3009 2992 349 4573 4372 +3010 888 5667 1800 3368 +3011 3481 1202 5037 4755 +3012 793 2886 1172 5429 +3013 2584 843 2767 6125 +3014 1232 6135 6125 2767 +3015 219 4071 1381 3309 +3016 3835 2467 5209 255 +3017 3974 1174 4171 278 +3018 2859 3853 4576 1476 +3019 2617 3492 3957 571 +3020 2689 1208 6224 2718 +3021 2729 84 85 4825 +3022 1661 3638 1522 4230 +3023 4025 2968 4696 922 +3024 3260 3844 4779 1408 +3025 747 3045 5799 2609 +3026 2822 309 3982 3517 +3027 1931 4064 670 3627 +3028 1029 5121 1933 4479 +3029 3536 1318 6164 2878 +3030 4375 1376 5194 2607 +3031 1762 3611 1141 4321 +3032 2945 1156 5585 2607 +3033 1091 4233 2007 5248 +3034 3183 3900 6114 2384 +3035 4911 253 3389 4252 +3036 1847 541 5362 3513 +3037 846 4390 6057 2133 +3038 3145 1272 3450 354 +3039 2401 5463 1790 3586 +3040 305 2989 1557 3828 +3041 1773 3936 1101 3661 +3042 2214 2614 5334 507 +3043 3073 630 5908 4191 +3044 4830 1526 5033 2730 +3045 1983 4998 769 5499 +3046 4255 1557 5926 2535 +3047 2012 4943 5102 823 +3048 1378 2185 6045 4585 +3049 3878 3292 4062 1361 +3050 1847 2618 4941 541 +3051 2428 3252 4081 599 +3052 591 4077 1438 4093 +3053 5793 835 5802 2851 +3054 825 5092 6231 3523 +3055 73 74 5696 2650 +3056 1605 4250 5617 2971 +3057 3307 10 11 6186 +3058 435 5874 3346 2640 +3059 2783 92 93 4010 +3060 2040 4496 2127 5649 +3061 2261 5700 3138 505 +3062 3110 2842 6189 436 +3063 6220 1035 5494 2574 +3064 602 4084 1396 4008 +3065 403 1877 4491 5909 +3066 4742 270 4079 1863 +3067 3868 3978 4156 910 +3068 3589 5308 1854 6173 +3069 2551 1172 2886 4509 +3070 1638 3387 965 4810 +3071 925 5066 1507 2638 +3072 5918 2710 6098 697 +3073 4309 367 4046 5673 +3074 4097 1356 3939 506 +3075 2010 514 5537 2733 +3076 269 1787 5903 3213 +3077 3192 3948 3700 1403 +3078 3903 470 4913 3048 +3079 4180 864 5598 2646 +3080 2089 5089 728 4233 +3081 1463 4043 233 3757 +3082 4186 724 4746 1647 +3083 3888 3609 4165 1469 +3084 4732 343 4165 3609 +3085 6060 460 2663 5803 +3086 1454 4531 1981 4756 +3087 2026 3395 985 6119 +3088 1379 6050 2510 6131 +3089 5404 1766 6093 2908 +3090 546 4921 1733 3945 +3091 1346 3956 595 3588 +3092 3974 3917 3668 1174 +3093 4290 1167 6120 3021 +3094 2129 5217 1820 3743 +3095 3999 2649 5103 1571 +3096 6210 2980 4117 798 +3097 4339 3157 4136 1297 +3098 4582 2628 5245 574 +3099 3886 595 3956 3605 +3100 4121 1530 3605 3956 +3101 4622 2193 4959 1690 +3102 4339 2719 1448 4678 +3103 94 95 4790 1641 +3104 1956 1366 3486 6107 +3105 1171 4743 1735 4416 +3106 1546 4018 1383 4019 +3107 4846 1136 4384 2931 +3108 3927 303 4599 2741 +3109 1374 5493 430 2643 +3110 4869 384 5388 2633 +3111 4008 3090 4492 602 +3112 3599 1472 4492 3090 +3113 928 3986 1835 5357 +3114 420 5102 4943 2624 +3115 226 1901 4148 3629 +3116 4239 4369 3863 648 +3117 1063 5221 2066 4590 +3118 4381 2880 5509 1440 +3119 3131 3010 5129 600 +3120 4704 1570 5032 2649 +3121 2199 827 5717 2200 +3122 680 4377 1775 4421 +3123 4655 3014 5872 490 +3124 909 3945 1733 3657 +3125 2135 702 1819 5164 +3126 3094 1761 3491 3789 +3127 2656 1446 3386 1173 +3128 5398 311 5379 2882 +3129 3728 2706 4775 1563 +3130 2290 391 5713 3293 +3131 3501 4892 5227 1984 +3132 4600 1778 4228 4777 +3133 4024 930 5618 2661 +3134 4206 2661 5618 1665 +3135 3638 615 5840 3141 +3136 5001 3232 5563 752 +3137 2161 4828 1670 4855 +3138 2284 5246 35 36 +3139 3922 598 4183 3136 +3140 2697 4731 2722 386 +3141 871 6034 2400 4950 +3142 2124 4415 1464 4388 +3143 1534 4062 234 3533 +3144 3255 594 4147 3210 +3145 3367 3373 4503 2817 +3146 1785 3804 1126 3431 +3147 4601 1641 4790 2762 +3148 1573 2718 6224 4266 +3149 1487 3422 1467 4075 +3150 3127 2775 4694 1399 +3151 3387 1638 4086 4452 +3152 3531 607 3700 3948 +3153 6167 1943 4485 2985 +3154 4300 4737 6153 2687 +3155 759 1923 4497 4797 +3156 1303 4259 1037 3048 +3157 1521 3959 1545 3960 +3158 6016 2202 5263 3076 +3159 641 4955 2334 5477 +3160 250 4088 1549 4003 +3161 575 2802 5540 3751 +3162 4274 2655 5892 1617 +3163 1367 5915 1976 3541 +3164 4596 2821 5703 917 +3165 705 5624 2042 5114 +3166 5337 2660 5472 981 +3167 534 3354 4320 6088 +3168 2357 3146 325 5243 +3169 2486 973 4798 3445 +3170 2998 3057 4265 1120 +3171 5561 3760 5122 1284 +3172 3421 2658 5387 878 +3173 3304 2922 4660 4152 +3174 5745 2149 5721 750 +3175 3946 433 2679 4933 +3176 3913 3169 4196 1049 +3177 2805 1510 3644 4311 +3178 1115 3605 1530 4382 +3179 1519 4109 586 4850 +3180 594 3888 1469 4147 +3181 2911 3398 4275 1096 +3182 71 72 4967 2959 +3183 4206 1665 5029 2921 +3184 80 2921 5029 79 +3185 5962 957 4474 2592 +3186 2250 3475 6177 4875 +3187 3890 4060 5101 1365 +3188 5803 2663 5137 1223 +3189 4261 622 2788 5267 +3190 6187 2265 5333 868 +3191 4897 1625 5285 2666 +3192 5228 1304 5135 3602 +3193 5628 1421 4889 2943 +3194 679 4392 1749 4323 +3195 3057 246 5239 4265 +3196 5137 2663 5971 895 +3197 2786 4701 4009 820 +3198 4107 3845 4621 587 +3199 1724 4225 4858 891 +3200 1416 3942 485 3774 +3201 2342 3327 4769 1107 +3202 838 3355 5317 2053 +3203 5669 4131 1744 5218 +3204 2807 587 4621 5346 +3205 3599 4414 2924 1472 +3206 261 3889 1435 4126 +3207 3982 1397 4096 3517 +3208 2693 3455 456 4942 +3209 1517 4133 648 3863 +3210 2891 2793 4615 935 +3211 4375 644 2669 5519 +3212 5951 1001 5117 2724 +3213 2370 923 6218 2732 +3214 4166 231 3042 4310 +3215 5992 3358 4423 2219 +3216 5729 901 3758 3773 +3217 520 3740 1750 4675 +3218 5880 2165 5384 440 +3219 3478 3341 4144 1153 +3220 5866 2667 5280 915 +3221 2229 720 5951 2724 +3222 712 4118 1456 3698 +3223 2703 1090 5979 2702 +3224 3590 2730 5033 1484 +3225 4557 3040 4615 1489 +3226 5210 935 4615 3040 +3227 5439 1913 5772 2700 +3228 955 3579 1369 4269 +3229 4137 1151 4367 2988 +3230 4314 514 4694 2775 +3231 3130 5490 723 4019 +3232 3907 1331 5626 3011 +3233 565 3905 1460 4275 +3234 1111 3862 1843 5588 +3235 1647 4746 472 1406 +3236 2854 1658 4999 2339 +3237 78 2701 2266 77 +3238 5835 2785 4685 706 +3239 2395 4619 832 5619 +3240 4261 5267 1948 6035 +3241 3497 1150 3517 4096 +3242 2354 5813 1048 3842 +3243 310 2817 4503 5437 +3244 215 5491 1056 2591 +3245 399 1948 5267 4272 +3246 5918 1851 6095 2710 +3247 2284 36 37 4695 +3248 872 3720 3566 2305 +3249 3224 2692 5273 883 +3250 3175 3166 6174 1768 +3251 468 2692 1360 5629 +3252 2926 3565 4088 250 +3253 4217 2818 5776 1736 +3254 5439 2700 5057 804 +3255 1380 4305 634 3606 +3256 2266 2701 5618 930 +3257 5029 1665 5618 2701 +3258 3257 3234 4229 1261 +3259 2655 4274 3480 608 +3260 3708 5885 3772 1178 +3261 1943 385 5007 4485 +3262 5305 515 5755 2793 +3263 2906 396 5511 2886 +3264 4372 4156 3978 1431 +3265 4240 577 4808 3051 +3266 4454 1609 4099 4521 +3267 1412 3718 1217 4067 +3268 1567 4026 275 4140 +3269 5307 4407 3145 1662 +3270 6107 3963 5814 4488 +3271 5467 2674 4080 1279 +3272 1019 4425 2269 5779 +3273 2545 1017 5175 2695 +3274 3530 233 4043 3665 +3275 5307 1749 5590 2686 +3276 4036 882 5734 2716 +3277 4319 742 5579 3633 +3278 5303 2072 5830 497 +3279 4024 2696 5496 1626 +3280 1865 841 4020 3795 +3281 1836 5940 627 4160 +3282 5496 2696 5202 956 +3283 1770 3724 811 4022 +3284 1760 4125 873 5038 +3285 831 4318 1584 4589 +3286 3208 712 3698 4416 +3287 2801 531 4483 3212 +3288 1556 5395 2585 4950 +3289 1881 838 4856 3408 +3290 3955 2929 4877 1298 +3291 2697 904 5556 2698 +3292 1527 3834 1533 3401 +3293 4720 2771 5527 1434 +3294 5289 771 5539 1706 +3295 2987 2184 5013 5586 +3296 3060 4885 5764 309 +3297 3798 4121 3529 578 +3298 3943 2699 5390 232 +3299 2682 1004 5719 2683 +3300 4229 2960 4453 1575 +3301 2984 6200 372 4315 +3302 2326 1242 3770 3325 +3303 3372 4797 5873 2937 +3304 3438 3375 4368 1268 +3305 5501 2872 5049 675 +3306 1239 2052 4637 3572 +3307 5708 5696 74 75 +3308 930 5696 5708 2266 +3309 555 4510 1720 3723 +3310 1040 2009 6043 2754 +3311 5852 423 5633 2829 +3312 2242 3285 5945 1103 +3313 4050 2319 4016 1110 +3314 4687 2711 5242 1564 +3315 1547 4224 1684 4316 +3316 4568 2415 5365 2018 +3317 4471 1855 4716 2969 +3318 6215 3674 4097 1833 +3319 5396 2151 5237 887 +3320 4386 1494 4005 4040 +3321 994 405 5679 2668 +3322 4808 577 5350 2732 +3323 3666 4141 3911 3667 +3324 1161 2368 3497 5927 +3325 4199 2717 5565 1065 +3326 1966 5438 2664 6025 +3327 1618 4549 1857 5672 +3328 2229 2724 5117 1442 +3329 3251 2547 6139 1433 +3330 5614 993 4710 2728 +3331 5070 2946 5308 1021 +3332 4287 632 6027 1490 +3333 1776 5178 2147 2807 +3334 2072 630 5008 2892 +3335 4693 3293 4725 669 +3336 3793 1431 3978 1447 +3337 2698 521 2916 4550 +3338 2257 5766 1393 6147 +3339 3603 1193 3930 4344 +3340 1498 4041 1600 4235 +3341 4199 310 5437 2717 +3342 5495 3842 5798 775 +3343 5979 1090 4606 2333 +3344 4238 395 5749 2865 +3345 991 5041 719 2726 +3346 886 5950 1699 4711 +3347 758 6150 1969 4073 +3348 5365 3670 3769 989 +3349 2028 4523 1542 4934 +3350 2156 5099 1628 5282 +3351 1646 3779 235 4040 +3352 4471 2969 5277 1384 +3353 2475 3727 4515 1102 +3354 1201 1919 5808 4458 +3355 999 5912 1734 2750 +3356 259 3470 1542 4523 +3357 1422 3370 232 4326 +3358 3594 2247 4580 1726 +3359 2620 1003 4965 2749 +3360 3819 1575 4935 3115 +3361 63 64 5419 4027 +3362 6026 1672 3626 2076 +3363 2037 5841 2036 4649 +3364 411 2952 1922 4524 +3365 1526 2802 575 5033 +3366 1977 5297 1831 2725 +3367 2450 5174 2729 1536 +3368 5591 2729 5174 923 +3369 1409 5003 522 2864 +3370 3626 1672 298 2852 +3371 2559 6078 14 15 +3372 2029 5541 799 4100 +3373 2256 6185 318 4589 +3374 3644 1262 4017 4311 +3375 1263 3155 474 4559 +3376 2829 5953 3161 915 +3377 3492 3481 6184 1368 +3378 2737 1128 4227 3442 +3379 5713 1375 4725 3293 +3380 1853 5433 2235 4514 +3381 3023 1350 6027 2768 +3382 3016 5612 6224 1208 +3383 3835 1045 6030 2467 +3384 4765 497 5164 1819 +3385 1424 4153 1596 4132 +3386 3466 4681 4251 1452 +3387 945 2001 4795 5928 +3388 4319 3633 6043 2009 +3389 2776 810 2421 3502 +3390 488 5028 1827 4473 +3391 3452 3030 5488 770 +3392 1362 4381 1440 4003 +3393 4841 3246 1379 4343 +3394 3353 4292 3432 1069 +3395 4512 2756 5839 613 +3396 4944 1715 5839 2756 +3397 1041 2112 4724 3822 +3398 3585 3118 4850 1534 +3399 5083 2851 5802 230 +3400 2945 1054 6214 2812 +3401 4213 641 5477 2879 +3402 4663 2879 5477 1666 +3403 4200 2917 6208 1852 +3404 5132 959 6208 2917 +3405 2729 5591 83 84 +3406 4378 3851 5964 1503 +3407 3845 5311 4177 1535 +3408 1531 3756 681 4767 +3409 3765 1434 5527 2838 +3410 4433 3914 4001 1427 +3411 3076 1112 2780 6016 +3412 889 3935 2270 5340 +3413 6034 2763 5864 1891 +3414 4136 3157 5379 311 +3415 1268 4368 1829 4806 +3416 2734 1268 4806 3053 +3417 2516 1636 5817 3885 +3418 5193 1337 3566 3720 +3419 1720 5729 3773 5341 +3420 2781 2782 5993 1114 +3421 6115 761 5031 2774 +3422 5163 3570 4363 542 +3423 5681 2044 5398 2742 +3424 1393 5766 2154 5896 +3425 3422 1487 3911 4141 +3426 3353 1069 4320 3354 +3427 772 1928 5565 4212 +3428 339 5838 1441 4292 +3429 2594 854 5084 1274 +3430 2777 2776 3502 1333 +3431 3621 3318 1961 6193 +3432 1124 3695 2516 5887 +3433 5434 2703 5160 1741 +3434 816 5789 2306 6235 +3435 5761 1905 5777 4279 +3436 601 4447 2258 3817 +3437 486 4743 1171 2899 +3438 2926 1049 4744 2899 +3439 3899 2923 5600 692 +3440 56 3 57 5444 +3441 306 2116 4823 3201 +3442 1000 3621 1693 4972 +3443 4107 908 5311 3845 +3444 4019 1383 6106 3130 +3445 1501 3044 1270 4032 +3446 3466 3432 4292 1441 +3447 4458 3052 926 5650 +3448 2293 1349 5468 3568 +3449 1723 5296 1224 3365 +3450 4843 1890 4764 2418 +3451 725 4413 1444 4862 +3452 4056 3177 4766 1606 +3453 460 2356 5289 3947 +3454 1981 4953 1704 4596 +3455 3386 1446 5584 521 +3456 3360 5200 3473 535 +3457 4518 1389 4982 3752 +3458 2430 3044 5694 236 +3459 3354 3019 4618 1407 +3460 4776 1684 4224 3679 +3461 2276 3679 4224 574 +3462 5124 1600 4041 5827 +3463 773 3738 1883 5553 +3464 4517 1544 4904 2235 +3465 2458 4604 947 3049 +3466 1960 5269 45 46 +3467 1614 5181 2228 4809 +3468 4014 961 4995 2919 +3469 3937 2274 5981 668 +3470 5054 438 4833 2338 +3471 34 6206 5573 33 +3472 1388 3807 586 4109 +3473 2745 1030 3528 4303 +3474 1909 5452 931 3934 +3475 2140 5727 413 4193 +3476 4600 4777 3117 1513 +3477 2894 1030 2745 4898 +3478 5096 2885 5318 1553 +3479 5708 76 77 2266 +3480 4862 1711 5183 2809 +3481 5585 3429 5480 644 +3482 1726 256 5860 3594 +3483 739 4472 2691 3838 +3484 4462 4027 5419 1924 +3485 3691 1358 4818 3558 +3486 6220 2525 6021 1035 +3487 1984 790 5119 2268 +3488 2564 4002 5657 556 +3489 490 4627 1554 4655 +3490 4257 1552 5154 1874 +3491 4217 397 4987 2818 +3492 1917 4102 1524 4260 +3493 4072 368 5527 2771 +3494 2439 844 6122 5879 +3495 5402 1616 5440 2778 +3496 3246 2833 4931 418 +3497 2086 3582 515 5305 +3498 5661 2338 5719 1004 +3499 4429 1140 4971 1290 +3500 2517 982 3088 4511 +3501 46 3734 4430 1960 +3502 5125 2836 6159 1734 +3503 6021 2894 4898 1941 +3504 1117 3219 657 4434 +3505 2490 2782 5711 2780 +3506 729 2063 5048 4409 +3507 3022 5938 3344 377 +3508 3215 316 4996 3000 +3509 4734 1562 4920 3920 +3510 972 2837 647 4948 +3511 2063 4571 434 5048 +3512 4674 5835 5725 1792 +3513 1427 3225 249 4433 +3514 28 5481 27 2 +3515 1813 4105 251 4868 +3516 4654 379 3990 4324 +3517 280 1971 6196 3771 +3518 1755 4492 1472 4359 +3519 864 2408 5895 5598 +3520 4073 3007 5093 758 +3521 1029 3125 1306 5121 +3522 4783 936 2792 5792 +3523 1840 4457 1594 4575 +3524 4880 617 5126 3081 +3525 1578 3532 957 5272 +3526 3992 2804 5890 242 +3527 5286 2311 5200 1163 +3528 4143 2211 5958 505 +3529 3065 3323 4257 664 +3530 619 4075 1467 4001 +3531 295 5301 1545 2784 +3532 2811 2840 4796 302 +3533 1456 4118 1550 4276 +3534 3517 1150 6042 2822 +3535 5992 916 6044 3358 +3536 4264 1615 4128 4445 +3537 2889 1461 6084 2890 +3538 3879 1372 5970 2814 +3539 1434 4231 1636 4232 +3540 3354 1407 4586 3353 +3541 3719 1581 5315 2790 +3542 4552 2790 5315 640 +3543 4305 4059 4104 634 +3544 4871 3181 5763 1788 +3545 3908 502 5763 3181 +3546 1959 3462 975 4340 +3547 2190 4116 4069 830 +3548 2099 5051 5148 1650 +3549 4088 1456 4276 3997 +3550 6222 3615 1451 4636 +3551 2891 2560 5305 2793 +3552 1370 3628 617 4246 +3553 2000 291 2587 4653 +3554 964 1737 4314 2775 +3555 1178 4090 455 3708 +3556 5171 2551 4509 1629 +3557 3861 557 4302 5658 +3558 1361 4219 586 3673 +3559 5378 1056 4403 5804 +3560 4453 2960 4732 1668 +3561 1704 4376 1441 5838 +3562 4104 4059 4035 1516 +3563 852 3781 2043 5693 +3564 5552 3837 4522 1694 +3565 5848 3028 6163 1841 +3566 492 2939 5833 2940 +3567 2576 2940 5833 974 +3568 5058 802 6026 2076 +3569 3326 1301 4188 3755 +3570 1541 2865 5749 3596 +3571 348 3979 1612 4432 +3572 777 3699 1562 4734 +3573 602 4492 1755 4380 +3574 5331 1834 4518 3752 +3575 3653 3014 4655 1024 +3576 1061 3338 6084 4426 +3577 1358 5914 2275 4818 +3578 2692 3224 5837 1360 +3579 2633 942 5540 2802 +3580 4389 2821 5838 339 +3581 2944 1161 5927 2826 +3582 2686 747 4407 5307 +3583 5146 1604 5890 2804 +3584 403 5094 2150 5155 +3585 4578 5858 5306 1027 +3586 2143 4418 5943 4726 +3587 1570 4703 335 3561 +3588 3731 1392 4258 3121 +3589 5633 1334 5953 2829 +3590 2639 1260 4468 4467 +3591 3993 1664 3209 461 +3592 3471 5775 5371 2147 +3593 664 4398 2563 5746 +3594 962 2177 1937 4406 +3595 6199 2861 5041 991 +3596 1320 3188 947 4604 +3597 4698 2927 5819 629 +3598 4269 1740 5819 2927 +3599 1817 4355 5446 2313 +3600 1385 4149 560 3371 +3601 3554 3618 5985 1426 +3602 2739 545 5535 2808 +3603 1759 4496 412 4400 +3604 1352 2494 6117 4076 +3605 17 2996 4721 16 +3606 4285 1079 4609 3472 +3607 5177 1523 5173 2789 +3608 4144 4035 4059 1468 +3609 4462 1924 6056 3467 +3610 556 4702 4682 2564 +3611 4333 1331 6154 2820 +3612 2778 5440 209 5775 +3613 453 2581 839 5655 +3614 1640 3707 1158 5797 +3615 2278 934 6159 2836 +3616 4132 5392 4162 1424 +3617 5837 2857 5100 1360 +3618 4389 1373 5703 2821 +3619 1694 4607 744 5552 +3620 102 103 5893 2836 +3621 5776 2818 6129 907 +3622 2869 2882 5379 1336 +3623 6167 2985 4770 699 +3624 4182 1860 5578 2676 +3625 4776 2883 6182 281 +3626 5011 2878 6164 469 +3627 2652 2934 2148 5630 +3628 5294 1424 4162 6115 +3629 3229 4541 4573 349 +3630 4849 3713 4483 531 +3631 2964 708 6203 5197 +3632 4764 677 4299 4839 +3633 2195 6106 1383 3421 +3634 4301 4477 6009 1880 +3635 773 5075 2061 5740 +3636 401 4824 2457 5712 +3637 4539 2856 5995 1541 +3638 2887 222 3327 5583 +3639 1028 4600 1513 3495 +3640 1952 5220 1525 4419 +3641 3483 1073 5995 2856 +3642 220 4517 2235 5433 +3643 945 4074 4325 2001 +3644 13 5321 6012 3613 +3645 3460 792 1649 5518 +3646 3591 1528 4307 4306 +3647 2979 4807 6065 1995 +3648 1062 3587 4345 1842 +3649 2611 4571 1245 3836 +3650 944 3026 978 3345 +3651 2084 613 5839 2861 +3652 4203 2861 5839 1715 +3653 3496 1011 5330 2842 +3654 2388 446 5497 2608 +3655 5614 3303 4070 993 +3656 1073 2865 1541 5995 +3657 5318 2885 5757 62 +3658 4836 406 6163 3028 +3659 4911 2971 4834 253 +3660 1604 3743 660 4676 +3661 3672 1243 3269 4530 +3662 4392 3097 4849 1597 +3663 600 4527 1119 3131 +3664 924 3984 5129 2225 +3665 3762 5190 4441 812 +3666 5314 451 4322 2841 +3667 2300 2864 1829 5226 +3668 3333 1120 4265 3958 +3669 5848 921 5050 3028 +3670 4836 3028 5050 1561 +3671 5091 6226 3965 1504 +3672 1846 5222 834 6059 +3673 2996 17 18 4687 +3674 3109 4548 5396 887 +3675 1948 399 4866 2409 +3676 963 4780 1332 3020 +3677 2283 405 5704 3329 +3678 1657 444 4436 2460 +3679 4167 4099 4239 648 +3680 1711 3690 378 5183 +3681 2913 3558 4818 1125 +3682 4651 228 5508 3004 +3683 1060 5526 899 2752 +3684 4198 2908 6228 1807 +3685 832 5080 2554 5619 +3686 5647 3005 5936 1599 +3687 5648 6230 4900 421 +3688 2837 972 5342 2868 +3689 2429 1135 5142 2897 +3690 231 4166 1516 4035 +3691 2882 2869 5354 1005 +3692 3338 441 2890 6084 +3693 2346 3047 4789 1020 +3694 3853 2859 5965 926 +3695 1968 2171 5684 3690 +3696 1964 4446 284 3479 +3697 1637 4594 1589 4411 +3698 2232 5606 1775 4377 +3699 1687 5151 2623 5691 +3700 4363 3570 5320 996 +3701 2354 889 5340 6022 +3702 4555 2676 6212 1988 +3703 822 2863 5668 1914 +3704 3051 4808 1789 6044 +3705 1558 2948 1163 4520 +3706 3610 2427 5191 1491 +3707 1002 3675 2512 5786 +3708 2127 4496 1759 5407 +3709 6104 342 3935 2168 +3710 5201 6098 4828 2161 +3711 5744 716 4034 5787 +3712 5140 272 5081 3087 +3713 2139 858 5209 2467 +3714 2059 3430 468 5629 +3715 1059 2873 445 5431 +3716 3263 693 6011 5204 +3717 1954 3733 6069 393 +3718 2539 5955 4822 1811 +3719 2866 4344 3930 1490 +3720 2857 876 5418 5100 +3721 3034 266 5179 2259 +3722 2871 2872 5501 1085 +3723 1832 3953 715 5597 +3724 4499 2665 4889 1421 +3725 2830 1501 6216 5662 +3726 2270 1471 5530 243 +3727 274 6198 2120 5964 +3728 463 4070 3303 2038 +3729 4712 896 1804 3221 +3730 2936 1047 2990 4879 +3731 86 3753 4825 85 +3732 3910 4134 3720 872 +3733 4871 2932 5627 952 +3734 4650 814 4904 2651 +3735 1586 4556 992 3811 +3736 3109 1290 4971 4548 +3737 419 4670 2830 5662 +3738 2170 950 5314 2841 +3739 4556 3207 4611 992 +3740 4101 1111 5423 3120 +3741 4928 1867 4277 5950 +3742 4995 635 6201 2919 +3743 866 5643 1759 4400 +3744 826 2197 4713 3555 +3745 5466 694 3413 1300 +3746 1077 5339 2026 4801 +3747 4280 3336 6213 1018 +3748 4292 3353 4586 339 +3749 2198 4580 1027 5306 +3750 3774 3093 4786 1416 +3751 2994 1098 4605 3295 +3752 1015 3518 1821 5994 +3753 2316 4331 5474 1729 +3754 1576 4013 653 4254 +3755 2329 5949 989 2371 +3756 3972 1055 4886 2282 +3757 5631 1737 4824 4091 +3758 3048 1037 5602 3903 +3759 6182 2883 5613 1796 +3760 2409 4866 1371 4028 +3761 1168 1744 5351 3039 +3762 1751 3250 2056 5410 +3763 4349 1515 4202 1498 +3764 4550 2916 5822 1713 +3765 2209 986 5822 2916 +3766 5516 3169 5509 566 +3767 1670 5889 3294 2487 +3768 287 6161 2055 5454 +3769 2373 517 3871 3569 +3770 4354 2853 1539 3754 +3771 1338 3301 1595 4857 +3772 525 2667 5866 3397 +3773 4423 3194 5611 1439 +3774 1583 5376 424 2902 +3775 5436 2896 5487 1866 +3776 1516 4133 1517 4104 +3777 1436 2447 4841 4385 +3778 2264 1006 5399 2902 +3779 3889 1253 6211 1435 +3780 2879 3308 4781 990 +3781 1587 5913 1158 2542 +3782 4797 3372 5674 759 +3783 5330 1011 4481 6180 +3784 2632 4697 47 48 +3785 100 101 5125 3135 +3786 3846 4103 3024 337 +3787 5091 797 4358 2568 +3788 2181 4482 365 5608 +3789 2352 5703 1373 5520 +3790 2547 3251 5247 462 +3791 5195 543 4686 3527 +3792 2098 2974 5506 1040 +3793 4202 1515 4282 351 +3794 1590 4293 1517 3863 +3795 5214 2387 5284 1967 +3796 1978 6168 2598 4812 +3797 597 2903 1651 5646 +3798 5104 3970 5385 1429 +3799 437 3294 5016 2463 +3800 35 2936 6206 34 +3801 1682 3817 829 5944 +3802 5671 1520 5252 2975 +3803 2887 1357 5397 2641 +3804 2635 1214 4386 3737 +3805 2597 1138 4885 3060 +3806 2057 5007 1572 4745 +3807 5523 324 4561 5790 +3808 1314 3670 5365 2415 +3809 516 6149 1133 2934 +3810 2192 600 5129 3984 +3811 2281 6137 1371 4866 +3812 2879 4663 415 3308 +3813 3271 4184 4374 1573 +3814 3859 4374 4184 1622 +3815 4978 3393 4600 1028 +3816 5752 944 5277 2969 +3817 4719 1309 6187 3676 +3818 1972 4051 1085 5501 +3819 2412 2909 4145 320 +3820 859 2347 6194 3411 +3821 3246 5327 3738 1379 +3822 3000 4996 6120 1167 +3823 2618 2445 5320 898 +3824 596 3784 1829 4368 +3825 2613 1303 3048 4913 +3826 1397 4838 572 3593 +3827 3741 5283 4949 217 +3828 2839 3799 6179 326 +3829 2290 5894 2905 818 +3830 963 5574 611 4780 +3831 3860 1594 4457 3179 +3832 5355 1134 4958 3607 +3833 3654 1458 5053 3061 +3834 1047 2936 35 5246 +3835 2578 3553 5881 914 +3836 3087 986 4880 3081 +3837 4179 1550 5554 3980 +3838 5730 5893 103 104 +3839 2559 15 16 4721 +3840 734 3966 1831 5297 +3841 4729 3726 2989 305 +3842 1588 5234 1016 3007 +3843 2509 3732 4404 1258 +3844 1480 3268 688 4754 +3845 1886 4819 845 4536 +3846 697 4799 2468 5918 +3847 4014 2919 6201 1710 +3848 3957 2955 5206 1162 +3849 1415 3745 203 4440 +3850 1065 5565 1928 3987 +3851 927 4524 1922 5782 +3852 4393 4542 4241 1619 +3853 5024 950 5628 2943 +3854 4870 2416 6086 1682 +3855 4099 1609 4282 4239 +3856 1536 5290 782 3689 +3857 3955 5358 424 2929 +3858 4269 2927 5980 955 +3859 331 3076 5263 2481 +3860 4370 5841 4318 831 +3861 884 5639 3701 2548 +3862 1723 5409 396 2967 +3863 527 3696 3113 5382 +3864 1315 5343 5898 4507 +3865 2459 2964 5197 1219 +3866 3893 1568 5534 1473 +3867 1516 4167 648 4133 +3868 2262 87 88 4539 +3869 3290 728 5089 3385 +3870 2445 2963 996 5320 +3871 4340 975 5148 2976 +3872 5994 1821 5120 5046 +3873 1096 4275 1460 3951 +3874 2656 4813 3705 1446 +3875 437 5151 1687 5570 +3876 1870 5886 839 2581 +3877 4093 1455 5678 591 +3878 633 3120 1814 6090 +3879 4804 2958 6203 708 +3880 3722 2398 4925 5257 +3881 1548 4167 1516 4166 +3882 5854 2023 5108 3265 +3883 3847 3549 5891 3797 +3884 4213 3650 4668 641 +3885 4243 1537 4668 3650 +3886 2214 5338 3678 1157 +3887 2076 3626 5959 803 +3888 1580 4401 2217 5899 +3889 5016 3294 5889 933 +3890 2787 4154 5279 1344 +3891 1956 229 6233 1366 +3892 5841 4370 6075 2036 +3893 6092 3337 4995 961 +3894 2467 6030 2675 2139 +3895 4282 1515 4369 4239 +3896 3610 5169 2149 749 +3897 4109 1519 5243 4489 +3898 705 5114 1097 3098 +3899 3870 938 4905 3342 +3900 913 6000 1594 3860 +3901 5261 1938 4659 1015 +3902 5984 1529 824 2619 +3903 1739 5718 347 4210 +3904 4429 6148 3750 1140 +3905 2202 4031 1426 5985 +3906 3470 3678 6140 1542 +3907 602 4411 1589 4084 +3908 4625 1443 5149 3563 +3909 2438 2932 6051 701 +3910 293 4688 1391 3392 +3911 3776 2937 5873 767 +3912 1497 5855 2139 4602 +3913 2261 505 5958 3768 +3914 3628 3571 4882 3918 +3915 3070 2975 5252 360 +3916 965 2505 4985 4810 +3917 1087 2296 5833 2939 +3918 3079 3445 4798 1423 +3919 2122 4686 543 3652 +3920 1892 4205 5812 4115 +3921 3938 4155 5108 1353 +3922 1066 4570 6073 3428 +3923 1884 1607 4056 5856 +3924 1050 2958 1567 5373 +3925 3881 1311 5129 3010 +3926 634 4927 1098 3606 +3927 4202 4254 4041 1498 +3928 2248 5931 4537 976 +3929 508 4537 5931 2308 +3930 707 3891 1482 4842 +3931 4112 2310 5647 1599 +3932 2325 4622 1690 6108 +3933 2946 2381 5454 1328 +3934 1401 3147 1950 4964 +3935 673 3067 1119 5018 +3936 1029 3263 1561 5006 +3937 6028 3615 5654 1671 +3938 839 5876 2735 5655 +3939 4033 2956 5465 983 +3940 5844 703 4727 3931 +3941 2224 3906 326 6179 +3942 3251 1433 4221 5494 +3943 5247 3251 5494 1035 +3944 1189 5543 691 3009 +3945 5797 1158 5913 2251 +3946 1621 4387 1569 4364 +3947 1408 4779 2237 3583 +3948 5544 1496 4508 3840 +3949 1811 4822 1391 3954 +3950 2485 2486 4175 493 +3951 2415 3545 4590 1314 +3952 488 3532 1578 5028 +3953 4967 1626 5496 2959 +3954 255 5209 2025 6049 +3955 1853 4577 407 3890 +3956 1645 4700 1720 4510 +3957 1267 4336 690 3865 +3958 1616 5402 655 2990 +3959 521 2698 5556 3386 +3960 2537 4810 4985 649 +3961 3722 5257 6166 1535 +3962 4001 4483 3713 1427 +3963 1576 4342 1627 4294 +3964 2252 737 4968 3119 +3965 1566 4360 1619 4241 +3966 3891 2315 449 4751 +3967 76 5708 75 4 +3968 5977 3418 5534 750 +3969 822 1914 6200 2984 +3970 4416 1735 5462 3208 +3971 2618 1524 5369 4941 +3972 695 4401 1580 2247 +3973 956 5202 3338 2276 +3974 1105 5638 1763 4634 +3975 2550 3709 669 4725 +3976 671 4150 1875 4456 +3977 5676 1697 4565 4273 +3978 3141 5840 1758 5900 +3979 5690 3483 5449 1774 +3980 715 4418 2143 5597 +3981 4063 1036 4844 2848 +3982 2252 3119 5420 1078 +3983 709 4564 417 3726 +3984 46 47 4697 3734 +3985 4892 3501 5220 391 +3986 4421 1775 5545 5739 +3987 267 2389 5298 3460 +3988 1023 2241 5354 3499 +3989 1013 4630 1878 3546 +3990 2557 298 1672 4740 +3991 4676 2988 5890 1604 +3992 5992 2993 6181 916 +3993 3968 281 6182 2993 +3994 4834 2971 5617 1058 +3995 5569 3680 4918 371 +3996 4295 1586 4986 3277 +3997 5945 817 4894 3710 +3998 4850 3118 5483 1519 +3999 104 1 9 5730 +4000 5963 2091 4742 912 +4001 5784 932 3771 6196 +4002 4713 1703 5231 3555 +4003 6033 4189 4326 232 +4004 1514 3792 683 4525 +4005 2842 1410 4690 3496 +4006 3389 1452 4251 4252 +4007 2518 2977 5604 1031 +4008 3557 5733 724 1492 +4009 2471 781 2319 3896 +4010 5903 2647 707 3213 +4011 708 6059 1810 4804 +4012 2316 1937 363 4906 +4013 3116 475 3981 4914 +4014 4525 1709 4914 3981 +4015 5021 2550 4725 1375 +4016 4240 3051 6181 1796 +4017 2622 1130 5076 3110 +4018 4057 1680 4738 4281 +4019 3084 1989 5615 4679 +4020 446 2254 4908 4438 +4021 751 4163 2010 5681 +4022 2708 2986 6014 1051 +4023 2869 1336 5736 4327 +4024 401 5712 1725 3183 +4025 2249 3547 4667 920 +4026 4497 2641 5873 4797 +4027 2798 2683 5719 1951 +4028 3779 4291 4700 1645 +4029 3839 4152 5186 1485 +4030 2752 1178 4853 4501 +4031 4651 3004 6156 2048 +4032 5956 2831 5165 1392 +4033 4238 3604 5525 1754 +4034 3260 218 4468 3844 +4035 1373 4389 2033 5480 +4036 4103 3846 5333 1445 +4037 1289 5232 1961 263 +4038 2561 3829 859 3412 +4039 3264 3247 4921 546 +4040 5505 5123 6046 2402 +4041 826 3199 2006 5014 +4042 4405 4506 4294 1627 +4043 5756 3226 5414 1497 +4044 4468 1260 4779 3844 +4045 4367 242 5890 2988 +4046 2525 6220 809 4475 +4047 1391 4822 811 3392 +4048 4044 3075 6093 1766 +4049 5772 1913 4709 5451 +4050 351 4282 1609 4328 +4051 1558 4520 743 6144 +4052 2750 1734 6159 4529 +4053 418 4931 3320 2125 +4054 1582 4365 1615 4264 +4055 3128 1449 3004 5508 +4056 2049 4673 842 5868 +4057 1986 4869 1526 4830 +4058 1457 3789 628 4242 +4059 1550 4179 713 4276 +4060 2457 5072 1725 5712 +4061 392 5845 1970 3985 +4062 4335 3368 5181 1614 +4063 5388 384 5181 3368 +4064 3019 1955 4094 5734 +4065 5022 3655 5981 2274 +4066 2218 4929 5722 2384 +4067 5748 922 4696 3073 +4068 4504 896 4712 3843 +4069 1003 5914 1358 3003 +4070 5396 4548 4971 2173 +4071 4331 2316 5364 906 +4072 596 6111 1963 3784 +4073 1785 3431 5659 216 +4074 5522 5008 4696 2968 +4075 4646 865 5461 2419 +4076 5161 1663 4663 1666 +4077 4650 1659 3680 5569 +4078 4848 3763 5412 1046 +4079 2406 5612 3016 801 +4080 2586 4895 3875 1123 +4081 3653 1308 5872 3014 +4082 5538 1823 4098 4948 +4083 3615 2297 5524 1451 +4084 3025 5996 3337 431 +4085 6227 425 6225 3058 +4086 5725 3058 6225 1792 +4087 517 2373 4280 1018 +4088 2513 3032 5646 1651 +4089 268 4014 1710 5116 +4090 2169 1034 6112 3284 +4091 1771 3756 2166 6123 +4092 2185 3022 1894 5759 +4093 4559 474 4999 2651 +4094 2513 999 5642 3032 +4095 1655 4352 1656 4353 +4096 4420 597 5646 3032 +4097 1582 4759 1694 4522 +4098 4254 4202 4342 1576 +4099 4092 2080 5196 1764 +4100 4378 711 5136 4876 +4101 493 4175 2215 5030 +4102 5865 1574 5131 3271 +4103 4184 3271 5131 754 +4104 2657 400 3758 1767 +4105 1843 3862 6132 4771 +4106 2762 4790 95 96 +4107 3741 217 4507 5259 +4108 5000 423 5852 3037 +4109 2552 340 6117 3685 +4110 25 5002 3278 24 +4111 12 5150 6186 11 +4112 4557 344 5807 3040 +4113 1025 3747 5814 2604 +4114 1990 6204 850 4840 +4115 6181 3051 6044 916 +4116 5599 2570 4172 1382 +4117 2907 4675 4885 1138 +4118 853 4837 2566 6169 +4119 2107 5525 651 5296 +4120 1838 5876 839 5886 +4121 6093 3075 5498 638 +4122 2736 1099 5923 3050 +4123 4821 1008 3418 5977 +4124 2458 3049 5840 615 +4125 5847 304 5475 3084 +4126 3571 618 5808 4882 +4127 867 2081 5741 3273 +4128 30 3273 5741 29 +4129 1873 3699 777 4657 +4130 4410 659 4442 4245 +4131 988 5013 2184 6054 +4132 2573 5654 769 4998 +4133 5458 4085 5249 404 +4134 1508 4390 846 4391 +4135 4624 4567 4288 1667 +4136 2155 881 5974 3063 +4137 5535 3061 5905 1830 +4138 3748 3915 4857 290 +4139 4734 4888 6005 777 +4140 5040 5523 5790 1701 +4141 1569 4424 650 4364 +4142 717 3967 1743 5134 +4143 6094 5107 4702 1975 +4144 1209 3459 1007 4873 +4145 3323 3065 5887 1551 +4146 5738 4117 2980 1558 +4147 414 3079 1423 3682 +4148 5996 1794 4995 3337 +4149 1661 4736 615 3638 +4150 3782 1764 5196 817 +4151 1481 3744 344 4638 +4152 2779 3509 4925 741 +4153 2021 5142 1135 4178 +4154 3377 3526 4307 1528 +4155 3129 320 4146 3099 +4156 604 2816 3934 5991 +4157 4334 4444 4360 1566 +4158 1666 5477 2334 5045 +4159 4238 1754 5416 3523 +4160 5861 3405 5422 1471 +4161 4968 1509 5420 3119 +4162 3160 5780 37 38 +4163 4351 1581 5816 3170 +4164 2786 5800 3122 5804 +4165 2684 2514 5271 852 +4166 4784 6234 3435 674 +4167 2369 662 3765 4634 +4168 4098 1489 5755 3520 +4169 2513 3135 5912 999 +4170 5125 1734 5912 3135 +4171 2836 5893 5730 2278 +4172 3863 4369 4244 1590 +4173 4349 4244 4369 1515 +4174 1498 4235 649 4349 +4175 1510 3434 698 4930 +4176 3838 4714 4765 739 +4177 1806 4271 611 5026 +4178 1857 4549 715 3953 +4179 5998 3647 5081 272 +4180 3049 947 5850 5479 +4181 1200 2764 5479 5850 +4182 2760 492 4534 2930 +4183 3585 665 5483 3118 +4184 2446 4387 4128 350 +4185 806 5640 1752 3632 +4186 2729 4825 3753 1536 +4187 1781 3932 784 4502 +4188 1353 3937 668 3938 +4189 1856 1482 3891 4751 +4190 5499 769 6222 3024 +4191 5048 1520 5671 4409 +4192 750 5721 2629 5977 +4193 1064 3058 5725 3973 +4194 4508 1495 4851 3840 +4195 471 3969 2346 4665 +4196 4757 4399 4118 712 +4197 4854 2694 4970 526 +4198 5199 1708 5724 3222 +4199 3847 3222 5724 520 +4200 4521 673 4362 4454 +4201 3940 4155 3938 1705 +4202 4430 3734 4697 1470 +4203 2792 1274 5960 3856 +4204 2942 3868 5335 1488 +4205 1679 5133 2272 5453 +4206 228 4651 1781 4595 +4207 3628 3918 6019 617 +4208 2738 5659 3431 1728 +4209 6148 1902 6238 3750 +4210 2610 270 4742 2091 +4211 2333 268 5116 4772 +4212 1091 6124 2089 4233 +4213 2576 3114 840 2117 +4214 2339 1757 5442 4297 +4215 4418 2488 5607 1730 +4216 3280 1018 6213 3187 +4217 3628 1370 618 3571 +4218 920 4667 1504 3965 +4219 2055 3824 5022 687 +4220 1917 4361 1499 5300 +4221 3477 5636 4508 1496 +4222 2444 5019 1706 5539 +4223 3890 407 3770 4060 +4224 1832 5597 2143 4089 +4225 4040 4005 5166 1646 +4226 818 2905 1862 5489 +4227 1496 5544 2056 5432 +4228 1759 5643 4640 2114 +4229 4163 751 5473 3162 +4230 5563 3232 5768 1812 +4231 1425 4994 207 3552 +4232 2541 907 4316 5085 +4233 2525 4279 5777 388 +4234 3460 5518 5068 2636 +4235 2374 5834 3495 1513 +4236 1989 1207 5787 4034 +4237 2532 4903 69 70 +4238 5745 750 5534 1568 +4239 4990 3130 6106 476 +4240 2395 1483 4452 4086 +4241 2796 1265 5687 2670 +4242 306 3201 1205 2938 +4243 941 4763 1698 3715 +4244 446 4438 2265 5497 +4245 4298 4578 4996 316 +4246 3638 3141 5627 1522 +4247 1356 4325 5847 6134 +4248 766 2206 4834 3660 +4249 2360 5511 396 5409 +4250 3913 1440 5509 3169 +4251 602 4380 1637 4411 +4252 870 1681 5860 256 +4253 3023 3908 4570 1066 +4254 452 3139 1062 6130 +4255 933 2710 6095 3503 +4256 689 1895 3336 4280 +4257 2719 3887 4896 682 +4258 4423 3358 6076 408 +4259 6044 1789 6076 3358 +4260 4225 1724 3843 4712 +4261 4013 1576 4294 4424 +4262 556 5657 2043 3781 +4263 4401 695 3455 2693 +4264 4227 1514 4525 3981 +4265 4450 1627 4342 4437 +4266 425 6227 2269 4425 +4267 4080 711 5533 5954 +4268 5780 3160 5686 1678 +4269 3986 928 5686 3160 +4270 625 3289 1474 5256 +4271 5120 2100 3806 5046 +4272 5089 3081 5126 3385 +4273 4288 4588 4542 4393 +4274 1042 3963 6107 3486 +4275 1046 2791 1893 4848 +4276 5627 3141 5900 952 +4277 2527 81 82 4940 +4278 3312 1263 5075 2972 +4279 934 2278 5933 3307 +4280 4211 3144 1931 5983 +4281 2111 5006 1561 5050 +4282 508 5450 2708 5836 +4283 6100 3880 1443 4625 +4284 4387 1621 4445 4128 +4285 5881 204 5172 914 +4286 283 3722 1535 4177 +4287 500 4847 1668 4181 +4288 2644 5182 1059 5431 +4289 4442 1566 4241 4487 +4290 2164 5482 1613 4662 +4291 5461 865 5361 3962 +4292 2262 5290 1536 3753 +4293 4455 319 4048 4815 +4294 6136 2034 3730 911 +4295 5909 3801 5094 403 +4296 984 5004 2155 5170 +4297 1279 4080 5954 2121 +4298 5259 1601 4191 3741 +4299 4445 659 4410 4264 +4300 416 5705 2471 5079 +4301 4454 4362 4397 1610 +4302 4023 3705 4813 364 +4303 4298 1222 3595 4723 +4304 2650 4967 72 73 +4305 903 5793 2851 5083 +4306 4095 2059 5100 5418 +4307 3467 6056 3163 984 +4308 2654 4412 1727 997 +4309 680 4421 1718 4644 +4310 4277 1867 5230 3250 +4311 987 4564 709 2747 +4312 1284 5122 738 3426 +4313 2005 5760 2323 1100 +4314 6213 1799 5968 3187 +4315 2152 704 4976 4284 +4316 1668 4732 1175 4181 +4317 5364 3170 5816 906 +4318 3678 3470 5064 1157 +4319 1643 4909 2847 5322 +4320 4958 1642 5820 3607 +4321 1556 4194 2245 5087 +4322 4522 3837 4718 656 +4323 2166 3538 5047 892 +4324 2193 931 6004 3766 +4325 3162 1083 6198 1399 +4326 1201 4458 5650 1797 +4327 3990 3918 4882 4324 +4328 4487 4584 4245 4442 +4329 1832 4089 473 5592 +4330 6067 1822 5843 3277 +4331 4295 3277 5843 729 +4332 2912 340 6029 3186 +4333 4245 1634 4395 4410 +4334 4264 4410 4395 1582 +4335 3134 1093 4486 3005 +4336 1719 4021 286 4581 +4337 1598 5517 2427 4715 +4338 5701 1525 5220 3501 +4339 2672 3812 4887 1459 +4340 2786 820 4341 5800 +4341 2259 977 5555 3034 +4342 5441 3472 4609 346 +4343 1259 2496 5815 3825 +4344 2701 78 79 5029 +4345 3963 1232 2604 5814 +4346 4712 374 4226 4225 +4347 3561 3562 5032 1570 +4348 1935 5254 1717 5653 +4349 659 4445 1621 4334 +4350 4029 264 5943 3902 +4351 4973 6199 991 3211 +4352 3323 1551 5426 3324 +4353 2197 2915 5862 913 +4354 2106 5363 2164 756 +4355 5198 216 5659 2738 +4356 4424 1569 4610 4013 +4357 3462 653 4013 4610 +4358 211 2204 5093 3505 +4359 5447 61 62 5757 +4360 435 3987 1928 5874 +4361 1304 3471 796 5135 +4362 4167 1548 4521 4099 +4363 4057 3998 4583 1680 +4364 4720 3983 4598 1139 +4365 1193 3603 5342 2182 +4366 687 5022 2274 5897 +4367 681 4708 1596 3998 +4368 2438 5510 4230 1522 +4369 5862 427 5524 2297 +4370 3403 3216 5870 1229 +4371 3907 1563 4775 3876 +4372 6154 3876 4775 627 +4373 4322 451 5430 3575 +4374 982 3929 2449 5312 +4375 1375 5460 2281 5021 +4376 5525 3604 6155 651 +4377 5805 5446 4355 2387 +4378 5434 1741 5034 4843 +4379 1652 3841 734 4977 +4380 4256 1656 4352 4588 +4381 658 4405 1627 4450 +4382 813 3861 5658 2498 +4383 256 1726 4580 2198 +4384 244 2422 5169 3610 +4385 6096 2931 4384 223 +4386 2528 1890 4843 5034 +4387 2898 1396 4084 4593 +4388 4562 5257 4925 3509 +4389 2075 4439 4692 721 +4390 4609 4123 4299 1417 +4391 2048 4612 696 5417 +4392 5589 3231 6083 1946 +4393 5520 3429 5585 1156 +4394 3257 1199 6047 3234 +4395 5362 1339 5060 3513 +4396 3872 1196 4632 3873 +4397 351 4328 1610 4437 +4398 5610 3503 6095 358 +4399 3489 3039 5351 626 +4400 4288 4393 4405 658 +4401 4506 4405 4393 1619 +4402 775 4171 1174 3288 +4403 2859 616 5677 4957 +4404 6234 1865 5261 3435 +4405 2513 5111 98 99 +4406 1402 4983 1889 5844 +4407 2524 5579 742 4863 +4408 2923 815 3640 5302 +4409 2302 6126 946 5688 +4410 2836 5125 101 102 +4411 2009 1040 5506 3592 +4412 230 4853 1178 3772 +4413 1021 2286 3865 5070 +4414 201 5119 1962 4139 +4415 5122 3760 6200 1914 +4416 2060 3504 55 5715 +4417 1904 4402 388 5777 +4418 1196 6074 2681 5773 +4419 2257 6147 4004 639 +4420 3268 1480 3808 4840 +4421 3194 880 4891 5611 +4422 4846 2931 5904 736 +4423 4334 1621 4364 4444 +4424 5112 5059 899 1801 +4425 3225 1281 6153 4737 +4426 5078 368 4072 5394 +4427 1202 2617 5747 5037 +4428 4202 351 4437 4342 +4429 4101 1608 5425 3394 +4430 3211 369 3661 4973 +4431 2119 3989 1136 3786 +4432 343 6047 2428 4165 +4433 659 4334 1566 4442 +4434 2551 3763 4848 1172 +4435 4289 3284 6112 1509 +4436 2788 2154 5766 5374 +4437 4926 4593 4084 1589 +4438 1823 4638 344 4557 +4439 1866 5487 685 4752 +4440 4684 2433 5716 5854 +4441 4281 366 5184 4187 +4442 5017 722 5074 3950 +4443 1667 4288 658 4526 +4444 1536 3689 5593 2450 +4445 1820 5916 660 3743 +4446 5289 1706 5971 3947 +4447 3725 784 3563 5149 +4448 2912 4076 6117 340 +4449 364 4813 1814 4576 +4450 2642 1411 3329 5704 +4451 1610 4328 1609 4454 +4452 2238 5871 631 4766 +4453 1764 3782 3285 2234 +4454 5328 3314 5796 359 +4455 2159 5987 5687 2012 +4456 468 3430 1949 4122 +4457 2048 5417 1781 4651 +4458 3387 4452 4935 672 +4459 54 5266 3494 53 +4460 4708 4730 4132 1596 +4461 3770 1552 3324 3325 +4462 5320 3570 5163 898 +4463 1585 4533 757 5025 +4464 2032 5944 4002 2564 +4465 1442 2784 5785 4852 +4466 4364 650 4360 4444 +4467 934 3307 6186 1953 +4468 2988 4676 660 4137 +4469 1112 3716 1648 5443 +4470 3158 3310 6145 314 +4471 4636 6057 3846 337 +4472 877 6062 2066 5221 +4473 1662 4505 1538 4323 +4474 2646 3671 5020 533 +4475 1173 3386 5556 2309 +4476 1116 4881 2142 5383 +4477 3902 1730 5607 3800 +4478 760 4994 1425 3688 +4479 3547 345 3331 5877 +4480 2848 2847 4909 1127 +4481 859 3829 5528 3830 +4482 5362 541 4941 3804 +4483 5247 1941 4898 5548 +4484 1449 4831 6156 3004 +4485 2022 4312 1306 3867 +4486 1323 5821 698 3590 +4487 1586 3811 225 4986 +4488 1655 4460 684 4459 +4489 3983 1813 4868 4598 +4490 4424 4294 4506 650 +4491 4857 3915 4347 1338 +4492 4001 3914 4826 619 +4493 1725 5072 710 5767 +4494 4029 3902 3800 1453 +4495 2481 5263 833 6110 +4496 3162 1399 4694 4163 +4497 262 4705 1745 4055 +4498 5769 1687 5691 3404 +4499 5082 3404 5691 718 +4500 4437 1610 4397 4450 +4501 689 1316 4283 1895 +4502 382 2291 5981 3655 +4503 5653 4770 4192 1935 +4504 2525 4475 1453 4279 +4505 1708 3374 520 5724 +4506 2397 5723 5299 1500 +4507 5950 886 4322 4928 +4508 662 2369 4905 4463 +4509 732 4150 2255 5529 +4510 772 3346 5874 1928 +4511 4120 3344 5938 1378 +4512 689 2215 4175 1316 +4513 905 2318 4958 4124 +4514 2489 3823 2203 5009 +4515 2834 3882 4831 1449 +4516 6037 4039 5463 2953 +4517 4120 5975 1887 3344 +4518 2293 3568 5229 259 +4519 5961 2146 4613 642 +4520 5480 3429 5520 1373 +4521 4711 255 6049 3961 +4522 13 3613 5150 12 +4523 1325 3801 5909 1700 +4524 4487 4241 4542 4493 +4525 1724 891 4714 3838 +4526 5980 1908 5182 5750 +4527 3681 5309 30 31 +4528 5654 3615 6222 769 +4529 5395 1556 5087 4652 +4530 4701 4356 4608 1518 +4531 5326 4598 4868 1698 +4532 765 3365 1224 5941 +4533 1772 5459 289 3786 +4534 3231 5589 445 4110 +4535 255 4711 1699 3835 +4536 1439 3551 603 5276 +4537 5331 3752 4982 257 +4538 1842 3897 6130 1062 +4539 298 2557 2126 4974 +4540 1888 4464 1444 4413 +4541 4195 900 5932 4115 +4542 1077 6174 3166 5339 +4543 4450 4397 4526 658 +4544 1056 5491 2282 4403 +4545 1349 2293 5792 4068 +4546 4433 1560 4826 3914 +4547 6067 3534 6197 1822 +4548 1781 5417 696 5811 +4549 920 4689 4078 2249 +4550 797 5091 1504 3866 +4551 4191 1280 5283 3741 +4552 5240 4956 3903 5602 +4553 3083 1252 5651 4020 +4554 3795 4020 5651 1841 +4555 5787 1207 4812 4106 +4556 2957 3850 5020 1505 +4557 4487 4493 4459 4584 +4558 5482 2164 5363 755 +4559 5190 1945 4947 4441 +4560 468 3701 5273 2692 +4561 1900 5127 342 6104 +4562 3290 3385 6019 1465 +4563 4036 4627 4379 5519 +4564 800 2153 5796 4204 +4565 574 4224 1547 4582 +4566 2989 2511 5926 1557 +4567 6077 3397 5866 2380 +4568 650 4506 1619 4360 +4569 4159 745 4354 1849 +4570 1746 4910 1942 4631 +4571 2584 292 6236 3393 +4572 4600 3393 6236 1778 +4573 2575 3788 1078 5420 +4574 2792 3856 5275 606 +4575 3044 1501 2830 5694 +4576 1574 5130 2226 5131 +4577 3163 5419 64 65 +4578 1156 4253 2352 5520 +4579 5172 1450 5695 914 +4580 4332 1712 5579 2524 +4581 5607 559 5761 3800 +4582 4462 3467 6063 4111 +4583 1582 4522 656 4365 +4584 3394 5425 3818 410 +4585 1434 4232 663 4720 +4586 3830 6079 2347 859 +4587 782 5290 1541 3596 +4588 4256 4588 4288 4567 +4589 678 2956 4033 6229 +4590 3483 90 91 5449 +4591 751 2113 4038 5473 +4592 5670 4069 4116 1635 +4593 4672 4135 5687 1265 +4594 609 5326 1698 4763 +4595 2197 826 5014 2915 +4596 1084 4237 4963 2386 +4597 4170 1683 5097 3735 +4598 2616 6005 4888 3123 +4599 2644 4794 4015 260 +4600 4378 1679 5453 3851 +4601 4603 5470 5811 696 +4602 902 6031 2572 4290 +4603 3187 5968 685 4471 +4604 3820 4896 3887 1507 +4605 3169 5516 1405 4196 +4606 2533 1615 4365 4664 +4607 812 1707 6138 3762 +4608 2252 3446 6100 356 +4609 4391 846 5673 4046 +4610 2681 4488 4890 1026 +4611 4362 1620 4526 4397 +4612 4462 1553 5318 4027 +4613 1772 4846 736 5187 +4614 4105 1813 3983 5644 +4615 4720 663 5644 3983 +4616 924 5052 1457 4242 +4617 4215 3428 6073 566 +4618 1885 3973 706 5656 +4619 5261 1015 5994 3435 +4620 4352 1655 4459 4493 +4621 1289 263 5768 3232 +4622 4535 4026 4804 1810 +4623 5012 2008 4878 4065 +4624 3221 1804 3916 3220 +4625 4784 674 5046 3806 +4626 4646 1275 3640 4304 +4627 1844 4952 1718 4717 +4628 5713 3910 5460 1375 +4629 5820 439 5355 3607 +4630 5860 1721 4805 3594 +4631 2252 1078 5934 3446 +4632 2227 686 4388 4617 +4633 3857 1481 5538 3535 +4634 4546 436 6189 3490 +4635 4773 3490 6189 1779 +4636 3514 1671 5654 2573 +4637 1017 1962 4620 5313 +4638 3126 338 5300 1500 +4639 2688 5805 511 5665 +4640 1258 4404 5668 2863 +4641 257 5514 1227 3554 +4642 1272 5972 678 3450 +4643 2784 1545 3959 5785 +4644 4889 5371 5775 209 +4645 389 2574 5494 4221 +4646 749 2149 5745 3476 +4647 2332 1200 4954 4006 +4648 270 3692 1801 4079 +4649 3880 6100 3446 1693 +4650 2910 1038 4145 2909 +4651 2602 3304 4267 810 +4652 6022 5340 5196 2080 +4653 1164 5754 665 3585 +4654 2281 5460 3910 872 +4655 2252 6036 4000 737 +4656 5848 2435 5208 921 +4657 2536 1477 2393 4997 +4658 3055 1685 5697 3697 +4659 2643 3820 1507 5066 +4660 5107 939 4682 4702 +4661 1591 3684 5334 2614 +4662 2211 1036 4063 4865 +4663 4349 649 4985 4244 +4664 5468 5195 5568 4519 +4665 948 5382 2471 5705 +4666 1278 2491 6145 3802 +4667 1700 6032 666 4007 +4668 946 5377 1652 4048 +4669 626 5594 1644 3489 +4670 272 5140 5089 2089 +4671 3087 3081 5089 5140 +4672 4542 4588 4352 4493 +4673 1166 5377 2260 5000 +4674 4680 3495 5834 429 +4675 4276 713 5747 3997 +4676 5095 3970 5104 1747 +4677 2829 2039 4873 5852 +4678 841 3736 5399 2051 +4679 3872 2294 6074 1196 +4680 2880 4215 566 5509 +4681 1649 792 6197 3534 +4682 4578 1027 5513 2404 +4683 2302 5688 1997 3527 +4684 5174 2450 6076 5223 +4685 900 2175 5128 5932 +4686 5034 285 5956 2528 +4687 4802 2419 5461 1707 +4688 1401 5429 1893 4037 +4689 3998 4057 5892 681 +4690 5359 1543 3592 5506 +4691 4285 3472 5441 861 +4692 1503 5424 820 4009 +4693 2182 3520 5755 515 +4694 1844 4656 383 4952 +4695 3562 3561 5602 1037 +4696 5164 497 5830 357 +4697 3150 5273 3701 1879 +4698 4461 4406 444 1657 +4699 1369 3579 458 5542 +4700 2697 386 4108 5666 +4701 986 3087 5081 5822 +4702 4755 345 6184 3481 +4703 339 4586 2033 4389 +4704 1365 5101 2210 3864 +4705 4535 1602 4545 5503 +4706 40 5709 3986 39 +4707 3332 4585 6045 506 +4708 1797 4581 286 4466 +4709 2255 4748 2083 3949 +4710 906 5816 1581 3719 +4711 6014 5334 3684 2004 +4712 4912 5332 4451 637 +4713 1660 4540 1675 4547 +4714 1935 5930 789 5254 +4715 4576 5423 3648 1476 +4716 2885 2277 5447 5757 +4717 4639 3522 5867 308 +4718 1097 3985 1970 3098 +4719 2768 3541 5763 502 +4720 2054 6101 473 5264 +4721 4590 2066 6146 4346 +4722 5851 1588 5353 3702 +4723 5468 4519 6128 3568 +4724 2253 5141 373 4867 +4725 1751 5410 484 5036 +4726 964 2272 5133 4130 +4727 1994 5392 398 5113 +4728 1762 3904 963 5622 +4729 2317 1689 5891 3549 +4730 3537 6121 5278 1889 +4731 1944 5469 894 3464 +4732 1927 4484 861 5441 +4733 5295 4162 5392 1994 +4734 2576 493 5030 3114 +4735 4025 390 5856 4056 +4736 3735 717 4915 4170 +4737 2766 4632 1196 5773 +4738 5430 1678 5686 3575 +4739 379 5557 1465 3990 +4740 212 3592 1543 5605 +4741 2570 787 4817 4172 +4742 3307 5933 9 10 +4743 4599 3899 5815 2741 +4744 2421 4577 1333 3502 +4745 2284 5430 451 3677 +4746 4625 3563 1825 5849 +4747 1945 5190 1772 5187 +4748 4238 3523 6231 395 +4749 4903 6082 68 69 +4750 5039 5360 4256 4567 +4751 5012 4065 5878 1560 +4752 2138 5576 2500 4338 +4753 4851 484 5544 3840 +4754 2321 1223 5285 3790 +4755 3508 4664 4365 656 +4756 3912 6143 19 20 +4757 2654 393 6069 1630 +4758 4647 1976 4816 5236 +4759 3510 41 42 2160 +4760 6192 453 3867 5707 +4761 1742 5349 768 3739 +4762 3336 1895 4283 4916 +4763 3117 4777 4228 560 +4764 1666 5045 733 5161 +4765 4069 5106 3629 830 +4766 4018 3797 5891 258 +4767 4357 1387 5415 1987 +4768 3483 5690 3604 1073 +4769 5173 2250 4875 951 +4770 2647 2648 3891 707 +4771 2381 5319 2828 1722 +4772 631 5871 2237 4129 +4773 2472 2017 3596 5749 +4774 1635 5621 622 5670 +4775 2674 5136 711 4080 +4776 4251 4681 4376 652 +4777 1169 4053 1732 4435 +4778 4633 4066 6069 1579 +4779 5975 4120 6061 794 +4780 5794 3790 5285 1625 +4781 2397 1500 5300 1499 +4782 5423 1111 5588 3648 +4783 4119 3581 5843 1822 +4784 481 4844 4158 1826 +4785 5150 1070 3996 5581 +4786 443 2579 5581 3996 +4787 2117 840 5637 2118 +4788 4939 5360 5039 2176 +4789 1285 3751 5540 2392 +4790 939 4654 4324 1919 +4791 2234 5132 4092 1764 +4792 1166 3841 1652 5377 +4793 4459 684 5216 4584 +4794 5032 3562 6190 585 +4795 3655 5022 3824 1858 +4796 450 5090 1963 3924 +4797 1045 3835 1699 5168 +4798 4933 1873 5052 3946 +4799 2361 1574 5865 4113 +4800 1211 3723 1720 5341 +4801 759 3766 6004 1923 +4802 2461 5037 5747 713 +4803 1828 4624 1667 5010 +4804 1578 4626 1827 5028 +4805 2776 2777 5569 371 +4806 2132 3855 5301 295 +4807 2141 4218 625 5256 +4808 783 2264 5358 3955 +4809 219 4965 2183 4071 +4810 5695 3768 5958 2123 +4811 6033 1918 6217 3671 +4812 2075 2074 4864 6142 +4813 670 2052 6209 3627 +4814 6168 776 5736 4083 +4815 1676 4863 742 6013 +4816 5275 3856 5960 1686 +4817 5228 3602 6225 425 +4818 5135 1792 6225 3602 +4819 476 2490 5443 4990 +4820 5438 863 4740 2664 +4821 3581 4119 5298 1245 +4822 6120 2404 5513 3021 +4823 5026 611 5574 3897 +4824 4520 3360 6212 743 +4825 2461 1798 4755 5037 +4826 3770 1242 5101 4060 +4827 5566 1540 4603 6041 +4828 4817 787 5726 2727 +4829 4835 352 4395 1634 +4830 2819 3809 5531 929 +4831 3194 5593 3689 2096 +4832 5562 4346 6146 495 +4833 1127 2678 6121 3537 +4834 5758 5551 3716 331 +4835 5415 1387 6178 3631 +4836 1819 702 5926 2511 +4837 6166 1996 5346 4621 +4838 6043 3633 5692 1132 +4839 1843 4771 828 5224 +4840 1597 4849 531 4209 +4841 1051 3608 6038 2087 +4842 5036 1402 5844 3931 +4843 1147 4214 1957 5325 +4844 764 4284 4976 2067 +4845 5150 3613 6012 1070 +4846 2144 3663 5751 655 +4847 1534 4850 586 4219 +4848 2866 1490 6027 1350 +4849 5347 833 5985 3618 +4850 4580 2657 5513 1027 +4851 2516 3695 5644 663 +4852 2844 4176 5832 1385 +4853 3336 5765 1799 6213 +4854 1406 1681 6183 2344 +4855 4476 1879 3701 5639 +4856 5186 4152 4660 1817 +4857 2798 1951 5068 5518 +4858 416 5079 1631 5572 +4859 4954 1642 5098 4006 +4860 2332 4006 5098 486 +4861 1582 4395 352 4759 +4862 4907 3383 4906 363 +4863 2358 4551 1423 4798 +4864 4463 4893 4231 662 +4865 4048 1652 4977 4815 +4866 4123 1055 4839 4299 +4867 340 2552 4012 6029 +4868 2971 4911 4170 1605 +4869 6215 1710 6201 3674 +4870 459 5250 2241 5620 +4871 4872 1711 4862 4302 +4872 1881 3408 5856 390 +4873 1709 4525 683 5189 +4874 5869 4733 6101 2054 +4875 5596 3805 4908 2254 +4876 4374 3859 5326 609 +4877 5841 2037 4789 4318 +4878 1840 4946 804 4528 +4879 2930 1926 4796 2840 +4880 4724 389 5317 3822 +4881 1448 3128 5508 5546 +4882 6200 3760 5561 372 +4883 4431 703 5278 5279 +4884 6178 1778 6236 3631 +4885 2588 4124 4958 1134 +4886 6002 2500 5555 977 +4887 5536 3631 6236 292 +4888 3138 5700 4494 943 +4889 1982 5240 335 5203 +4890 4851 2094 5881 3553 +4891 2222 5911 1877 5683 +4892 1756 4161 207 5405 +4893 4490 2798 5518 1649 +4894 3217 3646 6111 596 +4895 899 5059 456 3556 +4896 735 4297 5442 2016 +4897 470 5436 1866 4913 +4898 1868 928 5357 5316 +4899 271 5316 5357 2240 +4900 964 4130 5072 2457 +4901 752 5411 1845 5001 +4902 1992 918 5851 3702 +4903 291 2000 5088 4504 +4904 866 4735 2239 6188 +4905 1260 2639 5522 4129 +4906 775 5798 1318 4171 +4907 5744 4787 4989 716 +4908 2614 5064 5229 1591 +4909 3915 1339 5362 4347 +4910 4249 3764 5638 1105 +4911 1475 5488 3030 5731 +4912 805 4709 1913 5255 +4913 1416 4786 1613 4286 +4914 1303 2292 6190 4259 +4915 1191 3099 1727 3100 +4916 2481 3875 5758 331 +4917 3153 5082 4569 1802 +4918 2253 4569 5082 718 +4919 1083 4341 2120 6198 +4920 5199 4371 4966 1708 +4921 4543 821 4966 4371 +4922 5453 274 5964 3851 +4923 4417 1925 6075 4370 +4924 3513 5060 5187 736 +4925 3032 5642 2098 4420 +4926 3144 4211 5389 1285 +4927 1704 4953 652 4376 +4928 1699 5384 2165 5168 +4929 5302 1784 5600 2923 +4930 25 26 5742 3831 +4931 867 3831 5742 2081 +4932 4889 209 5440 2943 +4933 651 3921 1224 5296 +4934 380 5323 1585 5025 +4935 5149 1970 5845 3725 +4936 5613 4426 6084 1461 +4937 2970 2947 5959 1039 +4938 945 2497 5564 4074 +4939 44 45 5269 3941 +4940 1475 5731 669 3709 +4941 1113 2985 4485 6191 +4942 1509 4968 2019 4289 +4943 4097 3674 6201 635 +4944 6074 721 4692 2681 +4945 1893 5429 1172 4848 +4946 4154 1899 4431 5279 +4947 2054 5553 1883 5869 +4948 3123 4495 5595 1523 +4949 1715 5203 335 4203 +4950 2745 280 5669 5218 +4951 4343 654 4385 4841 +4952 1570 4704 1903 4703 +4953 1083 3122 5800 4341 +4954 1914 5668 738 5122 +4955 1379 3738 773 6050 +4956 3905 3685 6117 1460 +4957 2237 1046 5412 3583 +4958 202 4961 2373 3569 +4959 4280 2373 4961 689 +4960 1998 2797 4051 5682 +4961 632 4236 2768 6027 +4962 2852 298 4974 2853 +4963 4348 5897 1565 6160 +4964 3875 4895 5809 1748 +4965 4959 4131 5669 1690 +4966 3080 4004 6147 1393 +4967 1837 3975 1070 6012 +4968 459 5620 2495 5378 +4969 5845 1999 5978 3725 +4970 4575 1594 6000 3514 +4971 4478 5124 4563 254 +4972 3670 2242 1103 3769 +4973 6187 868 5999 3676 +4974 4415 5435 4666 1464 +4975 2861 4203 1903 5041 +4976 5717 4917 3815 2200 +4977 4807 467 3711 6065 +4978 4185 2271 5372 5486 +4979 2114 5486 5372 785 +4980 4148 4002 5944 829 +4981 2787 1344 6121 2678 +4982 3572 4637 5683 1877 +4983 4406 4461 4353 962 +4984 5133 710 5072 4130 +4985 259 4523 2028 4783 +4986 4894 243 5530 4558 +4987 2093 4938 1577 4937 +4988 3950 5074 5610 2186 +4989 3503 5610 5074 1777 +4990 226 3826 1753 5157 +4991 4353 4461 4460 1655 +4992 424 5376 2531 6089 +4993 4046 1745 4705 4391 +4994 5345 2070 5197 6203 +4995 4359 645 6165 3976 +4996 232 5390 1918 6033 +4997 570 4207 5619 2554 +4998 2321 3790 5794 277 +4999 3146 4337 5053 1458 +5000 1410 5076 2188 4180 +5001 3372 2937 5594 626 +5002 4366 4658 5366 1074 +5003 3780 5366 4658 1920 +5004 4816 4737 4300 5236 +5005 2438 701 5236 4300 +5006 2766 1026 2765 4688 +5007 4146 1849 4354 997 +5008 5910 355 5010 1620 +5009 1338 5156 6139 2547 +5010 3958 4265 5239 1531 +5011 2505 1590 4244 4985 +5012 5797 4449 4448 1640 +5013 4103 1445 4438 4908 +5014 5380 5954 5533 2477 +5015 2480 6110 833 5347 +5016 4378 4876 4469 1679 +5017 841 1865 6234 3736 +5018 4234 2675 6030 1045 +5019 1810 4803 1602 4535 +5020 605 4250 1605 4993 +5021 4064 1133 6149 5587 +5022 4590 4346 5562 1314 +5023 280 3771 2325 6108 +5024 4706 1428 4011 4484 +5025 1756 5801 4585 3332 +5026 3779 1646 5044 4291 +5027 795 5215 2263 5969 +5028 460 3947 5971 2663 +5029 838 1881 6085 3355 +5030 1495 4508 671 4456 +5031 1488 5335 2091 5963 +5032 3250 440 5384 4277 +5033 3236 3761 4768 646 +5034 2329 2371 5152 623 +5035 4359 3976 5735 1755 +5036 2477 4009 4701 1518 +5037 5095 377 5385 3970 +5038 3477 1496 5432 4317 +5039 716 5291 1989 4034 +5040 5517 2465 5292 592 +5041 4252 4251 5097 1683 +5042 4531 5097 4251 652 +5043 5577 5998 5795 4335 +5044 3368 4335 5795 888 +5045 2285 5546 5508 228 +5046 3120 633 6099 4101 +5047 3130 1648 4465 5490 +5048 218 2135 4467 4468 +5049 5576 3491 5555 2500 +5050 1048 2451 5798 3842 +5051 6130 3897 5574 1930 +5052 3218 5394 4072 1622 +5053 283 4177 5311 2047 +5054 62 63 4027 5318 +5055 5550 3808 5952 808 +5056 486 5401 1735 4743 +5057 2091 5335 3868 910 +5058 2537 1600 5124 4478 +5059 1134 5355 2299 4058 +5060 3817 1682 6086 4262 +5061 2393 1477 4670 4669 +5062 2377 5784 1768 5641 +5063 5988 1732 4053 5986 +5064 1774 3921 651 6155 +5065 6116 2071 4946 5706 +5066 249 5915 2008 5012 +5067 4214 4117 5738 1957 +5068 931 2193 5991 3934 +5069 3225 4737 4816 249 +5070 1097 5114 2042 4201 +5071 3696 4472 987 3113 +5072 4574 4631 5219 726 +5073 1685 5063 1940 5017 +5074 4286 1613 5482 4741 +5075 4148 1901 5657 4002 +5076 2562 1738 6165 3883 +5077 4778 5152 1532 2465 +5078 4581 4500 5965 1719 +5079 1008 4821 1640 4448 +5080 1865 3795 1841 6163 +5081 5886 4641 4614 1838 +5082 894 5381 1856 3464 +5083 3783 1418 6179 3799 +5084 1503 5533 711 4378 +5085 4757 1944 5554 4399 +5086 2324 816 5559 2577 +5087 2217 824 1739 4210 +5088 5036 3931 4727 1751 +5089 610 3175 6196 1971 +5090 2793 5755 1489 4615 +5091 2803 2023 5854 5716 +5092 2190 4447 1628 5099 +5093 1227 4110 2480 5347 +5094 5361 1633 5504 3962 +5095 3007 4073 5353 1588 +5096 912 4470 6152 3920 +5097 379 4654 2167 5558 +5098 2968 631 4129 5522 +5099 5869 3898 5680 4733 +5100 2028 4934 837 5421 +5101 755 2064 4741 5482 +5102 3394 410 6132 3862 +5103 2685 3991 5468 1349 +5104 249 5012 1560 4433 +5105 2061 5806 1544 4517 +5106 4391 4705 5205 1508 +5107 303 5167 1769 4599 +5108 3747 2765 1026 4890 +5109 3893 4127 5260 1568 +5110 3340 447 5641 3964 +5111 1796 5613 1461 4240 +5112 3537 265 4865 4063 +5113 1656 4939 962 4353 +5114 5719 2338 4833 1951 +5115 1084 3895 621 4883 +5116 1575 4453 672 4935 +5117 5563 1812 6015 5680 +5118 3816 1608 4101 6099 +5119 2590 1387 4357 869 +5120 4960 4574 4992 1747 +5121 2606 1567 4140 5635 +5122 5545 3900 5925 774 +5123 1113 6191 2057 5049 +5124 4168 639 4004 4829 +5125 4776 5085 4316 1684 +5126 2062 4082 5999 868 +5127 1055 3972 1674 4839 +5128 5196 243 4894 817 +5129 576 4403 2282 4886 +5130 4371 5199 723 6175 +5131 3340 3964 6174 1077 +5132 2065 5788 1629 3994 +5133 710 4469 1654 5143 +5134 627 4114 2820 6154 +5135 2067 4532 346 6068 +5136 2452 1050 5373 4174 +5137 2508 5748 1601 3154 +5138 3534 6239 5381 1649 +5139 1424 5294 1780 5304 +5140 4594 1637 5375 4100 +5141 4653 819 5395 4652 +5142 3872 4173 5249 2005 +5143 1950 4102 338 4964 +5144 5017 3950 5697 1685 +5145 1424 5304 676 4153 +5146 5882 738 5668 4404 +5147 2436 4287 2814 5970 +5148 1947 4400 412 5946 +5149 511 5214 1966 5601 +5150 5240 1982 4544 4956 +5151 1877 403 5155 3572 +5152 4258 6068 346 3121 +5153 2072 3334 5908 630 +5154 5175 5737 5270 471 +5155 2717 5437 4503 1478 +5156 871 4969 4970 2694 +5157 319 4455 6038 3608 +5158 1239 6081 2003 3884 +5159 2487 5570 4728 878 +5160 5735 3976 5660 1137 +5161 1781 5811 1825 3932 +5162 1712 4332 2551 5171 +5163 1926 2118 5637 756 +5164 4671 1980 5503 4545 +5165 3176 1808 5783 771 +5166 2533 983 5465 4566 +5167 1981 4531 652 4953 +5168 5113 5818 6205 1994 +5169 487 4901 2027 5160 +5170 952 5900 1758 4758 +5171 4266 6224 5612 297 +5172 4565 1632 5215 4273 +5173 4730 398 5392 4132 +5174 1442 4852 6223 2229 +5175 5785 3412 6223 4852 +5176 3990 1465 6019 3918 +5177 807 2568 4358 4296 +5178 3075 4408 1800 5498 +5179 2561 3412 5785 3959 +5180 600 2192 5604 4527 +5181 3907 3876 6154 1331 +5182 1000 4972 5934 2279 +5183 724 5733 2393 4669 +5184 5641 1768 6174 3964 +5185 4794 1752 5640 4015 +5186 4281 4738 4739 366 +5187 3510 1835 3986 5709 +5188 4835 1634 5216 2363 +5189 5007 2057 6191 4485 +5190 4412 2654 1630 6142 +5191 4526 1620 5010 1667 +5192 5313 4620 5208 2502 +5193 4587 1791 5208 4620 +5194 5517 592 5191 2427 +5195 2345 3883 6165 645 +5196 4961 4951 6097 689 +5197 2519 4801 5225 221 +5198 5189 683 5990 4039 +5199 5463 4039 5990 1790 +5200 6041 1742 4164 5566 +5201 2070 402 5566 4164 +5202 3105 4680 5942 1632 +5203 2047 5192 1786 4691 +5204 4631 4574 4960 1746 +5205 3490 1479 4984 4546 +5206 2193 3766 759 4959 +5207 5869 1883 6127 3898 +5208 806 5675 2283 5406 +5209 4970 5528 3829 526 +5210 5432 2056 3250 5230 +5211 4088 3997 5747 1549 +5212 4663 1663 5471 415 +5213 3293 4693 5894 2290 +5214 2423 5516 566 6073 +5215 2082 4568 2018 4980 +5216 6205 6204 5288 2031 +5217 1091 5248 1807 4629 +5218 3163 6056 1924 5419 +5219 5274 4330 5232 1289 +5220 1705 3938 668 5265 +5221 629 5819 2520 5809 +5222 4770 5653 4929 699 +5223 657 4222 1543 5359 +5224 1773 5825 1151 4137 +5225 1747 5104 725 4960 +5226 249 4816 1976 5915 +5227 5116 1824 4899 4772 +5228 4674 796 5178 4643 +5229 5842 4643 5178 1776 +5230 746 4234 2165 5880 +5231 1747 4992 1894 5095 +5232 1921 4480 744 5774 +5233 4717 774 5767 1844 +5234 3246 418 6127 5327 +5235 4943 2012 5687 4135 +5236 4439 1630 6069 4066 +5237 2640 5682 4051 435 +5238 4641 463 5685 4614 +5239 4390 2062 3846 6057 +5240 4052 1731 5625 4169 +5241 4856 1884 5856 3408 +5242 4574 726 4845 4992 +5243 5521 1894 4992 4845 +5244 3100 1727 4412 3101 +5245 5650 926 5965 4500 +5246 865 2150 5094 5361 +5247 641 4668 2046 4955 +5248 5254 4091 5722 1717 +5249 2245 5088 2000 5087 +5250 764 2067 6068 4258 +5251 1921 5774 2324 5138 +5252 5230 271 4317 5432 +5253 4939 1656 4256 5360 +5254 3575 1868 4928 4322 +5255 2196 3939 1356 6134 +5256 4700 4291 5044 901 +5257 6138 289 5459 3762 +5258 638 6228 2908 6093 +5259 4168 4829 5344 1673 +5260 4845 726 5219 4899 +5261 1679 4469 710 5133 +5262 5814 3747 4890 4488 +5263 2417 4383 1016 5234 +5264 3977 5077 5078 1623 +5265 368 5078 5077 2179 +5266 2144 5228 425 4425 +5267 61 5447 4208 60 +5268 3263 5204 4836 1561 +5269 1705 5265 2058 5139 +5270 2516 3885 466 5426 +5271 3870 3342 4296 1787 +5272 4653 4652 5087 2000 +5273 1877 5911 848 4491 +5274 1662 4323 1749 5307 +5275 1921 5138 438 5054 +5276 6098 5201 4799 697 +5277 1689 2317 4799 5201 +5278 5736 1336 6080 4083 +5279 3157 1816 4083 6080 +5280 969 3745 1415 4936 +5281 2288 1780 5294 5608 +5282 4907 6018 6002 977 +5283 2420 6144 743 5578 +5284 4451 5332 4856 1728 +5285 4254 653 5827 4041 +5286 4271 1806 5666 4108 +5287 2477 1518 4608 5380 +5288 1833 5759 779 6215 +5289 4824 401 5722 4091 +5290 2144 655 5402 4268 +5291 902 4005 1494 6031 +5292 3776 4441 4947 1644 +5293 5767 774 5925 1725 +5294 4000 1540 5566 5476 +5295 2453 5476 5566 402 +5296 3026 944 5752 2013 +5297 5595 4495 6152 643 +5298 6001 741 4924 4591 +5299 959 5132 2234 5253 +5300 2581 453 6192 3452 +5301 1585 5323 2007 4791 +5302 5601 6024 5115 1965 +5303 1965 5115 1882 5356 +5304 5598 5895 4189 1327 +5305 4326 4189 5895 1803 +5306 1413 5828 2095 4683 +5307 592 5935 3245 5191 +5308 6061 4120 5801 1756 +5309 3915 3748 5060 1339 +5310 3528 5973 3395 610 +5311 512 2602 1974 5884 +5312 4645 1540 4000 6036 +5313 903 5083 1593 3624 +5314 4892 818 5489 5227 +5315 2371 989 3769 5492 +5316 3690 5684 5634 378 +5317 6192 5707 1862 2905 +5318 4607 1694 4759 6162 +5319 4135 4672 5936 730 +5320 3155 1437 4726 5145 +5321 2280 5645 1058 5617 +5322 1776 5328 359 5842 +5323 3113 781 2471 5382 +5324 2569 4729 5571 583 +5325 689 6097 5030 2215 +5326 1558 6144 2420 5738 +5327 804 4946 2071 5439 +5328 3514 426 5706 4575 +5329 3039 4560 5548 1168 +5330 5827 1959 4563 5124 +5331 1882 5058 1973 5233 +5332 4505 354 4230 5510 +5333 4281 1617 5892 4057 +5334 605 2280 5617 4250 +5335 5536 292 6135 4699 +5336 2553 5878 4065 893 +5337 4836 5204 6011 1938 +5338 3920 2002 4888 4734 +5339 5989 5901 4435 1732 +5340 4413 725 5104 4597 +5341 5744 5787 4106 2015 +5342 262 4055 2331 6064 +5343 2140 4427 748 5268 +5344 6067 225 6239 3534 +5345 5159 1770 4138 2463 +5346 5151 437 2463 4138 +5347 3668 4248 5127 1900 +5348 942 2633 5388 4408 +5349 257 4982 2115 5514 +5350 3750 6238 4361 542 +5351 5389 4211 6169 1869 +5352 1834 5699 748 4427 +5353 4942 5112 464 3413 +5354 4050 4951 4961 202 +5355 4455 4815 4977 1977 +5356 2261 3768 5695 1450 +5357 3230 3814 4874 1195 +5358 1975 3781 852 5271 +5359 5913 5055 4932 2251 +5360 5917 4111 5828 1413 +5361 1833 6045 2185 5759 +5362 2725 1831 5810 5976 +5363 675 5049 2057 4745 +5364 6049 1421 5628 3961 +5365 3068 4489 5243 325 +5366 1835 5778 2240 5357 +5367 4054 4707 6058 247 +5368 736 5904 1847 3513 +5369 3804 1785 4347 5362 +5370 1861 5842 359 4750 +5371 370 5343 1315 5212 +5372 5608 5294 6115 2181 +5373 2940 5241 4534 492 +5374 1038 2970 1039 4159 +5375 4266 297 4113 5865 +5376 1547 4316 907 6129 +5377 5206 4993 4915 1907 +5378 4170 4915 4993 1605 +5379 1100 721 6074 2294 +5380 1839 5421 837 5370 +5381 3540 676 4932 5055 +5382 1882 5115 802 5058 +5383 512 5884 2126 2557 +5384 4156 4372 4573 1432 +5385 220 6102 2061 4517 +5386 4421 5739 4717 1718 +5387 6086 1143 5920 4262 +5388 1654 4656 1844 5143 +5389 2367 875 4991 4975 +5390 3117 1818 4975 4991 +5391 4959 759 5674 4131 +5392 4118 4399 5554 1550 +5393 3291 4591 4924 1359 +5394 938 4350 6202 2301 +5395 4052 214 5772 5451 +5396 4245 4584 5216 1634 +5397 3368 1800 4408 5388 +5398 2789 266 2616 5177 +5399 3473 1089 6035 4623 +5400 1653 2304 6229 4033 +5401 4469 4876 5136 1654 +5402 279 2364 5952 4428 +5403 614 4149 1385 5832 +5404 4066 4633 6233 229 +5405 1834 5331 2191 5699 +5406 5422 2106 5728 1471 +5407 1824 5116 1710 4722 +5408 1262 4114 627 5940 +5409 559 4592 1905 5761 +5410 2484 4875 6177 499 +5411 1481 4638 1823 5538 +5412 535 1988 6212 3360 +5413 1328 4348 6160 1854 +5414 2210 4832 269 4263 +5415 630 3073 4696 5008 +5416 4917 478 5986 4053 +5417 2283 5217 5679 405 +5418 2668 5679 5217 2129 +5419 1560 5878 2553 4826 +5420 6064 1673 5344 4788 +5421 688 4773 1779 5213 +5422 4100 799 6023 4594 +5423 294 5118 1697 6141 +5424 4007 1688 4963 4922 +5425 4631 1942 5445 5219 +5426 352 4835 2307 5710 +5427 5828 4111 6063 1702 +5428 688 5213 2128 4754 +5429 604 5991 2193 4622 +5430 1422 4326 1803 5857 +5431 487 3624 1593 4901 +5432 3817 4262 5920 601 +5433 5215 795 5676 4273 +5434 264 5442 1757 5145 +5435 2140 5268 1906 5727 +5436 2408 5663 1803 5895 +5437 2311 5147 5157 1753 +5438 681 5892 2655 4767 +5439 2543 4719 5282 1628 +5440 4176 1891 5864 5832 +5441 5666 1806 5026 5073 +5442 3897 1842 5073 5026 +5443 320 4145 1849 4146 +5444 2285 5744 2015 5546 +5445 4862 1444 5658 4302 +5446 2439 5879 2140 4193 +5447 1979 847 5303 4858 +5448 5485 4538 5823 1686 +5449 1903 4704 719 5041 +5450 2964 4811 5367 1846 +5451 5353 5367 4811 362 +5452 5615 691 5543 4679 +5453 1331 4333 2223 5626 +5454 4004 1231 5344 4829 +5455 2648 4087 5720 940 +5456 4772 4899 5219 1896 +5457 753 5568 1997 5023 +5458 1598 2987 5586 4778 +5459 1530 2464 5867 4382 +5460 644 4375 2607 5585 +5461 3345 978 5572 3871 +5462 3669 582 6211 1253 +5463 4237 1084 4883 5042 +5464 730 5936 3005 4486 +5465 1822 6197 792 4119 +5466 5588 1843 5224 5071 +5467 3030 3452 6192 1611 +5468 4330 2042 5624 5232 +5469 355 5910 2243 4793 +5470 2220 4749 1578 5272 +5471 4594 6023 4926 1589 +5472 5106 4069 5670 1716 +5473 764 5901 2152 4284 +5474 1999 4540 1660 4989 +5475 4603 1540 4645 5470 +5476 1231 2156 5282 5110 +5477 762 3477 4317 5778 +5478 2118 1926 2930 4534 +5479 5292 5599 1382 2414 +5480 2754 6043 1132 4642 +5481 1867 5316 271 5230 +5482 2460 4436 5947 1206 +5483 5108 666 6032 3265 +5484 5983 853 6169 4211 +5485 2626 398 4730 6123 +5486 3671 1327 4189 6033 +5487 4392 4639 5590 1749 +5488 1979 4226 1366 6233 +5489 5295 761 6115 4162 +5490 5384 1699 5950 4277 +5491 3572 5155 6081 1239 +5492 3527 1997 5568 5195 +5493 432 4366 5937 1869 +5494 3631 5536 1987 5415 +5495 5279 5278 6121 1344 +5496 1921 5054 1760 5038 +5497 828 4771 6132 2287 +5498 5471 1663 5783 1808 +5499 714 4544 1946 6083 +5500 2861 6199 4973 2084 +5501 4989 4787 5978 1999 +5502 4502 5978 4787 1506 +5503 419 2341 4669 4670 +5504 367 4309 929 5531 +5505 628 5576 2138 5753 +5506 2908 897 5630 5404 +5507 220 5433 1853 4223 +5508 1858 4220 1859 5560 +5509 3589 6173 4313 381 +5510 1780 4932 676 5304 +5511 5581 1953 6186 5150 +5512 4022 811 4822 5955 +5513 4603 696 4612 6041 +5514 1969 5222 1846 5367 +5515 5282 636 5158 5110 +5516 4295 729 4409 5671 +5517 2993 6182 1796 6181 +5518 4074 304 5847 4325 +5519 3676 636 5282 4719 +5520 5490 4465 6175 723 +5521 5551 1929 6175 4465 +5522 2037 5310 1020 4789 +5523 2649 5032 585 5103 +5524 4026 4535 5503 275 +5525 2693 4942 3413 694 +5526 2558 5937 4366 1074 +5527 1986 6007 384 4869 +5528 3314 5328 5346 1996 +5529 2807 5346 5328 1776 +5530 3114 5030 6097 1305 +5531 4864 3101 4412 6142 +5532 716 4989 1660 5291 +5533 576 4919 1555 4356 +5534 2313 4677 5186 1817 +5535 4356 1555 5648 4608 +5536 2247 3594 4805 695 +5537 1977 1308 6038 4455 +5538 803 5959 2947 6171 +5539 2510 5740 2061 6102 +5540 1824 4722 779 5521 +5541 3684 4519 5568 753 +5542 2681 1026 2766 5773 +5543 2052 670 5683 4637 +5544 5175 1809 4422 5737 +5545 3325 3324 5426 466 +5546 2609 5799 448 4394 +5547 2589 4228 1778 6178 +5548 4495 2002 3920 6152 +5549 1982 5203 1715 4944 +5550 6026 2664 4740 1672 +5551 1103 5945 3710 6157 +5552 4675 1750 5764 4885 +5553 855 5616 4974 2126 +5554 2043 6151 1910 5693 +5555 1868 5316 1867 4928 +5556 714 4661 2314 6071 +5557 392 4760 1675 4540 +5558 481 1826 5531 3809 +5559 355 5348 1828 5010 +5560 1625 6017 2473 5794 +5561 2032 4870 1682 5944 +5562 4578 4298 4723 5858 +5563 3336 4916 414 5765 +5564 4052 5451 4709 1731 +5565 5247 5548 4560 462 +5566 4066 229 4692 4439 +5567 691 5615 1660 4547 +5568 4718 4923 6058 1653 +5569 1263 4559 1544 5806 +5570 1420 4278 1809 6170 +5571 4097 506 6045 1833 +5572 5638 5456 5457 1763 +5573 4554 1414 4906 3383 +5574 898 5163 1917 4260 +5575 4112 1599 5936 4672 +5576 4627 490 5976 4379 +5577 4306 240 4782 3834 +5578 4678 513 6133 4339 +5579 397 5176 5170 2155 +5580 3232 5001 5274 1289 +5581 3559 5274 5001 1845 +5582 4005 902 5580 5166 +5583 5165 4435 5901 764 +5584 203 5428 1872 4440 +5585 3226 419 5662 5414 +5586 1376 5810 2555 5194 +5587 1911 5829 757 4533 +5588 5485 1686 5960 5144 +5589 6063 5170 5176 1702 +5590 347 5899 2217 4210 +5591 4714 891 4858 5303 +5592 4131 5674 5351 1744 +5593 685 6040 1855 4471 +5594 529 5069 2344 6183 +5595 5071 5224 5386 1898 +5596 3157 4339 6133 1816 +5597 3349 5590 4639 308 +5598 2263 5942 4680 429 +5599 1392 5165 764 4258 +5600 1502 4619 254 4563 +5601 4581 1797 5650 4500 +5602 5823 4538 1851 849 +5603 4237 5042 5043 1765 +5604 378 5634 1942 4910 +5605 2636 788 5947 5474 +5606 3288 5244 5495 775 +5607 2071 5255 1913 5439 +5608 985 2169 5225 6119 +5609 3875 1748 4543 5758 +5610 1839 5329 2028 5421 +5611 4480 2289 5552 744 +5612 6015 1812 5768 5062 +5613 2303 5293 1897 509 +5614 5144 358 6095 5485 +5615 2398 4924 741 4925 +5616 2666 5285 1223 5137 +5617 6188 4640 5643 866 +5618 946 6126 2260 5377 +5619 5341 3773 5899 347 +5620 5769 4728 5570 1687 +5621 3733 1954 4949 5283 +5622 4666 6185 4891 1559 +5623 1470 6011 693 4430 +5624 4543 4371 6175 1929 +5625 2455 4518 6122 844 +5626 664 4257 1874 4398 +5627 3480 1400 5185 3595 +5628 337 3024 6222 4636 +5629 5903 1787 4296 4358 +5630 292 2584 6125 6135 +5631 5947 788 5559 4902 +5632 3935 342 3405 5861 +5633 5236 701 6051 4647 +5634 4085 5760 2005 5249 +5635 3061 5053 791 5905 +5636 1290 5287 686 4429 +5637 5611 4891 6185 2256 +5638 1471 2270 3935 5861 +5639 6235 4902 5559 816 +5640 847 1979 6233 4633 +5641 5104 1429 6048 4597 +5642 4413 4597 6048 1888 +5643 3290 1911 4533 6195 +5644 4791 6195 4533 1585 +5645 6012 5321 6078 1837 +5646 3684 1591 6128 4519 +5647 4899 1824 5521 4845 +5648 869 4357 2580 5770 +5649 4120 1378 4585 5801 +5650 6162 2306 5789 4607 +5651 4518 1834 4427 6122 +5652 1754 4936 1415 5416 +5653 5849 356 6100 4625 +5654 2579 4529 6159 934 +5655 1363 2423 6073 4570 +5656 384 6007 2228 5181 +5657 1697 5676 2163 6141 +5658 731 2393 5733 3557 +5659 4575 5706 4946 1840 +5660 1618 5672 442 5336 +5661 465 5408 2024 5324 +5662 216 5198 1433 6139 +5663 3870 4832 1242 2326 +5664 5897 4348 5455 687 +5665 229 1956 2681 4692 +5666 4226 374 5770 2580 +5667 1716 4261 6035 1089 +5668 3063 5974 2628 4582 +5669 582 4860 2231 6211 +5670 5504 289 6138 3962 +5671 3130 4990 5443 1648 +5672 2787 2152 5901 5989 +5673 1432 5056 910 4156 +5674 985 4962 1905 4592 +5675 948 3830 5528 2991 +5676 1678 4695 37 5780 +5677 2318 5401 486 5098 +5678 4674 4643 5842 1861 +5679 4741 2064 5127 4248 +5680 1256 5080 6172 3045 +5681 1716 5670 622 4261 +5682 1825 4645 356 5849 +5683 1532 5152 2371 5153 +5684 1511 5530 1471 5728 +5685 2007 5323 1807 5248 +5686 2785 5835 4674 1861 +5687 4843 488 4473 5434 +5688 5380 4608 5648 421 +5689 4169 5625 6099 633 +5690 2957 415 5471 5997 +5691 324 5689 1603 4561 +5692 1923 6004 6053 2603 +5693 5158 5999 4082 1939 +5694 4753 1968 4872 6070 +5695 2504 700 5812 4205 +5696 4912 1884 4856 5332 +5697 5762 727 5791 5445 +5698 4717 5739 5545 774 +5699 4044 1766 5404 5403 +5700 5630 2148 5403 5404 +5701 3355 6085 4498 1041 +5702 1658 5212 1659 4650 +5703 1911 5557 1912 5829 +5704 4710 993 4070 6003 +5705 4302 557 6070 4872 +5706 4440 5015 5416 1415 +5707 2201 5314 950 5024 +5708 3030 1611 5894 4693 +5709 6003 4641 5886 1870 +5710 6000 913 5862 6028 +5711 5370 2323 5760 4085 +5712 646 4768 1529 3526 +5713 1804 896 4504 5088 +5714 2278 5730 9 5933 +5715 4748 671 4508 5636 +5716 4172 4817 5652 731 +5717 1660 5615 1989 5291 +5718 1741 5160 2027 5623 +5719 1966 5214 1967 5438 +5720 620 6075 1925 5193 +5721 1450 5172 1838 4614 +5722 2328 4338 2500 6002 +5723 3845 1535 6166 4621 +5724 5147 1910 6151 5157 +5725 1765 5043 223 4384 +5726 1688 6006 2386 4963 +5727 2936 4879 5573 6206 +5728 1973 803 6171 5505 +5729 1741 5623 285 5034 +5730 1894 5521 779 5759 +5731 638 4629 1807 6228 +5732 2681 1956 6107 4488 +5733 5349 1742 6041 4612 +5734 1703 5812 700 5231 +5735 2728 4710 770 5488 +5736 1673 6064 2331 6072 +5737 5722 4929 5653 1717 +5738 4461 1657 6207 4460 +5739 2107 4936 1754 5525 +5740 2127 5407 785 5609 +5741 4231 4893 5817 1636 +5742 3524 5858 4723 1815 +5743 2847 481 4706 5322 +5744 1898 5677 616 5071 +5745 2186 2273 5084 6055 +5746 5697 6055 5084 854 +5747 1899 2612 5582 5258 +5748 3178 569 5883 4032 +5749 5929 262 6064 4788 +5750 3801 1633 5361 5094 +5751 5763 4647 6051 1788 +5752 1863 643 6152 4470 +5753 5330 6180 5213 1779 +5754 4481 2128 5213 6180 +5755 710 5143 1844 5767 +5756 4463 2301 5817 4893 +5757 2576 2117 5241 2940 +5758 1898 5386 2041 5448 +5759 2077 5846 2013 5752 +5760 2356 460 6060 4979 +5761 1985 2794 4979 6060 +5762 557 5575 2483 6070 +5763 3125 276 5906 5065 +5764 4237 667 4922 4963 +5765 2432 6208 959 4572 +5766 464 5112 1801 3692 +5767 29 5741 5481 28 +5768 26 27 5481 5742 +5769 5741 2081 5742 5481 +5770 5599 5292 2465 1532 +5771 4616 2060 5715 5444 +5772 55 56 5444 5715 +5773 637 4451 1126 6118 +5774 3973 5725 5835 706 +5775 1799 4752 685 5968 +5776 5983 6209 4837 853 +5777 5472 5324 5452 1909 +5778 2035 5592 473 6101 +5779 5996 5928 4795 1794 +5780 2035 5105 1832 5592 +5781 2103 5469 1944 4757 +5782 410 5162 2287 6132 +5783 5201 2161 4855 258 +5784 1653 6058 4707 2304 +5785 1719 5965 2859 4957 +5786 2269 5966 1934 5779 +5787 5492 6157 5086 341 +5788 933 5889 1670 4828 +5789 3236 1211 5718 3761 +5790 2853 4974 5616 1539 +5791 271 2240 5778 4317 +5792 2585 1691 4970 4969 +5793 266 2789 1783 5179 +5794 2619 1300 4613 2146 +5795 2858 5831 5011 469 +5796 3649 5011 5831 1932 +5797 4195 4115 5812 1703 +5798 1343 2454 6116 5824 +5799 383 5467 1892 5128 +5800 808 5541 2029 5550 +5801 3763 624 5413 5412 +5802 5700 2261 5685 4494 +5803 4460 6207 5732 684 +5804 5992 2219 5276 1993 +5805 3220 869 5770 3221 +5806 4626 1578 4749 6092 +5807 3050 5923 4914 1709 +5808 5375 375 5288 5743 +5809 4907 363 5603 6018 +5810 2348 5656 706 4685 +5811 698 5821 2523 4930 +5812 5875 2035 6101 4733 +5813 1511 5728 2106 394 +5814 4708 1771 6123 4730 +5815 4348 1328 5454 5455 +5816 2735 4859 2022 5655 +5817 746 5258 5582 2110 +5818 1646 5166 1767 5044 +5819 1408 3583 5412 5413 +5820 1901 226 5157 6151 +5821 4645 1825 5811 5470 +5822 2886 5511 1629 4509 +5823 3460 2636 5474 267 +5824 1263 5806 2061 5075 +5825 4718 3837 6039 4923 +5826 1787 269 4832 3870 +5827 1642 4954 2267 5820 +5828 6173 1854 6160 4313 +5829 2187 2456 5005 6114 +5830 2218 2384 6114 5005 +5831 5123 5505 6171 1897 +5832 1143 6086 2416 4761 +5833 5283 1280 5907 3733 +5834 1810 6059 834 4803 +5835 894 4490 1649 5381 +5836 2570 5599 1532 5153 +5837 2803 4313 6160 1565 +5838 1559 2472 6231 5092 +5839 5791 1896 5219 5445 +5840 5115 6024 6025 802 +5841 6148 6020 5500 1902 +5842 1710 6215 779 4722 +5843 5698 5062 5768 263 +5844 4074 5564 5475 304 +5845 2497 1978 5475 5564 +5846 1789 4808 2732 6218 +5847 5710 6162 4759 352 +5848 5222 4945 6237 834 +5849 6150 1998 6237 4945 +5850 3272 508 5836 5512 +5851 3653 5512 5836 2087 +5852 5390 4781 6217 1918 +5853 3308 1505 6217 4781 +5854 5986 2159 5393 5988 +5855 4902 6235 5710 2307 +5856 1625 4897 2432 6017 +5857 2393 731 5652 4997 +5858 2044 5681 2010 5549 +5859 1511 394 4016 1512 +5860 3647 1713 5822 5081 +5861 1907 5714 1162 5206 +5862 4285 2216 6230 5648 +5863 1314 5562 2242 3670 +5864 5435 318 6185 4666 +5865 6052 940 5720 1677 +5866 974 5833 2296 6105 +5867 3268 5818 5113 1871 +5868 795 5924 2163 5676 +5869 277 4926 6023 2321 +5870 6058 4923 6039 247 +5871 2414 5935 592 5292 +5872 1643 4976 704 4909 +5873 4187 5184 5185 1400 +5874 6069 3733 5907 1579 +5875 5571 5652 4817 583 +5876 626 5351 5674 3372 +5877 1958 1701 5790 4861 +5878 3291 1676 6001 4591 +5879 2106 2835 5826 394 +5880 5572 1631 3569 3871 +5881 1706 5019 895 5971 +5882 905 5352 2104 5251 +5883 1906 5649 2127 5609 +5884 5043 5042 4883 1782 +5885 2270 243 5196 5340 +5886 2068 5868 842 5105 +5887 2540 5270 1736 5776 +5888 6162 5710 6235 2306 +5889 849 1851 5918 2468 +5890 2064 755 5422 3405 +5891 2077 5211 1001 5846 +5892 4544 714 6071 4956 +5893 2347 6079 5705 416 +5894 3084 4679 6134 5847 +5895 3404 1114 5993 5769 +5896 4728 5769 5993 2195 +5897 5259 4507 5898 2130 +5898 788 1793 2577 5559 +5899 3902 5943 4418 1730 +5900 4016 394 5826 1110 +5901 3621 6193 5624 705 +5902 3277 4986 225 6067 +5903 2003 6081 5155 2150 +5904 1579 5907 5908 3334 +5905 4801 2026 6119 5225 +5906 1686 5823 2475 5275 +5907 6210 2058 5265 2291 +5908 5222 1969 6150 4945 +5909 358 5144 5960 2273 +5910 3568 6128 1591 5229 +5911 4553 1993 5276 603 +5912 5152 4778 5586 623 +5913 1305 4050 1110 4049 +5914 6216 2178 5414 5662 +5915 1547 6129 2818 4987 +5916 2149 5169 2422 5721 +5917 5062 5698 5868 2068 +5918 5981 2291 5265 668 +5919 6039 3837 5552 2289 +5920 6032 1700 5909 4491 +5921 617 6019 3385 5126 +5922 5145 4726 5943 264 +5923 6204 6205 5818 850 +5924 3230 1533 5961 3814 +5925 5929 4788 5110 5158 +5926 1632 5942 2263 5215 +5927 5428 6020 6148 2227 +5928 2301 6202 3885 5817 +5929 2078 6109 937 5391 +5930 684 5732 2363 5216 +5931 1239 4837 6209 2052 +5932 2254 2041 5386 5596 +5933 2558 5389 1869 5937 +5934 272 2442 5795 5998 +5935 3965 6226 5456 409 +5936 5457 5456 6226 2131 +5937 748 5649 1906 5268 +5938 5062 2068 5875 6015 +5939 4032 5883 6216 1501 +5940 5445 1942 5634 5762 +5941 2029 5743 1990 5550 +5942 280 6108 1690 5669 +5943 2355 6022 2080 5400 +5944 3615 6028 5862 2297 +5945 3671 6217 1505 5020 +5946 4578 2404 6120 4996 +5947 1633 5027 2119 5504 +5948 899 5526 4079 1801 +5949 1629 5788 299 5171 +5950 4612 2048 6156 5349 +5951 2715 6172 5080 832 +5952 4115 5932 5128 1892 +5953 3995 921 5208 1791 +5954 5706 426 5824 6116 +5955 4191 5908 5907 1280 +5956 2514 6094 1975 5271 +5957 4831 768 5349 6156 +5958 2647 5903 4358 797 +5959 6218 5223 6076 1789 +5960 484 5410 2056 5544 +5961 510 6087 1882 5233 +5962 1195 4874 2034 4541 +5963 4324 4882 5808 1919 +5964 2374 5859 6188 2239 +5965 4640 6188 5859 2132 +5966 823 5102 2110 5582 +5967 5324 2024 6053 5452 +5968 5224 828 5596 5386 +5969 2117 2118 4534 5241 +5970 4561 1848 4861 5790 +5971 6004 931 5452 6053 +5972 2387 4355 862 5284 +5973 2073 4864 2074 5235 +5974 2435 5848 1841 5651 +5975 5205 5929 5158 1939 +5976 5201 258 5891 1689 +5977 13 14 6078 5321 +5978 1491 4186 1647 4443 +5979 4858 4225 4226 1979 +5980 3885 6202 4350 466 +5981 2542 529 6183 5281 +5982 1880 6009 2549 6008 +5983 4050 1305 6097 4951 +5984 2519 5262 6219 890 +5985 737 2020 6219 5262 +5986 5174 5223 6218 923 +5987 727 5979 2333 5791 +5988 4723 3595 5185 1815 +5989 6089 5922 5921 2236 +5990 2068 5105 2035 5875 +5991 3157 6080 1336 5379 +5992 1756 5405 2336 6061 +5993 3318 2049 5868 5698 +5994 1525 5701 201 4649 +5995 379 5558 1912 5557 +5996 3976 6165 1738 5660 +5997 6157 3710 1012 5086 +5998 5743 5288 6204 1990 +5999 2504 4900 6230 1696 +6000 2031 5295 1994 6205 +6001 773 5740 2510 6050 +6002 2842 5330 1779 6189 +6003 4562 778 6166 5257 +6004 2510 6102 2045 6131 +6005 988 6054 2011 5532 +6006 2011 6054 2184 5948 +6007 1552 3770 407 5154 +6008 5065 5906 5489 1862 +6009 4306 4307 5984 240 +6010 4538 5485 6095 1851 +6011 3633 5579 1712 5692 +6012 1793 5068 1951 4833 +6013 569 2593 6216 5883 +6014 302 4796 2164 4662 +6015 2349 5946 412 5771 +6016 2608 5919 5920 1143 +6017 2612 206 5988 5393 +6018 5680 6015 5875 4733 +6019 4705 262 5929 5205 +6020 912 4742 1863 4470 +6021 2442 6124 1091 5547 +6022 2218 5502 1943 6167 +6023 748 5699 2040 5649 +6024 1904 5777 1905 4962 +6025 1731 3816 6099 5625 +6026 3321 1912 5558 5781 +6027 2835 4049 1110 5826 +6028 341 5086 2570 5153 +6029 3834 4782 5961 1533 +6030 5726 4558 5530 1511 +6031 1657 2460 5732 6207 +6032 5232 5624 6193 1961 +6033 687 5455 5454 2055 +6034 2322 6146 2066 6062 +6035 3604 5690 1774 6155 +6036 1104 4821 5977 2629 +6037 4541 2034 6136 4573 +6038 3962 6138 1707 5461 +6039 4436 1729 5474 5947 +6040 2752 6177 3475 1060 +6041 6002 6018 5603 2328 +6042 1863 4079 5526 1060 +6043 2641 5397 767 5873 +6044 5684 2221 5762 5634 +6045 642 4613 464 3730 +6046 780 5898 5343 1795 +6047 6079 3830 948 5705 +6048 2189 6141 2163 6091 +6049 5495 5244 6104 2168 +6050 5428 203 5500 6020 +6051 824 5466 1300 2619 +6052 1785 216 6139 5156 +6053 2711 6176 6143 2194 +6054 18 19 6143 6176 +6055 1635 5896 2154 5621 +6056 5227 5489 5906 2092 +6057 851 5781 5558 2167 +6058 1126 5369 1950 6118 +6059 1211 5341 347 5718 +6060 1720 4700 901 5729 +6061 2103 5251 2104 5469 +6062 3285 3782 817 5945 +6063 1523 5595 2250 5173 +6064 4765 4714 5303 497 +6065 3920 4920 5963 912 +6066 509 1897 6171 2947 +6067 5601 1966 6025 6024 +6068 478 5987 2159 5986 +6069 911 1432 4573 6136 +6070 2371 5492 341 5153 +6071 3758 1580 5899 3773 +6072 1676 6013 2162 6001 +6073 601 5920 5919 2543 +6074 2657 1767 5166 5580 +6075 1732 5988 206 5989 +6076 2018 5365 989 5949 +6077 225 1856 5381 6239 +6078 3526 1529 5984 4307 +6079 4768 3761 5718 1739 +6080 2208 1815 5185 5184 +6081 3524 2198 5306 5858 +6082 4874 3814 5961 642 +6083 5571 2536 4997 5652 +6084 755 5363 2106 5422 +6085 240 2146 5961 4782 +6086 802 6025 2664 6026 +6087 2751 612 4220 1269 +6088 4267 1486 2421 810 2 13 3 20 -3699 1 9 105 5 -3700 9 10 106 105 -3701 10 11 107 106 -3702 11 12 108 107 -3703 12 13 109 108 -3704 13 14 110 109 -3705 14 15 111 110 -3706 15 16 112 111 -3707 16 17 113 112 -3708 17 18 114 113 -3709 18 19 115 114 -3710 19 20 116 115 -3711 20 21 117 116 -3712 21 22 118 117 -3713 22 23 119 118 -3714 23 24 120 119 -3715 24 25 121 120 -3716 25 26 122 121 -3717 26 27 123 122 -3718 27 2 6 123 +6089 1 9 105 5 +6090 9 10 106 105 +6091 10 11 107 106 +6092 11 12 108 107 +6093 12 13 109 108 +6094 13 14 110 109 +6095 14 15 111 110 +6096 15 16 112 111 +6097 16 17 113 112 +6098 17 18 114 113 +6099 18 19 115 114 +6100 19 20 116 115 +6101 20 21 117 116 +6102 21 22 118 117 +6103 22 23 119 118 +6104 23 24 120 119 +6105 24 25 121 120 +6106 25 26 122 121 +6107 26 27 123 122 +6108 27 2 6 123 2 17 3 30 -3719 2 28 124 6 -3720 28 29 125 124 -3721 29 30 126 125 -3722 30 31 127 126 -3723 31 32 128 127 -3724 32 33 129 128 -3725 33 34 130 129 -3726 34 35 131 130 -3727 35 36 132 131 -3728 36 37 133 132 -3729 37 38 134 133 -3730 38 39 135 134 -3731 39 40 136 135 -3732 40 41 137 136 -3733 41 42 138 137 -3734 42 43 139 138 -3735 43 44 140 139 -3736 44 45 141 140 -3737 45 46 142 141 -3738 46 47 143 142 -3739 47 48 144 143 -3740 48 49 145 144 -3741 49 50 146 145 -3742 50 51 147 146 -3743 51 52 148 147 -3744 52 53 149 148 -3745 53 54 150 149 -3746 54 55 151 150 -3747 55 56 152 151 -3748 56 3 7 152 +6109 2 28 124 6 +6110 28 29 125 124 +6111 29 30 126 125 +6112 30 31 127 126 +6113 31 32 128 127 +6114 32 33 129 128 +6115 33 34 130 129 +6116 34 35 131 130 +6117 35 36 132 131 +6118 36 37 133 132 +6119 37 38 134 133 +6120 38 39 135 134 +6121 39 40 136 135 +6122 40 41 137 136 +6123 41 42 138 137 +6124 42 43 139 138 +6125 43 44 140 139 +6126 44 45 141 140 +6127 45 46 142 141 +6128 46 47 143 142 +6129 47 48 144 143 +6130 48 49 145 144 +6131 49 50 146 145 +6132 50 51 147 146 +6133 51 52 148 147 +6134 52 53 149 148 +6135 53 54 150 149 +6136 54 55 151 150 +6137 55 56 152 151 +6138 56 3 7 152 2 21 3 20 -3749 3 57 153 7 -3750 57 58 154 153 -3751 58 59 155 154 -3752 59 60 156 155 -3753 60 61 157 156 -3754 61 62 158 157 -3755 62 63 159 158 -3756 63 64 160 159 -3757 64 65 161 160 -3758 65 66 162 161 -3759 66 67 163 162 -3760 67 68 164 163 -3761 68 69 165 164 -3762 69 70 166 165 -3763 70 71 167 166 -3764 71 72 168 167 -3765 72 73 169 168 -3766 73 74 170 169 -3767 74 75 171 170 -3768 75 4 8 171 +6139 3 57 153 7 +6140 57 58 154 153 +6141 58 59 155 154 +6142 59 60 156 155 +6143 60 61 157 156 +6144 61 62 158 157 +6145 62 63 159 158 +6146 63 64 160 159 +6147 64 65 161 160 +6148 65 66 162 161 +6149 66 67 163 162 +6150 67 68 164 163 +6151 68 69 165 164 +6152 69 70 166 165 +6153 70 71 167 166 +6154 71 72 168 167 +6155 72 73 169 168 +6156 73 74 170 169 +6157 74 75 171 170 +6158 75 4 8 171 2 25 3 30 -3769 4 76 172 8 -3770 76 77 173 172 -3771 77 78 174 173 -3772 78 79 175 174 -3773 79 80 176 175 -3774 80 81 177 176 -3775 81 82 178 177 -3776 82 83 179 178 -3777 83 84 180 179 -3778 84 85 181 180 -3779 85 86 182 181 -3780 86 87 183 182 -3781 87 88 184 183 -3782 88 89 185 184 -3783 89 90 186 185 -3784 90 91 187 186 -3785 91 92 188 187 -3786 92 93 189 188 -3787 93 94 190 189 -3788 94 95 191 190 -3789 95 96 192 191 -3790 96 97 193 192 -3791 97 98 194 193 -3792 98 99 195 194 -3793 99 100 196 195 -3794 100 101 197 196 -3795 101 102 198 197 -3796 102 103 199 198 -3797 103 104 200 199 -3798 104 1 5 200 -2 26 3 3698 -3799 5527 4801 6792 4419 -3800 6077 3971 6534 4809 -3801 4563 5851 4095 5121 -3802 4066 6891 4959 6811 -3803 4112 5449 4708 5877 -3804 4302 5175 4151 5176 -3805 6717 4425 5686 4803 -3806 5265 4060 5858 5748 -3807 4012 5355 4799 6416 -3808 5043 7093 4222 7027 -3809 4077 5526 6544 4940 -3810 4435 5270 4965 6877 -3811 4284 5257 4369 5322 -3812 5251 7253 4076 6608 -3813 5137 172 173 6086 -3814 6838 5852 3881 5570 -3815 4218 6883 4797 5075 -3816 6042 5178 3863 6770 -3817 4253 6602 5746 5068 -3818 4727 5449 4112 6065 -3819 4421 5370 3923 5145 -3820 4147 5087 4491 5884 -3821 6652 5568 4912 7053 -3822 4356 5049 5353 7163 -3823 7266 5462 4290 6428 -3824 5136 6109 151 152 -3825 4923 4894 5398 5915 -3826 6118 108 109 5215 -3827 4955 3910 5070 5402 -3828 3905 5758 4490 5179 -3829 4675 5599 4159 6228 -3830 7093 5043 7122 7261 -3831 6214 6122 7122 5043 -3832 4123 4947 4401 5900 -3833 6287 4491 6297 4875 -3834 7127 6061 5500 4024 -3835 4077 4940 4531 6281 -3836 4253 5052 5853 6602 -3837 6372 6920 5013 4031 -3838 4011 5286 4414 5460 -3839 4413 5498 4786 6048 -3840 5476 4834 5878 4361 -3841 4379 5539 3872 5116 -3842 6696 4230 5672 5271 -3843 6452 5213 5546 4167 -3844 5119 4497 5891 6341 -3845 5033 4687 5043 7027 -3846 5299 5009 6954 4040 -3847 5926 5288 177 178 -3848 4989 4687 5033 6974 -3849 4471 5907 4160 5650 -3850 3864 5523 4574 5582 -3851 4861 4267 4988 6623 -3852 4990 7435 5306 4290 -3853 5458 4382 5684 4850 -3854 6949 5474 4473 5801 -3855 5327 4149 6359 4999 -3856 4241 7013 4956 5227 -3857 4020 5348 4827 6588 -3858 4195 5547 4484 5489 -3859 6972 4757 6393 5400 -3860 5310 6888 4657 6388 -3861 5369 6054 4426 6191 -3862 5523 4931 6519 3918 -3863 5291 5292 5220 4308 -3864 5445 4156 6436 4918 -3865 3850 5508 6838 5979 -3866 4065 5194 6404 5571 -3867 4153 5818 4826 5802 -3868 5168 5766 5255 4273 -3869 5070 3910 5502 5625 -3870 6503 4907 6313 3940 -3871 120 5210 5501 119 -3872 3875 5692 6853 5482 -3873 5757 6037 5511 3867 -3874 6375 7447 5891 4155 -3875 4349 5477 4606 5739 -3876 5162 3904 6645 5732 -3877 5431 5588 4433 7488 -3878 5463 4929 6451 3979 -3879 6198 5262 167 168 -3880 4985 6931 4017 5569 -3881 4372 5627 4594 5305 -3882 6343 5143 5761 4165 -3883 5287 5042 7033 4101 -3884 5213 7023 4373 5546 -3885 4268 7256 5042 5287 -3886 5610 4900 5622 4299 -3887 4763 5316 4326 6379 -3888 4002 5180 4615 6179 -3889 6503 3940 6457 4936 -3890 5109 4583 6227 5530 -3891 5285 198 199 6532 -3892 5421 4939 6475 3895 -3893 5380 4873 6502 4051 -3894 5445 4918 6313 4292 -3895 6133 4483 5481 4978 -3896 4484 5381 4261 5489 -3897 5919 4269 7112 5439 -3898 4363 5331 6539 5656 -3899 4702 5867 4489 6099 -3900 5098 7296 4374 5609 -3901 5177 4592 6119 5661 -3902 5272 4016 6974 5033 -3903 4233 5138 4596 6530 -3904 5922 5208 6314 4631 -3905 5706 4876 5937 6763 -3906 7469 6372 4556 5557 -3907 6541 6612 4647 5507 -3908 5000 7010 4218 5856 -3909 5125 6191 4426 6014 -3910 6456 4551 6443 4942 -3911 6414 5480 4286 6164 -3912 3888 6334 4888 6543 -3913 6756 5036 6986 3950 -3914 7385 5440 4951 5439 -3915 5556 4070 6590 4906 -3916 4479 5958 3872 5093 -3917 4057 5636 6708 5368 -3918 5000 5856 4418 7026 -3919 4281 5358 6858 6244 -3920 5720 4715 6862 5010 -3921 5068 6900 7466 4253 -3922 5115 5646 6640 4570 -3923 4742 6333 4149 5327 -3924 4646 6154 4033 5687 -3925 4946 5787 3969 7153 -3926 4391 5393 4079 5443 -3927 5327 4999 6229 4768 -3928 4933 6934 4202 6418 -3929 4380 5639 3896 5110 -3930 5972 6383 5551 4434 -3931 6603 4300 5332 6789 -3932 4379 5116 3897 5630 -3933 5012 5396 7061 3892 -3934 4004 6080 6069 5343 -3935 4523 5448 3961 5611 -3936 5098 5609 3861 7338 -3937 5402 3852 6531 4955 -3938 5577 4099 6638 4973 -3939 5719 4392 6628 4898 -3940 5610 4147 5884 4900 -3941 6392 4587 6621 4971 -3942 6440 4152 5999 4902 -3943 4572 5266 6774 6019 -3944 6229 5004 5935 4768 -3945 189 5425 6470 188 -3946 4244 6259 4735 5868 -3947 5434 6265 186 187 -3948 6059 4724 5572 6928 -3949 4189 6579 7019 5014 -3950 7143 4410 5843 5457 -3951 4435 5844 7003 5270 -3952 5370 3866 5741 5914 -3953 7480 6021 6661 5020 -3954 5563 4320 5687 4938 -3955 4866 5258 4157 7439 -3956 6524 7137 4071 6525 -3957 5085 5345 5541 4387 -3958 4302 5176 6515 5471 -3959 5997 4079 5393 6603 -3960 3951 5432 4923 5471 -3961 6303 4203 6871 5027 -3962 5033 7027 4222 6668 -3963 6758 5954 6919 4243 -3964 5266 3970 5558 4988 -3965 6713 5509 7479 4889 -3966 4602 6783 4915 5641 -3967 5937 4317 5464 6011 -3968 5171 7336 4916 6395 -3969 4800 5659 4176 6046 -3970 5831 6266 6026 4141 -3971 4915 6783 4190 5896 -3972 5723 4990 6675 4288 -3973 6456 4942 7436 3891 -3974 6036 4023 5668 4977 -3975 5437 5295 6571 4444 -3976 4189 4965 5270 6579 -3977 4989 6974 4016 5657 -3978 4068 5562 6352 5055 -3979 4195 5489 4908 6809 -3980 5649 4221 6321 4922 -3981 4921 6509 4499 5556 -3982 5175 4302 6177 5333 -3983 4662 5724 4254 5188 -3984 6829 4492 5839 4931 -3985 4407 5287 5494 7110 -3986 7172 7211 5357 4301 -3987 4058 5091 4658 6664 -3988 5069 5466 4077 6281 -3989 5459 4019 6163 4944 -3990 5139 4527 5759 5484 -3991 5519 4940 6544 4449 -3992 6839 4939 3917 6570 -3993 6869 4207 6801 4953 -3994 4727 6445 4276 5449 -3995 7124 3943 6269 5106 -3996 5204 6937 4813 7154 -3997 4121 5510 4564 5715 -3998 4395 5825 7032 5359 -3999 5531 5022 5782 4366 -4000 5262 5486 166 167 -4001 3875 5482 4519 5616 -4002 6058 6308 5411 4132 -4003 4284 5468 6347 5330 -4004 4527 5139 7251 5260 -4005 5424 4995 6265 3927 -4006 5131 7425 4238 5886 -4007 6163 4289 6925 4944 -4008 5407 4277 6046 5092 -4009 6778 4306 5923 5005 -4010 5112 4303 5217 7460 -4011 4742 6648 3972 6332 -4012 4521 5735 4396 5544 -4013 6462 5253 6296 3893 -4014 5590 5035 6169 4423 -4015 6232 5408 5124 4359 -4016 6713 3925 5508 5509 -4017 5332 4300 5351 6632 -4018 6935 4188 6293 4960 -4019 6314 5208 5617 4113 -4020 5406 5309 5550 4307 -4021 4068 5488 6262 6305 -4022 4995 185 186 6265 -4023 5441 5163 7434 3981 -4024 4393 5744 4475 5869 -4025 4374 5775 7129 4890 -4026 4628 6235 4066 5423 -4027 4281 5272 5033 6668 -4028 5466 5069 5518 4294 -4029 5118 7223 3987 6340 -4030 5035 5590 4145 7224 -4031 5108 6951 4954 3898 -4032 4430 5273 4172 5415 -4033 4366 5392 3870 5531 -4034 5032 7247 3954 6362 -4035 5376 4050 5469 5212 -4036 6001 5023 6243 3862 -4037 5210 3911 6802 5501 -4038 4313 5055 5776 6889 -4039 5152 150 151 6109 -4040 5145 6086 173 174 -4041 5321 5220 5469 4050 -4042 5201 4014 5445 4292 -4043 5273 4430 7243 5274 -4044 5499 5003 6027 4404 -4045 6706 3976 6027 5003 -4046 5968 4974 7056 4456 -4047 5146 7015 4706 6798 -4048 5150 4278 6446 5703 -4049 3878 5814 6645 5232 -4050 6058 5153 7366 4591 -4051 6531 4355 6500 4955 -4052 5518 5069 6282 4136 -4053 7122 5105 7149 7261 -4054 5114 5832 4370 7217 -4055 4827 5348 4249 6749 -4056 6595 4967 7349 4564 -4057 4887 6285 4483 6133 -4058 6671 5014 7019 4110 -4059 4115 7350 5182 4083 -4060 5858 4060 6908 4960 -4061 4295 6503 4936 5810 -4062 4133 6311 7379 5360 -4063 4542 5916 3922 5314 -4064 3850 5585 4488 5508 -4065 5717 4353 5783 4979 -4066 4294 5143 6606 5467 -4067 6869 5020 6661 4207 -4068 5656 4991 5757 3867 -4069 4017 5948 4487 5192 -4070 5647 4961 6143 3856 -4071 4896 6131 5861 4895 -4072 4979 5783 132 133 -4073 6638 4365 5849 4973 -4074 107 5324 6700 106 -4075 5576 6326 4212 6990 -4076 5260 5857 5759 4527 -4077 5764 4429 6479 4966 -4078 5313 6607 5351 4300 -4079 4540 5526 4077 6129 -4080 4434 5551 4139 5335 -4081 6113 4058 6877 4965 -4082 5532 4970 6772 4255 -4083 5553 5072 5620 4321 -4084 5714 4314 5893 4976 -4085 5521 4993 5967 4338 -4086 5632 3921 5392 5236 -4087 3924 5483 4519 5482 -4088 5688 4615 6771 5037 -4089 5867 4702 6593 5017 -4090 6554 5279 5843 4410 -4091 4875 6582 4146 6287 -4092 4459 5821 4969 6283 -4093 4277 5407 4703 6540 -4094 6359 4571 7073 4999 -4095 5562 4385 6301 4975 -4096 4773 6555 3933 6167 -4097 6668 5062 6866 4281 -4098 4483 5603 3991 5481 -4099 5849 4365 5850 5017 -4100 4200 7101 5063 5976 -4101 5168 4273 7366 5174 -4102 6429 4290 5306 5371 -4103 5668 4299 6201 4977 -4104 5669 5186 7462 4046 -4105 5720 5010 6517 4227 -4106 6272 4984 5875 3852 -4107 5558 4524 6482 5006 -4108 6959 6182 4801 5527 -4109 3986 5451 6675 5462 -4110 5195 6402 5986 4209 -4111 4810 6607 3956 6098 -4112 5578 5201 6715 4398 -4113 5256 4249 5348 6260 -4114 4670 5832 3966 5671 -4115 4751 6722 4167 5546 -4116 6096 5698 4015 5029 -4117 3903 5034 4358 5788 -4118 6014 5120 7170 4248 -4119 6703 5814 4547 5727 -4120 6165 4986 6241 4488 -4121 5220 5321 5902 4308 -4122 5720 4227 7249 5076 -4123 4561 5499 4067 5796 -4124 5206 4573 5628 3937 -4125 3881 5885 6748 5570 -4126 4900 6480 3968 5622 -4127 5842 4027 5453 5264 -4128 5736 4201 6658 5028 -4129 5923 5028 6659 4073 -4130 4132 5411 4759 6438 -4131 4703 6091 4254 5669 -4132 4124 6697 4433 5588 -4133 7294 5284 5764 4966 -4134 6328 3957 5564 5103 -4135 6096 4443 6923 5698 -4136 4341 5194 4065 5516 -4137 4254 5724 4865 6827 -4138 6763 5024 7427 5180 -4139 7406 4210 7428 5181 -4140 5499 4561 6397 5003 -4141 4935 4517 5902 5321 -4142 5179 5465 6641 3905 -4143 4287 5944 4635 5548 -4144 6056 4498 5678 6269 -4145 5768 3888 6543 6848 -4146 4837 6343 4165 6251 -4147 4539 5951 4420 5778 -4148 4025 5592 5073 7002 -4149 5282 5025 6556 4171 -4150 4803 5412 4348 7084 -4151 4861 6855 4064 6049 -4152 4196 5749 4668 5771 -4153 6100 5167 5485 4289 -4154 5136 6793 5314 3922 -4155 5137 3923 5315 6794 -4156 4260 7012 4933 5731 -4157 5184 4325 5197 7470 -4158 5185 3914 5198 7471 -4159 6965 4334 5442 5241 -4160 3934 6072 4532 5214 -4161 4364 5207 7490 5294 -4162 4323 6309 5036 6756 -4163 6329 4508 6234 4996 -4164 4307 5292 4054 5406 -4165 4378 5325 4045 5522 -4166 3914 6601 5741 5198 -4167 5353 4998 6195 4056 -4168 4927 6911 5194 4341 -4169 4303 5228 6696 4791 -4170 4002 5533 6992 5706 -4171 5826 5429 5550 5309 -4172 5135 5639 4763 7024 -4173 3898 4954 6956 6003 -4174 6697 4769 5935 5004 -4175 4710 5170 5169 5435 -4176 6243 5023 5841 4485 -4177 6801 4207 5725 5129 -4178 5850 4117 5867 5017 -4179 4528 5299 4040 5484 -4180 4381 5212 5469 7442 -4181 5575 4189 5790 5050 -4182 5424 3927 5580 5130 -4183 4332 6583 5074 7468 -4184 5956 5045 6427 3876 -4185 4274 7428 5009 5299 -4186 4057 5048 4357 6994 -4187 6309 5013 6278 4208 -4188 5625 3868 6808 5070 -4189 3905 6410 4948 5758 -4190 5292 4307 5469 5220 -4191 4617 5648 4366 5782 -4192 6395 3890 7351 5171 -4193 155 5314 6793 154 -4194 169 170 6794 5315 -4195 6001 3916 6557 5023 -4196 6600 3913 7470 5197 -4197 5071 7133 4261 7389 -4198 6388 5016 7192 4018 -4199 7133 5071 7407 5189 -4200 4565 5607 6371 5106 -4201 7078 4032 6212 5008 -4202 5163 5441 5442 4334 -4203 5705 5050 5790 4340 -4204 5244 6594 160 161 -4205 4843 6732 4156 5445 -4206 5490 4401 6047 5166 -4207 7189 5455 6019 4252 -4208 6671 4697 6720 5014 -4209 4095 5707 6199 5121 -4210 5087 7381 6297 4491 -4211 3879 5420 6719 5289 -4212 5450 6566 6176 4187 -4213 6295 4842 7143 5457 -4214 6100 4289 7086 5117 -4215 6438 5117 7086 4132 -4216 5137 6086 5145 3923 -4217 4313 6889 6361 5383 -4218 3970 5266 4572 6180 -4219 5484 4040 5605 5139 -4220 4873 6571 4443 6096 -4221 5544 6174 5811 4521 -4222 5318 4360 5367 4342 -4223 6120 5196 7424 3960 -4224 5174 4297 5690 5168 -4225 5136 3922 5152 6109 -4226 5981 4512 6115 5019 -4227 5227 5112 5640 4241 -4228 5354 7049 4018 7192 -4229 5022 6943 3853 5782 -4230 7122 6122 7017 5105 -4231 7197 5263 4035 7125 -4232 7251 5139 5605 4330 -4233 4748 5522 4045 6460 -4234 5470 6068 6457 3940 -4235 5149 5619 7117 4236 -4236 6572 5341 5423 4265 -4237 5736 5028 5923 4306 -4238 6707 5026 7120 3936 -4239 6041 6791 5631 4181 -4240 5456 5241 5571 4335 -4241 4899 5548 4032 6711 -4242 4868 6663 4131 6123 -4243 4450 6904 4708 5859 -4244 4473 5474 3860 5658 -4245 6011 4070 6134 5024 -4246 5647 5151 7183 4405 -4247 4304 6418 5064 6958 -4248 7490 5207 7457 4279 -4249 4381 7309 5535 5212 -4250 5112 5227 6819 4303 -4251 5099 6919 4679 6043 -4252 6121 3953 5853 5052 -4253 5833 5123 6965 4047 -4254 3994 5492 4350 5278 -4255 6567 5082 7246 6221 -4256 5376 5212 5535 4368 -4257 5131 7411 4198 6856 -4258 4260 5731 4980 7220 -4259 4670 5671 7329 6488 -4260 5510 6140 6595 4564 -4261 4935 5321 4050 7386 -4262 5821 4113 6841 5083 -4263 4358 5661 6565 6740 -4264 7143 5065 6554 4410 -4265 5394 5044 6462 3893 -4266 5963 6768 5838 4682 -4267 4901 4354 5387 5506 -4268 4816 6639 4211 5461 -4269 5871 5222 7216 4328 -4270 5138 3997 7171 5416 -4271 6692 6789 4035 5263 -4272 5162 5732 195 196 -4273 4392 5719 3878 5232 -4274 5605 4040 6954 5037 -4275 4914 4151 5175 6005 -4276 6362 4590 6302 5032 -4277 6159 5030 6294 4432 -4278 6958 4000 7495 5189 -4279 5541 5345 5871 4328 -4280 3869 7126 5758 4948 -4281 5530 4314 5714 5109 -4282 5091 4058 6113 5710 -4283 7375 7485 5298 4337 -4284 152 7158 6793 5136 -4285 172 5137 6794 7159 -4286 6178 5044 6369 3859 -4287 5394 4479 6369 5044 -4288 4372 5305 4124 5588 -4289 5864 3909 6090 5215 -4290 6118 5215 6090 4506 -4291 5589 4351 7378 3976 -4292 4151 6609 4626 5176 -4293 4658 5840 6376 5427 -4294 4200 5976 4952 6441 -4295 4824 6428 4607 6787 -4296 4294 5467 4541 5466 -4297 6884 4618 6217 5360 -4298 5980 176 6978 5056 -4299 4186 5572 4682 5838 -4300 5781 5255 5766 4562 -4301 4621 6582 4875 5615 -4302 6762 5149 5657 4016 -4303 5142 7037 4780 5630 -4304 4439 5521 4338 5520 -4305 4939 5421 5768 3917 -4306 4020 6542 4680 5348 -4307 5575 5050 3952 6020 -4308 6057 4608 6213 5384 -4309 4730 5812 3857 5909 -4310 5053 4474 6290 5419 -4311 3858 5745 6748 4943 -4312 5996 5061 6944 148 -4313 6139 5188 7332 4006 -4314 6074 5046 6496 4469 -4315 5443 4398 6715 5682 -4316 4902 6950 4559 6440 -4317 5812 5132 6443 4551 -4318 4406 6804 6784 5861 -4319 6997 3941 7088 5140 -4320 7033 7272 5543 4101 -4321 5776 5055 6352 4226 -4322 5442 4065 5571 5241 -4323 6092 6489 5702 4111 -4324 6958 5064 6765 4000 -4325 5316 6558 7315 4326 -4326 7378 6028 6027 3976 -4327 5392 4366 5648 5236 -4328 5640 4376 7424 5196 -4329 6700 4315 6532 5202 -4330 6373 131 6945 5115 -4331 5059 6128 5055 4313 -4332 5808 4161 7196 5809 -4333 5980 5056 6396 4421 -4334 5979 6838 5570 6320 -4335 4927 4341 5233 5666 -4336 5681 4420 5951 6276 -4337 3928 4982 6803 6112 -4338 5781 4562 7476 5452 -4339 5184 3883 7187 4325 -4340 5406 5475 5559 4425 -4341 5829 4330 6511 5374 -4342 5601 5323 6154 4367 -4343 6268 4309 6843 5101 -4344 5202 6532 199 200 -4345 4054 6619 4963 5579 -4346 4820 6626 4117 5850 -4347 6591 5689 7094 4692 -4348 4735 6516 4154 5868 -4349 6015 5249 6418 4304 -4350 3901 6798 5342 5093 -4351 6183 3932 6298 5058 -4352 4353 5115 6945 5783 -4353 159 160 6594 6078 -4354 5767 4500 5591 5828 -4355 4232 5391 6257 5158 -4356 7124 5059 6097 3943 -4357 5163 4334 6965 5123 -4358 7203 137 138 5567 -4359 4262 5644 4731 6409 -4360 5996 4424 6425 5061 -4361 4331 6204 4963 6619 -4362 6232 5126 6842 4660 -4363 6529 4287 7415 5216 -4364 4928 7109 4548 6723 -4365 4427 6045 4785 7050 -4366 4363 5656 3867 5245 -4367 5193 7299 4903 6202 -4368 4013 6560 4726 5404 -4369 7403 6125 7203 4937 -4370 4650 6034 4145 5590 -4371 5102 3941 7299 5193 -4372 5318 4342 7486 5379 -4373 3925 6713 4942 5852 -4374 7050 5248 6065 4112 -4375 5620 5072 6660 4021 -4376 3872 5539 6389 5093 -4377 5303 6507 124 125 -4378 7365 5472 7407 5071 -4379 5712 6588 5898 4522 -4380 6282 5069 6281 4531 -4381 6802 3911 6885 5077 -4382 5293 5902 6088 3975 -4383 5406 4425 6717 5309 -4384 5045 5956 5801 4473 -4385 5762 4352 6997 5140 -4386 5579 5475 5406 4054 -4387 4497 5103 5564 6901 -4388 4244 5868 4714 6528 -4389 6355 4672 5894 6684 -4390 5966 6461 5685 4503 -4391 6801 5129 6948 4680 -4392 5589 3976 6706 5240 -4393 5185 6227 5486 3914 -4394 5613 4437 5929 5250 -4395 5038 5039 4029 7030 -4396 5928 5927 7182 4633 -4397 6010 5211 7364 4062 -4398 4699 5561 4090 6215 -4399 5725 4365 6638 5129 -4400 7147 5096 5904 5095 -4401 3968 6480 4867 6081 -4402 5293 4331 6619 5291 -4403 5872 5230 7458 4466 -4404 5800 5090 6325 3886 -4405 5864 7116 7060 3909 -4406 6239 6238 4091 6237 -4407 5648 3876 5632 5236 -4408 5564 5084 6562 4320 -4409 4952 6540 4046 5621 -4410 6937 5204 7318 3982 -4411 5195 6018 4759 7144 -4412 4788 6359 4149 5641 -4413 5713 4736 6857 5831 -4414 5439 4951 5015 5919 -4415 5367 4360 5497 4061 -4416 6627 5654 6416 4799 -4417 4849 7008 4987 6208 -4418 5954 6758 5075 4797 -4419 6907 5567 6863 4917 -4420 7431 4014 6799 5075 -4421 4981 4173 7243 5676 -4422 4042 6730 4389 4997 -4423 4770 4771 3955 4126 -4424 7172 5333 6177 4048 -4425 6908 5354 6935 4960 -4426 5697 4130 5940 5134 -4427 6920 7273 6278 5013 -4428 5533 4475 5744 5497 -4429 5701 4412 7080 5157 -4430 5645 6076 5781 4393 -4431 7206 6288 7215 4305 -4432 6035 3903 5788 5147 -4433 6567 4609 6483 5082 -4434 6418 5249 7496 4933 -4435 6015 4030 7496 5249 -4436 6343 4837 7281 5200 -4437 4448 5662 4403 5515 -4438 6980 5153 7052 4019 -4439 5537 4285 5721 5192 -4440 7298 5398 4894 5860 -4441 4079 5594 4398 5443 -4442 3980 5708 4576 5752 -4443 4584 6136 4111 5702 -4444 6529 5216 7392 4857 -4445 6501 4440 6331 5080 -4446 4702 6099 4118 5670 -4447 5145 6755 5980 4421 -4448 5690 4089 5766 5168 -4449 3991 6161 4634 5481 -4450 7471 4326 7315 5952 -4451 5662 5235 7437 4403 -4452 3971 6077 6303 5027 -4453 7407 5472 6015 4304 -4454 5408 4229 7339 5124 -4455 5564 3957 6301 5084 -4456 7362 5076 7249 5473 -4457 4352 5087 4147 6366 -4458 5221 5346 6988 3935 -4459 5922 5095 6644 5208 -4460 5870 5329 6336 4236 -4461 5153 6058 4802 7052 -4462 6336 5329 7396 4441 -4463 6426 3865 5740 5197 -4464 6379 5198 5741 3866 -4465 6615 5104 6672 4557 -4466 5367 4351 5589 4342 -4467 6443 5132 5885 3881 -4468 5547 4684 6728 7361 -4469 5152 4424 5996 6790 -4470 5429 4317 6353 5326 -4471 5165 6093 3899 7368 -4472 5387 4376 5640 6971 -4473 4909 7267 4269 5919 -4474 4142 3939 4235 4234 -4475 4282 7379 5058 6298 -4476 7284 5259 4250 7210 -4477 5108 3898 6873 6667 -4478 5323 5601 4212 7139 -4479 4771 4185 6847 3955 -4480 5490 5166 7082 4148 -4481 4616 6349 4005 6291 -4482 5259 4460 6065 5248 -4483 4436 6256 4792 6472 -4484 3921 4937 7203 5567 -4485 6531 5108 6667 4355 -4486 4051 7020 6701 5380 -4487 5312 4325 7187 6062 -4488 5053 5419 6973 4316 -4489 5543 4665 7016 4664 -4490 4283 5219 7331 5102 -4491 7124 5488 6128 5059 -4492 5634 4595 6470 5425 -4493 7331 6529 3941 5102 -4494 5738 5126 7152 4247 -4495 4274 5299 4528 5637 -4496 4249 5762 5140 6749 -4497 4534 5298 3942 6144 -4498 3911 5210 4505 6220 -4499 4086 6976 4920 6306 -4500 5190 4407 7110 5453 -4501 4574 6721 5981 5019 -4502 4639 5874 4910 7121 -4503 6502 5173 7118 4051 -4504 5870 4236 7117 5173 -4505 4423 6169 6168 5848 -4506 7165 5226 7359 4263 -4507 5451 3986 5767 5828 -4508 5460 4414 6293 5395 -4509 7142 4345 5807 5065 -4510 4374 5090 6490 5775 -4511 5652 3900 6578 5104 -4512 5516 5726 5233 4341 -4513 3879 6721 6209 5420 -4514 5886 4238 5148 4723 -4515 7003 5844 6890 3963 -4516 4582 5695 6107 6942 -4517 4038 5873 5018 7108 -4518 5424 5130 6808 3868 -4519 4868 6123 4956 7013 -4520 6332 6864 5913 4602 -4521 5177 5834 115 116 -4522 5131 6856 5088 7425 -4523 4373 5823 6592 5546 -4524 4454 5290 6563 6194 -4525 4235 3939 4862 4178 -4526 4158 6466 4790 5633 -4527 5476 6050 5477 4063 -4528 4858 6861 5367 4061 -4529 5583 5803 6541 4568 -4530 5729 5239 6994 4357 -4531 6367 5154 6153 3891 -4532 5265 5748 5286 4264 -4533 4596 5138 5416 6751 -4534 5885 5132 6795 3915 -4535 4612 3955 4845 4026 -4536 4013 5404 4482 5887 -4537 5661 4358 5834 5177 -4538 6578 3900 6633 5377 -4539 7217 4144 6604 5114 -4540 6553 5105 6350 4593 -4541 5862 5301 6621 4587 -4542 5265 4264 7384 5133 -4543 7362 5473 7112 4269 -4544 5945 5308 7156 4828 -4545 4282 6298 4732 6406 -4546 4766 6080 4004 6536 -4547 6232 4118 6735 5126 -4548 5557 4556 6371 5607 -4549 4096 5515 4403 5591 -4550 7103 4831 7344 5231 -4551 5751 4312 4862 3939 -4552 5726 5516 5735 4521 -4553 4849 6208 4177 6845 -4554 5714 164 7063 5109 -4555 4357 5048 7233 5365 -4556 5549 7030 4029 7135 -4557 4832 5438 4134 6930 -4558 5883 5110 6270 3871 -4559 6438 4653 7477 5117 -4560 6360 4713 7402 5223 -4561 6340 4609 6567 5118 -4562 7151 6874 4349 5739 -4563 6740 4622 6860 5147 -4564 4699 6215 4578 6351 -4565 6767 4678 6699 5127 -4566 5047 6679 5156 4382 -4567 4929 5463 5690 4297 -4568 7062 5114 6604 4476 -4569 5553 4321 6806 5448 -4570 6727 5281 6507 4339 -4571 6189 5422 5721 4285 -4572 5059 4313 5383 6097 -4573 7039 4363 5245 7060 -4574 6447 5332 6632 4819 -4575 5647 3856 7484 5151 -4576 5448 4523 7205 5553 -4577 4553 5875 7288 5765 -4578 5103 4497 5119 6788 -4579 7016 5121 6199 4664 -4580 5600 4754 7340 4994 -4581 4296 5454 6711 5573 -4582 5751 4052 6258 4312 -4583 4974 5968 3981 7434 -4584 5156 6421 5684 4382 -4585 5091 4276 6445 5818 -4586 6532 4315 6037 5285 -4587 5835 4477 5581 5973 -4588 5304 4116 4510 4511 -4589 5202 105 106 6700 -4590 4353 5717 7285 6464 -4591 6607 4810 7074 5351 -4592 6405 5122 6296 4458 -4593 4119 5786 4871 6487 -4594 5241 5456 4047 6965 -4595 5584 6138 4210 7406 -4596 3877 6477 4557 5224 -4597 6839 6570 5800 3886 -4598 4236 6336 5657 5149 -4599 4249 5256 7043 5762 -4600 5559 5475 5579 4455 -4601 4283 5830 4073 5219 -4602 5552 4339 6507 5303 -4603 5378 6500 5692 3875 -4604 5768 6848 6909 3917 -4605 139 5931 4917 6863 -4606 4226 5355 4623 5776 -4607 5339 6324 4162 6196 -4608 4154 5969 4714 5868 -4609 6313 6881 5470 3940 -4610 7024 4421 6396 5135 -4611 6277 4779 7483 5205 -4612 5098 3907 7347 5247 -4613 5238 7163 5353 4056 -4614 4048 7298 5860 6784 -4615 4019 5459 7305 6980 -4616 6016 3885 6610 5269 -4617 6618 5405 6604 4144 -4618 6688 4630 5962 6823 -4619 5376 4368 7486 5240 -4620 5697 5134 6494 4643 -4621 4996 7248 4245 6329 -4622 4418 5578 4398 5594 -4623 6767 5413 4555 5414 -4624 5721 5422 5872 4466 -4625 3888 5768 4485 5841 -4626 7097 5142 6425 4424 -4627 3953 6121 4296 5150 -4628 5796 5234 6387 4431 -4629 4662 6722 4191 5724 -4630 7471 5952 3884 5185 -4631 4874 5540 3853 6943 -4632 4068 6305 4832 6835 -4633 5666 5233 7399 4265 -4634 5639 5135 6396 3896 -4635 5904 4567 7312 4114 -4636 4957 5522 4748 6880 -4637 4060 5265 7375 5555 -4638 6343 4691 6606 5143 -4639 5124 5612 5611 4359 -4640 6849 6952 5903 4746 -4641 4262 6409 7226 5250 -4642 5773 5155 6085 4348 -4643 4192 6463 4968 6688 -4644 5893 5178 6042 3906 -4645 4944 4295 5810 5459 -4646 4789 5874 4003 6155 -4647 7406 5181 7011 4950 -4648 6612 5160 7325 4647 -4649 5435 5169 7279 5436 -4650 7206 5141 4140 6288 -4651 4346 5155 5773 5513 -4652 6031 5338 5730 4104 -4653 5594 4079 5997 5389 -4654 5453 4027 6149 5190 -4655 3985 5512 4448 5756 -4656 4064 6855 4498 5495 -4657 5630 3897 6425 5142 -4658 4841 7164 3926 5538 -4659 6798 3901 6254 5146 -4660 7485 7375 5265 5133 -4661 5899 4371 6153 5154 -4662 5729 4357 5365 5340 -4663 4973 4321 5620 5577 -4664 156 157 5982 5261 -4665 7060 7116 5772 5089 -4666 5512 3985 6656 7328 -4667 4594 5627 3982 5677 -4668 4012 6614 4623 5355 -4669 6969 5228 7199 4926 -4670 5636 4057 6089 5218 -4671 5532 4255 6781 5161 -4672 4211 6673 7244 5461 -4673 5644 4262 6407 5160 -4674 6681 5158 6175 4343 -4675 7239 5167 6100 3956 -4676 6155 5375 7454 4789 -4677 4244 6528 4871 5786 -4678 3945 5803 7394 6538 -4679 4323 6756 4830 7106 -4680 5617 5094 7303 4774 -4681 4237 5404 4726 6916 -4682 6415 5275 5629 4270 -4683 5425 4329 6615 5634 -4684 4808 6736 4852 5560 -4685 5055 6128 5488 4068 -4686 6175 5158 6257 4022 -4687 5347 6308 6058 4591 -4688 4809 6534 4412 5701 -4689 5701 5157 6608 4076 -4690 4329 4945 7395 5652 -4691 3870 5392 6907 5643 -4692 5259 5248 7260 4250 -4693 7050 4785 7260 5248 -4694 7118 5229 7020 4051 -4695 6367 4515 6401 5154 -4696 3861 5609 6894 5225 -4697 7165 4828 7156 5226 -4698 4226 6292 4799 5355 -4699 4477 5769 4084 5581 -4700 4430 5415 6340 5820 -4701 4881 4388 7079 4997 -4702 5286 5748 5858 4414 -4703 5781 3929 7276 5255 -4704 7217 5268 6330 4144 -4705 5831 4141 5693 5713 -4706 3942 5737 4693 6144 -4707 6476 4701 5631 6805 -4708 5013 6309 4323 6485 -4709 7158 153 154 6793 -4710 7159 6794 170 171 -4711 6671 5506 7150 4697 -4712 5600 6564 5704 4754 -4713 6996 4214 5039 5038 -4714 7188 4246 6630 5361 -4715 5283 6231 4508 6329 -4716 4059 5294 7490 5068 -4717 5350 122 123 6727 -4718 5005 5923 4073 5524 -4719 5004 6229 3983 6066 -4720 6608 4782 7252 5251 -4721 5967 5251 7252 4338 -4722 4589 6424 4004 5343 -4723 5742 5209 7204 4402 -4724 3859 7257 4864 6178 -4725 5256 6260 6948 4099 -4726 6853 6983 3864 5582 -4727 5306 4394 6210 5371 -4728 4908 5489 4261 7133 -4729 7073 4571 7082 5166 -4730 7380 4461 6520 5162 -4731 5306 5680 5679 4394 -4732 5613 5250 7226 4034 -4733 5908 4138 6828 5183 -4734 5672 4427 5988 5271 -4735 6555 4773 7023 5213 -4736 5090 7463 3920 6490 -4737 4978 5481 4634 6442 -4738 6437 5164 7168 4085 -4739 5477 6605 5819 4063 -4740 4263 6940 5636 5218 -4741 3958 5726 4521 5811 -4742 5796 4067 7200 5234 -4743 6795 4730 7167 5388 -4744 5049 4356 5338 5789 -4745 4978 6922 4213 6133 -4746 5640 5196 7180 4241 -4747 5583 4107 5728 7297 -4748 6513 5289 7453 4864 -4749 7487 4566 6596 6216 -4750 6149 4438 6786 5190 -4751 6938 4641 6676 5183 -4752 6158 4547 6633 5172 -4753 6559 4850 5684 7114 -4754 6766 4078 6482 5205 -4755 6277 5205 6482 4524 -4756 5102 5193 6824 4283 -4757 189 5901 4329 5425 -4758 4632 5896 4190 5827 -4759 6320 4519 5483 5979 -4760 6115 3850 5979 5483 -4761 5269 6610 4569 6691 -4762 4460 5259 7284 6166 -4763 5530 6227 5185 3884 -4764 5418 5971 4776 7046 -4765 4601 5905 3967 5597 -4766 4277 6785 4800 6046 -4767 5872 5422 6189 4120 -4768 7135 4887 6133 5549 -4769 4189 5575 6113 4965 -4770 5154 6401 3863 5899 -4771 5962 4630 5690 5463 -4772 4947 4123 6551 5431 -4773 4603 5888 4109 5895 -4774 6403 4501 6334 5242 -4775 6557 5242 6334 3888 -4776 4779 6277 4154 6516 -4777 4291 6921 4905 5794 -4778 5343 5344 6469 4589 -4779 5771 4668 6846 7179 -4780 6202 4599 6824 5193 -4781 4303 4791 6300 5217 -4782 5870 5173 6502 4442 -4783 6696 5271 7304 4791 -4784 5988 3952 7304 5271 -4785 5536 6216 6596 4160 -4786 4272 4271 6847 3948 -4787 4316 5554 7464 5053 -4788 4615 5688 4210 6138 -4789 3880 4718 4856 4075 -4790 5826 5642 6085 7410 -4791 4857 7088 3941 6529 -4792 4536 7168 5164 5866 -4793 4946 6460 4369 5787 -4794 5254 5218 6089 4384 -4795 5291 4308 5902 5293 -4796 6963 6912 5987 4445 -4797 5441 4396 5735 5442 -4798 5047 4382 5458 6106 -4799 6419 5246 7400 4795 -4800 5779 7443 6584 4666 -4801 5218 5254 7165 4263 -4802 5452 4061 5497 5744 -4803 6897 7494 6107 4470 -4804 5845 4707 6879 6714 -4805 5157 7081 4411 7390 -4806 5595 5214 7022 4354 -4807 6387 5234 7200 4741 -4808 5049 7233 4242 7282 -4809 6331 4440 6245 5199 -4810 3891 6153 4884 6456 -4811 5226 7156 3936 7120 -4812 5555 4456 7056 5487 -4813 7075 4127 6386 4823 -4814 4735 5795 4059 6391 -4815 5781 5452 5744 4393 -4816 5643 4458 6296 5253 -4817 6189 4285 7031 5229 -4818 7460 5217 4340 6148 -4819 5680 5306 7435 4225 -4820 4729 6629 4981 5676 -4821 6060 5263 7197 4256 -4822 5999 4152 7184 5254 -4823 5826 5309 6717 5642 -4824 5214 5595 6902 3934 -4825 6727 123 7293 5281 -4826 6507 5281 7293 124 -4827 3928 6112 7264 6029 -4828 4159 5599 4472 5907 -4829 6348 5199 6962 4502 -4830 4445 6402 4930 6038 -4831 6138 5584 6279 4642 -4832 6348 3892 6331 5199 -4833 6823 4691 6343 5200 -4834 6360 5223 6435 4180 -4835 5127 7343 4081 6767 -4836 4182 5686 4425 5559 -4837 7251 4526 7166 5260 -4838 6057 5384 5940 4130 -4839 4444 6571 4873 5380 -4840 4766 5972 4434 6080 -4841 5312 6426 5197 4325 -4842 5429 5826 5464 4317 -4843 3968 6081 4399 5246 -4844 5150 5920 7273 4278 -4845 4272 3890 6052 4044 -4846 5085 4085 5871 5345 -4847 4563 5121 7016 6225 -4848 6090 3909 7060 5245 -4849 6940 5268 7217 4370 -4850 7241 5222 7497 4402 -4851 4632 6546 4891 5896 -4852 6556 5560 6393 4171 -4853 5496 5945 4152 6440 -4854 5442 5735 5516 4065 -4855 5785 5308 5945 4453 -4856 4916 7336 3902 5444 -4857 6255 5257 7439 4157 -4858 5601 5733 6351 4578 -4859 6057 4130 5752 4576 -4860 4644 5722 4005 6103 -4861 4265 5423 7087 5666 -4862 4350 5492 4838 7059 -4863 3975 5971 4331 5293 -4864 5005 4291 7322 6184 -4865 5842 5264 6712 4467 -4866 6016 5269 6035 4610 -4867 4803 5686 4182 5412 -4868 5224 4557 6672 5225 -4869 125 126 6124 5303 -4870 5951 4539 5769 5565 -4871 5815 5565 5769 4477 -4872 5372 4001 7371 6508 -4873 6089 4057 6994 5239 -4874 5550 7442 5469 4307 -4875 5591 4500 5673 5847 -4876 5408 6132 6187 4229 -4877 4853 5274 7243 4173 -4878 4041 5755 5079 7216 -4879 7118 4761 6189 5229 -4880 5016 6388 5062 7096 -4881 4938 4155 5891 5563 -4882 4268 5287 4407 7295 -4883 5215 109 110 5864 -4884 5617 5208 6644 5094 -4885 7452 4071 5513 5773 -4886 5742 3938 7169 5209 -4887 4203 6303 4825 6826 -4888 3881 5852 4942 6443 -4889 5843 5279 7228 4756 -4890 6071 4692 7094 5258 -4891 6312 5258 7094 4318 -4892 5456 4335 7458 5230 -4893 3934 6048 4786 6072 -4894 5143 4294 5518 5761 -4895 5111 5717 7368 3899 -4896 5713 5693 5966 4503 -4897 6325 5247 6146 3886 -4898 4207 6661 4820 5725 -4899 4181 5631 4701 6423 -4900 6452 4760 6555 5213 -4901 6356 5356 3912 6211 -4902 6630 4628 6927 5361 -4903 5520 4338 7252 6327 -4904 4097 5574 4783 6807 -4905 5581 5863 6004 4548 -4906 5525 4386 5659 6450 -4907 5824 4350 5495 6449 -4908 6684 5362 6211 3912 -4909 5318 6759 6992 4360 -4910 5132 5812 4730 6795 -4911 4090 5561 7290 6106 -4912 7025 4851 4853 3978 -4913 5034 3903 6691 5252 -4914 4230 6969 4912 5672 -4915 6879 4983 5405 6560 -4916 6000 5836 5507 4647 -4917 5315 3923 5370 5914 -4918 4865 5724 4191 6746 -4919 7120 4793 6330 5226 -4920 7241 4402 7204 5319 -4921 4995 5934 184 185 -4922 6781 4255 6082 5277 -4923 113 6478 5933 112 -4924 5965 5655 5959 4546 -4925 5225 7288 6779 5224 -4926 4441 6110 6380 4989 -4927 4077 5466 4541 6129 -4928 5611 6267 5670 4359 -4929 4306 5561 4699 5736 -4930 5633 4790 7397 6063 -4931 5122 141 142 6915 -4932 5726 3958 7399 5233 -4933 4107 5583 4568 6101 -4934 4328 7216 5079 7360 -4935 5650 4160 6596 6151 -4936 6666 6039 4840 5001 -4937 5797 4098 6471 5624 -4938 6136 4584 5960 5715 -4939 6616 6559 7114 4636 -4940 5764 3855 5941 5359 -4941 5152 3922 5916 5373 -4942 7424 4376 6812 5237 -4943 5181 7428 4274 7445 -4944 4677 6141 4550 5774 -4945 7008 7300 6006 3954 -4946 5322 6114 5468 4284 -4947 3931 5837 7333 5427 -4948 7043 5256 6979 4652 -4949 6037 4461 6084 5285 -4950 3852 6951 5108 6531 -4951 5111 3899 6093 6690 -4952 4731 5644 3945 6538 -4953 7196 5754 7376 4964 -4954 5294 4059 5795 5618 -4955 5677 3982 7318 5385 -4956 6410 5276 6479 4429 -4957 6059 6273 6274 4724 -4958 6969 4230 6696 5228 -4959 7393 5238 6548 4495 -4960 4288 5235 4097 6807 -4961 4615 5180 7427 6771 -4962 4546 5842 4467 5965 -4963 5456 5230 7173 4047 -4964 5366 6024 5325 4377 -4965 5665 4043 7176 5568 -4966 5668 4023 7352 5320 -4967 7162 5733 5601 4367 -4968 4327 6467 4664 6199 -4969 6678 5232 6645 3904 -4970 4299 5622 4618 6201 -4971 5985 5310 7049 4417 -4972 3926 5007 7455 5538 -4973 7326 4669 5778 4420 -4974 7042 5734 6117 4634 -4975 5376 5240 6706 4319 -4976 5673 4086 6306 5311 -4977 5729 4494 6631 5239 -4978 5379 5535 7309 4069 -4979 5024 6763 5937 6011 -4980 6160 5512 7328 4650 -4981 6972 5400 4397 5399 -4982 6478 113 6834 5252 -4983 6400 4257 6069 5335 -4984 4666 6120 3960 5779 -4985 4276 5859 4708 5449 -4986 5529 5242 6557 3916 -4987 4257 5280 6535 4620 -4988 4837 6251 4786 5498 -4989 5130 4362 7330 6808 -4990 5842 4546 5888 5417 -4991 5150 4296 5573 5920 -4992 4342 5589 5240 7486 -4993 155 6197 4542 5314 -4994 5914 4543 6198 5315 -4995 4074 6925 4289 5485 -4996 4250 7260 7472 5328 -4997 6694 4560 6594 5244 -4998 5921 5364 7295 4407 -4999 5785 4453 6563 5290 -5000 5552 5303 6124 4490 -5001 6789 6692 5997 6603 -5002 5330 7439 5257 4284 -5003 6691 4569 6478 5252 -5004 5067 6514 5421 3895 -5005 4480 6493 5789 5338 -5006 4555 5413 6512 4787 -5007 5732 6645 5814 6703 -5008 5374 4499 6509 5829 -5009 6999 5428 6565 3887 -5010 5221 4446 6729 5346 -5011 3884 5750 4752 6698 -5012 6462 4535 6741 5253 -5013 5855 4552 6294 4094 -5014 4169 5799 4673 6127 -5015 4005 5722 6815 6291 -5016 5643 5253 6741 3870 -5017 4657 5358 4281 6866 -5018 4452 5747 4500 5767 -5019 4507 6358 7051 5737 -5020 5352 5719 4898 7287 -5021 5982 3913 6600 5261 -5022 6197 5261 6600 4542 -5023 5486 5262 6601 3914 -5024 6198 4543 6601 5262 -5025 5638 5637 5880 4529 -5026 5544 4396 6140 5510 -5027 7309 5326 6353 4069 -5028 6821 4162 6324 5446 -5029 4849 6845 4993 5691 -5030 4819 6530 4596 6447 -5031 7156 5308 7212 3936 -5032 4715 5720 4268 6989 -5033 5764 5284 6403 3855 -5034 6481 4831 7448 5349 -5035 5541 5349 7448 3996 -5036 4164 5810 4936 6813 -5037 5362 6684 4611 6770 -5038 5429 5326 7309 4381 -5039 4302 5471 4923 5915 -5040 7439 5330 7354 4866 -5041 4085 5085 6605 6437 -5042 4929 4297 7305 6152 -5043 5344 5343 6069 4257 -5044 5393 4391 7239 5313 -5045 4900 5884 7100 6480 -5046 6359 4788 6416 5654 -5047 4500 5747 4086 5673 -5048 4302 5915 5398 6177 -5049 4986 6165 3889 7422 -5050 6147 5507 5836 4168 -5051 4724 6274 3977 6218 -5052 7414 7488 4433 6066 -5053 4599 6202 4147 5610 -5054 4533 6929 4818 6104 -5055 6885 3911 6220 5300 -5056 6908 4417 7049 5354 -5057 4011 6142 5119 6341 -5058 6321 5336 7374 4922 -5059 6795 5388 6053 3915 -5060 7294 3902 6413 5284 -5061 6403 5284 6413 4501 -5062 6616 4636 6147 5696 -5063 7423 4033 6154 5323 -5064 4988 4267 6774 5266 -5065 4070 5556 4499 6134 -5066 4469 6259 7383 6074 -5067 5058 4550 6591 6183 -5068 7004 4632 6936 5278 -5069 5531 3870 6741 5267 -5070 3918 4874 6719 5420 -5071 3871 5388 7167 5883 -5072 6454 3908 6744 5267 -5073 5006 6482 4078 6484 -5074 6454 5267 6741 4535 -5075 6315 5283 6329 4245 -5076 5179 4490 6124 7372 -5077 4257 6400 4815 5280 -5078 5210 6137 5350 4505 -5079 122 5350 6137 121 -5080 4358 5034 7047 5834 -5081 4751 6105 4191 6722 -5082 6683 3871 6270 5397 -5083 6708 5636 6940 4370 -5084 6683 5397 3926 5984 -5085 5366 4377 7341 6568 -5086 5153 6980 5174 7366 -5087 6192 6677 5799 4169 -5088 4869 6656 3985 7064 -5089 6579 5270 7003 4613 -5090 6035 5269 6691 3903 -5091 6973 5419 3872 5958 -5092 3962 5283 6950 4902 -5093 4172 5273 4851 6736 -5094 5172 7067 191 192 -5095 4705 6321 4221 7335 -5096 4301 5357 6431 5635 -5097 4993 5521 5889 4072 -5098 4452 5711 4086 5747 -5099 5335 6069 6080 4434 -5100 5621 4046 7462 5277 -5101 5211 6010 6312 4318 -5102 6295 5457 6534 3971 -5103 4064 7059 4838 6797 -5104 5336 5802 4383 7374 -5105 5225 6894 5765 7288 -5106 6589 4649 7054 5458 -5107 5152 5373 7097 4424 -5108 7209 3935 6535 5280 -5109 6479 5276 6640 3882 -5110 6410 3905 6641 5276 -5111 4602 5641 4149 6333 -5112 4575 6008 4225 5723 -5113 6237 4091 7396 5329 -5114 4177 5967 4993 6845 -5115 4022 7085 4996 6175 -5116 5665 4446 7083 5328 -5117 4456 4967 6595 5968 -5118 6570 3917 6909 4720 -5119 7089 4846 7292 5554 -5120 4600 5955 5183 6828 -5121 4749 5791 4530 5792 -5122 4045 7421 6114 5322 -5123 7456 4883 7007 5683 -5124 4046 6540 4703 5669 -5125 5088 7135 4029 7213 -5126 4943 3915 6053 5426 -5127 4369 6460 4045 5322 -5128 4339 5552 6040 7057 -5129 5237 6282 4531 6993 -5130 5825 5300 7450 3869 -5131 5308 5785 4859 7212 -5132 4048 4913 7211 7172 -5133 3977 6274 4725 6249 -5134 5263 6060 4496 6692 -5135 5017 6593 3961 5849 -5136 5319 7204 6060 4256 -5137 7103 5231 7079 4388 -5138 3916 6001 4622 5428 -5139 7188 5361 6294 5030 -5140 5729 5340 7262 4103 -5141 5541 5994 6224 4387 -5142 5207 4364 5633 6063 -5143 4989 5657 6336 4441 -5144 6544 5526 6068 4311 -5145 6388 4018 7049 5310 -5146 4439 5520 4025 5911 -5147 7423 5323 7139 4836 -5148 5030 6159 4240 7069 -5149 4192 5200 7281 6028 -5150 4464 7373 3854 5337 -5151 6306 5918 5503 4324 -5152 7426 4669 7326 5317 -5153 6225 5159 7401 4563 -5154 5292 5291 6619 4054 -5155 5825 4395 6885 5300 -5156 6774 4267 6335 5500 -5157 6024 5366 6181 4667 -5158 5037 6771 4199 6511 -5159 5521 4439 5542 5889 -5160 5396 7164 4841 7061 -5161 4546 5959 4109 5888 -5162 4808 5793 4172 6736 -5163 5103 7234 4992 6328 -5164 7177 4422 6170 4758 -5165 5091 5710 5859 4276 -5166 4028 5816 4530 5791 -5167 6887 5320 6824 4599 -5168 3950 7162 4830 6756 -5169 5995 5352 7287 3907 -5170 3941 6997 4903 7299 -5171 5175 5333 7172 4301 -5172 6700 5324 7404 4315 -5173 6924 4031 6009 4516 -5174 4411 6850 5073 5592 -5175 4954 6545 3874 6816 -5176 6401 4515 6211 5362 -5177 4265 6135 4544 6572 -5178 5049 7282 4998 5353 -5179 4834 7399 3958 5878 -5180 4861 6623 4197 6855 -5181 5334 6042 6770 4611 -5182 6738 4481 7262 5340 -5183 4512 6108 3889 6165 -5184 6426 5312 6960 4780 -5185 5116 3872 5419 6290 -5186 4728 3947 5040 5039 -5187 4165 5761 4532 6251 -5188 5535 5379 7486 4368 -5189 5711 4452 5930 5743 -5190 5541 4328 7360 5349 -5191 5324 6118 4506 7404 -5192 6278 4745 7186 4208 -5193 5971 5418 6204 4331 -5194 5497 4360 6992 5533 -5195 5264 5453 7110 4327 -5196 5093 5342 6369 4479 -5197 5985 4251 6888 5310 -5198 5311 4463 5847 5673 -5199 3963 5892 7353 5381 -5200 4431 5797 4561 5796 -5201 6048 5386 6150 4413 -5202 6068 5470 6430 4311 -5203 6469 5344 6702 4080 -5204 5794 5363 7322 4291 -5205 6780 5067 5910 7319 -5206 5555 5487 6908 4060 -5207 6641 5465 7048 4570 -5208 4710 5435 4227 6517 -5209 6493 5339 6738 3944 -5210 6306 4324 7333 5311 -5211 5802 5336 7231 4153 -5212 7239 3956 6607 5313 -5213 6953 5514 6986 4762 -5214 6110 4441 7396 6111 -5215 5013 6485 6009 4031 -5216 6308 5347 7206 4305 -5217 6782 5664 5906 3962 -5218 5990 5317 7326 4137 -5219 6648 4742 5327 7145 -5220 4001 6509 4921 6564 -5221 5080 6769 182 183 -5222 5665 5328 7472 4043 -5223 4917 5931 6405 4458 -5224 5150 5703 6739 3953 -5225 4538 5815 4477 5835 -5226 4608 6206 3973 6213 -5227 7470 7191 5777 5184 -5228 4146 6465 4867 6287 -5229 5277 6082 4579 5621 -5230 4637 6007 4439 5911 -5231 5567 6907 5392 3921 -5232 4101 5543 4664 6467 -5233 5382 5819 4387 6224 -5234 5379 4069 6759 5318 -5235 5578 4418 5856 6799 -5236 5700 5699 5847 4463 -5237 5170 4102 5275 5169 -5238 4147 6202 4903 6366 -5239 5699 5700 6256 4436 -5240 5201 5479 4074 6715 -5241 6629 5357 7211 4217 -5242 3912 5356 7183 5151 -5243 6117 5734 5946 4538 -5244 6347 4732 7489 5330 -5245 5855 5382 6224 4552 -5246 5912 4415 5015 4951 -5247 4288 6807 4575 5723 -5248 5385 4593 5974 5677 -5249 6628 4392 6539 5331 -5250 7194 4922 7374 5950 -5251 4931 5523 3864 6829 -5252 3869 4948 7032 5825 -5253 6324 5339 6493 4480 -5254 143 144 7464 5554 -5255 4971 5806 5807 4345 -5256 4155 7242 4870 6375 -5257 6681 4343 5390 7474 -5258 6467 4327 7110 5494 -5259 6019 5455 6487 4572 -5260 4993 4072 5998 5691 -5261 4463 5837 3931 5700 -5262 4705 7231 5336 6321 -5263 6629 4729 6431 5357 -5264 3944 5365 7233 5049 -5265 5842 5417 6149 4027 -5266 4393 5869 4108 5645 -5267 5337 3854 6628 5331 -5268 5048 7235 4242 7233 -5269 6121 7115 6207 4296 -5270 5581 4084 5709 5863 -5271 4550 5058 7379 6311 -5272 6767 5414 6982 4678 -5273 4764 5363 5794 7148 -5274 4636 6101 4568 6147 -5275 5423 5341 6927 4628 -5276 6572 4094 6927 5341 -5277 5043 4687 6381 6214 -5278 4057 5368 7235 5048 -5279 4448 5515 4577 5756 -5280 5769 5655 5965 4084 -5281 5607 4078 6766 5557 -5282 4555 5057 6775 5414 -5283 3990 6444 7405 5525 -5284 5257 6255 5787 4369 -5285 6870 4400 7441 5391 -5286 5894 3883 6693 5334 -5287 6042 5334 6694 3906 -5288 3999 5886 4723 6742 -5289 6447 4035 6789 5332 -5290 6571 5295 6923 4443 -5291 5591 5847 5699 4096 -5292 5175 4301 5635 6005 -5293 5387 4354 7022 5430 -5294 4287 5548 4899 7415 -5295 5151 6355 6684 3912 -5296 4423 5574 4097 6032 -5297 7335 5813 6376 4705 -5298 4940 5519 6993 4531 -5299 5774 4133 6760 7105 -5300 7262 4481 7454 5375 -5301 5676 5820 6431 4729 -5302 5829 5372 7251 4330 -5303 4471 5623 4159 5907 -5304 4217 6804 4406 5491 -5305 5156 6679 3959 6568 -5306 180 181 7045 5538 -5307 4290 6429 4607 6428 -5308 6727 4339 7057 5350 -5309 6483 4609 6340 5415 -5310 4103 5955 4494 5729 -5311 4641 6155 4003 5823 -5312 5331 4363 7039 5337 -5313 4818 6257 5391 7441 -5314 3871 6683 6053 5388 -5315 4247 7227 4796 5738 -5316 6190 4810 6098 7028 -5317 7228 5279 6946 4408 -5318 6196 4481 6738 5339 -5319 6210 4030 6429 5371 -5320 4396 5441 3981 6140 -5321 4259 5928 5113 7467 -5322 5067 6780 3862 6243 -5323 3946 5738 4796 6825 -5324 4352 5770 7381 5087 -5325 4268 5720 5076 7256 -5326 4820 5850 4365 5725 -5327 5992 4581 6076 5645 -5328 3857 5316 6926 5909 -5329 6690 6093 6427 5045 -5330 4095 5851 4530 5939 -5331 4495 5905 4601 5991 -5332 6033 4436 6472 5534 -5333 6812 5430 7022 4136 -5334 6132 5408 6232 4660 -5335 7373 5403 6773 3854 -5336 6475 4605 6773 5403 -5337 5854 4028 5791 5943 -5338 6265 5434 6620 3927 -5339 4494 5955 4600 5906 -5340 6925 4074 6030 5566 -5341 6004 5863 5709 4468 -5342 7189 5032 6302 5455 -5343 6487 5455 6302 4119 -5344 7074 4183 6632 5351 -5345 4100 5542 4439 6007 -5346 4210 5688 5009 7428 -5347 6718 5395 6293 4188 -5348 5814 5377 6633 4547 -5349 6582 4621 6988 5346 -5350 5194 6911 4258 6404 -5351 5191 4696 6649 6580 -5352 6747 5347 7276 3929 -5353 6669 7417 6162 3858 -5354 5435 5436 7249 4227 -5355 5764 5359 7032 4429 -5356 6181 5468 6114 4667 -5357 3936 7212 4859 6707 -5358 6361 4163 7323 5383 -5359 7237 5383 7323 4767 -5360 7192 4848 6935 5354 -5361 4514 6236 4286 5480 -5362 5512 6160 5662 4448 -5363 5970 6088 5902 4517 -5364 4374 4890 6894 5609 -5365 7227 4247 6581 5993 -5366 4319 7386 4050 5376 -5367 5984 5396 5012 7440 -5368 4967 4456 5555 6064 -5369 7251 5372 6508 4526 -5370 5921 4100 7190 5364 -5371 6852 5596 6145 4737 -5372 5995 4597 6875 5352 -5373 4709 7430 5619 5149 -5374 5719 5352 6875 3878 -5375 3906 7278 4976 5893 -5376 4627 5683 3994 6761 -5377 3850 6115 4512 5585 -5378 4143 6374 4711 6963 -5379 5410 7157 4080 6702 -5380 5514 6953 4201 6947 -5381 5217 6300 5705 4340 -5382 6155 4641 6938 5375 -5383 4938 5687 4033 6116 -5384 3880 6448 7289 5839 -5385 6167 5390 7342 4773 -5386 5716 4138 7342 5390 -5387 5246 6419 5622 3968 -5388 5165 7433 6125 4509 -5389 5833 4047 6858 5358 -5390 4877 6731 4233 6837 -5391 3926 5397 7420 5007 -5392 5390 4343 6234 5716 -5393 7271 6587 5532 5161 -5394 6011 5464 6590 4070 -5395 4421 7024 3866 5370 -5396 6317 5374 6511 4199 -5397 5384 6213 5739 4606 -5398 5203 4717 6526 3964 -5399 7071 4882 5206 3937 -5400 5230 5872 4775 7173 -5401 5490 7492 4219 5753 -5402 6156 5409 7481 4860 -5403 6294 5361 6927 4094 -5404 5761 5518 6286 4532 -5405 5307 4507 7242 6116 -5406 6401 5362 6770 3863 -5407 4359 5670 4118 6232 -5408 4972 6576 5191 3995 -5409 5982 7191 7470 3913 -5410 7249 5436 7279 4447 -5411 3910 4955 6500 5378 -5412 6870 6319 6017 4400 -5413 7235 5368 6708 4670 -5414 4983 4476 6604 5405 -5415 4237 6368 4482 5404 -5416 5680 5917 5927 5679 -5417 5916 3865 7097 5373 -5418 5285 6084 197 198 -5419 5097 4009 7303 5094 -5420 4864 7257 4513 6513 -5421 6204 5418 6642 4962 -5422 5665 4399 6465 5606 -5423 6110 6111 5879 4092 -5424 5264 4327 6199 5707 -5425 5520 6327 5592 4025 -5426 4886 6193 4454 6194 -5427 7438 5403 7373 4464 -5428 4617 5956 3876 5648 -5429 5945 5496 6563 4453 -5430 4482 6368 5282 7161 -5431 4775 5872 4120 6547 -5432 5769 4539 5959 5655 -5433 5596 3980 5975 5978 -5434 6544 5504 7364 4449 -5435 6157 4180 6435 5493 -5436 4423 6032 4650 5590 -5437 4282 6036 4977 6884 -5438 6345 4168 5836 6704 -5439 5665 5568 6652 4399 -5440 4074 5485 5167 6998 -5441 7375 4337 6064 5555 -5442 6291 5660 6394 4616 -5443 4362 5505 6779 4984 -5444 4017 6931 4958 5948 -5445 5899 5750 6820 4371 -5446 5490 5753 5900 4401 -5447 5819 5382 6685 4063 -5448 6434 6822 5977 3989 -5449 5813 3931 5427 6376 -5450 3893 7058 4846 7089 -5451 3959 6778 5005 6184 -5452 6718 7268 4322 5395 -5453 5387 5430 6812 4376 -5454 5665 5606 6729 4446 -5455 3865 5916 4542 5740 -5456 5859 5710 6113 4450 -5457 4071 7137 6895 5513 -5458 3887 6119 5077 6999 -5459 5625 5502 6162 4502 -5460 5120 6067 4805 7170 -5461 5604 4444 5380 6701 -5462 4773 5908 4373 7023 -5463 5081 6673 4211 6473 -5464 4267 4861 6049 6335 -5465 7318 4835 7185 5385 -5466 5882 5881 4529 5880 -5467 5753 4648 5401 5900 -5468 5983 3988 6616 7214 -5469 5297 4474 5925 7429 -5470 5855 4544 6685 5382 -5471 5929 4437 5718 6354 -5472 6059 4174 6585 6273 -5473 6924 4516 6262 4293 -5474 5060 5892 4457 7269 -5475 6237 4442 6412 6239 -5476 6238 6239 6412 5029 -5477 4780 6960 4379 5630 -5478 7274 7409 6556 5025 -5479 3989 5977 4655 6073 -5480 5814 3878 6875 5377 -5481 6578 5377 6875 4597 -5482 5480 5500 6335 4514 -5483 5375 6938 4103 7262 -5484 7223 4914 6005 5635 -5485 4109 5959 4539 5778 -5486 5172 192 193 6158 -5487 6150 5386 7113 4195 -5488 5313 4300 6603 5393 -5489 5099 6043 4946 7153 -5490 7460 6148 7150 6971 -5491 4073 5830 6921 5524 -5492 6702 4620 6867 5410 -5493 6014 4248 6751 5416 -5494 6126 6854 3910 5378 -5495 7155 4970 5532 6299 -5496 5547 7361 5961 4484 -5497 5541 3996 5805 5994 -5498 5381 4484 5961 4613 -5499 5679 5927 5928 4259 -5500 4002 6179 4475 5533 -5501 6088 5970 6458 4722 -5502 4553 5765 7129 6545 -5503 6867 4206 7205 5410 -5504 4549 5887 4482 5804 -5505 6754 5822 7228 4408 -5506 4473 5658 6690 5045 -5507 6618 4726 6560 5405 -5508 4670 6488 4242 7235 -5509 5316 4763 5639 6926 -5510 3972 6649 4696 6573 -5511 5329 5870 4442 6237 -5512 5083 6841 4774 6319 -5513 4651 7369 6162 5502 -5514 6156 4694 7127 5409 -5515 6414 5409 7127 4024 -5516 6486 4121 5715 5960 -5517 4084 5965 4467 5709 -5518 6617 5549 6133 4213 -5519 4871 6180 4572 6487 -5520 5225 6672 6561 3861 -5521 5594 5389 7026 4418 -5522 5508 4488 6241 5509 -5523 4639 6710 4003 5874 -5524 6020 4450 6113 5575 -5525 4873 6412 4442 6502 -5526 7382 4006 7332 5407 -5527 4290 5462 6675 4990 -5528 6897 4470 5865 7174 -5529 6998 5682 6715 4074 -5530 4629 5978 4584 5702 -5531 7044 7031 4285 5537 -5532 7219 4899 6711 5454 -5533 4980 5731 4030 6210 -5534 6961 5401 7418 4322 -5535 5984 3926 7164 5396 -5536 6811 4927 5666 7087 -5537 6849 4844 6966 6952 -5538 4346 4921 5556 4906 -5539 4606 6917 5940 5384 -5540 4990 5723 4225 7435 -5541 4915 5896 4891 6650 -5542 5768 5421 6514 4485 -5543 5420 6209 5523 3918 -5544 4487 5948 7193 6289 -5545 7124 4293 6262 5488 -5546 7300 5691 5998 4451 -5547 5640 5112 7460 6971 -5548 4722 6458 4604 6310 -5549 5510 4121 6174 5544 -5550 5428 6999 4733 7035 -5551 4330 5605 5037 6511 -5552 5089 3885 6016 5674 -5553 4871 6528 4714 6892 -5554 6606 3979 6451 5467 -5555 6810 4541 5467 6451 -5556 4486 5697 4643 6486 -5557 3910 6854 4651 5502 -5558 5888 4603 7000 5417 -5559 6620 5434 6470 4595 -5560 4914 7301 4454 6193 -5561 5409 6414 4537 7481 -5562 4943 5426 6669 3858 -5563 4754 5704 6895 7137 -5564 7157 5410 7205 4523 -5565 5905 5663 6455 3967 -5566 6181 4122 6347 5468 -5567 5346 6729 4146 6582 -5568 193 5727 4547 6158 -5569 4985 5569 7458 4335 -5570 4452 6872 4824 5930 -5571 5795 4469 6496 5618 -5572 119 5501 6398 118 -5573 4228 6492 4746 5903 -5574 5588 5431 6551 4372 -5575 3980 5752 4486 5975 -5576 6216 4567 5904 5096 -5577 5960 4584 5978 5975 -5578 6754 4811 6850 5822 -5579 4465 6271 7178 5288 -5580 7028 4209 5986 6190 -5581 5987 4685 6190 5986 -5582 4512 6165 4488 5585 -5583 7255 5943 5791 4749 -5584 6279 5584 6384 4108 -5585 4474 5297 7222 6290 -5586 3902 7294 5651 5444 -5587 6422 5369 4042 7095 -5588 5913 6233 5827 4190 -5589 6308 4305 7215 5411 -5590 4332 7046 4776 6583 -5591 6586 6352 5562 4975 -5592 5596 6852 5708 3980 -5593 4032 5548 4635 6212 -5594 5947 4879 4044 6052 -5595 4362 5130 5580 5505 -5596 5978 4629 6145 5596 -5597 4436 6033 4096 5699 -5598 5386 6048 3934 6902 -5599 5709 5817 5939 4468 -5600 4468 5939 4530 5816 -5601 5697 4486 5752 4130 -5602 4983 7263 5846 4476 -5603 4061 5452 7476 4858 -5604 5378 3875 5616 6126 -5605 4787 4573 5206 4115 -5606 6821 5446 6536 4750 -5607 7091 5692 6500 4355 -5608 4909 5919 5015 6957 -5609 6739 6222 5853 3953 -5610 6104 5754 7196 4161 -5611 6829 6070 6873 4492 -5612 6367 6356 6211 4515 -5613 5792 4530 5851 6022 -5614 5828 7437 5235 5451 -5615 5969 6230 6892 4714 -5616 5613 4034 5954 6622 -5617 4292 6313 4907 7238 -5618 6015 5472 6787 4607 -5619 7365 4088 6787 5472 -5620 7397 4790 6566 5450 -5621 4320 6562 4646 5687 -5622 4141 6026 4520 6518 -5623 4202 6310 5064 6418 -5624 5611 3961 6593 6267 -5625 6014 5416 7171 5125 -5626 4682 5572 4724 6218 -5627 5843 4412 6534 5457 -5628 6797 7068 6049 4064 -5629 6642 5418 7046 4332 -5630 5500 5480 6414 4024 -5631 7431 5075 6758 5608 -5632 4372 6551 4813 6937 -5633 7325 5160 6407 7363 -5634 5483 7348 5019 6115 -5635 3949 4049 4893 4721 -5636 5297 7429 146 147 -5637 5680 4225 6008 5917 -5638 6986 5514 6351 3950 -5639 5930 4088 7269 5743 -5640 4513 6094 3889 6108 -5641 4727 6065 4460 6252 -5642 6437 6605 5477 4349 -5643 5920 5573 7078 4745 -5644 7062 4476 5846 4598 -5645 5244 7278 3906 6694 -5646 6037 4315 7404 5511 -5647 5180 4002 5706 6763 -5648 6811 7087 5423 4066 -5649 4711 4640 5598 6903 -5650 4935 6471 5970 4517 -5651 6399 5486 6227 4583 -5652 4540 6813 4936 6457 -5653 7287 5447 7347 3907 -5654 4576 5949 4608 6057 -5655 5298 6092 4111 5760 -5656 5659 4800 6933 6450 -5657 6283 5493 6435 4459 -5658 4915 6650 4788 5641 -5659 5525 5650 6151 4386 -5660 5529 3916 5428 7035 -5661 5402 5070 6808 7330 -5662 7147 4007 6323 7487 -5663 5981 5675 6108 4512 -5664 7420 5926 7455 5007 -5665 6266 4624 6025 6026 -5666 6316 5496 6440 4559 -5667 5434 187 188 6470 -5668 5235 4288 6675 5451 -5669 6796 134 135 7433 -5670 3951 7107 4924 5432 -5671 4924 7107 4925 5808 -5672 4157 7014 4911 6255 -5673 4335 5571 6404 4985 -5674 5287 4101 6467 5494 -5675 5750 3884 5952 6820 -5676 4879 4518 4216 4044 -5677 4427 5672 7176 6045 -5678 4451 5998 4603 5895 -5679 4536 6083 3938 5742 -5680 5826 7410 6590 5464 -5681 5563 6901 5564 4320 -5682 3877 5224 6779 5505 -5683 6185 4656 6896 5450 -5684 6661 6021 6626 4820 -5685 5477 6050 6917 4606 -5686 4653 6438 4759 6018 -5687 6146 5447 6773 4605 -5688 4097 6160 4650 6032 -5689 5395 4322 7418 5460 -5690 4913 4048 6784 6804 -5691 6344 4470 6107 5695 -5692 4379 4961 6389 5539 -5693 6044 6611 6598 4128 -5694 4874 3918 6519 5540 -5695 6071 6183 6591 4692 -5696 5264 5707 4095 6712 -5697 4089 5690 4630 6687 -5698 5083 6689 4969 5821 -5699 6584 5689 6663 4666 -5700 6591 4131 6663 5689 -5701 4868 6120 4666 6663 -5702 4028 6004 4468 5816 -5703 5242 5529 3855 6403 -5704 6949 5801 7181 3894 -5705 5338 4356 7393 5730 -5706 6166 5597 6252 4460 -5707 6928 4549 5804 6059 -5708 5235 5662 6160 4097 -5709 6218 6247 5963 4682 -5710 4323 7106 4134 5438 -5711 5283 6315 4559 6950 -5712 5164 6874 7202 5866 -5713 3873 6051 7183 5356 -5714 7349 4967 6064 5760 -5715 5298 5760 6064 4337 -5716 5120 6014 4426 7306 -5717 5324 107 108 6118 -5718 5797 5624 6397 4561 -5719 4189 5014 6720 5790 -5720 4601 5597 6166 7001 -5721 4914 6193 6609 4151 -5722 4030 6015 4607 6429 -5723 4352 6366 4903 6997 -5724 4784 5897 4183 6506 -5725 4877 7092 5598 5798 -5726 6455 5663 6548 4383 -5727 4869 6665 4707 6737 -5728 193 194 6703 5727 -5729 4706 7358 5342 6798 -5730 6536 5446 7029 4766 -5731 7287 4898 7388 5447 -5732 4121 6486 4643 6174 -5733 7219 5454 7482 4184 -5734 6316 6194 6563 5496 -5735 4739 5865 4470 6344 -5736 6852 4737 6345 6704 -5737 5830 4283 6824 7377 -5738 6430 5504 6544 4311 -5739 6147 4568 6541 5507 -5740 6154 5478 6634 4367 -5741 4375 5243 6956 3919 -5742 5369 6422 4390 6054 -5743 4980 6210 4394 7327 -5744 4632 5827 6761 6936 -5745 6791 6041 6103 4554 -5746 5779 3960 6993 5519 -5747 6649 4743 4126 6580 -5748 6345 5696 6147 4168 -5749 4893 6013 5809 4897 -5750 5109 7063 6399 4583 -5751 6644 4114 5097 5094 -5752 4427 5877 4708 5988 -5753 6584 4318 7094 5689 -5754 5603 6476 6805 3991 -5755 7134 5461 7244 4886 -5756 4113 5617 4774 6841 -5757 5210 120 121 6137 -5758 5709 4467 6712 5817 -5759 6682 5474 6949 4638 -5760 5192 5721 4466 7461 -5761 4496 5784 7026 5389 -5762 7281 4404 6027 6028 -5763 4062 7494 4941 6010 -5764 4987 6865 4694 6208 -5765 5639 4380 5909 6926 -5766 4197 6346 4565 5678 -5767 4416 5107 5015 4415 -5768 6106 5458 7054 4090 -5769 5201 4292 7238 5479 -5770 4483 6285 7141 5603 -5771 5317 5990 6079 4590 -5772 5289 6513 5675 3879 -5773 4657 6866 5062 6388 -5774 6877 4058 6664 5503 -5775 5604 6701 7031 7044 -5776 4633 7182 3974 5128 -5777 6510 4688 6304 5946 -5778 5177 116 117 7286 -5779 4336 5616 4519 6320 -5780 6430 5470 6881 4582 -5781 5498 4067 5499 4404 -5782 5815 4538 5946 6304 -5783 4423 5848 7229 5574 -5784 4073 6659 4635 5944 -5785 5072 5553 7205 4206 -5786 4078 5607 4565 6484 -5787 5288 5926 7420 4465 -5788 5366 4777 7005 6181 -5789 7427 5024 6134 6317 -5790 4814 6424 4589 6339 -5791 4266 5082 6483 5793 -5792 4892 6235 4628 6630 -5793 6154 4646 7337 5478 -5794 5335 4139 7284 6400 -5795 4289 6163 4802 7086 -5796 6612 6541 5803 3945 -5797 4474 5053 7464 5925 -5798 5167 7239 4391 6998 -5799 6299 5532 6587 4135 -5800 3996 6876 4432 5805 -5801 5267 6744 5022 5531 -5802 4201 5736 4699 6947 -5803 5298 4534 6489 6092 -5804 5582 3924 5482 6853 -5805 6385 6474 6127 4673 -5806 6157 5493 6968 4760 -5807 7249 4447 7112 5473 -5808 6473 6002 6929 4533 -5809 4217 7211 4913 6804 -5810 6241 3873 7479 5509 -5811 5296 5182 4829 5653 -5812 4067 5498 4413 7200 -5813 5261 6197 155 156 -5814 5315 6198 168 169 -5815 4124 5545 4769 6697 -5816 3853 5540 4558 6599 -5817 5939 5817 6712 4095 -5818 6640 5646 7334 3882 -5819 7119 5046 6074 7055 -5820 6398 5501 6802 4592 -5821 5500 6061 6019 6774 -5822 6132 4872 7310 6187 -5823 6383 5972 6031 4104 -5824 4551 6456 4884 6716 -5825 4677 6123 4131 6141 -5826 5542 4100 5921 6786 -5827 4487 6886 5537 5192 -5828 7056 4417 6908 5487 -5829 4879 5947 7451 6941 -5830 6634 5478 7337 4134 -5831 5517 5716 6234 4508 -5832 5486 6399 165 166 -5833 6275 4333 5203 3964 -5834 5683 7007 5492 3994 -5835 6710 4751 5546 6592 -5836 5671 3966 6959 5527 -5837 4640 4234 5798 5598 -5838 178 179 7455 5926 -5839 5611 5612 7157 4523 -5840 4986 6051 3873 6241 -5841 6103 6041 5953 4644 -5842 5106 6269 5678 4565 -5843 5114 7062 3966 5832 -5844 3884 6698 4314 5530 -5845 4148 4992 7492 5490 -5846 6474 5681 6276 4645 -5847 5110 6271 4465 6270 -5848 5852 6838 5508 3925 -5849 5716 5517 6828 4138 -5850 5505 5580 6967 3877 -5851 4367 6634 4830 7162 -5852 6942 4062 7364 5504 -5853 5918 4435 6877 5503 -5854 5484 5759 5882 4528 -5855 4880 7408 4240 6159 -5856 5545 4823 6386 4770 -5857 4828 7184 4152 5945 -5858 6913 5511 7404 4506 -5859 4757 7160 4171 6393 -5860 4925 6939 4161 5808 -5861 4169 6055 4663 6192 -5862 7497 4085 7168 5614 -5863 4106 6117 4538 5835 -5864 5184 5777 6693 3883 -5865 5622 6419 6217 4618 -5866 4064 5495 4350 7059 -5867 4492 5243 5302 7034 -5868 5196 6120 4868 7180 -5869 4933 7496 4030 5731 -5870 7044 4087 6775 5604 -5871 3924 5582 4574 6624 -5872 5386 6902 4684 7113 -5873 5991 5730 7393 4495 -5874 6451 4929 6152 6810 -5875 4206 5615 6660 5072 -5876 6263 5623 6444 4661 -5877 4085 7497 5222 5871 -5878 5141 4581 5992 6023 -5879 5245 3867 5511 6913 -5880 5258 6312 7014 4157 -5881 5424 7308 5934 4995 -5882 6174 4643 6494 5811 -5883 5251 7140 4860 7253 -5884 7449 7372 127 128 -5885 5591 4403 7437 5828 -5886 6828 5517 7419 4600 -5887 5905 4495 6548 5663 -5888 4069 6353 4876 6759 -5889 6666 5001 6882 6242 -5890 4994 4545 6242 6882 -5891 5091 6495 5840 4658 -5892 6274 6273 6585 4725 -5893 5387 6971 7150 5506 -5894 7025 6695 5560 4852 -5895 6393 5560 6695 5400 -5896 4784 6837 4233 5897 -5897 4324 5503 6664 7036 -5898 4378 7297 5728 5325 -5899 7223 5635 6431 3987 -5900 6351 5514 6947 4699 -5901 4979 133 134 6796 -5902 5144 7277 5628 7412 -5903 5294 5618 6496 4364 -5904 4989 6380 6381 4687 -5905 5807 4612 4026 5066 -5906 5123 5833 6888 4251 -5907 5462 7266 6872 3986 -5908 5650 5525 7405 4471 -5909 4962 6981 4963 6204 -5910 5115 4570 7048 6373 -5911 4170 7018 4946 6043 -5912 5301 7201 4310 6621 -5913 4177 6208 4694 6156 -5914 5889 5542 6786 4438 -5915 6436 4156 6344 5695 -5916 6472 4105 6846 5534 -5917 5005 5524 6921 4291 -5918 4928 7218 4213 6922 -5919 3974 5304 4511 5128 -5920 4629 6044 4128 6145 -5921 7345 7410 6085 5155 -5922 5805 4552 6224 5994 -5923 5177 7286 6398 4592 -5924 6215 5576 6990 4578 -5925 7078 5573 6711 4032 -5926 5115 4353 6464 5646 -5927 4244 5786 6709 5054 -5928 4336 7090 6126 5616 -5929 4407 5190 6786 5921 -5930 6320 5570 6748 4336 -5931 5552 4490 5758 7126 -5932 5031 7277 5144 7320 -5933 5162 196 197 7380 -5934 6730 4235 4178 4389 -5935 5006 6346 4988 5558 -5936 5122 6405 140 141 -5937 4493 6466 4158 5660 -5938 4677 6995 4956 6123 -5939 5465 7449 128 129 -5940 4117 6240 4489 5867 -5941 5700 3931 5813 6256 -5942 6033 5534 7357 4577 -5943 5250 5929 6407 4262 -5944 4107 6421 7341 5728 -5945 4068 6835 4385 5562 -5946 4141 6518 4619 5693 -5947 5656 6539 6678 4991 -5948 5232 6678 6539 4392 -5949 6923 5780 5296 5698 -5950 4504 6516 4735 6391 -5951 7174 5787 6255 4911 -5952 3893 7089 6973 5394 -5953 5554 4316 6973 7089 -5954 5201 5578 6799 4014 -5955 5846 5771 7179 4598 -5956 6129 4541 6810 5763 -5957 6129 5763 6813 4540 -5958 5708 4462 5949 4576 -5959 6886 4087 7044 5537 -5960 5637 5638 7445 4274 -5961 5987 5986 6402 4445 -5962 5429 4381 7442 5550 -5963 7325 7363 6646 4129 -5964 5080 183 184 6501 -5965 4186 6737 4707 5845 -5966 4807 6840 3988 5983 -5967 4195 7113 4684 5547 -5968 3967 6455 4826 6686 -5969 4208 6985 5036 6309 -5970 5784 4496 6060 7169 -5971 4825 6303 4286 6236 -5972 5620 4652 6979 5577 -5973 5256 4099 5577 6979 -5974 152 7 153 7158 -5975 172 7159 171 8 -5976 6766 4428 7469 5557 -5977 5231 7344 4390 6422 -5978 4469 5795 4735 6259 -5979 6037 5757 6520 4461 -5980 5891 4497 6901 5563 -5981 5290 6221 7246 5785 -5982 4659 6157 4760 6452 -5983 6517 7099 5903 4710 -5984 5407 5092 6859 7382 -5985 5866 6453 6083 4536 -5986 4411 5592 4782 7390 -5987 5290 4454 7301 6221 -5988 4550 6311 4133 5774 -5989 4295 4944 6925 5566 -5990 4139 5551 4601 7001 -5991 6108 5675 6513 4513 -5992 6617 5038 7030 5549 -5993 5615 4875 6297 6660 -5994 4449 7364 5211 7443 -5995 5192 7461 5569 4017 -5996 5068 5746 6391 4059 -5997 5927 5917 6203 7182 -5998 5244 161 162 6439 -5999 7461 4466 7458 5569 -6000 5035 7224 5963 4683 -6001 4096 6033 4577 5515 -6002 6119 3887 6565 5661 -6003 5513 6895 5704 4346 -6004 6186 4275 6857 6654 -6005 4293 7124 5106 6371 -6006 6465 4146 6729 5606 -6007 6040 5552 7126 3869 -6008 6419 4795 6760 6217 -6009 5186 6827 4796 7227 -6010 4364 6496 5046 7324 -6011 5160 6612 3945 5644 -6012 4218 5075 6799 5856 -6013 6754 4408 6946 5667 -6014 5713 4503 6657 4736 -6015 5288 6978 176 177 -6016 4385 7465 5084 6301 -6017 5911 6102 6522 4637 -6018 6778 7290 5561 4306 -6019 5805 4432 6294 4552 -6020 6261 5608 6758 4243 -6021 5677 5974 7075 4594 -6022 5104 6615 4329 5652 -6023 4475 6179 4642 6279 -6024 4098 5797 4431 6307 -6025 4638 6395 4916 6682 -6026 6631 5664 6782 4384 -6027 4153 6495 5091 5818 -6028 6215 4090 7054 5576 -6029 7060 5089 5674 7039 -6030 5581 4548 7109 5973 -6031 7374 4383 6548 5950 -6032 6326 5576 7054 4649 -6033 4645 6432 4688 6253 -6034 5131 5886 3999 7411 -6035 4310 6597 4971 6621 -6036 5565 5815 6304 3992 -6037 5049 5789 6493 3944 -6038 5602 6562 5084 7465 -6039 4266 5793 4808 7409 -6040 6359 5654 7082 4571 -6041 4023 6036 4764 7148 -6042 5129 6638 4099 6948 -6043 5906 5664 6631 4494 -6044 6000 4129 5949 4462 -6045 6008 4585 6203 5917 -6046 3860 5111 6690 5658 -6047 7040 4409 6800 6753 -6048 7317 4020 6588 5712 -6049 4792 7102 4105 6472 -6050 4492 6003 6956 5243 -6051 6384 5584 7406 4950 -6052 6041 4181 6499 5953 -6053 6303 6077 6164 4286 -6054 5372 5829 6509 4001 -6055 4385 6835 4832 6930 -6056 6280 4127 7075 5974 -6057 4617 5782 3853 6599 -6058 4459 6314 4113 5821 -6059 5685 6461 6023 4580 -6060 4041 7306 4426 5755 -6061 5448 6806 5849 3961 -6062 5297 147 148 6944 -6063 6384 4950 5685 4580 -6064 5027 5862 6295 3971 -6065 5427 7333 4324 7036 -6066 5645 4108 6384 5992 -6067 5803 5583 7297 4378 -6068 5572 4186 5845 6928 -6069 6250 6248 3977 6249 -6070 4346 5704 6564 4921 -6071 4414 5858 4960 6293 -6072 6391 5746 6602 4504 -6073 6710 6592 5823 4003 -6074 5806 4971 6597 6523 -6075 6431 5820 6340 3987 -6076 4621 5615 4206 6868 -6077 5924 7412 5628 4573 -6078 6421 4107 7114 5684 -6079 4880 6159 4432 6876 -6080 5437 4444 5604 6914 -6081 5715 4564 7349 6136 -6082 5444 5651 7334 4586 -6083 4475 6279 4108 5869 -6084 6228 6263 6337 4674 -6085 3933 7245 5051 6167 -6086 5898 7482 6207 4522 -6087 4928 6723 4028 5854 -6088 5623 6263 6228 4159 -6089 4299 6887 4599 5610 -6090 3862 6860 4622 6001 -6091 6775 5057 6914 5604 -6092 6791 4781 6805 5631 -6093 4681 6299 4135 6726 -6094 4437 5613 7041 4179 -6095 4322 7154 4813 6961 -6096 7213 5040 5148 4238 -6097 4507 6647 4870 7242 -6098 4464 5337 7039 5674 -6099 4036 6505 4685 5987 -6100 6535 5626 6867 4620 -6101 6300 4791 7304 5705 -6102 5050 5705 7304 3952 -6103 4223 6670 4848 6284 -6104 4578 6990 4212 5601 -6105 3959 6679 5047 6778 -6106 4493 6566 4790 6466 -6107 6876 3996 7448 5694 -6108 5495 4498 6056 6449 -6109 6868 5626 6988 4621 -6110 6510 6055 6253 4688 -6111 5597 3967 6686 6252 -6112 6930 4134 7337 5602 -6113 6521 4109 5778 4669 -6114 4419 6792 4221 5649 -6115 5141 6747 6076 4581 -6116 5642 7084 4348 6085 -6117 5391 4232 6689 6870 -6118 4219 6788 4648 5753 -6119 5774 7105 6200 4677 -6120 5558 6230 5969 4524 -6121 5412 7452 5773 4348 -6122 4793 6916 4726 6618 -6123 4579 6441 4952 5621 -6124 4789 6613 4910 5874 -6125 5186 5669 4254 6827 -6126 3888 5841 5023 6557 -6127 6258 4053 3919 5936 -6128 4670 6708 4370 5832 -6129 4182 5187 7452 5412 -6130 4354 4901 7275 5595 -6131 4123 6961 4813 6551 -6132 5565 3992 6276 5951 -6133 6930 5602 7465 4385 -6134 6564 5600 7371 4001 -6135 4994 4753 7371 5600 -6136 5170 4710 5903 6952 -6137 4244 5054 7383 6259 -6138 4554 6103 4005 6349 -6139 5389 5997 6692 4496 -6140 6318 4655 5977 6240 -6141 4162 6613 4789 6196 -6142 5320 6887 4299 5668 -6143 4383 5802 4826 6455 -6144 6476 5603 7141 4833 -6145 5197 5740 4542 6600 -6146 5914 5741 6601 4543 -6147 4819 6632 4183 5897 -6148 4134 7106 4830 6634 -6149 6622 4804 7041 5613 -6150 3963 6890 4457 5892 -6151 5463 3979 6606 5962 -6152 4372 6937 3982 5627 -6153 6562 5602 7337 4646 -6154 4502 6962 3868 5625 -6155 4426 6054 7398 5755 -6156 5415 4172 5793 6483 -6157 7202 6874 7151 5718 -6158 6354 5718 7151 3973 -6159 4435 5918 6306 4920 -6160 4679 6970 5078 6636 -6161 4011 5460 7418 6142 -6162 3902 7336 5171 6413 -6163 6535 3935 6988 5626 -6164 6261 4843 7431 5608 -6165 194 195 5732 6703 -6166 5742 4402 7497 5614 -6167 5879 6111 7396 4091 -6168 4458 5643 6907 4917 -6169 3942 6647 4507 5737 -6170 5638 6186 6654 4798 -6171 5340 5365 3944 6738 -6172 5124 4080 7157 5612 -6173 5946 4150 5957 6510 -6174 4559 6315 4816 6316 -6175 5742 5614 7168 4536 -6176 4524 5969 4154 6277 -6177 5670 6267 6593 4702 -6178 6477 3877 6967 5634 -6179 6771 7427 6317 4199 -6180 4688 6432 3992 6304 -6181 4641 5823 4373 6676 -6182 5152 6790 149 150 -6183 139 140 6405 5931 -6184 5526 4540 6457 6068 -6185 4739 6732 4843 6261 -6186 4642 6179 4615 6138 -6187 7117 5619 7430 4761 -6188 124 7293 123 6 -6189 6307 4431 6387 5890 -6190 5145 174 175 6755 -6191 4361 5878 6494 5134 -6192 5811 6494 5878 3958 -6193 4869 5749 4196 6665 -6194 5195 7144 4930 6402 -6195 4663 6349 4616 6192 -6196 4518 6552 7312 4008 -6197 6176 6370 6776 4187 -6198 5804 4482 7161 6651 -6199 3952 5988 4708 6904 -6200 4498 6855 4197 5678 -6201 5518 4136 7022 6286 -6202 4326 7471 5198 6379 -6203 7116 5864 6906 4738 -6204 4273 5255 7276 5876 -6205 4234 4640 4904 4142 -6206 4742 6332 4602 6333 -6207 6397 5624 7386 4319 -6208 5394 6973 5958 4479 -6209 5551 6383 5991 4601 -6210 4317 5937 4876 6353 -6211 4786 6251 4532 6072 -6212 4765 6637 4673 5799 -6213 5089 5772 6610 3885 -6214 6127 6253 6055 4169 -6215 5325 6024 7421 4045 -6216 4231 5107 4416 5159 -6217 4429 7032 4948 6410 -6218 7009 5000 7026 5784 -6219 3999 6742 4674 6342 -6220 4437 4179 7202 5718 -6221 6717 4803 7084 5642 -6222 6222 4504 6602 5853 -6223 5637 4528 5882 5880 -6224 5403 7438 3895 6475 -6225 4683 7446 6169 5035 -6226 5359 5941 6977 4395 -6227 3921 5632 7403 4937 -6228 4554 6349 4663 5957 -6229 4869 7064 4668 5749 -6230 4618 6884 4977 6201 -6231 5113 5928 4633 6818 -6232 4350 5824 7004 5278 -6233 4718 3880 7034 5302 -6234 6858 4775 6547 6244 -6235 4364 7324 4158 5633 -6236 6891 4066 6235 7259 -6237 5283 3962 7419 6231 -6238 6704 4462 5708 6852 -6239 3865 6426 4780 7037 -6240 7103 4880 6876 5694 -6241 6627 4148 7082 5654 -6242 3983 6229 4999 7073 -6243 7014 6312 6010 4941 -6244 5711 5743 7269 4457 -6245 7199 7123 6378 4926 -6246 164 5714 6918 163 -6247 4634 6161 4781 7042 -6248 5681 6474 6385 4137 -6249 6354 4704 6407 5929 -6250 4674 6742 4675 6228 -6251 5199 6245 3868 6962 -6252 6205 4755 6815 5722 -6253 4198 6285 4887 6856 -6254 5342 7358 3859 6369 -6255 5523 6209 6721 4574 -6256 4734 6499 4181 6423 -6257 4773 7342 4138 5908 -6258 5946 5734 7042 4150 -6259 4282 6406 4764 6036 -6260 7440 4478 6683 5984 -6261 4952 5976 4277 6540 -6262 7228 5822 7081 4756 -6263 6850 4411 7081 5822 -6264 5178 7138 4752 7146 -6265 4560 6694 5334 6693 -6266 4081 6512 5413 6767 -6267 3965 4717 5128 4511 -6268 5624 6471 4935 7386 -6269 4257 4620 6702 5344 -6270 6778 5047 6106 7290 -6271 5974 4593 6350 6280 -6272 6387 4000 6765 5890 -6273 4739 6344 4156 6732 -6274 6479 5651 7294 4966 -6275 5443 5682 6998 4391 -6276 6479 3882 7334 5651 -6277 5037 6954 5009 5688 -6278 4387 5819 6605 5085 -6279 7377 4905 6921 5830 -6280 6468 6139 6322 4659 -6281 5567 138 139 6863 -6282 6319 4774 7303 6017 -6283 4681 6726 4644 5953 -6284 4799 6292 4719 6627 -6285 4996 6234 4343 6175 -6286 4029 5039 5040 7213 -6287 6365 6932 4809 5701 -6288 5126 5738 3946 6842 -6289 6059 5804 6651 4174 -6290 4386 7250 4176 5659 -6291 5730 5991 6383 4104 -6292 6023 5992 6384 4580 -6293 5491 4406 7264 6112 -6294 4614 5990 4137 6385 -6295 6574 6268 6233 4695 -6296 4463 5311 7333 5837 -6297 7273 6920 6446 4278 -6298 4590 6079 4119 6302 -6299 3866 7024 4763 6379 -6300 4748 6460 4946 7018 -6301 5465 129 130 7048 -6302 4506 6090 5245 6913 -6303 5568 7176 5672 4912 -6304 5714 4976 6439 6918 -6305 163 6918 6439 162 -6306 5445 4014 7431 4843 -6307 3915 4943 6748 5885 -6308 5446 6324 4480 7029 -6309 4109 6521 4451 5895 -6310 4098 6307 4604 6458 -6311 6959 4598 7179 6182 -6312 4094 6572 4544 5855 -6313 5103 6788 4219 7234 -6314 5528 4829 4082 6382 -6315 3920 4220 6816 6490 -6316 5691 7300 7008 4849 -6317 5399 6075 4725 6585 -6318 4575 6807 4783 6246 -6319 5529 7035 5941 3855 -6320 6537 7066 7041 4804 -6321 6390 4686 6342 6223 -6322 4197 6623 4988 6346 -6323 6750 6025 6374 4143 -6324 4819 5897 4233 6530 -6325 4525 4347 6525 6527 -6326 4086 5711 4457 6976 -6327 5864 110 111 6906 -6328 6268 6574 6575 4309 -6329 5527 4419 7329 5671 -6330 3969 5865 4739 7153 -6331 6759 4876 5706 6992 -6332 5426 6053 6683 4478 -6333 4412 5843 4756 7080 -6334 4811 6800 5073 6850 -6335 6099 7104 6735 4118 -6336 4280 4863 7017 6122 -6337 4638 6052 3890 6395 -6338 6026 6025 6750 4520 -6339 5147 5788 4358 6740 -6340 4872 6777 4193 7310 -6341 6657 6654 6857 4736 -6342 6810 4164 6813 5763 -6343 4884 6153 4371 6680 -6344 4440 6501 184 5934 -6345 6087 6745 6549 4772 -6346 131 132 5783 6945 -6347 5820 5676 7243 4430 -6348 5554 7292 142 143 -6349 4128 6598 4885 7065 -6350 4551 6716 3857 5812 -6351 7376 5754 7441 4400 -6352 6104 4818 7441 5754 -6353 7448 4831 7103 5694 -6354 5522 4957 6538 7394 -6355 6458 5970 6471 4098 -6356 4675 6743 4239 5599 -6357 5374 6317 6134 4499 -6358 4073 5944 7331 5219 -6359 6529 7331 5944 4287 -6360 4212 6326 4807 6991 -6361 5975 4486 6486 5960 -6362 5358 4657 6888 5833 -6363 7204 5209 7169 6060 -6364 5649 6195 7329 4419 -6365 4420 5681 4137 7326 -6366 5674 6016 7319 4464 -6367 4259 7327 4394 5679 -6368 5786 4119 6079 6709 -6369 3960 7424 5237 6993 -6370 5525 6450 6933 3990 -6371 4795 6734 4690 6760 -6372 4627 5101 7456 5683 -6373 6844 5898 6588 4827 -6374 5350 7057 6040 4505 -6375 6000 4462 6704 5836 -6376 4793 6618 4144 6330 -6377 3986 6872 4452 5767 -6378 5107 4231 7016 4665 -6379 4631 6878 4007 5922 -6380 5634 6615 4557 6477 -6381 3978 6497 6695 7025 -6382 4590 6362 7426 5317 -6383 5101 4627 6233 6268 -6384 4734 6569 4676 6417 -6385 4282 6884 5360 7379 -6386 4526 5942 4839 7166 -6387 5063 6785 4277 5976 -6388 3896 6396 5056 7178 -6389 6776 6370 6635 4689 -6390 5702 6489 6044 4629 -6391 5141 6023 6461 4140 -6392 4788 6650 4012 6416 -6393 6417 6338 6499 4734 -6394 6233 4627 6761 5827 -6395 5243 4375 3965 5302 -6396 5289 6719 3908 7453 -6397 6655 5838 6768 4671 -6398 4160 5907 4472 5536 -6399 5956 4617 7181 5801 -6400 6188 4798 6654 6657 -6401 5889 4438 7000 4072 -6402 4056 5950 6548 5238 -6403 5620 4021 7381 5770 -6404 5685 4039 6657 4503 -6405 6488 7329 6195 4998 -6406 114 115 5834 7047 -6407 4891 6614 4012 6650 -6408 6461 5966 6764 4140 -6409 4195 6809 4741 6150 -6410 3876 6427 7403 5632 -6411 4191 6105 4639 6408 -6412 5932 7125 4035 6447 -6413 4873 6096 5029 6412 -6414 5465 5179 7372 7449 -6415 4685 6506 4183 7074 -6416 4731 6538 4957 6880 -6417 6157 4659 6322 4698 -6418 6725 7285 5717 5111 -6419 5762 7043 5770 4352 -6420 6087 4579 6772 6955 -6421 5165 4509 6427 6093 -6422 6748 5745 7090 4336 -6423 6569 4734 6423 6219 -6424 6900 5100 5712 7466 -6425 4776 7012 4260 6583 -6426 5334 4611 6684 5894 -6427 5077 6119 4592 6802 -6428 4504 6222 4779 6516 -6429 3975 7291 4776 5971 -6430 5647 4405 7175 6254 -6431 5325 5728 7341 4377 -6432 4772 6441 4579 6087 -6433 6337 6223 6342 4674 -6434 4686 6364 3999 6342 -6435 3973 6206 4704 6354 -6436 6351 5733 7162 3950 -6437 6125 136 137 7203 -6438 5183 6676 4373 5908 -6439 5178 5893 4314 7138 -6440 6751 4248 7170 5932 -6441 6390 6264 6363 4686 -6442 5428 4622 6740 6565 -6443 4549 6714 4013 5887 -6444 4759 5411 7215 5873 -6445 6157 4698 6360 4180 -6446 6213 3973 7151 5739 -6447 7438 4464 7319 5910 -6448 4106 6442 4634 6117 -6449 4399 6081 4867 6465 -6450 6140 3981 5968 6595 -6451 4778 6724 5924 6705 -6452 6453 5866 7202 4179 -6453 4371 6820 4747 6680 -6454 5301 5862 5027 6871 -6455 6849 6577 7040 4844 -6456 4268 7295 5364 6989 -6457 4243 6919 5099 6851 -6458 4585 6008 4575 7177 -6459 5703 6446 7469 4428 -6460 4701 6476 4833 6674 -6461 4964 7376 4400 6017 -6462 6263 4661 6653 6337 -6463 3991 6805 4781 6161 -6464 4679 6636 4170 6043 -6465 4853 6733 4854 7311 -6466 3897 7222 5061 6425 -6467 5957 4663 6055 6510 -6468 6743 4723 5148 4239 -6469 6323 4932 7250 7128 -6470 5558 3970 6892 6230 -6471 4129 6646 4608 5949 -6472 6185 6318 6626 4656 -6473 5288 7178 5056 6978 -6474 3938 6083 4822 7009 -6475 4926 6378 4224 7053 -6476 5188 6139 6468 4662 -6477 4855 3965 4511 4510 -6478 4321 4973 5849 6806 -6479 5538 7455 179 180 -6480 5925 7464 144 145 -6481 5061 7222 5297 6944 -6482 157 158 7136 5982 -6483 7191 5982 7136 4817 -6484 4689 6073 4655 6776 -6485 7301 5118 6567 6221 -6486 5620 5770 7043 4652 -6487 6307 5890 6765 4604 -6488 6800 4811 6754 6753 -6489 5229 7031 6701 7020 -6490 6560 4013 6714 6879 -6491 6253 6127 6474 4645 -6492 4838 5492 7007 5938 -6493 7258 4038 7108 6012 -6494 5254 4384 6782 5999 -6495 5722 4644 6726 6205 -6496 4554 5957 4150 6662 -6497 5818 6445 6686 4826 -6498 6252 6686 6445 4727 -6499 6614 7038 6361 4623 -6500 6145 6357 6345 4737 -6501 5305 4594 7075 7076 -6502 7090 5745 7369 4651 -6503 6894 4890 7129 5765 -6504 4731 6636 5078 6409 -6505 6284 7261 7149 4223 -6506 4535 6178 4864 6454 -6507 7355 5772 7116 4738 -6508 6549 4676 6264 6390 -6509 5397 6270 4465 7420 -6510 6007 4637 6411 6226 -6511 5848 6168 6170 4422 -6512 4662 6468 4167 6722 -6513 4659 6452 4167 6468 -6514 4686 6363 4700 6364 -6515 4435 4920 6890 5844 -6516 5018 6764 4619 7108 -6517 4759 5873 4038 7144 -6518 6447 4596 6751 5932 -6519 5363 7005 4777 7322 -6520 5696 6345 6357 4654 -6521 5862 4587 6392 6295 -6522 5138 4233 6731 6830 -6523 4534 6144 4693 6611 -6524 4127 6280 6350 4863 -6525 4088 7365 5060 7269 -6526 4602 5913 4190 6783 -6527 4962 6642 6975 5964 -6528 6549 6745 6417 4676 -6529 5080 6331 3892 7061 -6530 5390 6167 5051 7474 -6531 112 5933 6906 111 -6532 6052 4638 6949 5947 -6533 6077 4809 6932 6164 -6534 6414 6164 6932 4537 -6535 5458 4850 6559 6589 -6536 6616 3988 6589 6559 -6537 6233 5913 6864 4695 -6538 4800 6785 5063 6933 -6539 6489 4534 6611 6044 -6540 4591 5876 7276 5347 -6541 176 5980 6755 175 -6542 6714 4549 6928 5845 -6543 4824 6787 4088 5930 -6544 4860 7140 4177 6156 -6545 4844 4026 4845 6966 -6546 6212 4635 6658 7195 -6547 148 149 6790 5996 -6548 6145 4128 7065 6357 -6549 5675 5981 6721 3879 -6550 6822 6434 6581 4744 -6551 6318 6185 6776 4655 -6552 7480 6063 7397 3930 -6553 6075 4175 6249 4725 -6554 4645 6276 3992 6432 -6555 7009 5784 7169 3938 -6556 3965 4375 6526 4717 -6557 5595 7275 4684 6902 -6558 5134 5940 6917 4361 -6559 3975 6088 4722 7291 -6560 7191 4817 7236 5777 -6561 6964 6171 6653 4806 -6562 5348 4680 6948 6260 -6563 5011 7091 4355 6667 -6564 5116 6290 7222 3897 -6565 5693 4619 6764 5966 -6566 7352 4023 7148 5794 -6567 4932 7402 4713 6899 -6568 4802 6058 4132 7086 -6569 5506 6671 6728 4901 -6570 6570 4720 6382 5800 -6571 7078 5008 7186 4745 -6572 4028 6723 4548 6004 -6573 3856 6143 6960 5312 -6574 4961 4379 6960 6143 -6575 6826 5938 7493 4203 -6576 6831 6830 6731 4878 -6577 5426 4478 7440 6669 -6578 5178 7146 5899 3863 -6579 5750 5899 7146 4752 -6580 4954 6951 4553 6545 -6581 4384 6089 5239 6631 -6582 6689 5083 6319 6870 -6583 6385 4673 6637 6173 -6584 4222 7096 5062 6668 -6585 7128 6151 6596 4566 -6586 4833 6893 4166 6674 -6587 6566 4493 6815 6176 -6588 6370 6176 6815 4755 -6589 4772 6964 4200 6441 -6590 4968 6687 4630 6688 -6591 4969 7245 3933 6283 -6592 5110 3896 7178 6271 -6593 4492 7034 3880 5839 -6594 4074 5479 7238 6030 -6595 6406 4732 6347 4122 -6596 5347 6747 5141 7206 -6597 4550 6141 4131 6591 -6598 4570 6640 5276 6641 -6599 4877 5798 4878 6731 -6600 5592 6327 7252 4782 -6601 5080 7061 4841 6769 -6602 5067 6243 4485 6514 -6603 6256 5813 7335 4792 -6604 6352 6586 6292 4226 -6605 6626 6021 6896 4656 -6606 4329 5901 7416 4945 -6607 189 190 7416 5901 -6608 7004 5824 7323 4163 -6609 6449 4767 7323 5824 -6610 3852 5875 4553 6951 -6611 5054 6709 4614 7391 -6612 5519 4449 7443 5779 -6613 4433 6697 5004 6066 -6614 3893 6296 5122 7058 -6615 4492 6873 3898 6003 -6616 6606 4691 6823 5962 -6617 4704 6206 4608 6646 -6618 5417 7000 4438 6149 -6619 3962 4902 5999 6782 -6620 6891 4821 6550 7208 -6621 4260 7220 5074 6583 -6622 5652 7395 6633 3900 -6623 6575 6576 6843 4309 -6624 4143 6038 4930 6750 -6625 7175 4405 7183 6051 -6626 5200 4192 6688 6823 -6627 6240 5977 6822 4489 -6628 3904 7498 4991 6678 -6629 5006 6484 4565 6346 -6630 4162 6821 4910 6613 -6631 5851 4563 7401 6022 -6632 4671 6768 4145 6034 -6633 5990 4614 6709 6079 -6634 5972 4766 7029 6031 -6635 5338 6031 7029 4480 -6636 4928 5854 5041 7218 -6637 5953 6499 6338 4681 -6638 4831 6481 4390 7344 -6639 6495 4153 7231 5840 -6640 6832 4878 5798 4234 -6641 3886 6146 4605 6839 -6642 4716 5277 7462 5993 -6643 7391 6173 6637 3984 -6644 5522 7394 5803 4378 -6645 4522 6504 7466 5712 -6646 3942 7021 4870 6647 -6647 6935 4848 6670 7130 -6648 5018 6288 4140 6764 -6649 4751 6710 4639 6105 -6650 5790 6720 6148 4340 -6651 5081 6473 4533 6905 -6652 6339 4589 6469 7339 -6653 5431 7488 7414 4947 -6654 6240 4117 6626 6318 -6655 4888 6459 3948 6543 -6656 6956 4954 6816 7207 -6657 4427 7050 4112 5877 -6658 4784 6506 4685 6505 -6659 4747 6910 4884 6680 -6660 6961 4123 5900 5401 -6661 5301 6871 4203 7493 -6662 7171 3997 6833 7230 -6663 6671 4110 7361 6728 -6664 4270 5440 7385 6415 -6665 7279 6415 7385 4447 -6666 6919 5954 6970 4679 -6667 5781 6076 6747 3929 -6668 5838 6655 6737 4186 -6669 6656 4869 6737 6655 -6670 4166 6264 4676 6569 -6671 4022 6257 4818 6929 -6672 4712 6491 4746 6492 -6673 4223 7149 5105 6553 -6674 3894 7181 5021 7356 -6675 3908 6454 4864 7453 -6676 5459 5810 4164 7459 -6677 7145 5593 4743 6648 -6678 5476 4361 6917 6050 -6679 5998 4072 7000 4603 -6680 6376 5840 7231 4705 -6681 4082 3920 7463 6382 -6682 6192 4616 6394 6677 -6683 5799 6677 6394 4765 -6684 3951 7491 5081 7107 -6685 4255 6772 4579 6082 -6686 7357 4668 7064 6130 -6687 5755 7398 6481 5079 -6688 4885 6898 4807 5983 -6689 4637 6522 4228 6411 -6690 5117 7477 3956 6100 -6691 5660 6291 6815 4493 -6692 6018 7028 6098 4653 -6693 3880 4075 4879 6941 -6694 6569 6219 6674 4166 -6695 6423 4701 6674 6219 -6696 4554 6662 4781 6791 -6697 5771 5846 7263 4196 -6698 4846 7058 5122 6915 -6699 7277 5031 7070 7071 -6700 5787 7174 5865 3969 -6701 4175 6075 5399 4397 -6702 6295 6392 7142 4842 -6703 4711 6374 4904 4640 -6704 6768 5963 7224 4145 -6705 4263 7359 5268 6940 -6706 6171 6549 6390 6223 -6707 4148 7346 6328 4992 -6708 4883 7456 4310 7201 -6709 4019 7052 4802 6163 -6710 6019 6061 6865 4252 -6711 5471 6515 7491 3951 -6712 4176 6859 5092 6046 -6713 4844 7040 6753 4812 -6714 7493 5938 7007 4883 -6715 5737 7051 6643 4693 -6716 5110 5883 7167 4380 -6717 6537 4804 6622 6883 -6718 5166 6047 3983 7073 -6719 4821 6724 4778 6550 -6720 6360 4698 6859 6498 -6721 6214 4847 4280 6122 -6722 6301 7111 6586 4975 -6723 4888 6334 4501 7351 -6724 4712 6492 4228 6522 -6725 6983 6070 6829 3864 -6726 7480 3930 6896 6021 -6727 6655 4671 7328 6656 -6728 4192 6028 7378 6463 -6729 6533 6463 7378 4351 -6730 6216 5096 7147 7487 -6731 5884 4491 6287 7100 -6732 5987 6912 6903 4036 -6733 6963 4711 6903 6912 -6734 6299 4681 6338 7155 -6735 6288 5018 5873 7215 -6736 6575 6574 6573 4696 -6737 6099 4489 6822 7104 -6738 4055 5128 4717 5203 -6739 4450 6020 3952 6904 -6740 7085 4022 6929 6002 -6741 6183 6071 7354 3932 -6742 5258 4866 7354 6071 -6743 5127 6699 4487 6289 -6744 7270 6533 6861 4858 -6745 5367 6861 6533 4351 -6746 158 159 6078 7136 -6747 4730 5909 4380 7167 -6748 5381 4613 7003 3963 -6749 5685 4950 7011 4039 -6750 6635 6205 6726 4135 -6751 5766 4089 7270 6172 -6752 3997 5138 6830 6831 -6753 6481 7398 6054 4390 -6754 6579 4613 5961 7019 -6755 6959 3966 7062 4598 -6756 6699 4678 6886 4487 -6757 6667 6873 6070 5011 -6758 6248 6250 7446 4683 -6759 5993 6581 6434 4716 -6760 5776 4623 6361 6889 -6761 7170 4805 7125 5932 -6762 5095 5922 4007 7147 -6763 5450 4187 6776 6185 -6764 4036 6903 5598 7092 -6765 6886 4678 6982 4087 -6766 6171 6223 6337 6653 -6767 5667 4812 6753 6754 -6768 6205 6635 6370 4755 -6769 5319 4256 7197 6067 -6770 7125 4805 6067 7197 -6771 6083 6453 7066 4822 -6772 4839 4840 4344 5857 -6773 6381 6380 6110 4092 -6774 7263 7367 6665 4196 -6775 5935 7283 5593 4768 -6776 4758 6170 5304 3974 -6777 6574 4695 6864 6573 -6778 5360 6217 6760 4133 -6779 7040 6577 6491 4409 -6780 6849 4746 6491 6577 -6781 7085 6002 6639 4949 -6782 4273 5876 4591 7366 -6783 5476 7221 6135 4834 -6784 7433 5165 7368 6796 -6785 5717 4979 6796 7368 -6786 4740 6777 4872 7131 -6787 6920 6372 7469 6446 -6788 6672 5104 6578 6561 -6789 4015 5653 4093 5586 -6790 6363 6893 6420 4700 -6791 3927 6620 6967 5580 -6792 5647 7265 6389 4961 -6793 5093 6389 7265 3901 -6794 4505 6040 3869 7450 -6795 4445 6038 4143 6963 -6796 4417 7056 4974 5985 -6797 4825 6236 4514 7068 -6798 5835 5973 7109 4106 -6799 6125 7403 6427 4509 -6800 4754 7137 6524 7340 -6801 6594 4560 7236 6078 -6802 4801 6182 4105 7102 -6803 5447 6146 5247 7347 -6804 4649 6840 4807 6326 -6805 4750 6625 4910 6821 -6806 5319 6067 5120 7306 -6807 7284 4139 7001 6166 -6808 6478 4569 7355 5933 -6809 5995 6561 6578 4597 -6810 5775 6490 6816 3874 -6811 5195 4209 7028 6018 -6812 6587 7271 6073 4689 -6813 4932 6323 4007 7402 -6814 5251 5967 4177 7140 -6815 5028 6658 4635 6659 -6816 6332 3972 6573 6864 -6817 4242 6488 4998 7282 -6818 5861 6131 7264 4406 -6819 3999 6364 4700 7411 -6820 4296 6207 7482 5454 -6821 6360 6498 6899 4713 -6822 5268 7359 5226 6330 -6823 4319 6706 5003 6397 -6824 6844 4184 7482 5898 -6825 7210 4815 6400 7284 -6826 3962 5906 4600 7419 -6827 5854 5943 7255 5041 -6828 4446 5221 7210 7083 -6829 5328 7083 7210 4250 -6830 4395 6977 5077 6885 -6831 6725 4586 6464 7285 -6832 7322 4777 7006 6184 -6833 6745 6087 6955 3998 -6834 5252 6834 7047 5034 -6835 113 114 7047 6834 -6836 4533 6104 4161 6939 -6837 6975 6818 4055 5964 -6838 6518 6012 7108 4619 -6839 5493 6283 3933 6968 -6840 7079 5231 6422 7095 -6841 7053 4224 7400 6652 -6842 4399 6652 7400 5246 -6843 5067 3895 7438 5910 -6844 4224 6378 4690 6734 -6845 3865 7037 5142 7097 -6846 7033 4909 6957 7272 -6847 5543 7272 6957 4665 -6848 5911 4025 7002 6102 -6849 4243 6851 4739 6261 -6850 5279 6554 5066 6946 -6851 6906 5933 7355 4738 -6852 6898 4885 6598 6643 -6853 6504 7115 6121 5052 -6854 4871 6892 3970 6180 -6855 4004 6424 4750 6536 -6856 5646 6464 4586 7334 -6857 145 146 7429 5925 -6858 4191 6408 4740 6746 -6859 4178 4862 3920 4082 -6860 6335 6049 7068 4514 -6861 4689 6635 4135 6587 -6862 7176 4043 7472 6045 -6863 6854 6126 7090 4651 -6864 4733 6999 5077 6977 -6865 4765 7055 3984 6637 -6866 6408 6377 6777 4740 -6867 4136 6282 5237 6812 -6868 6287 4867 6480 7100 -6869 5081 6905 4925 7107 -6870 6611 4693 6643 6598 -6871 6820 5952 7315 4747 -6872 4982 6733 4853 4173 -6873 4508 6231 7419 5517 -6874 6094 6095 7358 4706 -6875 6338 6417 6745 3998 -6876 7121 4193 6777 6377 -6877 6859 4698 6322 7382 -6878 4672 6355 5151 7484 -6879 6522 6102 7002 4712 -6880 6258 5936 4220 4312 -6881 4852 6736 4851 7025 -6882 4971 4345 7142 6392 -6883 6024 4667 6114 7421 -6884 5792 6022 7401 4215 -6885 3889 6094 4706 7015 -6886 7383 3984 7055 6074 -6887 7484 6062 7187 4672 -6888 6387 4741 6809 6814 -6889 4985 6404 4258 7478 -6890 4969 6689 4232 7098 -6891 6977 5941 7035 4733 -6892 7417 6669 7440 5012 -6893 4349 6874 5164 6437 -6894 7019 5961 7361 4110 -6895 5504 6430 4582 6942 -6896 6047 7414 6066 3983 -6897 6949 3894 7451 5947 -6898 7318 5204 7268 6718 -6899 5745 3858 6162 7369 -6900 4295 5566 4907 6503 -6901 5031 7320 4246 7188 -6902 4715 6411 4228 6862 -6903 3868 6245 7308 5424 -6904 6549 6171 6964 4772 -6905 6865 6061 7127 4694 -6906 4174 6972 5399 6585 -6907 4533 6939 4925 6905 -6908 7445 6188 7011 5181 -6909 7346 4719 7111 6328 -6910 5223 6878 4459 6435 -6911 6518 4520 7258 6012 -6912 5319 7306 4041 7241 -6913 6200 4690 6378 7123 -6914 5073 7316 4712 7002 -6915 5021 6599 4558 7307 -6916 7312 4567 6216 5536 -6917 6187 6339 7339 4229 -6918 5566 6030 7238 4907 -6919 5491 6757 6629 4217 -6920 4318 6584 7443 5211 -6921 4459 6878 4631 6314 -6922 6521 6006 7300 4451 -6923 4647 7325 4129 6000 -6924 5438 4832 6305 7132 -6925 6262 4516 7132 6305 -6926 3907 5098 7338 5995 -6927 4750 6424 4814 6625 -6928 5498 4404 7281 4837 -6929 3880 5086 7307 6448 -6930 4107 6101 4636 7114 -6931 7236 4817 7136 6078 -6932 5756 6130 7064 3985 -6933 6547 4709 7444 6244 -6934 5171 7351 4501 6413 -6935 4124 5305 7076 7077 -6936 5105 7017 4863 6350 -6937 4964 6017 7303 4009 -6938 4031 6924 4556 6372 -6939 5934 7308 6245 4440 -6940 4297 5174 6980 7305 -6941 6525 6526 4053 6527 -6942 6780 7319 6016 4610 -6943 6449 6056 7237 4767 -6944 6269 3943 7237 6056 -6945 4010 6995 4677 6200 -6946 6657 4039 7011 6188 -6947 5244 6439 4976 7278 -6948 6720 4697 7150 6148 -6949 3946 6825 4865 6746 -6950 6006 7426 6362 3954 -6951 5775 3874 6545 7129 -6952 7227 5993 7462 5186 -6953 5634 6967 6620 4595 -6954 4650 7328 4671 6034 -6955 4806 7101 4200 6964 -6956 131 6373 7048 130 -6957 6899 6498 6859 4176 -6958 4258 6911 4927 6811 -6959 6521 4669 7426 6006 -6960 6264 4166 6893 6363 -6961 7232 4237 6916 5026 -6962 4605 6475 4939 6839 -6963 3890 4272 3948 6459 -6964 5695 4582 6881 6436 -6965 5942 4526 6508 6987 -6966 4953 6801 4680 6542 -6967 4827 6749 4857 6844 -6968 6339 6187 7310 4814 -6969 7456 7370 6597 4310 -6970 5159 6225 7016 4231 -6971 4258 6811 4959 7478 -6972 4722 6310 4202 6934 -6973 4685 7074 4810 6190 -6974 6818 6975 7468 5113 -6975 6642 4332 7468 6975 -6976 5894 4672 7187 3883 -6977 4896 6029 7264 6131 -6978 7250 4386 6151 7128 -6979 6313 4918 6436 6881 -6980 7409 7274 6707 4266 -6981 4703 5407 7332 6091 -6982 5777 7236 4560 6693 -6983 6411 4715 7190 6226 -6984 5383 7237 3943 6097 -6985 5278 6936 6761 3994 -6986 4887 7135 5088 6856 -6987 4293 6371 4556 6924 -6988 4648 6142 7418 5401 -6989 5483 3924 6624 7348 -6990 4574 5019 7348 6624 -6991 6760 4690 6200 7105 -6992 6094 4513 7257 6095 -6993 6505 6836 6837 4784 -6994 5432 4924 6013 5433 -6995 4938 6116 7242 4155 -6996 4208 7186 4762 6985 -6997 4401 4947 7414 6047 -6998 6007 6226 7190 4100 -6999 5036 6985 4762 6986 -7000 5461 7134 6316 4816 -7001 4886 6194 6316 7134 -7002 6504 4522 6207 7115 -7003 6073 7271 7280 3989 -7004 7387 4194 7051 6358 -7005 4649 6589 3988 6840 -7006 7199 4010 6200 7123 -7007 4934 7291 4722 6934 -7008 4532 6286 7022 5214 -7009 6035 5147 6860 4610 -7010 4206 6867 5626 6868 -7011 7260 4785 6045 7472 -7012 5963 6247 6248 4683 -7013 4254 6091 7332 5188 -7014 4922 7194 6195 5649 -7015 5950 4056 6195 7194 -7016 4741 7200 4413 6150 -7017 6810 6152 7459 4164 -7018 5459 7459 6152 7305 -7019 6292 6586 7111 4719 -7020 4016 5272 7444 6762 -7021 5696 4654 7214 6616 -7022 5183 5955 4103 6938 -7023 5660 4158 7119 6394 -7024 4865 6825 4796 6827 -7025 4461 7380 197 6084 -7026 4041 7216 5222 7241 -7027 6953 7195 6658 4201 -7028 5712 5100 7314 7317 -7029 7257 3859 7358 6095 -7030 4821 6817 4205 6724 -7031 6361 7038 6546 4163 -7032 5312 6062 7484 3856 -7033 4020 7317 4953 6542 -7034 4520 6750 4930 7258 -7035 7270 4858 7476 6172 -7036 5766 6172 7476 4562 -7037 5938 6826 6797 4838 -7038 4322 7268 5204 7154 -7039 5307 7423 4836 7387 -7040 6285 4198 6420 7141 -7041 6893 4833 7141 6420 -7042 6629 6757 6803 4981 -7043 5491 6112 6803 6757 -7044 5701 4076 7253 6365 -7045 4884 6910 3857 6716 -7046 5277 4716 7280 6781 -7047 6182 7179 6846 4105 -7048 5756 4577 7357 6130 -7049 4193 7121 4910 6625 -7050 126 127 7372 6124 -7051 5760 4111 6136 7349 -7052 5316 3857 6910 6558 -7053 5703 4428 7483 6739 -7054 5954 4797 6883 6622 -7055 6953 5008 6212 7195 -7056 5839 7289 6519 4931 -7057 5540 6519 7289 4558 -7058 4879 3949 6552 4518 -7059 3956 7477 4653 6098 -7060 5182 7350 4082 4829 -7061 6301 3957 6328 7111 -7062 4048 6177 5398 7298 -7063 4422 7177 4575 6246 -7064 6744 7240 6943 5022 -7065 5848 4422 6246 7229 -7066 4834 6135 4265 7399 -7067 136 6125 7433 135 -7068 6916 4793 7120 5026 -7069 6942 6107 7494 4062 -7070 5098 5247 6325 7296 -7071 4116 5304 6170 6168 -7072 6883 4218 7010 6537 -7073 7068 6797 6826 4825 -7074 4787 6705 5924 4573 -7075 164 165 6399 7063 -7076 4777 5366 6568 7006 -7077 4089 6687 4968 7270 -7078 4972 3995 5806 6523 -7079 3984 7383 5054 7391 -7080 5173 7117 4761 7118 -7081 5238 7393 4356 7163 -7082 3852 5402 7330 6272 -7083 5307 6116 4033 7423 -7084 4807 6898 4194 6991 -7085 5574 7229 6246 4783 -7086 4997 7079 7095 4042 -7087 7103 4388 7408 4880 -7088 4883 7201 5301 7493 -7089 4997 4389 5206 4882 -7090 3889 7015 5146 7422 -7091 6428 4824 6872 7266 -7092 6385 6173 7391 4614 -7093 4760 6968 3933 6555 -7094 5016 6284 4848 7192 -7095 4859 6984 4266 6707 -7096 4748 7018 4170 6880 -7097 5954 4034 7226 6970 -7098 6409 5078 6970 7226 -7099 7475 6289 7193 4204 -7100 5157 7080 4756 7081 -7101 6408 4639 7121 6377 -7102 4323 5438 7132 6485 -7103 5025 5282 6368 7198 -7104 7055 4765 6394 7119 -7105 4120 6189 4761 7430 -7106 5647 6254 3901 7265 -7107 5126 6735 4744 7152 -7108 7312 6552 3949 4721 -7109 6191 5125 7171 7230 -7110 6792 4801 7102 6433 -7111 4632 7004 4163 6546 -7112 4816 6315 4245 7248 -7113 6898 6643 7051 4194 -7114 6633 7395 7067 5172 -7115 4266 6984 7246 5082 -7116 6235 4892 6817 7259 -7117 5808 5809 6013 4924 -7118 4593 5385 7185 6553 -7119 6184 7006 6568 3959 -7120 5638 4798 6188 7445 -7121 5176 4626 7491 6515 -7122 4507 5307 7387 6358 -7123 6614 4891 6546 7038 -7124 5920 4745 6278 7273 -7125 4171 7160 7161 5282 -7126 4038 7258 4930 7144 -7127 6910 4747 7315 6558 -7128 4757 6972 4174 6651 -7129 4889 6367 3891 7436 -7130 5995 7338 3861 6561 -7131 5149 6762 7444 4709 -7132 4920 6976 4457 6890 -7133 4481 6196 4789 7454 -7134 4409 7316 5073 6800 -7135 5038 6617 5041 6996 -7136 7010 4822 7066 6537 -7137 3890 6459 4888 7351 -7138 7174 4911 7014 6897 -7139 7494 6897 7014 4941 -7140 7102 4792 7335 6433 -7141 6442 7225 6922 4978 -7142 6453 4179 7041 7066 -7143 4984 6272 7330 4362 -7144 5158 6681 7098 4232 -7145 7474 5051 7098 6681 -7146 4505 7450 5300 6220 -7147 6009 6485 7132 4516 -7148 4252 6865 4987 7189 -7149 5090 4374 7296 6325 -7150 4934 7012 4776 7291 -7151 4312 4220 3920 4862 -7152 7160 4757 6651 7161 -7153 4822 7010 5000 7009 -7154 5086 7356 5021 7307 -7155 5875 4984 6779 7288 -7156 4063 6685 7221 5476 -7157 6135 7221 6685 4544 -7158 5286 4011 6341 7432 -7159 5891 7447 7432 6341 -7160 5759 5857 4344 5882 -7161 5272 4281 6244 7444 -7162 7271 5161 6781 7280 -7163 3972 6648 4743 6649 -7164 5427 7036 6664 4658 -7165 4994 6882 6987 4753 -7166 5942 6987 6882 5001 -7167 4150 7042 4781 6662 -7168 6162 7417 6348 4502 -7169 6772 4970 7155 6955 -7170 6660 6297 7381 4021 -7171 4087 6982 5414 6775 -7172 6523 6597 7370 4972 -7173 181 182 6769 7045 -7174 6139 4006 7382 6322 -7175 5052 4253 7466 6504 -7176 4092 4847 6214 6381 -7177 4896 4895 6752 4298 -7178 5119 6142 4648 6788 -7179 5090 5800 6382 7463 -7180 118 6398 7286 117 -7181 6289 7475 7343 5127 -7182 4806 7321 5063 7101 -7183 6193 4886 7244 6609 -7184 6673 4626 6609 7244 -7185 5099 7153 4739 6851 -7186 4899 7219 5216 7415 -7187 7318 6718 7130 4835 -7188 4744 6581 4247 7152 -7189 4716 6434 3989 7280 -7190 5356 6356 7479 3873 -7191 6367 4889 7479 6356 -7192 6784 5860 4895 5861 -7193 6002 6473 4211 6639 -7194 6407 4704 6646 7363 -7195 4768 5593 7145 5327 -7196 7384 4264 7447 6375 -7197 6132 4660 7131 4872 -7198 5538 7045 6769 4841 -7199 4732 6298 3932 7489 -7200 4617 6599 5021 7181 -7201 3892 6348 7417 5012 -7202 4762 7186 5008 6953 -7203 6181 7005 7473 4122 -7204 6338 3998 6955 7155 -7205 7289 6448 7307 4558 -7206 4222 7093 5016 7096 -7207 7130 6670 7185 4835 -7208 4010 7254 4956 6995 -7209 5065 7143 4842 7142 -7210 6444 3990 7321 4661 -7211 6568 7341 6421 5156 -7212 6070 6983 7091 5011 -7213 7475 4204 7208 6550 -7214 7128 4566 7487 6323 -7215 6792 6433 7335 4221 -7216 4836 7139 4212 6991 -7217 4743 5593 7283 4125 -7218 6517 5010 6862 7099 -7219 5903 7099 6862 4228 -7220 5983 7214 7065 4885 -7221 4908 7133 5189 7495 -7222 4314 6698 4752 7138 -7223 5298 7485 7021 3942 -7224 7384 7021 7485 5133 -7225 7253 4860 7481 6365 -7226 6932 6365 7481 4537 -7227 5474 6682 7313 3860 -7228 5444 7313 6682 4916 -7229 6935 7130 6718 4188 -7230 4080 5124 7339 6469 -7231 6463 6533 7270 4968 -7232 4409 6491 4712 7316 -7233 4535 6462 5044 6178 -7234 4224 6734 4795 7400 -7235 4471 7405 6444 5623 -7236 4991 7498 6520 5757 -7237 4428 6766 5205 7483 -7238 4700 6420 4198 7411 -7239 4892 6630 4246 7320 -7240 5772 7355 4569 6610 -7241 5041 6617 4213 7218 -7242 5349 7360 5079 6481 -7243 6553 7185 6670 4223 -7244 4740 7131 3946 6746 -7245 6505 4036 7092 6836 -7246 6837 6836 7092 4877 -7247 6735 7104 6822 4744 -7248 6576 4972 7370 6843 -7249 7408 7072 7070 4240 -7250 4264 5286 7432 7447 -7251 4586 6725 7313 5444 -7252 4279 6900 5068 7490 -7253 4949 6639 4816 7248 -7254 6987 6508 7371 4753 -7255 5031 7069 4240 7070 -7256 4007 6878 5223 7402 -7257 7345 4906 6590 7410 -7258 3935 7209 7210 5221 -7259 5280 4815 7210 7209 -7260 7072 4882 7071 7070 -7261 4901 6728 4684 7275 -7262 4926 7053 4912 6969 -7263 4303 6819 7199 5228 -7264 7199 6819 7254 4010 -7265 4956 7254 6819 5227 -7266 6744 3908 6719 7240 -7267 4969 7098 5051 7245 -7268 4814 7310 4193 6625 -7269 4176 7250 4932 6899 -7270 6653 4661 7321 4806 -7271 4158 7324 5046 7119 -7272 3854 7388 4898 6628 -7273 4934 6934 4933 7012 -7274 4914 7223 5118 7301 -7275 6218 3977 6248 6247 -7276 6051 4986 7422 7175 -7277 6254 7175 7422 5146 -7278 5560 6556 7409 4808 -7279 5924 6724 4205 7412 -7280 4148 6627 4719 7346 -7281 5692 7091 6983 6853 -7282 4120 7430 4709 6547 -7283 4959 7302 4958 7478 -7284 6922 7225 7109 4928 -7285 4047 7173 4775 6858 -7286 7263 4983 6879 7367 -7287 5162 6520 7498 3904 -7288 5157 7390 4782 6608 -7289 7457 6869 7314 4279 -7290 7317 7314 6869 4953 -7291 6406 4122 7473 4764 -7292 4205 7413 5144 7412 -7293 7343 7475 6550 4778 -7294 5155 4346 4906 7345 -7295 5042 7362 4269 7267 -7296 5111 3860 7313 6725 -7297 6879 4707 6665 7367 -7298 4778 6705 4081 7343 -7299 4604 6765 5064 6310 -7300 6891 7259 6817 4821 -7301 6891 7208 7302 4959 -7302 3954 7247 4987 7008 -7303 4037 5751 3939 4142 -7304 4093 5528 6909 4185 -7305 6284 5016 7093 7261 -7306 5948 4958 7302 7193 -7307 3997 6831 4878 6832 -7308 4942 6713 4889 7436 -7309 4715 6989 5364 7190 -7310 3880 6941 7451 5086 -7311 5447 7388 3854 6773 -7312 4626 6673 5081 7491 -7313 4092 5879 5586 5587 -7314 4241 7180 4868 7013 -7315 6387 6814 7495 4000 -7316 6719 4874 6943 7240 -7317 4668 7357 5534 6846 -7318 190 191 7067 7416 -7319 4184 6844 4857 7392 -7320 4304 6958 5189 7407 -7321 4170 6636 4731 6880 -7322 5100 6900 4279 7314 -7323 7456 5101 6843 7370 -7324 5030 7069 5031 7188 -7325 5785 7246 6984 4859 -7326 142 7292 4846 6915 -7327 6222 6739 7483 4779 -7328 4214 6996 5041 7255 -7329 6357 7065 7214 4654 -7330 5144 7413 4892 7320 -7331 4205 6817 4892 7413 -7332 4996 7085 4949 7248 -7333 6860 3862 6780 4610 -7334 3990 6933 5063 7321 -7335 4175 4510 6250 6249 -7336 4771 4770 6386 3851 -7337 6442 4106 7109 7225 -7338 5254 7184 4828 7165 -7339 5042 7267 4909 7033 -7340 5123 4251 7434 5163 -7341 5985 4974 7434 4251 -7342 4081 6705 4787 6512 -7343 6368 4237 7232 7198 -7344 6909 5528 6382 4720 -7345 5450 6896 3930 7397 -7346 6809 4908 7495 6814 -7347 4764 7473 7005 5363 -7348 4894 4893 4049 6752 -7349 6730 4588 7230 6833 -7350 7198 7232 7274 5025 -7351 5076 7362 5042 7256 -7352 5032 7189 4987 7247 -7353 4194 7387 4836 6991 -7354 4696 5191 6576 6575 -7355 6375 4870 7021 7384 -7356 6847 4185 6909 6848 -7357 4958 6931 4985 7478 -7358 6707 7274 7232 5026 -7359 7208 4204 7193 7302 -7360 7312 5536 4472 4008 -7361 5439 7112 4447 7385 -7362 7395 4945 7416 7067 -7363 5074 7220 4980 7327 -7364 4675 6742 4723 6743 -7365 5074 7327 4259 7467 -7366 4857 6749 5140 7088 -7367 4184 7392 5216 7219 -7368 6824 5320 7352 7377 -7369 6842 3946 7131 4660 -7370 7072 7408 4388 4881 -7371 5381 7353 7389 4261 -7372 5794 4905 7377 7352 -7373 5892 5060 7389 7353 -7374 5060 7365 5071 7389 -7375 3932 7354 5330 7489 -7376 3894 7356 5086 7451 -7377 4026 5667 6946 5066 -7378 4992 7234 4219 7492 -7379 4270 5629 3993 5912 -7380 5628 7277 7071 3937 -7381 5113 7468 5074 7467 -7382 6063 7480 7457 5207 -7383 6869 7457 7480 5020 -7384 7075 4823 7077 7076 -7385 5587 3851 6386 4280 -7386 4894 5433 6013 4893 -7387 6168 6169 7446 4116 -7388 6956 7207 5936 3919 -7389 6525 4347 7340 6524 -7390 6816 4220 5936 7207 -7391 6833 4919 4235 6730 -7392 6543 3948 6847 6848 -7393 3997 6832 4919 6833 -7394 4185 4771 3851 4093 -7395 5586 4093 3851 5587 -7396 6733 4982 3928 4854 -7397 5989 4854 3928 6029 -7398 4239 3947 4518 4008 -7399 4518 3947 4728 4216 -7400 5040 3947 4239 5148 -7401 6752 4049 3949 4298 -7402 4879 4075 4298 3949 -7403 6847 4271 4845 3955 -7404 6526 6525 5187 3964 -7405 5302 3965 4855 4718 -7406 4853 7311 4175 3978 -7407 4175 4397 6497 3978 -7408 4044 4216 3993 4272 -7409 4728 4416 3993 4216 -7410 4272 3993 5629 4271 -7411 5912 3993 4416 4415 -7412 4612 3995 5191 6580 -7413 4612 5807 5806 3995 -7414 4964 4009 5097 4897 -7415 5653 4015 5698 5296 -7416 5029 4015 5586 6238 -7417 5667 4026 4844 4812 -7418 5751 4037 5881 4052 -7419 6730 4042 5369 4588 -7420 6039 4052 4344 4840 -7421 5882 4344 4052 5881 -7422 6258 4052 6039 4525 -7423 3919 4053 6526 4375 -7424 6527 4053 6258 4525 -7425 5203 4333 5964 4055 -7426 6818 4633 5128 4055 -7427 7452 5187 6525 4071 -7428 4896 4298 4075 4856 -7429 4115 4083 4555 4787 -7430 5057 4555 4083 6914 -7431 6923 5295 4083 5780 -7432 5182 5296 5780 4083 -7433 5586 5879 4091 6238 -7434 5587 4280 4847 4092 -7435 5528 4093 5653 4829 -7436 6966 4102 5170 6952 -7437 6966 4845 5275 4102 -7438 7312 4721 5097 4114 -7439 4389 4178 4115 5206 -7440 4082 7350 4115 4178 -7441 7446 6250 4510 4116 -7442 4743 4125 4770 4126 -7443 4770 4125 4769 5545 -7444 7283 5935 4769 4125 -7445 3955 4612 6580 4126 -7446 6386 4127 4863 4280 -7447 4037 4142 4904 4625 -7448 4982 4173 4981 6803 -7449 7311 4855 4510 4175 -7450 6275 4182 5559 4455 -7451 3964 5187 4182 6275 -7452 4794 4214 7255 4749 -7453 4728 5039 4214 4794 -7454 4728 4794 4215 4416 -7455 7401 5159 4416 4215 -7456 4794 4749 5792 4215 -7457 6832 4234 4235 4919 -7458 7213 4238 7425 5088 -7459 4008 4472 5599 4239 -7460 4951 5440 4270 5912 -7461 5629 5275 4845 4271 -7462 4037 4275 4529 5881 -7463 5638 4529 4275 6186 -7464 4037 4625 6857 4275 -7465 6275 4455 6981 4333 -7466 5964 4333 6981 4962 -7467 7340 4347 4545 4994 -7468 6695 6497 4397 5400 -7469 4963 6981 4455 5579 -7470 5942 5001 4840 4839 -7471 4347 4525 5002 4545 -7472 6666 5002 4525 6039 -7473 6666 6242 4545 5002 -7474 3974 4585 7177 4758 -7475 3974 7182 6203 4585 -7476 7230 4588 5369 6191 -7477 6025 4624 4904 6374 -7478 4624 6266 4625 4904 -7479 6266 5831 6857 4625 -7480 5107 4665 6957 5015 -7481 5097 4721 4893 4897 -7482 4124 7077 4823 5545 -7483 7166 4839 5857 5260 -7484 5273 5274 4853 4851 -7485 4718 4855 7311 4856 -7486 4854 5989 4856 7311 -7487 4997 4882 7072 4881 -7488 6752 4895 5860 4894 -7489 5432 5433 4894 4923 -7490 4856 5989 6029 4896 -7491 7196 4964 4897 5809 -7492 5065 5807 5066 6554 -7493 4114 6644 5095 5904 -7494 7279 5169 5275 6415 -7495 4083 5295 5437 6914 -7496 5202 200 5 105 -3 1 5 3698 -7497 3143 1152 1878 770 6792 4801 5527 4419 -7498 2885 322 2428 1160 6534 3971 6077 4809 -7499 446 2202 914 1472 4095 5851 4563 5121 -7500 1310 3242 417 3162 4959 6891 4066 6811 -7501 1059 1800 463 2228 4708 5449 4112 5877 -7502 502 1526 653 1527 4151 5175 4302 5176 -7503 2037 776 3068 1154 5686 4425 6717 4803 -7504 2209 411 1616 2099 5858 4060 5265 5748 -7505 1150 1706 363 2767 4799 5355 4012 6416 -7506 573 3444 1394 3378 4222 7093 5043 7027 -7507 2895 1877 428 1291 6544 5526 4077 4940 -7508 1316 1621 786 3228 4965 5270 4435 6877 -7509 720 1608 635 1673 4369 5257 4284 5322 -7510 427 3604 1602 2959 4076 7253 5251 6608 -7511 77 76 1488 2437 173 172 5137 6086 -7512 232 2203 3189 1921 3881 5852 6838 5570 -7513 1148 3234 569 1426 4797 6883 4218 5075 -7514 214 1529 2393 3121 3863 5178 6042 6770 -7515 2097 2953 604 1419 5746 6602 4253 5068 -7516 463 1800 1078 2416 4112 5449 4727 6065 -7517 274 1721 772 1496 3923 5370 4421 5145 -7518 842 1438 498 2235 4491 5087 4147 5884 -7519 1263 1919 3003 3404 4912 5568 6652 7053 -7520 1704 1400 707 3514 5353 5049 4356 7163 -7521 641 1813 3617 2779 4290 5462 7266 6428 -7522 55 2460 1487 56 151 6109 5136 152 -7523 1749 1245 1274 2266 5398 4894 4923 5915 -7524 13 12 2469 1566 109 108 6118 5215 -7525 1421 261 1306 1753 5070 3910 4955 5402 -7526 841 2109 256 1530 4490 5758 3905 5179 -7527 510 1950 1026 2579 4159 5599 4675 6228 -7528 3473 1394 3444 3612 7122 5043 7093 7261 -7529 3473 2473 2565 1394 7122 6122 6214 5043 -7530 752 1298 474 2251 4401 4947 4123 5900 -7531 2648 842 2638 1226 6297 4491 6287 4875 -7532 1851 2412 3478 375 5500 6061 7127 4024 -7533 882 1291 428 2632 4531 4940 4077 6281 -7534 2204 1403 604 2953 5853 5052 4253 6602 -7535 1364 3271 2723 382 5013 6920 6372 4031 -7536 765 1637 362 1811 4414 5286 4011 5460 -7537 1137 1849 764 2399 4786 5498 4413 6048 -7538 2229 1185 1827 712 5878 4834 5476 4361 -7539 223 1890 730 1467 3872 5539 4379 5116 -7540 2023 581 3047 1622 5672 4230 6696 5271 -7541 1897 1564 2803 518 5546 5213 6452 4167 -7542 2242 848 1470 2692 5891 4497 5119 6341 -7543 1394 1038 1384 3378 5043 4687 5033 7027 -7544 3305 1360 1650 391 6954 5009 5299 4040 -7545 81 1639 2277 82 177 5288 5926 178 -7546 1384 1038 1340 3325 5033 4687 4989 6974 -7547 511 2258 822 2001 4160 5907 4471 5650 -7548 925 1874 215 1933 4574 5523 3864 5582 -7549 1339 618 1212 2974 4988 4267 4861 6623 -7550 1657 3786 1341 641 5306 7435 4990 4290 -7551 2035 733 1809 1201 5684 4382 5458 4850 -7552 824 1825 3300 2152 4473 5474 6949 5801 -7553 2710 500 1678 1350 6359 4149 5327 4999 -7554 1307 3364 592 1578 4956 7013 4241 5227 -7555 1178 1699 371 2939 4827 5348 4020 6588 -7556 835 1898 546 1840 4484 5547 4195 5489 -7557 2744 1108 3323 1751 6393 4757 6972 5400 -7558 1008 3239 1661 2739 4657 6888 5310 6388 -7559 777 2405 1720 2542 4426 6054 5369 6191 -7560 2870 1282 1874 269 6519 4931 5523 3918 -7561 1571 1643 1642 659 5220 5292 5291 4308 -7562 2787 507 1796 1269 6436 4156 5445 4918 -7563 3189 1859 201 2330 6838 5508 3850 5979 -7564 2755 1545 416 1922 6404 5194 4065 5571 -7565 1177 2169 504 2153 4826 5818 4153 5802 -7566 1606 2117 1519 624 5255 5766 5168 4273 -7567 1853 261 1421 1976 5502 3910 5070 5625 -7568 2664 1258 2854 291 6313 4907 6503 3940 -7569 1852 1561 24 23 5501 5210 120 119 -7570 3204 2043 226 1833 6853 5692 3875 5482 -7571 1862 2388 2108 218 5511 6037 5757 3867 -7572 2242 3798 2726 506 5891 7447 6375 4155 -7573 957 1828 700 2090 4606 5477 4349 5739 -7574 2996 255 1513 2083 6645 3904 5162 5732 -7575 784 1939 1782 3839 4433 5588 5431 7488 -7576 2802 1280 1814 330 6451 4929 5463 3979 -7577 71 1613 2549 72 167 5262 6198 168 -7578 368 3282 1336 1920 4017 6931 4985 5569 -7579 945 1978 723 1656 4594 5627 4372 5305 -7580 2112 1494 2694 516 5761 5143 6343 4165 -7581 3384 1393 1638 452 7033 5042 5287 4101 -7582 724 3374 1564 1897 4373 7023 5213 5546 -7583 1393 3607 619 1638 5042 7256 4268 5287 -7584 1973 1251 1961 650 5622 4900 5610 4299 -7585 677 1667 1114 2730 4326 5316 4763 6379 -7586 966 1531 353 2530 4615 5180 4002 6179 -7587 2808 291 2854 1287 6457 3940 6503 4936 -7588 2578 934 1460 1881 6227 4583 5109 5530 -7589 103 102 1636 2883 199 198 5285 6532 -7590 2826 1290 1772 246 6475 4939 5421 3895 -7591 2853 1224 1731 402 6502 4873 5380 4051 -7592 2664 1269 1796 643 6313 4918 5445 4292 -7593 1832 834 2484 1329 5481 4483 6133 4978 -7594 612 1732 835 1840 4261 5381 4484 5489 -7595 3463 620 2270 1790 7112 4269 5919 5439 -7596 2890 1682 714 2007 6539 5331 4363 5656 -7597 840 2218 1053 2450 4489 5867 4702 6099 -7598 725 3647 1449 1960 4374 7296 5098 5609 -7599 2470 943 1528 2012 6119 4592 5177 5661 -7600 3325 367 1623 1384 6974 4016 5272 5033 -7601 947 1489 584 2881 4596 5138 4233 6530 -7602 2665 1559 2273 982 6314 5208 5922 4631 -7603 2288 1227 2057 3114 5937 4876 5706 6763 -7604 907 2723 3820 1908 4556 6372 7469 5557 -7605 998 2963 2892 1858 4647 6612 6541 5507 -7606 569 3361 1351 2207 4218 7010 5000 5856 -7607 777 2542 1476 2365 4426 6191 5125 6014 -7608 2794 902 2807 1293 6443 4551 6456 4942 -7609 637 1831 2765 2515 4286 5480 6414 6164 -7610 1239 2685 239 2894 4888 6334 3888 6543 -7611 3337 1387 3107 301 6986 5036 6756 3950 -7612 1302 1791 3736 1790 4951 5440 7385 5439 -7613 2941 421 1907 1257 6590 4070 5556 4906 -7614 223 2309 830 1444 3872 5958 4479 5093 -7615 3059 1987 408 1719 6708 5636 4057 5368 -7616 769 2207 1351 3377 4418 5856 5000 7026 -7617 3209 1709 632 2595 6858 5358 4281 6244 -7618 3213 1066 2071 1361 6862 4715 5720 5010 -7619 3817 3251 1419 604 7466 6900 5068 4253 -7620 2991 1997 1466 921 6640 5646 5115 4570 -7621 500 2684 1093 1678 4149 6333 4742 5327 -7622 384 2505 997 2038 4033 6154 4646 5687 -7623 320 2138 1297 3504 3969 5787 4946 7153 -7624 430 1744 742 1794 4079 5393 4391 5443 -7625 2580 1350 1678 1119 6229 4999 5327 4768 -7626 553 3285 1284 2769 4202 6934 4933 6418 -7627 247 1990 731 1461 3896 5639 4380 5110 -7628 1902 2734 2323 785 5551 6383 5972 4434 -7629 1683 651 2954 3140 5332 4300 6603 6789 -7630 248 1467 730 1981 3897 5116 4379 5630 -7631 3412 1747 1363 243 7061 5396 5012 3892 -7632 2420 2431 355 1694 6069 6080 4004 5343 -7633 312 1799 874 1962 3961 5448 4523 5611 -7634 212 1960 1449 3689 3861 5609 5098 7338 -7635 2882 203 1753 1306 6531 3852 5402 4955 -7636 2989 450 1928 1324 6638 4099 5577 4973 -7637 2979 743 2070 1249 6628 4392 5719 4898 -7638 2235 498 1961 1251 5884 4147 5610 4900 -7639 2972 938 2743 1322 6621 4587 6392 4971 -7640 2350 503 2791 1253 5999 4152 6440 4902 -7641 3125 1617 923 2370 6774 5266 4572 6019 -7642 2286 1355 2580 1119 5935 5004 6229 4768 -7643 2821 1776 93 92 6470 5425 189 188 -7644 1086 2610 595 2219 4735 6259 4244 5868 -7645 90 2616 1785 91 186 6265 5434 187 -7646 1923 1075 2410 3279 5572 4724 6059 6928 -7647 3370 2930 540 1365 7019 6579 4189 5014 -7648 2194 761 3494 1808 5843 4410 7143 5457 -7649 3354 2195 786 1621 7003 5844 4435 5270 -7650 2092 217 1721 2265 5741 3866 5370 5914 -7651 3012 2372 3831 1371 6661 6021 7480 5020 -7652 2038 671 1914 1289 5687 4320 5563 4938 -7653 508 1609 1217 3790 4157 5258 4866 7439 -7654 422 3488 2875 2876 4071 7137 6524 6525 -7655 1892 1696 1436 738 5541 5345 5085 4387 -7656 2866 1527 653 1822 6515 5176 4302 5471 -7657 1744 430 2348 2954 5393 4079 5997 6603 -7658 1274 1783 302 1822 4923 5432 3951 5471 -7659 3222 554 2654 1378 6871 4203 6303 5027 -7660 573 3378 1384 3019 4222 7027 5033 6668 -7661 3270 2305 3109 594 6919 5954 6758 4243 -7662 1909 321 1617 1339 5558 3970 5266 4988 -7663 3830 1860 3064 1240 7479 5509 6713 4889 -7664 1266 3134 953 1992 4915 6783 4602 5641 -7665 1815 668 2288 2362 5464 4317 5937 6011 -7666 1267 3687 1522 2746 4916 7336 5171 6395 -7667 527 2010 1151 2397 4176 5659 4800 6046 -7668 2377 2617 2182 492 6026 6266 5831 4141 -7669 541 3134 1266 2247 4190 6783 4915 5896 -7670 3026 1341 2074 639 6675 4990 5723 4288 -7671 3787 1293 2807 242 7436 4942 6456 3891 -7672 2019 374 2387 1328 5668 4023 6036 4977 -7673 2922 1646 1788 795 6571 5295 5437 4444 -7674 1621 1316 540 2930 5270 4965 4189 6579 -7675 367 3325 1340 2008 4016 6974 4989 5657 -7676 2703 1913 419 1406 6352 5562 4068 5055 -7677 1259 1840 546 3160 4908 5489 4195 6809 -7678 2672 572 2000 1273 6321 4221 5649 4922 -7679 850 2860 1272 1907 4499 6509 4921 5556 -7680 2528 653 1526 1684 6177 4302 5175 5333 -7681 605 2075 1013 1539 4254 5724 4662 5188 -7682 2190 843 3180 1282 5839 4492 6829 4931 -7683 1845 1638 758 3461 5494 5287 4407 7110 -7684 1708 3562 3523 652 5357 7211 7172 4301 -7685 1009 1442 409 3015 4658 5091 4058 6664 -7686 428 1817 1420 2632 4077 5466 5069 6281 -7687 2514 370 1810 1295 6163 4019 5459 4944 -7688 2110 878 1490 1835 5759 4527 5139 5484 -7689 2895 1291 1870 800 6544 4940 5519 4449 -7690 268 1290 3190 2921 3917 4939 6839 6570 -7691 3152 558 3220 1304 6801 4207 6869 4953 -7692 627 2796 1078 1800 4276 6445 4727 5449 -7693 2620 294 3475 1457 6269 3943 7124 5106 -7694 1164 3288 1555 3505 4813 6937 5204 7154 -7695 915 1861 472 2066 4564 5510 4121 5715 -7696 3383 2176 746 1710 7032 5825 4395 5359 -7697 2133 1373 1882 717 5782 5022 5531 4366 -7698 70 1837 1613 71 166 5486 5262 167 -7699 870 1833 226 1967 4519 5482 3875 5616 -7700 1762 2659 2409 483 5411 6308 6058 4132 -7701 2698 1819 635 1681 6347 5468 4284 5330 -7702 3602 1490 878 1611 7251 5139 4527 5260 -7703 2616 1346 1775 278 6265 4995 5424 3927 -7704 589 3776 1482 2237 4238 7425 5131 5886 -7705 3276 640 2514 1295 6925 4289 6163 4944 -7706 2397 628 1758 1443 6046 4277 5407 5092 -7707 2274 657 3129 1356 5923 4306 6778 5005 -7708 1568 654 1463 3811 5217 4303 5112 7460 -7709 323 2999 1093 2683 3972 6648 4742 6332 -7710 747 2086 872 1895 4396 5735 4521 5544 -7711 2647 1604 2813 244 6296 5253 6462 3893 -7712 2520 1386 1941 774 6169 5035 5590 4423 -7713 1475 1759 2583 710 5124 5408 6232 4359 -7714 1859 276 3064 1860 5508 3925 6713 5509 -7715 1702 651 1683 2983 5351 4300 5332 6632 -7716 2644 539 3286 1311 6293 4188 6935 4960 -7717 1968 1559 2665 464 5617 5208 6314 4113 -7718 1901 1660 1757 658 5550 5309 5406 4307 -7719 2613 1839 419 2656 6262 5488 4068 6305 -7720 90 89 1346 2616 186 185 4995 6265 -7721 3785 1514 1792 332 7434 5163 5441 3981 -7722 826 2095 744 2220 4475 5744 4393 5869 -7723 3480 2126 725 1241 7129 5775 4374 4890 -7724 417 2586 979 1774 4066 6235 4628 5423 -7725 1384 1623 632 3019 5033 5272 4281 6668 -7726 1869 1420 1817 645 5518 5069 5466 4294 -7727 338 3574 1469 2691 3987 7223 5118 6340 -7728 496 1941 1386 3575 4145 5590 5035 7224 -7729 1305 3302 1459 249 4954 6951 5108 3898 -7730 523 1624 781 1766 4172 5273 4430 5415 -7731 221 1743 717 1882 3870 5392 4366 5531 -7732 305 3598 1383 2713 3954 7247 5032 6362 -7733 1820 401 1727 1563 5469 4050 5376 5212 -7734 2594 1374 2352 213 6243 5023 6001 3862 -7735 3153 262 1561 1852 6802 3911 5210 5501 -7736 2127 1406 664 3240 5776 5055 4313 6889 -7737 55 54 1503 2460 151 150 5152 6109 -7738 77 2437 1496 78 173 6086 5145 174 -7739 1820 1571 1672 401 5469 5220 5321 4050 -7740 1796 365 1552 643 5445 4014 5201 4292 -7741 3594 781 1624 1625 7243 4430 5273 5274 -7742 2378 1354 1850 755 6027 5003 5499 4404 -7743 2378 327 3057 1354 6027 3976 6706 5003 -7744 3407 1325 2319 807 7056 4974 5968 4456 -7745 1057 3366 1497 3149 4706 7015 5146 6798 -7746 2797 629 1501 2054 6446 4278 5150 5703 -7747 2996 2165 229 1583 6645 5814 3878 5232 -7748 3717 1504 2409 942 7366 5153 6058 4591 -7749 2851 706 2882 1306 6500 4355 6531 4955 -7750 2633 1420 1869 487 6282 5069 5518 4136 -7751 3500 1456 3473 3612 7149 5105 7122 7261 -7752 721 2183 1465 3568 4370 5832 5114 7217 -7753 600 1699 1178 3100 4249 5348 4827 6749 -7754 3700 1318 2946 915 7349 4967 6595 4564 -7755 834 2636 1238 2484 4483 6285 4887 6133 -7756 3370 1365 3022 461 7019 5014 6671 4110 -7757 1533 3701 466 434 5182 7350 4115 4083 -7758 3259 411 2209 1311 6908 4060 5858 4960 -7759 1287 2854 646 2161 4936 6503 4295 5810 -7760 3730 2662 484 1711 7379 6311 4133 5360 -7761 273 2267 893 1665 3922 5916 4542 5314 -7762 839 1936 201 1859 4488 5585 3850 5508 -7763 2134 704 2068 1330 5783 4353 5717 4979 -7764 2957 1494 645 1818 6606 5143 4294 5467 -7765 3012 1371 3220 558 6661 5020 6869 4207 -7766 2108 1342 2007 218 5757 4991 5656 3867 -7767 838 2299 368 1543 4487 5948 4017 5192 -7768 2494 1312 1998 207 6143 4961 5647 3856 -7769 2212 2482 1247 1246 5861 6131 4896 4895 -7770 36 2134 1330 37 132 5783 4979 133 -7771 2200 716 2989 1324 5849 4365 6638 4973 -7772 3051 1675 11 10 6700 5324 107 106 -7773 563 2677 1927 3341 4212 6326 5576 6990 -7774 2110 2208 1611 878 5759 5857 5260 4527 -7775 2830 780 2115 1317 6479 4429 5764 4966 -7776 1702 2958 1664 651 5351 6607 5313 4300 -7777 428 1877 891 2480 4077 5526 4540 6129 -7778 490 1902 785 1686 4139 5551 4434 5335 -7779 3228 409 2464 1316 6877 4058 6113 4965 -7780 3123 1321 1883 606 6772 4970 5532 4255 -7781 1971 1423 1904 672 5620 5072 5553 4321 -7782 2244 665 2065 1327 5893 4314 5714 4976 -7783 2318 1344 1872 689 5967 4993 5521 4338 -7784 1743 272 1983 1587 5392 3921 5632 5236 -7785 870 1834 275 1833 4519 5483 3924 5482 -7786 3122 966 2039 1388 6771 4615 5688 5037 -7787 2944 1053 2218 1368 6593 4702 5867 5017 -7788 2194 1630 2905 761 5843 5279 6554 4410 -7789 497 2933 1226 2638 4146 6582 4875 6287 -7790 1320 2172 810 2634 4969 5821 4459 6283 -7791 1054 1758 628 2891 4703 5407 4277 6540 -7792 3424 922 2710 1350 7073 4571 6359 4999 -7793 2652 736 1913 1326 6301 4385 5562 4975 -7794 284 2906 1124 2518 3933 6555 4773 6167 -7795 3217 1413 3019 632 6866 5062 6668 4281 -7796 342 1954 834 1832 3991 5603 4483 5481 -7797 2201 716 2200 1368 5850 4365 5849 5017 -7798 1414 3452 551 2327 5063 7101 4200 5976 -7799 3717 624 1519 1525 7366 4273 5168 5174 -7800 1657 641 2780 1722 5306 4290 6429 5371 -7801 2552 650 2019 1328 6201 4299 5668 4977 -7802 3813 1537 2020 397 7462 5186 5669 4046 -7803 2868 1361 2071 578 6517 5010 5720 4227 -7804 2226 1335 2623 203 5875 4984 6272 3852 -7805 2833 875 1909 1357 6482 4524 5558 5006 -7806 1152 2533 3310 1878 4801 6182 6959 5527 -7807 3026 1802 337 1813 6675 5451 3986 5462 -7808 2337 2753 1546 560 5986 6402 5195 4209 -7809 307 2958 1161 2449 3956 6607 4810 6098 -7810 3066 1552 1929 749 6715 5201 5578 4398 -7811 1699 600 1607 2611 5348 4249 5256 6260 -7812 317 2183 1021 2022 3966 5832 4670 5671 -7813 518 3073 1102 1897 4167 6722 4751 5546 -7814 366 2049 2447 1380 4015 5698 6096 5029 -7815 709 1385 254 2139 4358 5034 3903 5788 -7816 3521 1471 2365 599 7170 5120 6014 4248 -7817 898 2165 3054 2078 4547 5814 6703 5727 -7818 2592 1337 2516 839 6241 4986 6165 4488 -7819 2253 1672 1571 659 5902 5321 5220 4308 -7820 3600 578 2071 1427 7249 4227 5720 5076 -7821 418 1850 912 2147 4067 5499 4561 5796 -7822 1979 924 1557 288 5628 4573 5206 3937 -7823 3099 2236 232 1921 6748 5885 3881 5570 -7824 319 2831 1251 1973 3968 6480 4900 5622 -7825 1804 378 2193 1615 5453 4027 5842 5264 -7826 3009 552 2087 1379 6658 4201 5736 5028 -7827 3010 1379 2274 424 6659 5028 5923 4073 -7828 1110 1762 483 2789 4759 5411 4132 6438 -7829 605 2442 1054 2020 4254 6091 4703 5669 -7830 784 3048 475 1939 4433 6697 4124 5588 -7831 2115 1635 3645 1317 5764 5284 7294 4966 -7832 1915 308 2679 1454 5564 3957 6328 5103 -7833 3274 794 2447 2049 6923 4443 6096 5698 -7834 416 1545 692 1867 4065 5194 4341 5516 -7835 1216 2075 605 3178 4865 5724 4254 6827 -7836 3778 1375 3114 1531 7427 5024 6763 5180 -7837 3779 561 3757 1532 7428 4210 7406 5181 -7838 2748 912 1850 1354 6397 4561 5499 5003 -7839 2253 868 1286 1672 5902 4517 4935 5321 -7840 2992 1816 1530 256 6641 5465 5179 3905 -7841 986 2295 638 1899 4635 5944 4287 5548 -7842 2029 849 2407 2620 5678 4498 6056 6269 -7843 2894 239 2119 3199 6543 3888 5768 6848 -7844 516 2694 1188 2602 4165 6343 4837 6251 -7845 771 2302 890 2129 4420 5951 4539 5778 -7846 1424 1943 376 3353 5073 5592 4025 7002 -7847 2907 1376 1633 522 6556 5025 5282 4171 -7848 699 1763 1154 3435 4348 5412 4803 7084 -7849 415 3206 1212 2400 4064 6855 4861 6049 -7850 1019 2100 547 2122 4668 5749 4196 5771 -7851 1836 1518 2451 640 5485 5167 6100 4289 -7852 1665 3144 1487 273 5314 6793 5136 3922 -7853 1666 274 1488 3145 5315 3923 5137 6794 -7854 1284 3363 611 2082 4933 7012 4260 5731 -7855 1548 676 1535 3821 5197 4325 5184 7470 -7856 1549 265 1536 3822 5198 3914 5185 7471 -7857 1793 685 3316 1592 5442 4334 6965 5241 -7858 883 2423 285 1565 4532 6072 3934 5214 -7859 3841 1558 715 1645 7490 5207 4364 5294 -7860 1387 2660 674 3107 5036 6309 4323 6756 -7861 2585 859 2680 1347 6234 4508 6329 4996 -7862 405 1643 658 1757 4054 5292 4307 5406 -7863 396 1676 729 1873 4045 5325 4378 5522 -7864 2092 2952 265 1549 5741 6601 3914 5198 -7865 2546 1349 1704 407 6195 4998 5353 4056 -7866 1545 3262 1278 692 5194 6911 4927 4341 -7867 3047 1579 654 1142 6696 5228 4303 4791 -7868 3343 1884 353 2057 6992 5533 4002 5706 -7869 1901 1780 2177 1660 5550 5429 5826 5309 -7870 1114 1990 1486 3375 4763 5639 5135 7024 -7871 3307 1305 249 2354 6956 4954 3898 6003 -7872 2286 1120 3048 1355 5935 4769 6697 5004 -7873 1520 1521 1061 1786 5169 5170 4710 5435 -7874 2192 1374 2594 836 5841 5023 6243 4485 -7875 2076 558 3152 1480 5725 4207 6801 5129 -7876 2218 468 2201 1368 5867 4117 5850 5017 -7877 391 1650 879 1835 4040 5299 4528 5484 -7878 1820 1563 732 3793 5469 5212 4381 7442 -7879 2141 540 1926 1401 5790 4189 5575 5050 -7880 1931 278 1775 1481 5580 3927 5424 5130 -7881 1425 2934 683 3819 5074 6583 4332 7468 -7882 2778 1396 2307 227 6427 5045 5956 3876 -7883 1360 3779 625 1650 5009 7428 4274 5299 -7884 708 1399 408 3345 4357 5048 4057 6994 -7885 2629 1364 2660 559 6278 5013 6309 4208 -7886 3159 219 1976 1421 6808 3868 5625 5070 -7887 1299 2761 256 2109 4948 6410 3905 5758 -7888 1820 658 1643 1571 5469 4307 5292 5220 -7889 717 1999 968 2133 4366 5648 4617 5782 -7890 3702 241 2746 1522 7351 3890 6395 5171 -7891 3144 1665 59 58 6793 5314 155 154 -7892 3145 74 73 1666 6794 170 169 5315 -7893 2908 267 2352 1374 6557 3916 6001 5023 -7894 3821 264 2951 1548 7470 3913 6600 5197 -7895 612 3484 1422 3740 4261 7133 5071 7389 -7896 3543 1367 2739 369 7192 5016 6388 4018 -7897 3758 1422 3484 1540 7407 5071 7133 5189 -7898 2722 1958 916 1457 6371 5607 4565 5106 -7899 2563 383 3429 1359 6212 4032 7078 5008 -7900 1793 1792 1514 685 5442 5441 5163 4334 -7901 2141 1401 2056 691 5790 5050 5705 4340 -7902 64 2945 1595 65 160 6594 5244 161 -7903 507 3083 1194 1796 4156 6732 4843 5445 -7904 2398 752 1841 1517 6047 4401 5490 5166 -7905 2370 1806 3540 603 6019 5455 7189 4252 -7906 3071 1048 3022 1365 6720 4697 6671 5014 -7907 2550 2058 446 1472 6199 5707 4095 5121 -7908 2648 3732 1438 842 6297 7381 5087 4491 -7909 3070 1771 230 1640 6719 5420 3879 5289 -7910 2527 2917 1801 538 6176 6566 5450 4187 -7911 3494 1193 2646 1808 7143 4842 6295 5457 -7912 3437 640 2451 1468 7086 4289 6100 5117 -7913 3437 1468 2789 483 7086 5117 6438 4132 -7914 1496 2437 1488 274 5145 6086 5137 3923 -7915 2712 3240 664 1734 6361 6889 4313 5383 -7916 923 1617 321 2531 4572 5266 3970 6180 -7917 1956 391 1835 1490 5605 4040 5484 5139 -7918 794 2922 1224 2447 4443 6571 4873 6096 -7919 2162 2525 1895 872 5811 6174 5544 4521 -7920 1718 711 1669 693 5367 4360 5318 4342 -7921 3775 1547 2471 311 7424 5196 6120 3960 -7922 2041 648 1525 1519 5690 4297 5174 5168 -7923 1503 273 1487 2460 5152 3922 5136 6109 -7924 2466 863 2332 1370 6115 4512 5981 5019 -7925 1991 1463 1578 592 5640 5112 5227 4241 -7926 369 3400 1705 3543 4018 7049 5354 7192 -7927 204 3294 1373 2133 3853 6943 5022 5782 -7928 3368 2473 3473 1456 7017 6122 7122 5105 -7929 386 1614 3548 3476 4035 5263 7197 7125 -7930 1956 1490 3602 681 5605 5139 7251 4330 -7931 396 1873 1099 2811 4045 5522 4748 6460 -7932 2808 2419 1821 291 6457 6068 5470 3940 -7933 3468 1970 1500 587 7117 5619 5149 4236 -7934 1774 1692 2923 616 5423 5341 6572 4265 -7935 2274 1379 2087 657 5923 5028 5736 4306 -7936 3471 1377 3058 287 7120 5026 6707 3936 -7937 1982 3142 2392 532 5631 6791 6041 4181 -7938 1922 1592 1807 686 5571 5241 5456 4335 -7939 383 1899 1250 3062 4032 5548 4899 6711 -7940 482 3014 1219 2474 4131 6663 4868 6123 -7941 1059 3255 801 2210 4708 6904 4450 5859 -7942 211 1825 824 2009 3860 5474 4473 5658 -7943 2485 421 2362 1375 6134 4070 6011 5024 -7944 3534 1502 1998 756 7183 5151 5647 4405 -7945 1415 2769 655 3309 5064 6418 4304 6958 -7946 3808 1558 3841 630 7457 5207 7490 4279 -7947 1886 3660 732 1563 5535 7309 4381 5212 -7948 3170 1578 1463 654 6819 5227 5112 4303 -7949 1030 3270 1450 2394 4679 6919 5099 6043 -7950 2204 304 2472 1403 5853 3953 6121 5052 -7951 3316 1474 2184 398 6965 5123 5833 4047 -7952 701 1843 345 1629 4350 5492 3994 5278 -7953 3597 1433 2918 2572 7246 5082 6567 6221 -7954 1886 1563 1727 719 5535 5212 5376 4368 -7955 549 3762 1482 3207 4198 7411 5131 6856 -7956 1331 2082 611 3571 4980 5731 4260 7220 -7957 3680 2022 1021 2839 7329 5671 4670 6488 -7958 2946 2491 1861 915 6595 6140 5510 4564 -7959 401 1672 1286 3737 4050 5321 4935 7386 -7960 3192 464 2172 1434 6841 4113 5821 5083 -7961 2916 2012 709 3091 6565 5661 4358 6740 -7962 2905 1416 3494 761 6554 5065 7143 4410 -7963 2813 1395 1745 244 6462 5044 5394 3893 -7964 2189 3119 2314 1033 5838 6768 5963 4682 -7965 1738 705 1252 1857 5387 4354 4901 5506 -7966 562 2990 1167 1812 4211 6639 4816 5461 -7967 3567 1573 2222 679 7216 5222 5871 4328 -7968 3522 348 1489 1767 7171 3997 5138 5416 -7969 386 3140 3043 1614 4035 6789 6692 5263 -7970 99 2083 1513 100 195 5732 5162 196 -7971 229 2070 743 1583 3878 5719 4392 5232 -7972 3305 391 1956 1388 6954 4040 5605 5037 -7973 1526 502 1265 2356 5175 4151 4914 6005 -7974 2653 941 2713 1383 6302 4590 6362 5032 -7975 2645 1381 2510 783 6294 5030 6159 4432 -7976 3846 351 3309 1540 7495 4000 6958 5189 -7977 2222 1696 1892 679 5871 5345 5541 4328 -7978 2109 3477 220 1299 5758 7126 3869 4948 -7979 2065 665 1881 1460 5714 4314 5530 5109 -7980 2464 409 1442 2061 6113 4058 5091 5710 -7981 1649 3836 3726 688 5298 7485 7375 4337 -7982 3144 3509 56 1487 6793 7158 152 5136 -7983 3145 1488 76 3510 6794 5137 172 7159 -7984 2720 1395 2529 210 6369 5044 6178 3859 -7985 2720 830 1745 1395 6369 4479 5394 5044 -7986 475 1656 723 1939 4124 5305 4372 5588 -7987 2441 260 2215 1566 6090 3909 5864 5215 -7988 2441 1566 2469 857 6090 5215 6118 4506 -7989 3729 702 1940 327 7378 4351 5589 3976 -7990 977 2960 502 1527 4626 6609 4151 5176 -7991 2727 2191 1009 1778 6376 5840 4658 5427 -7992 1303 2327 551 2792 4952 5976 4200 6441 -7993 958 2779 1175 3138 4607 6428 4824 6787 -7994 892 1818 645 1817 4541 5467 4294 5466 -7995 2568 969 3235 1711 6217 4618 6884 5360 -7996 3329 80 2331 1407 6978 176 5980 5056 -7997 1033 1923 537 2189 4682 5572 4186 5838 -7998 2117 1606 2132 913 5766 5255 5781 4562 -7999 1226 2933 972 1966 4875 6582 4621 5615 -8000 2008 1500 3113 367 5657 5149 6762 4016 -8001 1131 3388 1493 1981 4780 7037 5142 5630 -8002 689 1872 790 1871 4338 5521 4439 5520 -8003 2119 1772 1290 268 5768 5421 4939 3917 -8004 1031 2893 371 1699 4680 6542 4020 5348 -8005 303 1401 1926 2371 3952 5050 5575 6020 -8006 2564 959 2408 1735 6213 4608 6057 5384 -8007 208 2163 1081 2260 3857 5812 4730 5909 -8008 2641 825 1404 1770 6290 4474 5053 5419 -8009 3099 2096 209 1294 6748 5745 3858 4943 -8010 3295 1412 2347 52 6944 5061 5996 148 -8011 3683 1539 2490 357 7332 5188 6139 4006 -8012 2847 1397 2425 820 6496 5046 6074 4469 -8013 3066 749 1794 2033 6715 4398 5443 5682 -8014 910 3301 1253 2791 4559 6950 4902 6440 -8015 2794 1483 2163 902 6443 5132 5812 4551 -8016 3135 3155 757 2212 6784 6804 4406 5861 -8017 3439 292 3348 1491 7088 3941 6997 5140 -8018 1894 3623 3384 452 5543 7272 7033 4101 -8019 2703 1406 2127 577 6352 5055 5776 4226 -8020 1922 416 1793 1592 5571 4065 5442 5241 -8021 2053 2840 2443 462 5702 6489 6092 4111 -8022 3116 1415 3309 351 6765 5064 6958 4000 -8023 3666 2909 1667 677 7315 6558 5316 4326 -8024 2378 2379 3729 327 6027 6028 7378 3976 -8025 1999 717 1743 1587 5648 4366 5392 5236 -8026 3775 727 1991 1547 7424 4376 5640 5196 -8027 2883 666 3051 1553 6532 4315 6700 5202 -8028 3296 35 2724 1466 6945 131 6373 5115 -8029 1406 2479 1410 664 5055 6128 5059 4313 -8030 3547 512 2159 2160 7196 4161 5808 5809 -8031 2747 1407 2331 772 6396 5056 5980 4421 -8032 1921 3189 2330 2671 5570 6838 5979 6320 -8033 1584 692 1278 2017 5233 4341 4927 5666 -8034 2302 771 2032 2627 5951 4420 5681 6276 -8035 3154 1333 279 2463 6803 4982 3928 6112 -8036 3827 913 2132 1803 7476 4562 5781 5452 -8037 3538 234 1535 676 7187 3883 5184 4325 -8038 1910 1826 1757 776 5559 5475 5406 4425 -8039 2862 681 2180 1725 6511 4330 5829 5374 -8040 2505 1674 1952 718 6154 5323 5601 4367 -8041 3194 660 2619 1452 6843 4309 6268 5101 -8042 103 2883 1553 104 199 6532 5202 200 -8043 1314 2970 405 1930 4963 6619 4054 5579 -8044 468 2977 1171 2201 4117 6626 4820 5850 -8045 3445 2040 2942 1043 7094 5689 6591 4692 -8046 505 2867 1086 2219 4154 6516 4735 5868 -8047 2769 1600 2366 655 6418 5249 6015 4304 -8048 1693 3149 252 1444 5342 6798 3901 5093 -8049 2649 283 2534 1409 6298 3932 6183 5058 -8050 3296 1466 704 2134 6945 5115 4353 5783 -8051 2945 64 63 2429 6594 160 159 6078 -8052 1942 851 2118 2179 5591 4500 5767 5828 -8053 2608 1742 583 1509 6257 5391 4232 5158 -8054 2448 1410 3475 294 6097 5059 7124 3943 -8055 3316 685 1514 1474 6965 4334 5163 5123 -8056 42 41 3554 1918 138 137 7203 5567 -8057 1082 1995 613 2760 4731 5644 4262 6409 -8058 2776 775 2347 1412 6425 4424 5996 5061 -8059 1314 2555 682 2970 4963 6204 4331 6619 -8060 3193 1477 2583 1011 6842 5126 6232 4660 -8061 3766 638 2880 1567 7415 4287 6529 5216 -8062 899 3460 1279 3074 4548 7109 4928 6723 -8063 1136 2396 778 3401 4785 6045 4427 7050 -8064 218 2007 714 1596 3867 5656 4363 5245 -8065 1254 3650 1544 2553 4903 7299 5193 6202 -8066 1077 2911 364 1755 4726 6560 4013 5404 -8067 3554 2476 3754 1288 7203 6125 7403 4937 -8068 496 2385 1001 1941 4145 6034 4650 5590 -8069 3650 292 1453 1544 7299 3941 5102 5193 -8070 3837 693 1669 1730 7486 4342 5318 5379 -8071 1293 3064 276 2203 4942 6713 3925 5852 -8072 2416 1599 3401 463 6065 5248 7050 4112 -8073 3011 1423 1971 372 6660 5072 5620 4021 -8074 2740 1890 223 1444 6389 5539 3872 5093 -8075 28 2858 1654 29 124 6507 5303 125 -8076 3758 1823 3716 1422 7407 5472 7365 5071 -8077 2249 2939 2063 873 5898 6588 5712 4522 -8078 2632 1420 2633 882 6281 5069 6282 4531 -8079 3236 262 3153 1428 6885 3911 6802 5077 -8080 2439 2253 1644 326 6088 5902 5293 3975 -8081 3068 776 1757 1660 6717 4425 5406 5309 -8082 2152 2307 1396 824 5801 5956 5045 4473 -8083 3348 703 2113 1491 6997 4352 5762 5140 -8084 1757 1826 1930 405 5406 5475 5579 4054 -8085 1915 1454 848 3252 5564 5103 4497 6901 -8086 1065 2219 595 2879 4714 5868 4244 6528 -8087 2245 1023 2706 3035 5894 4672 6355 6684 -8088 2036 2812 2317 854 5685 6461 5966 4503 -8089 3299 1480 3152 1031 6948 5129 6801 4680 -8090 3057 327 1940 1591 6706 3976 5589 5240 -8091 1837 2578 1536 265 5486 6227 5185 3914 -8092 2280 788 1964 1601 5929 4437 5613 5250 -8093 380 1390 1389 3381 4029 5039 5038 7030 -8094 3533 2278 2279 984 7182 5927 5928 4633 -8095 3715 1562 2361 413 7364 5211 6010 4062 -8096 441 1912 1050 2566 4090 5561 4699 6215 -8097 2989 716 2076 1480 6638 4365 5725 5129 -8098 2255 1447 3498 1446 5904 5096 7147 5095 -8099 1218 2831 319 2432 4867 6480 3968 6081 -8100 2970 682 1644 1642 6619 4331 5293 5291 -8101 3809 1581 2223 817 7458 5230 5872 4466 -8102 2676 1441 2151 237 6325 5090 5800 3886 -8103 3411 3467 2215 260 7060 7116 5864 3909 -8104 442 2589 2590 2588 4091 6238 6239 6237 -8105 1983 227 1999 1587 5632 3876 5648 5236 -8106 2913 1435 1915 671 6562 5084 5564 4320 -8107 397 2891 1303 1972 4046 6540 4952 5621 -8108 3669 1555 3288 333 7318 5204 6937 3982 -8109 1110 2369 1546 3495 4759 6018 5195 7144 -8110 500 2710 1139 1992 4149 6359 4788 5641 -8111 3208 1087 2064 2182 6857 4736 5713 5831 -8112 1366 1302 1790 2270 5015 4951 5439 5919 -8113 1848 711 1718 412 5497 4360 5367 4061 -8114 2767 2005 2978 1150 6416 5654 6627 4799 -8115 1338 3359 1200 2559 4987 7008 4849 6208 -8116 1426 3109 2305 1148 5075 6758 5954 4797 -8117 3214 1918 3258 1268 6863 5567 6907 4917 -8118 3150 365 3782 1426 6799 4014 7431 5075 -8119 3594 524 1332 2027 7243 4173 4981 5676 -8120 740 3081 393 1348 4389 6730 4042 4997 -8121 306 1122 1121 477 3955 4771 4770 4126 -8122 2528 1684 3523 399 6177 5333 7172 4048 -8123 3286 1705 3259 1311 6935 5354 6908 4960 -8124 2291 481 2048 1485 5940 4130 5697 5134 -8125 2629 3624 3271 1364 6278 7273 6920 5013 -8126 2095 826 1884 1848 5744 4475 5533 5497 -8127 3431 763 2052 1508 7080 4412 5701 5157 -8128 2132 2427 1996 744 5781 6076 5645 4393 -8129 3566 2639 3557 656 7215 6288 7206 4305 -8130 2139 254 2386 1498 5788 3903 6035 5147 -8131 2834 960 2918 1433 6483 4609 6567 5082 -8132 3847 1600 2769 1284 7496 5249 6418 4933 -8133 3847 381 2366 1600 7496 4030 6015 5249 -8134 3632 1188 2694 1551 7281 4837 6343 5200 -8135 754 2013 799 1866 4403 5662 4448 5515 -8136 3403 1504 3331 370 7052 5153 6980 4019 -8137 2072 636 1888 1543 5721 4285 5537 5192 -8138 1245 1749 3649 2211 4894 5398 7298 5860 -8139 749 1945 430 1794 4398 5594 4079 5443 -8140 927 2059 331 2103 4576 5708 3980 5752 -8141 462 2487 935 2053 4111 6136 4584 5702 -8142 3743 1567 2880 1208 7392 5216 6529 4857 -8143 2682 791 2852 1431 6331 4440 6501 5080 -8144 469 2450 1053 2021 4118 6099 4702 5670 -8145 2331 3106 1496 772 5980 6755 5145 4421 -8146 2117 440 2041 1519 5766 4089 5690 5168 -8147 985 2512 342 1832 4634 6161 3991 5481 -8148 3666 677 3822 2303 7315 4326 7471 5952 -8149 3788 1586 2013 754 7437 5235 5662 4403 -8150 2654 2428 322 1378 6303 6077 3971 5027 -8151 2366 1823 3758 655 6015 5472 7407 4304 -8152 3690 580 1759 1475 7339 4229 5408 5124 -8153 2652 308 1915 1435 6301 3957 5564 5084 -8154 3600 1427 3713 1824 7249 5076 7362 5473 -8155 498 1438 703 2717 4147 5087 4352 6366 -8156 3339 1697 1572 286 6988 5346 5221 3935 -8157 2995 1446 2273 1559 6644 5095 5922 5208 -8158 2687 1680 2221 587 6336 5329 5870 4236 -8159 1153 2409 1504 3403 4802 6058 5153 7052 -8160 3747 1680 2687 792 7396 5329 6336 4441 -8161 2091 216 2777 1548 5740 3865 6426 5197 -8162 2092 1549 2730 217 5741 5198 6379 3866 -8163 3023 1455 2966 908 6672 5104 6615 4557 -8164 1940 702 1718 693 5589 4351 5367 4342 -8165 2236 1483 2794 232 5885 5132 6443 3881 -8166 3079 1035 1898 3712 6728 4684 5547 7361 -8167 2347 775 1503 3141 5996 4424 5152 6790 -8168 2704 668 1780 1677 6353 4317 5429 5326 -8169 250 2444 1516 3719 3899 6093 5165 7368 -8170 1991 727 1738 3322 5640 4376 5387 6971 -8171 620 3618 1260 2270 4269 7267 4909 5919 -8172 586 290 493 585 4235 3939 4142 4234 -8173 1409 3730 633 2649 5058 7379 4282 6298 -8174 601 1610 3635 3561 4250 5259 7284 7210 -8175 3224 249 1459 3018 6873 3898 5108 6667 -8176 563 1952 1674 3490 4212 5601 5323 7139 -8177 3198 536 1122 306 6847 4185 4771 3955 -8178 3433 1517 1841 499 7082 5166 5490 4148 -8179 356 2700 967 2642 4005 6349 4616 6291 -8180 2416 811 1610 1599 6065 4460 5259 5248 -8181 1143 2607 787 2823 4792 6256 4436 6472 -8182 3554 1288 272 1918 7203 4937 3921 5567 -8183 3018 1459 2882 706 6667 5108 6531 4355 -8184 3052 3371 402 1731 6701 7020 4051 5380 -8185 3538 676 1663 2413 7187 4325 5312 6062 -8186 3324 1770 1404 667 6973 5419 5053 4316 -8187 3367 1016 1894 1015 7016 4665 5543 4664 -8188 3682 1570 634 1453 7331 5219 4283 5102 -8189 2479 1839 3475 1410 6128 5488 7124 5059 -8190 2821 946 1985 1776 6470 4595 5634 5425 -8191 292 2880 3682 1453 3941 6529 7331 5102 -8192 3503 1477 2089 598 7152 5126 5738 4247 -8193 879 1650 625 1988 4528 5299 4274 5637 -8194 1491 2113 600 3100 5140 5762 4249 6749 -8195 293 1649 885 2495 3942 5298 4534 6144 -8196 856 1561 262 2571 4505 5210 3911 6220 -8197 1271 3327 437 2657 4920 6976 4086 6306 -8198 3461 758 1541 1804 7110 4407 5190 5453 -8199 2332 3072 925 1370 5981 6721 4574 5019 -8200 1261 2225 990 3472 4910 5874 4639 7121 -8201 3469 1524 2853 402 7118 5173 6502 4051 -8202 3468 587 2221 1524 7117 4236 5870 5173 -8203 2519 2520 774 2199 6168 6169 4423 5848 -8204 3710 1577 3516 614 7359 5226 7165 4263 -8205 2118 337 1802 2179 5767 3986 5451 5828 -8206 2644 765 1811 1746 6293 4414 5460 5395 -8207 2158 696 3493 1416 5807 4345 7142 5065 -8208 2841 1441 725 2126 6490 5090 4374 5775 -8209 2929 251 2003 1455 6578 3900 5652 5104 -8210 1584 2077 1867 692 5233 5726 5516 4341 -8211 2560 3072 230 1771 6209 6721 3879 5420 -8212 1499 589 2237 1074 5148 4238 5886 4723 -8213 3241 2195 3354 314 6890 5844 7003 3963 -8214 2458 2046 933 3293 6107 5695 4582 6942 -8215 1369 2224 389 3459 5018 5873 4038 7108 -8216 3159 1481 1775 219 6808 5130 5424 3868 -8217 1307 2474 1219 3364 4956 6123 4868 7013 -8218 2264 3215 2683 953 5913 6864 6332 4602 -8219 19 2185 1528 20 115 5834 5177 116 -8220 1439 3207 1482 3776 5088 6856 5131 7425 -8221 2943 2174 724 1897 6592 5823 4373 5546 -8222 2914 1641 805 2545 6563 5290 4454 6194 -8223 1213 290 586 529 4862 3939 4235 4178 -8224 1141 2817 509 1984 4790 6466 4158 5633 -8225 1828 2401 1827 414 5477 6050 5476 4063 -8226 1718 3212 1209 412 5367 6861 4858 4061 -8227 2892 2154 1934 919 6541 5803 5583 4568 -8228 3345 1590 2080 708 6994 5239 5729 4357 -8229 2504 1505 2718 242 6153 5154 6367 3891 -8230 1637 2099 1616 615 5286 5748 5265 4264 -8231 1767 1489 947 3102 5416 5138 4596 6751 -8232 3146 1483 2236 266 6795 5132 5885 3915 -8233 1196 306 963 377 4845 3955 4612 4026 -8234 833 1755 364 2238 4482 5404 4013 5887 -8235 2185 709 2012 1528 5834 4358 5661 5177 -8236 2984 251 2929 1728 6633 3900 6578 5377 -8237 2955 495 3568 1465 6604 4144 7217 5114 -8238 2701 1456 2904 944 6350 5105 6553 4593 -8239 2972 1652 2213 938 6621 5301 5862 4587 -8240 3735 615 1616 1484 7384 4264 5265 5133 -8241 3463 1824 3713 620 7112 5473 7362 4269 -8242 3507 1659 2296 1179 7156 5308 5945 4828 -8243 1083 2649 633 2757 4732 6298 4282 6406 -8244 355 2431 1117 2887 4004 6080 4766 6536 -8245 3086 469 2583 1477 6735 4118 6232 5126 -8246 2722 907 1908 1958 6371 4556 5557 5607 -8247 754 1866 447 1942 4403 5515 4096 5591 -8248 3695 1182 3454 1582 7344 4831 7103 5231 -8249 1213 663 2102 290 4862 4312 5751 3939 -8250 2086 1867 2077 872 5735 5516 5726 4521 -8251 528 2559 1200 3196 4177 6208 4849 6845 -8252 3414 68 2065 1460 7063 164 5714 5109 -8253 3584 1399 708 1716 7233 5048 4357 5365 -8254 380 3381 1900 3486 4029 7030 5549 7135 -8255 485 1789 1183 3281 4134 5438 4832 6930 -8256 2621 1461 2234 222 6270 5110 5883 3871 -8257 3828 1004 2789 1468 7477 4653 6438 5117 -8258 3753 1064 2711 1574 7402 4713 6360 5223 -8259 2918 960 2691 1469 6567 4609 6340 5118 -8260 700 3225 3502 2090 4349 6874 7151 5739 -8261 3211 973 3091 1498 6860 4622 6740 5147 -8262 929 2566 1050 2702 4578 6215 4699 6351 -8263 3050 1029 3118 1478 6699 4678 6767 5127 -8264 1507 3030 1398 733 5156 6679 5047 4382 -8265 2041 1814 1280 648 5690 5463 4929 4297 -8266 2955 1465 3413 827 6604 5114 7062 4476 -8267 3157 672 1904 1799 6806 4321 5553 5448 -8268 2858 1632 3078 690 6507 5281 6727 4339 -8269 2072 1773 2540 636 5721 5422 6189 4285 -8270 1734 664 1410 2448 5383 4313 5059 6097 -8271 1596 714 3390 3411 5245 4363 7039 7060 -8272 2983 1683 2798 1170 6632 5332 6447 4819 -8273 3835 207 1998 1502 7484 3856 5647 5151 -8274 3556 874 1799 1904 7205 4523 5448 5553 -8275 3639 2226 904 2116 7288 5875 4553 5765 -8276 1470 848 1454 3139 5119 4497 5103 6788 -8277 2550 1472 3367 1015 6199 5121 7016 4664 -8278 3691 1105 1951 1345 7340 4754 5600 4994 -8279 3062 1805 647 1924 6711 5454 4296 5573 -8280 2609 403 2102 663 6258 4052 5751 4312 -8281 332 2319 1325 3785 3981 5968 4974 7434 -8282 2035 2772 1507 733 5684 6421 5156 4382 -8283 2796 627 1442 2169 6445 4276 5091 5818 -8284 2388 666 2883 1636 6037 4315 6532 5285 -8285 1932 828 2186 2324 5581 4477 5835 5973 -8286 861 467 1655 862 4510 4116 5304 4511 -8287 10 9 1553 3051 106 105 5202 6700 -8288 3636 2068 704 2815 7285 5717 4353 6464 -8289 3425 1161 2958 1702 7074 4810 6607 5351 -8290 2647 1473 2756 809 6296 5122 6405 4458 -8291 1222 2137 470 2838 4871 5786 4119 6487 -8292 398 1807 1592 3316 4047 5456 5241 6965 -8293 561 2489 1935 3757 4210 6138 5584 7406 -8294 908 2828 228 1575 4557 6477 3877 5224 -8295 2151 2921 3190 237 5800 6570 6839 3886 -8296 2008 2687 587 1500 5657 6336 4236 5149 -8297 3394 1607 600 2113 7043 5256 4249 5762 -8298 1930 1826 1910 806 5579 5475 5559 4455 -8299 424 2181 634 1570 4073 5830 4283 5219 -8300 2858 690 1903 1654 6507 4339 5552 5303 -8301 2043 2851 1729 226 5692 6500 5378 3875 -8302 3260 3199 2119 268 6909 6848 5768 3917 -8303 1268 2282 43 3214 4917 5931 139 6863 -8304 974 1706 577 2127 4623 5355 4226 5776 -8305 513 2675 1690 2547 4162 6324 5339 6196 -8306 1065 2320 505 2219 4714 5969 4154 5868 -8307 1821 3232 2664 291 5470 6881 6313 3940 -8308 2747 772 3375 1486 6396 4421 7024 5135 -8309 3834 1130 2628 1556 7483 4779 6277 5205 -8310 3698 258 1449 1598 7347 3907 5098 5247 -8311 1704 3514 1589 407 5353 7163 5238 4056 -8312 2211 3649 399 3135 5860 7298 4048 6784 -8313 3656 1810 370 3331 7305 5459 4019 6980 -8314 2961 236 2367 1620 6610 3885 6016 5269 -8315 2955 1756 2969 495 6604 5405 6618 4144 -8316 2313 981 3039 3174 5962 4630 6688 6823 -8317 3837 719 1727 1591 7486 4368 5376 5240 -8318 2845 1485 2048 994 6494 5134 5697 4643 -8319 596 3599 1347 2680 4245 7248 4996 6329 -8320 749 1929 769 1945 4398 5578 4418 5594 -8321 906 1764 3118 1765 4555 5413 6767 5414 -8322 2223 1773 2072 817 5872 5422 5721 4466 -8323 836 2119 239 2192 4485 5768 3888 5841 -8324 2776 1493 3448 775 6425 5142 7097 4424 -8325 647 2472 304 1501 4296 6121 3953 5150 -8326 2738 1585 2147 782 6387 5234 5796 4431 -8327 542 3073 1013 2075 4191 6722 4662 5724 -8328 235 2303 3822 1536 3884 5952 7471 5185 -8329 204 1891 1225 3294 3853 5540 4874 6943 -8330 1183 2656 419 3186 4832 6305 4068 6835 -8331 3750 1584 2017 616 7399 5233 5666 4265 -8332 2747 1486 1990 247 6396 5135 5639 3896 -8333 3663 918 2255 465 7312 4567 5904 4114 -8334 1099 1873 1308 3231 4748 5522 4957 6880 -8335 3726 1616 411 1906 7375 5265 4060 5555 -8336 2957 1042 2694 1494 6606 4691 6343 5143 -8337 1962 1963 1475 710 5611 5612 5124 4359 -8338 2254 3303 3200 1097 5903 6952 6849 4746 -8339 3577 2760 613 1601 7226 6409 4262 5250 -8340 2436 1506 2124 699 6085 5155 5773 4348 -8341 1319 2814 543 3039 4968 6463 4192 6688 -8342 2393 1529 2244 257 6042 5178 5893 3906 -8343 2161 646 1295 1810 5810 4295 4944 5459 -8344 354 2225 1140 2506 4003 5874 4789 6155 -8345 3362 1532 3757 1301 7011 5181 7406 4950 -8346 3676 1511 2963 998 7325 5160 6612 4647 -8347 3630 1520 1786 1787 7279 5169 5435 5436 -8348 491 1492 3557 2639 4140 5141 7206 6288 -8349 2124 1506 697 1864 5773 5155 4346 5513 -8350 2081 1689 2382 455 5730 5338 6031 4104 -8351 2348 430 1945 1740 5997 4079 5594 5389 -8352 2500 378 1804 1541 6149 4027 5453 5190 -8353 799 1863 336 2107 4448 5512 3985 5756 -8354 849 3206 415 1846 4498 6855 4064 5495 -8355 2776 248 1981 1493 6425 3897 5630 5142 -8356 277 3515 1192 1889 3926 7164 4841 5538 -8357 2605 252 3149 1497 6254 3901 6798 5146 -8358 1616 3726 3836 1484 5265 7375 7485 5133 -8359 2504 722 2250 1505 6153 4371 5899 5154 -8360 1716 708 2080 1691 5365 4357 5729 5340 -8361 1971 672 1324 1928 5620 4321 4973 5577 -8362 2333 61 60 1612 5982 157 156 5261 -8363 2123 3467 3411 1440 5772 7116 7060 5089 -8364 3007 336 1863 3679 6656 3985 5512 7328 -8365 333 1978 945 2028 3982 5627 4594 5677 -8366 974 2965 363 1706 4623 6614 4012 5355 -8367 3550 1579 3320 1277 7199 5228 6969 4926 -8368 2440 408 1987 1569 6089 4057 5636 5218 -8369 3132 606 1883 1512 6781 4255 5532 5161 -8370 3595 3024 562 1812 7244 6673 4211 5461 -8371 2758 613 1995 1511 6407 4262 5644 5160 -8372 2526 1509 3032 694 6175 5158 6681 4343 -8373 2451 1518 3590 307 6100 5167 7239 3956 -8374 3805 1726 2506 1140 7454 5375 6155 4789 -8375 1222 2879 595 2137 4871 6528 4244 5786 -8376 3745 2154 296 2889 7394 5803 3945 6538 -8377 1181 3107 674 3457 4830 6756 4323 7106 -8378 3654 1445 1968 1125 7303 5094 5617 4774 -8379 1077 1755 588 3267 4726 5404 4237 6916 -8380 1980 1626 2766 621 5629 5275 6415 4270 -8381 2966 680 1776 1985 6615 4329 5425 5634 -8382 1203 3087 1159 1911 4852 6736 4808 5560 -8383 1839 2479 1406 419 5488 6128 5055 4068 -8384 2608 1509 2526 373 6257 5158 6175 4022 -8385 2409 2659 1698 942 6058 6308 5347 4591 -8386 763 2885 1160 2052 4412 6534 4809 5701 -8387 2959 1508 2052 427 6608 5157 5701 4076 -8388 3746 1296 680 2003 7395 4945 4329 5652 -8389 3258 1743 221 1994 6907 5392 3870 5643 -8390 3611 1599 1610 601 7260 5248 5259 4250 -8391 3611 1136 3401 1599 7260 4785 7050 5248 -8392 3371 1580 3469 402 7020 5229 7118 4051 -8393 2752 866 2718 1505 6401 4515 6367 5154 -8394 3245 1960 212 1576 6894 5609 3861 5225 -8395 3507 1179 3516 1577 7156 4828 7165 5226 -8396 1150 2643 577 1706 4799 6292 4226 5355 -8397 435 2120 828 1932 4084 5769 4477 5581 -8398 2691 1766 781 2171 6340 5415 4430 5820 -8399 3430 739 1232 1348 7079 4388 4881 4997 -8400 2209 2099 1637 765 5858 5748 5286 4414 -8401 3627 280 2132 1606 7276 3929 5781 5255 -8402 2681 1619 3568 495 6330 5268 7217 4144 -8403 2044 492 2182 2064 5693 4141 5831 5713 -8404 1044 2088 293 2495 4693 5737 3942 6144 -8405 1982 1052 2827 3156 5631 4701 6476 6805 -8406 674 2660 1364 2836 4323 6309 5013 6485 -8407 58 57 3509 3144 154 153 7158 6793 -8408 74 3145 3510 75 170 6794 7159 171 -8409 3501 1857 3022 1048 7150 5506 6671 4697 -8410 2055 2915 1951 1105 5704 6564 5600 4754 -8411 1390 565 3347 1389 5039 4214 6996 5038 -8412 2981 597 3539 1712 6630 4246 7188 5361 -8413 859 2582 1634 2680 4508 6231 5283 6329 -8414 3841 1645 410 1419 7490 5294 4059 5068 -8415 27 26 1701 3078 123 122 5350 6727 -8416 424 2274 1356 1875 4073 5923 5005 5524 -8417 334 2580 1355 2417 3983 6229 5004 6066 -8418 3603 1133 2959 1602 7252 4782 6608 5251 -8419 3603 1602 2318 689 7252 5251 5967 4338 -8420 355 2775 940 1694 4004 6424 4589 5343 -8421 3555 1560 2093 753 7204 5209 5742 4402 -8422 1215 3608 210 2529 4864 7257 3859 6178 -8423 3299 2611 1607 450 6948 6260 5256 4099 -8424 215 3334 3204 1933 3864 6983 6853 5582 -8425 2561 745 1657 1722 6210 4394 5306 5371 -8426 612 1840 1259 3484 4261 5489 4908 7133 -8427 3433 922 3424 1517 7082 4571 7073 5166 -8428 2871 812 3731 1513 6520 4461 7380 5162 -8429 2030 2031 1657 745 5679 5680 5306 4394 -8430 3577 1601 1964 385 7226 5250 5613 4034 -8431 3179 489 2259 1534 6828 4138 5908 5183 -8432 2339 778 2023 1622 5988 4427 5672 5271 -8433 3374 1124 2906 1564 7023 4773 6555 5213 -8434 271 3814 1441 2841 3920 7463 5090 6490 -8435 985 1832 1329 2793 4634 5481 4978 6442 -8436 3519 1515 2788 436 7168 5164 6437 4085 -8437 2170 2956 1828 414 5819 6605 5477 4063 -8438 1987 3291 614 1569 5636 6940 4263 5218 -8439 872 2077 309 2162 4521 5726 3958 5811 -8440 3551 418 2147 1585 7200 4067 5796 5234 -8441 3518 1081 3146 1739 7167 4730 6795 5388 -8442 1689 707 1400 2140 5338 4356 5049 5789 -8443 564 3273 1329 2484 4213 6922 4978 6133 -8444 3531 1547 1991 592 7180 5196 5640 4241 -8445 2079 458 1934 3648 5728 4107 5583 7297 -8446 3804 1640 2864 1215 7453 5289 6513 4864 -8447 2947 917 3838 2567 6596 4566 7487 6216 -8448 3137 789 2500 1541 6786 4438 6149 5190 -8449 3027 992 3289 1534 6676 4641 6938 5183 -8450 2984 898 2509 1523 6633 4547 6158 5172 -8451 2035 1201 2910 3465 5684 4850 6559 7114 -8452 2833 429 3117 1556 6482 4078 6766 5205 -8453 2833 1556 2628 875 6482 5205 6277 4524 -8454 3175 1544 1453 634 6824 5193 5102 4283 -8455 680 2252 93 1776 4329 5901 189 5425 -8456 541 2247 983 2178 4190 5896 4632 5827 -8457 1834 870 2671 2330 5483 4519 6320 5979 -8458 2330 201 2466 1834 5979 3850 6115 5483 -8459 920 2961 1620 3042 4569 6610 5269 6691 -8460 3635 1610 811 2517 7284 5259 4460 6166 -8461 1536 2578 1881 235 5185 6227 5530 3884 -8462 1127 2322 1769 3397 4776 5971 5418 7046 -8463 318 2256 952 1948 3967 5905 4601 5597 -8464 1151 3136 628 2397 4800 6785 4277 6046 -8465 2540 1773 2223 471 6189 5422 5872 4120 -8466 2484 1238 3486 1900 6133 4887 7135 5549 -8467 2464 1926 540 1316 6113 5575 4189 4965 -8468 214 2752 1505 2250 3863 6401 5154 5899 -8469 2041 981 2313 1814 5690 4630 5962 5463 -8470 2902 474 1298 1782 6551 4123 4947 5431 -8471 460 2239 954 2246 4109 5888 4603 5895 -8472 2685 852 2754 1593 6334 4501 6403 5242 -8473 2685 1593 2908 239 6334 5242 6557 3888 -8474 505 2628 1130 2867 4154 6277 4779 6516 -8475 1256 3272 642 2145 4905 6921 4291 5794 -8476 2820 1695 1694 940 6469 5344 5343 4589 -8477 3197 1019 2122 3530 6846 4668 5771 7179 -8478 3175 950 2553 1544 6824 4599 6202 5193 -8479 2651 1142 654 1568 6300 4791 4303 5217 -8480 2853 1524 2221 793 6502 5173 5870 4442 -8481 3655 1622 3047 1142 7304 5271 6696 4791 -8482 3655 303 2339 1622 7304 3952 5988 5271 -8483 2947 2567 1887 511 6596 6216 5536 4160 -8484 3198 622 623 299 6847 4271 4272 3948 -8485 3815 1905 667 1404 7464 5554 4316 5053 -8486 561 2039 966 2489 4210 5688 4615 6138 -8487 1207 1069 231 426 4856 4718 3880 4075 -8488 2436 1993 2177 3761 6085 5642 5826 7410 -8489 292 3439 1208 2880 3941 7088 4857 6529 -8490 1515 3519 887 2217 5164 7168 4536 5866 -8491 720 2811 1297 2138 4369 6460 4946 5787 -8492 2440 1569 1605 735 6089 5218 5254 4384 -8493 2253 659 1642 1644 5902 4308 5291 5293 -8494 2338 3263 3314 796 5987 6912 6963 4445 -8495 2086 747 1792 1793 5735 4396 5441 5442 -8496 1809 733 1398 2457 5458 4382 5047 6106 -8497 3751 1597 2770 1146 7400 5246 6419 4795 -8498 2935 3794 2130 1017 6584 7443 5779 4666 -8499 3516 1605 1569 614 7165 5254 5218 4263 -8500 1848 412 1803 2095 5497 4061 5452 5744 -8501 2458 3845 3248 821 6107 7494 6897 4470 -8502 3230 1058 2196 3065 6879 4707 5845 6714 -8503 762 3432 1508 3741 4411 7081 5157 7390 -8504 3373 1565 1946 705 7022 5214 5595 4354 -8505 3551 1585 2738 1092 7200 5234 6387 4741 -8506 593 3584 1400 3633 4242 7233 5049 7282 -8507 2596 791 2682 1550 6245 4440 6331 5199 -8508 1235 2504 242 2807 4884 6153 3891 6456 -8509 287 3507 1577 3471 3936 7156 5226 7120 -8510 3407 807 1906 1838 7056 4456 5555 5487 -8511 2737 478 3426 1174 6386 4127 7075 4823 -8512 410 2146 1086 2742 4059 5795 4735 6391 -8513 2095 1803 2132 744 5744 5452 5781 4393 -8514 2647 809 1994 1604 6296 4458 5643 5253 -8515 3382 636 2540 1580 7031 4285 6189 5229 -8516 691 1568 3811 2499 4340 5217 7460 6148 -8517 3786 1657 2031 576 7435 5306 5680 4225 -8518 1332 2980 1080 2027 4981 6629 4729 5676 -8519 3548 1614 2411 607 7197 5263 6060 4256 -8520 3535 503 2350 1605 7184 4152 5999 5254 -8521 3068 1660 2177 1993 6717 5309 5826 5642 -8522 3253 1946 1565 285 6902 5595 5214 3934 -8523 3644 27 3078 1632 7293 123 6727 5281 -8524 3644 1632 2858 28 7293 5281 6507 124 -8525 3615 2463 279 2380 7264 6112 3928 6029 -8526 823 1950 510 2258 4472 5599 4159 5907 -8527 3313 1550 2699 853 6962 5199 6348 4502 -8528 1281 2753 796 2389 4930 6402 4445 6038 -8529 2630 1935 2489 993 6279 5584 6138 4642 -8530 2682 243 2699 1550 6331 3892 6348 5199 -8531 2694 1042 3174 1551 6343 4691 6823 5200 -8532 2786 1574 2711 531 6435 5223 6360 4180 -8533 432 3694 1478 3118 4081 7343 5127 6767 -8534 776 2037 533 1910 4425 5686 4182 5559 -8535 3517 877 3602 1611 7166 4526 7251 5260 -8536 2291 1735 2408 481 5940 5384 6057 4130 -8537 1224 2922 795 1731 4873 6571 4444 5380 -8538 785 2323 1117 2431 4434 5972 4766 6080 -8539 1548 2777 1663 676 5197 6426 5312 4325 -8540 1815 2177 1780 668 5464 5826 5429 4317 -8541 750 2432 319 1597 4399 6081 3968 5246 -8542 3624 2271 1501 629 7273 5920 5150 4278 -8543 2403 241 623 395 6052 3890 4272 4044 -8544 2222 436 1436 1696 5871 4085 5085 5345 -8545 3367 1472 914 2576 7016 5121 4563 6225 -8546 3411 260 2441 1596 7060 3909 6090 5245 -8547 3568 1619 3291 721 7217 5268 6940 4370 -8548 3848 1573 3592 753 7497 5222 7241 4402 -8549 1242 2897 983 2247 4891 6546 4632 5896 -8550 2744 1911 2907 522 6393 5560 6556 4171 -8551 503 2296 1847 2791 4152 5945 5496 6440 -8552 1867 2086 1793 416 5516 5735 5442 4065 -8553 2296 1659 2136 804 5945 5308 5785 4453 -8554 253 3687 1267 1795 3902 7336 4916 5444 -8555 3790 1608 2606 508 7439 5257 6255 4157 -8556 2702 2084 1952 929 6351 5733 5601 4578 -8557 2103 481 2408 927 5752 4130 6057 4576 -8558 356 2073 995 2454 4005 5722 4644 6103 -8559 3438 1774 616 2017 7087 5423 4265 5666 -8560 1189 1843 701 3410 4838 5492 4350 7059 -8561 682 2322 326 1644 4331 5971 3975 5293 -8562 3673 642 1356 2535 7322 4291 5005 6184 -8563 3063 1615 2193 818 6712 5264 5842 4467 -8564 2386 1620 2367 961 6035 5269 6016 4610 -8565 533 2037 1154 1763 4182 5686 4803 5412 -8566 3023 908 1575 1576 6672 4557 5224 5225 -8567 2475 30 29 1654 6124 126 125 5303 -8568 2120 890 2302 1916 5769 4539 5951 5565 -8569 2120 1916 2166 828 5769 5565 5815 4477 -8570 3722 352 1723 2859 7371 4001 5372 6508 -8571 3345 408 2440 1590 6994 4057 6089 5239 -8572 1820 3793 1901 658 5469 7442 5550 4307 -8573 2024 851 1942 2198 5673 4500 5591 5847 -8574 2538 2483 1759 580 6187 6132 5408 4229 -8575 3594 1625 1204 524 7243 5274 4853 4173 -8576 1430 2106 392 3567 5079 5755 4041 7216 -8577 2540 1112 3469 1580 6189 4761 7118 5229 -8578 1413 2739 1367 3447 5062 6388 5016 7096 -8579 2242 506 1289 1914 5891 4155 4938 5563 -8580 758 1638 619 3646 4407 5287 4268 7295 -8581 14 13 1566 2215 110 109 5215 5864 -8582 2995 1559 1968 1445 6644 5208 5617 5094 -8583 1864 422 3803 2124 5513 4071 7452 5773 -8584 3520 289 2093 1560 7169 3938 5742 5209 -8585 1176 2654 554 3177 4825 6303 4203 6826 -8586 1293 2203 232 2794 4942 5852 3881 6443 -8587 3579 1630 2194 1107 7228 5279 5843 4756 -8588 3445 1043 2422 1609 7094 4692 6071 5258 -8589 3445 1609 2663 669 7094 5258 6312 4318 -8590 3809 686 1807 1581 7458 4335 5456 5230 -8591 1137 2399 285 2423 4786 6048 3934 6072 -8592 1869 645 1494 2112 5518 4294 5143 5761 -8593 3719 2068 1462 250 7368 5717 5111 3899 -8594 2317 2044 2064 854 5966 5693 5713 4503 -8595 2497 1598 2676 237 6146 5247 6325 3886 -8596 1171 3012 558 2076 4820 6661 4207 5725 -8597 1052 1982 532 2774 4701 5631 4181 6423 -8598 2906 1111 2803 1564 6555 4760 6452 5213 -8599 263 1707 2707 2562 3912 5356 6356 6211 -8600 3278 979 2981 1712 6927 4628 6630 5361 -8601 3603 689 1871 2678 7252 4338 5520 6327 -8602 1134 1925 448 3158 4783 5574 4097 6807 -8603 2355 2214 1932 899 6004 5863 5581 4548 -8604 2010 737 1876 2801 5659 4386 5525 6450 -8605 1846 701 2175 2800 5495 4350 5824 6449 -8606 2562 1713 3035 263 6211 5362 6684 3912 -8607 3343 3110 1669 711 6992 6759 5318 4360 -8608 1081 2163 1483 3146 4730 5812 5132 6795 -8609 3641 1912 441 2457 7290 5561 4090 6106 -8610 1204 1202 3376 329 4853 4851 7025 3978 -8611 3042 254 1385 1603 6691 3903 5034 5252 -8612 1263 3320 581 2023 4912 6969 4230 5672 -8613 1756 1334 3230 2911 5405 4983 6879 6560 -8614 1858 2187 2351 998 5507 5836 6000 4647 -8615 1721 274 1666 2265 5370 3923 5315 5914 -8616 542 2075 1216 3097 4191 5724 4865 6746 -8617 2681 1144 3471 1577 6330 4793 7120 5226 -8618 3555 753 3592 1670 7204 4402 7241 5319 -8619 88 2285 1346 89 184 5934 4995 185 -8620 2433 606 3132 1628 6082 4255 6781 5277 -8621 2284 2829 17 16 5933 6478 113 112 -8622 2310 2006 2316 897 5959 5655 5965 4546 -8623 3130 3639 1576 1575 6779 7288 5225 5224 -8624 2731 2461 792 1340 6380 6110 4441 4989 -8625 892 1817 428 2480 4541 5466 4077 6129 -8626 2021 2618 1962 710 5670 6267 5611 4359 -8627 1050 1912 657 2087 4699 5561 4306 5736 -8628 3748 1141 1984 2414 7397 4790 5633 6063 -8629 46 45 1473 3266 142 141 5122 6915 -8630 3750 309 2077 1584 7399 3958 5726 5233 -8631 919 1934 458 2452 4568 5583 4107 6101 -8632 1430 3567 679 3711 5079 7216 4328 7360 -8633 2947 511 2001 2502 6596 4160 5650 6151 -8634 1191 2390 3017 1352 4840 6039 6666 5001 -8635 2822 449 2148 1975 6471 4098 5797 5624 -8636 2311 935 2487 2066 5960 4584 6136 5715 -8637 3465 2910 2967 987 7114 6559 6616 4636 -8638 2292 206 2115 1710 5941 3855 5764 5359 -8639 2267 273 1503 1724 5916 3922 5152 5373 -8640 3163 727 3775 1588 6812 4376 7424 5237 -8641 625 3779 1532 3796 4274 7428 5181 7445 -8642 901 2492 1028 2125 4550 6141 4677 5774 -8643 2357 3651 3359 305 6006 7300 7008 3954 -8644 1819 2465 1673 635 5468 6114 5322 4284 -8645 3684 2188 282 1778 7333 5837 3931 5427 -8646 3330 1607 3394 1003 6979 5256 7043 4652 -8647 2435 812 2388 1636 6084 4461 6037 5285 -8648 1459 3302 203 2882 5108 6951 3852 6531 -8649 2444 250 1462 3041 6093 3899 5111 6690 -8650 296 1995 1082 2889 3945 5644 4731 6538 -8651 3727 2105 3547 1315 7376 5754 7196 4964 -8652 2146 410 1645 1969 5795 4059 5294 5618 -8653 3669 333 2028 1736 7318 3982 5677 5385 -8654 2830 1627 2761 780 6479 5276 6410 4429 -8655 2625 2624 2410 1075 6274 6273 6059 4724 -8656 3047 581 3320 1579 6696 4230 6969 5228 -8657 2899 1589 3744 846 6548 5238 7393 4495 -8658 448 1586 639 3158 4097 5235 4288 6807 -8659 3778 1531 966 3122 7427 5180 4615 6771 -8660 818 2193 897 2316 4467 5842 4546 5965 -8661 3524 1581 1807 398 7173 5230 5456 4047 -8662 1676 2375 1717 728 5325 6024 5366 4377 -8663 3527 394 2016 1919 7176 4043 5665 5568 -8664 3703 374 2019 1671 7352 4023 5668 5320 -8665 1952 2084 3513 718 5601 5733 7162 4367 -8666 1015 2818 678 2550 4664 6467 4327 6199 -8667 2996 1583 3029 255 6645 5232 6678 3904 -8668 969 1973 650 2552 4618 5622 4299 6201 -8669 3400 1661 2336 768 7049 5310 5985 4417 -8670 3806 1358 277 1889 7455 5007 3926 5538 -8671 2129 1020 3677 771 5778 4669 7326 4420 -8672 2468 2085 3393 985 6117 5734 7042 4634 -8673 3057 1591 1727 670 6706 5240 5376 4319 -8674 2657 437 2024 1662 6306 4086 5673 5311 -8675 2982 845 2080 1590 6631 4494 5729 5239 -8676 3660 1886 1730 420 7309 5535 5379 4069 -8677 2288 3114 1375 2362 5937 6763 5024 6011 -8678 3679 1863 2511 1001 7328 5512 6160 4650 -8679 748 1751 3323 1750 4397 5400 6972 5399 -8680 3185 17 2829 1603 6834 113 6478 5252 -8681 2420 608 2751 1686 6069 4257 6400 5335 -8682 311 2471 1017 2130 3960 6120 4666 5779 -8683 1059 2210 627 1800 4708 5859 4276 5449 -8684 2908 1593 1880 267 6557 5242 5529 3916 -8685 2886 1631 608 971 6535 5280 4257 4620 -8686 1137 2602 1188 1849 4786 6251 4837 5498 -8687 3681 713 1481 3159 7330 4362 5130 6808 -8688 2239 897 2193 1768 5888 4546 5842 5417 -8689 1924 647 1501 2271 5573 4296 5150 5920 -8690 1591 1940 693 3837 5240 5589 4342 7486 -8691 893 2548 59 1665 4542 6197 155 5314 -8692 2549 894 2265 1666 6198 4543 5914 5315 -8693 640 3276 425 1836 4289 6925 4074 5485 -8694 3823 3611 601 1679 7472 7260 4250 5328 -8695 2945 911 3045 1595 6594 4560 6694 5244 -8696 3646 1715 2272 758 7295 5364 5921 4407 -8697 2914 804 2136 1641 6563 4453 5785 5290 -8698 2475 1654 1903 841 6124 5303 5552 4490 -8699 2348 3043 3140 2954 5997 6692 6789 6603 -8700 1608 3790 1681 635 5257 7439 5330 4284 -8701 2829 920 3042 1603 6478 4569 6691 5252 -8702 1772 2865 1418 246 5421 6514 5067 3895 -8703 2140 2844 831 1689 5789 6493 4480 5338 -8704 2863 1764 906 1138 6512 5413 4555 4787 -8705 2165 2996 2083 3054 5814 6645 5732 6703 -8706 2860 850 1725 2180 6509 4499 5374 5829 -8707 2916 1779 3350 238 6565 5428 6999 3887 -8708 3080 797 1572 1697 6729 4446 5221 5346 -8709 1103 2101 235 3049 4752 5750 3884 6698 -8710 3092 886 2813 1604 6741 4535 6462 5253 -8711 2645 903 2206 445 6294 4552 5855 4094 -8712 1024 2150 520 2478 4673 5799 4169 6127 -8713 3166 2073 356 2642 6815 5722 4005 6291 -8714 3092 1604 1994 221 6741 5253 5643 3870 -8715 632 1709 1008 3217 4281 5358 4657 6866 -8716 851 2098 803 2118 4500 5747 4452 5767 -8717 3402 2709 858 2088 7051 6358 4507 5737 -8718 1249 2070 1703 3638 4898 5719 5352 7287 -8719 2951 264 2333 1612 6600 3913 5982 5261 -8720 2951 1612 2548 893 6600 5261 6197 4542 -8721 2952 1613 1837 265 6601 5262 5486 3914 -8722 2952 894 2549 1613 6601 4543 6198 5262 -8723 2231 1988 1989 880 5880 5637 5638 4529 -8724 2491 747 1895 1861 6140 4396 5544 5510 -8725 2704 1677 3660 420 6353 5326 7309 4069 -8726 2675 513 3172 1797 6324 4162 6821 5446 -8727 1344 3196 1200 2042 4993 6845 4849 5691 -8728 947 2881 1170 2798 4596 6530 4819 6447 -8729 3563 1659 3507 287 7212 5308 7156 3936 -8730 619 2071 1066 3340 4268 5720 4715 6989 -8731 2754 1635 2115 206 6403 5284 5764 3855 -8732 3799 1182 2832 1700 7448 4831 6481 5349 -8733 3799 1700 1892 347 7448 5349 5541 3996 -8734 1287 2161 515 3164 4936 5810 4164 6813 -8735 962 3035 1713 3121 4611 6684 5362 6770 -8736 3660 1677 1780 732 7309 5326 5429 4381 -8737 1274 1822 653 2266 4923 5471 4302 5915 -8738 3705 1681 3790 1217 7354 5330 7439 4866 -8739 2956 1436 436 2788 6605 5085 4085 6437 -8740 3656 648 1280 2503 7305 4297 4929 6152 -8741 2420 1694 1695 608 6069 5343 5344 4257 -8742 3590 742 1744 1664 7239 4391 5393 5313 -8743 3451 2235 1251 2831 7100 5884 4900 6480 -8744 2767 1139 2710 2005 6416 4788 6359 5654 -8745 437 2098 851 2024 4086 5747 4500 5673 -8746 1749 2266 653 2528 5398 5915 4302 6177 -8747 240 2516 1337 3773 3889 6165 4986 7422 -8748 2187 1858 2498 519 5836 5507 6147 4168 -8749 328 2625 1075 2569 3977 6274 4724 6218 -8750 784 3839 3765 2417 4433 7488 7414 6066 -8751 498 2553 950 1961 4147 6202 4599 5610 -8752 1169 3280 884 2455 4818 6929 4533 6104 -8753 2571 262 3236 1651 6220 3911 6885 5300 -8754 3400 768 3259 1705 7049 4417 6908 5354 -8755 1470 2493 362 2692 5119 6142 4011 6341 -8756 3725 1687 2672 1273 7374 5336 6321 4922 -8757 2404 1739 3146 266 6053 5388 6795 3915 -8758 2764 253 3645 1635 6413 3902 7294 5284 -8759 2764 1635 2754 852 6413 5284 6403 4501 -8760 2498 987 2967 2047 6147 4636 6616 5696 -8761 2505 384 3774 1674 6154 4033 7423 5323 -8762 3125 618 1339 1617 6774 4267 4988 5266 -8763 850 1907 421 2485 4499 5556 4070 6134 -8764 3734 2610 820 2425 7383 6259 4469 6074 -8765 2942 901 1409 2534 6591 4550 5058 6183 -8766 3287 983 3355 1629 6936 4632 7004 5278 -8767 3092 221 1882 1618 6741 3870 5531 5267 -8768 3070 1225 269 1771 6719 4874 3918 5420 -8769 3518 1739 222 2234 7167 5388 3871 5883 -8770 3095 259 2805 1618 6744 3908 6454 5267 -8771 429 2833 1357 2835 4078 6482 5006 6484 -8772 3092 1618 2805 886 6741 5267 6454 4535 -8773 2680 1634 2666 596 6329 5283 6315 4245 -8774 2475 841 1530 3723 6124 4490 5179 7372 -8775 1166 2751 608 1631 4815 6400 4257 5280 -8776 1701 2488 1561 856 5350 6137 5210 4505 -8777 2488 1701 26 25 6137 5350 122 121 -8778 3398 1385 709 2185 7047 5034 4358 5834 -8779 542 2456 1102 3073 4191 6105 4751 6722 -8780 2621 222 3034 1748 6270 3871 6683 5397 -8781 3291 1987 3059 721 6940 5636 6708 4370 -8782 277 1748 3034 2335 3926 5397 6683 5984 -8783 3692 728 1717 2919 7341 4377 5366 6568 -8784 1525 3331 1504 3717 5174 6980 5153 7366 -8785 2150 3028 2543 520 5799 6677 6192 4169 -8786 336 3007 1220 3415 3985 6656 4869 7064 -8787 3354 1621 2930 964 7003 5270 6579 4613 -8788 3042 1620 2386 254 6691 5269 6035 3903 -8789 223 1770 3324 2309 3872 5419 6973 5958 -8790 3301 1634 313 1253 6950 5283 3962 4902 -8791 1202 1624 523 3087 4851 5273 4172 6736 -8792 95 3418 1523 96 191 7067 5172 192 -8793 572 2672 1056 3686 4221 6321 4705 7335 -8794 2782 1708 652 1986 6431 5357 4301 5635 -8795 2240 1872 1344 423 5889 5521 4993 4072 -8796 437 2062 803 2098 4086 5711 4452 5747 -8797 2431 2420 1686 785 6080 6069 5335 4434 -8798 3813 397 1972 1628 7462 4046 5621 5277 -8799 2663 2361 1562 669 6312 6010 5211 4318 -8800 2885 1808 2646 322 6534 5457 6295 3971 -8801 1189 3410 415 3148 4838 7059 4064 6797 -8802 734 2153 1687 3725 4383 5802 5336 7374 -8803 2116 3245 1576 3639 5765 6894 5225 7288 -8804 3405 1000 2940 1809 7054 4649 6589 5458 -8805 3448 1724 1503 775 7097 5373 5152 4424 -8806 2886 286 3560 1631 6535 3935 7209 5280 -8807 2991 1627 2830 233 6640 5276 6479 3882 -8808 2992 256 2761 1627 6641 3905 6410 5276 -8809 500 1992 953 2684 4149 5641 4602 6333 -8810 576 2359 926 2074 4225 6008 4575 5723 -8811 3747 442 2588 1680 7396 4091 6237 5329 -8812 1344 2318 528 3196 4993 5967 4177 6845 -8813 1347 3436 373 2526 4996 7085 4022 6175 -8814 3434 797 2016 1679 7083 4446 5665 5328 -8815 2946 1318 807 2319 6595 4967 4456 5968 -8816 3260 268 2921 1071 6909 3917 6570 4720 -8817 3643 1197 3440 1905 7292 4846 7089 5554 -8818 1534 2306 951 3179 5183 5955 4600 6828 -8819 881 2142 1100 2143 4530 5791 4749 5792 -8820 2465 3772 396 1673 6114 7421 4045 5322 -8821 3358 1234 3807 2034 7007 4883 7456 5683 -8822 1054 2891 397 2020 4703 6540 4046 5669 -8823 380 3486 1439 3564 4029 7135 5088 7213 -8824 2404 266 1294 1777 6053 3915 4943 5426 -8825 396 2811 720 1673 4045 6460 4369 5322 -8826 2391 1903 690 3408 6040 5552 4339 7057 -8827 882 2633 1588 3344 4531 6282 5237 6993 -8828 3801 1651 2176 220 7450 5300 5825 3869 -8829 1210 2136 1659 3563 4859 5785 5308 7212 -8830 3562 1264 399 3523 7211 4913 4048 7172 -8831 1076 2625 328 2600 4725 6274 3977 6249 -8832 847 2411 1614 3043 4496 6060 5263 6692 -8833 312 2944 1368 2200 3961 6593 5017 5849 -8834 2411 3555 1670 607 6060 7204 5319 4256 -8835 3430 1582 3454 739 7079 5231 7103 4388 -8836 973 2352 267 1779 4622 6001 3916 5428 -8837 2645 1712 3539 1381 6294 5361 7188 5030 -8838 3613 1691 2080 454 7262 5340 5729 4103 -8839 2575 2345 1892 738 6224 5994 5541 4387 -8840 1984 715 1558 2414 5633 4364 5207 6063 -8841 2687 2008 1340 792 6336 5657 4989 4441 -8842 2419 1877 2895 662 6068 5526 6544 4311 -8843 3400 369 2739 1661 7049 4018 6388 5310 -8844 376 1871 790 2262 4025 5520 4439 5911 -8845 3490 1674 3774 1187 7139 5323 7423 4836 -8846 591 2510 1381 3420 4240 6159 5030 7069 -8847 3632 1551 543 2379 7281 5200 4192 6028 -8848 205 3724 815 1688 3854 7373 4464 5337 -8849 1854 2269 2657 675 5503 5918 6306 4324 -8850 3677 1020 3777 1668 7326 4669 7426 5317 -8851 3752 1510 2576 914 7401 5159 6225 4563 -8852 2970 1642 1643 405 6619 5291 5292 4054 -8853 3236 746 2176 1651 6885 4395 5825 5300 -8854 2686 618 3125 1851 6335 4267 6774 5500 -8855 2532 1717 2375 1018 6181 5366 6024 4667 -8856 550 3122 1388 2862 4199 6771 5037 6511 -8857 1893 790 1872 2240 5542 4439 5521 5889 -8858 1192 3515 1747 3412 4841 7164 5396 7061 -8859 460 2310 897 2239 4109 5959 4546 5888 -8860 523 2144 1159 3087 4172 5793 4808 6736 -8861 1343 3585 1454 2679 4992 7234 5103 6328 -8862 2521 773 3528 1109 6170 4422 7177 4758 -8863 2210 2061 1442 627 5859 5710 5091 4276 -8864 881 2167 379 2142 4530 5816 4028 5791 -8865 3175 1671 3238 950 6824 5320 6887 4599 -8866 1181 3513 301 3107 4830 7162 3950 6756 -8867 3638 1703 2346 258 7287 5352 5995 3907 -8868 1254 3348 292 3650 4903 6997 3941 7299 -8869 3523 1684 1526 652 7172 5333 5175 4301 -8870 3755 1675 3051 666 7404 5324 6700 4315 -8871 2360 382 3275 867 6009 4031 6924 4516 -8872 1424 3201 762 1943 5073 6850 4411 5592 -8873 225 2896 1305 3167 3874 6545 4954 6816 -8874 2562 866 2752 1713 6211 4515 6401 5362 -8875 895 2486 616 2923 4544 6135 4265 6572 -8876 1349 3633 1400 1704 4998 7282 5049 5353 -8877 309 3750 1185 2229 3958 7399 4834 5878 -8878 548 2974 1212 3206 4197 6623 4861 6855 -8879 3121 2393 1685 962 6770 6042 5334 4611 -8880 3613 832 3089 1691 7262 4481 6738 5340 -8881 240 2459 863 2516 3889 6108 4512 6165 -8882 3311 1663 2777 1131 6960 5312 6426 4780 -8883 1770 223 1467 2641 5419 3872 5116 6290 -8884 1391 298 1079 1390 5040 3947 4728 5039 -8885 883 2112 516 2602 4532 5761 4165 6251 -8886 3837 1730 1886 719 7486 5379 5535 4368 -8887 2281 803 2062 2094 5930 4452 5711 5743 -8888 3711 679 1892 1700 7360 4328 5541 5349 -8889 857 2469 1675 3755 4506 6118 5324 7404 -8890 3537 1096 2629 559 7186 4745 6278 4208 -8891 2555 1769 2322 682 6204 5418 5971 4331 -8892 3343 711 1848 1884 6992 4360 5497 5533 -8893 3461 1804 1615 678 7110 5453 5264 4327 -8894 2720 1693 1444 830 6369 5342 5093 4479 -8895 3239 602 2336 1661 6888 4251 5985 5310 -8896 2198 814 1662 2024 5847 4463 5311 5673 -8897 3704 2243 314 1732 7353 5892 3963 5381 -8898 912 2148 782 2147 4561 5797 4431 5796 -8899 2501 1737 2399 764 6150 5386 6048 4413 -8900 2781 1821 2419 662 6430 5470 6068 4311 -8901 3053 1695 2820 431 6702 5344 6469 4080 -8902 3673 1714 2145 642 7322 5363 5794 4291 -8903 2261 1418 3131 3670 5910 5067 6780 7319 -8904 3259 1838 1906 411 6908 5487 5555 4060 -8905 3399 1816 2992 921 7048 5465 6641 4570 -8906 578 1786 1061 2868 4227 5435 4710 6517 -8907 3089 1690 2844 295 6738 5339 6493 3944 -8908 3684 675 2657 1662 7333 4324 6306 5311 -8909 3582 1687 2153 504 7231 5336 5802 4153 -8910 2958 307 3590 1664 6607 3956 7239 5313 -8911 3337 1865 3304 1113 6986 5514 6953 4762 -8912 3747 792 2461 2462 7396 4441 6110 6111 -8913 2360 2836 1364 382 6009 6485 5013 4031 -8914 3557 1698 2659 656 7206 5347 6308 4305 -8915 2257 2015 3133 313 5906 5664 6782 3962 -8916 3677 1668 2341 488 7326 5317 5990 4137 -8917 1678 1093 2999 3496 5327 4742 6648 7145 -8918 1272 2860 352 2915 4921 6509 4001 6564 -8919 86 3120 1431 87 182 6769 5080 183 -8920 3823 1679 2016 394 7472 5328 5665 4043 -8921 2756 2282 1268 809 6405 5931 4917 4458 -8922 3090 2054 1501 304 6739 5703 5150 3953 -8923 828 2166 889 2186 4477 5815 4538 5835 -8924 324 2557 959 2564 3973 6206 4608 6213 -8925 2128 3542 3821 1535 5777 7191 7470 5184 -8926 1218 2816 497 2638 4867 6465 4146 6287 -8927 930 2433 1628 1972 4579 6082 5277 5621 -8928 790 2358 988 2262 4439 6007 4637 5911 -8929 1743 3258 1918 272 5392 6907 5567 3921 -8930 1015 1894 452 2818 4664 5543 4101 6467 -8931 738 2170 1733 2575 4387 5819 5382 6224 -8932 3110 420 1730 1669 6759 4069 5379 5318 -8933 2207 769 1929 3150 5856 4418 5578 6799 -8934 2198 2050 2051 814 5847 5699 5700 4463 -8935 1626 453 1521 1520 5275 4102 5170 5169 -8936 1254 2553 498 2717 4903 6202 4147 6366 -8937 2607 2051 2050 787 6256 5700 5699 4436 -8938 425 1830 1552 3066 4074 5479 5201 6715 -8939 3562 1708 2980 568 7211 5357 6629 4217 -8940 3534 1707 263 1502 7183 5356 3912 5151 -8941 2297 2085 2468 889 5946 5734 6117 4538 -8942 3840 1083 2698 1681 7489 4732 6347 5330 -8943 2575 1733 2206 903 6224 5382 5855 4552 -8944 1366 766 2263 1302 5015 4415 5912 4951 -8945 926 3158 639 2074 4575 6807 4288 5723 -8946 2325 944 1736 2028 5974 4593 5385 5677 -8947 2890 743 2979 1682 6539 4392 6628 5331 -8948 3725 1273 3545 2301 7374 4922 7194 5950 -8949 215 1874 1282 3180 3864 5523 4931 6829 -8950 3383 1299 220 2176 7032 4948 3869 5825 -8951 2844 1690 2675 831 6493 5339 6324 4480 -8952 3815 48 47 1905 7464 144 143 5554 -8953 2158 2157 1322 696 5807 5806 4971 4345 -8954 1221 3593 506 2726 4870 7242 4155 6375 -8955 1741 694 3032 3825 5390 4343 6681 7474 -8956 3461 678 2818 1845 7110 4327 6467 5494 -8957 2838 1806 2370 923 6487 5455 6019 4572 -8958 2349 423 1344 2042 5998 4072 4993 5691 -8959 282 2188 814 2051 3931 5837 4463 5700 -8960 1687 3582 1056 2672 5336 7231 4705 6321 -8961 2782 1080 2980 1708 6431 4729 6629 5357 -8962 3584 1716 295 1400 7233 5365 3944 5049 -8963 2500 1768 2193 378 6149 5417 5842 4027 -8964 459 2220 744 1996 4108 5869 4393 5645 -8965 2979 205 1688 1682 6628 3854 5337 5331 -8966 593 3586 1399 3584 4242 7235 5048 7233 -8967 2558 3466 2472 647 6207 7115 6121 4296 -8968 2060 435 1932 2214 5709 4084 5581 5863 -8969 3730 1409 901 2662 7379 5058 4550 6311 -8970 3333 1765 3118 1029 6982 5414 6767 4678 -8971 2145 1714 1115 3499 5794 5363 4764 7148 -8972 919 2452 987 2498 4568 6101 4636 6147 -8973 3278 1692 1774 979 6927 5341 5423 4628 -8974 3278 445 2923 1692 6927 4094 6572 5341 -8975 2732 1038 1394 2565 6381 4687 5043 6214 -8976 3586 1719 408 1399 7235 5368 4057 5048 -8977 928 1866 799 2107 4577 5515 4448 5756 -8978 2316 2006 2120 435 5965 5655 5769 4084 -8979 3117 429 1958 1908 6766 4078 5607 5557 -8980 3126 1408 906 1765 6775 5057 4555 5414 -8981 3756 2795 341 1876 7405 6444 3990 5525 -8982 2138 2606 1608 720 5787 6255 5257 4369 -8983 3792 751 3221 1742 7441 4400 6870 5391 -8984 3044 234 2245 1685 6693 3883 5894 5334 -8985 3045 1685 2393 257 6694 5334 6042 3906 -8986 1074 2237 350 3093 4723 5886 3999 6742 -8987 3140 386 2798 1683 6789 4035 6447 5332 -8988 3274 1646 2922 794 6923 5295 6571 4443 -8989 2050 2198 1942 447 5699 5847 5591 4096 -8990 1986 652 1526 2356 5635 4301 5175 6005 -8991 3373 705 1738 1781 7022 4354 5387 5430 -8992 1250 1899 638 3766 4899 5548 4287 7415 -8993 3035 2706 1502 263 6684 6355 5151 3912 -8994 448 1925 774 2383 4097 5574 4423 6032 -8995 2727 2164 3686 1056 6376 5813 7335 4705 -8996 3344 1870 1291 882 6993 5519 4940 4531 -8997 3111 484 2125 3456 6760 4133 5774 7105 -8998 3805 832 3613 1726 7454 4481 7262 5375 -8999 2782 2171 2027 1080 6431 5820 5676 4729 -9000 3602 1723 2180 681 7251 5372 5829 4330 -9001 510 1974 822 2258 4159 5623 4471 5907 -9002 757 3155 568 1842 4406 6804 4217 5491 -9003 310 3030 1507 2919 3959 6679 5156 6568 -9004 3396 85 84 1889 7045 181 180 5538 -9005 958 2780 641 2779 4607 6429 4290 6428 -9006 3408 690 3078 1701 7057 4339 6727 5350 -9007 2691 960 2834 1766 6340 4609 6483 5415 -9008 845 2306 454 2080 4494 5955 4103 5729 -9009 354 2506 992 2174 4003 6155 4641 5823 -9010 3390 714 1682 1688 7039 4363 5331 5337 -9011 1742 2608 1169 3792 5391 6257 4818 7441 -9012 2404 3034 222 1739 6053 6683 3871 5388 -9013 1147 3578 598 2089 4796 7227 4247 5738 -9014 2449 1161 2541 3379 6098 4810 6190 7028 -9015 3297 1630 3579 759 6946 5279 7228 4408 -9016 3089 832 2547 1690 6738 4481 6196 5339 -9017 2780 381 2561 1722 6429 4030 6210 5371 -9018 332 1792 747 2491 3981 5441 4396 6140 -9019 1464 2279 610 3818 5113 5928 4259 7467 -9020 213 3131 1418 2594 3862 6780 5067 6243 -9021 1147 2089 297 3176 4796 5738 3946 6825 -9022 3732 2121 703 1438 7381 5770 4352 5087 -9023 1427 2071 619 3607 5076 5720 4268 7256 -9024 716 2201 1171 2076 4365 5850 4820 5725 -9025 2427 932 2343 1996 6076 4581 5992 5645 -9026 3277 1667 208 2260 6926 5316 3857 5909 -9027 2778 2444 3041 1396 6427 6093 6690 5045 -9028 881 2202 446 2290 4530 5851 4095 5939 -9029 952 2256 846 2342 4601 5905 4495 5991 -9030 2823 787 2384 1885 6472 4436 6033 5534 -9031 3373 1781 3163 487 7022 5430 6812 4136 -9032 2583 1759 2483 1011 6232 5408 6132 4660 -9033 3124 1754 3724 205 6773 5403 7373 3854 -9034 3124 956 2826 1754 6773 4605 6475 5403 -9035 2142 379 2205 2294 5791 4028 5854 5943 -9036 2971 1785 2616 278 6620 5434 6265 3927 -9037 951 2306 845 2257 4600 5955 4494 5906 -9038 2381 425 3276 1917 6030 4074 6925 5566 -9039 2060 2214 2355 819 5709 5863 6004 4468 -9040 2653 1383 3540 1806 6302 5032 7189 5455 -9041 2653 1806 2838 470 6302 5455 6487 4119 -9042 2983 534 3425 1702 6632 4183 7074 5351 -9043 790 1893 451 2358 4439 5542 4100 6007 -9044 1360 2039 561 3779 5009 5688 4210 7428 -9045 2644 1746 3069 539 6293 5395 6718 4188 -9046 2984 1728 2165 898 6633 5377 5814 4547 -9047 3339 972 2933 1697 6988 4621 6582 5346 -9048 609 3262 1545 2755 4258 6911 5194 6404 -9049 3000 1047 1542 2931 6649 4696 5191 6580 -9050 3627 1698 3098 280 7276 5347 6747 3929 -9051 2513 3768 3020 209 6162 7417 6669 3858 -9052 3600 1787 1786 578 7249 5436 5435 4227 -9053 3383 1710 2115 780 7032 5359 5764 4429 -9054 2465 1819 2532 1018 6114 5468 6181 4667 -9055 1210 3563 287 3058 4859 7212 3936 6707 -9056 3674 514 2712 1734 7323 4163 6361 5383 -9057 3674 1734 3588 1118 7323 5383 7237 4767 -9058 3286 1199 3543 1705 6935 4848 7192 5354 -9059 637 2587 865 1831 4286 6236 4514 5480 -9060 2013 2511 1863 799 5662 6160 5512 4448 -9061 2253 2439 2321 868 5902 6088 5970 4517 -9062 3245 1241 725 1960 6894 4890 4374 5609 -9063 2932 598 3578 2344 6581 4247 7227 5993 -9064 401 3737 670 1727 4050 7386 4319 5376 -9065 1363 1747 2335 3791 5012 5396 5984 7440 -9066 1906 807 1318 2415 5555 4456 4967 6064 -9067 2859 1723 3602 877 6508 5372 7251 4526 -9068 3541 451 2272 1715 7190 4100 5921 5364 -9069 2496 1947 3203 1088 6145 5596 6852 4737 -9070 3226 948 2346 1703 6875 4597 5995 5352 -9071 1970 3781 1060 1500 5619 7430 4709 5149 -9072 3226 1703 2070 229 6875 5352 5719 3878 -9073 1327 3629 257 2244 4976 7278 3906 5893 -9074 345 2034 978 3112 3994 5683 4627 6761 -9075 863 2466 201 1936 4512 6115 3850 5585 -9076 1062 2725 494 3314 4711 6374 4143 6963 -9077 431 3508 1761 3053 4080 7157 5410 6702 -9078 552 3304 1865 3298 4201 6953 5514 6947 -9079 2056 2651 1568 691 5705 6300 5217 4340 -9080 3289 992 2506 1726 6938 4641 6155 5375 -9081 384 2038 1289 2467 4033 5687 4938 6116 -9082 3640 2799 231 2190 7289 6448 3880 5839 -9083 3693 1741 2518 1124 7342 5390 6167 4773 -9084 3693 489 2067 1741 7342 4138 5716 5390 -9085 1973 2770 1597 319 5622 6419 5246 3968 -9086 2476 3784 1516 860 6125 7433 5165 4509 -9087 3209 398 2184 1709 6858 4047 5833 5358 -9088 584 3082 1228 3188 4233 6731 4877 6837 -9089 3771 1748 277 1358 7420 5397 3926 5007 -9090 2585 694 1741 2067 6234 4343 5390 5716 -9091 1883 2938 3622 1512 5532 6587 7271 5161 -9092 2941 1815 2362 421 6590 5464 6011 4070 -9093 217 3375 772 1721 3866 7024 4421 5370 -9094 2862 1725 2668 550 6511 5374 6317 4199 -9095 2090 2564 1735 957 5739 6213 5384 4606 -9096 2877 1068 1554 315 6526 4717 5203 3964 -9097 1557 1233 3422 288 5206 4882 7071 3937 -9098 1126 2223 1581 3524 4775 5872 5230 7173 -9099 570 3843 1841 2104 4219 7492 5490 5753 -9100 3832 1760 2507 1211 7481 5409 6156 4860 -9101 3278 1712 2645 445 6927 5361 6294 4094 -9102 2637 1869 2112 883 6286 5518 5761 4532 -9103 3593 858 1658 2467 7242 4507 5307 6116 -9104 3121 1713 2752 214 6770 5362 6401 3863 -9105 469 2021 710 2583 4118 5670 4359 6232 -9106 1542 2927 1323 346 5191 6576 4972 3995 -9107 3821 3542 2333 264 7470 7191 5982 3913 -9108 3630 1787 3600 798 7279 5436 7249 4447 -9109 2851 1306 261 1729 6500 4955 3910 5378 -9110 2368 2670 3221 751 6017 6319 6870 4400 -9111 3059 1719 3586 1021 6708 5368 7235 4670 -9112 2955 827 1334 1756 6604 4476 4983 5405 -9113 833 2719 588 1755 4482 6368 4237 5404 -9114 2278 2268 2031 2030 5927 5917 5680 5679 -9115 3448 216 2267 1724 7097 3865 5916 5373 -9116 101 2435 1636 102 197 6084 5285 198 -9117 3654 360 1448 1445 7303 4009 5097 5094 -9118 864 3608 1215 2864 4513 7257 4864 6513 -9119 2993 1769 2555 1313 6642 5418 6204 4962 -9120 2816 750 2016 1957 6465 4399 5665 5606 -9121 2230 2462 2461 443 5879 6111 6110 4092 -9122 2550 678 1615 2058 6199 4327 5264 5707 -9123 1943 2678 1871 376 5592 6327 5520 4025 -9124 805 2544 1237 2545 4454 6193 4886 6194 -9125 3724 1754 3789 815 7373 5403 7438 4464 -9126 227 2307 968 1999 3876 5956 4617 5648 -9127 2914 1847 2296 804 6563 5496 5945 4453 -9128 1633 2719 833 3512 5282 6368 4482 7161 -9129 471 2223 1126 2898 4120 5872 4775 6547 -9130 2310 890 2120 2006 5959 4539 5769 5655 -9131 2326 331 1947 2329 5975 3980 5596 5978 -9132 3715 1855 2895 800 7364 5504 6544 4449 -9133 2786 531 2508 1844 6435 4180 6157 5493 -9134 1001 2383 774 1941 4650 6032 4423 5590 -9135 1328 2387 633 3235 4977 6036 4282 6884 -9136 2187 519 2696 3055 5836 4168 6345 6704 -9137 3003 1919 2016 750 6652 5568 5665 4399 -9138 1518 1836 425 3349 5167 5485 4074 6998 -9139 2415 688 3726 1906 6064 4337 7375 5555 -9140 2745 2011 2642 967 6394 5660 6291 4616 -9141 3130 1856 713 1335 6779 5505 4362 4984 -9142 1309 3282 368 2299 4958 6931 4017 5948 -9143 3171 2101 2250 722 6820 5750 5899 4371 -9144 2251 2104 1841 752 5900 5753 5490 4401 -9145 3036 1733 2170 414 6685 5382 5819 4063 -9146 2328 3173 2785 340 5977 6822 6434 3989 -9147 1778 282 2164 2727 5427 3931 5813 6376 -9148 1197 3409 244 3440 4846 7058 3893 7089 -9149 1356 3129 310 2535 5005 6778 3959 6184 -9150 673 3619 3069 1746 4322 7268 6718 5395 -9151 3163 1781 1738 727 6812 5430 5387 4376 -9152 3080 1957 2016 797 6729 5606 5665 4446 -9153 893 2267 216 2091 4542 5916 3865 5740 -9154 2464 2061 2210 801 6113 5710 5859 4450 -9155 3246 3488 422 1864 6895 7137 4071 5513 -9156 1428 2470 238 3350 5077 6119 3887 6999 -9157 2513 1853 1976 853 6162 5502 5625 4502 -9158 1156 2418 1471 3521 4805 6067 5120 7170 -9159 1731 795 1955 3052 5380 4444 5604 6701 -9160 724 2259 1124 3374 4373 5908 4773 7023 -9161 562 3024 1432 2824 4211 6673 5081 6473 -9162 2400 1212 618 2686 6049 4861 4267 6335 -9163 3536 1186 3669 1736 7185 4835 7318 5385 -9164 880 2232 2233 2231 4529 5881 5882 5880 -9165 1752 999 2104 2251 5401 4648 5753 5900 -9166 2967 339 2334 3565 6616 3988 5983 7214 -9167 2276 825 1648 3780 5925 4474 5297 7429 -9168 3036 895 2206 1733 6685 4544 5855 5382 -9169 2069 788 2280 2705 5718 4437 5929 6354 -9170 2936 525 2410 2624 6585 4174 6059 6273 -9171 2613 867 3275 644 6262 4516 6924 4293 -9172 808 2243 1411 3620 4457 5892 5060 7269 -9173 2763 793 2588 2590 6412 4442 6237 6239 -9174 2763 2590 2589 1380 6412 6239 6238 5029 -9175 730 3311 1131 1981 4379 6960 4780 5630 -9176 2907 3760 3625 1376 6556 7409 7274 5025 -9177 1006 2328 340 2424 4655 5977 3989 6073 -9178 3226 229 2165 1728 6875 3878 5814 5377 -9179 3226 1728 2929 948 6875 5377 6578 4597 -9180 2686 1851 1831 865 6335 5500 5480 4514 -9181 454 3289 1726 3613 4103 6938 5375 7262 -9182 2356 1265 3574 1986 6005 4914 7223 5635 -9183 890 2310 460 2129 4539 5959 4109 5778 -9184 97 96 1523 2509 193 192 5172 6158 -9185 3464 1737 2501 546 7113 5386 6150 4195 -9186 2954 651 1664 1744 6603 4300 5313 5393 -9187 1297 2394 1450 3504 4946 6043 5099 7153 -9188 3501 2499 3811 3322 7150 6148 7460 6971 -9189 3272 2181 424 1875 6921 5830 4073 5524 -9190 3218 971 3053 1761 6867 4620 6702 5410 -9191 3102 599 2365 1767 6751 4248 6014 5416 -9192 261 3205 2477 1729 3910 6854 6126 5378 -9193 1883 1321 3506 2650 5532 4970 7155 6299 -9194 2312 3712 1898 835 5961 7361 5547 4484 -9195 2156 347 1892 2345 5805 3996 5541 5994 -9196 2312 835 1732 964 5961 4484 5381 4613 -9197 2279 2278 2030 610 5928 5927 5679 4259 -9198 826 2530 353 1884 4475 6179 4002 5533 -9199 2809 2321 2439 1073 6458 5970 6088 4722 -9200 3480 2116 904 2896 7129 5765 4553 6545 -9201 3556 557 3218 1761 7205 4206 6867 5410 -9202 833 2238 900 2155 4482 5887 4549 5804 -9203 3579 2173 3105 759 7228 5822 6754 4408 -9204 3041 2009 824 1396 6690 5658 4473 5045 -9205 2911 1077 2969 1756 6560 4726 6618 5405 -9206 593 2839 1021 3586 4242 6488 4670 7235 -9207 1990 1114 1667 3277 5639 4763 5316 6926 -9208 1047 3000 323 2924 4696 6649 3972 6573 -9209 793 2221 1680 2588 4442 5870 5329 6237 -9210 1125 3192 1434 2670 4774 6841 5083 6319 -9211 2513 3720 1002 1853 6162 7369 4651 5502 -9212 3478 1045 2507 1760 7127 4694 6156 5409 -9213 3478 1760 2765 375 7127 5409 6414 4024 -9214 2066 472 2837 2311 5715 4121 6486 5960 -9215 818 2316 435 2060 4467 5965 4084 5709 -9216 2484 1900 2968 564 6133 5549 6617 4213 -9217 923 2531 1222 2838 4572 6180 4871 6487 -9218 2912 3023 1576 212 6561 6672 5225 3861 -9219 3377 1740 1945 769 7026 5389 5594 4418 -9220 2592 839 1859 1860 6241 4488 5508 5509 -9221 354 3061 990 2225 4003 6710 4639 5874 -9222 2464 801 2371 1926 6113 4450 6020 5575 -9223 793 2763 1224 2853 4442 6412 4873 6502 -9224 3683 357 3733 1758 7332 4006 7382 5407 -9225 3026 1813 641 1341 6675 5462 4290 4990 -9226 2216 821 3248 3525 5865 4470 6897 7174 -9227 3066 2033 3349 425 6715 5682 6998 4074 -9228 935 2329 980 2053 4584 5978 4629 5702 -9229 636 3382 3395 1888 4285 7031 7044 5537 -9230 3062 1250 3570 1805 6711 4899 7219 5454 -9231 381 2082 1331 2561 4030 5731 4980 6210 -9232 3769 1752 3312 673 7418 5401 6961 4322 -9233 3515 277 2335 1747 7164 3926 5984 5396 -9234 2017 1278 3162 3438 5666 4927 6811 7087 -9235 3317 1195 3200 3303 6966 4844 6849 6952 -9236 1907 1272 697 1257 5556 4921 4346 4906 -9237 2291 3268 957 1735 5940 6917 4606 5384 -9238 576 2074 1341 3786 4225 5723 4990 7435 -9239 1242 2247 1266 3001 4891 5896 4915 6650 -9240 2865 1772 2119 836 6514 5421 5768 4485 -9241 1874 2560 1771 269 5523 6209 5420 3918 -9242 3544 2299 838 2640 7193 5948 4487 6289 -9243 2613 644 3475 1839 6262 4293 7124 5488 -9244 2349 2042 3651 802 5998 5691 7300 4451 -9245 3811 1463 1991 3322 7460 5112 5640 6971 -9246 955 2809 1073 2661 4604 6458 4722 6310 -9247 2525 472 1861 1895 6174 4121 5510 5544 -9248 1084 3350 1779 3386 4733 6999 5428 7035 -9249 1388 1956 681 2862 5037 5605 4330 6511 -9250 2367 236 1440 2025 6016 3885 5089 5674 -9251 1065 2879 1222 3243 4714 6528 4871 6892 -9252 2802 330 2957 1818 6451 3979 6606 5467 -9253 1818 892 3161 2802 5467 4541 6810 6451 -9254 994 2048 837 2837 4643 5697 4486 6486 -9255 1002 3205 261 1853 4651 6854 3910 5502 -9256 3351 954 2239 1768 7000 4603 5888 5417 -9257 2821 1785 2971 946 6470 5434 6620 4595 -9258 805 3652 1265 2544 4454 7301 4914 6193 -9259 888 2765 1760 3832 4537 6414 5409 7481 -9260 3020 1777 1294 209 6669 5426 4943 3858 -9261 3246 2055 1105 3488 6895 5704 4754 7137 -9262 3556 1761 3508 874 7205 5410 7157 4523 -9263 2806 2014 2256 318 6455 5663 5905 3967 -9264 2698 473 2532 1819 6347 4122 6181 5468 -9265 497 3080 1697 2933 4146 6729 5346 6582 -9266 898 2078 97 2509 4547 5727 193 6158 -9267 3809 1920 1336 686 7458 5569 4985 4335 -9268 1175 3223 803 2281 4824 6872 4452 5930 -9269 2847 820 2146 1969 6496 4469 5795 5618 -9270 2749 1852 23 22 6398 5501 119 118 -9271 1097 2843 579 2254 4746 6492 4228 5903 -9272 2902 1782 1939 723 6551 5431 5588 4372 -9273 837 2103 331 2326 4486 5752 3980 5975 -9274 2255 918 2567 1447 5904 4567 6216 5096 -9275 2329 935 2311 2326 5978 4584 5960 5975 -9276 3201 1162 3105 2173 6850 4811 6754 5822 -9277 3529 2622 816 1639 7178 6271 4465 5288 -9278 2337 560 3379 2541 5986 4209 7028 6190 -9279 2541 1036 2338 2337 6190 4685 5987 5986 -9280 839 2516 863 1936 4488 6165 4512 5585 -9281 2142 2294 3606 1100 5791 5943 7255 4749 -9282 2735 1935 2630 459 6384 5584 6279 4108 -9283 3573 1648 825 2641 7222 5297 4474 6290 -9284 2002 3645 253 1795 5651 7294 3902 5444 -9285 393 1720 2773 3446 4042 5369 6422 7095 -9286 2178 2584 2264 541 5827 6233 5913 4190 -9287 3566 656 2659 1762 7215 4305 6308 5411 -9288 1127 3397 683 2934 4776 7046 4332 6583 -9289 1913 2703 2937 1326 5562 6352 6586 4975 -9290 2059 3203 1947 331 5708 6852 5596 3980 -9291 986 1899 383 2563 4635 5548 4032 6212 -9292 395 1230 2298 2403 4044 4879 5947 6052 -9293 1931 1481 713 1856 5580 5130 4362 5505 -9294 2496 980 2329 1947 6145 4629 5978 5596 -9295 447 2384 787 2050 4096 6033 4436 5699 -9296 285 2399 1737 3253 3934 6048 5386 6902 -9297 2290 2168 2060 819 5939 5817 5709 4468 -9298 881 2290 819 2167 4530 5939 4468 5816 -9299 2103 837 2048 481 5752 4486 5697 4130 -9300 2197 3614 1334 827 5846 7263 4983 4476 -9301 3827 1803 412 1209 7476 5452 4061 4858 -9302 1967 226 1729 2477 5616 3875 5378 6126 -9303 1557 924 1138 466 5206 4573 4787 4115 -9304 2887 1797 3172 1101 6536 5446 6821 4750 -9305 2851 2043 3442 706 6500 5692 7091 4355 -9306 1366 2270 1260 3308 5015 5919 4909 6957 -9307 2204 2573 3090 304 5853 6222 6739 3953 -9308 3547 2105 2455 512 7196 5754 6104 4161 -9309 3224 2421 3180 843 6873 6070 6829 4492 -9310 2562 2707 2718 866 6211 6356 6367 4515 -9311 2202 881 2143 2373 5851 4530 5792 6022 -9312 1586 3788 2179 1802 5235 7437 5828 5451 -9313 3243 2581 2320 1065 6892 6230 5969 4714 -9314 2305 385 1964 2973 5954 4034 5613 6622 -9315 1258 2664 643 3589 4907 6313 4292 7238 -9316 3138 1823 2366 958 6787 5472 6015 4607 -9317 3138 439 3716 1823 6787 4088 7365 5472 -9318 2917 1141 3748 1801 6566 4790 7397 5450 -9319 997 2913 671 2038 4646 6562 4320 5687 -9320 871 2377 492 2869 4520 6026 4141 6518 -9321 1415 2661 553 2769 5064 6310 4202 6418 -9322 2944 312 1962 2618 6593 3961 5611 6267 -9323 3522 1767 2365 1476 7171 5416 6014 5125 -9324 1075 1923 1033 2569 4724 5572 4682 6218 -9325 2885 763 2194 1808 6534 4412 5843 5457 -9326 2400 3419 3148 415 6049 7068 6797 4064 -9327 3397 1769 2993 683 7046 5418 6642 4332 -9328 2765 1831 1851 375 6414 5480 5500 4024 -9329 3109 1426 3782 1959 6758 5075 7431 5608 -9330 1164 2902 723 3288 4813 6551 4372 6937 -9331 2758 1511 3676 3714 6407 5160 7325 7363 -9332 1370 3699 1834 2466 5019 7348 5483 6115 -9333 1244 400 300 1072 4893 4049 3949 4721 -9334 50 3780 1648 51 146 7429 5297 147 -9335 2359 576 2031 2268 6008 4225 5680 5917 -9336 2702 1865 3337 301 6351 5514 6986 3950 -9337 3620 439 2281 2094 7269 4088 5930 5743 -9338 240 2445 864 2459 3889 6094 4513 6108 -9339 811 2416 1078 2603 4460 6065 4727 6252 -9340 1828 2956 2788 700 5477 6605 6437 4349 -9341 3429 1924 2271 1096 7078 5573 5920 4745 -9342 2197 827 3413 949 5846 4476 7062 4598 -9343 257 3629 1595 3045 3906 7278 5244 6694 -9344 3755 666 2388 1862 7404 4315 6037 5511 -9345 2057 353 1531 3114 5706 4002 5180 6763 -9346 1774 3438 3162 417 5423 7087 6811 4066 -9347 1949 991 1062 3254 5598 4640 4711 6903 -9348 2321 2822 1286 868 5970 6471 4935 4517 -9349 2578 1837 2750 934 6227 5486 6399 4583 -9350 1287 3164 891 2808 4936 6813 4540 6457 -9351 3698 1798 3638 258 7347 5447 7287 3907 -9352 959 2300 927 2408 4608 5949 4576 6057 -9353 462 2443 1649 2111 4111 6092 5298 5760 -9354 3284 1151 2010 2801 6933 4800 5659 6450 -9355 2786 1844 2634 810 6435 5493 6283 4459 -9356 1139 3001 1266 1992 4788 6650 4915 5641 -9357 2502 2001 1876 737 6151 5650 5525 4386 -9358 1779 267 1880 3386 5428 3916 5529 7035 -9359 3159 1421 1753 3681 6808 5070 5402 7330 -9360 2674 358 3498 3838 6323 4007 7147 7487 -9361 2459 2026 2332 863 6108 5675 5981 4512 -9362 3806 2277 3771 1358 7455 5926 7420 5007 -9363 2376 975 2617 2377 6025 4624 6266 6026 -9364 2791 1847 2667 910 6440 5496 6316 4559 -9365 92 91 1785 2821 188 187 5434 6470 -9366 3026 639 1586 1802 6675 4288 5235 5451 -9367 39 38 3147 3784 135 134 6796 7433 -9368 1275 3458 302 1783 4924 7107 3951 5432 -9369 1276 3458 1275 2159 4925 7107 4924 5808 -9370 1262 3365 508 2606 4911 7014 4157 6255 -9371 2755 1922 686 1336 6404 5571 4335 4985 -9372 2818 452 1638 1845 6467 4101 5287 5494 -9373 2303 235 2101 3171 5952 3884 5750 6820 -9374 567 869 1230 395 4216 4518 4879 4044 -9375 3527 2023 778 2396 7176 5672 4427 6045 -9376 954 2349 802 2246 4603 5998 4451 5895 -9377 289 2434 887 2093 3938 6083 4536 5742 -9378 2941 3761 2177 1815 6590 7410 5826 5464 -9379 1915 3252 1914 671 5564 6901 5563 4320 -9380 3130 1575 228 1856 6779 5224 3877 5505 -9381 3247 1007 2536 1801 6896 4656 6185 5450 -9382 2977 2372 3012 1171 6626 6021 6661 4820 -9383 3268 2401 1828 957 6917 6050 5477 4606 -9384 1110 2789 1004 2369 4759 6438 4653 6018 -9385 3124 1798 2497 956 6773 5447 6146 4605 -9386 1001 2511 448 2383 4650 6160 4097 6032 -9387 3769 673 1746 1811 7418 4322 5395 5460 -9388 3135 399 1264 3155 6784 4048 4913 6804 -9389 2458 821 2695 2046 6107 4470 6344 5695 -9390 2740 1312 730 1890 6389 4961 4379 5539 -9391 2949 2962 2395 479 6598 6611 6044 4128 -9392 2870 269 1225 1891 6519 3918 4874 5540 -9393 2942 2534 2422 1043 6591 6183 6071 4692 -9394 446 2058 1615 3063 4095 5707 5264 6712 -9395 981 2041 440 3038 4630 5690 4089 6687 -9396 1320 3040 1434 2172 4969 6689 5083 5821 -9397 3014 2040 2935 1017 6663 5689 6584 4666 -9398 3014 482 2942 2040 6663 4131 6591 5689 -9399 1017 2471 1219 3014 4666 6120 4868 6663 -9400 819 2355 379 2167 4468 6004 4028 5816 -9401 206 1880 1593 2754 3855 5529 5242 6403 -9402 3532 2152 3300 245 7181 5801 6949 3894 -9403 3744 707 1689 2081 7393 4356 5338 5730 -9404 2603 1948 2517 811 6252 5597 6166 4460 -9405 2155 900 3279 2410 5804 4549 6928 6059 -9406 2511 2013 1586 448 6160 5662 5235 4097 -9407 2314 2598 2569 1033 5963 6247 6218 4682 -9408 485 3457 674 1789 4134 7106 4323 5438 -9409 910 2666 1634 3301 4559 6315 5283 6950 -9410 3553 3225 1515 2217 7202 6874 5164 5866 -9411 3534 2402 224 1707 7183 6051 3873 5356 -9412 2415 1318 3700 2111 6064 4967 7349 5760 -9413 2415 2111 1649 688 6064 5760 5298 4337 -9414 777 2365 1471 3657 4426 6014 5120 7306 -9415 12 11 1675 2469 108 107 5324 6118 -9416 2748 1975 2148 912 6397 5624 5797 4561 -9417 3071 1365 540 2141 6720 5014 4189 5790 -9418 2517 1948 952 3352 6166 5597 4601 7001 -9419 2960 2544 1265 502 6609 6193 4914 4151 -9420 958 2366 381 2780 4607 6015 4030 6429 -9421 1254 2717 703 3348 4903 6366 4352 6997 -9422 534 2248 1135 2857 4183 5897 4784 6506 -9423 1949 3443 1228 2149 5598 7092 4877 5798 -9424 2899 2014 2806 734 6548 5663 6455 4383 -9425 1058 3016 1220 3088 4707 6665 4869 6737 -9426 3054 98 97 2078 6703 194 193 5727 -9427 1693 3709 1057 3149 5342 7358 4706 6798 -9428 3380 1797 2887 1117 7029 5446 6536 4766 -9429 3739 1249 3638 1798 7388 4898 7287 5447 -9430 994 2837 472 2525 4643 6486 4121 6174 -9431 3833 1805 3570 535 7482 5454 7219 4184 -9432 2914 2545 2667 1847 6563 6194 6316 5496 -9433 821 2216 1090 2695 4470 5865 4739 6344 -9434 2696 1088 3203 3055 6345 4737 6852 6704 -9435 3175 634 2181 3728 6824 4283 5830 7377 -9436 2895 1855 2781 662 6544 5504 6430 4311 -9437 2892 919 2498 1858 6541 4568 6147 5507 -9438 2985 1829 2505 718 6634 5478 6154 4367 -9439 3307 1594 726 270 6956 5243 4375 3919 -9440 741 2773 1720 2405 4390 6422 5369 6054 -9441 745 2561 1331 3678 4394 6210 4980 7327 -9442 3112 2178 983 3287 6761 5827 4632 6936 -9443 2454 2392 3142 905 6103 6041 6791 4554 -9444 3344 311 2130 1870 6993 3960 5779 5519 -9445 477 1094 3000 2931 4126 4743 6649 6580 -9446 2498 2047 2696 519 6147 5696 6345 4168 -9447 2160 2364 1244 1248 5809 6013 4893 4897 -9448 2750 3414 1460 934 6399 7063 5109 4583 -9449 1448 465 2995 1445 5097 4114 6644 5094 -9450 1059 2228 778 2339 4708 5877 4427 5988 -9451 3445 669 2935 2040 7094 4318 6584 5689 -9452 3156 2827 1954 342 6805 6476 5603 3991 -9453 3595 1812 3485 1237 7244 5461 7134 4886 -9454 1125 1968 464 3192 4774 5617 4113 6841 -9455 25 24 1561 2488 121 120 5210 6137 -9456 3063 818 2060 2168 6712 4467 5709 5817 -9457 3300 1825 3033 989 6949 5474 6682 4638 -9458 817 2072 1543 3812 4466 5721 5192 7461 -9459 3377 2135 847 1740 7026 5784 4496 5389 -9460 2378 755 3632 2379 6027 4404 7281 6028 -9461 1292 3845 413 2361 4941 7494 4062 6010 -9462 1045 3216 1338 2559 4694 6865 4987 6208 -9463 2260 731 1990 3277 5909 4380 5639 6926 -9464 916 2697 548 2029 4565 6346 4197 5678 -9465 1366 1458 767 766 5015 5107 4416 4415 -9466 3405 1809 2457 441 7054 5458 6106 4090 -9467 3589 643 1552 1830 7238 4292 5201 5479 -9468 3492 2636 834 1954 7141 6285 4483 5603 -9469 2430 2341 1668 941 6079 5990 5317 4590 -9470 2026 2864 1640 230 5675 6513 5289 3879 -9471 1413 3217 1008 2739 5062 6866 4657 6388 -9472 3015 409 3228 1854 6664 4058 6877 5503 -9473 3382 3052 1955 3395 7031 6701 5604 7044 -9474 325 3533 984 1479 3974 7182 4633 5128 -9475 2655 1039 2861 2297 6304 4688 6510 5946 -9476 21 20 1528 3637 117 116 5177 7286 -9477 870 1967 687 2671 4519 5616 4336 6320 -9478 3232 1821 2781 933 6881 5470 6430 4582 -9479 1850 418 1849 755 5499 4067 5498 4404 -9480 2297 889 2166 2655 5946 4538 5815 6304 -9481 3580 2199 774 1925 7229 5848 4423 5574 -9482 986 3010 424 2295 4635 6659 4073 5944 -9483 3556 1904 1423 557 7205 5553 5072 4206 -9484 916 1958 429 2835 4565 5607 4078 6484 -9485 3771 2277 1639 816 7420 5926 5288 4465 -9486 3356 1128 1717 2532 7005 4777 5366 6181 -9487 2485 1375 3778 2668 6134 5024 7427 6317 -9488 940 2775 1165 2690 4589 6424 4814 6339 -9489 2834 1433 617 2144 6483 5082 4266 5793 -9490 979 2586 1243 2981 4628 6235 4892 6630 -9491 3688 997 2505 1829 7337 4646 6154 5478 -9492 3635 490 1686 2751 7284 4139 5335 6400 -9493 1153 2514 640 3437 4802 6163 4289 7086 -9494 2154 2892 2963 296 5803 6541 6612 3945 -9495 3815 1404 825 2276 7464 5053 4474 5925 -9496 742 3590 1518 3349 4391 7239 5167 6998 -9497 2938 1883 2650 486 6587 5532 6299 4135 -9498 783 3227 347 2156 4432 6876 3996 5805 -9499 1373 3095 1618 1882 5022 6744 5267 5531 -9500 1050 2087 552 3298 4699 5736 4201 6947 -9501 2840 885 1649 2443 6489 4534 5298 6092 -9502 1833 275 1933 3204 5482 3924 5582 6853 -9503 2478 2825 2736 1024 6127 6474 6385 4673 -9504 3319 1844 2508 1111 6968 5493 6157 4760 -9505 3463 798 3600 1824 7112 4447 7249 5473 -9506 3280 2353 2824 884 6929 6002 6473 4533 -9507 1264 3562 568 3155 4913 7211 4217 6804 -9508 3830 224 2592 1860 7479 3873 6241 5509 -9509 1180 1533 1647 2004 4829 5182 5296 5653 -9510 764 1849 418 3551 4413 5498 4067 7200 -9511 59 2548 1612 60 155 6197 5261 156 -9512 72 2549 1666 73 168 6198 5315 169 -9513 1120 1896 475 3048 4769 5545 4124 6697 -9514 909 1891 204 2950 4558 5540 3853 6599 -9515 3063 2168 2290 446 6712 5817 5939 4095 -9516 3685 1997 2991 233 7334 5646 6640 3882 -9517 2425 1397 3470 3406 6074 5046 7119 7055 -9518 3153 1852 2749 943 6802 5501 6398 4592 -9519 2370 2412 1851 3125 6019 6061 5500 6774 -9520 3661 1223 2483 2538 7310 4872 6132 6187 -9521 2382 2323 2734 455 6031 5972 6383 4104 -9522 1235 2807 902 3067 4884 6456 4551 6716 -9523 482 2474 1028 2492 4131 6123 4677 6141 -9524 2272 451 1893 3137 5921 4100 5542 6786 -9525 1888 3237 838 1543 5537 6886 4487 5192 -9526 3259 768 3407 1838 6908 4417 7056 5487 -9527 3802 2298 1230 3292 7451 5947 4879 6941 -9528 3688 1829 2985 485 7337 5478 6634 4134 -9529 2585 2067 1868 859 6234 5716 5517 4508 -9530 69 2750 1837 70 165 6399 5486 166 -9531 1554 684 2626 315 5203 4333 6275 3964 -9532 1843 3358 2034 345 5492 7007 5683 3994 -9533 1897 1102 3061 2943 5546 4751 6710 6592 -9534 3310 317 2022 1878 6959 3966 5671 5527 -9535 2149 585 991 1949 5798 4234 4640 5598 -9536 3806 83 82 2277 7455 179 178 5926 -9537 3508 1963 1962 874 7157 5612 5611 4523 -9538 224 2402 1337 2592 3873 6051 4986 6241 -9539 2304 2392 2454 995 5953 6041 6103 4644 -9540 2029 2620 1457 916 5678 6269 5106 4565 -9541 317 3413 1465 2183 3966 7062 5114 5832 -9542 665 3049 235 1881 4314 6698 3884 5530 -9543 3843 1343 499 1841 7492 4992 4148 5490 -9544 2627 2032 2825 996 6276 5681 6474 4645 -9545 816 2622 1461 2621 4465 6271 5110 6270 -9546 1859 3189 2203 276 5508 6838 5852 3925 -9547 3179 1868 2067 489 6828 5517 5716 4138 -9548 3318 1931 1856 228 6967 5580 5505 3877 -9549 1181 2985 718 3513 4830 6634 4367 7162 -9550 3715 413 3293 1855 7364 4062 6942 5504 -9551 3228 786 2269 1854 6877 4435 5918 5503 -9552 2233 2110 1835 879 5882 5759 5484 4528 -9553 591 3759 1231 2510 4240 7408 4880 6159 -9554 2737 1174 1896 1121 6386 4823 5545 4770 -9555 503 3535 1179 2296 4152 7184 4828 5945 -9556 3755 1862 3264 857 7404 5511 6913 4506 -9557 522 3511 1108 2744 4171 7160 4757 6393 -9558 512 3290 1276 2159 4161 6939 4925 5808 -9559 1014 2406 520 2543 4663 6055 4169 6192 -9560 3519 436 3848 1965 7168 4085 7497 5614 -9561 889 2468 457 2186 4538 6117 4106 5835 -9562 3044 2128 1535 234 6693 5777 5184 3883 -9563 2568 2770 1973 969 6217 6419 5622 4618 -9564 701 1846 415 3410 4350 5495 4064 7059 -9565 1653 1594 843 3385 5302 5243 4492 7034 -9566 1219 2471 1547 3531 4868 6120 5196 7180 -9567 381 3847 1284 2082 4030 7496 4933 5731 -9568 3126 438 3395 1955 6775 4087 7044 5604 -9569 925 1933 275 2975 4574 5582 3924 6624 -9570 1035 3253 1737 3464 4684 6902 5386 7113 -9571 3744 2081 2342 846 7393 5730 5991 4495 -9572 2503 1280 2802 3161 6152 4929 6451 6810 -9573 3011 1966 557 1423 6660 5615 4206 5072 -9574 2795 1974 2614 1012 6444 5623 6263 4661 -9575 1573 3848 436 2222 5222 7497 4085 5871 -9576 2343 932 1492 2374 5992 4581 5141 6023 -9577 1862 218 1596 3264 5511 3867 5245 6913 -9578 3365 2663 1609 508 7014 6312 5258 4157 -9579 2285 3659 1775 1346 5934 7308 5424 4995 -9580 2845 994 2525 2162 6494 4643 6174 5811 -9581 1211 3491 1602 3604 4860 7140 5251 7253 -9582 31 3723 3800 32 127 7372 7449 128 -9583 3788 754 1942 2179 7437 4403 5591 5828 -9584 3770 1868 3179 951 7419 5517 6828 4600 -9585 2899 846 2256 2014 6548 4495 5905 5663 -9586 1227 2704 420 3110 4876 6353 4069 6759 -9587 3233 1352 3017 2593 6882 5001 6666 6242 -9588 2593 896 1345 3233 6242 4545 4994 6882 -9589 2191 2846 1442 1009 5840 6495 5091 4658 -9590 2936 2624 2625 1076 6585 6273 6274 4725 -9591 3501 3322 1738 1857 7150 6971 5387 5506 -9592 1911 3046 3376 1203 5560 6695 7025 4852 -9593 3046 1911 2744 1751 6695 5560 6393 5400 -9594 584 3188 1135 2248 4233 6837 4784 5897 -9595 3015 1854 675 3387 6664 5503 4324 7036 -9596 2079 3648 729 1676 5728 7297 4378 5325 -9597 2782 1986 3574 338 6431 5635 7223 3987 -9598 3298 1865 2702 1050 6947 5514 6351 4699 -9599 38 37 1330 3147 134 133 4979 6796 -9600 1979 3628 1495 3763 5628 7277 5144 7412 -9601 2847 1969 1645 715 6496 5618 5294 4364 -9602 2732 2731 1340 1038 6381 6380 4989 4687 -9603 377 963 2158 1417 4026 4612 5807 5066 -9604 3239 2184 1474 602 6888 5833 5123 4251 -9605 3223 3617 1813 337 6872 7266 5462 3986 -9606 3756 1876 2001 822 7405 5525 5650 4471 -9607 1314 3332 1313 2555 4963 6981 4962 6204 -9608 3399 921 1466 2724 7048 4570 5115 6373 -9609 1297 3369 521 2394 4946 7018 4170 6043 -9610 661 3552 1652 2972 4310 7201 5301 6621 -9611 1045 2559 528 2507 4694 6208 4177 6156 -9612 3137 1893 2240 789 6786 5542 5889 4438 -9613 2695 507 2787 2046 6344 4156 6436 5695 -9614 3197 456 2823 1885 6846 4105 6472 5534 -9615 3272 1875 1356 642 6921 5524 5005 4291 -9616 564 3569 1279 3273 4213 7218 4928 6922 -9617 862 1655 325 1479 4511 5304 3974 5128 -9618 479 2395 980 2496 4128 6044 4629 6145 -9619 2436 3761 3696 1506 6085 7410 7345 5155 -9620 2575 903 2156 2345 6224 4552 5805 5994 -9621 2749 3637 1528 943 6398 7286 5177 4592 -9622 3341 1927 2566 929 6990 5576 6215 4578 -9623 3062 1924 3429 383 6711 5573 7078 4032 -9624 2815 704 1466 1997 6464 4353 5115 5646 -9625 3060 2137 595 1405 6709 5786 4244 5054 -9626 2477 3441 687 1967 6126 7090 4336 5616 -9627 3137 1541 758 2272 6786 5190 4407 5921 -9628 3099 1921 2671 687 6748 5570 6320 4336 -9629 2109 841 1903 3477 5758 4490 5552 7126 -9630 1495 3628 1382 3671 5144 7277 5031 7320 -9631 101 100 1513 3731 197 196 5162 7380 -9632 529 586 3081 740 4178 4235 6730 4389 -9633 1339 2697 1357 1909 4988 6346 5006 5558 -9634 44 2756 1473 45 140 6405 5122 141 -9635 509 2817 844 2011 4158 6466 4493 5660 -9636 1307 3346 1028 2474 4956 6995 4677 6123 -9637 32 3800 1816 33 128 7449 5465 129 -9638 840 2591 468 2218 4489 6240 4117 5867 -9639 2164 282 2051 2607 5813 3931 5700 6256 -9640 3708 1885 2384 928 7357 5534 6033 4577 -9641 2758 2280 1601 613 6407 5929 5250 4262 -9642 3692 2772 458 2079 7341 6421 4107 5728 -9643 736 3186 419 1913 4385 6835 4068 5562 -9644 970 2869 492 2044 4619 6518 4141 5693 -9645 3029 2890 2007 1342 6678 6539 5656 4991 -9646 2890 3029 1583 743 6539 6678 5232 4392 -9647 1647 2131 3274 2049 5296 5780 6923 5698 -9648 1086 2867 855 2742 4735 6516 4504 6391 -9649 2606 2138 3525 1262 6255 5787 7174 4911 -9650 3324 3440 244 1745 6973 7089 3893 5394 -9651 3324 667 1905 3440 6973 4316 5554 7089 -9652 3150 1929 1552 365 6799 5578 5201 4014 -9653 3530 2122 2197 949 7179 5771 5846 4598 -9654 3161 892 2480 2114 6810 4541 6129 5763 -9655 3164 2114 2480 891 6813 5763 6129 4540 -9656 2300 813 2059 927 5949 4462 5708 4576 -9657 3395 438 3237 1888 7044 4087 6886 5537 -9658 3796 1989 1988 625 7445 5638 5637 4274 -9659 2753 2337 2338 796 6402 5986 5987 4445 -9660 3793 732 1780 1901 7442 4381 5429 5550 -9661 2997 3714 3676 480 6646 7363 7325 4129 -9662 88 87 1431 2852 184 183 5080 6501 -9663 1058 3088 537 2196 4707 6737 4186 5845 -9664 339 3191 1158 2334 3988 6840 4807 5983 -9665 1035 3464 546 1898 4684 7113 4195 5547 -9666 1177 2806 318 3037 4826 6455 3967 6686 -9667 1387 3336 559 2660 5036 6985 4208 6309 -9668 2411 847 2135 3520 6060 4496 5784 7169 -9669 637 2654 1176 2587 4286 6303 4825 6236 -9670 3330 1003 1971 1928 6979 4652 5620 5577 -9671 1928 450 1607 3330 5577 4099 5256 6979 -9672 57 3 56 3509 153 7 152 7158 -9673 75 3510 76 4 171 7159 172 8 -9674 3820 779 3117 1908 7469 4428 6766 5557 -9675 741 3695 1582 2773 4390 7344 5231 6422 -9676 1086 2146 820 2610 4735 5795 4469 6259 -9677 2871 2108 2388 812 6520 5757 6037 4461 -9678 3252 848 2242 1914 6901 4497 5891 5563 -9679 3597 2572 1641 2136 7246 6221 5290 5785 -9680 1111 2508 1010 2803 4760 6157 4659 6452 -9681 2254 3450 2868 1061 5903 7099 6517 4710 -9682 3210 1443 1758 3733 6859 5092 5407 7382 -9683 2434 2804 2217 887 6083 6453 5866 4536 -9684 1133 1943 762 3741 4782 5592 4411 7390 -9685 3652 805 1641 2572 7301 4454 5290 6221 -9686 484 2662 901 2125 4133 6311 4550 5774 -9687 3276 1295 646 1917 6925 4944 4295 5566 -9688 952 1902 490 3352 4601 5551 4139 7001 -9689 2864 2026 2459 864 6513 5675 6108 4513 -9690 3381 1389 2968 1900 7030 5038 6617 5549 -9691 2648 1226 1966 3011 6297 4875 5615 6660 -9692 1562 3715 800 3794 5211 7364 4449 7443 -9693 1920 3812 1543 368 5569 7461 5192 4017 -9694 2742 2097 1419 410 6391 5746 5068 4059 -9695 2554 2268 2278 3533 6203 5917 5927 7182 -9696 66 65 1595 2790 162 161 5244 6439 -9697 3809 817 3812 1920 7458 4466 7461 5569 -9698 2314 3575 1386 1034 5963 7224 5035 4683 -9699 928 2384 447 1866 4577 6033 4096 5515 -9700 2916 238 2470 2012 6565 3887 6119 5661 -9701 2055 3246 1864 697 5704 6895 5513 4346 -9702 3208 626 2537 3005 6857 4275 6186 6654 -9703 1457 3475 644 2722 5106 7124 4293 6371 -9704 3080 497 2816 1957 6729 4146 6465 5606 -9705 3477 1903 2391 220 7126 5552 6040 3869 -9706 3111 1146 2770 2568 6760 4795 6419 6217 -9707 1147 3178 1537 3578 4796 6827 5186 7227 -9708 1397 2847 715 3675 5046 6496 4364 7324 -9709 296 2963 1511 1995 3945 6612 5160 5644 -9710 3150 1426 569 2207 6799 5075 4218 5856 -9711 3297 759 3105 2018 6946 4408 6754 5667 -9712 3008 854 2064 1087 6657 4503 5713 4736 -9713 80 3329 1639 81 176 6978 5288 177 -9714 1435 3816 736 2652 5084 7465 4385 6301 -9715 2873 2453 2262 988 6522 6102 5911 4637 -9716 1912 3641 3129 657 5561 7290 6778 4306 -9717 2645 783 2156 903 6294 4432 5805 4552 -9718 3109 1959 2612 594 6758 5608 6261 4243 -9719 3426 2325 2028 945 7075 5974 5677 4594 -9720 680 2966 1455 2003 4329 6615 5104 5652 -9721 993 2530 826 2630 4642 6179 4475 6279 -9722 782 2148 449 2658 4431 5797 4098 6307 -9723 1267 2746 989 3033 4916 6395 4638 6682 -9724 3133 2015 2982 735 6782 5664 6631 4384 -9725 1442 2846 504 2169 5091 6495 4153 5818 -9726 3405 441 2566 1927 7054 4090 6215 5576 -9727 2025 1440 3411 3390 5674 5089 7060 7039 -9728 3460 899 1932 2324 7109 4548 5581 5973 -9729 2899 734 3725 2301 6548 4383 7374 5950 -9730 3405 1927 2677 1000 7054 5576 6326 4649 -9731 1039 2783 996 2604 4688 6432 4645 6253 -9732 350 2237 1482 3762 3999 5886 5131 7411 -9733 1322 2948 661 2972 4971 6597 4310 6621 -9734 2655 2166 1916 343 6304 5815 5565 3992 -9735 2844 2140 1400 295 6493 5789 5049 3944 -9736 1435 2913 1953 3816 5084 6562 5602 7465 -9737 1159 2144 617 3760 4808 5793 4266 7409 -9738 3433 2005 2710 922 7082 5654 6359 4571 -9739 1115 2387 374 3499 4764 6036 4023 7148 -9740 450 2989 1480 3299 4099 6638 5129 6948 -9741 2982 2015 2257 845 6631 5664 5906 4494 -9742 2300 480 2351 813 5949 4129 6000 4462 -9743 2554 936 2359 2268 6203 4585 6008 5917 -9744 3041 1462 211 2009 6690 5111 3860 5658 -9745 3151 760 3391 3104 6800 4409 7040 6753 -9746 2939 371 3668 2063 6588 4020 7317 5712 -9747 456 3453 1143 2823 4105 7102 4792 6472 -9748 3307 2354 843 1594 6956 6003 4492 5243 -9749 3757 1935 2735 1301 7406 5584 6384 4950 -9750 2850 532 2392 2304 6499 4181 6041 5953 -9751 2515 2428 2654 637 6164 6077 6303 4286 -9752 2860 2180 1723 352 6509 5829 5372 4001 -9753 1183 3186 736 3281 4832 6835 4385 6930 -9754 3426 478 2631 2325 7075 4127 6280 5974 -9755 204 2133 968 2950 3853 5782 4617 6599 -9756 464 2665 810 2172 4113 6314 4459 5821 -9757 2374 2812 2036 931 6023 6461 5685 4580 -9758 777 3657 392 2106 4426 7306 4041 5755 -9759 2200 3157 1799 312 5849 6806 5448 3961 -9760 52 51 1648 3295 148 147 5297 6944 -9761 2036 1301 2735 931 5685 4950 6384 4580 -9762 2646 2213 1378 322 6295 5862 5027 3971 -9763 675 3684 1778 3387 4324 7333 5427 7036 -9764 2735 459 1996 2343 6384 4108 5645 5992 -9765 3648 1934 2154 729 7297 5583 5803 4378 -9766 2196 537 1923 3279 5845 4186 5572 6928 -9767 328 2599 2601 2600 3977 6248 6250 6249 -9768 2915 2055 697 1272 6564 5704 4346 4921 -9769 1311 2209 765 2644 4960 5858 4414 6293 -9770 2953 2097 2742 855 6602 5746 6391 4504 -9771 2174 2943 3061 354 5823 6592 6710 4003 -9772 2948 1322 2157 2874 6597 4971 5806 6523 -9773 2691 2171 2782 338 6340 5820 6431 3987 -9774 557 1966 972 3219 4206 5615 4621 6868 -9775 1979 3763 2275 924 5628 7412 5924 4573 -9776 3465 458 2772 2035 7114 4107 6421 5684 -9777 783 2510 1231 3227 4432 6159 4880 6876 -9778 1955 795 1788 3265 5604 4444 5437 6914 -9779 3700 915 2066 2487 7349 4564 5715 6136 -9780 3685 2002 1795 937 7334 5651 5444 4586 -9781 459 2630 826 2220 4108 6279 4475 5869 -9782 2688 2614 2579 1025 6337 6263 6228 4674 -9783 1402 3596 284 2518 5051 7245 3933 6167 -9784 2558 3833 2249 873 6207 7482 5898 4522 -9785 379 3074 1279 2205 4028 6723 4928 5854 -9786 2579 2614 1974 510 6228 6263 5623 4159 -9787 950 3238 650 1961 4599 6887 4299 5610 -9788 973 3211 213 2352 4622 6860 3862 6001 -9789 3265 1408 3126 1955 6914 5057 6775 5604 -9790 3156 1132 3142 1982 6805 4781 6791 5631 -9791 486 2650 1032 3077 4135 6299 4681 6726 -9792 3392 1964 788 530 7041 5613 4437 4179 -9793 1164 3505 673 3312 4813 7154 4322 6961 -9794 1499 1391 3564 589 5148 5040 7213 4238 -9795 1221 2998 858 3593 4870 6647 4507 7242 -9796 3390 1688 815 2025 7039 5337 4464 5674 -9797 1036 2856 387 2338 4685 6505 4036 5987 -9798 3218 1977 2886 971 6867 5626 6535 4620 -9799 3655 1142 2651 2056 7304 4791 6300 5705 -9800 3655 2056 1401 303 7304 5705 5050 3952 -9801 1199 3021 574 2635 4848 6670 4223 6284 -9802 563 3341 929 1952 4212 6990 4578 5601 -9803 1398 3030 310 3129 5047 6679 3959 6778 -9804 1141 2917 844 2817 4790 6566 4493 6466 -9805 3799 347 3227 2045 7448 3996 6876 5694 -9806 2407 849 1846 2800 6056 4498 5495 6449 -9807 3339 1977 3219 972 6988 5626 6868 4621 -9808 2604 2406 2861 1039 6253 6055 6510 4688 -9809 3037 318 1948 2603 6686 3967 5597 6252 -9810 3688 485 3281 1953 7337 4134 6930 5602 -9811 2129 460 2872 1020 5778 4109 6521 4669 -9812 572 3143 770 2000 4221 6792 4419 5649 -9813 2427 3098 1492 932 6076 6747 5141 4581 -9814 699 3435 1993 2436 4348 7084 5642 6085 -9815 3040 583 1742 3221 6689 4232 5391 6870 -9816 999 3139 570 2104 4648 6788 4219 5753 -9817 2551 3456 2125 1028 6200 7105 5774 4677 -9818 2320 2581 1909 875 5969 6230 5558 4524 -9819 2124 3803 1763 699 5773 7452 5412 4348 -9820 1077 3267 1144 2969 4726 6916 4793 6618 -9821 1303 2792 930 1972 4952 6441 4579 5621 -9822 1261 2964 1140 2225 4910 6613 4789 5874 -9823 605 2020 1537 3178 4254 5669 5186 6827 -9824 1374 2192 239 2908 5023 5841 3888 6557 -9825 270 404 2609 2287 3919 4053 6258 5936 -9826 721 3059 1021 2183 4370 6708 4670 5832 -9827 3803 1538 533 1763 7452 5187 4182 5412 -9828 3626 1252 705 1946 7275 4901 4354 5595 -9829 1164 3312 474 2902 4813 6961 4123 6551 -9830 2627 343 1916 2302 6276 3992 5565 5951 -9831 3816 1953 3281 736 7465 5602 6930 4385 -9832 3722 1951 2915 352 7371 5600 6564 4001 -9833 3722 1104 1345 1951 7371 4753 4994 5600 -9834 2254 1061 1521 3303 5903 4710 5170 6952 -9835 3734 1405 595 2610 7383 5054 4244 6259 -9836 356 2454 905 2700 4005 6103 4554 6349 -9837 3043 2348 1740 847 6692 5997 5389 4496 -9838 2328 1006 2669 2591 5977 4655 6318 6240 -9839 1140 2964 513 2547 4789 6613 4162 6196 -9840 650 3238 1671 2019 4299 6887 5320 5668 -9841 1177 2153 734 2806 4826 5802 4383 6455 -9842 3492 1954 2827 1184 7141 5603 6476 4833 -9843 893 2091 1548 2951 4542 5740 5197 6600 -9844 2952 2092 2265 894 6601 5741 5914 4543 -9845 534 2983 1170 2248 4183 6632 4819 5897 -9846 1181 3457 485 2985 4830 7106 4134 6634 -9847 3392 1155 2973 1964 7041 4804 6622 5613 -9848 808 3241 314 2243 4457 6890 3963 5892 -9849 2957 330 1814 2313 6606 3979 5463 5962 -9850 333 3288 723 1978 3982 6937 4372 5627 -9851 3688 1953 2913 997 7337 5602 6562 4646 -9852 219 3313 853 1976 3868 6962 4502 5625 -9853 3749 2405 777 2106 7398 6054 4426 5755 -9854 2144 523 1766 2834 5793 4172 5415 6483 -9855 3502 3225 3553 2069 7151 6874 7202 5718 -9856 3502 2069 2705 324 7151 5718 6354 3973 -9857 2657 2269 786 1271 6306 5918 4435 4920 -9858 1429 3321 1030 2987 5078 6970 4679 6636 -9859 3769 1811 362 2493 7418 5460 4011 6142 -9860 1522 3687 253 2764 5171 7336 3902 6413 -9861 3339 286 2886 1977 6988 3935 6535 5626 -9862 3782 1194 2612 1959 7431 4843 6261 5608 -9863 2083 99 98 3054 5732 195 194 6703 -9864 3848 753 2093 1965 7497 4402 5742 5614 -9865 3747 2462 2230 442 7396 6111 5879 4091 -9866 3258 1994 809 1268 6907 5643 4458 4917 -9867 858 2998 293 2088 4507 6647 3942 5737 -9868 3005 2537 1989 1149 6654 6186 5638 4798 -9869 295 1716 1691 3089 3944 5365 5340 6738 -9870 3508 431 1475 1963 7157 4080 5124 5612 -9871 2308 501 2297 2861 5957 4150 5946 6510 -9872 1167 2666 910 2667 4816 6315 4559 6316 -9873 3519 1965 2093 887 7168 5614 5742 4536 -9874 505 2320 875 2628 4154 5969 4524 6277 -9875 2944 2618 2021 1053 6593 6267 5670 4702 -9876 3318 228 2828 1985 6967 3877 6477 5634 -9877 2668 3778 3122 550 6317 7427 6771 4199 -9878 343 2783 1039 2655 3992 6432 4688 6304 -9879 724 2174 992 3027 4373 5823 4641 6676 -9880 53 3141 1503 54 149 6790 5152 150 -9881 2756 44 43 2282 6405 140 139 5931 -9882 2808 891 1877 2419 6457 4540 5526 6068 -9883 1194 3083 1090 2612 4843 6732 4739 6261 -9884 966 2530 993 2489 4615 6179 4642 6138 -9885 3781 1970 3468 1112 7430 5619 7117 4761 -9886 27 3644 28 2 123 7293 124 6 -9887 2738 782 2658 2241 6387 4431 6307 5890 -9888 79 78 1496 3106 175 174 5145 6755 -9889 2845 2229 712 1485 6494 5878 4361 5134 -9890 2229 2845 2162 309 5878 6494 5811 3958 -9891 547 2100 1220 3016 4196 5749 4869 6665 -9892 1281 3495 1546 2753 4930 7144 5195 6402 -9893 967 2700 1014 2543 4616 6349 4663 6192 -9894 3663 2903 869 359 7312 6552 4518 4008 -9895 3127 2721 2527 538 6776 6370 6176 4187 -9896 3512 833 2155 3002 7161 4482 5804 6651 -9897 1059 2339 303 3255 4708 5988 3952 6904 -9898 548 3206 849 2029 4197 6855 4498 5678 -9899 3373 487 1869 2637 7022 4136 5518 6286 -9900 1549 3822 677 2730 5198 7471 4326 6379 -9901 3257 2215 3467 1089 6906 5864 7116 4738 -9902 3627 1606 624 2227 7276 5255 4273 5876 -9903 1255 991 585 493 4904 4640 4234 4142 -9904 953 2683 1093 2684 4602 6332 4742 6333 -9905 3737 1975 2748 670 7386 5624 6397 4319 -9906 2309 3324 1745 830 5958 6973 5394 4479 -9907 2342 2734 1902 952 5991 6383 5551 4601 -9908 1227 2288 668 2704 4876 5937 4317 6353 -9909 883 2602 1137 2423 4532 6251 4786 6072 -9910 1024 2988 1116 2150 4673 6637 4765 5799 -9911 2961 2123 1440 236 6610 5772 5089 3885 -9912 2406 2604 2478 520 6055 6253 6127 4169 -9913 3772 2375 1676 396 7421 6024 5325 4045 -9914 767 1458 582 1510 4416 5107 4231 5159 -9915 1299 3383 780 2761 4948 7032 4429 6410 -9916 3377 1351 3360 2135 7026 5000 7009 5784 -9917 1025 3093 350 2693 4674 6742 3999 6342 -9918 3553 530 788 2069 7202 4179 4437 5718 -9919 3435 1154 3068 1993 7084 4803 6717 5642 -9920 2953 855 2573 2204 6602 4504 6222 5853 -9921 2233 879 1988 2231 5882 4528 5637 5880 -9922 246 3789 1754 2826 3895 7438 5403 6475 -9923 2520 3797 1034 1386 6169 7446 4683 5035 -9924 3328 2292 1710 746 6977 5941 5359 4395 -9925 3754 1983 272 1288 7403 5632 3921 4937 -9926 1014 2700 905 2308 4663 6349 4554 5957 -9927 1019 3415 1220 2100 4668 7064 4869 5749 -9928 1328 3235 969 2552 4977 6884 4618 6201 -9929 984 2279 1464 3169 4633 5928 5113 6818 -9930 3355 2175 701 1629 7004 5824 4350 5278 -9931 3385 231 1069 1653 7034 3880 4718 5302 -9932 2898 1126 3209 2595 6547 4775 6858 6244 -9933 509 3675 715 1984 4158 7324 4364 5633 -9934 2586 417 3242 3610 6235 4066 6891 7259 -9935 3770 313 1634 2582 7419 3962 5283 6231 -9936 2059 813 3055 3203 5708 4462 6704 6852 -9937 1131 2777 216 3388 4780 6426 3865 7037 -9938 3227 1231 3454 2045 6876 4880 7103 5694 -9939 3433 499 2978 2005 7082 4148 6627 5654 -9940 1350 2580 334 3424 4999 6229 3983 7073 -9941 2361 2663 3365 1292 6010 6312 7014 4941 -9942 3620 2094 2062 808 7269 5743 5711 4457 -9943 2729 3474 3550 1277 6378 7123 7199 4926 -9944 3269 2065 68 67 6918 5714 164 163 -9945 1132 2512 985 3393 4781 6161 4634 7042 -9946 2736 2825 2032 488 6385 6474 5681 4137 -9947 2758 1055 2705 2280 6407 4704 6354 5929 -9948 1026 3093 1025 2579 4675 6742 4674 6228 -9949 219 2596 1550 3313 3868 6245 5199 6962 -9950 3166 1106 2556 2073 6815 4755 6205 5722 -9951 1238 2636 549 3207 4887 6285 4198 6856 -9952 210 3709 1693 2720 3859 7358 5342 6369 -9953 3072 2560 1874 925 6721 6209 5523 4574 -9954 532 2850 1085 2774 4181 6499 4734 6423 -9955 489 3693 1124 2259 4138 7342 4773 5908 -9956 3393 2085 2297 501 7042 5734 5946 4150 -9957 1115 2757 633 2387 4764 6406 4282 6036 -9958 3034 829 3791 2335 6683 4478 7440 5984 -9959 628 2327 1303 2891 4277 5976 4952 6540 -9960 3432 2173 3579 1107 7081 5822 7228 4756 -9961 3432 762 3201 2173 7081 4411 6850 5822 -9962 1103 3489 1529 3497 4752 7138 5178 7146 -9963 1685 3045 911 3044 5334 6694 4560 6693 -9964 1764 2863 432 3118 5413 6512 4081 6767 -9965 1479 1068 316 862 5128 4717 3965 4511 -9966 1286 2822 1975 3737 4935 6471 5624 7386 -9967 3053 971 608 1695 6702 4620 4257 5344 -9968 2457 1398 3129 3641 6106 5047 6778 7290 -9969 2701 944 2325 2631 6350 4593 5974 6280 -9970 3116 351 2738 2241 6765 4000 6387 5890 -9971 507 2695 1090 3083 4156 6344 4739 6732 -9972 3645 2002 2830 1317 7294 5651 6479 4966 -9973 3349 2033 1794 742 6998 5682 5443 4391 -9974 3685 233 2830 2002 7334 3882 6479 5651 -9975 1360 3305 1388 2039 5009 6954 5037 5688 -9976 2956 2170 738 1436 6605 5819 4387 5085 -9977 3272 1256 3728 2181 6921 4905 7377 5830 -9978 2673 2490 2819 1010 6322 6139 6468 4659 -9979 43 42 1918 3214 139 138 5567 6863 -9980 3654 1125 2670 2368 7303 4774 6319 6017 -9981 995 3077 1032 2304 4644 6726 4681 5953 -9982 1070 2643 1150 2978 4719 6292 4799 6627 -9983 694 2585 1347 2526 4343 6234 4996 6175 -9984 1391 1390 380 3564 5040 5039 4029 7213 -9985 1160 3283 2716 2052 4809 6932 6365 5701 -9986 297 2089 1477 3193 3946 5738 5126 6842 -9987 3002 2155 2410 525 6651 5804 6059 4174 -9988 527 3601 737 2010 4176 7250 4386 5659 -9989 2734 2342 2081 455 6383 5991 5730 4104 -9990 2735 2343 2374 931 6384 5992 6023 4580 -9991 3615 757 1842 2463 7264 4406 5491 6112 -9992 488 2341 965 2736 4137 5990 4614 6385 -9993 2584 2619 2925 1046 6233 6268 6574 4695 -9994 3684 1662 814 2188 7333 5311 4463 5837 -9995 2797 3271 3624 629 6446 6920 7273 4278 -9996 470 2430 941 2653 4119 6079 4590 6302 -9997 1114 3375 217 2730 4763 7024 3866 6379 -9998 1297 2811 1099 3369 4946 6460 4748 7018 -9999 34 33 1816 3399 130 129 5465 7048 -10000 1596 2441 857 3264 5245 6090 4506 6913 -10001 2023 3527 1919 1263 5672 7176 5568 4912 -10002 2790 1327 2065 3269 6439 4976 5714 6918 -10003 2790 3269 67 66 6439 6918 163 162 -10004 3782 365 1796 1194 7431 4014 5445 4843 -10005 3099 1294 266 2236 6748 4943 3915 5885 -10006 831 2675 1797 3380 4480 6324 5446 7029 -10007 802 2872 460 2246 4451 6521 4109 5895 -10008 955 2658 449 2809 4604 6307 4098 6458 -10009 3530 949 3310 2533 7179 4598 6959 6182 -10010 895 2923 445 2206 4544 6572 4094 5855 -10011 570 3139 1454 3585 4219 6788 5103 7234 -10012 433 1180 1879 2733 4082 4829 5528 6382 -10013 3167 571 271 2841 6816 4220 3920 6490 -10014 3359 3651 2042 1200 7008 7300 5691 4849 -10015 1076 2426 1750 2936 4725 6075 5399 6585 -10016 1134 3158 926 2597 4783 6807 4575 6246 -10017 2292 3386 1880 206 5941 7035 5529 3855 -10018 3392 3417 2888 1155 7041 7066 6537 4804 -10019 2693 1037 2741 2574 6342 4686 6390 6223 -10020 1339 2974 548 2697 4988 6623 4197 6346 -10021 2725 2376 3101 494 6374 6025 6750 4143 -10022 584 2248 1170 2881 4233 5897 4819 6530 -10023 2876 698 876 2878 6525 4347 4525 6527 -10024 808 2062 437 3327 4457 5711 4086 6976 -10025 15 14 2215 3257 111 110 5864 6906 -10026 2926 2925 2619 660 6575 6574 6268 4309 -10027 3680 770 1878 2022 7329 4419 5527 5671 -10028 1090 2216 320 3504 4739 5865 3969 7153 -10029 2057 1227 3110 3343 5706 4876 6759 6992 -10030 3034 2404 1777 829 6683 6053 5426 4478 -10031 1107 2194 763 3431 4756 5843 4412 7080 -10032 1424 3151 1162 3201 5073 6800 4811 6850 -10033 3086 3455 2450 469 6735 7104 6099 4118 -10034 3368 1214 631 2473 7017 4863 4280 6122 -10035 241 2403 989 2746 3890 6052 4638 6395 -10036 3101 2376 2377 871 6750 6025 6026 4520 -10037 709 2139 1498 3091 4358 5788 5147 6740 -10038 544 3128 1223 3661 4193 6777 4872 7310 -10039 3208 3005 3008 1087 6857 6654 6657 4736 -10040 3164 515 3161 2114 6813 4164 6810 5763 -10041 722 2504 1235 3031 4371 6153 4884 6680 -10042 88 2852 791 2285 184 6501 4440 5934 -10043 2900 3096 2438 1123 6549 6745 6087 4772 -10044 2134 36 35 3296 5783 132 131 6945 -10045 3594 2027 2171 781 7243 5676 5820 4430 -10046 46 3643 1905 47 142 7292 5554 143 -10047 1236 2949 479 3416 4885 6598 4128 7065 -10048 208 3067 902 2163 3857 6716 4551 5812 -10049 3792 2105 3727 751 7441 5754 7376 4400 -10050 3792 1169 2455 2105 7441 4818 6104 5754 -10051 3454 1182 3799 2045 7103 4831 7448 5694 -10052 2889 1308 1873 3745 6538 4957 5522 7394 -10053 2822 2321 2809 449 6471 5970 6458 4098 -10054 590 3094 1026 1950 4239 6743 4675 5599 -10055 2485 2668 1725 850 6134 6317 5374 4499 -10056 3682 2295 424 1570 7331 5944 4073 5219 -10057 2295 3682 2880 638 5944 7331 6529 4287 -10058 1158 2677 563 3342 4807 6326 4212 6991 -10059 2837 837 2326 2311 6486 4486 5975 5960 -10060 3239 1008 1709 2184 6888 4657 5358 5833 -10061 3520 1560 3555 2411 7169 5209 7204 6060 -10062 3680 2546 2000 770 7329 6195 5649 4419 -10063 488 2032 771 3677 4137 5681 4420 7326 -10064 3670 2367 2025 815 7319 6016 5674 4464 -10065 745 3678 610 2030 4394 7327 4259 5679 -10066 2430 470 2137 3060 6079 4119 5786 6709 -10067 1588 3775 311 3344 5237 7424 3960 6993 -10068 3284 2801 1876 341 6933 6450 5525 3990 -10069 1041 3085 1146 3111 4690 6734 4795 6760 -10070 3807 1452 978 2034 7456 5101 4627 5683 -10071 2939 2249 3195 1178 6588 5898 6844 4827 -10072 2391 3408 1701 856 6040 7057 5350 4505 -10073 3055 813 2351 2187 6704 4462 6000 5836 -10074 495 2969 1144 2681 4144 6618 4793 6330 -10075 803 3223 337 2118 4452 6872 3986 5767 -10076 3367 582 1458 1016 7016 4231 5107 4665 -10077 358 3229 982 2273 4007 6878 4631 5922 -10078 908 2966 1985 2828 4557 6615 5634 6477 -10079 3046 2848 329 3376 6695 6497 3978 7025 -10080 3777 2713 941 1668 7426 6362 4590 5317 -10081 2584 978 1452 2619 6233 4627 5101 6268 -10082 1027 2920 1085 2768 4676 6569 4734 6417 -10083 1711 3235 633 3730 5360 6884 4282 7379 -10084 1190 2293 877 3517 4839 5942 4526 7166 -10085 628 3136 1414 2327 4277 6785 5063 5976 -10086 1407 2747 247 3529 5056 6396 3896 7178 -10087 2986 2721 3127 1040 6635 6370 6776 4689 -10088 2395 2840 2053 980 6044 6489 5702 4629 -10089 2812 2374 1492 491 6461 6023 5141 4140 -10090 363 3001 1139 2767 4012 6650 4788 6416 -10091 2850 2689 2768 1085 6499 6338 6417 4734 -10092 3112 978 2584 2178 6761 4627 6233 5827 -10093 316 726 1594 1653 3965 4375 5243 5302 -10094 259 3070 1640 3804 3908 6719 5289 7453 -10095 3119 2189 3006 1022 6768 5838 6655 4671 -10096 823 2258 511 1887 4472 5907 4160 5536 -10097 3532 968 2307 2152 7181 4617 5956 5801 -10098 3005 1149 2539 3008 6654 4798 6188 6657 -10099 3351 789 2240 423 7000 4438 5889 4072 -10100 2899 2301 407 1589 6548 5950 4056 5238 -10101 3732 372 1971 2121 7381 4021 5620 5770 -10102 3008 390 2036 854 6657 4039 5685 4503 -10103 2546 3680 2839 1349 6195 7329 6488 4998 -10104 2185 19 18 3398 5834 115 114 7047 -10105 363 2965 1242 3001 4012 6614 4891 6650 -10106 3115 2317 2812 491 6764 5966 6461 4140 -10107 1092 3160 546 2501 4741 6809 4195 6150 -10108 3754 2778 227 1983 7403 6427 3876 5632 -10109 990 2456 542 2759 4639 6105 4191 6408 -10110 386 3476 2283 2798 4035 7125 5932 6447 -10111 1380 2447 1224 2763 5029 6096 4873 6412 -10112 3723 1530 1816 3800 7372 5179 5465 7449 -10113 534 2857 1036 3425 4183 6506 4685 7074 -10114 1308 2889 1082 3231 4957 6538 4731 6880 -10115 2673 1010 2508 1049 6322 4659 6157 4698 -10116 2068 3636 3076 1462 5717 7285 6725 5111 -10117 2121 3394 2113 703 5770 7043 5762 4352 -10118 3123 930 2438 3306 6772 4579 6087 6955 -10119 2778 860 1516 2444 6427 4509 5165 6093 -10120 3441 2096 3099 687 7090 5745 6748 4336 -10121 2774 1085 2920 2570 6423 4734 6569 6219 -10122 2063 1451 3251 3817 5712 5100 6900 7466 -10123 611 3363 1127 2934 4260 7012 4776 6583 -10124 3035 962 1685 2245 6684 4611 5334 5894 -10125 943 2470 1428 3153 4592 6119 5077 6802 -10126 1130 2573 855 2867 4779 6222 4504 6516 -10127 1127 3642 326 2322 4776 7291 3975 5971 -10128 3526 756 1998 2605 7175 4405 5647 6254 -10129 3692 2079 1676 728 7341 5728 5325 4377 -10130 930 2792 1123 2438 4579 6441 4772 6087 -10131 2693 2574 2688 1025 6342 6223 6337 4674 -10132 350 2715 1037 2693 3999 6364 4686 6342 -10133 1055 2557 324 2705 4704 6206 3973 6354 -10134 3513 2084 2702 301 7162 5733 6351 3950 -10135 41 40 2476 3554 137 136 6125 7203 -10136 724 3027 1534 2259 4373 6676 5183 5908 -10137 665 2244 1529 3489 4314 5893 5178 7138 -10138 3521 599 3102 2283 7170 4248 6751 5932 -10139 2714 2615 2741 1037 6363 6264 6390 4686 -10140 3091 973 1779 2916 6740 4622 5428 6565 -10141 364 3065 900 2238 4013 6714 4549 5887 -10142 3566 1762 1110 2224 7215 5411 4759 5873 -10143 2711 1049 2508 531 6360 4698 6157 4180 -10144 3502 324 2564 2090 7151 3973 6213 5739 -10145 3670 815 3789 2261 7319 4464 7438 5910 -10146 985 2793 457 2468 4634 6442 4106 6117 -10147 1218 2432 750 2816 4867 6081 4399 6465 -10148 2319 332 2491 2946 5968 3981 6140 6595 -10149 2275 3075 1129 3056 5924 6724 4778 6705 -10150 3553 2217 2804 530 7202 5866 6453 4179 -10151 1098 3171 722 3031 4747 6820 4371 6680 -10152 1378 2213 1652 3222 5027 5862 5301 6871 -10153 3391 2928 3200 1195 7040 6577 6849 4844 -10154 1715 3646 619 3340 5364 7295 4268 6989 -10155 1450 3270 594 3202 5099 6919 4243 6851 -10156 926 2359 936 3528 4575 6008 4585 7177 -10157 3820 2797 2054 779 7469 6446 5703 4428 -10158 1184 2827 1052 3025 4833 6476 4701 6674 -10159 751 3727 1315 2368 4400 7376 4964 6017 -10160 3004 1012 2614 2688 6653 4661 6263 6337 -10161 1132 3156 342 2512 4781 6805 3991 6161 -10162 521 2987 1030 2394 4170 6636 4679 6043 -10163 1205 3084 1204 3662 4854 6733 4853 7311 -10164 1412 3573 248 2776 5061 7222 3897 6425 -10165 2406 1014 2308 2861 6055 4663 5957 6510 -10166 1499 1074 3094 590 5148 4723 6743 4239 -10167 3601 1283 2674 3479 7250 4932 6323 7128 -10168 3243 321 1909 2581 6892 3970 5558 6230 -10169 959 2997 480 2300 4608 6646 4129 5949 -10170 2977 2669 2536 1007 6626 6318 6185 4656 -10171 1407 3529 1639 3329 5056 7178 5288 6978 -10172 1173 2434 289 3360 4822 6083 3938 7009 -10173 575 2729 1277 3404 4224 6378 4926 7053 -10174 2819 2490 1539 1013 6468 6139 5188 4662 -10175 862 316 1206 861 4511 3965 4855 4510 -10176 2200 1324 672 3157 5849 4973 4321 6806 -10177 83 3806 1889 84 179 7455 5538 180 -10178 48 3815 2276 49 144 7464 5925 145 -10179 1648 3573 1412 3295 5297 7222 5061 6944 -10180 3487 62 61 2333 7136 158 157 5982 -10181 3487 2333 3542 1168 7136 5982 7191 4817 -10182 1006 2424 1040 3127 4655 6073 4689 6776 -10183 2918 1469 3652 2572 6567 5118 7301 6221 -10184 3394 2121 1971 1003 7043 5770 5620 4652 -10185 3116 2241 2658 955 6765 5890 6307 4604 -10186 3105 1162 3151 3104 6754 4811 6800 6753 -10187 3052 3382 1580 3371 6701 7031 5229 7020 -10188 3065 364 2911 3230 6714 4013 6560 6879 -10189 2825 2478 2604 996 6474 6127 6253 4645 -10190 3358 1843 1189 2289 7007 5492 4838 5938 -10191 3459 389 3609 2363 7108 4038 7258 6012 -10192 3133 735 1605 2350 6782 4384 5254 5999 -10193 3077 995 2073 2556 6726 4644 5722 6205 -10194 501 2308 905 3013 4150 5957 4554 6662 -10195 3037 2796 2169 1177 6686 6445 5818 4826 -10196 2796 3037 2603 1078 6445 6686 6252 4727 -10197 2712 3389 2965 974 6361 7038 6614 4623 -10198 2696 2708 2496 1088 6345 6357 6145 4737 -10199 3426 945 1656 3427 7075 4594 5305 7076 -10200 3720 2096 3441 1002 7369 5745 7090 4651 -10201 3480 1241 3245 2116 7129 4890 6894 5765 -10202 1429 2987 1082 2760 5078 6636 4731 6409 -10203 3500 3612 2635 574 7149 7261 6284 4223 -10204 1215 2529 886 2805 4864 6178 4535 6454 -10205 3467 2123 3706 1089 7116 5772 7355 4738 -10206 2615 1027 2900 2741 6264 4676 6549 6390 -10207 816 2621 1748 3771 4465 6270 5397 7420 -10208 2762 988 2358 2577 6411 4637 6007 6226 -10209 2521 2519 2199 773 6170 6168 5848 4422 -10210 518 2819 1013 3073 4167 6468 4662 6722 -10211 518 2803 1010 2819 4167 6452 4659 6468 -10212 1051 2714 1037 2715 4700 6363 4686 6364 -10213 3241 1271 786 2195 6890 4920 4435 5844 -10214 970 3115 1369 3459 4619 6764 5018 7108 -10215 389 2224 1110 3495 4038 5873 4759 7144 -10216 3102 947 2798 2283 6751 4596 6447 5932 -10217 1128 3356 1714 3673 4777 7005 5363 7322 -10218 2708 2696 2047 1005 6357 6345 5696 4654 -10219 2743 938 2213 2646 6392 4587 5862 6295 -10220 3082 584 1489 3181 6731 4233 5138 6830 -10221 1044 2495 885 2962 4693 6144 4534 6611 -10222 2701 2631 478 1214 6350 6280 4127 4863 -10223 1411 3716 439 3620 5060 7365 4088 7269 -10224 541 2264 953 3134 4190 5913 4602 6783 -10225 3326 2993 1313 2315 6975 6642 4962 5964 -10226 2768 3096 2900 1027 6417 6745 6549 4676 -10227 243 2682 1431 3412 3892 6331 5080 7061 -10228 1402 2518 1741 3825 5051 6167 5390 7474 -10229 3257 2284 16 15 6906 5933 112 111 -10230 3300 989 2403 2298 6949 4638 6052 5947 -10231 3283 1160 2428 2515 6932 4809 6077 6164 -10232 3283 2515 2765 888 6932 6164 6414 4537 -10233 2910 1201 1809 2940 6559 4850 5458 6589 -10234 2940 339 2967 2910 6589 3988 6616 6559 -10235 3215 2264 2584 1046 6864 5913 6233 4695 -10236 1414 3136 1151 3284 5063 6785 4800 6933 -10237 2962 885 2840 2395 6611 4534 6489 6044 -10238 3627 2227 942 1698 7276 5876 4591 5347 -10239 3106 2331 80 79 6755 5980 176 175 -10240 3279 900 3065 2196 6928 4549 6714 5845 -10241 439 3138 1175 2281 4088 6787 4824 5930 -10242 528 3491 1211 2507 4177 7140 4860 6156 -10243 1196 377 1195 3317 4845 4026 4844 6966 -10244 3009 986 2563 3546 6658 4635 6212 7195 -10245 3141 53 52 2347 6790 149 148 5996 -10246 3416 479 2496 2708 7065 4128 6145 6357 -10247 3072 2332 2026 230 6721 5981 5675 3879 -10248 2932 2785 3173 1095 6581 6434 6822 4744 -10249 3127 2536 2669 1006 6776 6185 6318 4655 -10250 3748 2414 3831 281 7397 6063 7480 3930 -10251 2600 526 2426 1076 6249 4175 6075 4725 -10252 343 2627 996 2783 3992 6276 4645 6432 -10253 3520 2135 3360 289 7169 5784 7009 3938 -10254 2877 726 316 1068 6526 4375 3965 4717 -10255 1035 3626 1946 3253 4684 7275 5595 6902 -10256 3268 2291 1485 712 6917 5940 5134 4361 -10257 1073 2439 326 3642 4722 6088 3975 7291 -10258 3587 1168 3542 2128 7236 4817 7191 5777 -10259 3004 2522 3315 1157 6653 6171 6964 4806 -10260 3299 1031 1699 2611 6948 4680 5348 6260 -10261 706 3442 1362 3018 4355 7091 5011 6667 -10262 3573 2641 1467 248 7222 6290 5116 3897 -10263 3115 970 2044 2317 6764 4619 5693 5966 -10264 3499 374 3703 2145 7148 4023 7352 5794 -10265 1064 3753 1283 3250 4713 7402 4932 6899 -10266 483 2409 1153 3437 4132 6058 4802 7086 -10267 3079 3022 1857 1252 6728 6671 5506 4901 -10268 2733 1071 2921 2151 6382 4720 6570 5800 -10269 3537 1359 3429 1096 7186 5008 7078 4745 -10270 899 3074 379 2355 4548 6723 4028 6004 -10271 3311 2494 207 1663 6960 6143 3856 5312 -10272 3311 730 1312 2494 6960 4379 4961 6143 -10273 3844 2289 3177 554 7493 5938 6826 4203 -10274 3082 3181 3182 1229 6731 6830 6831 4878 -10275 3791 829 1777 3020 7440 4478 5426 6669 -10276 2250 3497 1529 214 5899 7146 5178 3863 -10277 3497 2250 2101 1103 7146 5899 5750 4752 -10278 904 3302 1305 2896 4553 6951 4954 6545 -10279 1590 2440 735 2982 5239 6089 4384 6631 -10280 2670 1434 3040 3221 6319 5083 6689 6870 -10281 2988 1024 2736 2524 6637 4673 6385 6173 -10282 1413 3447 573 3019 5062 7096 4222 6668 -10283 2947 2502 3479 917 6596 6151 7128 4566 -10284 517 3244 1184 3025 4166 6893 4833 6674 -10285 3166 844 2917 2527 6815 4493 6566 6176 -10286 3166 2527 2721 1106 6815 6176 6370 4755 -10287 551 3315 1123 2792 4200 6964 4772 6441 -10288 981 3038 1319 3039 4630 6687 4968 6688 -10289 284 3596 1320 2634 3933 7245 4969 6283 -10290 3529 247 1461 2622 7178 3896 5110 6271 -10291 231 3385 843 2190 3880 7034 4492 5839 -10292 3589 1830 425 2381 7238 5479 4074 6030 -10293 2698 1083 2757 473 6347 4732 6406 4122 -10294 1492 3098 1698 3557 5141 6747 5347 7206 -10295 482 2492 901 2942 4131 6141 4550 6591 -10296 1627 2991 921 2992 5276 6640 4570 6641 -10297 1229 2149 1228 3082 4878 5798 4877 6731 -10298 3603 2678 1943 1133 7252 6327 5592 4782 -10299 1192 3412 1431 3120 4841 7061 5080 6769 -10300 836 2594 1418 2865 4485 6243 5067 6514 -10301 3686 2164 2607 1143 7335 5813 6256 4792 -10302 2643 2937 2703 577 6292 6586 6352 4226 -10303 3247 2372 2977 1007 6896 6021 6626 4656 -10304 3767 2252 680 1296 7416 5901 4329 4945 -10305 3767 94 93 2252 7416 190 189 5901 -10306 3674 2175 3355 514 7323 5824 7004 4163 -10307 3674 1118 2800 2175 7323 4767 6449 5824 -10308 904 2226 203 3302 4553 5875 3852 6951 -10309 965 3060 1405 3742 4614 6709 5054 7391 -10310 3794 800 1870 2130 7443 4449 5519 5779 -10311 1355 3048 784 2417 5004 6697 4433 6066 -10312 1473 2647 244 3409 5122 6296 3893 7058 -10313 249 3224 843 2354 3898 6873 4492 6003 -10314 3174 1042 2957 2313 6823 4691 6606 5962 -10315 959 2557 1055 2997 4608 6206 4704 6646 -10316 789 3351 1768 2500 4438 7000 5417 6149 -10317 2350 1253 313 3133 5999 4902 3962 6782 -10318 2901 1172 3242 3559 6550 4821 6891 7208 -10319 1425 3571 611 2934 5074 7220 4260 6583 -10320 2984 3746 2003 251 6633 7395 5652 3900 -10321 3194 2927 2926 660 6843 6576 6575 4309 -10322 1281 2389 494 3101 4930 6038 4143 6750 -10323 3534 756 3526 2402 7183 4405 7175 6051 -10324 3039 543 1551 3174 6688 4192 5200 6823 -10325 3173 2328 2591 840 6822 5977 6240 4489 -10326 1342 3849 255 3029 4991 7498 3904 6678 -10327 916 2835 1357 2697 4565 6484 5006 6346 -10328 1261 3172 513 2964 4910 6821 4162 6613 -10329 3752 914 2202 2373 7401 4563 5851 6022 -10330 496 3119 1022 2385 4145 6768 4671 6034 -10331 3060 965 2341 2430 6709 4614 5990 6079 -10332 3380 1117 2323 2382 7029 4766 5972 6031 -10333 3380 2382 1689 831 7029 6031 5338 4480 -10334 1392 2205 1279 3569 5041 5854 4928 7218 -10335 2689 2850 2304 1032 6338 6499 5953 4681 -10336 741 2832 1182 3695 4390 6481 4831 7344 -10337 3582 504 2846 2191 7231 4153 6495 5840 -10338 2149 1229 3183 585 5798 4878 6832 4234 -10339 956 2497 237 3190 4605 6146 3886 6839 -10340 3813 1628 1067 2344 7462 5277 4716 5993 -10341 2988 2524 3742 335 6637 6173 7391 3984 -10342 2154 3745 1873 729 5803 7394 5522 4378 -10343 3817 2855 873 2063 7466 6504 4522 5712 -10344 1221 3372 293 2998 4870 7021 3942 6647 -10345 3021 1199 3286 3481 6670 4848 6935 7130 -10346 491 2639 1369 3115 4140 6288 5018 6764 -10347 990 3061 1102 2456 4639 6710 4751 6105 -10348 2499 3071 2141 691 6148 6720 5790 4340 -10349 884 2824 1432 3256 4533 6473 5081 6905 -10350 2820 940 2690 3690 6469 4589 6339 7339 -10351 3765 3839 1782 1298 7414 7488 5431 4947 -10352 2977 468 2591 2669 6626 4117 6240 6318 -10353 299 2810 1239 2894 3948 6459 4888 6543 -10354 3167 1305 3307 3558 6816 4954 6956 7207 -10355 463 3401 778 2228 4112 7050 4427 5877 -10356 1036 2857 1135 2856 4685 6506 4784 6505 -10357 1235 3261 1098 3031 4884 6910 4747 6680 -10358 2251 474 3312 1752 5900 4123 6961 5401 -10359 554 3222 1652 3844 4203 6871 5301 7493 -10360 3184 348 3522 3581 6833 3997 7171 7230 -10361 3712 461 3022 3079 7361 4110 6671 6728 -10362 3736 1791 621 2766 7385 5440 4270 6415 -10363 3736 2766 3630 798 7385 6415 7279 4447 -10364 3321 2305 3270 1030 6970 5954 6919 4679 -10365 3098 2427 2132 280 6747 6076 5781 3929 -10366 3088 3006 2189 537 6737 6655 5838 4186 -10367 3088 1220 3007 3006 6737 4869 6656 6655 -10368 1027 2615 517 2920 4676 6264 4166 6569 -10369 1169 2608 373 3280 4818 6257 4022 6929 -10370 1097 2842 1063 2843 4746 6491 4712 6492 -10371 1456 3500 574 2904 5105 7149 4223 6553 -10372 1372 3532 245 3707 5021 7181 3894 7356 -10373 1215 2805 259 3804 4864 6454 3908 7453 -10374 515 2161 1810 3810 4164 5810 5459 7459 -10375 1094 1944 3496 2999 4743 5593 7145 6648 -10376 3268 712 1827 2401 6917 4361 5476 6050 -10377 3351 423 2349 954 7000 4072 5998 4603 -10378 3582 2191 2727 1056 7231 5840 6376 4705 -10379 3814 271 433 2733 7463 3920 4082 6382 -10380 2745 967 2543 3028 6394 4616 6192 6677 -10381 2745 3028 2150 1116 6394 6677 5799 4765 -10382 1432 3842 302 3458 5081 7491 3951 7107 -10383 930 3123 606 2433 4579 6772 4255 6082 -10384 3415 1019 3708 2481 7064 4668 7357 6130 -10385 2832 3749 2106 1430 6481 7398 5755 5079 -10386 1158 3249 1236 2334 4807 6898 4885 5983 -10387 579 2873 988 2762 4228 6522 4637 6411 -10388 307 3828 1468 2451 3956 7477 5117 6100 -10389 3166 2642 2011 844 6815 6291 5660 4493 -10390 2449 3379 2369 1004 6098 7028 6018 4653 -10391 1230 426 231 3292 4879 4075 3880 6941 -10392 3025 2570 2920 517 6674 6219 6569 4166 -10393 3025 1052 2774 2570 6674 4701 6423 6219 -10394 1132 3013 905 3142 4781 6662 4554 6791 -10395 3614 2197 2122 547 7263 5846 5771 4196 -10396 1473 3409 1197 3266 5122 7058 4846 6915 -10397 3421 1382 3628 3422 7070 5031 7277 7071 -10398 2216 3525 2138 320 5865 7174 5787 3969 -10399 1750 2426 526 748 5399 6075 4175 4397 -10400 3493 2743 2646 1193 7142 6392 6295 4842 -10401 1255 2725 1062 991 4904 6374 4711 4640 -10402 3575 2314 3119 496 7224 5963 6768 4145 -10403 1619 3710 614 3291 5268 7359 4263 6940 -10404 2741 2900 2522 2574 6390 6549 6171 6223 -10405 2679 3697 499 1343 6328 7346 4148 4992 -10406 661 3807 1234 3552 4310 7456 4883 7201 -10407 1153 3403 370 2514 4802 7052 4019 6163 -10408 3216 2412 2370 603 6865 6061 6019 4252 -10409 3842 2866 1822 302 7491 6515 5471 3951 -10410 1443 3210 527 2397 5092 6859 4176 6046 -10411 3104 3391 1195 1163 6753 7040 4844 4812 -10412 3358 2289 3844 1234 7007 5938 7493 4883 -10413 2994 3402 2088 1044 6643 7051 5737 4693 -10414 3518 2234 1461 731 7167 5883 5110 4380 -10415 2973 1155 2888 3234 6622 4804 6537 6883 -10416 334 2398 1517 3424 3983 6047 5166 7073 -10417 1129 3075 1172 2901 4778 6724 4821 6550 -10418 3210 1049 2711 2849 6859 4698 6360 6498 -10419 631 1198 2565 2473 4280 4847 6214 6122 -10420 2937 3462 2652 1326 6586 7111 6301 4975 -10421 852 2685 1239 3702 4501 6334 4888 7351 -10422 579 2843 1063 2873 4228 6492 4712 6522 -10423 3180 2421 3334 215 6829 6070 6983 3864 -10424 3247 281 3831 2372 6896 3930 7480 6021 -10425 3679 1022 3006 3007 7328 4671 6655 6656 -10426 3729 2379 543 2814 7378 6028 4192 6463 -10427 3729 2814 2884 702 7378 6463 6533 4351 -10428 3498 1447 2567 3838 7147 5096 6216 7487 -10429 2638 842 2235 3451 6287 4491 5884 7100 -10430 3254 3263 2338 387 6903 6912 5987 4036 -10431 3254 1062 3314 3263 6903 4711 6963 6912 -10432 2689 1032 2650 3506 6338 4681 6299 7155 -10433 2224 1369 2639 3566 5873 5018 6288 7215 -10434 2924 2925 2926 1047 6573 6574 6575 4696 -10435 3173 840 2450 3455 6822 4489 6099 7104 -10436 1068 1479 406 1554 4717 5128 4055 5203 -10437 303 2371 801 3255 3952 6020 4450 6904 -10438 3280 373 3436 2353 6929 4022 7085 6002 -10439 3705 2422 2534 283 7354 6071 6183 3932 -10440 3705 1217 1609 2422 7354 4866 5258 6071 -10441 838 3050 1478 2640 4487 6699 5127 6289 -10442 3212 2884 3621 1209 6861 6533 7270 4858 -10443 2884 3212 1718 702 6533 6861 5367 4351 -10444 2429 63 62 3487 6078 159 158 7136 -10445 731 2260 1081 3518 4380 5909 4730 7167 -10446 3354 964 1732 314 7003 4613 5381 3963 -10447 3362 1301 2036 390 7011 4950 5685 4039 -10448 3077 2556 2986 486 6726 6205 6635 4135 -10449 3621 440 2117 2523 7270 4089 5766 6172 -10450 3181 1489 348 3182 6830 5138 3997 6831 -10451 2405 3749 2832 741 6054 7398 6481 4390 -10452 2312 964 2930 3370 5961 4613 6579 7019 -10453 3413 317 3310 949 7062 3966 6959 4598 -10454 3237 1029 3050 838 6886 4678 6699 4487 -10455 2421 3224 3018 1362 6070 6873 6667 5011 -10456 3797 2601 2599 1034 7446 6250 6248 4683 -10457 2785 2932 2344 1067 6434 6581 5993 4716 -10458 2712 974 2127 3240 6361 4623 5776 6889 -10459 3476 1156 3521 2283 7125 4805 7170 5932 -10460 358 2273 1446 3498 4007 5922 5095 7147 -10461 3127 538 1801 2536 6776 4187 5450 6185 -10462 1949 3254 387 3443 5598 6903 4036 7092 -10463 3333 1029 3237 438 6982 4678 6886 4087 -10464 2688 2574 2522 3004 6337 6223 6171 6653 -10465 3104 1163 2018 3105 6753 4812 5667 6754 -10466 2721 2986 2556 1106 6370 6635 6205 4755 -10467 3548 607 1670 2418 7197 4256 5319 6067 -10468 2418 1156 3476 3548 6067 4805 7125 7197 -10469 3417 2804 2434 1173 7066 6453 6083 4822 -10470 695 1191 1190 2208 4344 4840 4839 5857 -10471 2461 2731 2732 443 6110 6380 6381 4092 -10472 3016 3718 3614 547 6665 7367 7263 4196 -10473 1944 3634 2286 1119 5593 7283 5935 4768 -10474 1655 2521 1109 325 5304 6170 4758 3974 -10475 3215 1046 2925 2924 6864 4695 6574 6573 -10476 3111 2568 1711 484 6760 6217 5360 4133 -10477 2842 2928 3391 760 6491 6577 7040 4409 -10478 2842 1097 3200 2928 6491 4746 6849 6577 -10479 2990 2353 3436 1300 6639 6002 7085 4949 -10480 942 2227 624 3717 4591 5876 4273 7366 -10481 2486 3572 1827 1185 6135 7221 5476 4834 -10482 3719 1516 3784 3147 7368 5165 7433 6796 -10483 3147 1330 2068 3719 6796 4979 5717 7368 -10484 1223 3128 1091 3482 4872 6777 4740 7131 -10485 3820 2723 3271 2797 7469 6372 6920 6446 -10486 2929 1455 3023 2912 6578 5104 6672 6561 -10487 444 2004 366 1937 4093 5653 4015 5586 -10488 2771 3244 2714 1051 6420 6893 6363 4700 -10489 3318 2971 278 1931 6967 6620 3927 5580 -10490 2740 3616 1998 1312 6389 7265 5647 4961 -10491 3616 2740 1444 252 7265 6389 5093 3901 -10492 220 2391 856 3801 3869 6040 4505 7450 -10493 494 2389 796 3314 4143 6038 4445 6963 -10494 1325 3407 768 2336 4974 7056 4417 5985 -10495 865 2587 1176 3419 4514 6236 4825 7068 -10496 3460 2324 2186 457 7109 5973 5835 4106 -10497 2778 3754 2476 860 6427 7403 6125 4509 -10498 2875 3488 1105 3691 6524 7137 4754 7340 -10499 3587 911 2945 2429 7236 4560 6594 6078 -10500 456 2533 1152 3453 4105 6182 4801 7102 -10501 1598 2497 1798 3698 5247 6146 5447 7347 -10502 1158 3191 1000 2677 4807 6840 4649 6326 -10503 1261 2976 1101 3172 4910 6625 4750 6821 -10504 1471 2418 1670 3657 5120 6067 5319 7306 -10505 3352 490 3635 2517 7001 4139 7284 6166 -10506 3706 920 2829 2284 7355 4569 6478 5933 -10507 2929 2912 2346 948 6578 6561 5995 4597 -10508 3167 2841 2126 225 6816 6490 5775 3874 -10509 3379 560 1546 2369 7028 4209 5195 6018 -10510 2424 3622 2938 1040 6073 7271 6587 4689 -10511 358 2674 1283 3753 4007 6323 4932 7402 -10512 528 2318 1602 3491 4177 5967 5251 7140 -10513 986 3009 1379 3010 4635 6658 5028 6659 -10514 2924 323 2683 3215 6573 3972 6332 6864 -10515 1349 2839 593 3633 4998 6488 4242 7282 -10516 3615 2482 2212 757 7264 6131 5861 4406 -10517 1051 2715 350 3762 4700 6364 3999 7411 -10518 3833 2558 647 1805 7482 6207 4296 5454 -10519 3250 2849 2711 1064 6899 6498 6360 4713 -10520 1577 3710 1619 2681 5226 7359 5268 6330 -10521 1354 3057 670 2748 5003 6706 4319 6397 -10522 3833 535 3195 2249 7482 4184 6844 5898 -10523 2751 1166 3561 3635 6400 4815 7210 7284 -10524 951 2257 313 3770 4600 5906 3962 7419 -10525 3606 2294 2205 1392 7255 5943 5854 5041 -10526 3561 1572 797 3434 7210 5221 4446 7083 -10527 3561 3434 1679 601 7210 7083 5328 4250 -10528 1428 3328 746 3236 5077 6977 4395 6885 -10529 2815 937 3076 3636 6464 4586 6725 7285 -10530 3357 1128 3673 2535 7006 4777 7322 6184 -10531 3306 2438 3096 349 6955 6087 6745 3998 -10532 3398 3185 1603 1385 7047 6834 5252 5034 -10533 3398 18 17 3185 7047 114 113 6834 -10534 512 2455 884 3290 4161 6104 4533 6939 -10535 406 3169 3326 2315 4055 6818 6975 5964 -10536 3459 2363 2869 970 7108 6012 6518 4619 -10537 284 2634 1844 3319 3933 6283 5493 6968 -10538 2773 1582 3430 3446 6422 5231 7079 7095 -10539 3751 575 3404 3003 7400 4224 7053 6652 -10540 3751 3003 750 1597 7400 6652 4399 5246 -10541 3789 246 1418 2261 7438 3895 5067 5910 -10542 1041 2729 575 3085 4690 6378 4224 6734 -10543 1493 3388 216 3448 5142 7037 3865 7097 -10544 3308 1260 3384 3623 6957 4909 7033 7272 -10545 3308 3623 1894 1016 6957 7272 5543 4665 -10546 3353 376 2262 2453 7002 4025 5911 6102 -10547 1090 3202 594 2612 4739 6851 4243 6261 -10548 1417 2905 1630 3297 5066 6554 5279 6946 -10549 3706 2284 3257 1089 7355 5933 6906 4738 -10550 2949 1236 3249 2994 6598 4885 6898 6643 -10551 2472 3466 2855 1403 6121 7115 6504 5052 -10552 321 3243 1222 2531 3970 6892 4871 6180 -10553 1101 2775 355 2887 4750 6424 4004 6536 -10554 937 2815 1997 3685 4586 6464 5646 7334 -10555 3780 50 49 2276 7429 146 145 5925 -10556 1091 2759 542 3097 4740 6408 4191 6746 -10557 271 1213 529 433 3920 4862 4178 4082 -10558 3419 2400 2686 865 7068 6049 6335 4514 -10559 486 2986 1040 2938 4135 6635 4689 6587 -10560 3823 394 3527 2396 7472 4043 7176 6045 -10561 3441 2477 3205 1002 7090 6126 6854 4651 -10562 1428 3350 1084 3328 5077 6999 4733 6977 -10563 335 3406 1116 2988 3984 7055 4765 6637 -10564 3128 2728 2759 1091 6777 6377 6408 4740 -10565 1588 2633 487 3163 5237 6282 4136 6812 -10566 2831 1218 2638 3451 6480 4867 6287 7100 -10567 1276 3256 1432 3458 4925 6905 5081 7107 -10568 2994 1044 2962 2949 6643 4693 6611 6598 -10569 3666 2303 3171 1098 7315 5952 6820 4747 -10570 1204 3084 1333 524 4853 6733 4982 4173 -10571 3770 2582 859 1868 7419 6231 4508 5517 -10572 3709 2446 2445 1057 7358 6095 6094 4706 -10573 3096 2768 2689 349 6745 6417 6338 3998 -10574 3128 544 3472 2728 6777 4193 7121 6377 -10575 2673 1049 3210 3733 6322 4698 6859 7382 -10576 1502 2706 1023 3835 5151 6355 4672 7484 -10577 3353 2453 2873 1063 7002 6102 6522 4712 -10578 571 2287 2609 663 4220 5936 6258 4312 -10579 1202 3087 1203 3376 4851 6736 4852 7025 -10580 3493 696 1322 2743 7142 4345 4971 6392 -10581 2465 1018 2375 3772 6114 4667 6024 7421 -10582 3752 2373 2143 566 7401 6022 5792 4215 -10583 1057 2445 240 3366 4706 6094 3889 7015 -10584 3406 335 3734 2425 7055 3984 7383 6074 -10585 3538 2413 3835 1023 7187 6062 7484 4672 -10586 3160 1092 2738 3165 6809 4741 6387 6814 -10587 609 2755 1336 3829 4258 6404 4985 7478 -10588 583 3040 1320 3449 4232 6689 4969 7098 -10589 3386 2292 3328 1084 7035 5941 6977 4733 -10590 3791 3020 3768 1363 7440 6669 7417 5012 -10591 1515 3225 700 2788 5164 6874 4349 6437 -10592 3712 2312 3370 461 7361 5961 7019 4110 -10593 933 2781 1855 3293 4582 6430 5504 6942 -10594 2417 3765 2398 334 6066 7414 6047 3983 -10595 3802 245 3300 2298 7451 3894 6949 5947 -10596 3619 1555 3669 3069 7268 5204 7318 6718 -10597 2513 209 2096 3720 6162 3858 5745 7369 -10598 1258 1917 646 2854 4907 5566 4295 6503 -10599 597 3671 1382 3539 4246 7320 5031 7188 -10600 579 2762 1066 3213 4228 6411 4715 6862 -10601 3659 2596 219 1775 7308 6245 3868 5424 -10602 3315 2522 2900 1123 6964 6171 6549 4772 -10603 3478 2412 3216 1045 7127 6061 6865 4694 -10604 1750 3323 525 2936 5399 6972 4174 6585 -10605 1276 3290 884 3256 4925 6939 4533 6905 -10606 3362 2539 3796 1532 7011 6188 7445 5181 -10607 3462 1070 3697 2679 7111 4719 7346 6328 -10608 810 3229 1574 2786 4459 6878 5223 6435 -10609 3609 871 2869 2363 7258 4520 6518 6012 -10610 392 3657 1670 3592 4041 7306 5319 7241 -10611 2729 1041 2551 3474 6378 4690 6200 7123 -10612 1063 3667 1424 3353 4712 7316 5073 7002 -10613 909 2950 1372 3658 4558 6599 5021 7307 -10614 2567 918 3663 1887 6216 4567 7312 5536 -10615 3690 2690 2538 580 7339 6339 6187 4229 -10616 3589 2381 1917 1258 7238 6030 5566 4907 -10617 2980 3108 1842 568 6629 6757 5491 4217 -10618 3794 2935 669 1562 7443 6584 4318 5211 -10619 982 3229 810 2665 4631 6878 4459 6314 -10620 3651 2357 2872 802 7300 6006 6521 4451 -10621 480 3676 998 2351 4129 7325 4647 6000 -10622 2656 1183 1789 3483 6305 4832 5438 7132 -10623 3483 867 2613 2656 7132 4516 6262 6305 -10624 3689 1449 258 2346 7338 5098 3907 5995 -10625 1165 2775 1101 2976 4814 6424 4750 6625 -10626 3632 755 1849 1188 7281 4404 5498 4837 -10627 3658 1437 231 2799 7307 5086 3880 6448 -10628 987 2452 458 3465 4636 6101 4107 7114 -10629 3487 1168 3587 2429 7136 4817 7236 6078 -10630 3415 2481 2107 336 7064 6130 5756 3985 -10631 3795 1060 2898 2595 7444 4709 6547 6244 -10632 852 3702 1522 2764 4501 7351 5171 6413 -10633 3427 1656 475 3428 7076 5305 4124 7077 -10634 1214 3368 1456 2701 4863 7017 5105 6350 -10635 3654 2368 1315 360 7303 6017 4964 4009 -10636 907 3275 382 2723 4556 6924 4031 6372 -10637 2596 3659 2285 791 6245 7308 5934 4440 -10638 3331 1525 648 3656 6980 5174 4297 7305 -10639 404 2877 2876 2878 4053 6526 6525 6527 -10640 2367 3670 3131 961 6016 7319 6780 4610 -10641 3588 2407 2800 1118 7237 6056 6449 4767 -10642 3588 294 2620 2407 7237 3943 6269 6056 -10643 1028 3346 361 2551 4677 6995 4010 6200 -10644 3362 390 3008 2539 7011 4039 6657 6188 -10645 1327 2790 1595 3629 4976 6439 5244 7278 -10646 3501 1048 3071 2499 7150 4697 6720 6148 -10647 1216 3176 297 3097 4865 6825 3946 6746 -10648 2713 3777 2357 305 6362 7426 6006 3954 -10649 2896 225 2126 3480 6545 3874 5775 7129 -10650 3813 2344 3578 1537 7462 5993 7227 5186 -10651 2971 3318 1985 946 6620 6967 5634 4595 -10652 1022 3679 1001 2385 4671 7328 4650 6034 -10653 551 3452 1157 3315 4200 7101 4806 6964 -10654 3399 2724 35 34 7048 6373 131 130 -10655 3210 2849 3250 527 6859 6498 6899 4176 -10656 1278 3262 609 3162 4927 6911 4258 6811 -10657 3777 1020 2872 2357 7426 4669 6521 6006 -10658 3244 517 2615 2714 6893 4166 6264 6363 -10659 3267 588 3583 1377 6916 4237 7232 5026 -10660 1290 2826 956 3190 4939 6475 4605 6839 -10661 299 623 241 2810 3948 4272 3890 6459 -10662 3232 933 2046 2787 6881 4582 5695 6436 -10663 2859 877 2293 3338 6508 4526 5942 6987 -10664 1031 3152 1304 2893 4680 6801 4953 6542 -10665 1208 3100 1178 3195 4857 6749 4827 6844 -10666 3661 2538 2690 1165 7310 6187 6339 4814 -10667 2948 3721 3807 661 6597 7370 7456 4310 -10668 3367 2576 1510 582 7016 6225 5159 4231 -10669 1310 3162 609 3829 4959 6811 4258 7478 -10670 553 2661 1073 3285 4202 6310 4722 6934 -10671 1161 3425 1036 2541 4810 7074 4685 6190 -10672 3819 3326 3169 1464 7468 6975 6818 5113 -10673 3819 683 2993 3326 7468 4332 6642 6975 -10674 3538 1023 2245 234 7187 4672 5894 3883 -10675 3615 2380 1247 2482 7264 6029 4896 6131 -10676 2502 737 3601 3479 6151 4386 7250 7128 -10677 2787 1269 2664 3232 6436 4918 6313 6881 -10678 3058 3625 3760 617 6707 7274 7409 4266 -10679 3683 1758 1054 2442 7332 5407 4703 6091 -10680 911 3587 2128 3044 4560 7236 5777 6693 -10681 3541 1066 2762 2577 7190 4715 6411 6226 -10682 294 3588 1734 2448 3943 7237 5383 6097 -10683 3112 3287 1629 345 6761 6936 5278 3994 -10684 1439 3486 1238 3207 5088 7135 4887 6856 -10685 907 2722 644 3275 4556 6371 4293 6924 -10686 3769 2493 999 1752 7418 6142 4648 5401 -10687 2975 275 1834 3699 6624 3924 5483 7348 -10688 3699 1370 925 2975 7348 5019 4574 6624 -10689 2551 1041 3111 3456 6200 4690 6760 7105 -10690 3608 864 2445 2446 7257 4513 6094 6095 -10691 3188 3187 2856 1135 6837 6836 6505 4784 -10692 2364 1275 1783 1784 6013 4924 5432 5433 -10693 3593 2467 1289 506 7242 6116 4938 4155 -10694 1113 3537 559 3336 4762 7186 4208 6985 -10695 3765 1298 752 2398 7414 4947 4401 6047 -10696 3541 2577 2358 451 7190 6226 6007 4100 -10697 1113 3336 1387 3337 4762 6985 5036 6986 -10698 2667 3485 1812 1167 6316 7134 5461 4816 -10699 2667 2545 1237 3485 6316 6194 4886 7134 -10700 2558 873 2855 3466 6207 4522 6504 7115 -10701 3631 3622 2424 340 7280 7271 6073 3989 -10702 3402 545 3738 2709 7051 4194 7387 6358 -10703 339 2940 1000 3191 3988 6589 4649 6840 -10704 2551 361 3550 3474 6200 4010 7199 7123 -10705 1073 3642 1285 3285 4722 7291 4934 6934 -10706 3373 2637 883 1565 7022 6286 4532 5214 -10707 3211 1498 2386 961 6860 5147 6035 4610 -10708 1977 3218 557 3219 5626 6867 4206 6868 -10709 2396 1136 3611 3823 6045 4785 7260 7472 -10710 2599 2598 2314 1034 6248 6247 5963 4683 -10711 3683 2442 605 1539 7332 6091 4254 5188 -10712 2546 3545 1273 2000 6195 7194 4922 5649 -10713 2546 407 2301 3545 6195 4056 5950 7194 -10714 764 3551 1092 2501 4413 7200 4741 6150 -10715 3810 2503 3161 515 7459 6152 6810 4164 -10716 2503 3810 1810 3656 6152 7459 5459 7305 -10717 3462 2937 2643 1070 7111 6586 6292 4719 -10718 3795 1623 367 3113 7444 5272 4016 6762 -10719 3565 1005 2047 2967 7214 4654 5696 6616 -10720 454 2306 1534 3289 4103 5955 5183 6938 -10721 3470 509 2011 2745 7119 4158 5660 6394 -10722 1147 3176 1216 3178 4796 6825 4865 6827 -10723 101 3731 812 2435 197 7380 4461 6084 -10724 1573 3567 392 3592 5222 7216 4041 7241 -10725 3009 3546 3304 552 6658 7195 6953 4201 -10726 3665 1451 2063 3668 7314 5100 5712 7317 -10727 3709 210 3608 2446 7358 3859 7257 6095 -10728 556 3168 1172 3075 4205 6817 4821 6724 -10729 2897 3389 2712 514 6546 7038 6361 4163 -10730 3835 2413 1663 207 7484 6062 5312 3856 -10731 1304 3668 371 2893 4953 7317 4020 6542 -10732 1281 3101 871 3609 4930 6750 4520 7258 -10733 3827 1209 3621 2523 7476 4858 7270 6172 -10734 3827 2523 2117 913 7476 6172 5766 4562 -10735 3148 3177 2289 1189 6797 6826 5938 4838 -10736 1555 3619 673 3505 5204 7268 4322 7154 -10737 1187 3774 1658 3738 4836 7423 5307 7387 -10738 2771 549 2636 3492 6420 4198 6285 7141 -10739 3492 1184 3244 2771 7141 4833 6893 6420 -10740 3154 3108 2980 1332 6803 6757 6629 4981 -10741 3154 2463 1842 3108 6803 6112 5491 6757 -10742 3604 427 2052 2716 7253 4076 5701 6365 -10743 208 3261 1235 3067 3857 6910 4884 6716 -10744 3631 1067 1628 3132 7280 4716 5277 6781 -10745 3197 3530 2533 456 6846 7179 6182 4105 -10746 3708 928 2107 2481 7357 4577 5756 6130 -10747 1261 3472 544 2976 4910 7121 4193 6625 -10748 3723 31 30 2475 7372 127 126 6124 -10749 2487 462 2111 3700 6136 4111 5760 7349 -10750 3261 208 1667 2909 6910 3857 5316 6558 -10751 3834 779 2054 3090 7483 4428 5703 6739 -10752 3234 1148 2305 2973 6883 4797 5954 6622 -10753 2563 1359 3304 3546 6212 5008 6953 7195 -10754 2870 3640 2190 1282 6519 7289 5839 4931 -10755 3640 2870 1891 909 7289 6519 5540 4558 -10756 2903 300 1230 869 6552 3949 4879 4518 -10757 1004 3828 307 2449 4653 7477 3956 6098 -10758 433 3701 1533 1180 4082 7350 5182 4829 -10759 2679 308 2652 3462 6328 3957 6301 7111 -10760 1749 2528 399 3649 5398 6177 4048 7298 -10761 926 3528 773 2597 4575 7177 4422 6246 -10762 3294 3591 3095 1373 6943 7240 6744 5022 -10763 2597 773 2199 3580 6246 4422 5848 7229 -10764 616 2486 1185 3750 4265 6135 4834 7399 -10765 3784 2476 40 39 7433 6125 136 135 -10766 3471 1144 3267 1377 7120 4793 6916 5026 -10767 3845 2458 3293 413 7494 6107 6942 4062 -10768 2676 1598 1449 3647 6325 5247 5098 7296 -10769 2521 1655 467 2519 6170 5304 4116 6168 -10770 3361 569 3234 2888 7010 4218 6883 6537 -10771 3177 3148 3419 1176 6826 6797 7068 4825 -10772 2275 3056 1138 924 5924 6705 4787 4573 -10773 2750 69 68 3414 6399 165 164 7063 -10774 2919 1717 1128 3357 6568 5366 4777 7006 -10775 1319 3038 440 3621 4968 6687 4089 7270 -10776 2157 346 1323 2874 5806 3995 4972 6523 -10777 1405 3734 335 3742 5054 7383 3984 7391 -10778 1112 3468 1524 3469 4761 7117 5173 7118 -10779 707 3744 1589 3514 4356 7393 5238 7163 -10780 3681 1753 203 2623 7330 5402 3852 6272 -10781 384 2467 1658 3774 4033 6116 5307 7423 -10782 545 3249 1158 3342 4194 6898 4807 6991 -10783 2597 3580 1925 1134 6246 7229 5574 4783 -10784 3446 3430 1348 393 7095 7079 4997 4042 -10785 3759 739 3454 1231 7408 4388 7103 4880 -10786 1652 3552 1234 3844 5301 7201 4883 7493 -10787 1557 740 1348 1233 5206 4389 4997 4882 -10788 1497 3366 240 3773 5146 7015 3889 7422 -10789 3223 1175 2779 3617 6872 4824 6428 7266 -10790 3742 2524 2736 965 7391 6173 6385 4614 -10791 284 3319 1111 2906 3933 6968 4760 6555 -10792 1199 2635 1367 3543 4848 6284 5016 7192 -10793 617 3335 1210 3058 4266 6984 4859 6707 -10794 521 3369 1099 3231 4170 7018 4748 6880 -10795 3577 385 2305 3321 7226 4034 5954 6970 -10796 3321 1429 2760 3577 6970 5078 6409 7226 -10797 3544 2640 3826 555 7193 6289 7475 4204 -10798 1107 3431 1508 3432 4756 7080 5157 7081 -10799 3472 990 2759 2728 7121 4639 6408 6377 -10800 3483 1789 674 2836 7132 5438 4323 6485 -10801 2719 1633 1376 3549 6368 5282 5025 7198 -10802 2745 1116 3406 3470 6394 4765 7055 7119 -10803 1112 2540 471 3781 4761 6189 4120 7430 -10804 252 2605 1998 3616 3901 6254 5647 7265 -10805 1095 3086 1477 3503 4744 6735 5126 7152 -10806 300 2903 3663 1072 3949 6552 7312 4721 -10807 3522 1476 2542 3581 7171 5125 6191 7230 -10808 3453 1152 3143 2784 7102 4801 6792 6433 -10809 514 3355 983 2897 4163 7004 4632 6546 -10810 596 2666 1167 3599 4245 6315 4816 7248 -10811 3402 2994 3249 545 7051 6643 6898 4194 -10812 3418 3746 2984 1523 7067 7395 6633 5172 -10813 3597 3335 617 1433 7246 6984 4266 5082 -10814 3168 1243 2586 3610 6817 4892 6235 7259 -10815 2364 2160 2159 1275 6013 5809 5808 4924 -10816 3536 1736 944 2904 7185 5385 4593 6553 -10817 2919 3357 2535 310 6568 7006 6184 3959 -10818 2539 1149 1989 3796 6188 4798 5638 7445 -10819 3842 977 1527 2866 7491 4626 5176 6515 -10820 3738 1658 858 2709 7387 5307 4507 6358 -10821 2897 1242 2965 3389 6546 4891 6614 7038 -10822 2629 1096 2271 3624 6278 4745 5920 7273 -10823 3512 3511 522 1633 7161 7160 4171 5282 -10824 1281 3609 389 3495 4930 7258 4038 7144 -10825 3666 1098 3261 2909 7315 4747 6910 6558 -10826 525 3323 1108 3002 4174 6972 4757 6651 -10827 242 2718 1240 3787 3891 6367 4889 7436 -10828 212 3689 2346 2912 3861 7338 5995 6561 -10829 3795 3113 1500 1060 7444 6762 5149 4709 -10830 808 3327 1271 3241 4457 6976 4920 6890 -10831 1140 2547 832 3805 4789 6196 4481 7454 -10832 1424 3667 760 3151 5073 7316 4409 6800 -10833 1392 2968 1389 3347 5041 6617 5038 6996 -10834 3417 1173 3361 2888 7066 4822 7010 6537 -10835 1239 2810 241 3702 4888 6459 3890 7351 -10836 3365 1262 3525 3248 7014 4911 7174 6897 -10837 3365 3248 3845 1292 7014 6897 7494 4941 -10838 3686 1143 3453 2784 7335 4792 7102 6433 -10839 3273 3576 2793 1329 6922 7225 6442 4978 -10840 3392 530 2804 3417 7041 4179 6453 7066 -10841 3681 2623 1335 713 7330 6272 4984 4362 -10842 3449 3032 1509 583 7098 6681 5158 4232 -10843 3449 1402 3825 3032 7098 5051 7474 6681 -10844 1651 3801 856 2571 5300 7450 4505 6220 -10845 3483 2836 2360 867 7132 6485 6009 4516 -10846 1338 3216 603 3540 4987 6865 4252 7189 -10847 3647 725 1441 2676 7296 4374 5090 6325 -10848 1127 3363 1285 3642 4776 7012 4934 7291 -10849 271 571 663 1213 3920 4220 4312 4862 -10850 3002 1108 3511 3512 6651 4757 7160 7161 -10851 1351 3361 1173 3360 5000 7010 4822 7009 -10852 1372 3707 1437 3658 5021 7356 5086 7307 -10853 3130 1335 2226 3639 6779 4984 5875 7288 -10854 3572 3036 414 1827 7221 6685 4063 5476 -10855 3036 3572 2486 895 6685 7221 6135 4544 -10856 2692 362 1637 3783 6341 4011 5286 7432 -10857 3783 3798 2242 2692 7432 7447 5891 6341 -10858 695 2208 2110 2233 4344 5857 5759 5882 -10859 2595 632 1623 3795 6244 4281 5272 7444 -10860 3132 1512 3622 3631 6781 5161 7271 7280 -10861 1094 2999 323 3000 4743 6648 3972 6649 -10862 3015 3387 1778 1009 6664 7036 5427 4658 -10863 3338 3233 1345 1104 6987 6882 4994 4753 -10864 3233 3338 2293 1352 6882 6987 5942 5001 -10865 1132 3393 501 3013 4781 7042 4150 6662 -10866 2699 3768 2513 853 6348 7417 6162 4502 -10867 3506 1321 3123 3306 7155 4970 6772 6955 -10868 3732 2648 3011 372 7381 6297 6660 4021 -10869 1765 3333 438 3126 5414 6982 4087 6775 -10870 3721 2948 2874 1323 7370 6597 6523 4972 -10871 3120 86 85 3396 6769 182 181 7045 -10872 3733 357 2490 2673 7382 4006 6139 6322 -10873 3817 604 1403 2855 7466 4253 5052 6504 -10874 2565 1198 443 2732 6214 4847 4092 6381 -10875 3103 1246 1247 649 6752 4895 4896 4298 -10876 999 2493 1470 3139 4648 6142 5119 6788 -10877 2733 2151 1441 3814 6382 5800 5090 7463 -10878 3637 2749 22 21 7286 6398 118 117 -10879 3694 3826 2640 1478 7343 7475 6289 5127 -10880 1414 3672 1157 3452 5063 7321 4806 7101 -10881 3595 1237 2544 2960 7244 4886 6193 6609 -10882 2960 977 3024 3595 6609 4626 6673 7244 -10883 1090 3504 1450 3202 4739 7153 5099 6851 -10884 1567 3570 1250 3766 5216 7219 4899 7415 -10885 3481 3069 3669 1186 7130 6718 7318 4835 -10886 598 2932 1095 3503 4247 6581 4744 7152 -10887 340 2785 1067 3631 3989 6434 4716 7280 -10888 3830 2707 1707 224 7479 6356 5356 3873 -10889 3830 1240 2718 2707 7479 4889 6367 6356 -10890 1246 2211 3135 2212 4895 5860 6784 5861 -10891 562 2824 2353 2990 4211 6473 6002 6639 -10892 2997 1055 2758 3714 6646 4704 6407 7363 -10893 3496 1944 1119 1678 7145 5593 4768 5327 -10894 3798 615 3735 2726 7447 4264 7384 6375 -10895 3482 1011 2483 1223 7131 4660 6132 4872 -10896 3120 3396 1889 1192 6769 7045 5538 4841 -10897 283 2649 1083 3840 3932 6298 4732 7489 -10898 1372 2950 968 3532 5021 6599 4617 7181 -10899 3768 2699 243 1363 7417 6348 3892 5012 -10900 1359 3537 1113 3304 5008 7186 4762 6953 -10901 3824 3356 2532 473 7473 7005 6181 4122 -10902 3306 349 2689 3506 6955 3998 6338 7155 -10903 3658 2799 3640 909 7307 6448 7289 4558 -10904 1367 3444 573 3447 5016 7093 4222 7096 -10905 3536 3021 3481 1186 7185 6670 7130 4835 -10906 1307 3605 361 3346 4956 7254 4010 6995 -10907 1193 3494 1416 3493 4842 7143 5065 7142 -10908 3672 341 2795 1012 7321 3990 6444 4661 -10909 2772 3692 2919 1507 6421 7341 6568 5156 -10910 3442 3334 2421 1362 7091 6983 6070 5011 -10911 3559 555 3826 2901 7208 4204 7475 6550 -10912 3838 917 3479 2674 7487 4566 7128 6323 -10913 3686 2784 3143 572 7335 6433 6792 4221 -10914 563 3490 1187 3342 4212 7139 4836 6991 -10915 3634 1944 1094 476 7283 5593 4743 4125 -10916 3213 1361 2868 3450 6862 5010 6517 7099 -10917 3213 3450 2254 579 6862 7099 5903 4228 -10918 3416 3565 2334 1236 7065 7214 5983 4885 -10919 1540 3484 1259 3846 5189 7133 4908 7495 -10920 1103 3049 665 3489 4752 6698 4314 7138 -10921 3372 3836 1649 293 7021 7485 5298 3942 -10922 3836 3372 3735 1484 7485 7021 7384 5133 -10923 3832 1211 3604 2716 7481 4860 7253 6365 -10924 3832 2716 3283 888 7481 6365 6932 4537 -10925 3664 3033 1825 211 7313 6682 5474 3860 -10926 3033 3664 1795 1267 6682 7313 5444 4916 -10927 3069 3481 3286 539 6718 7130 6935 4188 -10928 3690 1475 431 2820 7339 5124 4080 6469 -10929 3621 2884 2814 1319 7270 6533 6463 4968 -10930 1063 2842 760 3667 4712 6491 4409 7316 -10931 1395 2813 886 2529 5044 6462 4535 6178 -10932 1146 3085 575 3751 4795 6734 4224 7400 -10933 2795 3756 822 1974 6444 7405 4471 5623 -10934 2871 3849 1342 2108 6520 7498 4991 5757 -10935 1556 3117 779 3834 5205 6766 4428 7483 -10936 549 2771 1051 3762 4198 6420 4700 7411 -10937 597 2981 1243 3671 4246 6630 4892 7320 -10938 920 3706 2123 2961 4569 7355 5772 6610 -10939 564 2968 1392 3569 4213 6617 5041 7218 -10940 1430 3711 1700 2832 5079 7360 5349 6481 -10941 3021 3536 2904 574 6670 7185 6553 4223 -10942 297 3482 1091 3097 3946 7131 4740 6746 -10943 3443 387 2856 3187 7092 4036 6505 6836 -10944 3443 3187 3188 1228 7092 6836 6837 4877 -10945 3173 3455 3086 1095 6822 7104 6735 4744 -10946 3721 1323 2927 3194 7370 4972 6576 6843 -10947 3421 3423 3759 591 7070 7072 7408 4240 -10948 3783 1637 615 3798 7432 5286 4264 7447 -10949 3664 3076 937 1795 7313 6725 4586 5444 -10950 1419 3251 630 3841 5068 6900 4279 7490 -10951 1167 2990 1300 3599 4816 6639 4949 7248 -10952 3722 2859 3338 1104 7371 6508 6987 4753 -10953 591 3420 1382 3421 4240 7069 5031 7070 -10954 1574 3229 358 3753 5223 6878 4007 7402 -10955 2941 1257 3696 3761 6590 4906 7345 7410 -10956 3561 3560 286 1572 7210 7209 3935 5221 -10957 3561 1166 1631 3560 7210 4815 5280 7209 -10958 3422 1233 3423 3421 7071 4882 7072 7070 -10959 1035 3079 1252 3626 4684 6728 4901 7275 -10960 1263 3404 1277 3320 4912 7053 4926 6969 -10961 3550 3170 654 1579 7199 6819 4303 5228 -10962 3605 3170 3550 361 7254 6819 7199 4010 -10963 3170 3605 1307 1578 6819 7254 4956 5227 -10964 3070 259 3095 3591 6719 3908 6744 7240 -10965 1402 3449 1320 3596 5051 7098 4969 7245 -10966 544 3661 1165 2976 4193 7310 4814 6625 -10967 1283 3601 527 3250 4932 7250 4176 6899 -10968 3672 1012 3004 1157 7321 4661 6653 4806 -10969 1397 3675 509 3470 5046 7324 4158 7119 -10970 1249 3739 205 2979 4898 7388 3854 6628 -10971 1284 3285 1285 3363 4933 6934 4934 7012 -10972 1469 3574 1265 3652 5118 7223 4914 7301 -10973 2599 328 2569 2598 6248 3977 6218 6247 -10974 3773 1337 2402 3526 7422 4986 6051 7175 -10975 3773 3526 2605 1497 7422 7175 6254 5146 -10976 3760 2907 1911 1159 7409 6556 5560 4808 -10977 556 3075 2275 3763 4205 6724 5924 7412 -10978 1070 2978 499 3697 4719 6627 4148 7346 -10979 3334 3442 2043 3204 6983 7091 5692 6853 -10980 1060 3781 471 2898 4709 7430 4120 6547 -10981 1309 3653 1310 3829 4958 7302 4959 7478 -10982 3460 3576 3273 1279 7109 7225 6922 4928 -10983 1126 3524 398 3209 4775 7173 4047 6858 -10984 3230 1334 3614 3718 6879 4983 7263 7367 -10985 3849 2871 1513 255 7498 6520 5162 3904 -10986 1133 3741 1508 2959 4782 7390 5157 6608 -10987 3665 3220 3808 630 7314 6869 7457 4279 -10988 3220 3665 3668 1304 6869 7314 7317 4953 -10989 3824 473 2757 1115 7473 4122 6406 4764 -10990 1495 3764 556 3763 5144 7413 4205 7412 -10991 2901 3826 3694 1129 6550 7475 7343 4778 -10992 1257 697 1506 3696 4906 4346 5155 7345 -10993 620 3713 1393 3618 4269 7362 5042 7267 -10994 3664 211 1462 3076 7313 3860 5111 6725 -10995 3016 1058 3230 3718 6665 4707 6879 7367 -10996 432 3056 1129 3694 4081 6705 4778 7343 -10997 1415 3116 955 2661 5064 6765 4604 6310 -10998 3168 3610 3242 1172 6817 7259 6891 4821 -10999 3653 3559 3242 1310 7302 7208 6891 4959 -11000 1338 3598 305 3359 4987 7247 3954 7008 -11001 290 2102 388 493 3939 5751 4037 4142 -11002 3260 1879 444 536 6909 5528 4093 4185 -11003 3444 1367 2635 3612 7093 5016 6284 7261 -11004 3653 1309 2299 3544 7302 4958 5948 7193 -11005 1229 3182 348 3183 4878 6831 3997 6832 -11006 1240 3064 1293 3787 4889 6713 4942 7436 -11007 1715 3340 1066 3541 5364 6989 4715 7190 -11008 3802 3292 231 1437 7451 6941 3880 5086 -11009 205 3739 1798 3124 3854 7388 5447 6773 -11010 1432 3024 977 3842 5081 6673 4626 7491 -11011 1937 2230 443 1938 5586 5879 4092 5587 -11012 1219 3531 592 3364 4868 7180 4241 7013 -11013 3846 3165 2738 351 7495 6814 6387 4000 -11014 3294 1225 3070 3591 6943 4874 6719 7240 -11015 1885 3708 1019 3197 5534 7357 4668 6846 -11016 3418 95 94 3767 7067 191 190 7416 -11017 1208 3195 535 3743 4857 6844 4184 7392 -11018 1540 3309 655 3758 5189 6958 4304 7407 -11019 1082 2987 521 3231 4731 6636 4170 6880 -11020 630 3251 1451 3665 4279 6900 5100 7314 -11021 3194 1452 3807 3721 6843 5101 7456 7370 -11022 1382 3420 1381 3539 5031 7069 5030 7188 -11023 3335 3597 2136 1210 6984 7246 5785 4859 -11024 1197 3643 46 3266 4846 7292 142 6915 -11025 3834 3090 2573 1130 7483 6739 6222 4779 -11026 1392 3347 565 3606 5041 6996 4214 7255 -11027 3565 3416 2708 1005 7214 7065 6357 4654 -11028 1243 3764 1495 3671 4892 7413 5144 7320 -11029 1243 3168 556 3764 4892 6817 4205 7413 -11030 1300 3436 1347 3599 4949 7085 4996 7248 -11031 3131 213 3211 961 6780 3862 6860 4610 -11032 1414 3284 341 3672 5063 6933 3990 7321 -11033 2601 861 526 2600 6250 4510 4175 6249 -11034 2737 1121 1122 202 6386 4770 4771 3851 -11035 3460 457 2793 3576 7109 4106 6442 7225 -11036 1179 3535 1605 3516 4828 7184 5254 7165 -11037 1260 3618 1393 3384 4909 7267 5042 7033 -11038 3785 602 1474 1514 7434 4251 5123 5163 -11039 3785 1325 2336 602 7434 4974 5985 4251 -11040 1138 3056 432 2863 4787 6705 4081 6512 -11041 3583 588 2719 3549 7232 4237 6368 7198 -11042 2733 1879 3260 1071 6382 5528 6909 4720 -11043 281 3247 1801 3748 3930 6896 5450 7397 -11044 3846 1259 3160 3165 7495 4908 6809 6814 -11045 3356 3824 1115 1714 7005 7473 4764 5363 -11046 400 1244 1245 3103 4049 4893 4894 6752 -11047 3581 939 3081 3184 7230 4588 6730 6833 -11048 3625 3583 3549 1376 7274 7232 7198 5025 -11049 1393 3713 1427 3607 5042 7362 5076 7256 -11050 1338 3540 1383 3598 4987 7189 5032 7247 -11051 1187 3738 545 3342 4836 7387 4194 6991 -11052 2927 1542 1047 2926 6576 5191 4696 6575 -11053 3372 1221 2726 3735 7021 4870 6375 7384 -11054 3260 536 3198 3199 6909 4185 6847 6848 -11055 1336 3282 1309 3829 4985 6931 4958 7478 -11056 3583 3625 3058 1377 7232 7274 6707 5026 -11057 3544 555 3559 3653 7193 4204 7208 7302 -11058 823 1887 3663 359 4472 5536 7312 4008 -11059 798 3463 1790 3736 4447 7112 5439 7385 -11060 3767 1296 3746 3418 7416 4945 7395 7067 -11061 1331 3571 1425 3678 4980 7220 5074 7327 -11062 1074 3093 1026 3094 4723 6742 4675 6743 -11063 610 3678 1425 3818 4259 7327 5074 7467 -11064 1491 3100 1208 3439 5140 6749 4857 7088 -11065 1567 3743 535 3570 5216 7392 4184 7219 -11066 3703 1671 3175 3728 7352 5320 6824 7377 -11067 3482 297 3193 1011 7131 3946 6842 4660 -11068 739 3759 3423 1232 4388 7408 7072 4881 -11069 3740 3704 1732 612 7389 7353 5381 4261 -11070 3728 1256 2145 3703 7377 4905 5794 7352 -11071 3740 1411 2243 3704 7389 5060 5892 7353 -11072 1422 3716 1411 3740 5071 7365 5060 7389 -11073 1681 3705 283 3840 5330 7354 3932 7489 -11074 1437 3707 245 3802 5086 7356 3894 7451 -11075 3297 2018 377 1417 6946 5667 4026 5066 -11076 570 3585 1343 3843 4219 7234 4992 7492 -11077 344 1980 621 2263 3993 5629 4270 5912 -11078 3422 3628 1979 288 7071 7277 5628 3937 -11079 1425 3819 1464 3818 5074 7468 5113 7467 -11080 3808 3831 2414 1558 7457 7480 6063 5207 -11081 3831 3808 3220 1371 7480 7457 6869 5020 -11082 3428 1174 3426 3427 7077 4823 7075 7076 -11083 2737 202 1938 631 6386 3851 5587 4280 -11084 2364 1784 1245 1244 6013 5433 4894 4893 -11085 3797 2520 2519 467 7446 6169 6168 4116 -11086 2287 3558 3307 270 5936 7207 6956 3919 -11087 3691 698 2876 2875 7340 4347 6525 6524 -11088 2287 571 3167 3558 5936 4220 6816 7207 -11089 586 1270 3184 3081 4235 4919 6833 6730 -11090 3198 299 2894 3199 6847 3948 6543 6848 -11091 1270 3183 348 3184 4919 6832 3997 6833 -11092 202 1122 536 444 3851 4771 4185 4093 -11093 202 444 1937 1938 3851 4093 5586 5587 -11094 279 1333 3084 1205 3928 4982 6733 4854 -11095 279 1205 2340 2380 3928 4854 5989 6029 -11096 869 298 590 359 4518 3947 4239 4008 -11097 1079 298 869 567 4728 3947 4518 4216 -11098 590 298 1391 1499 4239 3947 5040 5148 -11099 300 400 3103 649 3949 4049 6752 4298 -11100 649 426 1230 300 4298 4075 4879 3949 -11101 1196 622 3198 306 4845 4271 6847 3955 -11102 1538 2876 2877 315 5187 6525 6526 3964 -11103 1206 316 1653 1069 4855 3965 5302 4718 -11104 526 3662 1204 329 4175 7311 4853 3978 -11105 2848 748 526 329 6497 4397 4175 3978 -11106 344 567 395 623 3993 4216 4044 4272 -11107 344 767 1079 567 3993 4416 4728 4216 -11108 1980 344 623 622 5629 3993 4272 4271 -11109 767 344 2263 766 4416 3993 5912 4415 -11110 1542 346 963 2931 5191 3995 4612 6580 -11111 2157 2158 963 346 5806 5807 4612 3995 -11112 1448 360 1315 1248 5097 4009 4964 4897 -11113 2049 366 2004 1647 5698 4015 5653 5296 -11114 1937 366 1380 2589 5586 4015 5029 6238 -11115 1195 377 2018 1163 4844 4026 5667 4812 -11116 2232 388 2102 403 5881 4037 5751 4052 -11117 1720 393 3081 939 5369 4042 6730 4588 -11118 695 403 2390 1191 4344 4052 6039 4840 -11119 403 695 2233 2232 4052 4344 5882 5881 -11120 2390 403 2609 876 6039 4052 6258 4525 -11121 2877 404 270 726 6526 4053 3919 4375 -11122 2609 404 2878 876 6258 4053 6527 4525 -11123 2315 684 1554 406 5964 4333 5203 4055 -11124 1479 984 3169 406 5128 4633 6818 4055 -11125 2876 1538 3803 422 6525 5187 7452 4071 -11126 426 649 1247 1207 4075 4298 4896 4856 -11127 906 434 466 1138 4555 4083 4115 4787 -11128 434 906 1408 3265 4083 4555 5057 6914 -11129 434 1646 3274 2131 4083 5295 6923 5780 -11130 2131 1647 1533 434 5780 5296 5182 4083 -11131 442 2230 1937 2589 4091 5879 5586 6238 -11132 1198 631 1938 443 4847 4280 5587 4092 -11133 2004 444 1879 1180 5653 4093 5528 4829 -11134 1521 453 3317 3303 5170 4102 6966 6952 -11135 1626 1196 3317 453 5275 4845 6966 4102 -11136 1448 1072 3663 465 5097 4721 7312 4114 -11137 466 529 740 1557 4115 4178 4389 5206 -11138 466 3701 433 529 4115 7350 4082 4178 -11139 861 2601 3797 467 4510 6250 7446 4116 -11140 1121 476 1094 477 4770 4125 4743 4126 -11141 1120 476 1121 1896 4769 4125 4770 5545 -11142 1120 2286 3634 476 4769 5935 7283 4125 -11143 2931 963 306 477 6580 4612 3955 4126 -11144 1214 478 2737 631 4863 4127 6386 4280 -11145 1255 493 388 976 4904 4142 4037 4625 -11146 1332 524 1333 3154 4981 4173 4982 6803 -11147 861 1206 3662 526 4510 4855 7311 4175 -11148 1910 533 2626 806 5559 4182 6275 4455 -11149 533 1538 315 2626 4182 5187 3964 6275 -11150 3606 565 1145 1100 7255 4214 4794 4749 -11151 565 1390 1079 1145 4214 5039 4728 4794 -11152 566 1145 1079 767 4215 4794 4728 4416 -11153 767 1510 3752 566 4416 5159 7401 4215 -11154 2143 1100 1145 566 5792 4749 4794 4215 -11155 586 585 3183 1270 4235 4234 6832 4919 -11156 3776 589 3564 1439 7425 4238 7213 5088 -11157 1950 823 359 590 5599 4472 4008 4239 -11158 621 1791 1302 2263 4270 5440 4951 5912 -11159 1196 1626 1980 622 4845 5275 5629 4271 -11160 880 626 388 2232 4529 4275 4037 5881 -11161 626 880 1989 2537 4275 4529 5638 6186 -11162 3208 976 388 626 6857 4625 4037 4275 -11163 3332 806 2626 684 6981 4455 6275 4333 -11164 3332 684 2315 1313 6981 4333 5964 4962 -11165 896 698 3691 1345 4545 4347 7340 4994 -11166 748 2848 3046 1751 4397 6497 6695 5400 -11167 806 3332 1314 1930 4455 6981 4963 5579 -11168 1191 1352 2293 1190 4840 5001 5942 4839 -11169 1353 876 698 896 5002 4525 4347 4545 -11170 876 1353 3017 2390 4525 5002 6666 6039 -11171 896 2593 3017 1353 4545 6242 6666 5002 -11172 3528 936 325 1109 7177 4585 3974 4758 -11173 2554 3533 325 936 6203 7182 3974 4585 -11174 1720 939 3581 2542 5369 4588 7230 6191 -11175 1255 975 2376 2725 4904 4624 6025 6374 -11176 976 2617 975 1255 4625 6266 4624 4904 -11177 3208 2182 2617 976 6857 5831 6266 4625 -11178 3308 1016 1458 1366 6957 4665 5107 5015 -11179 1244 1072 1448 1248 4893 4721 5097 4897 -11180 1174 3428 475 1896 4823 7077 4124 5545 -11181 2208 1190 3517 1611 5857 4839 7166 5260 -11182 1204 1625 1624 1202 4853 5274 5273 4851 -11183 3662 1206 1069 1207 7311 4855 4718 4856 -11184 1207 2340 1205 3662 4856 5989 4854 7311 -11185 3423 1233 1348 1232 7072 4882 4997 4881 -11186 2211 1246 3103 1245 5860 4895 6752 4894 -11187 1245 1784 1783 1274 4894 5433 5432 4923 -11188 2380 2340 1207 1247 6029 5989 4856 4896 -11189 1248 1315 3547 2160 4897 4964 7196 5809 -11190 1417 2158 1416 2905 5066 5807 5065 6554 -11191 1446 2995 465 2255 5095 6644 4114 5904 -11192 1626 1520 3630 2766 5275 5169 7279 6415 -11193 1788 1646 434 3265 5437 5295 4083 6914 -11194 1 104 1553 9 5 200 5202 105 +6159 4 76 172 8 +6160 76 77 173 172 +6161 77 78 174 173 +6162 78 79 175 174 +6163 79 80 176 175 +6164 80 81 177 176 +6165 81 82 178 177 +6166 82 83 179 178 +6167 83 84 180 179 +6168 84 85 181 180 +6169 85 86 182 181 +6170 86 87 183 182 +6171 87 88 184 183 +6172 88 89 185 184 +6173 89 90 186 185 +6174 90 91 187 186 +6175 91 92 188 187 +6176 92 93 189 188 +6177 93 94 190 189 +6178 94 95 191 190 +6179 95 96 192 191 +6180 96 97 193 192 +6181 97 98 194 193 +6182 98 99 195 194 +6183 99 100 196 195 +6184 100 101 197 196 +6185 101 102 198 197 +6186 102 103 199 198 +6187 103 104 200 199 +6188 104 1 5 200 +2 26 3 6088 +6189 7498 9064 6470 8711 +6190 7801 10360 6491 9943 +6191 6250 8910 7124 8243 +6192 8903 6561 10845 7868 +6193 8789 8137 11681 7038 +6194 8677 6350 11437 8083 +6195 7295 8725 11629 9388 +6196 8275 6895 10916 8968 +6197 7306 10801 8691 8398 +6198 7386 9074 7053 8482 +6199 6332 9431 7979 11102 +6200 7525 7913 11193 8460 +6201 9999 8406 11014 6653 +6202 6684 8963 7512 8384 +6203 9848 8858 10050 7467 +6204 11256 8322 11714 7859 +6205 7323 9465 7789 9779 +6206 7577 10544 11549 8477 +6207 8789 6482 9013 8137 +6208 9711 10569 8482 6356 +6209 10583 6884 10858 7985 +6210 11574 7869 10031 7316 +6211 10928 8704 7310 11410 +6212 6632 11702 8447 8263 +6213 11979 7875 10056 7301 +6214 10084 10550 9127 6612 +6215 7629 8544 6387 10332 +6216 7801 10416 6719 9650 +6217 8278 10774 8302 6468 +6218 9932 7512 8963 10453 +6219 8138 7689 11504 8995 +6220 9598 7884 9680 8932 +6221 6881 10712 7896 9992 +6222 11671 6957 8873 7975 +6223 8538 8568 8381 7146 +6224 6260 8058 11301 8558 +6225 6421 11599 7898 8987 +6226 6244 9183 7324 8431 +6227 8237 9563 6909 6295 +6228 8197 12144 8335 6300 +6229 11545 9013 7955 11398 +6230 8700 10245 8929 6480 +6231 9218 9390 8521 6392 +6232 8153 10679 8171 6334 +6233 7372 10553 6853 8816 +6234 8730 8148 8626 6330 +6235 10706 7903 9905 7543 +6236 9348 8125 11466 6258 +6237 7746 6851 8175 10841 +6238 11395 8244 8445 6840 +6239 12202 6445 11300 7904 +6240 11916 7384 9905 7903 +6241 10583 8021 10983 6884 +6242 6988 8829 10591 8650 +6243 8476 6533 10936 8705 +6244 8447 6903 9945 8263 +6245 11487 8080 8427 6899 +6246 7313 8831 6975 8633 +6247 8873 6721 10935 7975 +6248 6721 9167 7487 8758 +6249 10904 6304 8617 8162 +6250 9307 7910 10236 6727 +6251 7819 8327 8290 10971 +6252 6312 10134 11457 8495 +6253 7030 8765 7501 9250 +6254 9234 7220 8449 9711 +6255 11523 7961 8991 6956 +6256 12259 8613 8673 6848 +6257 10439 7986 10774 6905 +6258 8139 11159 147 148 +6259 8700 6480 8735 10063 +6260 7498 9486 6984 9064 +6261 8977 7971 11870 7048 +6262 9413 7915 11600 7323 +6263 7258 9778 11517 8498 +6264 8004 11704 6550 11640 +6265 11485 11844 8727 6980 +6266 7997 9934 7186 11364 +6267 6876 11274 8362 11409 +6268 8230 11978 8079 11738 +6269 9317 7103 10012 7924 +6270 8635 7053 9051 9603 +6271 6937 10299 7563 8657 +6272 7347 8016 8764 11911 +6273 8228 8820 6333 12180 +6274 6761 11056 7979 9763 +6275 7153 9443 11121 9192 +6276 7517 8283 6811 10251 +6277 7996 6493 7997 11364 +6278 9144 7067 9534 10719 +6279 9972 7751 11210 6338 +6280 7601 9738 7912 10972 +6281 10310 7988 10819 6650 +6282 11904 9310 7612 10305 +6283 8818 8201 10358 6251 +6284 9934 7997 10900 6660 +6285 10692 8626 10923 6858 +6286 8181 11892 8253 6546 +6287 7798 8153 6824 11446 +6288 9752 10888 9136 7320 +6289 6389 10167 7654 8572 +6290 7777 8601 6404 10521 +6291 10257 6882 8623 8147 +6292 10663 7867 11503 8418 +6293 11735 6969 10063 8689 +6294 11293 6828 11670 10130 +6295 7955 10035 7109 10014 +6296 8445 8244 8684 7006 +6297 8683 11470 7925 10575 +6298 7864 9602 6823 9971 +6299 11301 8058 11007 6776 +6300 10414 11558 10418 7415 +6301 10655 6895 9543 8099 +6302 6702 10271 7675 8555 +6303 7052 9473 7549 8844 +6304 9536 10135 8752 6521 +6305 6588 8449 7220 9121 +6306 7822 6990 8522 11614 +6307 6759 9065 8052 11990 +6308 7377 10386 7824 11195 +6309 11741 8053 10786 7009 +6310 9191 9990 8533 6646 +6311 9823 8002 11129 6913 +6312 8197 7012 8525 8524 +6313 8056 8511 6919 11554 +6314 8972 9111 8479 7161 +6315 6412 8578 7850 10831 +6316 10262 7404 9903 8084 +6317 10382 8084 9903 6693 +6318 11075 6523 10890 9592 +6319 12169 7969 9943 6491 +6320 8223 9026 7147 11987 +6321 11515 8492 12258 8059 +6322 10275 6671 10917 8047 +6323 8497 7505 10746 10093 +6324 10501 8405 11135 7592 +6325 9013 6482 10035 7955 +6326 7173 8721 6372 8627 +6327 8659 6489 9963 8314 +6328 7019 9368 7450 8906 +6329 7435 8937 7102 8889 +6330 10348 10859 8045 6968 +6331 8622 8118 9870 6906 +6332 7488 9167 6721 8873 +6333 8991 6450 10795 8020 +6334 6853 10689 11608 8816 +6335 9642 10383 8905 6351 +6336 8554 7119 9674 8121 +6337 8131 6829 8023 11266 +6338 10030 8724 8514 7141 +6339 10808 8063 11447 7146 +6340 11969 7974 10231 6250 +6341 9183 6244 10229 7970 +6342 6988 8428 6306 8429 +6343 9955 8284 10233 6461 +6344 7647 9855 6844 9082 +6345 8977 7244 9688 7971 +6346 10819 7988 9469 7371 +6347 7467 10745 6520 9848 +6348 10103 7970 10229 7172 +6349 10650 7475 10302 8176 +6350 7779 10354 6411 8882 +6351 10975 8146 9006 7008 +6352 7199 8592 6932 8591 +6353 10698 7977 12050 7509 +6354 7885 12098 6747 9003 +6355 7508 9866 7170 10186 +6356 6820 9152 7026 8786 +6357 6896 9785 7464 9591 +6358 11613 7002 9943 7969 +6359 7531 8453 7421 9596 +6360 7561 11666 8971 8477 +6361 10770 10435 6924 8761 +6362 7106 8787 6540 8770 +6363 8025 10869 6737 9473 +6364 9431 6850 9763 7979 +6365 10136 6674 10834 8040 +6366 11668 7399 11139 8098 +6367 11112 6943 8736 11705 +6368 8089 9962 8219 6920 +6369 9900 6852 11218 7822 +6370 8567 6716 10803 7929 +6371 6825 10256 7775 10461 +6372 8537 10593 9422 6852 +6373 7169 9696 7772 9695 +6374 12135 8484 8657 7886 +6375 6679 8785 7734 10591 +6376 6454 8996 7544 9347 +6377 10766 6479 9289 7790 +6378 7747 11005 7915 9413 +6379 6772 9018 8034 10862 +6380 7062 8465 7061 8753 +6381 10081 8003 9518 7045 +6382 11741 8364 12006 8053 +6383 11392 10112 8008 11406 +6384 10310 7288 10161 7988 +6385 8607 6846 11496 8170 +6386 9850 7521 7895 6264 +6387 8293 6485 8427 8080 +6388 6642 9590 7623 9086 +6389 8610 11644 7582 10261 +6390 9109 6399 9680 8251 +6391 8507 7216 9110 8508 +6392 7384 8686 6836 9905 +6393 6860 8882 7915 11005 +6394 8113 8114 6760 7139 +6395 9865 6265 9668 11145 +6396 10486 8229 6869 8297 +6397 190 8127 10049 189 +6398 7053 8635 6356 8482 +6399 6472 8981 7527 8718 +6400 11308 7999 10217 7174 +6401 7631 10919 7025 8248 +6402 8775 8939 8604 7049 +6403 9366 8381 7298 11622 +6404 7373 8161 9200 11992 +6405 6950 9731 6309 8649 +6406 11200 8155 11822 7702 +6407 7858 8550 6456 9335 +6408 9815 7683 11633 8976 +6409 12042 7909 6809 10749 +6410 7138 8775 7049 8787 +6411 9185 8396 8681 7033 +6412 10011 6254 8631 10513 +6413 12006 6971 11823 8416 +6414 7577 8726 6718 10362 +6415 7829 10552 6408 9625 +6416 11483 153 154 10655 +6417 11501 11290 8142 9247 +6418 8342 6548 12021 8287 +6419 10217 7999 10469 6732 +6420 11978 6451 10535 8079 +6421 6828 11969 7889 10027 +6422 7716 8500 6752 10218 +6423 9537 6607 8743 9891 +6424 9409 10084 8759 7223 +6425 9199 134 135 10025 +6426 7420 8808 7134 9682 +6427 8239 6802 10839 8238 +6428 7639 8576 6688 10274 +6429 10038 8270 8765 6758 +6430 12150 7164 9963 8002 +6431 8901 6307 8372 10645 +6432 10485 8003 11956 7452 +6433 6842 8012 11097 8115 +6434 179 8409 10979 178 +6435 9138 7230 11892 9168 +6436 9767 8011 11540 6714 +6437 7356 9336 7121 9448 +6438 8438 6273 9742 10086 +6439 8219 9732 11284 8667 +6440 8836 8037 12189 6797 +6441 8933 12060 8564 6427 +6442 10143 7556 10471 8444 +6443 8644 7205 11039 9076 +6444 9518 6323 9122 8090 +6445 11272 8012 11544 8441 +6446 7064 8643 7708 10831 +6447 8483 7048 8640 8476 +6448 6652 8123 7140 9888 +6449 9309 6557 8639 9753 +6450 10098 10344 8884 7507 +6451 6829 10659 8001 11158 +6452 8152 6790 11720 8781 +6453 8618 6482 8789 10568 +6454 8610 10032 8132 7193 +6455 11342 6886 9373 8111 +6456 10485 7452 10722 8487 +6457 8568 6563 12152 8381 +6458 9746 6568 8581 7197 +6459 6467 10841 8175 8862 +6460 11978 8230 8909 9916 +6461 6395 10684 12075 8291 +6462 6266 9189 7918 10515 +6463 8376 6997 11810 8470 +6464 6659 10458 8075 12114 +6465 6779 10377 8367 10555 +6466 9680 8366 9727 8932 +6467 8455 10060 8854 6899 +6468 8030 11277 8325 7060 +6469 126 11348 7973 9312 +6470 8942 8108 9113 6958 +6471 8714 6459 10641 8178 +6472 9767 7104 10026 8011 +6473 8726 7577 8477 10339 +6474 9042 6623 8808 8222 +6475 10026 6474 10090 8011 +6476 10582 8559 8882 6860 +6477 9227 7359 9826 8411 +6478 9797 6439 8286 7619 +6479 9331 7365 8548 9742 +6480 8753 7061 12001 8631 +6481 9353 8035 12205 6817 +6482 8208 8990 8762 7073 +6483 9956 10013 8972 7469 +6484 9089 7748 11228 8141 +6485 6914 9894 8171 11898 +6486 11316 6983 9384 8839 +6487 8155 6345 8483 11578 +6488 7812 10176 6699 9975 +6489 8312 8225 11649 6397 +6490 8495 8226 11645 6312 +6491 11027 8104 10033 6804 +6492 7203 9572 6273 8438 +6493 8197 8524 7013 12144 +6494 8083 11588 6964 8677 +6495 8714 10273 6785 8149 +6496 11910 8277 7085 8276 +6497 6793 9733 7662 9257 +6498 7012 8197 6300 9612 +6499 9999 7584 11340 8406 +6500 8712 7082 10567 8196 +6501 6774 10763 8151 8893 +6502 8287 7015 11996 8342 +6503 10005 6773 9880 8246 +6504 8118 8622 9097 7103 +6505 11592 9011 11114 6812 +6506 7132 9173 6511 9582 +6507 7080 9861 11356 9394 +6508 7946 10954 6756 11173 +6509 7082 10496 7879 10567 +6510 9862 8528 9577 6285 +6511 10007 8032 10592 7209 +6512 10513 6996 9571 8457 +6513 193 194 11150 8463 +6514 8267 12046 7052 9585 +6515 12033 11085 6713 9474 +6516 8436 9784 7008 11762 +6517 9109 7477 11710 9014 +6518 9302 7068 10518 8060 +6519 8917 6993 8545 9575 +6520 6822 9994 7337 8316 +6521 6769 8663 10982 10174 +6522 6424 8144 7611 11046 +6523 10136 8040 10364 7395 +6524 7482 9137 8009 11188 +6525 8622 6906 12005 8308 +6526 9348 7114 9621 8125 +6527 8221 8719 9022 7232 +6528 7690 8942 6958 8463 +6529 9922 8384 9457 7047 +6530 8509 11648 6824 11411 +6531 10771 8999 10268 6382 +6532 8089 11043 7023 9202 +6533 6926 8638 6528 9148 +6534 11215 6436 10256 8134 +6535 6838 11580 8024 8621 +6536 9109 8251 9359 7083 +6537 7604 9976 7392 8842 +6538 8463 8801 192 193 +6539 7148 8897 6508 8852 +6540 9197 7280 8778 9349 +6541 10935 9859 11671 7975 +6542 10275 8047 11954 7406 +6543 8844 10350 10056 6266 +6544 7162 8912 7098 8625 +6545 8285 10456 10409 6870 +6546 11466 8125 11344 8599 +6547 7876 10473 6696 10014 +6548 12207 10122 7855 8637 +6549 8049 8772 6964 11588 +6550 7027 11019 8368 11052 +6551 8215 7663 11642 8216 +6552 9826 6286 12078 8328 +6553 9917 7400 9712 8797 +6554 8711 6470 10788 8259 +6555 9631 6251 10358 8048 +6556 6832 9165 7539 11338 +6557 11062 6985 10087 8173 +6558 11676 8874 8145 6795 +6559 8840 9925 9644 7154 +6560 8716 7087 11852 8394 +6561 7444 9589 6371 9068 +6562 11645 8226 11584 7814 +6563 10518 6426 11181 8060 +6564 8575 11610 7825 6275 +6565 10716 8352 9754 6290 +6566 10626 8131 11945 6315 +6567 7456 9160 6385 10648 +6568 10032 8610 10261 7703 +6569 8554 8050 10166 6415 +6570 8417 8670 11741 7009 +6571 8870 7208 10474 11204 +6572 8993 8085 10707 7576 +6573 6557 8916 7168 8639 +6574 10717 8054 10145 6552 +6575 11158 6240 11740 8307 +6576 7708 8643 7271 8806 +6577 8538 9412 9406 8568 +6578 10047 7435 8889 9674 +6579 8355 7768 10475 6483 +6580 7107 8845 7358 9305 +6581 8382 10655 154 155 +6582 8809 7305 8876 8907 +6583 6599 10188 7857 9156 +6584 12190 8082 11696 7940 +6585 6847 8833 8024 11580 +6586 9302 8060 10217 6732 +6587 11294 8493 9082 6844 +6588 10402 7035 9134 7887 +6589 9048 8136 10200 7228 +6590 7044 8781 11437 8921 +6591 8144 6424 11876 9263 +6592 11963 8388 11810 6997 +6593 6954 11319 8078 8868 +6594 6646 8533 7391 9739 +6595 9715 12038 11197 6675 +6596 10588 7657 8762 8527 +6597 6832 11468 7440 9165 +6598 7228 10200 7795 9371 +6599 10663 8418 11078 10606 +6600 6538 10540 11841 8523 +6601 10615 7853 9159 11462 +6602 9745 8262 8967 7018 +6603 10638 7808 8962 9938 +6604 9583 8451 10920 7155 +6605 6480 9377 11241 8735 +6606 8283 9412 8538 6504 +6607 8343 10368 6717 12268 +6608 10601 8132 10976 6817 +6609 10032 6500 10977 8132 +6610 6914 8406 11340 9894 +6611 7083 9359 10970 8872 +6612 7123 9581 7186 9934 +6613 10657 8072 10625 7446 +6614 10034 8150 11089 6960 +6615 6655 8898 7515 9687 +6616 7386 9308 6521 8752 +6617 10424 6693 9903 8249 +6618 8708 6683 11519 8072 +6619 10537 12124 10687 6819 +6620 6679 10412 7926 8785 +6621 6994 12019 11789 8666 +6622 10501 10150 11956 8405 +6623 10081 8405 11956 8003 +6624 9174 8552 195 196 +6625 8433 8664 10144 7163 +6626 8218 8877 11566 6407 +6627 6385 10571 7966 11480 +6628 6437 8665 7910 11152 +6629 10467 8167 10520 6318 +6630 8215 8216 7001 10978 +6631 7014 8485 6389 8698 +6632 11227 8424 9618 6994 +6633 11187 11090 6487 9015 +6634 6887 9304 12071 10530 +6635 11305 11961 7072 9533 +6636 9649 6788 10754 8466 +6637 6471 10343 9679 8389 +6638 8707 8168 11185 6830 +6639 9782 7643 11185 8168 +6640 7809 10061 7194 10177 +6641 8625 6668 11848 10934 +6642 10922 6660 9134 7821 +6643 8845 9846 9300 7358 +6644 6661 11660 8193 8827 +6645 9979 7744 11178 6327 +6646 7077 10198 7888 10184 +6647 8834 6918 11996 8334 +6648 8712 8196 9178 6491 +6649 9904 6729 8985 11109 +6650 6334 10224 11525 8153 +6651 9750 8669 8545 6993 +6652 9993 8804 9786 7064 +6653 11332 8342 11996 6918 +6654 10904 8162 11997 8250 +6655 8376 9916 10070 6516 +6656 12052 6781 10358 8201 +6657 6706 10276 7804 10028 +6658 11445 7019 11227 8124 +6659 8714 8149 11141 6459 +6660 8997 10843 10065 7606 +6661 9144 8147 11017 7067 +6662 10912 8078 11319 7248 +6663 162 163 9962 8089 +6664 10200 8136 9591 6246 +6665 6912 10519 7960 11077 +6666 8287 6999 8347 11970 +6667 8169 9193 7640 11298 +6668 10240 8081 10369 6496 +6669 9913 8375 12197 7326 +6670 6356 8635 7272 9292 +6671 8955 6560 11623 8248 +6672 9150 8184 9311 7063 +6673 8595 8596 10779 6902 +6674 7955 10014 6696 11398 +6675 10288 6805 9699 8213 +6676 8781 7044 11289 8152 +6677 8297 6869 9668 10187 +6678 7642 9789 6581 10402 +6679 9075 8847 11574 7316 +6680 8642 6261 10536 7962 +6681 8316 8924 11135 6822 +6682 8337 6893 8633 6443 +6683 11634 6682 9514 8289 +6684 11568 8294 9988 6426 +6685 12142 8334 11996 7015 +6686 11027 7680 10640 8104 +6687 7986 12008 8302 10774 +6688 11417 8534 8630 7095 +6689 8160 8543 10244 7318 +6690 10876 7278 9923 8605 +6691 8465 6558 10926 9851 +6692 10164 6478 9227 8411 +6693 7560 9999 11903 8802 +6694 9985 8264 10190 6472 +6695 6384 9586 8288 12223 +6696 6674 11034 7833 10834 +6697 11250 8116 10755 6452 +6698 8089 6920 8194 11043 +6699 6924 10435 7752 9686 +6700 8451 6999 8949 8948 +6701 11578 6810 11822 8155 +6702 8684 6549 12085 8351 +6703 11391 8627 6372 8143 +6704 7821 9002 6262 11082 +6705 8479 8669 12105 8692 +6706 8090 9122 10059 6880 +6707 10856 8766 8608 6622 +6708 6267 10634 7545 8324 +6709 11921 10443 9771 7954 +6710 6532 8615 7013 8524 +6711 8557 7070 11792 8177 +6712 10783 7444 9068 8371 +6713 7752 10435 10770 10589 +6714 8390 8438 10086 6861 +6715 6269 10839 7632 11122 +6716 6909 11320 12222 7720 +6717 9195 6284 8812 9743 +6718 10766 8414 11919 6479 +6719 6291 8834 8334 12142 +6720 11363 11511 8699 6504 +6721 10656 7911 11467 8266 +6722 7779 10308 7408 10354 +6723 6922 11219 8144 9263 +6724 9113 6338 11827 8104 +6725 9469 8098 10134 7371 +6726 10588 8527 10457 6754 +6727 8960 176 177 8566 +6728 6341 10701 7652 10825 +6729 10402 7887 10600 7642 +6730 10243 7616 10977 8532 +6731 8051 6862 11432 8198 +6732 8490 7087 8716 8852 +6733 8455 6899 8427 10800 +6734 9215 7312 10667 8117 +6735 10196 6473 10610 8650 +6736 10260 7472 11237 8092 +6737 7602 10238 7104 9767 +6738 6932 10104 10917 8475 +6739 9089 8141 12076 6340 +6740 7637 10754 7147 9026 +6741 8269 10196 7326 10347 +6742 9516 6801 10674 8122 +6743 7409 10062 6403 8374 +6744 9857 7382 11037 8022 +6745 8967 6522 9683 8562 +6746 9620 7284 10610 8102 +6747 9256 7351 8952 9685 +6748 9591 8136 10799 6896 +6749 8893 8378 10336 6774 +6750 7598 11131 6864 8540 +6751 11736 9989 8225 12094 +6752 8694 6647 9372 9997 +6753 8376 8989 12130 6997 +6754 9059 8271 11661 7002 +6755 7642 11728 7179 9789 +6756 8998 8571 166 167 +6757 8942 6636 10681 8108 +6758 7071 12049 8684 8351 +6759 11694 8061 9906 6492 +6760 10000 8209 6925 10750 +6761 11960 150 151 9543 +6762 9584 8454 10607 6535 +6763 10482 7686 7445 8383 +6764 9577 8205 11278 6285 +6765 8085 8993 6335 11927 +6766 9533 7072 9845 8139 +6767 9910 6556 8839 9384 +6768 10820 11429 8738 7029 +6769 12200 7308 9863 8094 +6770 6640 8582 7667 10486 +6771 6916 10611 8361 12101 +6772 9059 6312 11645 8271 +6773 7187 10255 7772 10960 +6774 8402 7245 8346 10874 +6775 10256 6825 10722 8134 +6776 8387 117 118 11695 +6777 8244 11395 7921 12126 +6778 9101 6277 8773 9498 +6779 11852 8393 12061 8394 +6780 9368 7019 11445 8322 +6781 11570 7865 10197 6406 +6782 8407 9172 8706 6564 +6783 11453 8217 11894 7536 +6784 9674 6535 10607 8121 +6785 11842 8621 8024 12099 +6786 6744 9919 7732 9660 +6787 6952 9899 10752 8236 +6788 9108 8488 9000 9288 +6789 8751 6913 11129 8421 +6790 7106 8794 7237 9020 +6791 9870 8118 11041 121 +6792 8119 10131 6346 11439 +6793 12148 8117 10667 6318 +6794 9988 8122 10674 7133 +6795 11104 7901 11746 9906 +6796 7917 10516 6700 9585 +6797 8941 11438 9775 7622 +6798 11027 6804 11980 8127 +6799 10152 12127 10359 8400 +6800 8771 11389 10979 8409 +6801 11571 8121 11019 7027 +6802 8206 10693 6978 11146 +6803 6467 8862 7396 8379 +6804 6748 9765 10768 8608 +6805 8361 11292 6534 12185 +6806 8479 8692 8770 6540 +6807 7917 10515 11678 6923 +6808 8697 10894 7709 11426 +6809 7237 9481 6514 9020 +6810 8684 8244 12126 6549 +6811 6498 10077 8152 11289 +6812 10151 6494 9595 8349 +6813 9865 7128 9512 7792 +6814 11200 6772 10862 8155 +6815 8186 11217 6835 9510 +6816 7259 8796 6369 9077 +6817 12173 10718 11582 8235 +6818 9496 7005 10723 8261 +6819 8150 9164 7068 11045 +6820 6993 8917 11050 9688 +6821 7653 10848 6700 8435 +6822 8862 8175 9815 6806 +6823 10028 7804 10423 7175 +6824 7486 10190 7350 9832 +6825 9702 8183 10464 7058 +6826 8016 11016 6773 11336 +6827 8580 11124 10815 6320 +6828 11413 9532 7034 8827 +6829 8318 12260 8501 7039 +6830 8923 8914 8530 7317 +6831 10991 6422 11167 8214 +6832 6289 10042 7479 9952 +6833 7503 10705 7598 8540 +6834 11215 8134 11867 7741 +6835 10817 8504 11556 7637 +6836 8374 6403 10615 9892 +6837 8687 6979 8354 9930 +6838 6918 8351 12085 11162 +6839 6705 9979 7727 10046 +6840 6321 8751 7093 8984 +6841 10618 8180 10906 6412 +6842 10433 8138 12011 7311 +6843 9319 7423 11316 8839 +6844 9000 7379 9991 8746 +6845 10616 8460 11193 6446 +6846 7634 9528 6329 10896 +6847 6449 9857 8022 11201 +6848 9029 7086 9716 8240 +6849 7526 10114 6658 9940 +6850 9171 6567 8792 9768 +6851 6748 8608 8766 7551 +6852 6325 10909 8071 10505 +6853 6796 9360 7761 8867 +6854 7050 9535 6572 8442 +6855 10221 8190 11435 7433 +6856 6314 11542 8019 11376 +6857 9164 8150 10034 6315 +6858 8908 6558 9538 11393 +6859 6963 11941 8231 10023 +6860 9359 8251 11450 6791 +6861 8751 8421 12271 7093 +6862 11518 8803 9068 6371 +6863 8371 9068 8803 7239 +6864 8931 6396 11869 8111 +6865 7161 9656 7469 8972 +6866 8102 6768 11882 9620 +6867 6972 10867 12137 8749 +6868 10883 6520 8886 8887 +6869 9056 7260 8811 9372 +6870 7517 10251 11604 8756 +6871 9045 6585 9984 8242 +6872 9229 9676 8871 6569 +6873 12122 8154 10700 6753 +6874 10005 8246 11042 7448 +6875 9877 8730 9882 7763 +6876 10359 7108 9471 8400 +6877 9496 11626 11246 7005 +6878 6540 8953 7161 8479 +6879 7972 11160 7345 10351 +6880 12142 7015 10576 8184 +6881 10680 12042 10109 6502 +6882 9761 6322 10294 8437 +6883 8085 11927 8654 7037 +6884 8534 7062 8753 8630 +6885 7354 10546 6256 8480 +6886 10991 8214 10683 7757 +6887 8274 10943 6853 10553 +6888 7645 10805 6670 9007 +6889 10944 8408 11496 6846 +6890 9525 8619 10396 7081 +6891 7611 10199 6666 10814 +6892 6766 11801 8260 8710 +6893 7171 9972 8108 10681 +6894 10467 7519 10793 8167 +6895 9144 6664 10257 8147 +6896 11648 8509 11766 7945 +6897 6371 10797 7797 11518 +6898 8893 8151 10181 6409 +6899 9691 7141 10554 8161 +6900 7393 9776 6274 9480 +6901 9918 8853 9969 6537 +6902 9553 8612 11863 6465 +6903 9045 8242 9862 7231 +6904 10906 8180 11295 7513 +6905 10215 8439 12073 7930 +6906 7735 6249 8517 10824 +6907 8280 7062 8534 11659 +6908 7048 8483 6345 8977 +6909 8872 9285 10880 7494 +6910 7296 9321 6353 9513 +6911 9617 6611 9771 8548 +6912 10700 8154 11021 7428 +6913 6741 8174 6257 8573 +6914 6245 8651 7938 10193 +6915 8503 7569 10160 9837 +6916 7180 11546 8521 9390 +6917 6260 11264 8208 9323 +6918 9427 7091 9733 8265 +6919 9200 8161 10554 6339 +6920 7994 9058 9393 6573 +6921 7701 9184 6393 10544 +6922 8233 6839 11281 8750 +6923 7913 7525 8602 10437 +6924 6919 8511 7598 10930 +6925 6891 8790 7308 8723 +6926 8665 12162 8205 6931 +6927 8654 8783 8770 7096 +6928 6611 10877 7954 9771 +6929 8729 8173 10087 6358 +6930 8986 9009 12021 6548 +6931 11920 8133 10100 6243 +6932 8913 9838 8878 9229 +6933 11223 6405 10778 8247 +6934 9209 11403 7453 10593 +6935 7106 9020 6514 9155 +6936 7917 6923 12048 10516 +6937 6555 11277 8030 11246 +6938 8373 9018 6772 11084 +6939 6247 8830 7085 8277 +6940 8464 8788 11004 6258 +6941 8809 9467 10254 7305 +6942 6620 9454 7253 8674 +6943 6396 10506 8174 11203 +6944 7822 11614 6596 9900 +6945 10424 8249 10302 7475 +6946 9104 6703 11785 8433 +6947 6517 8709 11726 12026 +6948 7653 8435 11616 10374 +6949 8561 9831 7190 11864 +6950 7573 9572 7203 9624 +6951 7308 10259 7897 9863 +6952 9795 7570 11278 8205 +6953 6918 11162 7936 11332 +6954 7927 10390 6287 10503 +6955 7683 10986 6329 9528 +6956 9337 9437 8950 7330 +6957 8161 7373 9566 10725 +6958 12074 7987 8448 10662 +6959 10307 7343 11267 8183 +6960 7708 8806 6882 10618 +6961 8500 7716 11759 7837 +6962 8557 8177 10377 6779 +6963 7808 11206 6854 8962 +6964 6584 8778 7280 9298 +6965 11299 10166 8050 11987 +6966 7476 9351 6512 10128 +6967 8260 11723 11832 6942 +6968 9408 9527 8796 7259 +6969 7445 6511 9173 7760 +6970 9404 6804 10033 8399 +6971 11246 11626 12188 6555 +6972 7180 9390 7082 8712 +6973 9599 6323 10485 8487 +6974 6761 9763 7809 11198 +6975 8865 7110 9429 8983 +6976 7131 9338 7223 8759 +6977 9099 7041 11825 8636 +6978 7546 9926 7336 10175 +6979 7677 10517 6293 10125 +6980 7061 8711 8259 12001 +6981 7753 11064 6796 8867 +6982 9352 9195 8888 7191 +6983 8770 8783 8794 7106 +6984 9488 8794 8783 6335 +6985 8184 9150 6291 12142 +6986 11800 10318 7492 9839 +6987 8572 10605 8698 6389 +6988 9377 7100 9718 8315 +6989 8716 6346 8956 10239 +6990 7100 10465 11652 8922 +6991 7125 8849 6530 8798 +6992 11915 7877 11211 6243 +6993 10882 8457 9571 6527 +6994 10257 8180 10618 6882 +6995 10094 7784 9967 7127 +6996 10401 6712 11057 8282 +6997 8473 6614 9790 8597 +6998 8800 8604 8939 7111 +6999 11870 8897 8640 7048 +7000 6528 10456 8285 10454 +7001 10445 7976 8355 6483 +7002 8043 8729 7090 12053 +7003 9695 8227 11115 7169 +7004 7148 10239 7891 10853 +7005 8676 10419 7794 11774 +7006 8654 7096 10846 7037 +7007 12187 10468 6725 8266 +7008 8973 7172 10229 8187 +7009 7410 12176 8344 10594 +7010 8085 7037 8373 10994 +7011 6540 8787 7049 8953 +7012 8545 8669 8479 9111 +7013 9798 7133 10674 8199 +7014 11008 6910 10989 8624 +7015 10951 6676 9186 8392 +7016 8130 6949 11095 8649 +7017 10116 6630 9246 10595 +7018 8461 6283 11108 7143 +7019 6432 7578 11655 7993 +7020 8123 11012 9700 7140 +7021 9599 8487 10317 7459 +7022 8674 9551 9336 6620 +7023 7106 9155 7138 8787 +7024 7493 9774 11136 10570 +7025 7513 9328 7841 10608 +7026 8206 11146 12133 6890 +7027 9153 7344 10088 6879 +7028 8215 11078 8418 7663 +7029 185 8895 10578 184 +7030 12145 8234 12032 6515 +7031 9513 8864 9255 7296 +7032 7154 9561 7636 10248 +7033 7105 9623 7389 9062 +7034 9695 6365 9945 8227 +7035 8641 6410 10957 8013 +7036 9119 6400 11138 8195 +7037 7440 11003 6377 9165 +7038 6792 10866 8043 9723 +7039 12006 8416 10786 8053 +7040 6939 8505 10683 8214 +7041 11312 9189 11219 6922 +7042 9042 8222 11004 7042 +7043 7302 9351 7476 9194 +7044 8306 11889 6986 9227 +7045 7120 8863 6530 8849 +7046 9559 8221 11381 7011 +7047 9177 8370 10094 7127 +7048 9721 7462 10590 8331 +7049 10221 6263 9605 8190 +7050 7604 11936 8313 9976 +7051 8772 8682 11105 6964 +7052 8275 11960 9543 6895 +7053 10148 10528 9107 7427 +7054 10048 8516 11572 7542 +7055 11306 8827 7034 10311 +7056 11766 8509 11250 6452 +7057 10164 7799 11700 8338 +7058 9770 8567 11995 7431 +7059 6421 8987 7597 9019 +7060 11733 7516 8575 6275 +7061 8071 7240 7836 10505 +7062 12008 8388 11963 6834 +7063 8637 6552 10145 10851 +7064 7307 8773 6277 9477 +7065 7243 9163 6607 9537 +7066 9549 8199 10674 6801 +7067 8971 10910 7827 12090 +7068 10697 8389 9679 6854 +7069 7736 9328 6664 10604 +7070 8459 10813 11079 6493 +7071 8090 11438 7045 9518 +7072 12012 11001 7024 9434 +7073 8647 7182 10800 8427 +7074 6463 12128 8275 8968 +7075 8839 6556 7057 9319 +7076 7734 9913 7326 10196 +7077 7512 11573 9457 8384 +7078 7700 10368 7505 10775 +7079 9679 7314 11148 11341 +7080 7255 8743 6607 9446 +7081 9186 6676 12157 7989 +7082 7612 10413 6648 8757 +7083 9371 6545 9978 8235 +7084 7545 10826 11783 8324 +7085 10902 7447 11452 8563 +7086 11096 8196 10567 6843 +7087 11641 9600 6374 11279 +7088 6266 10515 7917 10669 +7089 8376 6516 11750 8989 +7090 8820 8228 11750 8821 +7091 8088 9357 9660 7039 +7092 10040 7506 9251 10522 +7093 8451 9583 8347 6999 +7094 8194 9102 11026 6436 +7095 9595 6495 9494 8349 +7096 8877 8218 10288 7144 +7097 9856 8297 10187 6868 +7098 12091 7716 10218 10019 +7099 9029 8240 11063 7655 +7100 8159 10380 6859 11463 +7101 7800 9133 12044 8655 +7102 8659 8788 9181 8542 +7103 139 8468 7133 9798 +7104 7120 8849 7125 8850 +7105 8835 8709 11756 6866 +7106 7147 10754 6788 9515 +7107 8401 128 129 11612 +7108 7501 9625 6408 9250 +7109 8496 10863 7776 7003 +7110 7236 9070 6621 9708 +7111 10143 8444 10966 6673 +7112 9470 7165 10490 7767 +7113 7310 8744 6626 8846 +7114 8808 7420 10110 8222 +7115 6484 11628 7985 10858 +7116 7801 11661 8271 10416 +7117 183 8301 9792 182 +7118 10637 11365 9898 7178 +7119 7417 11977 9061 8224 +7120 7404 10262 7892 9929 +7121 8571 6995 8315 9732 +7122 9166 6313 11492 8311 +7123 8757 6648 10802 8728 +7124 10898 7914 10189 6771 +7125 8415 10027 7889 11703 +7126 7227 9135 6569 8871 +7127 8860 10635 7743 11877 +7128 6581 10400 7956 11202 +7129 9313 9636 8957 7341 +7130 7046 9076 11891 10912 +7131 7343 8817 11814 9510 +7132 9193 6819 10687 8547 +7133 11285 8323 9716 7086 +7134 8381 12152 8535 7298 +7135 8866 7121 9206 9554 +7136 10470 7938 11297 6785 +7137 6291 9150 7593 8755 +7138 12165 8341 11672 6462 +7139 8833 6847 11991 8403 +7140 7253 8792 6567 9369 +7141 9754 8352 11485 6980 +7142 7692 10072 7022 9547 +7143 9428 8245 10016 7091 +7144 11294 8110 12155 8493 +7145 8311 7003 8814 9166 +7146 8652 9721 8331 7342 +7147 11543 8158 9825 6328 +7148 6253 10091 7212 8348 +7149 10763 8673 8613 6428 +7150 10212 6992 9736 8337 +7151 8464 8577 9181 8788 +7152 6881 9992 7871 11144 +7153 10811 7935 11830 8372 +7154 6583 9103 7167 8776 +7155 6696 9258 7703 10261 +7156 8941 6463 11397 8303 +7157 6894 8013 10957 8480 +7158 12055 6516 10070 8241 +7159 11793 7203 11100 8252 +7160 8208 7024 10631 8990 +7161 9382 8472 10723 7005 +7162 9481 7237 8940 8776 +7163 7128 9865 11145 7755 +7164 10968 8257 12206 6738 +7165 8617 6953 11734 8162 +7166 8770 8692 8980 7096 +7167 6247 10076 7932 8830 +7168 7762 9006 8146 11335 +7169 9945 6903 10219 8227 +7170 8686 7384 10126 8687 +7171 7761 6326 11493 8420 +7172 9796 10120 9291 7502 +7173 8790 7949 11186 6651 +7174 9721 8652 11804 6453 +7175 6404 8601 10487 10488 +7176 6564 8943 12081 8407 +7177 11351 8565 9127 7021 +7178 8943 9965 9714 7041 +7179 8818 6780 12040 8201 +7180 11384 12242 8997 7089 +7181 6258 11466 6966 8464 +7182 9336 7356 9835 8748 +7183 11818 7973 11348 9720 +7184 10688 6240 11349 8076 +7185 12081 7189 9536 8407 +7186 11609 8526 9333 6476 +7187 8001 7056 8584 10178 +7188 8685 10729 7449 10219 +7189 9427 8265 11169 6587 +7190 9733 6793 11170 8265 +7191 12021 9009 7077 8949 +7192 12148 6318 10520 8531 +7193 6400 11935 7674 10155 +7194 6587 9505 7491 9427 +7195 9904 8325 10801 7306 +7196 10401 8282 11949 7659 +7197 11961 12128 8570 7072 +7198 7376 11232 7964 8638 +7199 9984 6948 11048 8242 +7200 7380 9339 6597 9188 +7201 9716 6490 11353 8240 +7202 188 8822 11488 187 +7203 8914 7131 9513 8530 +7204 7258 10203 7781 9778 +7205 8754 7541 10379 9015 +7206 11647 6404 10488 8327 +7207 10519 6912 9826 8328 +7208 7434 9615 6373 9964 +7209 8556 9651 9968 7021 +7210 9496 6709 10103 11626 +7211 9352 7338 8838 9524 +7212 7994 6573 8585 12049 +7213 7316 9103 6583 9075 +7214 8192 6839 8233 7185 +7215 8373 7037 10846 9018 +7216 6778 9335 7026 10511 +7217 8118 7103 9317 11041 +7218 12209 7056 11352 8541 +7219 6300 10165 7610 9612 +7220 8491 9379 8558 6929 +7221 6815 12207 8017 8536 +7222 11714 6845 9671 8446 +7223 6590 9278 7225 8838 +7224 7351 9445 6360 8952 +7225 12036 11430 6976 8996 +7226 10302 6308 9252 8176 +7227 9229 6569 8888 8913 +7228 8463 6958 10640 8801 +7229 9092 8644 9076 7046 +7230 9880 7205 11042 8246 +7231 8894 9418 8798 6530 +7232 8027 6574 8448 10067 +7233 6484 10858 7925 11470 +7234 8172 8515 11712 6885 +7235 11821 6543 9181 8577 +7236 8596 8595 8961 6551 +7237 10616 7892 10553 7372 +7238 8888 7145 8915 8913 +7239 9460 6917 10767 8234 +7240 8191 8826 8717 6743 +7241 11506 7318 10244 7931 +7242 7062 9538 6558 8465 +7243 9748 8589 10311 7034 +7244 8807 6541 9947 9062 +7245 11373 12053 9025 6546 +7246 6329 10986 7984 9787 +7247 11272 8441 12085 6549 +7248 7783 7207 8784 11257 +7249 7075 8250 10182 8129 +7250 9371 8235 11582 7228 +7251 7424 9410 7425 8883 +7252 6351 8905 7389 9623 +7253 8486 7475 10650 9246 +7254 10594 8344 9605 6263 +7255 11553 8154 12122 9270 +7256 11941 8546 11792 7070 +7257 9398 7403 9034 9852 +7258 11517 10870 9921 8031 +7259 6332 9094 9912 10671 +7260 6416 11134 7933 9061 +7261 10196 8269 11087 6473 +7262 9813 7120 8850 9132 +7263 10384 8348 11595 6943 +7264 7185 8233 12182 9951 +7265 6897 8217 12255 8632 +7266 7991 10458 6659 10173 +7267 9428 6292 10873 8245 +7268 8319 6644 10117 10728 +7269 8518 8359 9785 6896 +7270 6979 12091 10019 8354 +7271 7594 10958 8782 7118 +7272 11530 6254 10011 8321 +7273 11087 8269 11074 7559 +7274 7634 9340 6501 10599 +7275 7401 9574 6686 10420 +7276 8906 6497 9618 8424 +7277 11677 9803 6448 11495 +7278 7327 9170 7158 9081 +7279 8006 11323 6901 8595 +7280 9650 6719 10683 8505 +7281 9486 10366 11775 6815 +7282 9455 7352 9052 9756 +7283 8636 9001 8946 7177 +7284 7937 11487 6899 8854 +7285 8906 8252 11100 6497 +7286 12008 7986 11985 8388 +7287 7282 9659 7110 9438 +7288 8585 7006 8684 12049 +7289 9991 8263 12218 7457 +7290 7403 9725 6628 9034 +7291 6519 9356 7294 9355 +7292 8836 6797 11132 8243 +7293 9171 8920 9057 7183 +7294 7490 8172 12096 10675 +7295 7071 8351 6918 8834 +7296 6678 10207 8077 9342 +7297 6322 8086 10730 9867 +7298 8863 9080 8894 6530 +7299 9248 8532 10977 6500 +7300 11110 6655 9687 11627 +7301 7553 10406 7190 9831 +7302 8030 9382 7005 11246 +7303 7585 10058 6762 11238 +7304 10294 8574 8573 7398 +7305 9944 7199 8591 9724 +7306 8698 10605 11504 7689 +7307 6706 11066 7364 10961 +7308 8320 6911 8344 12176 +7309 8369 9589 8462 7402 +7310 9875 7284 11337 8428 +7311 6569 9135 7191 8888 +7312 10785 6763 10708 8380 +7313 8449 6588 8934 9659 +7314 9744 8248 11623 7485 +7315 8842 7392 11147 8062 +7316 6982 10533 8077 10207 +7317 10190 8264 11168 7350 +7318 10259 6651 11325 7898 +7319 9486 7498 10926 10366 +7320 6296 9593 7465 8909 +7321 8463 11150 8552 7690 +7322 9105 8611 9369 6567 +7323 144 145 9557 8671 +7324 6333 9192 7841 11157 +7325 8346 7245 11986 10941 +7326 6786 8725 7295 9084 +7327 8604 8964 8953 7049 +7328 7760 9173 6252 10844 +7329 6822 10081 7045 8303 +7330 10512 7129 8742 11473 +7331 8400 9471 9505 6587 +7332 7678 10566 11643 9016 +7333 6849 8815 6410 8641 +7334 6950 9769 6503 9731 +7335 7954 10877 7436 10021 +7336 8800 7111 9080 8863 +7337 11568 6426 10518 7972 +7338 9967 8129 10182 7127 +7339 10010 9360 11820 6890 +7340 6830 11092 10376 8707 +7341 8967 8262 10372 6522 +7342 9958 7753 8867 10375 +7343 6791 11602 8164 9359 +7344 6840 9055 8004 11395 +7345 7183 9105 6567 9171 +7346 8796 9527 8797 7107 +7347 9745 9050 11665 8262 +7348 7687 9755 11590 10504 +7349 7325 9219 6354 9223 +7350 8906 7450 11793 8252 +7351 9200 8419 11905 6954 +7352 11937 6819 9193 8169 +7353 7914 10100 7534 10495 +7354 8442 6572 11059 9889 +7355 8939 8775 9089 6340 +7356 7260 9187 6355 9254 +7357 6751 9247 8142 10796 +7358 7363 9334 6637 9483 +7359 8000 9357 11737 6302 +7360 8278 6468 11873 8413 +7361 10516 10340 8435 6700 +7362 10199 11219 9189 7875 +7363 8491 6929 12258 8492 +7364 10158 6831 9499 11337 +7365 8172 7490 11563 8515 +7366 8659 8542 12271 6489 +7367 11292 8273 9324 6534 +7368 9745 6563 8568 9406 +7369 7991 11752 6430 11259 +7370 10462 7478 11315 8258 +7371 6739 10824 8517 11270 +7372 8662 7194 11180 8292 +7373 8137 7079 8793 10459 +7374 8937 10632 10965 6316 +7375 10252 7443 10282 9689 +7376 7070 11643 8231 11941 +7377 12197 6246 11033 8272 +7378 10672 7618 9373 6886 +7379 7429 9483 6637 9961 +7380 8847 9075 9887 7092 +7381 7697 8893 6409 11251 +7382 7243 9587 7427 9107 +7383 8765 8270 10899 7501 +7384 7844 11407 7004 9426 +7385 8797 9712 8845 7107 +7386 7397 9545 6623 9042 +7387 6915 8896 7982 11541 +7388 9091 8374 9892 6965 +7389 6335 8993 7115 9488 +7390 7310 8846 8186 11410 +7391 7502 9291 7238 10069 +7392 12028 6245 10193 8826 +7393 9659 7282 9711 8449 +7394 6815 8536 6984 9486 +7395 8399 11448 7762 9404 +7396 7139 8333 9911 8044 +7397 7374 9781 6627 9681 +7398 9037 8811 9057 8920 +7399 9141 9237 8988 7229 +7400 8092 11356 6428 10260 +7401 8927 6731 11639 8379 +7402 7231 9131 7184 9045 +7403 8140 9182 9419 7257 +7404 7924 11695 118 119 +7405 7041 9099 6348 8861 +7406 10038 7474 12250 8270 +7407 11944 6830 11185 8843 +7408 6429 10687 12124 7920 +7409 8371 6525 8938 10783 +7410 7244 9240 10862 8034 +7411 10813 8459 11617 7899 +7412 10004 8452 11684 6959 +7413 7844 10886 6539 9182 +7414 8747 7155 11422 9025 +7415 6339 10554 9766 8508 +7416 8213 7097 11684 8452 +7417 10697 10405 6471 8389 +7418 7996 11777 8459 6493 +7419 6865 9594 11270 8517 +7420 12045 6327 8560 9581 +7421 10659 6829 8131 10626 +7422 8895 185 186 9522 +7423 6820 8786 10055 8358 +7424 10144 11683 9734 7163 +7425 8573 8574 11965 6741 +7426 9334 7363 9482 9033 +7427 8316 7337 10247 11486 +7428 8779 8535 12152 6563 +7429 8638 7964 10456 6528 +7430 12248 12022 7970 9666 +7431 8798 8799 8969 7125 +7432 7139 8362 11274 8113 +7433 7200 8983 6277 9101 +7434 10347 8272 11033 6799 +7435 11711 8501 12260 6481 +7436 8723 6326 10010 8553 +7437 12165 6462 11039 8299 +7438 11714 8446 11955 7859 +7439 9379 8491 10213 6486 +7440 9460 7422 10057 8697 +7441 10894 8697 10057 6297 +7442 9964 8701 9462 7434 +7443 8852 6508 12203 8490 +7444 10117 7407 12223 8288 +7445 8811 7260 9254 9057 +7446 6864 7911 10656 8540 +7447 12217 7426 8629 8628 +7448 10164 8338 11394 6478 +7449 10010 6890 12133 8553 +7450 11057 7678 10832 8282 +7451 8109 11384 8492 6441 +7452 10237 6419 9958 8398 +7453 10375 7306 8398 9958 +7454 11376 8019 10710 8699 +7455 9166 7438 12237 6313 +7456 9225 12068 10051 7411 +7457 7491 9428 7091 9427 +7458 7071 10133 7994 12049 +7459 7142 12196 11531 9808 +7460 10608 8292 10906 7513 +7461 12154 8813 10521 8220 +7462 10338 6716 8567 9770 +7463 10752 9899 9218 6392 +7464 9022 8719 9621 7114 +7465 11289 7044 11393 8280 +7466 9680 6399 11291 8366 +7467 6543 11821 7961 11523 +7468 11889 8306 10993 7239 +7469 9785 8359 10240 6496 +7470 9605 7376 11276 8190 +7471 10155 8229 11138 6400 +7472 8140 10018 6387 11407 +7473 7394 9487 7242 9391 +7474 8634 8870 11995 6324 +7475 9111 6317 9575 8545 +7476 7381 9454 6620 9492 +7477 7006 8899 11902 8445 +7478 9708 8894 9080 7236 +7479 7800 9073 11594 9530 +7480 7198 9306 7335 9130 +7481 8335 7126 9418 8974 +7482 7939 9327 7213 9707 +7483 11037 7382 11863 8612 +7484 9697 7351 9256 9814 +7485 9079 11846 7782 11249 +7486 6913 11265 7868 9823 +7487 9948 7458 9698 8885 +7488 8207 8393 9881 11534 +7489 8557 11387 6394 9016 +7490 8985 6729 11358 8420 +7491 9951 8387 10724 7185 +7492 9283 9526 9124 7286 +7493 9205 9434 8065 11378 +7494 10232 7894 12079 8478 +7495 6823 9764 12017 10541 +7496 9388 8503 9837 7321 +7497 10089 6241 9935 8358 +7498 10021 8450 11921 7954 +7499 7678 11057 7158 10566 +7500 9546 9038 9135 7227 +7501 6997 12130 8202 11963 +7502 9590 7478 11650 8295 +7503 8751 8339 11265 6913 +7504 11711 7896 10712 8501 +7505 7217 8791 6938 10129 +7506 11788 6434 12270 8511 +7507 11651 8445 11902 6336 +7508 9070 7236 9236 8992 +7509 7736 11157 7841 9328 +7510 10825 9132 8850 6341 +7511 6276 9564 7330 8950 +7512 7153 9192 6333 8820 +7513 11536 7348 11958 8647 +7514 10813 7899 10221 7433 +7515 9029 6694 11790 10918 +7516 7907 9614 11725 6967 +7517 8655 6305 9073 7800 +7518 6247 9216 10095 7646 +7519 10842 8679 9385 7641 +7520 9190 7259 9077 9232 +7521 8701 6628 9116 9462 +7522 8126 11875 8747 7090 +7523 9528 7634 10599 9078 +7524 8856 9050 9745 9406 +7525 8659 8314 11953 7042 +7526 8295 10628 7623 9590 +7527 8247 6909 9563 7854 +7528 9612 7610 11142 8397 +7529 6298 10822 11831 8332 +7530 11782 8068 10139 11414 +7531 8357 6944 11290 11501 +7532 6730 10586 7714 9048 +7533 8776 8940 9417 6583 +7534 6349 10238 7602 9946 +7535 10611 6916 12056 8471 +7536 8863 7120 9813 8800 +7537 11411 8310 11156 7040 +7538 11841 6874 10792 8523 +7539 11505 6863 8256 6733 +7540 9227 6478 11859 8306 +7541 8606 12087 7468 10412 +7542 10222 6637 9334 10644 +7543 8109 10203 7258 11236 +7544 7111 9236 7236 9080 +7545 9222 8423 11761 6440 +7546 8865 11966 9536 6521 +7547 11790 8401 11612 10918 +7548 11702 6632 9651 8556 +7549 8151 7080 10537 10181 +7550 8966 10737 7947 12019 +7551 9759 10173 6659 11232 +7552 7481 11156 8310 10224 +7553 10051 8475 12009 7411 +7554 7573 10258 7400 10101 +7555 11093 8377 11700 7799 +7556 9096 9037 9131 7231 +7557 11201 7007 9844 8326 +7558 9124 9241 9093 7225 +7559 9492 6620 9336 8748 +7560 7613 8400 6587 11169 +7561 7791 10551 6652 9888 +7562 139 140 9980 8468 +7563 9718 7100 8922 10815 +7564 6311 8128 12163 8481 +7565 8507 8508 9766 6888 +7566 7812 9700 6408 10552 +7567 9532 11413 11653 8767 +7568 12197 8375 11444 6246 +7569 8376 8470 11978 9916 +7570 9998 7560 10893 8600 +7571 8219 10942 8571 9732 +7572 8987 7898 11325 7202 +7573 10473 8598 10760 7156 +7574 11123 8312 11999 7313 +7575 6626 8744 7309 10146 +7576 7466 9752 7320 9264 +7577 6351 8907 11381 9642 +7578 8286 6439 8696 10619 +7579 9850 7031 10881 7521 +7580 9524 6284 9195 9352 +7581 10786 8416 11680 6486 +7582 7866 10645 7129 10512 +7583 11671 8456 11890 6957 +7584 9671 7140 9975 8446 +7585 9498 7248 9172 9101 +7586 8407 7200 9101 9172 +7587 11338 11762 7008 8945 +7588 137 9549 11748 136 +7589 11632 9233 10462 6447 +7590 6521 9308 7282 9438 +7591 9315 9507 9143 7285 +7592 11214 6510 10704 8734 +7593 9005 8920 9171 9768 +7594 7860 146 147 11159 +7595 6271 9409 7223 9982 +7596 7107 9305 6369 8796 +7597 8251 9680 7884 11450 +7598 6412 10831 7708 10618 +7599 11684 8319 10728 6959 +7600 6962 8409 179 11630 +7601 6557 9309 7358 9300 +7602 10292 6543 11523 8391 +7603 8140 7257 10222 10018 +7604 7043 10097 8338 11700 +7605 6717 12011 8138 8995 +7606 8621 8360 12062 6838 +7607 8465 9851 8711 7061 +7608 6375 10227 7506 9461 +7609 8054 10717 7487 11585 +7610 9314 9464 9021 7315 +7611 8847 7092 9349 8778 +7612 8751 6321 11106 8339 +7613 8681 8396 11522 6704 +7614 8634 8066 10940 6802 +7615 11553 9270 10149 7266 +7616 9374 7287 9128 9423 +7617 6247 8277 10805 9216 +7618 8283 7517 10542 9412 +7619 8850 7125 8969 8879 +7620 7225 9278 7286 9124 +7621 8930 6450 10563 8599 +7622 6994 8666 8124 11227 +7623 9492 8748 9835 7290 +7624 9493 6354 9004 9675 +7625 9041 6586 9391 9288 +7626 8721 8722 8837 6372 +7627 8401 7058 11818 9720 +7628 9705 6375 9461 10180 +7629 10903 8112 12179 6875 +7630 9036 9871 9681 6627 +7631 8518 7136 10240 8359 +7632 10125 6293 10658 8434 +7633 11469 8323 10734 7717 +7634 11974 8453 7531 9284 +7635 7206 9105 7183 9039 +7636 9017 7167 9103 9287 +7637 10060 8455 10909 6325 +7638 8631 6254 8630 8753 +7639 11075 9592 8617 7441 +7640 9000 9355 9041 9288 +7641 9117 9041 9355 7294 +7642 10741 6595 9820 8014 +7643 9465 8450 11803 7789 +7644 9004 7184 9131 9005 +7645 6364 9185 7497 9722 +7646 9940 9293 9950 7526 +7647 8878 7187 9676 9229 +7648 10006 7493 10795 8422 +7649 8930 8422 10795 6450 +7650 6518 9338 7131 8914 +7651 9046 7055 9544 11132 +7652 9160 7456 10338 9770 +7653 9011 11303 6512 9351 +7654 8762 6598 11646 8527 +7655 9776 7393 9551 8674 +7656 6600 9630 7566 9228 +7657 7249 9669 7394 9539 +7658 8585 9664 8899 7006 +7659 11171 8956 6346 10131 +7660 7447 10902 7715 9299 +7661 8914 8923 10309 6518 +7662 9021 6369 9305 9466 +7663 8071 8603 10721 7240 +7664 7115 8993 7576 10309 +7665 8604 6524 9656 8964 +7666 6894 8165 11923 8013 +7667 8812 7204 9098 9117 +7668 9041 9117 9098 6586 +7669 8468 8936 9988 7133 +7670 9337 6604 10314 9437 +7671 9037 7159 9372 8811 +7672 11292 8361 10611 6998 +7673 10458 7564 10688 8075 +7674 6366 9459 7333 9242 +7675 11488 8822 9960 7813 +7676 8746 9822 8915 6519 +7677 9508 8957 9479 6619 +7678 10987 10137 9559 7011 +7679 8639 7168 9806 9221 +7680 9295 10287 9707 9956 +7681 9154 10974 10491 7522 +7682 11501 7774 11440 8357 +7683 9005 9131 9037 8920 +7684 8883 7425 9259 9955 +7685 8213 8452 10004 6448 +7686 8213 9699 10873 7097 +7687 7219 9416 7567 9066 +7688 10582 7787 11848 8559 +7689 9727 8366 11074 6799 +7690 10317 8487 10722 6825 +7691 9314 9012 9500 6618 +7692 6340 9236 7111 8939 +7693 10371 8563 11452 6663 +7694 8318 11973 7117 9827 +7695 11361 7966 10571 7682 +7696 7169 8661 6948 9696 +7697 9617 9074 9632 6611 +7698 9015 6487 11838 8754 +7699 8548 7365 9051 9617 +7700 6414 9606 8070 11327 +7701 11308 7174 8468 9980 +7702 11741 6643 10661 8364 +7703 10835 7965 6795 8203 +7704 8799 8798 9418 7126 +7705 7647 9082 9857 11464 +7706 9367 7135 9990 9191 +7707 10106 9419 9182 6539 +7708 8585 6573 12127 9664 +7709 9566 7373 11672 8341 +7710 6645 10107 11831 8831 +7711 9012 9616 9507 7303 +7712 9788 7369 9365 9794 +7713 7126 8978 6531 8799 +7714 10378 7336 9926 8758 +7715 8230 11370 6296 8909 +7716 6744 9137 7482 9919 +7717 6460 10939 8543 8160 +7718 9417 8940 9488 7115 +7719 9785 6496 9598 8932 +7720 6894 8480 6256 10988 +7721 6993 9688 7244 9750 +7722 9151 9318 9276 6594 +7723 11771 8499 7245 8402 +7724 7274 9421 6600 9361 +7725 8117 11430 7847 9215 +7726 10389 6977 9909 8365 +7727 9942 10995 12110 8353 +7728 6651 11186 8350 11325 +7729 10294 7398 10963 8437 +7730 9410 8628 8629 7425 +7731 9626 7101 11096 8739 +7732 8136 9048 7714 10799 +7733 6717 10368 7700 9489 +7734 11231 8086 11350 6947 +7735 7381 8792 7253 9454 +7736 8881 9149 11115 7449 +7737 11140 7281 10871 8249 +7738 9378 9142 9213 7254 +7739 8903 8339 11106 7448 +7740 9072 8866 9554 7276 +7741 9961 8959 9430 7429 +7742 9481 10266 10020 6514 +7743 8744 9217 10071 7309 +7744 9421 7274 9280 9146 +7745 10786 6486 10213 8645 +7746 8988 9145 9204 7233 +7747 9188 6597 9673 9817 +7748 9448 6366 9242 9613 +7749 6354 9219 7184 9004 +7750 9826 6912 10164 8411 +7751 7222 9212 7251 9151 +7752 6614 8473 7523 11072 +7753 7451 9253 6633 9760 +7754 9145 8988 9237 6575 +7755 9179 7229 9322 9031 +7756 9268 6388 9031 9322 +7757 8670 7020 11511 8855 +7758 8426 11253 6550 11844 +7759 7433 8211 11079 10813 +7760 7354 8480 10957 9719 +7761 9092 7046 9498 8773 +7762 10008 7209 10592 8385 +7763 6457 8164 9937 12166 +7764 8436 7538 7941 11539 +7765 8097 8560 6327 11178 +7766 10422 6469 11532 8415 +7767 9942 8353 11020 6509 +7768 9000 8488 9968 7379 +7769 10550 10084 9409 7461 +7770 7260 9056 7261 9187 +7771 7191 9320 7338 9352 +7772 11496 8408 10673 7802 +7773 7229 9179 6562 9141 +7774 9225 7134 9690 8951 +7775 6360 9231 7442 9730 +7776 8058 6260 9323 10328 +7777 8664 8433 11785 7524 +7778 10189 6710 10787 8294 +7779 9372 6647 9519 9056 +7780 8140 11407 7844 9182 +7781 8627 11391 6944 10163 +7782 9623 7105 9467 8809 +7783 11843 10442 6615 8825 +7784 10368 8343 10746 7505 +7785 9867 10730 7825 6344 +7786 9914 8520 12149 7162 +7787 8912 7162 12149 8519 +7788 6334 8823 7481 10224 +7789 7233 9204 6601 9267 +7790 10063 7665 11006 8689 +7791 9201 11512 10077 7122 +7792 10987 6686 9574 11577 +7793 11376 8417 10179 6314 +7794 6519 8915 7145 9356 +7795 8450 10021 6348 11803 +7796 8940 7237 8794 9488 +7797 9363 7591 10296 9362 +7798 8263 9991 9651 6632 +7799 6871 10658 7541 8754 +7800 7279 9722 7497 9693 +7801 7036 7766 9138 10185 +7802 9396 9386 9211 7277 +7803 9379 7116 10840 8558 +7804 10340 6924 11616 8435 +7805 9215 6810 11328 8395 +7806 8521 11546 8505 6939 +7807 9354 7363 9483 9816 +7808 7909 8620 9491 6809 +7809 10334 10116 10595 7625 +7810 6590 9550 7188 9235 +7811 6448 9803 10288 8213 +7812 7254 9639 7403 9398 +7813 11433 9257 7662 11117 +7814 10841 6467 11148 8458 +7815 6477 8616 7832 10872 +7816 7034 9532 7514 9748 +7817 7123 8425 12045 9581 +7818 11615 6667 9828 9530 +7819 11074 8366 11291 7559 +7820 8417 7009 11674 10179 +7821 11978 8470 11810 6451 +7822 6521 9438 7110 8865 +7823 7039 8501 10712 8088 +7824 9326 7293 9203 9441 +7825 9300 9587 8916 6557 +7826 9537 8916 9587 7243 +7827 8825 6615 10395 10740 +7828 6276 8950 7135 9367 +7829 7136 8518 6431 10024 +7830 9382 6420 11755 8472 +7831 10700 7428 11020 8353 +7832 7121 8866 6366 9448 +7833 9464 7181 9232 9077 +7834 9057 9254 9039 7183 +7835 7233 9322 7229 8988 +7836 6759 8268 12262 9450 +7837 9200 6339 12116 8419 +7838 7735 10824 6739 8543 +7839 7505 8497 6654 10775 +7840 9440 9128 9228 7566 +7841 6607 9163 7279 9446 +7842 7224 9279 7331 9521 +7843 8221 6554 9621 8719 +7844 12271 8421 11129 6489 +7845 8112 10973 7581 12179 +7846 9085 9301 9402 7346 +7847 8066 8634 6324 11662 +7848 7553 10266 7167 9017 +7849 8340 10502 10944 6977 +7850 8401 9720 127 128 +7851 7267 9245 7332 9400 +7852 8030 7060 11347 9628 +7853 10859 8515 11563 6466 +7854 9033 9482 9040 6368 +7855 9476 9040 9482 7275 +7856 8812 9093 9241 7204 +7857 8422 11249 7782 10006 +7858 9322 7233 9267 9268 +7859 9135 9038 9320 7191 +7860 7596 10294 6322 9867 +7861 7265 9224 7220 9234 +7862 7227 9403 7290 9546 +7863 9221 7361 9753 8639 +7864 11053 6466 11901 8954 +7865 8870 8634 9854 7208 +7866 7271 8660 10738 12174 +7867 6594 9762 7222 9151 +7868 9401 9198 9224 7265 +7869 9146 6367 9212 9147 +7870 11902 8899 10152 6336 +7871 10980 11408 7165 9843 +7872 10422 8456 11671 6469 +7873 9207 9147 9212 7222 +7874 8569 11537 7839 11706 +7875 8632 6608 10538 8064 +7876 7184 9303 6585 9045 +7877 7791 10833 7532 10551 +7878 11586 6927 11834 8481 +7879 9297 7296 9255 9442 +7880 6368 9872 7419 9645 +7881 8442 6976 12148 8531 +7882 8866 9072 9459 6366 +7883 7894 10232 6452 10755 +7884 10714 8946 9886 6559 +7885 8335 8974 9928 6300 +7886 8429 9758 8829 6988 +7887 9753 7157 9466 9309 +7888 6799 11074 8269 10347 +7889 7333 9459 7198 9479 +7890 8755 7593 10666 10075 +7891 11857 9307 10879 6889 +7892 8461 7143 8668 11760 +7893 6989 8209 10000 11667 +7894 8746 6519 9355 9000 +7895 9901 7150 10140 9433 +7896 7090 8729 6358 9647 +7897 8467 6638 9047 9866 +7898 7523 9908 7362 9629 +7899 11537 8569 10668 6677 +7900 9074 7386 8752 9632 +7901 10797 8369 10910 6991 +7902 7844 9426 6711 10886 +7903 7265 9266 6602 9401 +7904 10247 7337 10916 8382 +7905 9913 6833 12100 8375 +7906 9117 7294 9743 8812 +7907 9576 10102 8887 7166 +7908 7520 9658 7201 9783 +7909 9326 9095 9504 7264 +7910 8560 8097 12249 6837 +7911 9923 8042 10685 10343 +7912 6877 8777 7767 10895 +7913 9464 9314 9052 7181 +7914 9487 8701 9964 7242 +7915 9215 8395 11018 7312 +7916 9301 9085 9389 6578 +7917 9662 9389 9085 7374 +7918 7915 8882 6411 11600 +7919 8759 8864 9513 7131 +7920 9589 8369 10797 6371 +7921 8734 10704 8385 7059 +7922 7283 9445 7351 9697 +7923 6590 8838 7338 9550 +7924 10758 8582 11958 7348 +7925 9095 9326 9441 6606 +7926 12105 8669 9750 6506 +7927 9844 7007 10142 10947 +7928 9121 7220 9224 9405 +7929 7322 9435 6593 9395 +7930 9248 7703 9258 7156 +7931 11838 9084 12211 8754 +7932 7588 9653 7401 10042 +7933 8642 10808 9366 6261 +7934 9232 6602 9266 9190 +7935 10597 11765 6826 7051 +7936 8025 9473 7052 12046 +7937 9784 8436 11539 6242 +7938 10903 6875 9139 9140 +7939 8670 8417 11376 7020 +7940 7221 9277 7285 9341 +7941 9116 7331 9279 9176 +7942 7226 9558 7393 9480 +7943 9221 9640 9475 7361 +7944 8888 9195 9743 7145 +7945 7352 9678 7181 9052 +7946 7388 10107 6645 8724 +7947 10482 8383 11108 6283 +7948 9248 9035 10726 7603 +7949 8438 8390 11100 7203 +7950 9086 8385 10592 6642 +7951 10643 8497 10093 7359 +7952 7209 8580 6320 10007 +7953 8909 7465 10070 9916 +7954 8580 7209 10008 8579 +7955 7137 9033 6368 9645 +7956 9230 9249 10186 7170 +7957 7519 10467 11991 9847 +7958 10215 6461 10233 8439 +7959 7796 8378 11038 6513 +7960 10655 8382 10916 6895 +7961 8726 9136 10431 6718 +7962 11222 7785 10999 8848 +7963 10901 8848 10999 6764 +7964 6653 11014 7857 10188 +7965 7333 9235 7188 9242 +7966 6870 10628 6357 8285 +7967 9314 7315 9616 9012 +7968 10033 7668 11550 8399 +7969 9142 7221 9341 9213 +7970 6987 7731 6566 11421 +7971 9866 7508 10204 8467 +7972 9701 7387 9294 9833 +7973 8730 10511 9735 8148 +7974 9612 8397 10837 7012 +7975 7735 12269 8255 8430 +7976 11282 7558 11522 8396 +7977 6742 11883 7928 11317 +7978 9098 7204 9274 7249 +7979 10100 8774 11915 6243 +7980 9429 8934 9814 7334 +7981 11523 6956 11742 8391 +7982 9873 7566 9630 10345 +7983 10853 7891 12247 8471 +7984 7293 9274 6577 9203 +7985 7363 9354 7275 9482 +7986 11148 7314 10685 8458 +7987 10269 6393 9489 7700 +7988 9070 8992 11502 8440 +7989 7222 9275 6685 9207 +7990 9636 9313 9278 6590 +7991 7285 9277 6361 9315 +7992 7437 9788 6375 9705 +7993 10198 7078 8891 6784 +7994 9116 9176 9637 7160 +7995 9236 6340 12076 8992 +7996 7268 9615 7434 9673 +7997 10310 10147 8588 7288 +7998 9204 9145 9502 7215 +7999 9726 8474 11690 7291 +8000 9278 9313 9456 7286 +8001 11142 6624 10590 8397 +8002 9711 6356 9292 9234 +8003 9849 9054 9449 7390 +8004 8907 6351 9623 8809 +8005 10503 6287 10593 8537 +8006 9361 9282 9281 7274 +8007 9211 9281 9282 6592 +8008 7274 9281 7252 9280 +8009 7255 9197 6353 9321 +8010 9234 9292 9266 7265 +8011 9190 9266 9292 7272 +8012 9108 9288 9391 7242 +8013 7610 10165 7474 10038 +8014 6467 7823 11341 11148 +8015 8743 7255 9297 9339 +8016 9439 6603 9463 9125 +8017 7000 10053 6307 8901 +8018 8301 10578 7580 11329 +8019 10083 8431 11579 6981 +8020 11508 8143 10529 6933 +8021 7327 9081 6270 9380 +8022 8178 11894 8217 6897 +8023 9777 11366 12166 7922 +8024 11100 8390 11581 6497 +8025 11066 6706 10028 8158 +8026 9922 7047 10487 8601 +8027 8925 6832 11338 8945 +8028 9213 9341 9243 6579 +8029 9030 7730 6858 10923 +8030 9070 8440 10899 6621 +8031 9625 7501 10899 8440 +8032 7293 9326 7264 9350 +8033 7538 10400 12277 7941 +8034 9151 7251 9210 9318 +8035 6601 9269 7234 9267 +8036 10814 8745 10784 7611 +8037 6419 11064 7753 9958 +8038 9335 6456 10603 7026 +8039 9274 7293 9350 9272 +8040 10141 7956 11339 6377 +8041 9243 9143 9475 7224 +8042 11898 8413 11030 6914 +8043 7184 9219 7325 9303 +8044 7246 11514 8017 10851 +8045 11854 9938 6731 9864 +8046 9979 6705 11147 10194 +8047 9395 7251 9212 6367 +8048 9081 7158 9106 10349 +8049 7219 9066 6600 9421 +8050 9276 9318 9210 7226 +8051 7114 9348 7420 9682 +8052 9739 9931 9545 7442 +8053 9818 9860 9480 6274 +8054 8430 8255 10324 6900 +8055 9615 7268 11909 8565 +8056 6332 10671 8805 10727 +8057 8129 10197 10883 7075 +8058 9378 7254 9398 9244 +8059 7518 9529 10812 8404 +8060 8210 8007 10792 6874 +8061 7198 9463 6603 9306 +8062 6917 11426 7709 8526 +8063 10081 6822 11135 8405 +8064 9051 7053 9074 9617 +8065 9475 9640 9279 7224 +8066 6709 9496 8261 11722 +8067 9497 9021 9466 7157 +8068 8428 6988 8650 9875 +8069 7348 11536 8304 12226 +8070 8010 6319 8784 10342 +8071 9191 7332 9245 9367 +8072 8692 12105 6506 8980 +8073 9727 7464 9785 8932 +8074 10785 8380 9582 6511 +8075 7154 10421 11906 9561 +8076 9740 6507 10161 8587 +8077 8588 8587 10161 7288 +8078 9389 9662 9277 7221 +8079 9577 7518 8404 11086 +8080 8431 10083 11442 6244 +8081 8248 9744 10062 7631 +8082 6318 10667 7312 8403 +8083 9703 7188 9550 9239 +8084 9320 9239 9550 7338 +8085 10784 8745 9767 6714 +8086 7889 9544 7055 11703 +8087 7221 9142 6578 9389 +8088 9217 8704 10538 6608 +8089 6733 8256 10440 8732 +8090 8930 6974 11249 8422 +8091 6575 9824 7507 8884 +8092 7004 11407 6387 8544 +8093 6278 8959 7256 9757 +8094 7469 9656 6524 9981 +8095 9650 8505 11546 7180 +8096 7134 8808 6623 9690 +8097 9143 9243 9341 7285 +8098 8175 6851 10480 9815 +8099 10983 8795 10575 6884 +8100 6915 11541 8257 11044 +8101 7296 9297 7255 9321 +8102 8838 7225 9093 9524 +8103 9374 9040 9476 7287 +8104 10236 6931 11086 8404 +8105 6352 9350 7264 9244 +8106 11671 9859 8682 6469 +8107 7385 10082 7502 9568 +8108 7473 9804 6701 10270 +8109 9463 7198 9459 9072 +8110 10205 10349 9106 7587 +8111 6591 9262 7361 9475 +8112 9244 7264 9504 9378 +8113 10593 6287 10390 9209 +8114 9040 9374 9872 6368 +8115 8906 8424 11227 7019 +8116 9146 9280 9415 6367 +8117 7289 9420 7360 9523 +8118 9125 9463 9072 7276 +8119 9147 7219 9421 9146 +8120 9021 9464 9077 6369 +8121 9241 6577 9274 7204 +8122 6924 9686 12037 11616 +8123 7280 9446 7279 9298 +8124 10470 8414 10766 6742 +8125 7950 9329 7504 11596 +8126 9386 9396 9306 6603 +8127 8701 9487 9034 6628 +8128 10880 8486 11717 7494 +8129 8916 9537 9891 7168 +8130 7322 9125 7276 9435 +8131 7860 9557 145 146 +8132 10027 8415 11532 7413 +8133 6326 7761 9360 10010 +8134 9163 9458 9722 7279 +8135 10212 9911 9912 6992 +8136 9442 6597 9339 9297 +8137 9758 8429 10370 6945 +8138 6854 11206 7959 10697 +8139 10236 8404 10812 6727 +8140 7272 9408 7259 9190 +8141 6592 9282 7275 9354 +8142 9281 9211 9386 7252 +8143 9400 9198 9401 7267 +8144 6326 8723 7308 12200 +8145 7138 9155 10953 11962 +8146 6555 10801 8325 11277 +8147 8089 9202 161 162 +8148 10106 7256 9175 9419 +8149 9476 7275 9282 9361 +8150 7251 9395 6593 9210 +8151 6563 9745 7018 8779 +8152 9423 9128 9440 6601 +8153 11625 11052 8368 6662 +8154 8912 8519 10149 6484 +8155 9453 9358 9387 7321 +8156 8593 9387 9358 6609 +8157 9223 6354 9493 9403 +8158 7332 9191 6646 9570 +8159 6501 9340 7377 8586 +8160 10074 10183 9380 6270 +8161 8901 10665 12131 7000 +8162 6616 10279 7500 8928 +8163 7277 9684 7429 9430 +8164 8897 7148 10853 8640 +8165 6359 9168 10920 8451 +8166 10966 8444 10471 7651 +8167 150 11960 11961 11305 +8168 8871 9223 9403 7227 +8169 7390 9449 7330 9564 +8170 9955 6461 10215 8883 +8171 9198 6576 9405 9224 +8172 8663 8069 10641 6459 +8173 9223 8871 9676 7325 +8174 9147 9207 9416 7219 +8175 8938 7210 9604 8965 +8176 8314 9963 7164 10857 +8177 9179 9031 10411 7470 +8178 8635 9603 9408 7272 +8179 6601 9204 7215 9423 +8180 8983 9429 9477 6277 +8181 8392 7646 7923 10951 +8182 10503 8537 11697 7483 +8183 7273 9555 7368 9619 +8184 11710 7477 10116 10334 +8185 6513 9194 11184 7796 +8186 8953 8964 9656 7161 +8187 7056 12209 7848 11214 +8188 8682 8772 11576 7413 +8189 8442 9889 8996 6976 +8190 9238 6249 10050 8858 +8191 9249 9230 9472 7349 +8192 9494 6252 11686 8349 +8193 9107 9458 9163 7243 +8194 8656 7241 9520 9531 +8195 7416 9661 7369 9842 +8196 11993 11419 6460 8160 +8197 6805 10288 8218 11116 +8198 7134 9225 7411 9918 +8199 12102 9506 7023 11209 +8200 10079 6274 9776 10425 +8201 8556 10550 7461 11896 +8202 6421 9019 12249 8330 +8203 6699 11955 8446 9975 +8204 8031 9921 8873 6957 +8205 7014 8698 7689 11187 +8206 7280 9197 7255 9446 +8207 7194 10061 11994 8578 +8208 9584 6535 9674 8889 +8209 9280 7252 9439 9415 +8210 10152 8899 9664 12127 +8211 7218 9301 6578 9504 +8212 6619 9479 7198 9130 +8213 9320 9038 9546 6571 +8214 8959 6278 9578 9430 +8215 6603 9439 7252 9386 +8216 7300 9453 6617 9296 +8217 9367 9245 9490 6276 +8218 7739 10046 10961 7364 +8219 10952 7905 10791 8652 +8220 10695 7693 11175 8713 +8221 9551 7393 9558 9206 +8222 9361 6600 9228 9476 +8223 9128 7287 9476 9228 +8224 7170 9655 6362 9230 +8225 8802 8733 10893 7560 +8226 8927 8926 11622 7298 +8227 9248 7156 10760 9035 +8228 9105 7206 10329 8611 +8229 8475 10051 8591 6932 +8230 7261 10337 6355 9187 +8231 6342 9966 7362 9908 +8232 8063 10808 8642 12092 +8233 11750 6516 12055 8819 +8234 9274 9272 9669 7249 +8235 9455 9490 9560 7352 +8236 7291 9599 7459 9726 +8237 6865 8517 6249 9238 +8238 9203 7273 9619 9441 +8239 8812 6284 9524 9093 +8240 8885 9698 9095 6606 +8241 8356 9588 9001 6542 +8242 9241 9124 9526 6577 +8243 9429 7334 9414 9477 +8244 7816 11113 6761 11198 +8245 6419 10237 7846 11362 +8246 8529 6515 12032 8821 +8247 8548 7297 10086 9742 +8248 8139 148 149 9533 +8249 10394 7856 10699 6901 +8250 9479 8957 9636 7333 +8251 7369 9036 6627 9842 +8252 9429 7110 9659 8934 +8253 7295 9388 7321 9387 +8254 9395 6367 9415 7322 +8255 9490 9455 9564 6276 +8256 8884 9502 9145 6575 +8257 6392 10234 7742 10752 +8258 6323 9599 7291 9122 +8259 6586 9098 7249 9539 +8260 9796 6272 9402 9983 +8261 9639 9344 9725 7403 +8262 9116 7160 9817 9462 +8263 9475 9143 9507 6591 +8264 9418 8894 9708 7292 +8265 6286 9826 7359 10093 +8266 7858 9335 6778 10804 +8267 9309 9466 9305 7358 +8268 6968 8045 9238 8858 +8269 8872 7494 10132 7083 +8270 9237 9141 9517 7192 +8271 6362 9283 7286 9456 +8272 9265 9582 8380 6458 +8273 7807 11823 12235 9214 +8274 9125 7322 9415 9439 +8275 10196 8650 10591 7734 +8276 10778 7626 8581 8247 +8277 9526 9283 9555 7273 +8278 6664 9144 7671 10604 +8279 7091 10016 7662 9733 +8280 6438 11060 8320 10905 +8281 9564 9455 9756 7390 +8282 6406 10197 8129 9967 +8283 8604 8800 9813 6524 +8284 6819 7834 10181 10537 +8285 6392 8521 6939 10234 +8286 7924 119 120 9317 +8287 11273 7627 11890 8456 +8288 7335 9478 7387 9701 +8289 9558 6593 9554 9206 +8290 6471 7908 12208 8605 +8291 9485 11973 11011 7732 +8292 11653 11413 11805 8296 +8293 6453 10955 10322 9118 +8294 8597 7113 11405 8473 +8295 9560 9490 9245 7267 +8296 10233 7595 10989 8439 +8297 9690 9931 9739 7391 +8298 8482 10569 9308 7386 +8299 12150 9685 8952 7164 +8300 9339 7380 9891 8743 +8301 9230 6362 9456 9472 +8302 6931 10236 7910 8665 +8303 9313 7341 9472 9456 +8304 9990 7499 12156 8533 +8305 10979 11389 10286 8566 +8306 8960 8566 10286 7010 +8307 6278 9478 7335 9578 +8308 9012 7303 9495 9500 +8309 9725 9344 9521 7331 +8310 9639 6579 9521 9344 +8311 6467 8379 11639 7823 +8312 10575 8795 10551 7532 +8313 6577 9526 7273 9203 +8314 7157 9262 6591 9497 +8315 7524 11785 8602 9878 +8316 7998 10379 7541 10602 +8317 7811 9825 7175 10885 +8318 8957 9508 9472 7341 +8319 7522 8434 11658 10246 +8320 9747 6494 10151 8835 +8321 9507 9315 9495 7303 +8322 6656 10919 7631 10285 +8323 8020 10635 6956 8991 +8324 7224 9521 6579 9243 +8325 10870 11517 9778 6807 +8326 8679 10842 6873 12276 +8327 9021 9497 9616 7315 +8328 11723 8210 6874 11832 +8329 9206 7121 9336 9551 +8330 8610 7193 9548 8818 +8331 7556 10332 6387 10471 +8332 7546 10175 6350 8677 +8333 9681 9325 9662 7374 +8334 9148 6528 10454 8163 +8335 10168 8276 10818 7299 +8336 9251 7340 9925 8840 +8337 8030 9628 6420 9382 +8338 11377 7230 9139 6875 +8339 9933 9987 9231 9897 +8340 6590 9235 7333 9636 +8341 8931 11047 11561 8678 +8342 9589 7444 11555 8462 +8343 9005 9768 9675 9004 +8344 10552 7829 12029 8561 +8345 9831 8561 12029 6722 +8346 8212 11562 11079 8211 +8347 9842 9345 9569 7416 +8348 8583 9783 7201 11753 +8349 6600 9066 7567 9630 +8350 10898 6771 10351 8061 +8351 11655 6894 10988 7993 +8352 9448 9613 9703 7356 +8353 7226 9210 6593 9558 +8354 9388 6347 11906 8503 +8355 7792 9512 11239 8350 +8356 10221 8715 10594 6263 +8357 9291 8467 12086 7238 +8358 8450 9465 6777 11921 +8359 10673 9804 8877 7144 +8360 10478 8114 12181 7669 +8361 9086 7623 10357 10828 +8362 11712 8515 10859 10348 +8363 9410 6599 10267 8628 +8364 7611 8144 11219 10199 +8365 6602 9678 7352 9560 +8366 11349 6240 10178 8584 +8367 8211 7433 11435 8212 +8368 6289 9952 7088 8965 +8369 7398 8573 6257 9330 +8370 7084 11207 8204 10273 +8371 7289 9523 6361 9325 +8372 8318 9827 6481 12260 +8373 10429 7547 10121 8101 +8374 9186 7440 10076 8392 +8375 9712 6625 9846 8845 +8376 10571 8106 11015 7682 +8377 7751 9972 7171 11731 +8378 9142 9378 9504 6578 +8379 8741 8710 9663 6526 +8380 11465 7590 11926 8555 +8381 8926 8680 10536 6261 +8382 6537 9022 7114 9682 +8383 9832 6562 9179 7470 +8384 9726 8541 11247 8474 +8385 10852 8695 12129 7853 +8386 6505 10389 8365 9364 +8387 8267 9585 6700 10848 +8388 9675 7381 9492 9493 +8389 9403 9493 9492 7290 +8390 10027 8513 11670 6828 +8391 6801 11817 7874 9549 +8392 6767 10830 8046 10272 +8393 6272 9569 7346 9402 +8394 7785 11222 6417 10949 +8395 9177 6982 12111 8370 +8396 8934 6588 9697 9814 +8397 8762 8990 10631 6598 +8398 11511 7948 9973 8855 +8399 6401 8498 11517 8031 +8400 6634 9365 7369 9661 +8401 9828 7496 10696 9133 +8402 12044 9133 10696 6816 +8403 7606 8645 10213 11412 +8404 11044 8495 11457 6915 +8405 7356 9703 6571 9835 +8406 7394 9391 6586 9539 +8407 8554 9638 9129 7119 +8408 7276 9554 6593 9435 +8409 8348 10384 9626 6253 +8410 7734 8785 6833 9913 +8411 7271 10002 7081 8660 +8412 10743 8688 10038 6758 +8413 6720 9795 7810 10747 +8414 7972 10351 6771 11568 +8415 6972 9542 7816 11055 +8416 11813 6783 10646 11828 +8417 9244 9398 9852 6352 +8418 8513 10353 7776 11670 +8419 6609 9154 7522 10246 +8420 9176 6280 9806 9637 +8421 6304 9576 7928 11022 +8422 8084 10382 7418 12170 +8423 8393 8207 9974 6928 +8424 9315 6361 9523 9495 +8425 9500 9495 9523 7360 +8426 11309 11776 10461 7775 +8427 10375 8867 11358 6729 +8428 10252 8738 9982 7443 +8429 8913 8915 9822 9838 +8430 9802 8590 10371 6663 +8431 11619 9060 11552 8696 +8432 9935 6241 9608 7670 +8433 9487 7394 9852 9034 +8434 8478 12079 6724 11526 +8435 8744 7310 8704 9217 +8436 8331 10590 6624 12229 +8437 9252 6746 10881 8176 +8438 10925 8782 10958 6615 +8439 9527 6589 9917 8797 +8440 10067 7410 10594 8027 +8441 10523 7966 11361 10745 +8442 12039 12067 7710 9553 +8443 10853 8471 10936 6533 +8444 7460 12088 8064 10538 +8445 6327 12045 7727 9979 +8446 7982 8896 11876 6424 +8447 9587 9300 9846 7427 +8448 9306 9396 9578 7335 +8449 6906 9312 7973 12005 +8450 9172 7248 11319 8706 +8451 8245 6805 11116 10016 +8452 6963 10281 8546 11941 +8453 10426 8485 10649 7608 +8454 8491 8492 11384 7089 +8455 7553 9017 6281 10406 +8456 10326 8475 10917 6671 +8457 9703 9613 9242 7188 +8458 8038 11884 6431 10579 +8459 9091 10497 11847 6657 +8460 11702 8556 11896 7842 +8461 7402 9220 10910 8369 +8462 9822 8746 9991 7457 +8463 8943 6564 9436 9965 +8464 6633 9294 7387 9760 +8465 7897 11599 6421 9694 +8466 9054 9420 9830 6629 +8467 7542 12003 8159 11463 +8468 7578 6432 8693 9793 +8469 6908 9259 7425 8629 +8470 6811 10584 7641 9385 +8471 11773 6921 10657 9058 +8472 6488 9503 7895 10790 +8473 9557 7054 10698 8671 +8474 9912 9094 9736 6992 +8475 7267 9401 6602 9560 +8476 9766 8514 11862 6888 +8477 9504 9095 9698 7218 +8478 8034 12104 9750 7244 +8479 9993 7430 10727 8804 +8480 10027 7413 11576 8513 +8481 9231 6360 9445 9897 +8482 6776 10039 11515 8059 +8483 7254 9213 6579 9639 +8484 12253 6543 10292 8851 +8485 8889 7102 10629 9584 +8486 139 9798 8199 138 +8487 8476 6934 11058 8483 +8488 8108 9972 6338 9113 +8489 7397 9730 7442 9545 +8490 10007 9032 12031 8032 +8491 6802 10940 7632 10839 +8492 8779 7018 9966 8780 +8493 7283 9697 6588 9121 +8494 8779 8780 11854 8535 +8495 7926 12014 6833 8785 +8496 8290 8327 10488 11836 +8497 7912 10696 7496 11091 +8498 7157 9753 7361 9262 +8499 10281 6667 11792 8546 +8500 9108 6373 11351 8488 +8501 8571 8998 11535 6995 +8502 8660 7081 10396 8026 +8503 6344 7825 11610 10768 +8504 10557 8494 11020 7428 +8505 10927 8041 10534 9162 +8506 6684 10398 7511 8963 +8507 7335 9701 6619 9130 +8508 6394 10832 7678 9016 +8509 7919 12047 6425 8761 +8510 10147 6425 12047 8588 +8511 8587 8588 12048 6923 +8512 9746 7143 11108 6568 +8513 9420 9054 9849 7360 +8514 9396 7277 9430 9578 +8515 6926 11276 7376 8638 +8516 9527 9408 9603 6589 +8517 11943 8970 12135 7886 +8518 8959 9961 9175 7256 +8519 8382 155 156 10247 +8520 9314 6618 9756 9052 +8521 9097 8622 8308 12266 +8522 7362 9966 7018 8967 +8523 10106 6539 10220 8760 +8524 7016 8298 9422 10946 +8525 10711 7304 8835 10151 +8526 9176 9279 9640 6280 +8527 7390 9756 6618 9849 +8528 8973 8691 10801 6555 +8529 9484 7355 10214 8525 +8530 10689 8690 11038 7697 +8531 7331 9116 6628 9725 +8532 7014 9501 10649 8485 +8533 7458 9983 7218 9698 +8534 10306 9878 8602 7525 +8535 8507 10838 11606 7216 +8536 11944 8843 10031 7869 +8537 8683 6299 11789 11221 +8538 8882 8559 11858 7779 +8539 8189 6904 10685 8042 +8540 9121 9405 9933 7283 +8541 9246 6630 11717 8486 +8542 6342 9819 7959 11206 +8543 8937 6316 11833 8512 +8544 8192 7185 10724 8824 +8545 11228 10078 12076 8141 +8546 9331 9917 9051 7365 +8547 9603 9051 9917 6589 +8548 7437 9036 7369 9788 +8549 11149 10827 11383 7270 +8550 7374 9085 7346 9781 +8551 6592 9684 7277 9211 +8552 6602 9232 7181 9678 +8553 12121 9962 163 164 +8554 9303 7325 9676 9286 +8555 11606 6542 11825 8551 +8556 7976 8216 11642 6402 +8557 8360 8621 11842 7262 +8558 9325 6361 9277 9662 +8559 12115 8489 11632 6447 +8560 9350 6352 9669 9272 +8561 11083 7806 9797 6940 +8562 12203 7357 11837 8490 +8563 8442 8531 10520 7050 +8564 8819 7151 11482 8529 +8565 11676 6879 10088 8874 +8566 11475 6509 11020 8494 +8567 10353 8513 11576 6553 +8568 7350 9920 6562 9832 +8569 7151 9115 6370 9755 +8570 9783 8583 11846 6383 +8571 9337 7330 9449 9751 +8572 8127 11980 7263 10049 +8573 10960 9286 9676 7187 +8574 12023 8658 8185 6279 +8575 9249 7349 9833 9294 +8576 7033 8681 11743 6444 +8577 6416 9383 7926 11424 +8578 7735 8430 10050 6249 +8579 8522 6990 10914 8523 +8580 9575 6317 10210 7357 +8581 11459 7548 12151 8614 +8582 10390 7927 12087 8606 +8583 6290 9754 7737 10907 +8584 11238 9261 9886 7585 +8585 9001 9588 9886 8946 +8586 10996 8854 10060 7758 +8587 7043 8721 7173 10097 +8588 8885 6606 9441 9619 +8589 8253 7196 11103 8653 +8590 6971 12006 8364 9810 +8591 7127 10182 6544 9177 +8592 9320 6571 9703 9239 +8593 9075 6583 9417 9887 +8594 9991 7379 9968 9651 +8595 8542 12253 7093 12271 +8596 7141 9691 6582 10030 +8597 6897 8632 8064 11248 +8598 8716 8394 11439 6346 +8599 9649 7530 10482 6283 +8600 7492 10514 6848 10068 +8601 7279 9693 6584 9298 +8602 8124 11679 6845 11445 +8603 11916 9370 10126 7384 +8604 11198 8502 11055 7816 +8605 7503 8540 10656 10427 +8606 10622 9579 10777 7719 +8607 11201 8022 11538 7007 +8608 11260 8512 12056 6916 +8609 9933 9893 9570 9987 +8610 9507 9616 9497 6591 +8611 9387 8593 11119 7295 +8612 11892 8181 10920 9168 +8613 11590 11797 10582 7968 +8614 6634 9661 7416 9627 +8615 8864 8759 10084 6612 +8616 6401 10850 9003 8498 +8617 6299 10054 11679 8124 +8618 7215 9502 7419 9872 +8619 9886 9836 10057 7585 +8620 9619 7368 9948 8885 +8621 8856 6349 9946 9050 +8622 7063 9311 11551 9692 +8623 11411 7040 11250 8509 +8624 8937 8512 11260 7102 +8625 10100 7914 10898 8774 +8626 9253 7451 10106 8760 +8627 7563 10141 7989 11408 +8628 9632 8752 10135 7436 +8629 6466 11053 8045 10859 +8630 8724 6645 11314 8514 +8631 6638 9948 7368 9047 +8632 6493 11079 7740 7997 +8633 9154 6609 9358 9858 +8634 10942 8219 9962 12121 +8635 8736 8737 10589 10770 +8636 6985 11062 8036 11727 +8637 6534 9324 8281 11601 +8638 7984 11226 11099 9787 +8639 7720 7445 7760 11899 +8640 10563 6966 11466 8599 +8641 8103 9444 6381 11166 +8642 11918 12161 10466 8179 +8643 8641 6551 8961 9343 +8644 8727 8728 10802 6980 +8645 7672 9840 7364 11066 +8646 7409 10285 7631 10062 +8647 6785 11919 8414 10470 +8648 10064 8547 10687 6429 +8649 9170 7327 9920 9049 +8650 8084 12141 6259 10262 +8651 7022 8572 10703 9547 +8652 9376 12131 10788 6470 +8653 8841 7565 10908 8672 +8654 8132 10601 9548 7193 +8655 8733 8802 12073 6910 +8656 8861 12081 8943 7041 +8657 7268 9673 6597 9442 +8658 6400 9119 7432 11935 +8659 10575 7532 10833 8683 +8660 6342 9908 7523 9819 +8661 8379 7396 8926 8927 +8662 9569 9704 9627 7416 +8663 9047 7368 9555 9655 +8664 7468 11424 7926 10412 +8665 11019 8057 11988 8368 +8666 6617 9568 7502 10069 +8667 8363 8616 6477 11177 +8668 9655 7170 9866 9047 +8669 11752 7991 10173 9949 +8670 7458 9948 6638 10120 +8671 9248 7603 11281 8532 +8672 10243 8532 11281 6839 +8673 8357 11137 7681 10997 +8674 7730 9030 11567 11009 +8675 8464 6966 11821 8577 +8676 7528 10137 7862 10596 +8677 6887 11950 8261 10723 +8678 9110 7216 11606 8551 +8679 9419 9175 10222 7257 +8680 9141 6562 9920 9517 +8681 11593 6488 8354 10019 +8682 9960 8822 10049 7263 +8683 8493 7382 9857 9082 +8684 9354 9816 9684 6592 +8685 10517 7677 10849 8576 +8686 10095 7645 9007 10064 +8687 7949 8790 6891 11732 +8688 6978 7958 7240 10721 +8689 6975 11368 7878 11497 +8690 7506 10227 7340 9251 +8691 9690 7391 10115 8951 +8692 8243 7124 10090 8836 +8693 7194 8662 11190 10177 +8694 9472 9508 9833 7349 +8695 7443 9982 7223 9338 +8696 6866 8238 9811 11924 +8697 6649 8010 10342 9567 +8698 7231 9862 6285 9096 +8699 8792 7381 9675 9768 +8700 7146 11447 6504 8538 +8701 9418 7292 9928 8974 +8702 12001 8259 11311 6996 +8703 7294 9356 7145 9743 +8704 9788 9794 10227 6375 +8705 6542 11606 10838 8356 +8706 9283 6362 9655 9555 +8707 7587 9106 6712 10560 +8708 6896 10799 6431 8518 +8709 9726 7459 12209 8541 +8710 10146 8469 11231 6947 +8711 9637 9188 9817 7160 +8712 8876 8919 10420 6686 +8713 11755 6420 10352 8842 +8714 8121 11571 8050 8554 +8715 9107 6364 9722 9458 +8716 9830 7437 9705 9706 +8717 7339 9452 6503 10652 +8718 8337 6443 11288 10212 +8719 6498 11417 11843 9161 +8720 9103 7316 10031 9287 +8721 7201 9658 6610 9996 +8722 9640 9221 9806 6280 +8723 9569 9345 9781 7346 +8724 12130 8989 11750 8228 +8725 11586 8569 11706 6927 +8726 8728 8727 11704 7247 +8727 7837 9370 6384 10794 +8728 6883 8478 11526 8935 +8729 7298 9864 6731 8927 +8730 10695 8713 11506 6422 +8731 7058 8401 11790 9702 +8732 9577 8528 11023 7518 +8733 8138 10433 6487 11090 +8734 9830 9706 9751 6629 +8735 10005 8594 11849 7870 +8736 11181 6426 9988 8936 +8737 6644 8994 7407 10117 +8738 8891 8892 10393 6784 +8739 9513 6353 12184 8530 +8740 11032 11245 8994 6644 +8741 8782 10162 10648 7118 +8742 10144 8664 10716 6290 +8743 10192 10622 10037 7635 +8744 7008 9006 6435 8945 +8745 8148 7731 10923 8626 +8746 10759 7178 10111 8810 +8747 11023 8528 11048 6948 +8748 6817 10976 7616 9353 +8749 10698 7509 10736 8671 +8750 10146 7309 9083 8469 +8751 7192 9824 6575 9237 +8752 9414 7334 9814 9256 +8753 11218 6852 9422 8298 +8754 6278 9757 7387 9478 +8755 8337 9736 11736 6893 +8756 6796 11868 7951 9360 +8757 8967 8562 11860 7362 +8758 11477 8006 8595 6902 +8759 8852 8716 10239 7148 +8760 7222 9762 7250 9275 +8761 8904 7112 9643 10277 +8762 6821 11554 8135 9728 +8763 8070 11070 6800 11334 +8764 8101 6907 11372 9885 +8765 8069 8663 6769 10525 +8766 8476 8705 11176 6934 +8767 7855 12172 6552 8637 +8768 9054 6629 9751 9449 +8769 8241 12024 6872 11302 +8770 9319 9226 10510 7423 +8771 7441 8617 6304 11022 +8772 12273 10823 7622 9775 +8773 7323 9779 6559 9413 +8774 6266 10669 7052 8844 +8775 8264 9985 11091 6963 +8776 9453 7300 9858 9358 +8777 6547 9311 8184 10576 +8778 9162 7562 11216 8655 +8779 8550 9028 9765 6456 +8780 9400 7332 9570 9893 +8781 9593 7266 11386 9657 +8782 7101 9178 8196 11096 +8783 9353 7616 10243 11835 +8784 7980 11286 7074 12060 +8785 6975 10822 8067 11368 +8786 6298 11268 11103 9509 +8787 190 7680 11027 8127 +8788 9253 8760 10220 7214 +8789 12015 11849 7415 10418 +8790 10668 8569 11586 7130 +8791 8457 7713 10011 10513 +8792 7076 10298 12229 9601 +8793 8398 6936 8947 10237 +8794 6855 8363 11813 11828 +8795 10291 7722 10209 10950 +8796 7071 8834 6291 10133 +8797 11562 8212 11010 6363 +8798 6547 8347 9583 11489 +8799 6938 9595 6494 10129 +8800 9088 11518 7797 11879 +8801 7092 9841 12184 9349 +8802 8581 11320 6909 8247 +8803 7942 10242 6374 10742 +8804 11377 6875 12179 9717 +8805 10944 6846 10335 9381 +8806 7451 9760 7387 9757 +8807 8181 6546 9025 11422 +8808 9983 7458 10120 9796 +8809 6857 10931 6430 8329 +8810 8315 6613 11284 9732 +8811 9567 7943 11001 12012 +8812 6537 9682 7134 9918 +8813 9184 8648 10433 7311 +8814 11503 7867 11387 8557 +8815 8195 7270 10043 9119 +8816 10343 6471 8605 9923 +8817 11721 8679 12276 8037 +8818 7232 9022 6537 9969 +8819 6633 9253 7214 9927 +8820 10996 11716 7937 8854 +8821 11173 8583 11753 7946 +8822 9065 12233 8386 7017 +8823 6660 10900 7887 9134 +8824 6257 9299 7715 9330 +8825 8952 6360 9730 9597 +8826 9781 9345 9842 6627 +8827 9184 10446 6786 8648 +8828 8173 10866 6792 11062 +8829 9276 9860 9818 7684 +8830 9693 9100 11574 6584 +8831 7484 11372 8304 10477 +8832 6861 10086 7297 8902 +8833 9111 8972 10013 6317 +8834 6498 9161 7122 10077 +8835 9629 6737 10869 8769 +8836 9188 9637 9806 7380 +8837 9462 9817 9673 7434 +8838 7180 8712 6491 10360 +8839 8551 9714 9965 7269 +8840 10064 6961 11787 8547 +8841 8433 7163 11926 9104 +8842 11593 7983 9503 6488 +8843 9854 10956 10092 7208 +8844 10311 8589 11060 6438 +8845 9450 12233 9065 6759 +8846 9683 7549 10969 8562 +8847 11230 9284 10225 7530 +8848 11791 9008 10755 8116 +8849 10268 9273 12086 6382 +8850 6921 10075 11558 8708 +8851 9532 8767 11527 7514 +8852 9604 7210 10455 9737 +8853 9581 8560 10253 7186 +8854 7889 11969 6250 9544 +8855 7444 10783 7088 10235 +8856 9615 8565 11351 6373 +8857 8891 7078 11998 9665 +8858 10706 9586 11916 7903 +8859 9325 9681 9871 7289 +8860 6883 8935 11475 8494 +8861 7661 10223 6793 9257 +8862 10956 11756 8709 6517 +8863 8710 8741 12018 6766 +8864 8660 8026 11575 10738 +8865 9683 8859 10153 7301 +8866 7731 8148 9735 6566 +8867 8192 10789 6398 11835 +8868 7321 9837 6617 9453 +8869 9684 9816 9483 7429 +8870 6312 9059 7371 10134 +8871 11430 12036 11510 7847 +8872 7242 9964 6373 9108 +8873 10787 11675 9516 8122 +8874 6825 10461 7848 10317 +8875 9423 7215 9872 9374 +8876 10100 8133 10890 7534 +8877 8135 11554 6919 9233 +8878 8580 8579 11815 6946 +8879 10823 8570 11415 7622 +8880 9981 9295 9956 7469 +8881 9207 6685 9565 9416 +8882 8741 6526 11199 8742 +8883 9579 10622 10192 6715 +8884 10005 7448 11106 8594 +8885 10973 8112 11274 6876 +8886 8551 7269 12116 9110 +8887 11892 7230 11377 8253 +8888 6704 11793 7450 8681 +8889 6725 11326 8163 10427 +8890 7651 10644 7137 10966 +8891 8784 7207 11587 10937 +8892 7409 8374 9091 6657 +8893 9701 9833 9508 6619 +8894 9024 7152 10231 10809 +8895 9751 9706 9950 9337 +8896 9582 9265 11795 7132 +8897 6763 10225 9284 7531 +8898 12015 6529 11911 8764 +8899 9940 6658 10865 8592 +8900 7821 9134 7035 9002 +8901 9737 7495 10127 9604 +8902 10777 9579 7626 10778 +8903 11127 8284 9955 7843 +8904 10313 7656 10320 10226 +8905 8192 8824 7900 10789 +8906 8931 8678 10506 6396 +8907 9878 10306 9343 10191 +8908 6262 9002 8484 12135 +8909 7523 8473 11405 9819 +8910 8510 9935 7670 11118 +8911 7360 9849 6618 9500 +8912 8028 9123 11514 7246 +8913 6743 8717 7166 10948 +8914 9627 9704 10082 7385 +8915 6924 10340 7919 8761 +8916 6678 9342 11653 8296 +8917 7290 9835 6571 9546 +8918 9276 7226 9480 9860 +8919 8565 11909 6612 9127 +8920 6315 10034 7830 10626 +8921 8837 10529 8143 6372 +8922 10265 8619 9525 7405 +8923 10226 7439 9519 10313 +8924 9596 7421 10211 6770 +8925 7943 9567 7069 10441 +8926 6275 7825 11231 8469 +8927 8415 11703 7055 10422 +8928 7443 9338 6518 10282 +8929 11619 6941 10329 9060 +8930 8747 11489 9583 7155 +8931 8326 9844 11635 6867 +8932 9710 8685 11637 7366 +8933 7194 8578 6412 11180 +8934 8923 7317 9887 9417 +8935 9380 9517 9920 7327 +8936 10008 6510 11309 8579 +8937 9198 9400 9893 6576 +8938 7192 10183 7507 9824 +8939 8043 10866 8173 8729 +8940 10807 7778 6863 7568 +8941 9580 8807 10275 7406 +8942 6543 12253 8542 9181 +8943 7551 10055 8786 6748 +8944 7168 9891 7380 9806 +8945 8960 7010 8929 10245 +8946 7064 10831 7850 9993 +8947 11787 9112 10230 7640 +8948 8734 7059 11349 8584 +8949 8031 9741 11392 6401 +8950 11095 7471 6950 8649 +8951 9369 8611 12070 7533 +8952 9790 7324 11428 8597 +8953 11846 8583 11173 7782 +8954 11795 7536 10641 8069 +8955 8554 6415 10453 9638 +8956 9827 8614 11375 6481 +8957 7551 8766 11765 7550 +8958 11409 10124 11497 7878 +8959 7072 8570 10823 9845 +8960 7154 10248 6570 8840 +8961 7552 9156 11030 8413 +8962 12035 9064 6984 11967 +8963 8981 7486 10017 9907 +8964 6827 8675 11107 7832 +8965 9267 7234 10580 9268 +8966 7300 10268 7614 9858 +8967 6943 11112 7881 10384 +8968 6682 7902 7099 9514 +8969 8429 6306 11513 10370 +8970 8592 7199 9293 9940 +8971 9606 6414 11414 8676 +8972 10419 8676 11414 7676 +8973 7712 12111 6982 10207 +8974 8023 8307 11740 9540 +8975 9149 6475 10585 8661 +8976 9933 9897 9445 7283 +8977 11733 8869 10709 7516 +8978 7340 9365 6634 9925 +8979 6496 10369 11313 9598 +8980 9574 7401 9653 9896 +8981 7199 9944 6604 9293 +8982 7098 10737 6668 8625 +8983 6244 11442 8187 10229 +8984 7784 10085 6406 9967 +8985 9434 9205 9214 6649 +8986 11952 7626 9579 11094 +8987 7527 12002 10959 8718 +8988 7978 10121 7547 11244 +8989 11233 8594 11106 6321 +8990 10598 8690 10943 7583 +8991 9001 8636 11825 6542 +8992 8984 8646 11233 6321 +8993 10473 7876 12117 8598 +8994 6877 8092 11237 8777 +8995 6987 9030 10923 7731 +8996 7831 11174 6835 10713 +8997 8783 8654 11927 6335 +8998 12234 10830 6767 9329 +8999 8272 10347 7326 12197 +9000 8864 6612 11909 9255 +9001 8219 8667 12013 6920 +9002 9484 9118 10322 7355 +9003 8561 11864 7812 10552 +9004 10875 7977 11300 6445 +9005 8015 10686 11802 9580 +9006 9868 8600 10893 6565 +9007 8910 7152 11088 8911 +9008 7893 11347 8985 7367 +9009 8695 7212 10091 10208 +9010 9653 7588 11786 8656 +9011 12215 8750 10726 114 +9012 9893 9933 9405 6576 +9013 7724 9094 6332 11102 +9014 9293 6604 9337 9950 +9015 9535 10729 8685 6572 +9016 10412 6679 11354 8606 +9017 10390 8606 11354 7620 +9018 6291 8755 11773 10133 +9019 6973 7992 11620 8618 +9020 11617 6782 12251 8715 +9021 10972 8718 10959 7601 +9022 10878 7713 8457 10803 +9023 6504 8699 10710 8283 +9024 6357 11474 10454 8285 +9025 8260 6942 9663 8710 +9026 11784 7607 11299 9515 +9027 11987 7147 9515 11299 +9028 6250 10231 7152 8910 +9029 11234 11507 10030 6582 +9030 8387 9951 116 117 +9031 6365 10255 7187 8878 +9032 10208 6672 12129 8695 +9033 7069 8933 6427 10441 +9034 11809 6413 10751 9260 +9035 9674 7119 9129 10047 +9036 8984 8851 10292 7195 +9037 7661 10111 7178 9898 +9038 6821 9635 8056 11554 +9039 8239 9854 8634 6802 +9040 6734 10844 6252 9494 +9041 7679 10860 7143 9746 +9042 7118 10324 11687 7594 +9043 8055 8673 10763 6774 +9044 8707 10376 9185 7033 +9045 7394 9669 6352 9852 +9046 7092 9887 7317 9841 +9047 11728 6363 11010 7179 +9048 10945 7453 11403 8355 +9049 9327 7939 12143 11283 +9050 7396 8862 6806 11436 +9051 6844 9855 7770 10748 +9052 8073 10913 6681 9769 +9053 10771 9648 9927 7214 +9054 6900 10523 10050 8430 +9055 9561 10678 10431 7636 +9056 8818 6251 11644 8610 +9057 8730 6330 10543 9882 +9058 9995 7385 9568 10160 +9059 9304 6887 10723 11893 +9060 7692 9547 6695 10757 +9061 8448 6574 9512 10662 +9062 8982 11479 7655 11063 +9063 6518 10309 7576 10282 +9064 9683 6522 10372 8859 +9065 9036 7437 9830 9871 +9066 12262 9451 6898 9450 +9067 9906 7345 9164 11104 +9068 7040 11990 8052 11885 +9069 11375 8614 12151 7073 +9070 9969 8853 10326 7529 +9071 9069 10732 6708 11770 +9072 9502 8884 10344 7419 +9073 7343 10307 11441 8817 +9074 8738 10252 8918 7029 +9075 11933 7650 12231 8944 +9076 7764 11964 9939 9222 +9077 8077 10533 11724 6502 +9078 11804 8652 10791 7838 +9079 8523 10792 12109 8522 +9080 8876 7305 10254 8919 +9081 10128 8182 10765 7476 +9082 8398 8691 11669 6936 +9083 8656 6610 9896 9653 +9084 7657 11375 7073 8762 +9085 11432 6862 11621 8651 +9086 9220 7402 10609 9947 +9087 7486 8981 6472 10190 +9088 6553 8049 10202 10733 +9089 12116 7269 9965 9436 +9090 7875 9189 6266 10056 +9091 8994 9996 9531 7407 +9092 8476 8640 10853 6533 +9093 10162 8782 10925 7094 +9094 8390 6861 9023 11581 +9095 7098 11221 7947 10737 +9096 8835 6866 11924 9747 +9097 9301 7218 9983 9402 +9098 8070 9606 7176 11070 +9099 8069 10525 7132 11795 +9100 7593 9150 7063 10694 +9101 10665 8901 10645 7866 +9102 9690 6623 9545 9931 +9103 8739 11811 6253 9626 +9104 10555 8367 11642 7663 +9105 6365 9695 7772 10255 +9106 10621 7586 11026 9102 +9107 11229 9801 11498 7811 +9108 9432 11017 8147 8623 +9109 8595 6901 10699 8961 +9110 10926 6558 8908 10366 +9111 7730 8624 11434 6858 +9112 9017 9287 10031 6281 +9113 6756 9774 7493 10006 +9114 9749 10933 10597 7051 +9115 10879 9847 11589 8029 +9116 11584 8226 12153 9939 +9117 7791 9888 7140 9671 +9118 10786 8645 11674 7009 +9119 6975 11497 6443 8633 +9120 6303 10068 8055 11481 +9121 11070 7176 11699 8813 +9122 10521 8813 11699 7777 +9123 6409 10181 7834 11382 +9124 8209 8880 10361 6925 +9125 9505 7480 10415 10720 +9126 7750 10911 8007 9729 +9127 7083 10132 7477 9109 +9128 9390 9218 10496 7082 +9129 10681 6636 10459 8793 +9130 7707 10886 6711 10492 +9131 11841 10540 10892 6269 +9132 6610 9658 7520 9896 +9133 11602 11719 9937 8164 +9134 8929 7010 10286 8928 +9135 8980 6506 10846 7096 +9136 8283 10710 10584 6811 +9137 7822 8828 11212 6990 +9138 9256 6635 10407 9414 +9139 10142 7007 11538 9063 +9140 9981 7455 10325 9295 +9141 10780 10287 9295 10325 +9142 8124 8666 11789 6299 +9143 8693 7036 10393 9793 +9144 11239 9399 10559 7202 +9145 10354 7408 11581 9023 +9146 8072 10657 6921 8708 +9147 9136 8726 12192 7320 +9148 8104 10640 6958 9113 +9149 8004 9055 7247 11704 +9150 9417 7115 10309 8923 +9151 7329 9148 8163 11326 +9152 8607 8170 12265 11130 +9153 10166 9932 10453 6415 +9154 8292 6757 11730 8662 +9155 12216 8791 10540 6538 +9156 7205 8644 6561 11042 +9157 7698 11251 7354 9719 +9158 6269 9811 8238 10839 +9159 9370 7837 11759 10126 +9160 6999 8287 12021 8949 +9161 8508 9110 12116 6339 +9162 7646 8392 10076 6247 +9163 7820 10541 7545 10634 +9164 6826 8609 11125 7051 +9165 7684 10549 6594 9276 +9166 9056 9519 9634 7261 +9167 9173 9044 11686 6252 +9168 7524 11225 10716 8664 +9169 6948 8661 10585 11023 +9170 6864 11054 10479 7911 +9171 10083 6981 10447 9114 +9172 9742 6273 10101 9331 +9173 7663 8418 11503 10555 +9174 8557 6779 10555 11503 +9175 9999 6653 11871 11903 +9176 6616 8928 10286 11389 +9177 6617 10069 7238 9296 +9178 6601 9440 7572 9269 +9179 8300 7489 10653 11724 +9180 8644 9092 10845 6561 +9181 8855 6643 11741 8670 +9182 10650 8176 10881 7031 +9183 8403 7312 11018 8833 +9184 7017 8386 6455 11611 +9185 10981 6495 11098 11151 +9186 8673 8055 10068 6848 +9187 11592 8093 11303 9011 +9188 7533 10425 7253 9369 +9189 9606 8676 11774 7176 +9190 10018 10222 10644 7651 +9191 9420 7289 9871 9830 +9192 11054 6864 9562 11455 +9193 7998 11866 6692 9501 +9194 10156 10253 8560 6837 +9195 9997 7570 10806 8694 +9196 7347 9692 8126 12077 +9197 9031 6388 10612 10411 +9198 6927 11706 7839 9407 +9199 9520 7241 11076 10794 +9200 6832 8925 7211 11468 +9201 8623 6882 8806 12164 +9202 7271 12174 12164 8806 +9203 6258 10110 7420 9348 +9204 9874 8506 11248 6294 +9205 10013 7213 10210 6317 +9206 8898 9892 10615 7515 +9207 8656 9531 9996 6610 +9208 8728 7247 12263 8757 +9209 8768 180 181 10864 +9210 7700 9677 7561 10269 +9211 10064 9007 10735 6961 +9212 9299 9883 10818 7447 +9213 6786 9084 11838 8648 +9214 8861 6348 10021 9556 +9215 7970 10103 6709 9666 +9216 7068 11160 7972 10518 +9217 9575 7357 12203 8917 +9218 10414 7415 11233 8646 +9219 7801 9650 7180 10360 +9220 8984 7195 11624 8646 +9221 7130 10272 8046 11287 +9222 9222 9939 12153 8423 +9223 10950 6292 9428 10291 +9224 7886 6580 11401 9552 +9225 6885 10429 12096 8172 +9226 9184 7311 9489 6393 +9227 8440 11502 7829 9625 +9228 6344 9028 7596 9867 +9229 7812 9975 7140 9700 +9230 8253 8653 11373 6546 +9231 9112 6669 11947 10230 +9232 10869 7565 11072 8769 +9233 8022 11037 6808 11538 +9234 10294 7596 11965 8574 +9235 8051 10982 11141 6862 +9236 7417 8224 12084 10624 +9237 9917 9331 10101 7400 +9238 7886 8657 10980 6580 +9239 8467 9291 10120 6638 +9240 6630 10116 7477 10132 +9241 11832 6874 11841 8890 +9242 6864 11131 12270 9562 +9243 169 170 11735 8689 +9244 7644 10289 11656 9010 +9245 9346 106 107 12225 +9246 6474 11913 9385 8679 +9247 8822 188 189 10049 +9248 8079 10535 8166 11688 +9249 8300 11739 9177 6544 +9250 9149 8881 12228 6475 +9251 12259 7074 11533 8613 +9252 6641 10123 7435 10047 +9253 6442 7916 10530 11948 +9254 10781 6309 10118 7902 +9255 9907 10017 10195 6949 +9256 9628 11347 7893 12212 +9257 8590 7211 8925 10548 +9258 7677 9426 7004 10849 +9259 6964 11105 7546 8677 +9260 11957 8749 12137 6736 +9261 10348 6406 10085 11712 +9262 10136 7395 9978 6545 +9263 8049 6553 11576 8772 +9264 6308 7826 11942 9252 +9265 9231 9987 9739 7442 +9266 9942 6509 10952 9087 +9267 10219 6903 11637 8685 +9268 8128 11128 6767 10272 +9269 7502 10082 6272 9796 +9270 10225 6763 10785 7686 +9271 9927 9648 10204 7508 +9272 10771 6382 10204 9648 +9273 12099 6499 8702 11842 +9274 7493 10570 8020 10795 +9275 8065 9434 7024 12158 +9276 7418 12089 8549 12170 +9277 11443 7805 12132 8947 +9278 6585 10960 7772 9984 +9279 7385 9995 6634 9627 +9280 10013 9956 9707 7213 +9281 10329 7206 12159 9060 +9282 8168 11256 7859 9782 +9283 10038 8688 11142 7610 +9284 12249 9019 10156 6837 +9285 10378 9196 10175 7336 +9286 10621 8667 11284 6613 +9287 9925 6634 9995 9644 +9288 10160 7569 9644 9995 +9289 10661 8232 10998 7729 +9290 10378 8758 7487 10717 +9291 190 191 10829 7680 +9292 7995 7405 9525 12146 +9293 7210 10782 7774 10455 +9294 7585 10057 7422 10058 +9295 10885 7175 10423 8970 +9296 9966 6342 10638 8780 +9297 7413 11532 6469 8682 +9298 10908 6423 11427 8672 +9299 10047 9129 10531 6641 +9300 9638 7511 10531 9129 +9301 6967 10025 7874 11396 +9302 6459 11141 10982 8663 +9303 6265 7940 10187 9668 +9304 10278 10408 9902 6687 +9305 7102 11260 8105 10629 +9306 10420 8919 11548 7479 +9307 9170 9049 11168 6639 +9308 10743 7609 11071 8688 +9309 8238 6866 11756 8239 +9310 6719 10416 7814 10460 +9311 10694 9053 11911 6529 +9312 6948 9984 7772 9696 +9313 8174 6741 7858 11203 +9314 9133 7800 9530 9828 +9315 8695 7485 9425 7212 +9316 11437 6350 11418 8921 +9317 9767 8745 10814 7602 +9318 8329 6430 11752 9332 +9319 9540 10931 11266 8023 +9320 10639 7817 10267 10816 +9321 10063 6969 11657 8700 +9322 10245 8700 11657 7704 +9323 9677 6654 11879 9180 +9324 11040 9271 11602 6791 +9325 8200 10867 7709 10894 +9326 8323 11285 131 132 +9327 9961 6637 10222 9175 +9328 8736 10770 8761 6425 +9329 6910 12073 8439 10989 +9330 8163 10454 7503 10427 +9331 7573 10101 6273 9572 +9332 9294 6633 10186 9249 +9333 9406 9412 10542 8856 +9334 7824 9843 7165 9470 +9335 10640 7680 10829 8801 +9336 7612 8757 12263 10305 +9337 7526 9461 7506 10114 +9338 9166 8814 10733 7438 +9339 9426 7677 10125 10491 +9340 9570 6646 9739 9987 +9341 12206 7982 10524 9024 +9342 10339 10776 12192 8726 +9343 6798 7962 10536 10836 +9344 7342 10298 7076 9087 +9345 7560 9998 7584 9999 +9346 12055 8241 11302 9115 +9347 6680 10994 8373 11516 +9348 6289 10127 7588 10042 +9349 6614 8841 11579 9790 +9350 10313 8694 11931 7656 +9351 7406 11954 8015 9580 +9352 10635 8860 11742 6956 +9353 6744 11663 8081 11153 +9354 11376 8699 11511 7020 +9355 6573 9393 10359 12127 +9356 8396 9185 6364 11282 +9357 8525 7012 10837 9484 +9358 9037 9096 10304 7159 +9359 11600 9799 11161 7323 +9360 9460 8697 11426 6917 +9361 9343 8961 10699 10191 +9362 11784 8188 11760 6789 +9363 9985 6472 8718 10972 +9364 9952 9208 10235 7088 +9365 8844 7549 9683 10350 +9366 7154 9644 7569 10421 +9367 7558 10148 6625 10889 +9368 6633 9927 7508 10186 +9369 8950 9437 10314 7135 +9370 167 168 11006 8998 +9371 10245 7704 11068 8960 +9372 176 8960 11068 175 +9373 12001 6996 10513 8631 +9374 8289 9514 12216 10914 +9375 9929 10099 11140 7404 +9376 11842 8702 11176 7262 +9377 10300 6661 8827 11306 +9378 12226 8304 11372 6907 +9379 10936 7664 11324 8705 +9380 11267 7343 11174 9641 +9381 11667 7460 10928 8982 +9382 6718 10431 7788 10362 +9383 9096 6285 11278 10304 +9384 11176 8702 12010 6934 +9385 8825 10740 10048 6859 +9386 10146 9884 10660 6626 +9387 7763 10264 10897 6930 +9388 7455 9981 6524 9813 +9389 8381 9366 10808 7146 +9390 6877 9394 11356 8092 +9391 11708 10170 7783 11257 +9392 8846 6626 10660 11385 +9393 9638 10453 8963 7511 +9394 6300 9928 7474 10165 +9395 10021 7436 10135 9556 +9396 8732 9494 6495 10981 +9397 7556 10172 6687 9902 +9398 8930 8832 10654 6974 +9399 10414 6683 8708 11558 +9400 11990 7040 11156 8763 +9401 8409 6962 12257 8771 +9402 10205 6270 9081 10349 +9403 12031 9397 10462 8258 +9404 11768 6940 9797 9812 +9405 6559 9779 7789 10714 +9406 11919 8204 11423 6479 +9407 9517 9380 10183 7192 +9408 11905 8706 11319 6954 +9409 8268 6759 11990 8763 +9410 6751 10157 7495 9737 +9411 8742 7129 12018 8741 +9412 9629 8769 11072 7523 +9413 10596 9079 10654 7528 +9414 11249 6974 10654 9079 +9415 11478 7952 11811 8739 +9416 6994 9618 7408 10308 +9417 10176 7190 10406 9027 +9418 10353 6553 10733 8814 +9419 9169 11529 6762 10058 +9420 9946 7370 11665 9050 +9421 6604 9944 7499 10314 +9422 7150 9901 7882 11627 +9423 7686 10785 6511 7445 +9424 8893 7697 11038 8378 +9425 174 8740 8305 173 +9426 11874 8824 10724 6745 +9427 8434 10658 6871 11658 +9428 10300 11306 7987 12074 +9429 9536 7189 9556 10135 +9430 8393 11852 7087 9881 +9431 6349 8856 10542 11476 +9432 6254 11530 7095 8630 +9433 6438 7987 11306 10311 +9434 11957 7890 12134 8749 +9435 8323 132 133 10734 +9436 6911 9759 9605 8344 +9437 9263 8731 11312 6922 +9438 9214 9205 12213 7807 +9439 6507 8731 7399 11668 +9440 8965 9604 10127 6289 +9441 10256 8857 11815 7775 +9442 11478 8739 11096 6843 +9443 7419 10344 6673 9645 +9444 8305 8740 11657 6969 +9445 11068 7704 11657 8740 +9446 9296 9273 10268 7300 +9447 8694 10313 9519 6647 +9448 9747 11924 9811 7217 +9449 7982 6424 11046 10524 +9450 11344 6554 11794 8832 +9451 8945 6435 11550 8925 +9452 10411 10195 10017 7470 +9453 10279 6616 10847 9090 +9454 10493 7648 10138 10560 +9455 7451 9757 7256 10106 +9456 7606 10065 6314 10179 +9457 11346 10446 9184 7701 +9458 12146 10002 11853 10527 +9459 11506 8713 10119 7318 +9460 7058 10464 8308 11818 +9461 8584 7056 11214 8734 +9462 9569 6272 10082 9704 +9463 11346 7788 11629 8725 +9464 10075 6921 11773 8755 +9465 10358 6781 11618 9672 +9466 11342 8111 11869 6536 +9467 10063 8735 11535 7665 +9468 7904 6880 10059 9834 +9469 7875 11979 6666 10199 +9470 11535 8735 11241 6995 +9471 7809 9763 6850 10061 +9472 7799 10164 6912 11077 +9473 6870 10357 7623 10628 +9474 9247 6751 9737 10455 +9475 8840 6570 10522 9251 +9476 7595 11434 8624 10989 +9477 7920 6877 10895 9447 +9478 9994 8968 10916 7337 +9479 8736 6943 11595 8737 +9480 7566 9873 7572 9440 +9481 10759 8810 11566 7473 +9482 11328 6810 11578 7745 +9483 9026 8223 11052 11625 +9484 9099 10924 11803 6348 +9485 9837 10160 9568 6617 +9486 9982 8738 11429 6271 +9487 8721 7043 11758 8722 +9488 10268 8999 10492 7614 +9489 9023 12239 6411 10354 +9490 8365 7281 9809 9364 +9491 9411 10836 11912 8976 +9492 9477 9414 10407 7307 +9493 11540 8911 11088 6714 +9494 7278 8091 10676 9611 +9495 11747 11735 170 171 +9496 6969 11735 11747 8305 +9497 6594 10549 7759 9762 +9498 7079 8048 12082 8793 +9499 11891 6462 11672 8868 +9500 8281 9324 11984 7142 +9501 10089 8358 10055 7149 +9502 10726 8750 11281 7603 +9503 7586 10263 7723 10355 +9504 10607 8454 11404 8057 +9505 10510 7894 10755 9008 +9506 12254 9713 10136 7872 +9507 11435 8190 11276 6926 +9508 10425 7533 10044 10079 +9509 7033 6444 11718 8707 +9510 10847 6616 11389 8771 +9511 9705 10180 9950 9706 +9512 7200 8407 9536 11966 +9513 10238 8756 11604 7104 +9514 8005 11477 8703 12064 +9515 7657 10588 7896 11711 +9516 8268 8763 11156 7481 +9517 9290 8586 12178 7472 +9518 11653 7032 10749 8767 +9519 11109 8985 11347 7060 +9520 10326 6671 12066 7529 +9521 7815 11217 8186 8846 +9522 8111 6669 11047 8931 +9523 10732 9332 10764 6708 +9524 9832 7470 10017 7486 +9525 8737 6560 8955 10589 +9526 8296 11805 7432 12186 +9527 9642 7232 9969 10383 +9528 7537 10080 7639 10274 +9529 10238 6349 11476 8756 +9530 11534 9881 11837 6814 +9531 12018 7129 10645 8372 +9532 10277 6434 11788 8904 +9533 7030 11080 6758 8765 +9534 6925 11989 7738 10750 +9535 6797 12189 8008 10112 +9536 11404 9709 9808 7028 +9537 8067 10562 7581 10973 +9538 8195 11138 7667 11321 +9539 7685 9818 6274 10079 +9540 10510 9008 11316 7423 +9541 8514 9766 10554 7141 +9542 7240 7958 11847 10497 +9543 7038 11951 7773 8789 +9544 6298 9509 7581 10562 +9545 7461 9409 6271 10365 +9546 9633 8286 10619 7765 +9547 8659 7042 11004 8788 +9548 9858 7614 10974 9154 +9549 159 160 11458 10066 +9550 12065 7711 9665 8115 +9551 8076 11880 8075 10688 +9552 6450 8991 7961 10563 +9553 7565 8841 6614 11072 +9554 8016 11336 7870 8764 +9555 8489 11213 8768 7575 +9556 11630 8768 11213 6962 +9557 7448 11042 6561 8903 +9558 9665 7711 6337 8891 +9559 8598 12117 110 111 +9560 8068 11580 6838 10139 +9561 8295 12224 6357 10628 +9562 9683 7301 10056 10350 +9563 7302 9194 6513 10598 +9564 8868 11992 9200 6954 +9565 9531 9520 12223 7407 +9566 8776 7167 10266 9481 +9567 11752 7414 10764 9332 +9568 7892 11472 8274 10553 +9569 9062 7389 12066 8807 +9570 9055 11651 12263 7247 +9571 9874 7084 12069 8506 +9572 10804 6536 11203 7858 +9573 7463 10192 7635 10171 +9574 9505 10720 10290 7491 +9575 6984 8040 10834 11967 +9576 10358 9672 12082 8048 +9577 8815 6849 8460 9541 +9578 6527 11067 7866 10512 +9579 9491 9069 11527 6809 +9580 7401 10420 7479 10042 +9581 10880 9285 7418 10382 +9582 9392 10331 9471 7108 +9583 10551 8795 11878 6652 +9584 10983 7754 11878 8795 +9585 7080 8151 10763 9861 +9586 9624 9157 10889 7573 +9587 11122 8890 11841 6269 +9588 8984 7093 12253 8851 +9589 10252 6680 11516 8918 +9590 10702 8918 11516 7705 +9591 10239 8956 12247 7891 +9592 11171 6998 12247 8956 +9593 8768 11630 179 180 +9594 10417 9890 12003 7542 +9595 9884 11350 10216 7574 +9596 7570 9795 6720 10806 +9597 9804 7473 11566 8877 +9598 10472 9953 10040 7466 +9599 9115 7151 8819 12055 +9600 6928 9974 8309 11379 +9601 12073 8802 11903 7930 +9602 10175 9196 11418 6350 +9603 7307 10407 7868 10845 +9604 8773 7307 10845 9092 +9605 8555 7675 11856 9924 +9606 11232 7376 9605 9759 +9607 7759 11768 9812 11380 +9608 8820 8821 12032 7153 +9609 12154 6800 11070 8813 +9610 11202 9609 10402 6581 +9611 11720 8083 11437 8781 +9612 7432 11805 8193 11935 +9613 9461 7526 9950 10180 +9614 9392 7108 10359 9393 +9615 6811 7967 11604 10251 +9616 6378 11877 7480 10331 +9617 8633 6893 11123 7313 +9618 8816 8815 9541 7372 +9619 9660 9357 8000 12232 +9620 7163 9734 8555 11926 +9621 11473 8742 11199 7780 +9622 6855 11828 8345 12274 +9623 11800 7944 11816 10318 +9624 6640 10486 8297 9856 +9625 6525 10782 7210 8938 +9626 8965 7088 10783 8938 +9627 9938 8962 11639 6731 +9628 152 7 153 11483 +9629 6345 8155 10862 9240 +9630 7039 9660 7732 11011 +9631 10146 6947 11350 9884 +9632 10058 7422 12145 9169 +9633 7540 9083 7309 10071 +9634 9505 9471 10331 7480 +9635 10497 9091 6965 11689 +9636 8332 7388 11507 9607 +9637 7762 11335 7263 9404 +9638 10882 7929 10803 8457 +9639 6764 10452 7483 10901 +9640 10095 9216 10805 7645 +9641 6499 8395 11328 9986 +9642 8020 10992 7743 10635 +9643 9425 7485 11623 6560 +9644 9399 11239 9512 6574 +9645 10557 7428 11021 9791 +9646 8469 9083 11733 6275 +9647 9393 9058 10657 7446 +9648 10815 7723 10263 9718 +9649 8315 9718 10263 6613 +9650 11163 7639 10080 11866 +9651 6812 9777 7922 11592 +9652 10556 7583 10943 8274 +9653 8497 10643 6986 9088 +9654 7999 11308 141 142 +9655 7653 11220 8267 10848 +9656 10053 7000 11034 8958 +9657 9976 8313 12020 6707 +9658 11093 6477 10872 8377 +9659 130 12245 11612 129 +9660 7427 9846 6625 10148 +9661 8784 7069 9567 10342 +9662 7948 11491 6970 9973 +9663 8179 11766 6452 10232 +9664 10639 10816 9156 7552 +9665 8933 7069 8784 10937 +9666 11135 8924 11357 7592 +9667 11747 172 173 8305 +9668 10901 7750 11222 8848 +9669 11624 9468 11519 6683 +9670 7765 6295 11899 9633 +9671 6778 10511 8730 9877 +9672 10501 10066 11458 7963 +9673 9730 7397 10857 9597 +9674 12259 8564 12060 7074 +9675 8023 6829 11158 8307 +9676 8603 10041 11696 6595 +9677 6529 10666 7593 10694 +9678 10296 7591 11193 7913 +9679 10256 6436 11026 8857 +9680 7956 10141 7563 10299 +9681 10111 6407 11566 8810 +9682 8478 6883 12161 11918 +9683 11441 7655 11479 8817 +9684 9285 8872 10970 6457 +9685 8125 9621 6554 11344 +9686 11700 8377 11758 7043 +9687 10468 7179 11010 7329 +9688 8556 7021 9127 10550 +9689 142 9773 10469 7999 +9690 11164 8875 12198 7773 +9691 12060 8933 10937 7980 +9692 7156 9258 6696 10473 +9693 8529 8821 11750 8819 +9694 6768 8102 11087 10448 +9695 9061 11977 9383 6416 +9696 9254 6355 11035 9039 +9697 10773 7601 10959 9959 +9698 7011 8876 6686 10987 +9699 8102 10610 6473 11087 +9700 10713 11874 11764 7831 +9701 7466 9264 6288 10472 +9702 124 11520 123 6 +9703 7852 10144 6290 10907 +9704 10693 6418 10029 10363 +9705 6319 8010 12235 9810 +9706 7794 10531 7511 10398 +9707 6903 8447 11934 11637 +9708 10112 9046 11132 6797 +9709 7068 9164 7345 11160 +9710 10822 6975 8831 11831 +9711 7879 10496 7633 10614 +9712 10919 6656 11165 9120 +9713 7617 9571 6996 11311 +9714 10031 8843 11929 6281 +9715 11325 8350 11239 7202 +9716 10182 8250 11997 6544 +9717 9104 9362 10296 6703 +9718 6658 10114 7506 10040 +9719 6334 11340 7584 8823 +9720 8850 8879 10835 6341 +9721 7495 10157 7589 10315 +9722 9556 7189 12081 8861 +9723 12031 6955 12083 9397 +9724 10303 7654 10167 10484 +9725 8928 7500 12123 8929 +9726 9918 7411 12009 8853 +9727 7473 10270 7675 10271 +9728 9393 7446 10625 9392 +9729 9758 7620 11354 8829 +9730 10591 8829 11354 6679 +9731 10344 10098 10143 6673 +9732 10910 9220 11802 7827 +9733 9947 6541 11802 9220 +9734 7998 9501 7014 10379 +9735 8229 10155 10108 6869 +9736 8138 11090 11187 7689 +9737 10127 7495 10315 10036 +9738 12261 9654 7490 10675 +9739 8930 8599 11344 8832 +9740 7409 9667 6656 10285 +9741 8039 6330 8626 10692 +9742 7003 7776 10353 8814 +9743 7217 10129 6494 9747 +9744 11210 8590 10548 7668 +9745 9900 6596 10341 11697 +9746 7400 10258 6625 9712 +9747 11417 7095 10442 11843 +9748 10492 8999 10771 7707 +9749 7743 10415 7480 11877 +9750 10143 10098 10074 7555 +9751 6891 9820 8082 11732 +9752 11591 9876 10561 7733 +9753 11887 9067 12202 7880 +9754 6531 8978 11872 8979 +9755 8615 8979 11872 7013 +9756 11097 6841 12065 8115 +9757 9365 7340 10227 9794 +9758 7580 8904 11788 9635 +9759 6387 10018 7651 10471 +9760 6816 9738 7601 10773 +9761 6641 10531 7794 10419 +9762 11370 7873 10557 9791 +9763 9692 9053 10694 7063 +9764 7100 9377 12123 10465 +9765 7397 11953 8314 10857 +9766 8731 9263 11876 7399 +9767 8672 6981 11579 8841 +9768 10428 8860 11877 6378 +9769 8983 7200 11966 8865 +9770 8725 6786 10446 11346 +9771 11185 7643 11929 8843 +9772 6442 11133 8189 11194 +9773 10617 11897 11345 7066 +9774 8182 10457 11982 10765 +9775 7609 10742 6374 9600 +9776 9770 7431 10297 9160 +9777 11672 7373 11992 8868 +9778 8678 7299 10507 10506 +9779 10032 7703 9248 6500 +9780 9510 11814 11410 8186 +9781 6703 10437 8602 11785 +9782 7001 8216 7976 10445 +9783 12238 8900 11080 7030 +9784 7359 9227 6986 10643 +9785 10737 8966 11858 6668 +9786 10308 7779 11858 8966 +9787 7856 10394 11485 8352 +9788 7424 10188 6599 9410 +9789 9593 9657 12024 7465 +9790 8778 6584 11574 8847 +9791 7798 10535 6451 10439 +9792 7391 8533 12156 10115 +9793 113 9035 10760 112 +9794 10324 7118 10648 9511 +9795 11216 7562 11212 8828 +9796 10183 10074 10098 7507 +9797 10501 7963 12095 9506 +9798 6595 10741 10721 8603 +9799 10372 7370 12193 8859 +9800 8817 11479 6248 11814 +9801 6492 8620 6878 11694 +9802 7679 9746 7197 11836 +9803 8317 6973 12198 8875 +9804 10171 11431 10201 7463 +9805 11876 8896 11139 7399 +9806 10428 7412 11742 8860 +9807 7733 10646 6783 11591 +9808 198 199 11932 8875 +9809 11815 8857 12168 6946 +9810 8908 8921 11418 7375 +9811 12206 9024 10809 6738 +9812 10221 7899 11617 8715 +9813 10815 8922 12221 6320 +9814 11050 8917 12203 6508 +9815 8691 8973 8187 11669 +9816 11333 7463 10201 12154 +9817 9268 10580 10612 6388 +9818 10888 9752 10522 6570 +9819 9003 6747 12242 11236 +9820 10803 6716 10338 10878 +9821 8234 12145 7422 9460 +9822 10340 10516 12048 7919 +9823 6812 11114 8100 11779 +9824 6440 10863 8496 11751 +9825 10578 8895 12034 7580 +9826 8926 6261 9366 11622 +9827 7067 10639 7552 9534 +9828 7991 11259 7564 10458 +9829 9522 7112 12034 8895 +9830 6259 10556 8274 11472 +9831 6984 10113 10364 8040 +9832 109 11360 12051 9652 +9833 9499 6831 7688 11557 +9834 9630 7567 10346 10345 +9835 9018 10846 12104 8034 +9836 7101 9626 10384 7881 +9837 8650 10610 7284 9875 +9838 6983 9065 7017 9384 +9839 8123 6652 11878 8900 +9840 10242 8900 11878 7754 +9841 9535 7050 11369 8881 +9842 8427 6485 11536 8647 +9843 11653 9342 10109 7032 +9844 7112 8904 7580 12034 +9845 11357 8924 11796 158 +9846 10875 6445 12202 9067 +9847 10950 9010 10873 6292 +9848 7643 9782 6699 10715 +9849 9711 7282 9308 10569 +9850 10431 9136 10888 7636 +9851 6639 10566 7158 9170 +9852 6963 10023 11168 8264 +9853 9801 11229 10480 6851 +9854 11353 6490 10361 8880 +9855 8339 8903 7868 11265 +9856 9372 7159 10304 9997 +9857 11887 6960 11089 9067 +9858 10875 9067 11089 7600 +9859 11130 12265 10004 7543 +9860 7885 11261 6873 12098 +9861 9035 113 114 10726 +9862 9148 10587 11435 6926 +9863 7987 6438 10905 8448 +9864 7002 10819 7371 9059 +9865 8322 6444 11743 9368 +9866 7696 6483 10475 8499 +9867 10206 10138 10278 6687 +9868 7750 9729 6417 11222 +9869 8952 9597 10857 7164 +9870 10690 6267 11547 9043 +9871 7099 11565 6938 8791 +9872 10237 8947 12267 7846 +9873 6871 11119 8593 11658 +9874 11686 9044 11975 7638 +9875 11687 12269 10939 6460 +9876 8876 7011 11381 8907 +9877 8468 7174 11181 8936 +9878 6270 10205 7555 10074 +9879 8921 8908 11393 7044 +9880 9377 6480 8929 12123 +9881 8385 9086 10828 7059 +9882 9892 8898 12004 6965 +9883 8007 8210 11723 9729 +9884 8003 10485 6323 9518 +9885 7676 10633 7628 10450 +9886 8271 11645 7814 10416 +9887 7726 11190 8662 11730 +9888 10402 9609 11359 7035 +9889 8393 6928 11379 12061 +9890 10594 8715 12251 8027 +9891 6861 8902 11707 7953 +9892 9090 10847 7828 12083 +9893 7597 8987 7202 10559 +9894 9649 8466 11230 7530 +9895 7041 9714 8551 11825 +9896 8166 10535 7798 11446 +9897 12143 6381 9974 8207 +9898 11240 12137 10867 8200 +9899 11783 6755 10073 11826 +9900 11179 6311 11120 9126 +9901 8178 6897 11248 8506 +9902 8098 9469 6507 11668 +9903 7098 8912 6484 11470 +9904 9302 6732 12050 11243 +9905 7993 9772 12108 6432 +9906 8578 11994 10861 7850 +9907 8905 10383 9969 7529 +9908 8896 6915 11457 11139 +9909 9073 6305 11218 8298 +9910 8910 8911 11540 7124 +9911 7871 9992 6754 11636 +9912 10538 8704 10928 7460 +9913 8869 7540 12255 11701 +9914 8309 7510 11569 6282 +9915 6313 12237 8159 12003 +9916 6502 10109 9342 8077 +9917 10751 6935 7843 9260 +9918 8975 7086 9029 10918 +9919 182 9792 10864 181 +9920 9949 10173 9759 6911 +9921 10910 8971 11666 6991 +9922 10689 6853 10943 8690 +9923 7625 10595 7031 9850 +9924 9148 7329 11010 10587 +9925 6458 10709 8869 11701 +9926 8209 6989 11353 8880 +9927 10595 9246 10650 7031 +9928 10140 7150 11462 9159 +9929 10967 7906 10316 11989 +9930 11034 6674 12240 8958 +9931 6905 11682 7798 10439 +9932 6865 8236 10752 9594 +9933 11505 6733 9452 7339 +9934 7116 11378 8065 10840 +9935 10319 9375 12252 7057 +9936 10331 9392 10625 6378 +9937 8237 10619 7066 11345 +9938 9813 9132 10825 7455 +9939 9033 7137 10644 9334 +9940 7054 9557 7860 12033 +9941 8355 10370 11513 7768 +9942 7615 10052 6692 10293 +9943 8368 11988 7028 8410 +9944 10011 7094 10925 8321 +9945 11670 7776 10863 10130 +9946 9087 7076 11641 9942 +9947 12221 8922 11652 7835 +9948 8448 10905 7410 10067 +9949 7207 7783 11390 9078 +9950 7790 9289 8095 11449 +9951 10388 7554 10241 7537 +9952 10589 8955 11861 7752 +9953 8248 7025 11861 8955 +9954 11555 9208 11548 6605 +9955 7709 11928 9333 8526 +9956 6326 12200 8094 11493 +9957 8412 6556 9910 9608 +9958 10393 8892 7578 9793 +9959 7377 9340 7634 10896 +9960 6564 8706 11905 9436 +9961 10462 9233 11650 7478 +9962 7622 11415 6463 8941 +9963 11475 8935 11526 7905 +9964 7555 10172 7556 10143 +9965 7475 8486 10880 10424 +9966 8303 7045 11438 8941 +9967 9928 7292 12250 7474 +9968 8918 9347 10820 7029 +9969 7626 11952 7197 8581 +9970 10836 9411 11713 6798 +9971 11369 7050 10520 12219 +9972 8671 10736 143 144 +9973 196 197 11164 9174 +9974 9885 10142 9063 6376 +9975 11130 6836 10397 8607 +9976 8220 10521 6404 11647 +9977 8391 11742 7412 11559 +9978 8586 9290 11286 6501 +9979 11234 6582 10725 9566 +9980 8137 9013 11545 7079 +9981 10241 7554 10321 6390 +9982 7629 10332 7556 9902 +9983 11253 8426 11323 8006 +9984 8017 12207 8637 10851 +9985 6636 8942 7690 11685 +9986 11143 10009 11424 7468 +9987 6476 9333 11055 8502 +9988 131 8975 12245 130 +9989 7721 9856 6868 11983 +9990 11710 7559 11291 9014 +9991 8926 7396 11436 8680 +9992 8674 7253 10425 9776 +9993 8636 7177 10924 9099 +9994 8096 11046 7611 10784 +9995 11562 6363 10600 11829 +9996 7353 9709 11404 8454 +9997 6555 12188 7172 8973 +9998 8231 6639 11168 10023 +9999 8320 12176 7410 10905 +10000 8918 10702 6454 9347 +10001 9310 10223 10413 7612 +10002 9898 10413 10223 7661 +10003 11017 9432 10639 7067 +10004 11791 6983 11316 9008 +10005 10758 7348 12226 9715 +10006 8011 10090 7124 11540 +10007 8451 8948 10184 6359 +10008 6898 8386 12233 9450 +10009 9285 11366 9777 7418 +10010 9039 11035 12159 7206 +10011 8657 8484 11359 6937 +10012 6635 9823 7868 10407 +10013 8652 7342 9087 10952 +10014 7436 10877 6611 9632 +10015 9780 11322 10988 6256 +10016 8878 9838 12218 6365 +10017 8329 11933 8944 6857 +10018 7002 11613 6650 10819 +10019 9899 7633 10496 9218 +10020 11394 7173 10997 9646 +10021 9693 7497 11092 9100 +10022 7086 8975 131 11285 +10023 8617 9592 11920 6953 +10024 9126 7025 10919 9120 +10025 10218 7589 11593 10019 +10026 11769 11932 199 200 +10027 8598 111 112 10760 +10028 6773 10005 7870 11336 +10029 10768 9765 9028 6344 +10030 7627 11273 7055 9046 +10031 8548 9771 10443 7297 +10032 7519 9307 6727 10793 +10033 7925 10858 6884 10575 +10034 6736 10838 8507 11957 +10035 10053 8958 12240 7749 +10036 9996 8994 11245 7201 +10037 7454 9784 6242 10479 +10038 7104 11604 7967 10026 +10039 6966 10563 7961 11821 +10040 10432 10581 10280 7658 +10041 11063 6989 11667 8982 +10042 10909 8455 12125 7721 +10043 10138 7648 10321 10278 +10044 7575 11329 6821 9728 +10045 9994 11397 6463 8968 +10046 10308 8966 12019 6994 +10047 6370 9115 11302 8520 +10048 10409 11880 10357 6870 +10049 6923 11678 9740 8587 +10050 7762 11448 6435 9006 +10051 6566 9735 9152 11421 +10052 7354 11382 11937 10546 +10053 8498 9003 11236 7258 +10054 9932 7607 11573 7512 +10055 7555 10206 6687 10172 +10056 8301 183 184 10578 +10057 9329 6767 11128 9424 +10058 8484 9002 7035 11359 +10059 10379 7014 11187 9015 +10060 12033 7860 11159 11085 +10061 7135 10314 7499 9990 +10062 8695 10852 9744 7485 +10063 6476 11190 7726 11609 +10064 7909 11925 6878 8620 +10065 10132 7494 11717 6630 +10066 6672 9159 7853 12129 +10067 10843 8997 12242 6747 +10068 9761 8437 10964 11296 +10069 7587 10206 7555 10205 +10070 11893 8062 11147 9304 +10071 9886 9588 11930 9836 +10072 10252 9689 10707 6680 +10073 10282 7576 10707 9689 +10074 8253 11377 9717 7196 +10075 8115 9665 11998 6842 +10076 7619 10440 8256 11938 +10077 11055 9333 11928 6972 +10078 8826 10193 11318 7383 +10079 7995 6268 12272 7405 +10080 11880 10409 12114 8075 +10081 12131 9376 11034 7000 +10082 8506 12069 8714 8178 +10083 10321 7554 10408 10278 +10084 9649 11208 8188 6788 +10085 10148 7558 11282 10528 +10086 6744 11153 7136 9137 +10087 9909 6977 10944 9381 +10088 6952 12039 7633 9899 +10089 11300 7977 10698 7054 +10090 12023 7568 6863 8658 +10091 7778 11757 6386 10249 +10092 10468 12187 9789 7179 +10093 8241 10070 7465 12024 +10094 9509 9717 12179 7581 +10095 6641 10450 7628 10123 +10096 10664 7482 11188 9602 +10097 8477 8971 12090 6740 +10098 6332 10727 7430 9431 +10099 9815 8976 11912 6806 +10100 7536 11894 8178 10641 +10101 8300 6544 11997 9807 +10102 9667 9610 10921 9957 +10103 9109 9014 11291 6399 +10104 7004 8544 11024 10849 +10105 7126 8335 11872 8978 +10106 9118 9484 10837 7462 +10107 8161 10725 6582 9691 +10108 7931 10244 11851 10154 +10109 9977 10194 11147 7392 +10110 7105 10609 12112 9467 +10111 7923 7646 10095 11895 +10112 7089 8997 7606 11412 +10113 9920 7350 11168 9049 +10114 6673 10966 7137 9645 +10115 10241 10293 10080 7537 +10116 8287 11970 10576 7015 +10117 6547 10576 11970 8347 +10118 6746 9930 7521 10881 +10119 10151 8349 11686 7638 +10120 8364 10661 7729 12147 +10121 8985 8420 11493 7367 +10122 7440 9186 7989 11003 +10123 6712 9106 7158 11057 +10124 7068 9302 7600 11045 +10125 12067 9654 11693 7710 +10126 6878 11915 8774 11694 +10127 10072 8995 11504 7022 +10128 11883 6742 10766 9970 +10129 8263 9945 6365 12218 +10130 9290 7472 10260 11533 +10131 11286 9290 11533 7074 +10132 7228 11582 6730 9048 +10133 11836 7197 11952 8290 +10134 7660 10426 7608 10403 +10135 7447 10818 8276 9622 +10136 11583 7535 10547 9879 +10137 7850 10861 7430 9993 +10138 8524 8525 10214 6532 +10139 8454 9584 10629 7353 +10140 6527 9571 7617 11067 +10141 11006 7665 11535 8998 +10142 6294 11248 8064 12088 +10143 7892 10616 6446 9929 +10144 7684 10739 7759 10549 +10145 7306 10375 6729 9904 +10146 7655 11441 6694 9029 +10147 6560 8737 11595 9425 +10148 8576 10849 11024 6688 +10149 9761 11296 12205 7574 +10150 10040 10522 9752 7466 +10151 7615 10381 7666 10333 +10152 8291 6776 11007 9158 +10153 7605 10399 7658 10280 +10154 9930 8354 6488 10790 +10155 172 11747 171 8 +10156 12016 9457 11573 6789 +10157 6861 7953 12239 9023 +10158 10455 7774 11501 9247 +10159 8657 7563 11408 10980 +10160 6734 10440 7619 8286 +10161 6995 11241 9377 8315 +10162 7144 11677 7802 10673 +10163 8589 9748 6708 10764 +10164 6710 10189 7914 10495 +10165 11715 7736 10604 10312 +10166 9180 11879 7797 11939 +10167 11729 9522 11488 7813 +10168 6754 10457 8182 11636 +10169 10102 7075 10883 8887 +10170 8291 9158 11459 7117 +10171 6748 10603 6456 9765 +10172 142 143 10736 9773 +10173 10931 9540 11259 6430 +10174 10460 7814 11584 11778 +10175 6306 8428 11337 9499 +10176 7062 8280 11393 9538 +10177 7052 10669 7917 9585 +10178 8596 6337 7711 10779 +10179 10715 9027 11929 7643 +10180 12031 9032 12220 6955 +10181 10007 6320 12221 9032 +10182 10873 9010 11656 7097 +10183 11608 9719 10957 6410 +10184 10334 7625 11025 9316 +10185 11984 6856 10933 9749 +10186 10889 9157 11522 7558 +10187 200 5 105 11769 +10188 12002 8130 10781 6951 +10189 11823 6971 9810 12235 +10190 10752 7742 11270 9594 +10191 12072 10228 10365 6271 +10192 7553 9831 6722 10564 +10193 8881 7449 10729 9535 +10194 9428 7491 10290 10291 +10195 8557 9016 11643 7070 +10196 9596 11772 6763 7531 +10197 8510 6820 8358 9935 +10198 11942 8686 6746 9252 +10199 6747 12098 7849 10843 +10200 8355 7976 6402 10945 +10201 9155 6514 10020 10953 +10202 10564 7748 10953 10020 +10203 11060 8589 10764 7414 +10204 10279 9090 12220 7835 +10205 8661 7169 11115 9149 +10206 10096 7719 10777 10320 +10207 9123 8028 11654 10718 +10208 6485 8293 10947 10477 +10209 6790 10202 8049 11720 +10210 8747 9025 12053 7090 +10211 8908 7375 11775 10366 +10212 6440 11751 7764 9222 +10213 8288 9586 10706 6959 +10214 10536 8680 11912 10836 +10215 8837 8722 11758 7990 +10216 9818 10330 10739 7684 +10217 9878 10191 11225 7524 +10218 8791 7217 10892 10540 +10219 10690 9043 12195 8087 +10220 11995 8870 11204 7431 +10221 10277 9643 11564 7793 +10222 9299 6257 10507 9883 +10223 7412 10428 8072 11519 +10224 10142 9885 11372 7484 +10225 7328 11271 8000 6302 +10226 8600 9868 6898 9451 +10227 9303 9286 10960 6585 +10228 11544 11162 12085 8441 +10229 6865 9238 8045 11053 +10230 10444 10545 10333 7666 +10231 11795 9265 11453 7536 +10232 10507 7299 10818 9883 +10233 10406 6281 11929 9027 +10234 8564 12259 6848 10514 +10235 7430 10861 6850 9431 +10236 10083 9114 12132 7805 +10237 11811 7952 10748 11490 +10238 6390 10321 7648 10367 +10239 7597 10559 6782 12183 +10240 8789 7773 12198 10568 +10241 6457 10970 9359 8164 +10242 7621 10404 7654 10303 +10243 9167 7488 9043 11547 +10244 8088 10712 6881 11907 +10245 8025 10908 7565 10869 +10246 7496 9828 6667 10281 +10247 7589 10218 6752 10315 +10248 8496 11111 7764 11751 +10249 6431 11884 8009 10024 +10250 10374 9407 11220 7653 +10251 11427 6423 11220 9407 +10252 9058 7994 10133 11773 +10253 11061 9694 12020 8313 +10254 8257 10968 11761 8423 +10255 11787 6961 10735 9112 +10256 10543 6935 10751 9882 +10257 7042 11953 7397 9042 +10258 11435 10587 11010 8212 +10259 10370 8355 11403 6945 +10260 6635 12150 8002 9823 +10261 7824 9470 11698 6255 +10262 11561 11047 10735 9007 +10263 10685 6904 11500 8458 +10264 11200 7702 10702 7705 +10265 10689 7698 9719 11608 +10266 10887 9802 11451 7085 +10267 8445 11651 9055 6840 +10268 8625 10934 9914 7162 +10269 9692 7347 11911 9053 +10270 11577 7862 10137 10987 +10271 9654 8336 11563 7490 +10272 9064 12035 9376 6470 +10273 12266 6464 12264 9097 +10274 11764 9097 12264 7831 +10275 6556 8412 10319 7057 +10276 8552 9071 11685 7690 +10277 6307 10053 7749 11155 +10278 8208 7073 12151 9323 +10279 7810 9795 8205 12162 +10280 8224 9061 7933 11798 +10281 10598 6513 11038 8690 +10282 8552 7038 11681 9071 +10283 7694 10391 7695 10392 +10284 10459 6636 11685 9071 +10285 7621 10798 7733 10561 +10286 10293 10241 10381 7615 +10287 10131 8119 11235 7803 +10288 10417 6750 11175 10915 +10289 6532 10214 8254 11069 +10290 11904 7613 11170 9310 +10291 10223 9310 11170 6793 +10292 8696 6439 9797 7806 +10293 7882 9901 12171 10810 +10294 8801 10829 191 192 +10295 9780 6256 10546 11298 +10296 11039 6462 11891 9076 +10297 8591 6379 12156 9724 +10298 121 11041 9317 120 +10299 108 11189 12225 107 +10300 10596 6383 11846 9079 +10301 7064 9786 11853 8643 +10302 8029 12243 6889 10879 +10303 12220 9090 12083 6955 +10304 11638 8609 10211 7421 +10305 8946 10714 10924 7177 +10306 6892 10876 8605 12208 +10307 8146 11564 6690 11335 +10308 7877 11915 6878 11925 +10309 12132 9114 11537 6677 +10310 8775 7138 11962 9089 +10311 10860 7047 9457 12016 +10312 8497 9088 11879 6654 +10313 11886 6343 11514 9123 +10314 9610 6657 11847 10921 +10315 6906 8120 11780 9312 +10316 126 9312 11780 125 +10317 7912 9738 6816 10696 +10318 10449 6698 10481 10284 +10319 7027 11052 8223 12093 +10320 8612 11693 6808 11037 +10321 11497 10124 11288 6443 +10322 7547 10429 6885 10430 +10323 10663 10606 10327 7706 +10324 8194 6920 12013 9102 +10325 11574 9100 11944 7869 +10326 9787 9954 10896 6329 +10327 10773 10927 12044 6816 +10328 11079 11562 11829 7740 +10329 7608 10463 6689 10403 +10330 6756 10006 7782 11173 +10331 12133 11146 10741 8014 +10332 7248 9498 7046 10912 +10333 9362 9104 11926 7590 +10334 11777 10156 9019 7597 +10335 6453 9118 7462 9721 +10336 12035 7833 11034 9376 +10337 7700 10775 6654 9677 +10338 9821 7803 11235 6856 +10339 7520 9783 6383 10677 +10340 8818 9548 10964 6780 +10341 8060 11181 7174 10217 +10342 9416 9565 10346 7567 +10343 9168 6359 10185 9138 +10344 6643 8855 9973 12030 +10345 10373 10483 10399 7605 +10346 7705 11516 8373 11084 +10347 10277 7793 11455 9562 +10348 11900 9444 11461 7510 +10349 11007 7548 11459 9158 +10350 9199 11819 133 134 +10351 10390 7620 11855 9209 +10352 8825 11839 9161 11843 +10353 8723 8553 11310 6891 +10354 10823 12273 9474 6713 +10355 8408 6701 9804 10673 +10356 10137 7528 11794 9559 +10357 8552 9174 11951 7038 +10358 11164 7773 11951 9174 +10359 8875 11932 11769 8317 +10360 9902 10408 10283 7629 +10361 10388 10283 10408 7554 +10362 7537 10274 6688 10388 +10363 7549 9473 6737 10969 +10364 9877 10753 10804 6778 +10365 7845 10310 6650 11065 +10366 7896 10588 6754 9992 +10367 12037 9686 11120 6311 +10368 9088 6986 11889 11518 +10369 7239 8803 11518 11889 +10370 8799 6531 10573 8969 +10371 9624 6704 11522 9157 +10372 8485 10426 10167 6389 +10373 6845 11679 7791 9671 +10374 8768 10864 9792 7575 +10375 7820 9971 6823 10541 +10376 7392 9976 6707 9977 +10377 7895 7521 9930 10790 +10378 11538 6808 12261 9063 +10379 11087 7559 11710 10448 +10380 6789 11760 8668 12016 +10381 7103 9097 11764 10012 +10382 10547 7534 10890 9879 +10383 6510 10008 8385 10704 +10384 10796 10438 10157 6751 +10385 10893 8733 11009 6565 +10386 11238 7747 11763 9261 +10387 9886 9261 11763 6559 +10388 10560 6712 10401 10493 +10389 9979 10194 9977 7744 +10390 10469 9773 10736 7509 +10391 8831 7313 11999 9895 +10392 8981 9907 11374 7527 +10393 7718 11172 8311 11492 +10394 6267 10690 7820 10634 +10395 9667 9957 12058 6656 +10396 8777 11698 9470 7767 +10397 12187 7941 12277 9789 +10398 8649 6309 10781 8130 +10399 8372 6307 11155 10811 +10400 7130 12163 8128 10272 +10401 8615 9153 6879 8156 +10402 8378 7796 11481 10336 +10403 10457 8527 11646 7769 +10404 9319 7057 12252 9226 +10405 9667 7409 6657 9610 +10406 6959 10706 7543 10004 +10407 8094 9863 11061 6726 +10408 7956 10400 7538 11339 +10409 9516 11675 10547 7535 +10410 8483 11058 7745 11578 +10411 9929 6446 9809 10099 +10412 7871 11636 8182 10128 +10413 10079 10044 11205 7685 +10414 6857 8944 7901 11528 +10415 7535 11583 8095 11471 +10416 7798 11682 10679 8153 +10417 10202 6790 11512 9201 +10418 11602 9271 11807 7851 +10419 7464 11033 6246 9591 +10420 8580 6946 10355 11124 +10421 8564 10318 11816 6427 +10422 9499 11557 11107 8675 +10423 8413 11873 9534 7552 +10424 8028 7246 11826 10073 +10425 8571 10942 165 166 +10426 11784 6789 11573 7607 +10427 11029 9169 12145 6515 +10428 8434 7522 10491 10125 +10429 8835 7304 11726 8709 +10430 6345 9240 7244 8977 +10431 6980 10802 7737 9754 +10432 6485 10477 8304 11536 +10433 10337 10617 11035 6355 +10434 9677 9180 11666 7561 +10435 7395 10364 11886 12173 +10436 6805 8245 10873 9699 +10437 8399 11550 6435 11448 +10438 9952 7479 11548 9208 +10439 6641 10419 7676 10450 +10440 6909 7720 11899 6295 +10441 9062 9947 10609 7105 +10442 6491 9178 7101 12169 +10443 6972 8749 12134 9542 +10444 6728 7934 9375 10319 +10445 8758 9926 10935 6721 +10446 10462 9397 12115 6447 +10447 12083 7828 12115 9397 +10448 10264 7763 9882 10751 +10449 10052 7615 10333 10463 +10450 6595 11696 8082 9820 +10451 10440 6734 9494 8732 +10452 10266 7553 10564 10020 +10453 10489 7666 10381 10476 +10454 6464 12266 8308 10464 +10455 10119 6750 11572 11993 +10456 11819 9199 11725 7717 +10457 10025 6967 11725 9199 +10458 6664 9328 7513 11295 +10459 11159 8139 9845 11085 +10460 11128 9120 11165 9424 +10461 10327 10627 10581 10432 +10462 7081 10002 12146 9525 +10463 7085 8830 7932 10887 +10464 11666 9180 11939 6991 +10465 8566 177 178 10979 +10466 9351 7302 11114 9011 +10467 6973 8317 11972 9346 +10468 10250 9183 7970 12022 +10469 8150 11045 7600 11089 +10470 6547 11489 8747 11875 +10471 12139 9919 7482 10664 +10472 10426 7660 10484 10167 +10473 11920 6243 11211 6953 +10474 6322 9761 7574 10216 +10475 6539 10886 7707 10220 +10476 8683 11221 7098 11470 +10477 10481 7605 10280 10526 +10478 8203 11521 7652 10701 +10479 11500 6904 11400 10001 +10480 8301 11329 7575 9792 +10481 10494 6358 10087 10854 +10482 12175 8073 9769 6950 +10483 11948 9840 11133 6442 +10484 7023 11043 8194 11209 +10485 7318 10119 11993 8160 +10486 11298 7640 10230 9780 +10487 10484 6698 10449 10303 +10488 6455 11744 8510 11118 +10489 10493 10401 10436 7649 +10490 10062 9744 10852 6403 +10491 10337 7261 9634 10762 +10492 8689 11006 168 169 +10493 6942 11832 8890 11122 +10494 10134 8098 11139 11457 +10495 9506 12095 9202 7023 +10496 8693 10451 7766 7036 +10497 6719 10460 7757 10683 +10498 10316 7906 11269 9289 +10499 7026 10603 6748 8786 +10500 7323 11161 6777 9465 +10501 8044 11799 8362 7139 +10502 12252 7838 12007 9226 +10503 8191 6743 11015 10323 +10504 7707 10771 7214 10220 +10505 11403 9209 11855 6945 +10506 9717 9509 11103 7196 +10507 7682 10948 8886 11361 +10508 10997 7681 11859 9646 +10509 7595 10233 8284 11126 +10510 10561 9876 10757 6695 +10511 8205 9577 11086 6931 +10512 8232 6970 12043 9805 +10513 9201 7122 12237 7438 +10514 7240 10497 11689 7836 +10515 10029 9957 10921 10363 +10516 10526 10623 10284 10481 +10517 7871 10128 6512 11631 +10518 12106 7861 11882 9316 +10519 10334 9316 11882 6768 +10520 8951 6379 12068 9225 +10521 10284 7673 10434 10449 +10522 10303 10449 10434 7621 +10523 9173 7132 10525 9044 +10524 7758 10060 6325 10620 +10525 7637 11556 8466 10754 +10526 11740 7564 11259 9540 +10527 8711 9851 10926 7498 +10528 8825 6859 10380 11839 +10529 8298 7016 11594 9073 +10530 11480 9511 10648 6385 +10531 7298 8535 11854 9864 +10532 8740 174 175 11068 +10533 10002 7271 8643 11853 +10534 10751 6413 10265 10264 +10535 9600 9601 11071 7609 +10536 7974 11293 7756 11692 +10537 6698 10484 7660 10373 +10538 10068 6303 11982 9941 +10539 11012 12238 7030 9250 +10540 9362 7590 11465 9363 +10541 8236 8954 11901 6952 +10542 8145 11402 8203 6795 +10543 11237 6255 11698 8777 +10544 10463 7608 10649 10052 +10545 9501 6692 10052 10649 +10546 6250 8243 11132 9544 +10547 11486 157 158 11796 +10548 6474 10026 7967 11913 +10549 7343 9510 6835 11174 +10550 10206 7587 10560 10138 +10551 10096 10037 10622 7719 +10552 10759 10022 10637 7178 +10553 7232 9642 11381 8221 +10554 6726 11061 8313 11936 +10555 6720 10747 7635 10037 +10556 8477 11549 10269 7561 +10557 11901 6466 11563 8336 +10558 9442 9255 11909 7268 +10559 9946 7602 10814 9915 +10560 12193 9915 10814 6666 +10561 10361 6490 11469 9614 +10562 7021 9968 8488 11351 +10563 7414 11499 8320 11060 +10564 11564 9643 12194 6690 +10565 11844 11485 10394 8426 +10566 11473 7780 11073 10882 +10567 7691 9880 6773 11016 +10568 10295 7695 10391 10627 +10569 6697 10444 7666 10489 +10570 6852 9900 11697 8537 +10571 6295 7765 10619 8237 +10572 6283 8461 11208 9649 +10573 12135 8970 10423 6262 +10574 8567 7929 10882 11073 +10575 8937 7435 10123 10632 +10576 10601 11296 10964 9548 +10577 8114 10478 10731 6760 +10578 10648 10162 10338 7456 +10579 8087 10651 6735 11456 +10580 11628 9270 12122 7985 +10581 11559 9468 11624 7195 +10582 9296 7238 12086 9273 +10583 11401 7378 11099 9552 +10584 9911 7235 10671 9912 +10585 6390 10367 7649 10476 +10586 11649 9542 12134 6397 +10587 9528 9078 11390 6665 +10588 10327 10432 10444 6697 +10589 10545 10444 10432 7658 +10590 6814 10210 7213 9327 +10591 8898 6655 11716 10996 +10592 12273 7904 11300 9474 +10593 8552 11150 194 195 +10594 7441 11022 7928 11883 +10595 8563 11618 6781 10902 +10596 8962 6854 9679 11341 +10597 8341 12165 6985 11727 +10598 8875 11164 197 198 +10599 8048 7079 11545 9631 +10600 6269 10892 7217 9811 +10601 7060 8325 9904 11109 +10602 6240 11158 8001 10178 +10603 11161 9799 12239 7953 +10604 8099 9543 151 11754 +10605 7943 10441 6427 11816 +10606 7235 12113 8720 11812 +10607 8296 12186 10043 6678 +10608 9307 7519 9847 10879 +10609 9233 6919 10930 11650 +10610 10885 8970 11943 6775 +10611 10373 7660 10403 10483 +10612 11151 11098 6938 7840 +10613 9264 7320 12192 10776 +10614 11117 6407 10111 11433 +10615 7241 8656 11786 11076 +10616 10241 6390 10476 10381 +10617 10140 7647 11464 9433 +10618 9250 6408 9700 11012 +10619 8158 10028 7175 9825 +10620 6382 12086 8467 10204 +10621 6698 10373 7605 10481 +10622 8590 9802 10887 7211 +10623 10328 9323 12151 7548 +10624 8827 8193 11805 11413 +10625 10965 10632 10123 7628 +10626 7862 10677 6383 10596 +10627 7905 11526 6724 10791 +10628 10723 8472 11755 11893 +10629 10320 6405 11223 10226 +10630 11056 6761 11113 9989 +10631 7706 10327 6697 10565 +10632 7575 9728 11632 8489 +10633 7859 11955 6699 9782 +10634 11328 7745 12010 9986 +10635 9764 6823 9602 11188 +10636 8951 10115 12156 6379 +10637 6403 10852 7853 10615 +10638 8681 7450 9368 11743 +10639 7649 10367 7648 10493 +10640 8277 11910 6670 10805 +10641 7803 9821 9324 8273 +10642 11367 9353 11835 6398 +10643 8198 12026 11726 8051 +10644 6507 9469 7988 10161 +10645 8087 11456 7820 10690 +10646 9426 10491 10974 6711 +10647 150 11305 9533 149 +10648 10747 10769 10171 7635 +10649 9809 7591 9363 9364 +10650 11359 9609 11202 6937 +10651 7624 10572 6796 11064 +10652 8071 11983 10041 8603 +10653 7481 8823 11824 10891 +10654 10403 6689 10399 10483 +10655 6973 9346 12225 7992 +10656 9027 10715 6699 10176 +10657 7151 9755 7687 11482 +10658 9197 9349 12184 6353 +10659 10675 12096 9885 6376 +10660 6916 12101 8105 11260 +10661 7701 10544 7577 10362 +10662 8685 9710 11059 6572 +10663 7212 9425 11595 8348 +10664 7155 10920 8181 11422 +10665 9941 7769 11646 9839 +10666 6799 11033 7464 9727 +10667 9586 6384 9370 11916 +10668 8887 8886 10948 7166 +10669 6898 9868 11567 9869 +10670 11401 6580 10980 9843 +10671 11286 7980 10937 11587 +10672 7488 10870 12195 9043 +10673 8061 10351 7345 9906 +10674 7362 11860 6737 9629 +10675 7625 9850 6264 11025 +10676 7694 10499 6723 10498 +10677 10022 7852 10907 10637 +10678 10463 10333 10545 6689 +10679 10896 9954 10386 7377 +10680 10040 9953 10865 6658 +10681 7764 11111 6749 11806 +10682 10068 9941 9839 7492 +10683 8520 11302 6872 12149 +10684 9201 7438 10733 10202 +10685 6301 10744 7784 10094 +10686 11808 7726 11730 9443 +10687 11121 9443 11730 6757 +10688 10476 7649 10436 10489 +10689 6728 7355 10322 7934 +10690 6421 8330 12020 9694 +10691 11692 10809 10231 7974 +10692 8564 10514 7492 10318 +10693 7747 9413 6559 11763 +10694 8436 11762 11338 7539 +10695 11989 6925 10361 10967 +10696 6701 8408 10944 10502 +10697 6771 10189 8294 11568 +10698 6811 9385 11913 7967 +10699 10159 9383 11977 7417 +10700 6728 8254 10214 7355 +10701 6944 8357 10997 10163 +10702 8528 9862 8242 11048 +10703 8873 9921 10870 7488 +10704 12076 10078 11502 8992 +10705 10159 12014 7926 9383 +10706 8332 9607 11268 6298 +10707 12000 8185 10652 6681 +10708 11519 9468 11559 7412 +10709 10750 6294 12088 10000 +10710 109 9652 11189 108 +10711 7364 9840 11948 7739 +10712 10526 10280 10581 10532 +10713 7763 6930 10753 9877 +10714 12019 7947 11221 11789 +10715 9720 11348 126 127 +10716 11693 9654 12261 6808 +10717 11434 7595 11126 10691 +10718 10740 10395 10647 7557 +10719 11365 10637 10907 7737 +10720 6804 9404 7263 11980 +10721 7811 11498 6328 9825 +10722 9270 11628 6484 10149 +10723 6294 10750 7738 9874 +10724 7478 9590 6642 11315 +10725 11370 9791 11021 6296 +10726 7881 9936 12169 7101 +10727 6337 8596 8165 11013 +10728 7927 10503 7483 10452 +10729 10234 6939 11971 10154 +10730 7116 12213 9205 11378 +10731 10489 10436 10565 6697 +10732 7095 11530 8321 10442 +10733 7388 8332 11831 10107 +10734 10472 7599 10865 9953 +10735 12106 9573 12236 7861 +10736 7820 11456 6735 11850 +10737 6959 10728 10117 8288 +10738 6836 11130 7543 9905 +10739 10230 7319 11322 9780 +10740 11279 10995 9942 11641 +10741 9122 7291 11690 10059 +10742 9834 10059 11690 7880 +10743 11826 7246 10851 10145 +10744 8996 9889 11059 7544 +10745 10526 10532 10498 10623 +10746 11521 8203 11402 6794 +10747 11229 7984 10986 10480 +10748 6507 9740 11312 8731 +10749 7939 11166 6381 12143 +10750 9329 9424 12058 7504 +10751 10075 10666 10418 11558 +10752 6839 8192 11835 10243 +10753 6613 10263 7586 10621 +10754 9028 8550 11965 7596 +10755 12116 9436 11905 8419 +10756 6689 10545 7658 10399 +10757 10198 6784 10393 7888 +10758 7785 10949 7981 10670 +10759 8623 6331 12275 9432 +10760 10639 9432 12275 7817 +10761 8614 9827 7117 11459 +10762 8831 9895 11314 6645 +10763 9083 7540 8869 11733 +10764 7613 11169 8265 11170 +10765 9202 11458 160 161 +10766 7195 10292 8391 11559 +10767 11211 7489 11734 6953 +10768 10371 7751 11618 8563 +10769 11646 6598 11800 9839 +10770 10501 9506 12102 10150 +10771 7621 10561 6695 10404 +10772 9433 11464 9857 6449 +10773 7473 10271 6702 10759 +10774 9869 12118 8386 6898 +10775 6821 11329 7580 9635 +10776 10295 10627 10327 10606 +10777 6717 8995 10072 12268 +10778 9522 186 187 11488 +10779 6790 8152 10077 11512 +10780 11709 10108 10155 7674 +10781 10711 10174 11726 7304 +10782 6648 11365 7737 10802 +10783 8236 6865 11053 8954 +10784 7123 10276 11002 8425 +10785 10209 7722 11136 9774 +10786 8655 12044 10927 9162 +10787 8683 10833 10054 6299 +10788 10417 7718 11492 9890 +10789 10642 11509 11850 6735 +10790 6941 12070 8611 10329 +10791 9226 12007 6724 10510 +10792 9859 10935 9926 7546 +10793 9208 11555 7444 10235 +10794 8572 7654 10404 10703 +10795 6851 7746 12177 9801 +10796 8291 9485 12139 6395 +10797 10430 6885 11712 10085 +10798 8720 10527 10929 7065 +10799 10401 7659 10565 10436 +10800 10501 7592 11357 10066 +10801 7811 10885 6775 11226 +10802 10144 7852 10022 11683 +10803 10759 6702 11683 10022 +10804 6963 11091 7496 10281 +10805 10254 9467 12112 6605 +10806 7924 10012 6745 11695 +10807 11300 7054 12033 9474 +10808 10391 7694 10498 10532 +10809 7328 6302 11807 9271 +10810 10574 10065 10843 7849 +10811 11051 8047 10917 10104 +10812 9260 7843 9955 9259 +10813 10823 6713 11085 9845 +10814 10685 7314 9679 10343 +10815 7883 10991 7757 10756 +10816 11752 9949 11499 7414 +10817 11859 6478 11394 9646 +10818 11899 7760 10844 9633 +10819 8291 7117 11973 9485 +10820 8266 6725 10427 10656 +10821 9896 7520 11577 9574 +10822 10585 6475 12228 9529 +10823 10812 9529 12228 7818 +10824 9553 7710 11693 8612 +10825 7056 8001 10659 11352 +10826 9165 6377 11339 7539 +10827 8727 11844 6550 11704 +10828 7297 10443 11707 8902 +10829 6296 11553 7266 9593 +10830 7311 12011 6717 9489 +10831 8823 7584 9998 11824 +10832 10928 11410 11814 6248 +10833 6428 8613 11533 10260 +10834 6788 8188 11784 9515 +10835 8371 7239 10993 10045 +10836 6309 9731 7840 10118 +10837 9919 12139 9485 7732 +10838 8949 7077 10184 8948 +10839 8641 9343 10306 6849 +10840 12061 11379 11235 8119 +10841 7203 11793 6704 9624 +10842 8320 11499 9949 6911 +10843 8291 12075 10039 6776 +10844 11887 8474 11247 6960 +10845 8575 7516 8432 11036 +10846 9094 7724 11736 9736 +10847 8682 9859 7546 11105 +10848 11146 6978 10721 10741 +10849 7630 9723 11373 8653 +10850 8250 7075 10102 10904 +10851 10388 6688 11024 10283 +10852 11507 11234 11607 10558 +10853 6987 11421 8510 11744 +10854 7317 8530 12184 9841 +10855 7739 12071 6705 10046 +10856 6985 11416 7691 10087 +10857 6665 11633 7683 9528 +10858 6311 11179 11128 8128 +10859 9126 9120 11128 11179 +10860 10581 10627 10391 10532 +10861 7205 11416 8299 11039 +10862 10719 9534 11873 6468 +10863 10315 6752 11786 10036 +10864 11134 10009 11143 7786 +10865 8868 8078 10912 11891 +10866 6880 9775 11438 8090 +10867 9911 8333 12113 7235 +10868 8919 10254 6605 11548 +10869 7688 6831 12236 9573 +10870 10617 7066 11552 8443 +10871 8341 11727 8036 9566 +10872 11213 8489 12115 11262 +10873 6939 8214 11167 11971 +10874 11073 6324 11995 8567 +10875 10841 8458 11500 7746 +10876 7440 11468 7932 10076 +10877 10037 10096 11931 6720 +10878 11398 7582 9631 11545 +10879 10324 9511 11480 6900 +10880 7542 11463 6859 10048 +10881 8221 9559 11794 6554 +10882 7883 10695 6422 10991 +10883 9601 9600 11641 7076 +10884 11203 6536 11869 6396 +10885 9189 11312 9740 7918 +10886 10500 10445 6483 7696 +10887 7408 9618 6497 11581 +10888 8736 6425 10147 11705 +10889 7025 9126 11120 11861 +10890 10794 6384 12223 9520 +10891 6378 10625 8072 10428 +10892 7404 11140 8249 9903 +10893 10574 7641 10584 11542 +10894 136 11748 10025 135 +10895 9371 10624 12084 6545 +10896 7836 10620 6325 10505 +10897 8294 10787 8122 9988 +10898 6945 11855 7620 9758 +10899 12053 11373 9723 8043 +10900 10951 11371 10490 6676 +10901 7699 10579 7714 10586 +10902 7974 11969 6828 11293 +10903 10615 11462 9687 7515 +10904 8924 8316 11486 11796 +10905 10678 9561 11906 6347 +10906 7136 10024 8009 9137 +10907 8807 9580 11802 6541 +10908 8093 12140 6512 11303 +10909 10629 8105 12185 10385 +10910 11890 7627 11392 9741 +10911 11507 10558 12167 9607 +10912 8292 11180 6412 10906 +10913 7790 11449 6523 11075 +10914 7003 8311 11172 10169 +10915 8033 11431 6437 11152 +10916 7801 9943 7002 11661 +10917 8356 7728 11930 9588 +10918 9576 12160 11317 7928 +10919 7983 11508 6933 9503 +10920 7966 10523 6900 11480 +10921 11334 10201 11431 8033 +10922 8615 6532 11069 9153 +10923 10064 6429 11895 10095 +10924 9774 6756 10954 10209 +10925 8805 10671 7235 11812 +10926 11469 7717 11725 9614 +10927 6418 11596 7504 10029 +10928 6251 9631 7582 11644 +10929 8609 6826 10856 10211 +10930 9346 11972 105 106 +10931 10638 9938 11854 8780 +10932 8460 10616 7372 9541 +10933 8323 11469 6490 9716 +10934 10664 9602 7864 11888 +10935 7984 11229 7811 11226 +10936 10277 9562 12270 6434 +10937 10942 12121 164 165 +10938 11078 11399 10295 10606 +10939 11051 10104 11917 7599 +10940 8177 11615 8539 10377 +10941 10890 6523 11583 9879 +10942 8360 7262 11324 9829 +10943 9547 10703 10404 6695 +10944 9951 12182 115 116 +10945 8693 6432 12108 7669 +10946 10686 8015 10855 11275 +10947 9549 137 138 8199 +10948 12231 6492 9906 11746 +10949 7781 11388 6807 9778 +10950 9375 7934 10322 10955 +10951 9156 10816 10267 6599 +10952 7705 11084 6772 11200 +10953 10108 11145 9668 6869 +10954 10057 9836 11930 6297 +10955 10396 7426 11454 8026 +10956 9522 11729 9643 7112 +10957 11212 8289 10914 6990 +10958 8686 8687 9930 6746 +10959 8420 11358 8867 7761 +10960 6670 11910 8276 10168 +10961 8511 8056 9635 11788 +10962 7674 11660 6661 11709 +10963 8713 11175 6750 10119 +10964 10290 10720 10415 6691 +10965 7208 10092 7771 10474 +10966 10672 10105 12108 7618 +10967 12014 10159 12100 6833 +10968 11833 9829 11324 7664 +10969 8436 7539 11339 7538 +10970 11462 7150 11627 9687 +10971 10158 9620 11882 7861 +10972 6520 10883 10197 7865 +10973 11189 7109 10035 11620 +10974 6482 8618 11620 10035 +10975 8156 6879 11676 8157 +10976 10978 11399 11078 8215 +10977 7324 9790 11579 8431 +10978 6978 10693 10363 7958 +10979 8273 11171 10131 7803 +10980 7205 9880 7691 11416 +10981 10498 6723 11255 10623 +10982 11071 9601 12229 6624 +10983 9694 11061 9863 7897 +10984 6489 11129 8002 9963 +10985 7084 9874 7738 11207 +10986 10972 7912 11091 9985 +10987 8400 7613 11904 10152 +10988 7250 9762 7759 11380 +10989 6798 9805 12043 7962 +10990 8500 11076 11786 6752 +10991 7867 10663 7706 11049 +10992 7617 10665 7866 11067 +10993 8815 8816 11608 6410 +10994 8171 9894 11340 6334 +10995 8180 10257 6664 11295 +10996 6822 8303 11397 9994 +10997 6258 11004 8222 10110 +10998 11734 9807 11997 8162 +10999 12072 7957 12256 9710 +11000 8114 8113 10903 12181 +11001 6709 8091 12248 9666 +11002 12207 6815 11775 10122 +11003 7715 10902 6781 12052 +11004 11314 9895 11999 7725 +11005 11267 9641 12264 6464 +11006 11174 7831 12264 9641 +11007 6515 8529 11482 11029 +11008 11477 6902 10779 8703 +11009 9620 10158 11337 7284 +11010 12159 8443 11552 9060 +11011 11065 6650 11613 9936 +11012 10559 9399 12251 6782 +11013 8500 7837 10794 11076 +11014 9809 7281 11140 10099 +11015 11605 7579 10642 12080 +11016 10856 6826 11765 8766 +11017 10874 6391 10434 7673 +11018 8858 9848 11570 6968 +11019 9233 11632 9728 8135 +11020 11601 10385 12185 6534 +11021 7166 8717 12160 9576 +11022 11797 11590 9755 6370 +11023 11454 7426 12217 9670 +11024 7858 6741 11965 8550 +11025 12205 8035 11385 10660 +11026 12082 9672 11731 7171 +11027 7882 10810 6867 11263 +11028 7636 10888 6570 10248 +11029 7090 9647 12077 8126 +11030 11075 7441 11883 9970 +11031 7186 10253 7996 11364 +11032 6803 10323 11015 8106 +11033 11189 9652 12051 7109 +11034 8183 9702 11790 6694 +11035 7573 10889 6625 10258 +11036 8905 7529 12066 7389 +11037 11386 6872 12024 9657 +11038 10619 8696 11552 7066 +11039 8555 9734 11683 6702 +11040 8883 10215 11871 7424 +11041 9375 11804 7838 12252 +11042 7445 7720 12222 8383 +11043 10515 7918 9740 11678 +11044 11225 10191 10699 7856 +11045 8837 7990 11107 11557 +11046 6455 11118 7670 11611 +11047 10993 7681 11137 10045 +11048 8371 10045 11137 6525 +11049 7621 10434 6391 10798 +11050 10946 9422 10945 6402 +11051 8397 10590 7462 10837 +11052 10502 10932 10270 6701 +11053 10087 7691 11016 10854 +11054 10162 7094 10878 10338 +11055 6379 8591 10051 12068 +11056 9010 10950 10209 7644 +11057 12254 7749 12240 9713 +11058 6498 11289 8280 11659 +11059 10911 7750 10901 10341 +11060 7920 9447 11895 6429 +11061 7748 10564 6722 11228 +11062 11908 10772 12140 8093 +11063 11635 9844 10947 8293 +11064 10413 9898 11365 6648 +11065 11880 8076 10828 10357 +11066 7879 10985 6843 10567 +11067 8969 7965 10835 8879 +11068 10763 6428 11356 9861 +11069 7487 9167 11547 11585 +11070 12239 9799 11600 6411 +11071 10470 6742 11317 11318 +11072 12217 7817 12275 9670 +11073 8627 10163 10997 7173 +11074 12041 8539 11594 7016 +11075 11575 9670 12275 6331 +11076 9177 11739 10533 6982 +11077 8021 11279 6374 11242 +11078 10890 8133 11920 9592 +11079 8261 11950 7916 11722 +11080 7795 10200 6246 11444 +11081 10529 8837 11557 7688 +11082 9256 9685 12150 6635 +11083 6938 11098 6495 9595 +11084 6774 10336 11481 8055 +11085 6509 11475 7905 10952 +11086 7907 6967 11396 11355 +11087 6310 11355 11396 8279 +11088 7003 10169 11111 8496 +11089 6791 11450 7884 11040 +11090 8031 6957 11890 9741 +11091 6330 8039 11127 10543 +11092 6905 10774 8278 12227 +11093 7299 8678 11561 10168 +11094 6814 11837 7357 10210 +11095 11783 10826 11028 6755 +11096 8653 11103 11268 7630 +11097 9954 7378 11401 10386 +11098 10288 9803 11677 7144 +11099 7514 11527 9069 11770 +11100 6844 10748 7952 11294 +11101 7455 10825 7652 10325 +11102 7342 8331 12229 10298 +11103 7230 9138 7766 9139 +11104 8520 9914 11797 6370 +11105 9192 11121 10608 7841 +11106 8292 10608 11121 6757 +11107 7122 10380 8159 12237 +11108 11238 10410 11005 7747 +11109 10582 6860 11005 10410 +11110 11492 6313 12003 9890 +11111 10456 7964 12114 10409 +11112 9552 11099 11226 6775 +11113 9071 11681 8137 10459 +11114 9183 10250 11428 7324 +11115 7743 10992 6691 10415 +11116 7738 11423 8204 11207 +11117 11341 7823 11639 8962 +11118 121 122 11781 9870 +11119 6906 9870 11781 8120 +11120 10928 6248 11479 8982 +11121 6690 9960 7263 11335 +11122 6419 11362 7624 11064 +11123 11188 8009 11884 9764 +11124 11652 10465 12123 7500 +11125 9009 8986 11998 7078 +11126 6984 8536 11603 10113 +11127 140 141 11308 9980 +11128 7514 11770 6708 9748 +11129 7152 9024 10524 12230 +11130 7548 11007 8058 10328 +11131 10136 9713 12240 6674 +11132 12113 6760 10731 8720 +11133 7932 11468 7211 10887 +11134 10193 7938 10470 11318 +11135 8093 11592 7922 11908 +11136 9162 10534 11634 7562 +11137 7754 11242 6374 10242 +11138 8784 6319 11708 11257 +11139 10382 6693 10424 10880 +11140 7609 10743 7942 10742 +11141 7122 9161 11839 10380 +11142 7953 11707 6777 11161 +11143 7418 9777 6812 12089 +11144 9944 9724 12156 7499 +11145 8276 7085 11451 9622 +11146 6241 11000 8412 9608 +11147 10319 8412 11000 6728 +11148 8037 8836 10090 11721 +11149 6671 10275 8807 12066 +11150 8891 6337 11013 8892 +11151 10387 11936 7604 12199 +11152 9914 10934 11848 7787 +11153 10998 10170 11708 7729 +11154 9119 10043 12186 7432 +11155 7876 10014 7109 12051 +11156 6498 11659 8534 11417 +11157 11884 8038 12017 9764 +11158 10614 7633 12039 9553 +11159 10517 11163 10602 6293 +11160 9709 8281 7142 9808 +11161 12226 6907 12038 9715 +11162 10454 11474 10705 7503 +11163 8900 10242 7942 11080 +11164 11756 10956 9854 8239 +11165 10846 6506 9750 12104 +11166 10224 8310 11411 11525 +11167 8153 11525 11411 6824 +11168 10187 10041 11983 6868 +11169 8826 7383 12160 8717 +11170 9611 10676 11722 7916 +11171 10445 10500 10392 7001 +11172 11172 6749 11111 10169 +11173 6298 10562 8067 10822 +11174 10933 6282 11569 10597 +11175 8132 10977 7616 10976 +11176 9989 11113 11649 8225 +11177 9542 11649 11113 7816 +11178 6265 9865 7792 11196 +11179 10392 10500 10499 7694 +11180 6463 11415 8570 12128 +11181 10085 7784 10744 10430 +11182 11384 8109 11236 12242 +11183 10398 6684 12204 10015 +11184 6271 11429 7957 12072 +11185 6609 10246 11658 8593 +11186 8360 9829 11833 6316 +11187 9185 10376 11092 7497 +11188 7449 11115 8227 10219 +11189 9411 8976 11633 6665 +11190 10405 10697 11405 7113 +11191 9819 11405 10697 7959 +11192 10855 10776 10339 11275 +11193 8477 6740 11275 10339 +11194 8805 7065 8804 10727 +11195 10185 7888 10393 7036 +11196 11949 6394 11049 7659 +11197 7377 11195 12178 8586 +11198 9997 10304 11278 7570 +11199 8544 7629 10283 11024 +11200 11836 10488 10487 7679 +11201 10142 7484 10477 10947 +11202 11419 11993 11572 8516 +11203 8519 12149 6872 11386 +11204 10417 10915 10508 7718 +11205 6880 7904 12273 9775 +11206 10273 8714 12069 7084 +11207 7849 10842 7641 10574 +11208 6644 10289 7644 11032 +11209 10103 7172 12188 11626 +11210 10629 10385 11601 7353 +11211 6319 9810 8364 12147 +11212 10745 7467 10050 10523 +11213 7795 11840 10624 9371 +11214 9818 7685 11083 10330 +11215 6834 11254 8302 12008 +11216 6499 9986 12010 8702 +11217 6877 7920 12124 9394 +11218 7534 10547 6710 10495 +11219 7527 11374 8130 12002 +11220 9289 6479 11423 10316 +11221 9275 9800 10807 6685 +11222 8368 8410 11191 6662 +11223 10398 10015 11774 7794 +11224 8516 10048 10740 7557 +11225 11134 6416 11424 10009 +11226 9516 7535 11471 10356 +11227 6755 11330 8028 10073 +11228 11556 8504 11331 6631 +11229 10291 10290 11136 7722 +11230 10570 11136 10290 6691 +11231 11616 12037 11834 10374 +11232 9407 10374 11834 6927 +11233 8324 11585 11547 6267 +11234 9159 6672 12138 10140 +11235 9169 7687 10504 11529 +11236 6257 8174 10506 10507 +11237 11615 9530 11594 8539 +11238 7087 8490 11837 9881 +11239 12169 9936 11613 7969 +11240 9257 11433 10111 7661 +11241 6322 10216 11350 8086 +11242 158 159 10066 11357 +11243 11589 9847 11991 6847 +11244 6525 11440 7774 10782 +11245 8130 11374 9907 6949 +11246 8576 7639 11163 10517 +11247 7173 11394 8338 10097 +11248 9856 7721 12125 10301 +11249 8432 7516 10709 10708 +11250 8416 11823 7807 11680 +11251 12027 7771 10092 12025 +11252 7813 9960 6690 12194 +11253 12155 8110 10985 11745 +11254 6288 11954 8047 11051 +11255 10253 10156 11777 7996 +11256 6970 8232 12030 9973 +11257 9264 10776 10855 6288 +11258 7136 11153 8081 10240 +11259 9735 10511 7026 9152 +11260 10613 10670 11258 6765 +11261 7724 11102 7979 11056 +11262 10325 7652 11521 10780 +11263 10187 7940 11696 10041 +11264 8601 7777 12204 9922 +11265 10817 11191 7571 8504 +11266 10620 10539 12004 7758 +11267 7047 10860 7679 10487 +11268 7904 9834 7880 12202 +11269 11925 10680 10653 7877 +11270 6933 11420 7895 9503 +11271 9822 7457 12218 9838 +11272 7542 11572 6750 10417 +11273 10796 7983 11593 10438 +11274 8363 6855 11598 8616 +11275 8256 6863 7778 10249 +11276 11075 9970 10766 7790 +11277 6649 9214 12235 8010 +11278 8832 11794 7528 10654 +11279 8842 8062 11893 11755 +11280 8229 10486 7667 11138 +11281 7266 10149 8519 11386 +11282 11400 7672 11543 10001 +11283 9046 10112 11392 7627 +11284 6951 10509 12191 9959 +11285 6418 10693 8206 11597 +11286 9007 6670 10168 11561 +11287 11908 9937 11719 10772 +11288 8067 10973 6876 11460 +11289 6794 8103 10780 11521 +11290 9433 6449 12171 9901 +11291 8724 10030 11507 7388 +11292 6288 11051 7599 10472 +11293 8100 11845 7583 10556 +11294 10430 10744 11244 7547 +11295 6342 11206 7808 10638 +11296 9786 8804 7065 10929 +11297 9932 10166 11299 7607 +11298 9379 6486 11680 10003 +11299 7835 11652 7500 10279 +11300 9576 6304 10904 10102 +11301 7695 10978 7001 10392 +11302 11758 8377 10872 7990 +11303 7123 9934 6660 10922 +11304 7614 10492 6711 10974 +11305 11602 7851 12054 11719 +11306 9855 7647 10140 12138 +11307 8629 7426 10396 6908 +11308 10999 10613 11031 7786 +11309 8645 7606 10179 11674 +11310 11584 9939 11964 6813 +11311 7152 12230 8096 11088 +11312 10207 6678 10043 10868 +11313 10815 11124 10355 7723 +11314 8101 10121 12038 6907 +11315 7094 10011 7713 10878 +11316 11235 6282 10933 6856 +11317 6615 10442 8321 10925 +11318 10410 11238 6762 12214 +11319 9379 10003 12213 7116 +11320 8104 11827 7668 10033 +11321 6749 10508 7693 11182 +11322 6666 10153 8859 12193 +11323 8106 10571 6385 12107 +11324 8491 7089 11412 10213 +11325 8547 11787 7640 9193 +11326 9573 12278 11420 7688 +11327 7463 11333 7819 11343 +11328 10633 7676 11414 10139 +11329 10692 6858 11434 10691 +11330 9911 10212 11288 8044 +11331 7989 10141 6377 11003 +11332 11056 9989 11736 7724 +11333 7463 11343 6715 10192 +11334 11921 6777 11707 10443 +11335 8475 10326 8853 12009 +11336 7986 10439 6451 11985 +11337 6550 11253 8005 11640 +11338 11279 8021 10583 10995 +11339 7916 6442 11194 9611 +11340 10297 12107 6385 9160 +11341 8111 9373 11947 6669 +11342 11214 11776 11309 6510 +11343 8756 11476 10542 7517 +11344 6910 11008 11009 8733 +11345 6358 10494 12077 9647 +11346 7278 12120 8042 9923 +11347 8526 11609 10767 6917 +11348 11774 10015 11699 7176 +11349 7820 11850 7864 9971 +11350 7751 10371 8590 11210 +11351 7965 8157 11676 6795 +11352 10710 8019 11542 10584 +11353 9215 7847 11822 6810 +11354 8572 7022 11504 10605 +11355 8020 10570 6691 10992 +11356 11152 11857 12244 8033 +11357 6526 10940 8066 11199 +11358 6991 11939 7797 10797 +11359 10305 12263 11651 6336 +11360 10604 7671 11254 10312 +11361 10769 6437 11431 10171 +11362 7481 10891 12262 8268 +11363 11824 9451 12262 10891 +11364 10029 7504 12058 9957 +11365 6846 8607 10397 10335 +11366 9114 10447 7839 11537 +11367 8600 9451 11824 9998 +11368 6639 8231 11643 10566 +11369 9946 9915 12193 7370 +11370 7039 11011 11973 8318 +11371 6763 11772 8432 10708 +11372 11680 7807 12213 10003 +11373 10833 7791 11679 10054 +11374 10320 10777 10778 6405 +11375 9549 7874 10025 11748 +11376 10874 7673 11255 8402 +11377 11046 8096 12230 10524 +11378 10451 8693 7669 12181 +11379 10565 7659 11049 7706 +11380 11352 10659 11247 8541 +11381 10626 7830 11247 10659 +11382 11556 6631 11230 8466 +11383 8384 9922 12204 6684 +11384 11000 10990 12136 6728 +11385 8558 10840 11264 6260 +11386 11228 6722 12029 10078 +11387 11502 10078 12029 7829 +11388 12080 7781 10203 11605 +11389 8109 6441 11605 10203 +11390 9144 10719 11981 7671 +11391 8086 11231 7825 10730 +11392 10670 10613 10999 7785 +11393 9529 7518 11023 10585 +11394 8232 9805 6798 10998 +11395 11908 7922 12166 9937 +11396 6845 11714 8322 11445 +11397 11009 11567 9868 6565 +11398 11471 8095 9289 11269 +11399 10127 10036 11786 7588 +11400 10702 7702 11510 6454 +11401 9332 10732 11933 8329 +11402 8462 11555 6605 12112 +11403 8121 10607 8057 11019 +11404 12244 12243 11327 8070 +11405 7130 11287 7846 10668 +11406 9202 12095 7963 11458 +11407 11313 10369 11271 7328 +11408 7744 9977 6707 11304 +11409 6668 11858 8559 11848 +11410 10809 11692 10968 6738 +11411 6696 10261 7582 11398 +11412 7812 11864 7190 10176 +11413 7786 11143 6764 10999 +11414 6288 10855 8015 11954 +11415 11155 7863 10938 10811 +11416 10713 6835 11217 10682 +11417 11881 10682 11217 7815 +11418 6785 10273 8204 11919 +11419 7786 11031 7933 11134 +11420 7960 10519 6783 11813 +11421 10756 6813 11806 7883 +11422 9285 6457 12166 11366 +11423 10982 8051 11726 10174 +11424 10478 7669 12108 10105 +11425 8679 11721 10090 6474 +11426 10680 6502 11724 10653 +11427 10429 8101 9885 12096 +11428 10091 7770 11664 10208 +11429 10895 7923 11895 9447 +11430 10613 6765 10884 11031 +11431 11560 7933 11031 10884 +11432 9139 7766 10451 9140 +11433 11689 6965 12004 10539 +11434 6904 8189 11133 11400 +11435 6680 10707 8085 10994 +11436 11293 10130 11761 7756 +11437 8284 11127 8039 11126 +11438 6803 8106 12107 10297 +11439 7960 11813 8363 11177 +11440 11269 6310 10356 11471 +11441 10978 7695 10295 11399 +11442 9614 7907 10967 10361 +11443 8235 9978 7395 12173 +11444 10739 10330 11083 6940 +11445 12177 6328 11498 9801 +11446 6677 12267 8947 12132 +11447 10207 10868 11383 7712 +11448 10884 6765 11258 10938 +11449 7718 10508 6749 11172 +11450 11853 9786 10929 10527 +11451 8456 10422 7055 11273 +11452 10016 11116 11117 7662 +11453 6407 11117 11116 8218 +11454 8183 11267 6464 10464 +11455 157 11486 10247 156 +11456 9302 11243 10875 7600 +11457 7744 11304 8097 11178 +11458 8555 9924 6505 11465 +11459 9909 9381 10335 7826 +11460 10692 10691 11126 8039 +11461 7916 11950 6887 10530 +11462 7701 10362 7788 11346 +11463 7960 11177 6477 11093 +11464 12137 11240 10838 6736 +11465 7728 8356 10838 11240 +11466 11775 7375 12119 10122 +11467 9196 7855 10122 12119 +11468 7008 9784 7454 10975 +11469 8327 7819 11333 11647 +11470 10946 12057 12041 7016 +11471 8459 12183 6782 11617 +11472 10490 11371 10895 7767 +11473 10293 6692 11866 10080 +11474 10310 7845 11705 10147 +11475 8516 7557 10647 11419 +11476 7872 11798 6818 12254 +11477 10863 6440 11761 10130 +11478 8183 6694 11441 10307 +11479 6941 10044 7533 12070 +11480 9815 10480 10986 7683 +11481 11806 6813 11964 7764 +11482 10039 7579 11605 11515 +11483 8492 11515 11605 6441 +11484 9065 6983 11791 8052 +11485 11634 10534 12191 6682 +11486 12040 6780 10963 10630 +11487 6998 11171 8273 11292 +11488 8620 6492 12231 9491 +11489 7624 11362 8046 10830 +11490 11640 12063 11154 8004 +11491 8004 11154 7921 11395 +11492 11637 11934 10228 7366 +11493 10365 10228 11934 7842 +11494 7452 11867 8134 10722 +11495 6631 11974 9284 11230 +11496 12100 10159 11840 7795 +11497 9954 9787 11099 7378 +11498 9567 12012 9434 6649 +11499 6551 8641 8013 11923 +11500 10684 7579 10039 12075 +11501 6942 11122 7632 9663 +11502 10931 6857 11528 11266 +11503 8410 7028 9808 11531 +11504 9729 11723 11673 6417 +11505 12231 11746 7901 8944 +11506 10646 7733 10798 12201 +11507 10174 10711 11975 6769 +11508 9194 7476 10765 11184 +11509 8319 11684 7097 11656 +11510 7815 11367 6398 11881 +11511 9152 6820 8510 11421 +11512 8608 10768 11610 6622 +11513 6728 12136 11069 8254 +11514 7597 12183 8459 11777 +11515 6843 10985 8110 11478 +11516 9553 6465 11745 10614 +11517 9078 10599 11587 7207 +11518 11866 7998 10602 11163 +11519 7921 11097 8012 11272 +11520 10544 6393 10269 11549 +11521 10320 7656 11931 10096 +11522 6644 8319 11656 10289 +11523 11575 6331 12174 10738 +11524 8592 11917 10104 6932 +11525 10875 11243 12050 7977 +11526 9959 8041 10927 10773 +11527 12028 11940 10474 7771 +11528 10452 6764 11143 10636 +11529 11783 11826 10145 8054 +11530 6301 10094 8370 12103 +11531 8179 10466 6787 11307 +11532 12106 6264 12278 9573 +11533 11198 7809 10177 8502 +11534 11190 6476 8502 10177 +11535 9707 10287 11166 7939 +11536 6981 8672 11427 10447 +11537 6296 11021 8154 11553 +11538 9789 12277 10400 6581 +11539 11428 10250 12208 7908 +11540 7873 11738 6787 10466 +11541 10981 11151 6503 9452 +11542 10089 10990 11000 6241 +11543 10494 10854 11016 8016 +11544 8300 9807 11734 7489 +11545 9269 9853 10913 7234 +11546 8014 9820 6891 11310 +11547 11952 11094 10971 8290 +11548 11956 10150 11867 7452 +11549 7872 12084 8224 11798 +11550 8764 7870 11849 12015 +11551 6714 11088 8096 10784 +11552 12088 7460 11667 10000 +11553 9107 10528 11282 6364 +11554 7874 11817 8279 11396 +11555 10093 10746 12097 6286 +11556 6775 11943 7886 9552 +11557 9843 7824 10386 11401 +11558 7900 11881 6398 10789 +11559 6409 11382 7354 11251 +11560 11647 11333 12154 8220 +11561 8979 11280 10573 6531 +11562 7077 9009 7078 10198 +11563 10305 6336 10152 11904 +11564 7586 10355 6946 12168 +11565 11245 11032 10954 7946 +11566 10209 10954 11032 7644 +11567 7139 6760 12113 8333 +11568 7878 11460 6876 11409 +11569 9579 6715 10971 11094 +11570 7921 11154 6841 11097 +11571 6551 11923 8165 8596 +11572 10195 10411 10612 7471 +11573 6259 12141 8100 10556 +11574 10460 11778 10756 7757 +11575 12125 7182 11959 10301 +11576 7693 10695 7883 11182 +11577 8406 6914 11030 11014 +11578 9156 7857 11014 11030 +11579 10998 6798 11713 10170 +11580 10157 10438 11593 7589 +11581 9330 10630 10963 7398 +11582 6977 10389 12241 8340 +11583 10091 6253 11811 11490 +11584 10284 10623 11255 7673 +11585 9407 7839 10447 11427 +11586 8828 6305 8655 11216 +11587 9512 7128 12074 10662 +11588 7692 8343 12268 10072 +11589 10508 10915 11175 7693 +11590 6318 8403 11991 10467 +11591 6653 10188 7424 11871 +11592 10105 10672 12272 6268 +11593 7873 11370 8230 11738 +11594 11461 8145 11767 7510 +11595 7863 11155 7749 10761 +11596 7301 10153 6666 11979 +11597 6598 10631 7944 11800 +11598 8523 10914 12216 6538 +11599 7520 10677 7862 11577 +11600 6574 8027 12251 9399 +11601 7367 10387 12199 7893 +11602 8249 10871 6308 10302 +11603 6669 9112 10735 11047 +11604 10956 6517 12025 10092 +11605 8322 11256 11718 6444 +11606 8707 11718 11256 8168 +11607 7599 11917 8592 10865 +11608 12103 7712 11383 10827 +11609 6727 10812 7818 11252 +11610 10139 6838 12062 10633 +11611 6333 11157 7736 12180 +11612 10046 7727 11002 10961 +11613 10670 7981 11484 11258 +11614 6391 10874 8346 11749 +11615 11867 10150 12102 7741 +11616 6727 11252 8167 10793 +11617 6643 12030 8232 10661 +11618 7461 10365 7842 11896 +11619 6526 9663 7632 10940 +11620 9856 10301 11959 6640 +11621 11254 6834 11715 10312 +11622 6303 11481 7796 11184 +11623 8179 11307 7945 11766 +11624 8447 11702 7842 11934 +11625 8350 11186 11196 7792 +11626 6720 11931 8694 10806 +11627 8582 10758 11321 7667 +11628 10215 7930 11903 11871 +11629 11705 7845 11065 11112 +11630 9936 7881 11112 11065 +11631 6359 10184 7888 10185 +11632 8324 11783 8054 11585 +11633 10901 7483 11697 10341 +11634 8478 11918 8179 10232 +11635 8018 6886 11342 10897 +11636 11524 10577 11862 7725 +11637 7942 10743 6758 11080 +11638 9003 10850 11406 7885 +11639 11392 11406 10850 6401 +11640 11654 6730 11582 10718 +11641 7370 10372 8262 11665 +11642 10043 7270 11383 10868 +11643 8687 10126 11759 6979 +11644 10811 10938 11258 7935 +11645 6792 11607 8036 11062 +11646 7637 9026 11625 10817 +11647 7569 8503 11906 10421 +11648 6683 10414 8646 11624 +11649 9384 7017 11611 9910 +11650 9708 6621 12250 7292 +11651 10276 7123 10922 11081 +11652 6769 11975 9044 10525 +11653 7861 12236 6831 10158 +11654 11627 7882 11263 11110 +11655 9069 9491 12231 7650 +11656 10369 8081 11663 11271 +11657 6394 11949 8282 10832 +11658 8259 10788 7617 11311 +11659 10633 12062 10965 7628 +11660 11145 10108 11709 7755 +11661 6803 11940 8191 10323 +11662 8038 10579 7699 11028 +11663 10642 7579 10684 11509 +11664 7270 8195 11321 11149 +11665 6801 9516 10356 11817 +11666 8157 7965 8969 10573 +11667 11331 11638 7421 8453 +11668 8793 12082 7171 10681 +11669 7906 11355 6310 11269 +11670 8499 10475 11986 7245 +11671 11147 6705 12071 9304 +11672 12022 6892 12208 10250 +11673 8665 6437 10769 12162 +11674 9710 7366 10228 12072 +11675 10431 10678 11629 7788 +11676 8018 10265 7405 12272 +11677 11334 6800 12154 10201 +11678 11423 7738 11989 10316 +11679 9611 11194 12120 7278 +11680 9566 8036 11607 11234 +11681 6471 10405 11976 7908 +11682 9670 11575 8026 11454 +11683 11318 11317 12160 7383 +11684 7960 11093 7799 11077 +11685 6867 10810 12171 8326 +11686 11510 7702 11822 7847 +11687 6753 10583 7985 12122 +11688 8900 12238 11012 8123 +11689 11028 10826 12017 8038 +11690 10541 12017 10826 7545 +11691 6458 8380 10708 10709 +11692 6406 10348 6968 11570 +11693 6667 11615 8177 11792 +11694 8947 6936 11669 11443 +11695 6259 11472 7892 10262 +11696 7897 10259 7898 11599 +11697 9628 12212 10352 6420 +11698 7819 10971 6715 11343 +11699 11620 7992 12225 11189 +11700 10061 6850 10861 11994 +11701 10642 6735 10651 12080 +11702 8008 11261 7885 11406 +11703 11321 6675 11197 11149 +11704 10334 6768 10448 11710 +11705 9032 12221 7835 12220 +11706 10113 6343 11886 10364 +11707 9715 6675 11321 10758 +11708 11529 10504 12214 6762 +11709 11590 7968 12214 10504 +11710 8076 11349 7059 10828 +11711 8688 11071 6624 11142 +11712 10065 10574 11542 6314 +11713 8732 10981 9452 6733 +11714 8597 11976 10405 7113 +11715 8025 12046 6423 10908 +11716 9353 11367 11385 8035 +11717 8846 11385 11367 7815 +11718 9153 11069 12136 7344 +11719 10903 9140 10451 12181 +11720 6755 11028 7699 11330 +11721 6615 10958 7594 10395 +11722 8352 10716 11225 7856 +11723 10395 7594 11687 10647 +11724 8286 9633 10844 6734 +11725 8016 7347 12077 10494 +11726 6842 11998 8986 12210 +11727 8549 11779 8100 12141 +11728 7863 10761 6818 11560 +11729 9723 10558 11607 6792 +11730 8720 7065 8805 11812 +11731 8091 6709 11722 10676 +11732 11214 7848 10461 11776 +11733 9364 9363 11465 6505 +11734 8648 11838 6487 10433 +11735 8628 10267 7817 12217 +11736 10534 8041 9959 12191 +11737 8021 11242 7754 10983 +11738 12065 8703 10779 7711 +11739 7142 11984 9749 12196 +11740 10714 7789 11803 10924 +11741 6894 11655 11013 8165 +11742 8082 12190 7949 11732 +11743 7907 11355 7906 10967 +11744 6753 10700 8353 12110 +11745 6431 10799 7714 10579 +11746 6520 7865 11570 9848 +11747 6394 11387 7867 11049 +11748 7664 12056 8512 11833 +11749 8071 10909 7721 11983 +11750 10617 10337 10762 11897 +11751 9375 10955 6453 11804 +11752 10091 11490 10748 7770 +11753 11286 11587 10599 6501 +11754 10105 6268 10731 10478 +11755 6730 11654 7699 10586 +11756 10757 10962 12097 7692 +11757 7302 10598 7583 11845 +11758 7459 10317 7848 12209 +11759 10136 6545 12084 7872 +11760 11677 11495 11496 7802 +11761 10593 7453 10945 9422 +11762 6937 11202 7956 10299 +11763 10151 7638 11975 10711 +11764 10666 6529 12015 10418 +11765 10345 6279 10821 9873 +11766 10717 6552 12172 10378 +11767 6436 11215 11209 8194 +11768 9271 11040 11313 7328 +11769 9598 11313 11040 7884 +11770 10044 6941 11619 11205 +11771 11204 10474 11940 6803 +11772 6242 11467 7911 10479 +11773 9265 6458 11701 11453 +11774 7415 11849 8594 11233 +11775 7950 11868 6796 10572 +11776 11524 7725 11999 11183 +11777 12102 11209 11215 7741 +11778 6386 11938 8256 10249 +11779 10753 6930 10897 11342 +11780 10170 11713 11390 7783 +11781 6724 12079 7894 10510 +11782 6568 11108 8383 12222 +11783 11110 11263 11425 7937 +11784 9196 10378 12172 7855 +11785 9388 11629 10678 6347 +11786 8302 11981 10719 6468 +11787 7431 11204 6803 10297 +11788 7541 10658 6293 10602 +11789 10620 7836 11689 10539 +11790 11862 10577 7890 6888 +11791 10276 11081 11082 7804 +11792 6417 11673 7981 10949 +11793 8675 6827 11986 11513 +11794 9327 11283 11534 6814 +11795 8110 11294 7952 11478 +11796 7024 8208 11264 12158 +11797 9914 7787 10582 11797 +11798 7878 11368 8067 11460 +11799 10519 8328 11591 6783 +11800 12054 7851 11807 11101 +11801 8342 11332 7936 6548 +11802 11183 6397 12134 11524 +11803 8437 10963 6780 10964 +11804 8705 11324 7262 11176 +11805 12227 10679 11682 6905 +11806 6985 12165 8299 11416 +11807 11380 9812 11938 6386 +11808 11808 10767 11609 7726 +11809 9772 7993 10988 11322 +11810 10705 12224 10930 7598 +11811 7509 12050 6732 10469 +11812 10582 10410 12214 7968 +11813 8494 10557 12161 6883 +11814 6703 10296 7913 10437 +11815 9519 7439 11224 9634 +11816 6376 9063 12261 10675 +11817 11942 7826 10335 10397 +11818 6331 8623 12164 12174 +11819 11986 6827 11598 10941 +11820 9974 6381 9444 11900 +11821 11275 6740 12090 10686 +11822 10124 11799 8044 11288 +11823 9100 11092 6830 11944 +11824 7329 11326 6725 10468 +11825 11650 10930 12224 8295 +11826 7510 8309 9974 11900 +11827 12274 10941 11598 6855 +11828 6886 8018 12272 10672 +11829 11143 7468 12087 10636 +11830 10452 10636 12087 7927 +11831 9329 7950 10572 12234 +11832 10830 12234 10572 7624 +11833 12051 11360 12117 7876 +11834 9723 7630 12167 10558 +11835 10938 7863 11560 10884 +11836 6908 10396 8619 11809 +11837 10159 7417 10624 11840 +11838 12201 8345 11828 10646 +11839 10557 7873 10466 12161 +11840 7793 10975 7454 11455 +11841 11888 6395 12139 10664 +11842 8618 10568 12198 6973 +11843 7402 8462 12112 10609 +11844 6423 12046 8267 11220 +11845 7736 11715 8202 12180 +11846 6770 8432 11772 9596 +11847 10614 11745 10985 7879 +11848 7657 11711 6481 11375 +11849 6504 11447 8063 11363 +11850 6255 11237 7472 12178 +11851 9909 10871 7281 8365 +11852 11936 10387 11494 6726 +11853 6268 7995 8720 10731 +11854 10265 6413 11809 8619 +11855 7755 10300 12074 7128 +11856 9102 12013 8667 10621 +11857 6621 10899 8270 12250 +11858 11543 6328 12177 10001 +11859 9169 11029 11482 7687 +11860 8826 8191 11940 12028 +11861 7471 11095 6949 10195 +11862 7024 11001 7944 10631 +11863 6987 9869 11567 9030 +11864 7717 10734 133 11819 +11865 8357 11440 6525 11137 +11866 10713 10682 11881 7900 +11867 10780 8103 11166 10287 +11868 7295 11119 12211 9084 +11869 7755 11709 6661 10300 +11870 7864 10684 6395 11888 +11871 7571 11191 8410 11192 +11872 7550 11569 7510 11767 +11873 8046 11362 7846 11287 +11874 8824 11874 10713 7900 +11875 10882 6527 10512 11473 +11876 11419 10647 11687 6460 +11877 10208 11664 12138 6672 +11878 8996 6454 11510 12036 +11879 6363 11728 7642 10600 +11880 7962 12043 12092 8642 +11881 11197 12038 10121 7978 +11882 10792 8007 10911 12109 +11883 8543 6739 11851 10244 +11884 10951 7923 10895 11371 +11885 11801 6766 11830 11484 +11886 10756 11778 11584 6813 +11887 10083 7805 11443 11442 +11888 11669 8187 11442 11443 +11889 9394 12124 10537 7080 +11890 7697 11251 7698 10689 +11891 7950 11596 7951 11868 +11892 10749 7032 10109 12042 +11893 10341 6596 12109 10911 +11894 10479 11054 11455 7454 +11895 8240 11353 6989 11063 +11896 9069 7650 11933 10732 +11897 12042 10680 11925 7909 +11898 12039 6952 11901 12067 +11899 11409 8362 11799 10124 +11900 6685 10807 7568 9565 +11901 7843 6935 10543 11127 +11902 8317 11769 105 11972 +11903 10787 6710 10547 11675 +11904 10211 10856 11691 6770 +11905 7699 11654 8028 11330 +11906 7780 11199 8066 11662 +11907 8005 11253 8006 11477 +11908 6659 12114 7964 11232 +11909 7489 11211 7877 10653 +11910 8367 10377 8539 12041 +11911 9884 7574 12205 10660 +11912 11186 7949 12190 11196 +11913 7804 11082 6262 10423 +11914 7727 12045 8425 11002 +11915 8975 10918 11612 12245 +11916 8012 6842 12210 11544 +11917 7780 11662 6324 11073 +11918 7933 11560 6818 11798 +11919 6677 10668 7846 12267 +11920 8720 7995 12146 10527 +11921 11388 7781 12080 10651 +11922 7742 11851 6739 11270 +11923 8767 10749 6809 11527 +11924 7712 12103 8370 12111 +11925 11761 10968 11692 7756 +11926 10500 7696 12246 10499 +11927 8146 10975 7793 11564 +11928 8166 11446 6824 11648 +11929 10270 10932 11856 7675 +11930 9563 11897 10762 7854 +11931 8886 6520 10745 11361 +11932 7937 11716 6655 11110 +11933 8225 8312 11123 12094 +11934 11736 12094 11123 6893 +11935 7938 8651 11621 11297 +11936 9217 6608 11922 10071 +11937 11968 6301 12103 10827 +11938 9840 7672 11400 11133 +11939 11802 10686 12090 7827 +11940 7902 6682 12191 10509 +11941 11369 12219 11252 7818 +11942 10520 8167 11252 12219 +11943 6749 11182 7883 11806 +11944 10502 8340 11856 10932 +11945 8615 8156 11280 8979 +11946 7937 11425 8080 11487 +11947 8116 11885 8052 11791 +11948 8395 6499 12099 11018 +11949 8024 8833 11018 12099 +11950 6596 11614 8522 12109 +11951 9164 6315 11945 11104 +11952 10276 6706 10961 11002 +11953 8471 12247 6998 10611 +11954 6503 11151 7840 9731 +11955 125 11780 11520 124 +11956 122 123 11520 11781 +11957 11780 8120 11781 11520 +11958 11638 11331 8504 7571 +11959 10655 8099 11754 11483 +11960 151 152 11483 11754 +11961 6676 10490 7165 12157 +11962 10012 11764 11874 6745 +11963 7838 10791 6724 12007 +11964 12022 12248 10876 6892 +11965 11511 11363 11491 7948 +11966 8074 11631 6512 12140 +11967 12035 11967 10834 7833 +11968 8074 11144 7871 11631 +11969 8142 11508 7983 10796 +11970 6449 11201 8326 12171 +11971 11240 8200 10894 6297 +11972 7692 12097 10746 8343 +11973 7758 12004 8898 10996 +11974 8308 12005 7973 11818 +11975 11531 12196 11125 6380 +11976 6972 11928 7709 10867 +11977 9275 7250 11757 9800 +11978 8892 11013 11655 7578 +11979 6310 8279 11817 10356 +11980 8624 7730 11009 11008 +11981 6305 8828 7822 11218 +11982 8658 7339 10652 8185 +11983 8897 11870 11050 6508 +11984 9688 11050 11870 7971 +11985 10234 10154 11851 7742 +11986 7382 8493 12155 11863 +11987 6422 11506 7931 11167 +11988 6847 11580 8068 11589 +11989 9802 6663 11452 11451 +11990 11739 8300 11724 10533 +11991 10499 12246 11771 6723 +11992 12031 8258 11315 8032 +11993 9259 6908 11809 9260 +11994 10665 7617 10788 12131 +11995 9089 11962 10953 7748 +11996 11414 6414 11327 11782 +11997 10946 6402 11642 12057 +11998 8387 11695 6745 10724 +11999 6737 11860 8562 10969 +12000 11914 8074 12140 10772 +12001 7550 11767 8145 6433 +12002 10747 7810 12162 10769 +12003 10387 7367 11493 11494 +12004 8774 10898 8061 11694 +12005 6785 11297 11621 8149 +12006 7685 11205 7806 11083 +12007 7447 9622 11451 11452 +12008 7940 6265 11196 12190 +12009 10684 7864 11850 11509 +12010 8925 11550 7668 10548 +12011 9499 8675 11513 6306 +12012 7302 11845 8100 11114 +12013 10757 9876 12078 10962 +12014 7826 6308 10871 9909 +12015 7681 10993 8306 11859 +12016 12212 7893 12199 10352 +12017 8226 8495 11044 12153 +12018 8257 8423 12153 11044 +12019 11162 11544 12210 7936 +12020 7182 12125 8455 10800 +12021 11322 7319 11946 9772 +12022 7849 12098 6873 10842 +12023 6933 10529 7688 11420 +12024 8609 11638 7571 11192 +12025 8842 10352 12199 7604 +12026 7598 8511 12270 11131 +12027 11830 7935 11258 11484 +12028 11154 12063 12064 6841 +12029 12187 12059 11539 7941 +12030 7749 12254 6818 10761 +12031 11737 11101 11807 6302 +12032 10113 11603 11514 6343 +12033 8536 8017 11514 11603 +12034 7828 10847 8771 12257 +12035 11749 12201 10798 6391 +12036 11261 10984 12276 6873 +12037 12189 8037 12276 10984 +12038 9311 6547 11875 11551 +12039 9692 11551 11875 8126 +12040 11429 10820 12256 7957 +12041 9347 7544 12256 10820 +12042 12025 8198 11432 12027 +12043 10941 12274 11749 8346 +12044 7664 10936 8471 12056 +12045 8432 6770 11691 11036 +12046 8083 11720 8049 11588 +12047 7550 6433 10055 7551 +12048 9686 7752 11861 11120 +12049 7946 11753 7201 11245 +12050 10324 8255 12269 11687 +12051 7353 11601 8281 9709 +12052 11474 6357 12224 10705 +12053 12091 6979 11759 7716 +12054 7013 11872 8335 12144 +12055 9307 11857 11152 7910 +12056 6834 11963 8202 11715 +12057 6316 10965 12062 8360 +12058 12097 10962 12078 6286 +12059 8453 11974 6631 11331 +12060 7682 11015 6743 10948 +12061 10226 11223 11224 7439 +12062 12108 9772 11946 7618 +12063 11610 11691 10856 6622 +12064 6665 11390 11713 9411 +12065 7997 7740 11829 10900 +12066 9330 7715 12040 10630 +12067 8145 8874 11865 6433 +12068 11611 7670 9608 9910 +12069 7745 11058 6934 12010 +12070 6944 11391 8143 11290 +12071 7945 11688 8166 11648 +12072 11082 11081 10922 7821 +12073 8309 6282 11235 11379 +12074 8107 11907 6881 11144 +12075 8579 11309 7775 11815 +12076 12201 11749 12274 8345 +12077 6888 7890 11957 8507 +12078 8103 6794 11461 9444 +12079 8116 11250 7040 11885 +12080 10583 6753 12110 10995 +12081 8386 12118 11744 6455 +12082 9123 10718 12173 11886 +12083 9443 7153 12032 11808 +12084 10767 11808 12032 8234 +12085 11298 10546 11937 8169 +12086 6827 7832 8616 11598 +12087 9941 11982 10457 7769 +12088 10055 6433 11865 7149 +12089 9660 12232 11663 6744 +12090 9316 11025 6264 12106 +12091 8042 12120 11194 8189 +12092 7618 11946 11947 9373 +12093 10840 8065 12158 11264 +12094 7725 11862 8514 11314 +12095 12249 8097 11304 8330 +12096 11261 8008 12189 10984 +12097 6397 11183 11999 8312 +12098 9607 12167 7630 11268 +12099 10592 8032 11315 6642 +12100 11191 10817 11625 6662 +12101 7344 10089 7149 10088 +12102 12255 8217 11453 11701 +12103 7586 12168 8857 11026 +12104 8188 11208 8461 11760 +12105 11101 11737 11907 8107 +12106 12020 8330 11304 6707 +12107 12078 9876 11591 8328 +12108 12071 7739 11948 10530 +12109 6656 12058 9424 11165 +12110 11184 10765 11982 6303 +12111 12243 12244 11857 6889 +12112 9269 7572 12000 9853 +12113 11968 10827 11149 11197 +12114 7671 11981 8302 11254 +12115 11467 12059 12187 8266 +12116 8340 12241 9924 11856 +12117 8117 12148 6976 11430 +12118 6723 11771 8402 11255 +12119 7278 10876 12248 8091 +12120 8293 8080 11425 11635 +12121 8597 11428 7908 11976 +12122 6311 8481 11834 12037 +12123 10004 12265 11495 6448 +12124 11496 11495 12265 8170 +12125 6787 11688 7945 11307 +12126 11101 8107 11914 12054 +12127 10071 11922 12255 7540 +12128 11484 7981 11673 11801 +12129 8068 11782 8029 11589 +12130 6319 12147 7729 11708 +12131 8394 12061 8119 11439 +12132 9654 12067 11901 8336 +12133 9710 12256 7544 11059 +12134 10617 8443 12159 11035 +12135 7672 11066 8158 11543 +12136 6938 11565 10118 7840 +12137 7668 11827 6338 11210 +12138 10651 8087 12195 11388 +12139 8754 12211 11119 6871 +12140 10154 11971 11167 7931 +12141 10034 6960 11247 7830 +12142 11745 6465 11863 12155 +12143 10230 11947 11946 7319 +12144 8553 12133 8014 11310 +12145 10870 6807 11388 12195 +12146 8686 11942 10397 6836 +12147 12257 11262 12115 7828 +12148 6523 11449 8095 11583 +12149 6549 12126 7921 11272 +12150 7234 10913 8073 10580 +12151 10363 10921 11847 7958 +12152 8413 11898 12227 8278 +12153 10679 12227 11898 8171 +12154 6862 11141 8149 11621 +12155 11363 8063 12092 11491 +12156 11263 6867 11635 11425 +12157 8156 8157 10573 11280 +12158 10600 7887 10900 11829 +12159 12043 6970 11491 12092 +12160 8426 10394 6901 11323 +12161 8112 10903 8113 11274 +12162 8474 11887 7880 11690 +12163 11244 11968 11197 7978 +12164 11240 6297 11930 7728 +12165 109 110 12117 11360 +12166 7530 10225 7686 10482 +12167 10897 10264 10265 8018 +12168 9924 12241 10389 6505 +12169 8581 6568 12222 11320 +12170 7919 12048 8588 12047 +12171 10089 7344 12136 10990 +12172 8558 11301 12258 6929 +12173 6776 8059 12258 11301 +12174 11213 11262 12257 6962 +12175 6766 12018 8372 11830 +12176 10762 9634 11224 7854 +12177 12128 11961 11960 8275 +12178 8107 11144 8074 11914 +12179 9196 12119 7375 11418 +12180 7795 11444 8375 12100 +12181 9357 8088 11907 11737 +12182 7564 11740 6240 10688 +12183 6418 11597 7951 11596 +12184 10015 12204 7777 11699 +12185 12196 9749 7051 11125 +12186 11782 11327 12243 8029 +12187 8543 10939 12269 7735 +12188 8070 11334 8033 12244 +12189 6812 11779 8549 12089 +12190 8881 11369 7818 12228 +12191 10601 6817 12205 11296 +12192 8549 12141 8084 12170 +12193 7027 12093 8050 11571 +12194 8050 12093 8223 11987 +12195 7591 9809 6446 11193 +12196 11104 11945 11528 7901 +12197 10345 10346 12023 6279 +12198 10577 11524 12134 7890 +12199 9672 11618 7751 11731 +12200 7832 11107 7990 10872 +12201 6608 8632 12255 11922 +12202 6341 10835 8203 10701 +12203 8388 11985 6451 11810 +12204 8647 11958 11959 7182 +12205 8651 6245 12027 11432 +12206 11719 12054 11914 10772 +12207 10744 6301 11968 11244 +12208 6951 10781 7902 10509 +12209 8481 12163 7130 11586 +12210 8257 11541 7982 12206 +12211 6787 11738 8079 11688 +12212 7943 11816 7944 11001 +12213 7770 9855 12138 11664 +12214 9360 7951 11597 11820 +12215 8874 10088 7149 11865 +12216 6380 11125 8609 11192 +12217 9873 10821 12000 7572 +12218 11765 10597 11569 7550 +12219 7696 8499 11771 12246 +12220 11271 11663 12232 8000 +12221 6726 11494 11493 8094 +12222 8361 12185 8105 12101 +12223 9643 11729 7813 12194 +12224 7143 10860 12016 8668 +12225 10580 8073 12175 10612 +12226 10001 12177 7746 11500 +12227 10475 7768 11513 11986 +12228 8791 12216 9514 7099 +12229 12041 12057 11642 8367 +12230 7902 10118 11565 7099 +12231 8680 11436 6806 11912 +12232 11723 8260 11801 11673 +12233 6681 10652 6503 9769 +12234 6819 11937 11382 7834 +12235 12118 9869 6987 11744 +12236 8228 12180 8202 12130 +12237 11534 11283 12143 8207 +12238 11467 6242 11539 12059 +12239 6863 11505 7339 8658 +12240 7824 6255 12178 11195 +12241 8750 12215 12182 8233 +12242 114 115 12182 12215 +12243 7674 11935 8193 11660 +12244 11266 11528 11945 8131 +12245 6890 11820 11597 8206 +12246 7165 11408 7989 12157 +12247 7250 11380 6386 11757 +12248 7759 10739 6940 11768 +12249 8142 11290 8143 11508 +12250 9324 9821 6856 11984 +12251 7562 11634 8289 11212 +12252 10804 10753 11342 6536 +12253 9959 10959 12002 6951 +12254 6548 7936 12210 8986 +12255 11640 8005 12064 12063 +12256 6517 12026 8198 12025 +12257 6950 7471 10612 12175 +12258 8410 11531 6380 11192 +12259 9797 7619 11938 9812 +12260 7715 12052 8201 12040 +12261 6640 11959 11958 8582 +12262 8696 7806 11205 11619 +12263 7771 12027 6245 12028 +12264 8057 11404 7028 11988 +12265 6264 7895 11420 12278 +12266 9565 7568 12023 10346 +12267 10807 9800 11757 7778 +12268 8247 7854 11224 11223 +12269 9563 8237 11345 11897 +12270 10913 9853 12000 6681 +12271 11610 8575 11036 11691 +12272 6794 11402 8145 11461 +12273 6279 8185 12000 10821 +12274 6841 12064 8703 12065 +12275 8790 6651 10259 7308 +12276 10306 7525 8460 6849 +3 1 5 6088 +12277 431 3025 1459 2672 6470 9064 7498 8711 +12278 452 4321 1762 3904 6491 10360 7801 9943 +12279 1085 2871 211 2204 7124 8910 6250 8243 +12280 4806 522 2864 1829 10845 6561 8903 7868 +12281 5642 2098 2750 999 11681 8137 8789 7038 +12282 5398 311 2638 2044 11437 6350 8677 8083 +12283 5590 2686 1256 3349 11629 8725 7295 9388 +12284 4877 856 2236 2929 10916 6895 8275 8968 +12285 2652 4762 1267 2359 8691 10801 7306 8398 +12286 1014 3035 1347 2443 7053 9074 7386 8482 +12287 1940 3392 293 5063 7979 9431 6332 11102 +12288 5154 1874 1486 2421 11193 7913 7525 8460 +12289 4975 2367 3960 614 11014 8406 9999 6653 +12290 1473 2924 645 2345 7512 8963 6684 8384 +12291 4011 2819 3809 1428 10050 8858 9848 7467 +12292 5675 2283 5217 1820 11714 8322 11256 7859 +12293 1750 3426 1284 3740 7789 9465 7323 9779 +12294 5510 4505 1538 2438 11549 10544 7577 8477 +12295 2974 443 2750 2098 9013 6482 8789 8137 +12296 2443 4530 3672 317 8482 10569 9711 6356 +12297 4819 845 4544 1946 10858 6884 10583 7985 +12298 3992 1830 5535 1277 10031 7869 11574 7316 +12299 1271 2665 4889 5371 7310 8704 10928 11410 +12300 2408 5663 593 2224 8447 11702 6632 8263 +12301 4017 1836 5940 1262 10056 7875 11979 7301 +12302 3088 4511 4045 573 9127 10550 10084 6612 +12303 348 2505 1590 4293 6387 8544 7629 10332 +12304 680 4377 1762 3611 6719 10416 7801 9650 +12305 2263 4735 2239 429 8302 10774 8278 6468 +12306 2924 1473 3893 4414 8963 7512 9932 10453 +12307 5465 1650 2099 2956 11504 7689 8138 8995 +12308 3641 1845 3559 2893 9680 7884 9598 8932 +12309 1857 4673 842 3953 7896 10712 6881 9992 +12310 2834 918 5632 1936 8873 6957 11671 7975 +12311 2342 2529 2499 1107 8381 8568 8538 7146 +12312 5262 2019 221 2519 11301 8058 6260 8558 +12313 1859 5560 382 2948 7898 11599 6421 8987 +12314 1285 3144 205 2392 7324 9183 6244 8431 +12315 870 3524 2198 256 6909 9563 8237 6295 +12316 2296 6105 2158 261 8335 12144 8197 6300 +12317 1916 2974 5506 5359 7955 9013 11545 11398 +12318 2890 4206 2661 441 8929 10245 8700 6480 +12319 2482 3351 3179 353 8521 9390 9218 6392 +12320 2132 4640 2114 295 8171 10679 8153 6334 +12321 814 4514 1333 2777 6853 10553 7372 8816 +12322 2587 2109 2691 291 8626 8148 8730 6330 +12323 3866 1864 4667 1504 9905 7903 10706 7543 +12324 5427 2086 3309 219 11466 8125 9348 6258 +12325 2136 812 1707 4802 8175 6851 7746 10841 +12326 2406 2205 5356 801 8445 8244 11395 6840 +12327 5261 406 6163 1865 11300 6445 12202 7904 +12328 3866 1345 5877 1864 9905 7384 11916 7903 +12329 4944 1982 4544 845 10983 8021 10583 6884 +12330 4552 2790 949 2611 10591 8829 6988 8650 +12331 4897 494 2437 2666 10936 6533 8476 8705 +12332 3906 864 2408 2224 9945 6903 8447 8263 +12333 2388 2041 5448 860 8427 8080 11487 6899 +12334 936 2792 1274 2594 6975 8831 7313 8633 +12335 4896 682 2834 1936 10935 6721 8873 7975 +12336 1448 3128 682 2719 7487 9167 6721 8758 +12337 2578 265 4865 2123 8617 6304 10904 8162 +12338 4197 1871 3268 688 10236 7910 9307 6727 +12339 2251 2288 1780 4932 8290 8327 7819 10971 +12340 5418 4095 273 2456 11457 10134 6312 8495 +12341 1462 2726 991 3211 7501 8765 7030 9250 +12342 2410 1181 3195 3672 8449 7220 9234 9711 +12343 2952 1922 5484 917 8991 7961 11523 6956 +12344 2634 2574 6220 809 8673 8613 12259 6848 +12345 4735 1947 4400 866 10774 7986 10439 6905 +12346 51 5120 2100 52 147 11159 8139 148 +12347 2696 441 2661 4024 8735 6480 8700 10063 +12348 945 3447 1459 3025 6984 9486 7498 9064 +12349 5831 1932 2938 1009 11870 7971 8977 7048 +12350 5561 1876 3374 1284 11600 7915 9413 7323 +12351 5478 3739 1219 2459 11517 9778 7258 8498 +12352 511 5665 1965 5601 6550 11704 8004 11640 +12353 2688 5805 5446 941 8727 11844 11485 6980 +12354 1147 3895 1958 5325 7186 9934 7997 11364 +12355 2323 5235 837 5370 8362 11274 6876 11409 +12356 2040 5939 2191 5699 8079 11978 8230 11738 +12357 3973 1064 3278 1885 10012 7103 9317 7924 +12358 3012 1014 2596 3564 9051 7053 8635 9603 +12359 1524 4260 898 2618 7563 10299 6937 8657 +12360 2725 1977 1308 5872 8764 8016 7347 11911 +12361 294 2781 2189 6141 6333 8820 8228 12180 +12362 1940 5017 722 3724 7979 11056 6761 9763 +12363 5082 3404 1114 3153 11121 9443 7153 9192 +12364 772 2244 1478 4212 6811 8283 7517 10251 +12365 1958 454 1957 5325 7997 6493 7996 11364 +12366 3495 1028 3105 4680 9534 7067 9144 10719 +12367 5171 1712 3933 299 11210 7751 9972 6338 +12368 1873 3699 1562 4933 7912 9738 7601 10972 +12369 4780 1949 4271 611 10819 7988 10310 6650 +12370 1573 3271 5865 4266 7612 9310 11904 10305 +12371 4319 2162 2779 212 10358 8201 8818 6251 +12372 4861 1958 3895 621 10900 7997 9934 6660 +12373 4884 2587 4653 819 10923 8626 10692 6858 +12374 2214 5853 2142 507 8253 11892 8181 6546 +12375 785 2114 1759 5407 6824 8153 7798 11446 +12376 3097 4849 3713 1281 9136 10888 9752 7320 +12377 1615 4128 350 2533 7654 10167 6389 8572 +12378 365 2562 1738 4482 6404 8601 7777 10521 +12379 2584 843 4218 2108 8623 6882 10257 8147 +12380 5464 1828 4624 2379 11503 7867 10663 8418 +12381 4024 930 5696 2650 10063 6969 11735 8689 +12382 5631 789 5254 4091 11670 6828 11293 10130 +12383 1070 3996 1916 3975 7109 10035 7955 10014 +12384 2645 2205 2406 967 8684 8244 8445 7006 +12385 1886 5431 2644 4536 7925 11470 8683 10575 +12386 784 3563 1825 3932 6823 9602 7864 9971 +12387 4968 2019 5262 737 11007 8058 11301 6776 +12388 4379 5519 4375 1376 10418 11558 10414 7415 +12389 3504 856 4616 2060 9543 6895 10655 8099 +12390 1636 4232 663 2516 7675 10271 6702 8555 +12391 1510 3434 1013 2805 7549 9473 7052 8844 +12392 2713 4096 3497 482 8752 10135 9536 6521 +12393 1181 2410 549 3082 7220 8449 6588 9121 +12394 2483 951 1783 5575 8522 6990 7822 11614 +12395 2013 3026 720 5951 8052 9065 6759 11990 +12396 1785 4347 1338 5156 7824 10386 7377 11195 +12397 4747 2014 5702 970 10786 8053 11741 7009 +12398 2494 3951 3152 607 8533 9990 9191 6646 +12399 5090 1963 3784 874 11129 8002 9823 6913 +12400 2486 973 2158 2485 8525 7012 8197 8524 +12401 880 2472 2017 5515 6919 8511 8056 11554 +12402 2440 3072 2933 1122 8479 9111 8972 7161 +12403 1811 2539 373 4792 7850 8578 6412 10831 +12404 3864 1365 4223 2045 9903 7404 10262 8084 +12405 3864 2045 4343 654 9903 8084 10382 6693 +12406 4851 484 5036 3553 10890 6523 11075 9592 +12407 3904 1930 6130 452 9943 7969 12169 6491 +12408 1108 2987 2184 5948 7147 9026 8223 11987 +12409 6219 2453 5476 2020 12258 8492 11515 8059 +12410 4878 632 4236 2008 10917 6671 10275 8047 +12411 4707 1466 2458 4054 10746 7505 8497 10093 +12412 5096 2366 4462 1553 11135 8405 10501 7592 +12413 3996 443 2974 1916 10035 6482 9013 7955 +12414 333 2682 1134 2588 6372 8721 7173 8627 +12415 3924 450 2620 2275 9963 6489 8659 8314 +12416 1411 3329 980 2867 7450 9368 7019 8906 +12417 1063 2898 1396 2850 7102 8937 7435 8889 +12418 2006 4820 4309 929 8045 10859 10348 6968 +12419 3831 2079 2583 867 9870 8118 8622 6906 +12420 682 3128 1449 2834 6721 9167 7488 8873 +12421 4756 411 2952 1981 10795 6450 8991 8020 +12422 5569 4650 814 2777 11608 10689 6853 8816 +12423 2866 4344 3603 312 8905 10383 9642 6351 +12424 3635 1080 2515 2082 9674 7119 8554 8121 +12425 1984 790 2092 5227 8023 6829 8131 11266 +12426 2475 2685 3991 1102 8514 8724 10030 7141 +12427 5408 2024 4769 1107 11447 8063 10808 7146 +12428 4192 1935 5930 211 10231 7974 11969 6250 +12429 4190 205 3144 1931 10229 6244 9183 7970 +12430 267 2389 949 2390 6306 8428 6988 8429 +12431 4194 2245 3916 422 10233 8284 9955 6461 +12432 805 3816 1608 3043 6844 9855 7647 9082 +12433 3649 1205 2938 1932 9688 7244 8977 7971 +12434 3430 1949 4780 1332 9469 7988 10819 7371 +12435 481 4706 1428 3809 6520 10745 7467 9848 +12436 4190 1931 4064 1133 10229 7970 10103 7172 +12437 4263 1436 4611 2137 10302 7475 10650 8176 +12438 372 4315 1740 2843 6411 10354 7779 8882 +12439 2967 2107 4936 969 9006 8146 10975 7008 +12440 893 2553 1160 2552 6932 8592 7199 8591 +12441 6011 1938 4659 1470 12050 7977 10698 7509 +12442 708 6059 1846 2964 6747 12098 7885 9003 +12443 1131 3827 1469 4147 7170 9866 7508 10186 +12444 987 3113 781 2747 7026 9152 6820 8786 +12445 1425 3746 857 3552 7464 9785 6896 9591 +12446 3904 963 5574 1930 9943 7002 11613 7969 +12447 1382 2414 1492 3557 7421 8453 7531 9596 +12448 2932 5627 1522 2438 8971 11666 7561 8477 +12449 885 4396 4731 2722 6924 10435 10770 8761 +12450 501 2748 1067 2731 6540 8787 7106 8770 +12451 698 4830 1986 3434 6737 10869 8025 9473 +12452 3724 811 3392 1940 9763 6850 9431 7979 +12453 4795 635 4097 2001 10834 6674 10136 8040 +12454 5100 1360 5629 2059 11139 7399 11668 8098 +12455 2697 904 5073 5666 8736 6943 11112 11705 +12456 2180 3923 2050 881 8219 9962 8089 6920 +12457 5179 813 3861 1783 11218 6852 9900 7822 +12458 4764 677 2528 1890 10803 6716 8567 7929 +12459 1736 4217 786 4422 7775 10256 6825 10461 +12460 3383 4554 2498 813 9422 10593 8537 6852 +12461 1733 3657 1130 3656 7772 9696 7169 9695 +12462 2618 2445 6096 1847 8657 8484 12135 7886 +12463 1695 2746 640 4552 7734 8785 6679 10591 +12464 1505 2957 415 3308 7544 8996 6454 9347 +12465 3250 440 4727 1751 9289 6479 10766 7790 +12466 1876 4966 1708 3374 7915 11005 7747 9413 +12467 1995 2979 733 4823 8034 9018 6772 10862 +12468 1022 2426 1023 2714 7061 8465 7062 8753 +12469 3479 1964 4042 1006 9518 8003 10081 7045 +12470 5967 2325 5702 2014 12006 8364 11741 8053 +12471 1969 4073 5353 5367 8008 10112 11392 11406 +12472 4122 1249 4271 1949 10161 7288 10310 7988 +12473 5457 807 2568 2131 11496 6846 8607 8170 +12474 1856 1482 3811 225 7895 7521 9850 6264 +12475 2388 446 2254 2041 8427 6485 8293 8080 +12476 1584 3551 603 3047 7623 9590 6642 9086 +12477 1543 5605 2571 4222 7582 11644 8610 10261 +12478 3641 360 3070 2212 9680 6399 9109 8251 +12479 3071 1177 2468 2469 9110 7216 8507 8508 +12480 797 2647 1345 3866 6836 8686 7384 9905 +12481 1876 2843 821 4966 7915 8882 6860 11005 +12482 721 2075 2074 1100 6760 8114 8113 7139 +12483 3629 226 3826 5106 9668 6265 9865 11145 +12484 830 2190 4447 2258 6869 8229 10486 8297 +12485 4010 2088 94 93 10049 8127 190 189 +12486 317 2596 1014 2443 6356 8635 7053 8482 +12487 1488 2942 433 2679 7527 8981 6472 8718 +12488 4178 1960 5269 1135 10217 7999 11308 7174 +12489 986 4880 1592 2209 7025 10919 7631 8248 +12490 2565 2900 2736 1010 8604 8939 8775 7049 +12491 1259 2342 3327 5583 7298 8381 9366 11622 +12492 3161 2122 1334 5953 9200 8161 7373 11992 +12493 270 3692 911 2610 6309 9731 6950 8649 +12494 5783 2116 5161 1663 11822 8155 11200 7702 +12495 417 2511 1819 3296 6456 8550 7858 9335 +12496 5594 1644 3776 2937 11633 7683 9815 8976 +12497 770 1870 6003 4710 6809 7909 12042 10749 +12498 1010 2736 1099 2748 7049 8775 7138 8787 +12499 2642 2357 3146 994 8681 8396 9185 7033 +12500 2592 215 3972 4474 8631 6254 10011 10513 +12501 5784 932 5967 2377 11823 6971 12006 8416 +12502 679 2687 1538 4323 6718 8726 7577 10362 +12503 369 4513 1790 3586 6408 10552 7829 9625 +12504 58 57 5444 4616 154 153 11483 10655 +12505 2103 5251 5462 3208 8142 11290 11501 9247 +12506 5982 509 2303 2248 12021 6548 8342 8287 +12507 4430 1960 4178 693 10469 7999 10217 6732 +12508 4496 412 5939 2040 10535 6451 11978 8079 +12509 1850 5930 789 3988 7889 11969 6828 10027 +12510 713 2461 1677 4179 6752 8500 7716 10218 +12511 2704 568 3498 3852 8743 6607 9537 9891 +12512 2720 4045 3370 1184 8759 10084 9409 7223 +12513 39 38 3160 3986 135 134 9199 10025 +12514 1095 2769 1381 3643 7134 8808 7420 9682 +12515 4800 763 2200 2199 10839 6802 8239 8238 +12516 649 2537 1600 4235 6688 8576 7639 10274 +12517 2726 2231 3999 719 8765 8270 10038 6758 +12518 3924 1125 6111 1963 9963 7164 12150 8002 +12519 2333 268 2862 4606 8372 6307 8901 10645 +12520 5917 1964 4446 1413 11956 8003 10485 7452 +12521 5058 1973 803 2076 11097 8012 6842 8115 +12522 4940 2370 83 82 10979 8409 179 178 +12523 5853 1191 3099 3129 11892 7230 9138 9168 +12524 5501 1972 3728 675 11540 8011 9767 6714 +12525 1082 3297 1317 3409 7121 9336 7356 9448 +12526 3703 234 2399 4047 9742 6273 8438 10086 +12527 5245 3693 2180 2628 11284 9732 8219 8667 +12528 6150 1998 2797 758 12189 8037 8836 6797 +12529 2525 6021 2894 388 8564 12060 8933 6427 +12530 4432 1517 4104 2405 10471 7556 10143 8444 +12531 5000 1166 2605 3037 11039 7205 8644 9076 +12532 3083 284 3479 2051 9122 6323 9518 8090 +12533 5505 1973 5233 2402 11544 8012 11272 8441 +12534 1669 2604 1025 4792 7708 8643 7064 10831 +12535 2601 1009 2444 2437 8640 7048 8483 8476 +12536 1101 2084 613 3849 7140 8123 6652 9888 +12537 2600 518 3270 3714 8639 6557 9309 9753 +12538 2845 4305 4059 1468 8884 10344 10098 7507 +12539 1962 4620 790 5119 8001 10659 6829 11158 +12540 5681 751 2113 2742 11720 6790 8152 8781 +12541 2750 443 2579 4529 8789 6482 8618 10568 +12542 2093 3993 2571 1154 8132 10032 8610 7193 +12543 3334 847 5303 2072 9373 6886 11342 8111 +12544 4683 1413 4446 2448 10722 7452 10485 8487 +12545 6113 524 2529 2342 12152 6563 8568 8381 +12546 2542 529 3707 1158 8581 6568 9746 7197 +12547 2136 4802 428 2823 8175 10841 6467 8862 +12548 2870 2191 5939 3877 8909 8230 11978 9916 +12549 6036 4645 356 2252 12075 10684 6395 8291 +12550 1879 3150 227 4476 7918 9189 6266 10515 +12551 5771 958 2337 2431 11810 6997 8376 8470 +12552 2036 4419 620 6075 8075 10458 6659 12114 +12553 2328 4338 740 4516 8367 10377 6779 10555 +12554 3688 2327 3641 2893 9727 8366 9680 8932 +12555 2815 4021 2416 860 8854 10060 8455 6899 +12556 2286 5238 1991 1021 8325 11277 8030 7060 +12557 1934 5309 30 3273 7973 11348 126 9312 +12558 3074 2069 2903 919 9113 8108 8942 6958 +12559 4602 420 2675 2139 10641 6459 8714 8178 +12560 3987 1065 3728 1972 10026 7104 9767 8011 +12561 2438 1538 2687 4300 8477 7577 8726 10339 +12562 2769 584 3003 2183 8808 6623 9042 8222 +12563 4051 435 3987 1972 10090 6474 10026 8011 +12564 2843 2520 4543 821 8882 8559 10582 6860 +12565 3787 1320 3188 2372 9826 7359 9227 8411 +12566 2247 400 3758 1580 8286 6439 9797 7619 +12567 2509 1326 3292 3703 8548 7365 9331 9742 +12568 5962 1022 2714 2592 12001 7061 8753 8631 +12569 6166 1996 3314 778 12205 8035 9353 6817 +12570 2723 2951 2169 1034 8762 8990 8208 7073 +12571 2933 3974 3917 1430 8972 10013 9956 7469 +12572 5189 1709 3050 2102 11228 7748 9089 8141 +12573 2132 3855 875 5859 8171 9894 6914 11898 +12574 3345 944 5277 2800 9384 6983 11316 8839 +12575 2444 306 2116 5539 8483 6345 8155 11578 +12576 660 4137 1773 3936 6699 10176 7812 9975 +12577 5610 2186 2273 358 11649 8225 8312 6397 +12578 5606 2187 2456 273 11645 8226 8495 6312 +12579 3994 2065 4988 765 10033 8104 11027 6804 +12580 234 3533 1164 2399 6273 9572 7203 8438 +12581 974 2485 2158 6105 7013 8524 8197 12144 +12582 925 5549 2044 2638 6964 11588 8083 8677 +12583 746 4234 2675 2110 6785 10273 8714 8149 +12584 1046 2238 5871 2237 7085 8277 11910 8276 +12585 1623 3694 754 3218 7662 9733 6793 9257 +12586 261 2158 973 3573 6300 8197 7012 9612 +12587 5301 1545 3960 2367 11340 7584 9999 8406 +12588 4528 1043 2673 2157 10567 7082 8712 8196 +12589 2112 4724 735 2854 8151 10763 6774 8893 +12590 5957 976 2248 2303 11996 7015 8287 8342 +12591 3841 734 3966 2207 9880 6773 10005 8246 +12592 3058 2583 2079 1064 9097 8622 8118 7103 +12593 5075 2972 5553 773 11114 9011 11592 6812 +12594 472 3134 1093 3543 6511 9173 7132 9582 +12595 5317 3822 1041 3355 11356 9861 7080 9394 +12596 717 4915 1907 5134 6756 10954 7946 11173 +12597 1840 4457 1043 4528 7879 10496 7082 10567 +12598 3538 2489 3823 246 9577 8528 9862 6285 +12599 4553 1993 3968 1170 10592 8032 10007 7209 +12600 3532 957 4474 2418 9571 6996 10513 8457 +12601 5111 98 97 2424 11150 194 193 8463 +12602 1013 6007 2228 3546 7052 12046 8267 9585 +12603 674 5046 5994 3435 6713 11085 12033 9474 +12604 969 3745 2397 5723 7008 9784 8436 11762 +12605 5671 1438 3070 2975 11710 7477 9109 9014 +12606 4479 1029 3263 2021 10518 7068 9302 8060 +12607 2506 954 2878 3536 8545 6993 8917 9575 +12608 1298 3955 783 2277 7337 9994 6822 8316 +12609 4943 2624 730 4135 10982 8663 6769 10174 +12610 1572 2105 385 5007 7611 8144 6424 11046 +12611 4325 2001 4097 1356 10364 8040 10136 7395 +12612 1970 3098 1443 5149 8009 9137 7482 11188 +12613 5966 867 2583 2269 12005 6906 8622 8308 +12614 3582 1075 3309 2086 9621 7114 9348 8125 +12615 2983 2680 2182 1193 9022 8719 8221 7232 +12616 919 2903 1651 2424 6958 8942 7690 8463 +12617 3418 2345 3883 1008 9457 8384 9922 7047 +12618 785 5609 2470 5372 6824 11648 8509 11411 +12619 4229 2960 4732 343 10268 8999 10771 6382 +12620 984 5004 2050 3163 7023 11043 8089 9202 +12621 489 2599 887 3109 6528 8638 6926 9148 +12622 4217 397 5176 2095 10256 6436 11215 8134 +12623 1985 5541 799 2582 8024 11580 6838 8621 +12624 3320 2212 3070 1044 9359 8251 9109 7083 +12625 1353 3937 1565 2803 7392 9976 7604 8842 +12626 96 2762 2424 97 192 8801 8463 193 +12627 469 2858 1109 2813 6508 8897 7148 8852 +12628 2739 1241 3158 3310 8778 7280 9197 9349 +12629 5632 3820 4896 1936 11671 9859 10935 7975 +12630 5915 2008 4236 1367 11954 8047 10275 7406 +12631 4017 4311 2805 227 10056 10350 8844 6266 +12632 1059 2873 1123 2586 7098 8912 7162 8625 +12633 4370 4417 2246 831 10409 10456 8285 6870 +12634 5305 2086 5427 2560 11344 8125 11466 8599 +12635 657 4434 1837 3975 6696 10473 7876 10014 +12636 1816 4083 6168 2598 7855 10122 12207 8637 +12637 925 2733 2010 5549 6964 8772 8049 11588 +12638 2329 4980 988 5013 8368 11019 7027 11052 +12639 5603 1624 2176 2177 11642 7663 8215 8216 +12640 6039 247 3787 2289 12078 6286 9826 8328 +12641 3673 1361 3878 2758 9712 7400 9917 8797 +12642 4749 431 2672 2220 10788 6470 8711 8259 +12643 4319 212 3592 2009 10358 6251 9631 8048 +12644 1500 3126 793 5299 7539 9165 6832 11338 +12645 4048 946 5023 2134 10087 6985 11062 8173 +12646 2106 2835 5637 756 8145 8874 11676 6795 +12647 3605 3886 2801 1115 9644 9925 8840 7154 +12648 5813 1048 2677 2355 11852 7087 8716 8394 +12649 332 3550 1405 3029 6371 9589 7444 9068 +12650 5545 2187 5606 1775 11584 8226 11645 7814 +12651 5142 387 4479 2021 11181 6426 10518 8060 +12652 1786 5571 2536 236 7825 11610 8575 6275 +12653 3715 2313 4677 251 9754 8352 10716 6290 +12654 5906 2092 4587 276 11945 8131 10626 6315 +12655 346 3121 1417 4609 6385 9160 7456 10648 +12656 4222 2571 3993 1664 10261 8610 10032 7703 +12657 4127 2011 2515 376 10166 8050 8554 6415 +12658 5702 2631 2378 970 11741 8670 8417 7009 +12659 4435 1169 2831 5165 10474 7208 8870 11204 +12660 4668 2046 2954 1537 10707 8085 8993 7576 +12661 1129 2877 518 2600 7168 8916 6557 8639 +12662 4106 2015 4678 513 10145 8054 10717 6552 +12663 5701 201 5119 2268 11740 6240 11158 8307 +12664 1232 2604 1669 2767 7271 8643 7708 8806 +12665 3367 3373 2499 2529 9406 9412 8538 8568 +12666 2850 1396 4008 3635 8889 7435 10047 9674 +12667 4436 1729 2316 444 10475 7768 8355 6483 +12668 1319 2806 1068 3266 7358 8845 7107 9305 +12669 58 4616 2343 59 154 10655 8382 155 +12670 2837 1266 2770 2868 8876 7305 8809 8907 +12671 1818 4149 560 3117 7857 10188 6599 9156 +12672 5657 2043 6151 1901 11696 8082 12190 7940 +12673 1985 2794 808 5541 8024 8833 6847 11580 +12674 4178 2021 3263 693 10217 8060 9302 6732 +12675 3043 2454 5255 805 9082 8493 11294 6844 +12676 3095 996 4363 1848 9134 7035 10402 7887 +12677 4161 2097 3009 1189 10200 8136 9048 7228 +12678 5398 2742 1005 2882 11437 8781 7044 8921 +12679 5837 385 2105 3224 11876 6424 8144 9263 +12680 5771 2349 5924 958 11810 8388 11963 6997 +12681 2039 5280 915 2829 8078 11319 6954 8868 +12682 1352 2494 607 3700 7391 8533 6646 9739 +12683 5158 5999 3676 636 11197 12038 9715 6675 +12684 2723 1618 4549 2488 8762 7657 10588 8527 +12685 1401 5429 793 3126 7440 11468 6832 9165 +12686 1756 4161 1189 3332 7795 10200 7228 9371 +12687 5039 2379 4624 4567 11078 8418 10663 10606 +12688 5802 4501 499 2484 11841 10540 6538 8523 +12689 3120 1814 4576 5423 9159 7853 10615 11462 +12690 2928 2223 3706 979 8967 8262 9745 7018 +12691 2923 1769 4599 3899 8962 7808 10638 9938 +12692 4881 2412 3544 1116 10920 8451 9583 7155 +12693 5202 3338 441 2696 11241 9377 6480 8735 +12694 2499 3373 2244 465 8538 9412 8283 6504 +12695 678 4329 2304 6229 6717 10368 8343 12268 +12696 4937 2093 4562 778 10976 8132 10601 6817 +12697 4938 461 3993 2093 10977 6500 10032 8132 +12698 5301 2367 875 3855 11340 8406 6914 9894 +12699 4931 3320 1044 2833 10970 9359 7083 8872 +12700 1147 3542 1084 3895 7186 9581 7123 9934 +12701 4586 2033 4618 1407 10625 8072 10657 7446 +12702 5050 2111 3995 921 11089 8150 10034 6960 +12703 1476 2859 616 3648 7515 8898 6655 9687 +12704 482 3269 1347 2713 6521 9308 7386 8752 +12705 3864 654 4385 2210 9903 6693 10424 8249 +12706 5480 644 2669 2033 11519 6683 8708 8072 +12707 4648 6085 4498 780 10687 12124 10537 6819 +12708 1887 4373 640 2746 7926 10412 6679 8785 +12709 5750 5980 955 2627 11789 12019 6994 8666 +12710 5917 4111 4462 2366 11956 10150 10501 8405 +12711 5917 2366 4042 1964 11956 8405 10081 8003 +12712 99 2513 3135 100 195 8552 9174 196 +12713 4105 2625 2394 1124 10144 8664 8433 7163 +12714 5527 2838 2179 368 11566 8877 8218 6407 +12715 1927 4532 346 5441 7966 10571 6385 11480 +12716 1871 2626 398 5113 7910 8665 6437 11152 +12717 4481 2128 4428 279 10520 8167 10467 6318 +12718 962 2177 2176 4939 7001 8216 8215 10978 +12719 350 2446 975 2659 6389 8485 7014 8698 +12720 3579 2385 5188 955 9618 8424 11227 6994 +12721 448 5051 5148 2976 6487 11090 11187 9015 +12722 6032 3265 848 4491 12071 9304 6887 10530 +12723 1033 5922 5266 3494 7072 11961 11305 9533 +12724 4715 749 3610 2427 10754 6788 9649 8466 +12725 3640 4304 432 2350 9679 10343 6471 8389 +12726 5146 2129 2668 791 11185 8168 8707 6830 +12727 5146 1604 3743 2129 11185 7643 9782 8168 +12728 1155 4022 1770 4138 7194 10061 7809 10177 +12729 5809 629 2586 4895 11848 6668 8625 10934 +12730 3095 621 4883 1782 9134 6660 10922 7821 +12731 3261 3807 2806 1319 9300 9846 8845 7358 +12732 2154 5621 622 2788 8193 11660 6661 8827 +12733 5139 1705 3940 288 11178 7744 9979 6327 +12734 1849 4159 1038 4145 7888 10198 7077 10184 +12735 5957 879 2795 2295 11996 6918 8834 8334 +12736 3139 2157 2673 452 9178 8196 8712 6491 +12737 2946 690 3865 5070 8985 6729 9904 11109 +12738 5486 4185 295 2114 11525 10224 6334 8153 +12739 2506 2630 3711 954 8545 8669 9750 6993 +12740 3747 2765 3954 1025 9786 8804 9993 7064 +12741 5957 2303 5293 879 11996 8342 11332 6918 +12742 5958 2123 4865 2211 11997 8162 10904 8250 +12743 4031 3877 2337 477 10070 9916 8376 6516 +12744 4319 742 6013 2162 10358 6781 12052 8201 +12745 1765 4237 667 3989 7804 10276 6706 10028 +12746 5188 980 5406 2085 11227 7019 11445 8124 +12747 5102 2110 2675 420 11141 8149 8714 6459 +12748 4026 4804 2958 1567 10065 10843 8997 7606 +12749 4978 2108 3105 1028 11017 8147 9144 7067 +12750 5280 2039 4873 1209 11319 8078 10912 7248 +12751 3923 67 66 2050 9962 163 162 8089 +12752 3552 2097 4161 207 9591 8136 10200 6246 +12753 1921 4480 873 5038 7960 10519 6912 11077 +12754 2308 960 2248 5931 8347 6999 8287 11970 +12755 1601 3154 2130 5259 7640 9193 8169 11298 +12756 4330 2042 4201 457 10369 8081 10240 6496 +12757 6158 2336 3874 1287 12197 8375 9913 7326 +12758 1233 2596 317 3253 7272 8635 6356 9292 +12759 5584 521 2916 2209 11623 6560 8955 8248 +12760 3272 2145 3111 1024 9311 8184 9150 7063 +12761 4740 2557 2556 863 10779 8596 8595 6902 +12762 657 3975 1916 5359 6696 10014 7955 11398 +12763 3660 766 4249 2174 9699 6805 10288 8213 +12764 5250 1005 2742 2113 11289 7044 8781 8152 +12765 3629 830 2258 4148 9668 6869 8297 10187 +12766 542 3750 1603 4363 6581 9789 7642 10402 +12767 5535 2808 3036 1277 11574 8847 9075 7316 +12768 4497 222 2603 1923 10536 6261 8642 7962 +12769 5096 2885 2277 783 11135 8924 8316 6822 +12770 2594 854 2298 404 8633 6893 8337 6443 +12771 3475 643 5595 2250 9514 6682 11634 8289 +12772 3949 2255 5529 387 9988 8294 11568 6426 +12773 5957 2295 6103 976 11996 8334 12142 7015 +12774 4601 1641 4988 2065 10640 7680 11027 8104 +12775 2263 5969 1947 4735 8302 12008 7986 10774 +12776 2591 2495 5378 1056 8630 8534 11417 7095 +12777 4205 2504 2121 1279 10244 8543 8160 7318 +12778 3884 1239 4837 2566 9923 7278 10876 8605 +12779 4887 519 2426 3812 10926 6558 8465 9851 +12780 3188 439 4125 2372 9227 6478 10164 8411 +12781 5864 3960 1521 2763 11903 9999 7560 8802 +12782 4151 2225 3946 433 10190 8264 9985 6472 +12783 2249 3547 345 6184 8288 9586 6384 12223 +12784 1794 4995 635 4795 7833 11034 6674 10834 +12785 4716 2077 5211 413 10755 8116 11250 6452 +12786 2155 881 2050 5004 8194 6920 8089 11043 +12787 1713 4396 885 3647 7752 10435 6924 9686 +12788 2910 960 2412 2909 8949 6999 8451 8948 +12789 5783 771 5539 2116 11822 6810 11578 8155 +12790 6046 510 2645 2312 12085 6549 8684 8351 +12791 333 2588 5352 2104 6372 8627 11391 8143 +12792 223 2963 1782 5043 6262 9002 7821 11082 +12793 6066 2630 2440 2653 12105 8669 8479 8692 +12794 4020 3083 2051 841 10059 9122 8090 6880 +12795 2569 2727 4817 583 8608 8766 10856 6622 +12796 1506 4595 228 2285 7545 10634 6267 8324 +12797 3732 4404 5882 1915 9771 10443 11921 7954 +12798 974 2576 493 2485 7013 8615 6532 8524 +12799 5753 1031 2518 2138 11792 7070 8557 8177 +12800 3029 1405 4744 2332 9068 7444 10783 8371 +12801 4731 4396 1713 4550 10770 10435 7752 10589 +12802 4047 2399 2351 822 10086 8438 8390 6861 +12803 1593 4800 230 5083 7632 10839 6269 11122 +12804 6183 5281 870 1681 12222 11320 6909 7720 +12805 2773 245 3156 3704 8812 6284 9195 9743 +12806 5880 2375 4727 440 11919 8414 10766 6479 +12807 2295 2795 252 6103 8334 8834 6291 12142 +12808 2660 5472 5324 465 8699 11511 11363 6504 +12809 5428 1872 4617 2227 11467 7911 10656 8266 +12810 1369 4269 1740 4315 7408 10308 7779 10354 +12811 2105 5180 883 3224 8144 11219 6922 9263 +12812 5788 299 3074 2065 11827 6338 9113 8104 +12813 4095 2059 3430 1332 10134 8098 9469 7371 +12814 4418 2488 4549 715 10457 8527 10588 6754 +12815 81 80 2921 2527 177 176 8960 8566 +12816 1613 4662 302 4786 7652 10701 6341 10825 +12817 4561 1848 4363 1603 10600 7887 10402 7642 +12818 4938 1577 4204 2493 10977 7616 10243 8532 +12819 5393 823 2012 2159 11432 6862 8051 8198 +12820 2677 1048 2451 2813 8716 7087 8490 8852 +12821 2388 860 2416 4761 8427 6899 8455 10800 +12822 4628 1273 3176 2078 10667 7312 9215 8117 +12823 4571 434 4157 2611 10610 6473 10196 8650 +12824 5198 1433 4221 2053 11237 7472 10260 8092 +12825 1065 4199 1563 3728 7104 10238 7602 9767 +12826 4878 4065 893 2436 10917 10104 6932 8475 +12827 6037 2102 3050 301 12076 8141 9089 6340 +12828 1108 4715 1598 2987 7147 10754 7637 9026 +12829 1287 4157 2230 4308 7326 10196 8269 10347 +12830 4635 762 3477 2083 10674 6801 9516 8122 +12831 364 4023 1370 2335 6403 10062 7409 8374 +12832 4998 1343 3818 1983 11037 7382 9857 8022 +12833 3644 483 2928 2523 9683 6522 8967 8562 +12834 4571 1245 3581 2063 10610 7284 9620 8102 +12835 2913 1312 3217 3646 8952 7351 9256 9685 +12836 4760 2097 3552 857 10799 8136 9591 6896 +12837 4297 2339 2854 735 10336 8378 8893 6774 +12838 825 5092 1559 2501 6864 11131 7598 8540 +12839 2186 3950 5697 6055 8225 9989 11736 12094 +12840 3333 608 2655 3958 9372 6647 8694 9997 +12841 6091 2950 2337 958 12130 8989 8376 6997 +12842 5622 2232 3020 963 11661 8271 9059 7002 +12843 1140 5689 1603 3750 7179 11728 7642 9789 +12844 70 2532 2959 71 166 8571 8998 167 +12845 4642 597 2903 2069 10681 6636 8942 8108 +12846 2645 6010 1032 2312 8684 12049 7071 8351 +12847 3867 2022 5655 453 9906 8061 11694 6492 +12848 886 2170 3961 4711 6925 8209 10000 10750 +12849 55 54 5921 3504 151 150 11960 9543 +12850 4568 2415 3545 496 10607 8454 9584 6535 +12851 1406 1647 4443 2344 7445 7686 10482 8383 +12852 5239 2166 3538 246 11278 8205 9577 6285 +12853 296 2954 2046 5888 6335 8993 8085 11927 +12854 3806 1033 3494 2100 9845 7072 9533 8139 +12855 2800 517 3871 3345 8839 6556 9910 9384 +12856 2699 5390 4781 990 8738 11429 10820 7029 +12857 3824 1269 6161 2055 9863 7308 12200 8094 +12858 1628 2543 601 4447 7667 8582 6640 10486 +12859 2322 4572 877 6062 8361 10611 6916 12101 +12860 5606 273 3020 2232 11645 6312 9059 8271 +12861 1733 4216 1148 4921 7772 10255 7187 10960 +12862 2307 1206 2363 4835 8346 7245 8402 10874 +12863 4683 786 4217 2095 10722 6825 10256 8134 +12864 22 21 2348 5656 118 117 8387 11695 +12865 1882 5356 2205 6087 7921 11395 8244 12126 +12866 2734 238 3062 3459 8773 6277 9101 9498 +12867 6022 2354 5813 2355 12061 8393 11852 8394 +12868 5406 980 3329 2283 11445 7019 9368 8322 +12869 4158 1826 5531 367 10197 7865 11570 6406 +12870 2667 3133 2368 525 8706 9172 8407 6564 +12871 5855 2178 5414 1497 11894 8217 11453 7536 +12872 4568 496 3635 2082 10607 6535 9674 8121 +12873 1985 2582 5803 6060 8024 8621 11842 12099 +12874 1693 3880 705 3621 7732 9919 6744 9660 +12875 4713 3860 913 2197 10752 9899 6952 8236 +12876 2961 2449 3069 3249 9000 8488 9108 9288 +12877 5090 874 2712 2382 11129 6913 8751 8421 +12878 1198 2755 1067 2981 7237 8794 7106 9020 +12879 5002 2079 3831 25 11041 8118 9870 121 +12880 307 4092 2080 5400 6346 10131 8119 11439 +12881 4628 2078 6109 279 10667 8117 12148 6318 +12882 4635 2083 3949 1094 10674 8122 9988 7133 +12883 5707 1862 5065 3867 11746 7901 11104 9906 +12884 661 4477 1878 3546 6700 10516 7917 9585 +12885 3736 5399 2902 1583 9775 11438 8941 7622 +12886 5941 765 4988 2088 11980 6804 11027 8127 +12887 4320 6088 4113 2361 10359 12127 10152 8400 +12888 4940 5350 2732 2370 10979 11389 8771 8409 +12889 4980 2082 5532 988 11019 8121 11571 7027 +12890 939 4654 2167 5107 6978 10693 8206 11146 +12891 1357 2823 428 2340 7396 8862 6467 8379 +12892 4729 3726 709 2569 10768 9765 6748 8608 +12893 495 5253 2322 6146 6534 11292 8361 12185 +12894 2731 2653 2440 501 8770 8692 8479 6540 +12895 5639 4476 1878 884 11678 10515 7917 6923 +12896 1670 4855 2658 5387 7709 10894 8697 11426 +12897 475 3442 1198 2981 6514 9481 7237 9020 +12898 6087 2205 2645 510 12126 8244 8684 6549 +12899 2113 4038 459 5250 8152 10077 6498 11289 +12900 3556 455 4112 2310 9595 6494 10151 8349 +12901 3473 1089 3826 1753 9512 7128 9865 7792 +12902 4823 733 5161 2116 10862 6772 11200 8155 +12903 796 5178 2147 3471 6835 11217 8186 9510 +12904 330 2757 1220 3038 6369 8796 7259 9077 +12905 5543 4679 6134 2196 11582 10718 12173 8235 +12906 4684 966 3457 2222 10723 7005 9496 8261 +12907 1029 3125 2111 5006 7068 9164 8150 11045 +12908 5011 2878 954 3649 11050 8917 6993 9688 +12909 661 4809 1614 2396 6700 10848 7653 8435 +12910 3776 2136 2823 767 9815 8175 8862 6806 +12911 4384 1765 3989 1136 10423 7804 10028 7175 +12912 1311 4151 1447 3793 7350 10190 7486 9832 +12913 4425 2144 3663 1019 10464 8183 9702 7058 +12914 734 4977 1977 5297 6773 11016 8016 11336 +12915 4776 5085 2541 281 10815 11124 8580 6320 +12916 995 3493 5374 2788 7034 9532 11413 8827 +12917 2462 6221 2279 1000 8501 12260 8318 7039 +12918 2491 2875 2884 1278 8530 8914 8923 7317 +12919 5128 383 4952 2175 11167 6422 10991 8214 +12920 1440 4003 250 3913 7479 10042 6289 9952 +12921 1559 4666 1464 2501 7598 10705 7503 8540 +12922 5828 2095 5176 1702 11867 8134 11215 7741 +12923 5517 2465 4778 1598 11556 8504 10817 7637 +12924 4576 364 2335 3853 10615 6403 8374 9892 +12925 2315 940 2648 3891 8354 6979 8687 9930 +12926 6046 2312 879 5123 12085 8351 6918 11162 +12927 1688 3940 666 4007 7727 9979 6705 10046 +12928 1054 2712 282 2945 7093 8751 6321 8984 +12929 4867 2141 4579 373 10906 8180 10618 6412 +12930 5972 2099 4394 1272 12011 8138 10433 7311 +12931 5277 1384 3280 2800 11316 7423 9319 8839 +12932 3952 1340 2961 2707 9991 7379 9000 8746 +12933 5154 2421 4577 407 11193 8460 10616 6446 +12934 290 3489 1595 4857 6329 9528 7634 10896 +12935 1983 3818 410 5162 8022 9857 6449 11201 +12936 3677 1047 2990 2201 9716 7086 9029 8240 +12937 619 4075 1487 3901 6658 10114 7526 9940 +12938 2753 528 3132 3729 8792 6567 9171 9768 +12939 2727 2569 709 1512 8766 8608 6748 7551 +12940 2032 4870 286 4466 8071 10909 6325 10505 +12941 1722 3321 757 2828 7761 9360 6796 8867 +12942 533 3496 1011 2403 6572 9535 7050 8442 +12943 5396 2151 4182 1394 11435 8190 10221 7433 +12944 1980 5503 275 5337 8019 11542 6314 11376 +12945 3995 2111 3125 276 10034 8150 9164 6315 +12946 3499 519 2869 5354 9538 6558 8908 11393 +12947 2192 5902 924 3984 8231 11941 6963 10023 +12948 5411 2212 3320 752 11450 8251 9359 6791 +12949 6232 2382 2712 1054 12271 8421 8751 7093 +12950 3029 2764 5479 332 9068 8803 11518 6371 +12951 2764 3029 2332 1200 8803 9068 8371 7239 +12952 5830 357 2892 2072 11869 6396 8931 8111 +12953 1430 3617 1122 2933 7469 9656 7161 8972 +12954 5843 729 2063 3581 11882 6768 8102 9620 +12955 6098 4828 933 2710 12137 10867 6972 8749 +12956 2847 481 4844 2848 8886 6520 10883 8887 +12957 2772 1221 3017 3333 8811 7260 9056 9372 +12958 5565 4212 1478 2717 11604 10251 7517 8756 +12959 3945 546 3006 2203 9984 6585 9045 8242 +12960 2832 3637 3190 530 8871 9676 9229 6569 +12961 4661 2115 6083 714 10700 8154 12122 6753 +12962 5003 2207 3966 1409 11042 8246 10005 7448 +12963 3843 2691 3838 1724 9882 8730 9877 7763 +12964 3432 1069 4320 2361 9471 7108 10359 8400 +12965 5207 5587 3457 966 11246 11626 9496 7005 +12966 1122 2914 501 2440 7161 8953 6540 8479 +12967 1306 5121 1933 4312 7345 11160 7972 10351 +12968 4537 976 6103 2145 10576 7015 12142 8184 +12969 4070 6003 4641 463 10109 12042 10680 6502 +12970 4255 283 3722 2398 10294 6322 9761 8437 +12971 2615 5888 2046 998 8654 11927 8085 7037 +12972 2714 1023 2495 2591 8753 7062 8534 8630 +12973 217 4507 1315 2441 6256 10546 7354 8480 +12974 4644 2175 4952 1718 10683 8214 10991 7757 +12975 814 4904 2235 4514 6853 10943 8274 10553 +12976 631 4766 1606 2968 6670 10805 7645 9007 +12977 5457 2369 4905 807 11496 8408 10944 6846 +12978 4357 2580 3486 1042 10396 8619 9525 7081 +12979 627 4160 1572 4775 6666 10199 7611 10814 +12980 2221 5762 727 2671 8260 11801 6766 8710 +12981 2069 3933 1132 4642 8108 9972 7171 10681 +12982 4754 1480 4428 2128 10793 7519 10467 8167 +12983 4218 625 3105 2108 10257 6664 9144 8147 +12984 5727 2470 5609 1906 11766 8509 11648 7945 +12985 1758 4758 332 5479 7797 10797 6371 11518 +12986 4142 2112 2854 370 10181 8151 8893 6409 +12987 4515 1102 3652 2122 10554 7141 9691 8161 +12988 235 3737 1354 3441 6274 9776 7393 9480 +12989 3930 2814 3879 498 9969 8853 9918 6537 +12990 5824 2573 3514 426 11863 8612 9553 6465 +12991 3823 2203 3006 1192 9862 8242 9045 7231 +12992 5256 2141 4867 1474 11295 8180 10906 7513 +12993 6034 2400 4176 1891 12073 8439 10215 7930 +12994 2478 210 1696 4785 8517 6249 7735 10824 +12995 2495 1023 2241 5620 8534 7062 8280 11659 +12996 306 2444 1009 2938 6345 8483 7048 8977 +12997 4841 3246 2833 1455 10880 9285 8872 7494 +12998 314 3282 1257 3474 6353 9321 7296 9513 +12999 3732 572 3578 2509 9771 6611 9617 8548 +13000 4982 2115 4661 1389 11021 8154 10700 7428 +13001 218 2135 702 2534 6257 8174 6741 8573 +13002 1899 2612 206 4154 7938 8651 6245 10193 +13003 4121 1530 2464 3798 10160 7569 8503 9837 +13004 2482 5507 1141 3351 8521 11546 7180 9390 +13005 2169 5225 221 3284 8208 11264 6260 9323 +13006 3694 1052 3388 2226 9733 7091 9427 8265 +13007 4515 2122 3161 300 10554 8161 9200 6339 +13008 3354 3019 1955 534 9393 9058 7994 6573 +13009 354 3145 1662 4505 6393 9184 7701 10544 +13010 5242 800 2194 2711 11281 6839 8233 8750 +13011 2563 1486 1874 4398 8602 7525 7913 10437 +13012 1559 2472 880 4891 7598 8511 6919 10930 +13013 1269 2751 852 2684 7308 8790 6891 8723 +13014 2166 6123 2626 892 8205 12162 8665 6931 +13015 2731 2744 2615 1057 8770 8783 8654 7096 +13016 1915 4838 572 3732 7954 10877 6611 9771 +13017 4048 2134 2690 319 10087 8173 8729 6358 +13018 5982 2970 2947 509 12021 9009 8986 6548 +13019 4061 2094 5881 204 10100 8133 11920 6243 +13020 2839 3799 2874 3190 8878 9838 8913 9229 +13021 4739 366 5184 2208 10778 6405 11223 8247 +13022 1414 5364 3170 4554 7453 11403 9209 10593 +13023 475 2981 1067 3116 6514 9020 7106 9155 +13024 6009 884 1878 4477 12048 6923 7917 10516 +13025 1991 5238 516 5207 8030 11277 6555 11246 +13026 733 2979 2334 5045 6772 9018 8373 11084 +13027 1046 2791 208 2238 7085 8830 6247 8277 +13028 4965 2749 2425 219 11004 8788 8464 6258 +13029 4215 3428 2770 1266 10254 9467 8809 7305 +13030 1214 3415 581 2635 7253 9454 6620 8674 +13031 2135 4467 357 5164 8174 10506 6396 11203 +13032 557 5575 1783 3861 6596 11614 7822 9900 +13033 4263 2210 4385 1436 10302 8249 10424 7475 +13034 5746 664 3065 2394 11785 6703 9104 8433 +13035 5687 2670 478 5987 11726 8709 6517 12026 +13036 5577 2396 1614 4335 11616 8435 7653 10374 +13037 1151 3792 2522 5825 7190 9831 8561 11864 +13038 1164 3533 1534 3585 7203 9572 7573 9624 +13039 1858 4220 1269 3824 7897 10259 7308 9863 +13040 5239 1531 3756 2166 11278 7570 9795 8205 +13041 1897 5123 879 5293 7936 11162 6918 11332 +13042 248 4351 1888 4464 6287 10390 7927 10503 +13043 290 4947 1644 3489 6329 10986 7683 9528 +13044 2911 3398 3298 1291 8950 9437 9337 7330 +13045 3527 1334 2122 4686 9566 7373 8161 10725 +13046 2409 1948 6035 4623 8448 7987 12074 10662 +13047 5228 1304 4268 2144 11267 7343 10307 8183 +13048 843 2767 1669 4579 6882 8806 7708 10618 +13049 5720 1677 2461 1798 11759 7716 8500 7837 +13050 4338 2138 2518 740 10377 8177 8557 6779 +13051 815 5167 1769 2923 6854 11206 7808 8962 +13052 1241 2739 545 3259 7280 8778 6584 9298 +13053 2011 4127 5260 5948 8050 10166 11299 11987 +13054 473 3312 1437 4089 6512 9351 7476 10128 +13055 5793 5684 2221 903 11832 11723 8260 6942 +13056 2757 3488 3369 1220 8796 9527 9408 7259 +13057 3134 472 1406 1721 9173 6511 7445 7760 +13058 3994 765 3365 2360 10033 6804 9404 8399 +13059 6149 5587 5207 516 12188 11626 11246 6555 +13060 1043 3351 1141 2673 7082 9390 7180 8712 +13061 4446 284 3560 2448 10485 6323 9599 8487 +13062 1770 3724 722 5159 7809 9763 6761 11198 +13063 3390 1071 2826 2944 9429 7110 8865 8983 +13064 1184 3299 1092 2720 7223 9338 7131 8759 +13065 5786 1002 3060 2597 11825 7041 9099 8636 +13066 1297 3887 1507 4136 7336 9926 7546 10175 +13067 254 4478 1638 4086 6293 10517 7677 10125 +13068 2220 2672 1022 5962 8259 8711 7061 12001 +13069 757 5025 1714 2828 6796 11064 7753 8867 +13070 2849 3156 3313 1152 8888 9195 9352 7191 +13071 2755 2744 2731 1067 8794 8783 8770 7106 +13072 2744 2755 3449 296 8783 8794 9488 6335 +13073 252 3111 2145 6103 6291 9150 8184 12142 +13074 1453 4279 5761 3800 7492 10318 11800 9839 +13075 2659 4566 2533 350 8698 10605 8572 6389 +13076 3679 1061 3338 2276 9718 7100 9377 8315 +13077 2917 307 2677 4200 8956 6346 8716 10239 +13078 5613 4426 1061 2883 11652 10465 7100 8922 +13079 491 2810 1086 2759 6530 8849 7125 8798 +13080 5172 1838 5876 204 11211 7877 11915 6243 +13081 3532 2418 4843 488 9571 8457 10882 6527 +13082 4579 2141 4218 843 10618 8180 10257 6882 +13083 3928 1745 4055 1088 9967 7784 10094 7127 +13084 5018 673 4362 2243 11057 6712 10401 8282 +13085 3751 575 2434 2558 9790 6614 8473 8597 +13086 2900 2565 2761 1072 8939 8604 8800 7111 +13087 2601 2858 5831 1009 8640 8897 11870 7048 +13088 2246 4417 489 4415 8285 10456 6528 10454 +13089 2316 1937 4406 444 8355 7976 10445 6483 +13090 1051 2690 2004 6014 7090 8729 8043 12053 +13091 5076 2188 3656 1130 11115 8227 9695 7169 +13092 1852 4200 1109 4814 7891 10239 7148 10853 +13093 1755 4380 2637 5735 7794 10419 8676 11774 +13094 4807 1057 2615 998 10846 7096 8654 7037 +13095 686 4429 6148 2227 6725 10468 12187 8266 +13096 4190 1133 2934 2148 10229 7172 8973 8187 +13097 2305 6137 1371 4555 8344 12176 7410 10594 +13098 2334 998 2046 4955 8373 7037 8085 10994 +13099 1010 2748 501 2914 7049 8787 6540 8953 +13100 2440 2630 2506 3072 8479 8669 8545 9111 +13101 4635 1094 3759 2160 10674 7133 9798 8199 +13102 4950 871 4969 2585 10989 6910 11008 8624 +13103 3147 637 4912 2353 9186 6676 10951 8392 +13104 5056 910 2091 2610 11095 6949 8130 8649 +13105 3207 591 4077 4556 9246 6630 10116 10595 +13106 5069 244 2422 1104 11108 6283 8461 7143 +13107 5616 1539 393 1954 11655 7578 6432 7993 +13108 3661 4973 2084 1101 9700 11012 8123 7140 +13109 4278 2448 3560 1420 10317 8487 9599 7459 +13110 3297 3512 2635 581 9336 9551 8674 6620 +13111 1099 3116 1067 2748 7138 9155 7106 8787 +13112 5097 3735 1454 4531 11136 9774 7493 10570 +13113 1802 3289 1474 4569 7841 9328 7513 10608 +13114 6094 5107 2167 851 12133 11146 8206 6890 +13115 4049 1305 3114 840 10088 7344 9153 6879 +13116 2379 5039 2176 1624 8418 11078 8215 7663 +13117 4539 2856 89 88 10578 8895 185 184 +13118 5993 2195 6106 476 12032 8234 12145 6515 +13119 3216 2825 3474 1257 9255 8864 9513 7296 +13120 1597 3522 1115 4209 7636 9561 7154 10248 +13121 1350 3584 1066 3023 7389 9623 7105 9062 +13122 3906 326 3656 2188 9945 6365 9695 8227 +13123 4918 371 2602 1974 10957 6410 8641 8013 +13124 5099 361 3080 2156 11138 6400 9119 8195 +13125 338 4964 1401 3126 6377 11003 7440 9165 +13126 2004 4827 753 3684 8043 10866 6792 9723 +13127 4747 2377 5967 2014 10786 8416 12006 8053 +13128 4644 2466 900 2175 10683 8505 6939 8214 +13129 5180 3150 5273 883 11219 9189 11312 6922 +13130 4965 2183 3003 1003 11004 8222 9042 7042 +13131 1437 3312 1263 3155 7476 9351 7302 9194 +13132 947 5850 2267 3188 6986 11889 8306 9227 +13133 491 2824 1081 2810 6530 8863 7120 8849 +13134 5342 2182 3520 972 11381 8221 9559 7011 +13135 4055 2331 3138 1088 10094 8370 9177 7127 +13136 4551 1423 3682 2292 10590 7462 9721 8331 +13137 3566 224 4182 2151 9605 6263 10221 8190 +13138 2274 5897 1565 3937 8313 11936 7604 9976 +13139 5066 2643 2733 925 11105 8682 8772 6964 +13140 3504 5921 2236 856 9543 11960 8275 6895 +13141 3068 4489 4109 1388 9107 10528 10148 7427 +13142 5533 2477 4009 1503 11572 8516 10048 7542 +13143 995 2788 5267 4272 7034 8827 11306 10311 +13144 5211 2470 5727 413 11250 8509 11766 6452 +13145 5661 1760 4125 2299 11700 7799 10164 8338 +13146 5956 2528 3731 1392 11995 8567 9770 7431 +13147 1558 2948 382 2980 7597 8987 6421 9019 +13148 2536 1477 5694 236 8575 7516 11733 6275 +13149 1797 1201 2032 4466 7836 7240 8071 10505 +13150 5924 2349 5969 795 11963 8388 12008 6834 +13151 4106 513 2598 4812 10145 6552 8637 10851 +13152 238 2734 1268 3438 6277 8773 7307 9477 +13153 568 3124 1204 3498 6607 9163 7243 9537 +13154 4635 2160 3510 762 10674 8199 9549 6801 +13155 1788 4871 2932 6051 7827 10910 8971 12090 +13156 3640 2350 4658 815 9679 8389 10697 6854 +13157 625 3289 1697 4565 6664 9328 7736 10604 +13158 5040 4774 2420 454 11079 10813 8459 6493 +13159 1006 5399 2051 3479 7045 11438 8090 9518 +13160 985 4962 5973 3395 7024 11001 12012 9434 +13161 4761 1143 2608 2388 10800 7182 8647 8427 +13162 2236 6089 424 2929 8275 12128 6463 8968 +13163 1018 517 2800 3280 7057 6556 8839 9319 +13164 1287 3874 1695 4157 7326 9913 7734 10196 +13165 3418 5534 1473 2345 9457 11573 7512 8384 +13166 1466 4329 1661 4736 7505 10368 7700 10775 +13167 5109 1275 3640 5302 11148 7314 9679 11341 +13168 568 2704 1216 3407 6607 8743 7255 9446 +13169 6118 637 3147 1950 12157 6676 9186 7989 +13170 609 4374 1573 2718 6648 10413 7612 8757 +13171 3939 506 3332 2196 9978 6545 9371 8235 +13172 5744 4787 1506 2285 11783 10826 7545 8324 +13173 5413 1408 4863 2524 11452 7447 10902 8563 +13174 4528 2157 5057 804 10567 8196 11096 6843 +13175 335 3561 5602 5240 6374 9600 11641 11279 +13176 1878 4476 227 4630 7917 10515 6266 10669 +13177 5711 477 2337 2950 11750 6516 8376 8989 +13178 5711 2189 2781 2782 11750 8228 8820 8821 +13179 3621 3318 2049 1000 9660 9357 8088 7039 +13180 3212 1467 4001 4483 9251 7506 10040 10522 +13181 2308 3544 2412 960 8347 9583 8451 6999 +13182 4987 3063 2155 397 11026 9102 8194 6436 +13183 3455 456 3556 2310 9494 6495 9595 8349 +13184 4249 2179 2838 1105 10288 8218 8877 7144 +13185 4148 2258 3817 829 10187 8297 9856 6868 +13186 4179 1677 6052 3980 10218 7716 12091 10019 +13187 5024 2201 2990 1616 11063 8240 9029 7655 +13188 820 4341 2120 5424 6859 10380 8159 11463 +13189 6005 3094 1761 2616 12044 9133 7800 8655 +13190 3142 2749 2620 2503 9181 8788 8659 8542 +13191 1094 2429 43 3759 7133 8468 139 9798 +13192 1086 2810 1081 2811 7125 8849 7120 8850 +13193 5717 2670 2796 827 11756 8709 8835 6866 +13194 749 4715 1108 3476 6788 10754 7147 9515 +13195 33 32 2362 5573 129 128 8401 11612 +13196 369 3586 1462 3211 6408 9625 7501 9250 +13197 1737 4824 2457 964 7776 10863 8496 7003 +13198 582 3031 1197 3669 6621 9070 7236 9708 +13199 4927 2405 4104 634 10966 8444 10143 6673 +13200 4451 1126 3431 1728 10490 7165 9470 7767 +13201 587 2705 1271 2807 6626 8744 7310 8846 +13202 4071 1381 2769 2183 10110 7420 8808 8222 +13203 1946 5589 445 4819 7985 11628 6484 10858 +13204 2232 5622 1762 4377 8271 11661 7801 10416 +13205 3753 2262 87 86 9792 8301 183 182 +13206 3859 5326 4598 1139 9898 11365 10637 7178 +13207 3022 5938 1378 2185 9061 11977 7417 8224 +13208 1853 4223 1365 3890 7892 10262 7404 9929 +13209 2276 956 2532 3693 8315 6995 8571 9732 +13210 5453 274 3127 2272 11492 6313 9166 8311 +13211 4763 609 2718 2689 10802 6648 8757 8728 +13212 4150 1875 4859 732 10189 7914 10898 6771 +13213 1850 3988 2376 5664 7889 10027 8415 11703 +13214 530 3096 1188 2832 6569 9135 7227 8871 +13215 1704 4596 2821 5838 7743 10635 8860 11877 +13216 1917 4361 542 5163 7956 10400 6581 11202 +13217 2918 3597 3274 1302 8957 9636 9313 7341 +13218 5852 3037 1007 4873 11891 9076 7046 10912 +13219 5775 2778 1304 3471 11814 8817 7343 9510 +13220 4648 780 3154 2508 10687 6819 9193 8547 +13221 3677 2284 5246 1047 9716 8323 11285 7086 +13222 2496 6113 2342 1259 8535 12152 8381 7298 +13223 3167 1082 2827 3515 9206 7121 8866 9554 +13224 5258 1899 4431 746 11297 7938 10470 6785 +13225 1554 3111 252 2716 7593 9150 6291 8755 +13226 5633 2302 6126 423 11672 8341 12165 6462 +13227 5952 808 2794 2364 11991 6847 8833 8403 +13228 528 2753 1214 3330 6567 8792 7253 9369 +13229 5446 2313 3715 941 11485 8352 9754 6980 +13230 983 4033 1653 3508 7022 10072 7692 9547 +13231 3977 2206 3389 1052 10016 8245 9428 7091 +13232 6116 2071 5255 2454 12155 8110 11294 8493 +13233 2775 964 2272 3127 8814 7003 8311 9166 +13234 2292 3682 2613 1303 8331 9721 8652 7342 +13235 3786 2119 5504 289 9825 8158 11543 6328 +13236 1173 4052 214 2309 7212 10091 6253 8348 +13237 2574 2634 4724 389 8613 8673 10763 6428 +13238 3697 953 4173 2298 9736 6992 10212 8337 +13239 3142 2538 2425 2749 9181 8577 8464 8788 +13240 1832 3953 842 5105 7871 9992 6881 11144 +13241 5791 1896 4772 2333 11830 7935 10811 8372 +13242 1128 3064 544 2737 7167 9103 6583 8776 +13243 1664 3219 657 4222 7703 9258 6696 10261 +13244 5358 424 2902 2264 11397 6463 8941 8303 +13245 4918 1974 855 2441 10957 8013 6894 8480 +13246 4031 477 6016 2202 10070 6516 12055 8241 +13247 5061 1164 5754 2213 11100 7203 11793 8252 +13248 4592 985 2169 2951 10631 7024 8208 8990 +13249 4684 2433 3343 966 10723 8472 9382 7005 +13250 2901 1198 3442 2737 8940 7237 9481 8776 +13251 5106 3826 1089 1716 11145 9865 7128 7755 +13252 6167 2218 4929 699 12206 8257 10968 6738 +13253 5695 914 2578 2123 11734 6953 8617 8162 +13254 2941 2653 2731 1057 8980 8692 8770 7096 +13255 1893 4037 208 2791 7932 10076 6247 8830 +13256 2107 2967 1723 5296 8146 9006 7762 11335 +13257 4180 864 3906 2188 10219 6903 9945 8227 +13258 4087 1345 2647 2648 10126 7384 8686 8687 +13259 5454 287 1722 2381 11493 6326 7761 8420 +13260 3252 4081 3757 1463 9291 10120 9796 7502 +13261 5147 1910 2751 612 11186 7949 8790 6651 +13262 5765 2613 3682 414 11804 8652 9721 6453 +13263 4448 2562 365 4449 10487 8601 6404 10488 +13264 6042 2904 525 2368 12081 8943 6564 8407 +13265 3088 2526 5312 982 9127 8565 11351 7021 +13266 3675 3926 2904 1002 9714 9965 8943 7041 +13267 6001 741 2779 2162 12040 6780 8818 8201 +13268 2958 6203 5345 1050 8997 12242 11384 7089 +13269 927 5427 219 2425 6966 11466 6258 8464 +13270 3796 1317 3297 2709 9835 7356 9336 8748 +13271 5309 1934 5779 3681 11348 7973 11818 9720 +13272 5310 201 4649 2037 11349 6240 10688 8076 +13273 3497 1150 6042 2368 9536 7189 12081 8407 +13274 3294 2487 5570 437 9333 8526 11609 6476 +13275 2545 1017 1962 4139 8584 7056 8001 10178 +13276 1410 4690 2646 4180 7449 10729 8685 10219 +13277 5130 2226 3388 548 11169 8265 9427 6587 +13278 5131 754 3694 2226 11170 6793 9733 8265 +13279 1038 2970 5982 2910 7077 9009 12021 8949 +13280 4481 279 6109 2492 10520 6318 12148 8531 +13281 1635 5896 361 4116 7674 11935 6400 10155 +13282 1452 3466 548 3388 7491 9505 6587 9427 +13283 4762 2286 3865 1267 10801 8325 9904 7306 +13284 5910 2243 4362 1620 11949 8282 10401 7659 +13285 2531 6089 5922 1033 8570 12128 11961 7072 +13286 1925 5193 1337 2599 7964 11232 7376 8638 +13287 5009 909 3945 2203 11048 6948 9984 8242 +13288 558 3300 1341 3149 6597 9339 7380 9188 +13289 5314 451 3677 2201 11353 6490 9716 8240 +13290 5449 2783 92 91 11488 8822 188 187 +13291 3474 1092 2875 2491 9513 7131 8914 8530 +13292 1742 4164 1219 3739 7781 10203 7258 9778 +13293 4340 1502 2715 2976 10379 7541 8754 9015 +13294 4449 365 5608 2288 10488 6404 11647 8327 +13295 3787 873 4480 2289 9826 6912 10519 8328 +13296 334 3576 1395 3925 6373 9615 7434 9964 +13297 3929 3612 2517 982 9968 9651 8556 7021 +13298 4064 670 3457 5587 10103 6709 9496 11626 +13299 2799 1299 3313 3485 8838 7338 9352 9524 +13300 2546 534 1955 6010 8585 6573 7994 12049 +13301 544 3064 1277 3036 6583 9103 7316 9075 +13302 2194 800 2153 1146 8233 6839 8192 7185 +13303 4807 998 2334 2979 10846 7037 8373 9018 +13304 987 3296 739 4472 7026 9335 6778 10511 +13305 3278 1064 2079 5002 9317 7103 8118 11041 +13306 5313 1017 6170 2502 11352 7056 12209 8541 +13307 1571 4126 261 3573 7610 10165 6300 9612 +13308 2519 3340 2452 890 8558 9379 8491 6929 +13309 1978 6168 776 2497 8017 12207 6815 8536 +13310 3632 806 5675 2407 9671 6845 11714 8446 +13311 1186 3239 551 2799 7225 9278 6590 8838 +13312 321 3406 1312 2913 6360 9445 7351 8952 +13313 937 5391 5997 2957 6976 11430 12036 8996 +13314 3213 269 4263 2137 9252 6308 10302 8176 +13315 2849 530 3190 2874 8888 6569 9229 8913 +13316 4601 919 2424 2762 10640 6958 8463 8801 +13317 3037 2605 3053 1007 9076 8644 9092 7046 +13318 5003 1166 3841 2207 11042 7205 9880 8246 +13319 2759 3379 2855 491 8798 9418 8894 6530 +13320 2409 535 1988 4028 8448 6574 8027 10067 +13321 1886 4819 445 5431 7925 10858 6484 11470 +13322 5673 2476 2133 846 11712 8515 8172 6885 +13323 3142 504 5782 2538 9181 6543 11821 8577 +13324 2922 2556 2557 512 8961 8595 8596 6551 +13325 4514 1853 4577 1333 10553 7892 10616 7372 +13326 2876 1106 2849 2874 8915 7145 8888 8913 +13327 4728 878 3421 2195 10767 6917 9460 8234 +13328 2678 2787 2152 704 8717 8826 8191 6743 +13329 4205 1279 5467 1892 10244 7318 11506 7931 +13330 519 3499 1023 2426 6558 9538 7062 8465 +13331 4272 2550 3709 995 10311 8589 9748 7034 +13332 3908 502 2768 3023 9947 6541 8807 9062 +13333 2986 6014 5334 507 9025 12053 11373 6546 +13334 1945 4947 290 3748 7984 10986 6329 9787 +13335 6046 2402 5233 510 12085 8441 11272 6549 +13336 2745 1168 1744 5218 8784 7207 7783 11257 +13337 4143 2211 1036 2090 10182 8250 7075 8129 +13338 5543 2196 3332 1189 11582 8235 9371 7228 +13339 1386 3371 1385 2844 7425 9410 7424 8883 +13340 1350 2866 312 3584 7389 8905 6351 9623 +13341 4611 1436 2447 3207 10650 7475 8486 9246 +13342 3566 2305 4555 224 9605 8344 10594 6263 +13343 6083 2115 5514 3231 12122 8154 11553 9270 +13344 5753 2507 5902 1031 11792 8546 11941 7070 +13345 2995 1364 3359 3813 9034 7403 9398 9852 +13346 3882 4831 5478 1992 9921 10870 11517 8031 +13347 3873 3055 293 4632 9912 9094 6332 10671 +13348 1894 5095 377 3022 7933 11134 6416 9061 +13349 5048 2230 4157 434 11087 8269 10196 6473 +13350 2811 1081 3774 3093 8850 7120 9813 9132 +13351 5556 2309 4345 904 11595 8348 10384 6943 +13352 6143 2194 1146 3912 12182 8233 7185 9951 +13353 6216 2178 858 2593 12255 8217 6897 8632 +13354 620 4419 1952 4134 6659 10458 7991 10173 +13355 4834 253 3389 2206 10873 6292 9428 8245 +13356 4078 605 2280 4689 10117 6644 8319 10728 +13357 3746 2320 2479 857 9785 8359 8518 6896 +13358 3980 6052 940 2315 10019 12091 6979 8354 +13359 2743 4919 1555 1079 8782 10958 7594 7118 +13360 3972 215 5491 2282 10011 6254 11530 8321 +13361 5035 2230 5048 1520 11074 8269 11087 7559 +13362 462 3301 1595 4560 6501 9340 7634 10599 +13363 647 3535 1362 4381 6686 9574 7401 10420 +13364 3579 458 2867 2385 9618 6497 8906 8424 +13365 409 3764 5638 5456 6448 9803 11677 11495 +13366 1119 3131 1288 3042 7158 9170 7327 9081 +13367 862 5284 1967 2556 6901 11323 8006 8595 +13368 4644 680 3611 2466 10683 6719 9650 8505 +13369 5736 4327 3447 776 11775 10366 9486 6815 +13370 3013 1313 3416 3717 9052 7352 9455 9756 +13371 2907 2962 2597 1138 8946 9001 8636 7177 +13372 860 5448 1898 2815 6899 11487 7937 8854 +13373 5061 2213 2867 458 11100 8252 8906 6497 +13374 5946 1947 5969 2349 11985 7986 12008 8388 +13375 1071 3620 1243 3399 7110 9659 7282 9438 +13376 2645 967 2546 6010 8684 7006 8585 12049 +13377 6179 2224 3952 1418 12218 8263 9991 7457 +13378 589 3686 1364 2995 6628 9725 7403 9034 +13379 1255 3317 480 3316 7294 9356 6519 9355 +13380 5093 758 2797 2204 11132 6797 8836 8243 +13381 3018 2881 3132 1144 9057 8920 9171 7183 +13382 6057 2133 1451 4636 12096 8172 7490 10675 +13383 879 2312 1032 2795 6918 8351 7071 8834 +13384 2038 4168 639 3303 8077 10207 6678 9342 +13385 4691 2047 283 3828 10730 8086 6322 9867 +13386 2855 3041 2824 491 8894 9080 8863 6530 +13387 4938 2493 3209 461 10977 8532 9248 6500 +13388 3648 616 5071 5588 9687 6655 11110 11627 +13389 1151 4367 1514 3792 7190 10406 7553 9831 +13390 966 3343 1991 5207 7005 9382 8030 11246 +13391 723 4019 1546 5199 6762 10058 7585 11238 +13392 2534 2535 4255 1359 8573 8574 10294 7398 +13393 2552 1160 3905 3685 8591 7199 9944 9724 +13394 5465 4566 2659 1650 11504 10605 8698 7689 +13395 1325 5027 667 4922 7364 11066 6706 10961 +13396 2305 872 2281 6137 8344 6911 8320 12176 +13397 2423 3550 2330 1363 8462 9589 8369 7402 +13398 5298 1245 3836 2389 11337 7284 9875 8428 +13399 1152 3096 530 2849 7191 9135 6569 8888 +13400 4669 724 4746 2341 10708 6763 10785 8380 +13401 2895 549 2410 3620 8934 6588 8449 9659 +13402 5584 2209 3705 1446 11623 8248 9744 7485 +13403 5108 1353 2803 2023 11147 7392 8842 8062 +13404 2038 4494 943 4168 8077 10533 6982 10207 +13405 5129 2225 4151 1311 11168 8264 10190 7350 +13406 5286 612 4220 1859 11325 6651 10259 7898 +13407 4887 1459 3447 4327 10926 7498 9486 10366 +13408 1426 3554 257 2870 7465 9593 6296 8909 +13409 2513 5111 2424 1651 8552 11150 8463 7690 +13410 3330 2572 3066 528 9369 8611 9105 6567 +13411 3518 49 48 2632 9557 145 144 8671 +13412 1802 3153 294 5118 7841 9192 6333 11157 +13413 5947 1206 2307 4902 11986 7245 8346 10941 +13414 1256 2686 747 3045 7295 8725 6786 9084 +13415 2914 2925 2565 1010 8953 8964 8604 7049 +13416 213 3134 1721 4805 6252 9173 7760 10844 +13417 1006 4042 783 2264 7045 10081 6822 8303 +13418 2703 1090 4473 5434 8742 7129 10512 11473 +13419 3466 3432 2361 548 9505 9471 8400 6587 +13420 5604 4527 1639 2977 11643 10566 7678 9016 +13421 371 2776 810 2602 6410 8815 6849 8641 +13422 464 3730 911 3692 6503 9769 6950 9731 +13423 1397 4838 1915 3982 7436 10877 7954 10021 +13424 3041 1072 2761 2824 9080 7111 8800 8863 +13425 4479 387 5529 1933 10518 6426 11568 7972 +13426 4143 2090 3928 1088 10182 8129 9967 7127 +13427 5781 3321 3971 851 11820 9360 10010 6890 +13428 4337 5053 791 2668 10376 11092 6830 8707 +13429 4333 2223 2928 483 10372 8262 8967 6522 +13430 2828 1714 3919 4336 8867 7753 9958 10375 +13431 2125 5563 752 3320 8164 11602 6791 9359 +13432 1965 3016 801 5356 8004 9055 6840 11395 +13433 528 3066 1144 3132 6567 9105 7183 9171 +13434 2758 3488 2757 1068 8797 9527 8796 7107 +13435 5626 3011 3706 2223 11665 9050 9745 8262 +13436 5551 3716 1648 4465 11590 9755 7687 10504 +13437 315 3180 1286 3184 6354 9219 7325 9223 +13438 5754 1411 2867 2213 11793 7450 8906 8252 +13439 5866 2380 3161 915 11905 8419 9200 6954 +13440 3154 780 5898 2130 9193 6819 11937 8169 +13441 1495 4061 1875 4456 7534 10100 7914 10495 +13442 5020 533 2403 3850 11059 6572 8442 9889 +13443 3050 2736 2900 301 9089 8775 8939 6340 +13444 316 3148 1221 3215 6355 9187 7260 9254 +13445 2103 3208 712 4757 8142 9247 6751 10796 +13446 598 3295 1324 3444 6637 9334 7363 9483 +13447 5698 3318 1961 263 11737 9357 8000 6302 +13448 5834 429 2239 2374 11873 6468 8278 8413 +13449 2396 4301 4477 661 8435 10340 10516 6700 +13450 3150 5180 4160 1836 9189 11219 10199 7875 +13451 6219 890 2452 2453 12258 6929 8491 8492 +13452 3460 792 4119 5298 9499 6831 10158 11337 +13453 5524 1451 2133 2476 11563 7490 8172 8515 +13454 6232 2503 2620 450 12271 8542 8659 6489 +13455 3285 2234 5253 495 9324 8273 11292 6534 +13456 2529 524 3706 3367 8568 6563 9745 9406 +13457 391 5713 1952 5220 6430 11752 7991 11259 +13458 5276 1439 4423 2219 11315 7478 10462 8258 +13459 2478 4785 700 5231 8517 10824 6739 11270 +13460 5141 1155 2623 2253 11180 7194 8662 8292 +13461 2754 1040 2098 4420 8793 7079 8137 10459 +13462 4926 4593 2898 277 10965 10632 8937 6316 +13463 4243 1404 4213 3650 10282 7443 10252 9689 +13464 2192 5604 1031 5902 8231 11643 7070 11941 +13465 4994 207 6158 2233 11033 6246 12197 8272 +13466 3334 1579 4633 847 9373 7618 10672 6886 +13467 598 3444 1390 3922 6637 9483 7429 9961 +13468 3848 3036 2808 1053 9887 9075 8847 7092 +13469 370 2854 1658 5212 6409 8893 7697 11251 +13470 1388 3548 1204 3068 7427 9587 7243 9107 +13471 4860 2231 2726 1462 10899 8270 8765 7501 +13472 965 5368 1805 3387 7004 11407 7844 9426 +13473 2806 3673 2758 1068 8845 9712 8797 7107 +13474 584 3506 1358 3003 6623 9545 7397 9042 +13475 1943 2857 876 5502 7982 8896 6915 11541 +13476 3853 2335 3052 926 9892 8374 9091 6965 +13477 1076 2954 296 3449 7115 8993 6335 9488 +13478 2147 2807 1271 5371 8186 8846 7310 11410 +13479 1199 3252 1463 4030 7238 9291 7502 10069 +13480 4154 206 5989 2787 10193 6245 12028 8826 +13481 3672 1243 3620 2410 9711 7282 9659 8449 +13482 945 2497 776 3447 6984 8536 6815 9486 +13483 1723 5409 2360 3365 7762 11448 8399 9404 +13484 3872 2294 1100 2005 9911 8333 7139 8044 +13485 588 3742 1335 3642 6627 9781 7374 9681 +13486 3018 2772 2998 2881 9057 8811 9037 8920 +13487 2949 3198 3102 1190 8988 9237 9141 7229 +13488 389 5317 2053 4221 6428 11356 8092 10260 +13489 5600 692 2888 2340 11639 6731 8927 8379 +13490 1145 3092 1192 3006 7184 9131 7231 9045 +13491 3380 3143 2101 1218 9419 9182 8140 7257 +13492 22 5656 1885 23 118 11695 7924 119 +13493 309 3060 1002 2822 6348 9099 7041 8861 +13494 6211 1435 3999 2231 12250 7474 10038 8270 +13495 5146 791 5905 2804 11185 6830 11944 8843 +13496 6085 4648 390 1881 12124 10687 6429 7920 +13497 2899 486 2332 4744 8938 6525 8371 10783 +13498 4823 3201 1205 1995 10862 9240 7244 8034 +13499 5578 2420 4774 1860 11617 8459 10813 7899 +13500 5645 2413 3965 920 11684 8452 10004 6959 +13501 500 4847 1805 3143 6539 10886 7844 9182 +13502 5383 1116 2708 2986 11422 7155 8747 9025 +13503 3727 4515 300 2469 9766 10554 6339 8508 +13504 5645 1058 2174 2413 11684 7097 8213 8452 +13505 432 4366 4658 2350 6471 10405 10697 8389 +13506 2420 5738 1957 454 8459 11777 7996 6493 +13507 5231 3555 826 2478 11270 9594 6865 8517 +13508 2521 288 6006 3542 8560 6327 12045 9581 +13509 2092 790 4620 4587 8131 6829 10659 10626 +13510 90 89 2856 3483 186 185 8895 9522 +13511 4016 2747 781 2319 10055 8786 6820 8358 +13512 3695 5644 4105 1124 9734 11683 10144 7163 +13513 5926 2535 2534 702 11965 8574 8573 6741 +13514 3443 1324 3295 2994 9482 7363 9334 9033 +13515 4208 1298 2277 5447 10247 7337 8316 11486 +13516 6113 2496 2740 524 12152 8535 8779 6563 +13517 4417 1925 2599 489 10456 7964 8638 6528 +13518 1931 5983 6209 3627 7970 12022 12248 9666 +13519 2930 2760 2759 1086 8969 8799 8798 7125 +13520 5235 2323 1100 2074 11274 8362 7139 8113 +13521 238 2944 1161 3062 6277 8983 7200 9101 +13522 4994 2233 4308 760 11033 8272 10347 6799 +13523 6221 2462 5672 442 12260 8501 11711 6481 +13524 3971 287 2684 2514 10010 6326 8723 8553 +13525 5000 423 6126 2260 11039 6462 12165 8299 +13526 5916 2407 5675 1820 11955 8446 11714 7859 +13527 4174 2452 3340 447 10213 8491 9379 6486 +13528 4018 1383 3421 2658 10057 7422 9460 8697 +13529 4018 2658 4855 258 10057 8697 10894 6297 +13530 3423 2662 3925 1395 9462 8701 9964 7434 +13531 6164 469 2813 2451 12203 6508 8852 8490 +13532 6184 1368 4078 2249 12223 7407 10117 8288 +13533 3215 1221 2772 3018 9254 7260 8811 9057 +13534 4617 1872 825 2501 10656 7911 6864 8540 +13535 2590 1387 6178 2589 8629 7426 12217 8628 +13536 5355 2299 4125 439 11394 8338 10164 6478 +13537 6094 851 3971 2514 12133 6890 10010 8553 +13538 4793 1639 5018 2243 10832 7678 11057 8282 +13539 2453 5345 2070 402 8492 11384 8109 6441 +13540 3919 380 4198 2359 9958 6419 10237 8398 +13541 2359 1267 4336 3919 8398 7306 10375 9958 +13542 4671 1980 5337 2660 10710 8019 11376 8699 +13543 6198 1399 3127 274 12237 7438 9166 6313 +13544 4012 6029 3186 1372 10051 12068 9225 7411 +13545 1052 3389 1452 3388 7091 9428 7491 9427 +13546 1955 4094 1032 6010 7994 10133 7071 12049 +13547 5492 6157 1103 3769 11531 12196 7142 9808 +13548 4867 2253 4569 1474 10906 8292 10608 7513 +13549 4482 2774 6115 2181 10521 8813 12154 8220 +13550 2528 677 4299 3731 8567 6716 10338 9770 +13551 3179 3860 4713 353 9218 9899 10752 6392 +13552 3582 2680 2983 1075 9621 8719 9022 7114 +13553 5354 1005 5250 2241 11393 7044 11289 8280 +13554 5252 360 3641 2327 11291 6399 9680 8366 +13555 1922 5782 504 5484 7961 11821 6543 11523 +13556 4954 2267 5850 1200 10993 8306 11889 7239 +13557 4201 2320 3746 457 10240 8359 9785 6496 +13558 5237 1337 3566 2151 11276 7376 9605 8190 +13559 5099 2190 4116 361 11138 8229 10155 6400 +13560 348 3979 2101 5368 6387 10018 8140 11407 +13561 1203 3448 1355 3352 7242 9487 7394 9391 +13562 5956 2831 2595 285 11995 8870 8634 6324 +13563 3536 278 3072 2506 9575 6317 9111 8545 +13564 581 3415 1342 3453 6620 9454 7381 9492 +13565 5863 2860 967 2406 11902 8899 7006 8445 +13566 3041 2855 3669 1197 9080 8894 9708 7236 +13567 5555 3034 1761 3491 11594 9073 7800 9530 +13568 1296 3267 1159 3091 7335 9306 7198 9130 +13569 3379 1087 2296 2935 9418 7126 8335 8974 +13570 1174 3288 1900 3668 7213 9327 7939 9707 +13571 5824 1343 4998 2573 11863 7382 11037 8612 +13572 3217 1312 3658 3775 9256 7351 9697 9814 +13573 1743 5807 3040 5210 7782 11846 9079 11249 +13574 1829 5226 874 3784 7868 11265 6913 9823 +13575 3659 1419 3909 2846 9698 7458 9948 8885 +13576 3842 2354 2168 5495 9881 8393 8207 11534 +13577 355 5348 2518 2977 6394 11387 8557 9016 +13578 5319 690 2946 2381 11358 6729 8985 8420 +13579 4685 2348 3912 1146 10724 8387 9951 7185 +13580 3085 3487 3244 1247 9124 9526 9283 7286 +13581 2026 3395 3166 5339 8065 9434 9205 11378 +13582 6040 1855 4193 2439 12079 7894 10232 8478 +13583 5978 3725 784 4502 12017 9764 6823 10541 +13584 3798 2464 3349 1282 9837 8503 9388 7321 +13585 3896 202 4050 2319 9935 6241 10089 8358 +13586 5882 2411 3982 1915 11921 8450 10021 7954 +13587 1119 5018 1639 4527 7158 11057 7678 10566 +13588 3096 2999 3507 1188 9135 9038 9546 7227 +13589 2163 6091 958 5924 8202 12130 6997 11963 +13590 5611 1439 3551 2256 11650 7478 9590 8295 +13591 5226 2300 2712 874 11265 8339 8751 6913 +13592 4673 1857 5672 2462 10712 7896 11711 8501 +13593 899 2752 1178 4090 6938 8791 7217 10129 +13594 6231 395 5749 2472 12270 6434 11788 8511 +13595 5863 2406 5612 297 11902 8445 11651 6336 +13596 3197 1197 3031 2953 9236 7236 9070 8992 +13597 1802 5118 1697 3289 7841 11157 7736 9328 +13598 2811 3093 4786 302 8850 9132 10825 6341 +13599 1291 3525 237 2911 7330 9564 6276 8950 +13600 294 3153 1114 2781 6333 9192 7153 8820 +13601 5919 1309 5497 2608 11958 7348 11536 8647 +13602 4182 1860 4774 1394 10221 7899 10813 7433 +13603 5751 655 2990 4879 11790 6694 9029 10918 +13604 5686 3575 1868 928 11725 9614 7907 6967 +13605 3034 266 2616 1761 9073 6305 8655 7800 +13606 4056 3177 208 1607 10095 9216 6247 7646 +13607 3346 2640 4803 1602 9385 8679 10842 7641 +13608 3038 1220 3151 3193 9077 7259 9190 9232 +13609 3077 589 2662 3423 9116 6628 8701 9462 +13610 2708 5836 2087 1051 8747 11875 8126 7090 +13611 4560 1595 3489 3039 10599 7634 9528 9078 +13612 3706 3011 2817 3367 9745 9050 8856 9406 +13613 5914 2275 2620 1003 11953 8314 8659 7042 +13614 1584 4589 2256 3551 7623 10628 8295 9590 +13615 3524 870 2208 1815 9563 6909 8247 7854 +13616 5103 1571 3573 2358 11142 7610 9612 8397 +13617 5792 4783 259 2293 11831 10822 6298 8332 +13618 4100 2029 5743 5375 10139 8068 11782 11414 +13619 5251 905 2318 5462 11290 6944 8357 11501 +13620 1675 4547 691 3009 7714 10586 6730 9048 +13621 3378 2901 2737 544 9417 8940 8776 6583 +13622 1563 4199 310 3907 7602 10238 6349 9946 +13623 6017 877 4572 2432 12056 6916 10611 8471 +13624 3774 1081 2824 2761 9813 7120 8863 8800 +13625 5117 2271 5372 1001 11156 8310 11411 7040 +13626 4753 835 5802 2484 10792 6874 11841 8523 +13627 2217 824 5466 694 8256 6863 11505 6733 +13628 5820 439 3188 2267 11859 6478 9227 8306 +13629 1429 6048 2567 4373 7468 12087 8606 10412 +13630 3295 598 4183 4605 9334 6637 10222 10644 +13631 1219 4164 2070 5197 7258 10203 8109 11236 +13632 1197 3197 1072 3041 7236 9236 7111 9080 +13633 5722 2384 3183 401 11761 8423 9222 6440 +13634 3497 5927 2826 482 9536 11966 8865 6521 +13635 5573 2362 5751 4879 11612 8401 11790 10918 +13636 3612 593 5663 2517 9651 6632 11702 8556 +13637 4498 1041 2112 4142 10537 7080 8151 10181 +13638 1908 4698 2927 5980 7947 10737 8966 12019 +13639 620 4134 3720 5193 6659 10173 9759 11232 +13640 2271 5117 1442 4185 8310 11156 7481 10224 +13641 5970 2436 4012 1372 12009 8475 10051 7411 +13642 1361 4219 1534 4062 7400 10258 7573 10101 +13643 5661 2338 5054 1760 11700 8377 11093 7799 +13644 3092 2998 3057 1192 9131 9037 9096 7231 +13645 3805 968 5162 2287 9844 7007 11201 8326 +13646 3054 3202 3085 1186 9093 9241 9124 7225 +13647 3297 581 3453 2709 9336 6620 9492 8748 +13648 548 2361 1574 5130 6587 8400 7613 11169 +13649 613 4512 1752 3849 6652 10551 7791 9888 +13650 3941 44 43 2429 9980 140 139 8468 +13651 2883 1061 3679 4776 8922 7100 9718 10815 +13652 6124 2089 272 2442 12163 8128 6311 8481 +13653 3727 2469 2468 849 9766 8508 8507 6888 +13654 369 3661 1773 4513 6408 9700 7812 10552 +13655 5614 5374 3493 2728 11653 11413 9532 8767 +13656 5405 2336 6158 207 11444 8375 12197 6246 +13657 5939 2431 2337 3877 11978 8470 8376 9916 +13658 4854 1521 3959 2561 10893 7560 9998 8600 +13659 2532 4903 2180 3693 8571 10942 8219 9732 +13660 5286 1859 2948 1163 11325 7898 8987 7202 +13661 4721 2559 4434 1117 10760 8598 10473 7156 +13662 5960 2273 5084 1274 11999 8312 11123 7313 +13663 1270 2705 587 4107 7309 8744 6626 10146 +13664 1281 3713 1427 3225 7320 9752 7466 9264 +13665 5342 2868 312 3603 11381 8907 6351 9642 +13666 2657 400 2247 4580 8696 6439 8286 10619 +13667 4842 992 3811 1482 10881 7031 9850 7521 +13668 3156 245 3485 3313 9195 6284 9524 9352 +13669 5641 2377 4747 447 11680 8416 10786 6486 +13670 1090 4606 1827 4473 7129 10645 7866 10512 +13671 5851 2417 5632 918 11890 8456 11671 6957 +13672 3936 1101 3632 2407 9975 7140 9671 8446 +13673 3133 1209 3459 3062 9172 7248 9498 9101 +13674 3062 1161 2368 3133 9101 7200 8407 9172 +13675 969 5723 5299 2906 7008 11762 11338 8945 +13676 5709 3510 41 40 11748 9549 137 136 +13677 4423 3194 5593 408 10462 9233 11632 6447 +13678 1243 3269 482 3399 7282 9308 6521 9438 +13679 3104 3468 3276 1246 9143 9507 9315 7285 +13680 4665 471 5175 2695 10704 6510 11214 8734 +13681 3132 2881 2966 3729 9171 8920 9005 9768 +13682 51 50 1821 5120 147 146 7860 11159 +13683 1184 3370 232 3943 7223 9409 6271 9982 +13684 330 3266 1068 2757 6369 9305 7107 8796 +13685 1845 3641 2212 5411 7884 9680 8251 11450 +13686 1669 4792 373 4579 7708 10831 6412 10618 +13687 4689 2280 5645 920 10728 8319 11684 6959 +13688 83 2370 923 5591 179 8409 6962 11630 +13689 1319 3270 518 3261 7358 9309 6557 9300 +13690 5484 504 4253 2352 11523 6543 10292 8391 +13691 4183 1218 2101 3979 10222 7257 8140 10018 +13692 2299 4058 1004 5661 8338 10097 7043 11700 +13693 2099 5972 678 2956 8138 12011 6717 8995 +13694 6023 2321 2582 799 12062 8360 8621 6838 +13695 2672 3812 2426 1022 8711 9851 8465 7061 +13696 1467 4188 336 3422 7506 10227 6375 9461 +13697 1448 4678 2015 5546 7487 10717 8054 11585 +13698 2982 3425 3275 1276 9021 9464 9314 7315 +13699 3310 1053 2808 2739 9349 7092 8847 8778 +13700 5067 282 2712 2300 11106 6321 8751 8339 +13701 5483 2357 2642 665 11522 8396 8681 6704 +13702 4901 2027 2595 763 10940 8066 8634 6802 +13703 4110 3231 5514 1227 10149 9270 11553 7266 +13704 3089 1248 3335 3384 9128 7287 9374 9423 +13705 4766 2238 208 3177 10805 8277 6247 9216 +13706 4503 1478 2244 3373 10542 7517 8283 9412 +13707 2930 1086 2811 2840 8969 7125 8850 8879 +13708 1247 3239 1186 3085 7286 9278 7225 9124 +13709 4524 411 2891 2560 10563 6450 8930 8599 +13710 2085 2627 955 5188 8124 8666 6994 11227 +13711 3796 2709 3453 1251 9835 8748 9492 7290 +13712 2965 315 3454 3636 9004 6354 9493 9675 +13713 3352 547 3002 3249 9391 6586 9041 9288 +13714 2798 2683 2682 333 8837 8722 8721 6372 +13715 5779 1019 2362 3681 11818 7058 8401 9720 +13716 3422 336 3666 4141 9461 6375 9705 10180 +13717 6140 2073 4864 836 12179 8112 10903 6875 +13718 3642 3832 2997 588 9681 9871 9036 6627 +13719 4201 1097 2479 2320 10240 7136 8518 8359 +13720 4619 254 4086 2395 10658 6293 10125 8434 +13721 4695 2284 5430 1678 10734 8323 11469 7717 +13722 1492 2414 5935 3245 7531 8453 11974 9284 +13723 1144 3066 1167 3000 7183 9105 7206 9039 +13724 3064 1128 2978 3248 9103 7167 9017 9287 +13725 4870 2416 4021 286 10909 8455 10060 6325 +13726 2591 215 2592 2714 8630 6254 8631 8753 +13727 2578 3553 5036 1402 8617 9592 11075 7441 +13728 3002 3316 2961 3249 9041 9355 9000 9288 +13729 3316 3002 3078 1255 9355 9041 9117 7294 +13730 3781 556 4702 1975 9820 6595 10741 8014 +13731 5764 2411 3426 1750 11803 8450 9465 7789 +13732 3092 1145 2965 2966 9131 7184 9004 9005 +13733 1458 3146 325 3683 7497 9185 6364 9722 +13734 3911 3254 3901 1487 9950 9293 9940 7526 +13735 3637 1148 2839 3190 9676 7187 8878 9229 +13736 4756 1454 3967 2383 10795 7493 10006 8422 +13737 4756 2383 2891 411 10795 8422 8930 6450 +13738 1092 3299 479 2875 7131 9338 6518 8914 +13739 3505 1016 3007 5093 9544 7055 9046 11132 +13740 4299 1417 3121 3731 10338 7456 9160 9770 +13741 473 5264 2972 3312 6512 11303 9011 9351 +13742 5607 559 2723 2488 11646 6598 8762 8527 +13743 3512 1354 3737 2635 9551 7393 9776 8674 +13744 1527 3591 561 3189 7566 9630 6600 9228 +13745 1355 3630 1210 3500 7394 9669 7249 9539 +13746 2860 3625 2546 967 8899 9664 8585 7006 +13747 307 2917 5132 4092 6346 8956 11171 10131 +13748 1676 4863 1408 3260 7715 10902 7447 9299 +13749 4270 2884 2875 479 10309 8923 8914 6518 +13750 3266 330 2982 3427 9305 6369 9021 9466 +13751 4682 2564 2032 1201 10721 8603 8071 7240 +13752 1537 2954 1076 4270 7576 8993 7115 10309 +13753 3617 485 2565 2925 9656 6524 8604 8964 +13754 5884 2126 855 1974 11923 8165 6894 8013 +13755 3059 1165 2773 3078 9098 7204 8812 9117 +13756 3059 3078 3002 547 9098 9117 9041 6586 +13757 3949 2897 2429 1094 9988 8936 8468 7133 +13758 4275 565 3298 3398 10314 6604 9337 9437 +13759 3333 1120 2998 2772 9372 7159 9037 8811 +13760 4572 2322 5253 959 10611 8361 11292 6998 +13761 4649 1525 4419 2036 10688 7564 10458 8075 +13762 1294 3420 327 3203 7333 9459 6366 9242 +13763 3921 2783 5449 1774 9960 8822 11488 7813 +13764 2876 3783 2707 480 8915 9822 8746 6519 +13765 3440 2918 3469 580 9479 8957 9508 6619 +13766 3520 4098 4948 972 9559 10137 10987 7011 +13767 3767 1129 2600 3182 9806 7168 8639 9221 +13768 3668 4248 3256 3917 9707 10287 9295 9956 +13769 4452 4935 3115 1483 10491 10974 9154 7522 +13770 5401 1735 5462 2318 11440 7774 11501 8357 +13771 2998 3092 2966 2881 9037 9131 9005 8920 +13772 3220 1386 2844 3916 9259 7425 8883 9955 +13773 3965 2413 2174 409 10004 8452 8213 6448 +13774 4834 3660 2174 1058 10873 9699 8213 7097 +13775 1528 3377 1180 3027 7567 9416 7219 9066 +13776 5809 1748 4543 2520 11848 7787 10582 8559 +13777 5035 2327 3688 760 11074 8366 9727 6799 +13778 4683 2448 4278 786 10722 8487 10317 6825 +13779 3461 2973 3275 579 9500 9012 9314 6618 +13780 1072 3197 301 2900 7111 9236 6340 8939 +13781 5413 2524 4332 624 11452 8563 10371 6663 +13782 1078 5934 2279 3788 7117 11973 8318 9827 +13783 4532 1927 5322 1643 10571 7966 11361 7682 +13784 909 2622 1130 3657 6948 8661 7169 9696 +13785 3593 3035 3578 572 9632 9074 9617 6611 +13786 5799 448 2976 2715 11838 6487 9015 8754 +13787 3012 1326 2509 3578 9051 7365 8548 9617 +13788 2031 3567 375 5288 8070 9606 6414 11327 +13789 2429 1135 5269 3941 8468 7174 11308 9980 +13790 4622 604 5702 2325 10661 6643 11741 8364 +13791 756 1926 4796 2164 6795 7965 10835 8203 +13792 3379 2759 2760 1087 9418 8798 8799 7126 +13793 3818 3043 1608 5425 9857 9082 7647 11464 +13794 3951 1096 3328 3152 9990 7135 9367 9191 +13795 3143 3380 4067 500 9182 9419 10106 6539 +13796 6088 534 2546 3625 12127 6573 8585 9664 +13797 5633 1334 3527 2302 11672 7373 9566 8341 +13798 5792 4068 606 2792 11831 10107 6645 8831 +13799 3468 3577 2973 1264 9507 9616 9012 7303 +13800 3326 1330 3749 3755 9365 7369 9788 9794 +13801 492 2939 1087 2760 6531 8978 7126 8799 +13802 3887 1297 4339 2719 9926 7336 10378 8758 +13803 257 5331 2191 2870 6296 11370 8230 8909 +13804 1443 3098 705 3880 7482 9137 6744 9919 +13805 2504 4900 421 2121 8543 10939 6460 8160 +13806 3449 2901 3378 1076 9488 8940 9417 7115 +13807 3559 457 3746 2893 9598 6496 9785 8932 +13808 217 2441 855 4949 6256 8480 6894 10988 +13809 1205 3649 954 3711 7244 9688 6993 9750 +13810 3237 3279 3112 555 9276 9318 9151 6594 +13811 1206 2460 5732 2363 7245 8499 11771 8402 +13812 561 3382 1235 3322 6600 9421 7274 9361 +13813 1808 5391 2078 3176 7847 11430 8117 9215 +13814 3870 938 4350 2326 9909 6977 10389 8365 +13815 6071 4956 3903 2314 12110 10995 9942 8353 +13816 2311 5147 612 5286 8350 11186 6651 11325 +13817 4924 1359 4255 2398 10963 7398 10294 8437 +13818 2590 2589 3371 1386 8629 8628 9410 7425 +13819 5057 1062 3587 2700 11096 7101 9626 8739 +13820 1675 3009 2097 4760 7714 9048 8136 10799 +13821 1661 4329 678 3450 7700 10368 6717 9489 +13822 5311 2047 5192 908 11350 8086 11231 6947 +13823 1214 2753 1342 3415 7253 8792 7381 9454 +13824 5076 3110 2842 1410 11115 9149 8881 7449 +13825 4832 1242 5101 2210 10871 7281 11140 8249 +13826 3174 3103 3339 1215 9213 9142 9378 7254 +13827 5067 2300 2864 1409 11106 8339 8903 7448 +13828 3515 2827 3033 1237 9554 8866 9072 7276 +13829 3391 2920 3922 1390 9430 8959 9961 7429 +13830 3981 4227 3442 475 10020 10266 9481 6514 +13831 4032 3178 2705 1270 10071 9217 8744 7309 +13832 3241 1235 3382 3107 9280 7274 9421 9146 +13833 4174 447 4747 2606 10213 6486 10786 8645 +13834 3165 3106 2949 1194 9204 9145 8988 7233 +13835 3634 558 3149 3778 9673 6597 9188 9817 +13836 3203 327 3409 3574 9242 6366 9448 9613 +13837 1145 3180 315 2965 7184 9219 6354 9004 +13838 4125 873 3787 2372 10164 6912 9826 8411 +13839 1212 3173 1183 3112 7251 9212 7222 9151 +13840 1484 2434 575 5033 7523 8473 6614 11072 +13841 594 3214 1412 3721 6633 9253 7451 9760 +13842 3198 2949 3106 536 9237 8988 9145 6575 +13843 3283 1190 3140 2992 9322 7229 9179 9031 +13844 2992 349 3229 3283 9031 6388 9268 9322 +13845 5472 981 2631 2816 11511 7020 8670 8855 +13846 511 5214 2387 5805 6550 11253 8426 11844 +13847 5040 2172 1394 4774 11079 8211 7433 10813 +13848 4918 2441 1315 3680 10957 8480 7354 9719 +13849 3459 1007 3053 2734 9498 7046 9092 8773 +13850 4553 1170 3969 2346 10592 7209 10008 8385 +13851 3898 2125 418 6127 9937 8164 6457 12166 +13852 1902 1499 2397 5500 7941 7538 8436 11539 +13853 288 2521 2058 5139 6327 8560 8097 11178 +13854 5493 430 4383 2376 11532 6469 10422 8415 +13855 4981 2314 3903 470 11020 8353 9942 6509 +13856 3929 2449 2961 1340 9968 8488 9000 7379 +13857 3370 4045 4511 1422 9409 10084 10550 7461 +13858 1222 3017 1221 3148 7261 9056 7260 9187 +13859 1299 3281 1152 3313 7338 9320 7191 9352 +13860 4634 2369 5457 1763 10673 8408 11496 7802 +13861 523 3140 1190 3102 6562 9179 7229 9141 +13862 3651 1095 3186 2912 9690 7134 9225 8951 +13863 1403 3192 321 3691 7442 9231 6360 9730 +13864 3284 221 2019 4289 9323 6260 8058 10328 +13865 5746 2394 2625 1485 11785 8433 8664 7524 +13866 4748 671 4150 2255 10787 6710 10189 8294 +13867 3480 608 3333 3017 9519 6647 9372 9056 +13868 1805 5368 2101 3143 7844 11407 8140 9182 +13869 905 5352 2588 4124 6944 11391 8627 10163 +13870 3428 1066 3584 2770 9467 7105 9623 8809 +13871 576 4403 5804 2786 6615 10442 11843 8825 +13872 4707 2304 4329 1466 10746 8343 10368 7505 +13873 1786 4691 3828 305 7825 10730 9867 6344 +13874 6110 2481 3875 1123 12149 8520 9914 7162 +13875 6110 1123 2873 2480 12149 7162 8912 8519 +13876 1442 2784 295 4185 7481 8823 6334 10224 +13877 562 3165 1194 3228 6601 9204 7233 9267 +13878 4967 1626 4024 2650 11006 7665 10063 8689 +13879 4038 5473 3162 1083 10077 11512 9201 7122 +13880 3535 647 4948 5538 9574 6686 10987 11577 +13881 4140 2378 5337 275 10179 8417 11376 6314 +13882 1106 2876 480 3317 7145 8915 6519 9356 +13883 309 3982 2411 5764 6348 10021 8450 11803 +13884 2755 1198 2901 3449 8794 7237 8940 9488 +13885 4257 1552 3324 3323 10296 7591 9363 9362 +13886 3612 3952 2224 593 9651 9991 8263 6632 +13887 1502 4619 832 2715 7541 10658 6871 8754 +13888 1458 3683 1240 3654 7497 9722 7279 9693 +13889 3099 1727 997 4146 9138 7766 7036 10185 +13890 3172 3347 3357 1238 9211 9386 9396 7277 +13891 4801 1077 3340 2519 10840 7116 9379 8558 +13892 5577 885 4301 2396 11616 6924 10340 8435 +13893 5289 771 3176 2356 11328 6810 9215 8395 +13894 2466 5507 2482 900 8505 11546 8521 6939 +13895 3444 1324 3315 3777 9483 7363 9354 9816 +13896 3452 2581 1870 770 9491 8620 7909 6809 +13897 4556 4077 4295 1586 10595 10116 10334 7625 +13898 1149 3511 551 3196 7188 9550 6590 9235 +13899 4249 3764 409 2174 10288 9803 6448 8213 +13900 1364 3600 1215 3359 7403 9639 7254 9398 +13901 1623 3218 5394 5078 7662 9257 11433 11117 +13902 5109 428 4802 2419 11148 6467 10841 8458 +13903 1793 2577 438 4833 7832 8616 6477 10872 +13904 1475 3493 995 3709 7514 9532 7034 9748 +13905 6006 2386 1084 3542 12045 8425 7123 9581 +13906 3789 628 5576 3491 9828 6667 11615 9530 +13907 5252 2327 5035 1520 11291 8366 11074 7559 +13908 5635 970 2378 4140 11674 7009 8417 10179 +13909 5771 2431 5939 412 11810 8470 11978 6451 +13910 1071 3399 482 2826 7110 9438 6521 8865 +13911 4673 2462 1000 2049 10712 8501 7039 8088 +13912 3164 1254 3287 3402 9203 7293 9326 9441 +13913 2877 3548 3261 518 8916 9587 9300 6557 +13914 3548 2877 3498 1204 9587 8916 9537 7243 +13915 4356 576 2786 4701 10395 6615 8825 10740 +13916 1096 2911 237 3328 7135 8950 6276 9367 +13917 392 2479 1097 3985 6431 8518 7136 10024 +13918 5716 381 3343 2433 11755 6420 9382 8472 +13919 4981 1389 4661 2314 11020 7428 10700 8353 +13920 327 2827 1082 3409 6366 8866 7121 9448 +13921 3193 1142 3425 3038 9232 7181 9464 9077 +13922 3000 3215 3018 1144 9039 9254 9057 7183 +13923 1190 3283 1194 2949 7229 9322 7233 8988 +13924 6223 2229 720 3411 12262 8268 6759 9450 +13925 6077 300 3161 2380 12116 6339 9200 8419 +13926 700 4785 1696 2504 6739 10824 7735 8543 +13927 615 2458 1466 4736 6654 8497 7505 10775 +13928 3189 3089 3401 1527 9228 9128 9440 7566 +13929 1240 3124 568 3407 7279 9163 6607 9446 +13930 1292 3240 1185 3482 7331 9279 7224 9521 +13931 3582 515 2182 2680 9621 6554 8221 8719 +13932 5090 2382 6232 450 11129 8421 12271 6489 +13933 1542 4934 2073 6140 7581 10973 8112 12179 +13934 3363 3262 3046 1307 9402 9301 9085 7346 +13935 285 2595 2027 5623 6324 8634 8066 11662 +13936 1128 4227 1514 2978 7167 10266 7553 9017 +13937 4905 4463 2301 938 10944 10502 8340 6977 +13938 31 3681 2362 32 127 9720 8401 128 +13939 1293 3206 1228 3361 7332 9245 7267 9400 +13940 5308 1021 1991 3589 11347 7060 8030 9628 +13941 5524 2476 4820 427 11563 8515 10859 6466 +13942 3001 3443 2994 329 9040 9482 9033 6368 +13943 3443 3001 3437 1236 9482 9040 9476 7275 +13944 3202 3054 2773 1165 9241 9093 8812 7204 +13945 1743 5210 2383 3967 7782 11249 8422 10006 +13946 3228 1194 3283 3229 9267 7233 9322 9268 +13947 3281 2999 3096 1152 9320 9038 9135 7191 +13948 283 4255 1557 3828 6322 10294 7596 9867 +13949 1181 3185 1226 3195 7220 9224 7265 9234 +13950 1251 3364 1188 3507 7290 9403 7227 9546 +13951 3714 1322 3182 2600 9753 7361 9221 8639 +13952 5862 427 5014 2915 11901 6466 11053 8954 +13953 3815 2595 2831 1169 9854 8634 8870 7208 +13954 4699 2621 1232 6135 10738 8660 7271 12174 +13955 1183 3723 555 3112 7222 9762 6594 9151 +13956 3185 3159 3362 1226 9224 9198 9401 7265 +13957 3173 328 3107 3108 9212 6367 9146 9147 +13958 4113 2860 5863 297 10152 8899 11902 6336 +13959 1126 5369 4941 3804 7165 11408 10980 9843 +13960 5632 2417 4383 430 11671 8456 10422 6469 +13961 3173 3108 3168 1183 9212 9147 9207 7222 +13962 1800 5498 2530 5667 7839 11537 8569 11706 +13963 4499 569 2593 2025 10538 6608 8632 8064 +13964 546 3264 1145 3006 6585 9303 7184 9045 +13965 1493 4794 1752 4512 7532 10833 7791 10551 +13966 5795 888 5547 2442 11834 6927 11586 8481 +13967 3216 1257 3258 3403 9255 7296 9297 9442 +13968 1380 3833 329 3606 7419 9872 6368 9645 +13969 6109 937 2403 2492 12148 6976 8442 8531 +13970 3420 3033 2827 327 9459 9072 8866 6366 +13971 413 4193 1855 4716 6452 10232 7894 10755 +13972 3847 2907 4675 520 9886 8946 10714 6559 +13973 3889 2935 2296 261 9928 8974 8335 6300 +13974 2790 3719 2390 949 8829 9758 8429 6988 +13975 3427 1118 3714 3270 9466 7157 9753 9309 +13976 2230 5035 760 4308 8269 11074 6799 10347 +13977 1159 3420 1294 3440 7198 9459 7333 9479 +13978 4627 1554 2716 4036 10666 7593 8755 10075 +13979 4840 3268 5818 850 10879 9307 11857 6889 +13980 2629 1104 2422 5721 8668 7143 8461 11760 +13981 3961 2170 950 5628 10000 8209 6989 11667 +13982 3316 480 2707 2961 9355 6519 8746 9000 +13983 4101 1111 3862 3394 10140 7150 9901 9433 +13984 319 2690 1051 3608 6358 8729 7090 9647 +13985 3008 599 2428 3827 9047 6638 8467 9866 +13986 1323 3869 1484 3590 7362 9908 7523 9629 +13987 4629 2530 5498 638 10668 8569 11537 6677 +13988 2713 1347 3035 3593 8752 7386 9074 9632 +13989 4871 2330 4758 952 10910 8369 10797 6991 +13990 672 3387 1805 4847 6711 9426 7844 10886 +13991 563 3227 1226 3362 6602 9266 7265 9401 +13992 4877 1298 4208 2343 10916 7337 10247 8382 +13993 6061 794 3874 2336 12100 6833 9913 8375 +13994 3704 1255 3078 2773 9743 7294 9117 8812 +13995 2848 4063 3537 1127 8887 10102 9576 7166 +13996 1162 3619 1481 3744 7201 9658 7520 9783 +13997 3465 3056 3287 1225 9504 9095 9326 7264 +13998 6210 2058 2521 798 12249 8097 8560 6837 +13999 4646 2003 3884 4304 10685 8042 9923 10343 +14000 1728 2738 838 4856 7767 8777 6877 10895 +14001 3013 3275 3425 1142 9052 9314 9464 7181 +14002 3925 2662 3448 1203 9964 8701 9487 7242 +14003 4979 2356 3176 1273 11018 8395 9215 7312 +14004 3350 3046 3262 539 9389 9085 9301 6578 +14005 3046 3350 3623 1335 9085 9389 9662 7374 +14006 372 2843 1876 5561 6411 8882 7915 11600 +14007 3474 2825 2720 1092 9513 8864 8759 7131 +14008 4758 2330 3550 332 10797 8369 9589 6371 +14009 2346 4665 2695 1020 8385 10704 8734 7059 +14010 1312 3406 1244 3658 7351 9445 7283 9697 +14011 1299 2799 551 3511 7338 8838 6590 9550 +14012 5919 2543 4719 1309 11958 8582 10758 7348 +14013 3402 3287 3056 567 9441 9326 9095 6606 +14014 3711 2630 6066 467 9750 8669 12105 6506 +14015 4103 968 3805 4908 10142 7007 9844 10947 +14016 3185 1181 3082 3366 9224 7220 9121 9405 +14017 554 3396 1283 3356 6593 9435 7322 9395 +14018 3219 1664 3209 1117 9258 7703 9248 7156 +14019 6172 3045 5799 2715 12211 9084 11838 8754 +14020 1362 3614 1549 4003 7401 9653 7588 10042 +14021 3327 4769 2603 222 9366 10808 8642 6261 +14022 3227 563 3193 3151 9266 6602 9232 9190 +14023 787 5726 4558 1012 6826 11765 10597 7051 +14024 1013 3434 1986 6007 7052 9473 8025 12046 +14025 5500 2397 3745 203 11539 8436 9784 6242 +14026 3100 836 4864 3101 9139 6875 10903 9140 +14027 5337 2378 2631 981 11376 8417 8670 7020 +14028 1246 3238 1182 3302 7285 9277 7221 9341 +14029 3240 1292 3077 3137 9279 7331 9116 9176 +14030 1354 3519 1187 3441 7393 9558 7226 9480 +14031 3436 3601 3182 1322 9475 9640 9221 7361 +14032 3704 3156 2849 1106 9743 9195 8888 7145 +14033 1142 3639 1313 3013 7181 9678 7352 9052 +14034 606 4068 1349 2685 6645 10107 7388 8724 +14035 5069 2344 4443 244 11108 8383 10482 6283 +14036 4687 2996 3209 1564 10726 9035 9248 7603 +14037 5061 2351 2399 1164 11100 8390 8438 7203 +14038 4553 2346 3047 603 10592 8385 9086 6642 +14039 4054 2458 4604 1320 10093 8497 10643 7359 +14040 281 2541 1170 3968 6320 8580 7209 10007 +14041 4031 1426 2870 3877 10070 7465 8909 9916 +14042 3969 1170 2541 2540 10008 7209 8580 8579 +14043 329 2994 1098 3606 6368 9033 7137 9645 +14044 4147 3210 3191 1131 10186 9249 9230 7170 +14045 5952 4428 1480 3808 11991 10467 7519 9847 +14046 4194 422 4176 2400 10233 6461 10215 8439 +14047 4999 2339 1757 474 11038 8378 7796 6513 +14048 4877 2343 4616 856 10916 8382 10655 6895 +14049 4392 3097 2687 679 10431 9136 8726 6718 +14050 4960 1746 5183 2809 10999 7785 11222 8848 +14051 4960 2809 4862 725 10999 8848 10901 6764 +14052 1818 4975 614 4149 7857 11014 6653 10188 +14053 1149 3196 1294 3203 7188 9235 7333 9242 +14054 318 4589 831 2246 6357 10628 6870 8285 +14055 3577 1276 3275 2973 9616 7315 9314 9012 +14056 5511 1629 3994 2360 11550 7668 10033 8399 +14057 3302 1182 3103 3174 9341 7221 9142 9213 +14058 527 1692 948 5382 6566 7731 6987 11421 +14059 4165 1469 3827 2428 10204 7508 9866 8467 +14060 3255 1348 3662 3794 9294 7387 9701 9833 +14061 3696 4472 2691 2109 9735 10511 8730 8148 +14062 4798 2358 3573 973 10837 8397 9612 7012 +14063 2216 6230 1696 2391 8255 12269 7735 8430 +14064 5483 1519 5243 2357 11522 7558 11282 8396 +14065 1889 5844 703 5278 7928 11883 6742 11317 +14066 3235 1165 3059 1210 9274 7204 9098 7249 +14067 5876 2735 4061 204 11915 8774 10100 6243 +14068 3775 2895 3390 1295 9814 8934 9429 7334 +14069 5703 917 5484 2352 11742 6956 11523 8391 +14070 3591 1527 3834 4306 9630 7566 9873 10345 +14071 6208 1852 4814 2432 12247 7891 10853 8471 +14072 538 3235 1254 3164 6577 9274 7293 9203 +14073 1236 3315 1324 3443 7275 9354 7363 9482 +14074 4646 1275 5109 2419 10685 7314 11148 8458 +14075 3450 354 4230 1661 9489 6393 10269 7700 +14076 5463 2953 3031 2401 11502 8992 9070 8440 +14077 646 3236 1183 3168 6685 9275 7222 9207 +14078 3239 3274 3597 551 9278 9313 9636 6590 +14079 322 3238 1246 3276 6361 9277 7285 9315 +14080 336 3749 1398 3666 6375 9788 7437 9705 +14081 2852 1039 4159 745 8891 7078 10198 6784 +14082 3598 3137 3077 1121 9637 9176 9116 7160 +14083 6037 301 3197 2953 12076 6340 9236 8992 +14084 1395 3576 1229 3634 7434 9615 7268 9673 +14085 2549 4108 4271 1249 8588 10147 10310 7288 +14086 3463 3106 3165 1176 9502 9145 9204 7215 +14087 5651 2435 3687 1252 11690 8474 9726 7291 +14088 3417 3274 3239 1247 9456 9313 9278 7286 +14089 4551 585 5103 2358 10590 6624 11142 8397 +14090 3253 317 3672 3195 9292 6356 9711 9234 +14091 3410 3015 3810 1351 9449 9054 9849 7390 +14092 3584 312 2868 2770 9623 6351 8907 8809 +14093 4554 248 4464 2498 10593 6287 10503 8537 +14094 3242 3243 3322 1235 9281 9282 9361 7274 +14095 3243 3242 3172 553 9282 9281 9211 6592 +14096 1213 3242 1235 3241 7252 9281 7274 9280 +14097 314 3158 1216 3282 6353 9197 7255 9321 +14098 3227 3253 3195 1226 9266 9292 9234 7265 +14099 3253 3227 3151 1233 9292 9266 9190 7272 +14100 3352 3249 3069 1203 9391 9288 9108 7242 +14101 1435 4126 1571 3999 7474 10165 7610 10038 +14102 5302 1784 428 5109 11341 7823 6467 11148 +14103 3258 1216 2704 3300 9297 7255 8743 9339 +14104 3424 564 3400 3086 9463 6603 9439 9125 +14105 268 4014 961 2862 6307 10053 7000 8901 +14106 1541 4539 2262 5290 7580 10578 8301 11329 +14107 5540 2392 4044 942 11579 8431 10083 6981 +14108 4490 2104 5469 894 10529 8143 11508 6933 +14109 231 3042 1288 3341 6270 9081 7327 9380 +14110 2178 5855 2139 858 8217 11894 8178 6897 +14111 6127 5327 3738 1883 12166 11366 9777 7922 +14112 5542 2351 5061 458 11581 8390 11100 6497 +14113 3989 667 5027 2119 10028 6706 11066 8158 +14114 4448 1008 3883 2562 10487 7047 9922 8601 +14115 5299 793 2886 2906 11338 6832 8925 8945 +14116 3204 3302 3174 540 9243 9341 9213 6579 +14117 819 1691 2991 4884 6858 7730 9030 10923 +14118 4860 2401 3031 582 10899 8440 9070 6621 +14119 4860 1462 3586 2401 10899 7501 9625 8440 +14120 1225 3287 1254 3311 7264 9326 7293 9350 +14121 6238 4361 1499 1902 12277 10400 7538 7941 +14122 3171 1212 3112 3279 9210 7251 9151 9318 +14123 1195 3230 562 3228 7234 9269 6601 9267 +14124 4745 2706 4775 1572 10784 8745 10814 7611 +14125 1714 5025 380 3919 7753 11064 6419 9958 +14126 4564 417 3296 987 10603 6456 9335 7026 +14127 3311 1254 3235 3233 9350 7293 9274 9272 +14128 5300 1917 4102 338 11339 7956 10141 6377 +14129 3436 3104 3204 1185 9475 9143 9243 7224 +14130 4991 2374 5859 875 11030 8413 11898 6914 +14131 1286 3180 1145 3264 7325 9219 7184 9303 +14132 1978 5475 1207 4812 8017 11514 7246 10851 +14133 692 3899 5815 3825 6731 9938 11854 9864 +14134 5108 666 3940 4155 11147 6705 9979 10194 +14135 3173 1212 3356 328 9212 7251 9395 6367 +14136 3067 1119 3042 4310 9106 7158 9081 10349 +14137 561 3027 1180 3382 6600 9066 7219 9421 +14138 3171 3279 3237 1187 9210 9318 9276 7226 +14139 1381 3309 1075 3643 7420 9348 7114 9682 +14140 3506 3892 3700 1403 9545 9931 9739 7442 +14141 3441 3821 3779 235 9480 9860 9818 6274 +14142 4285 2216 2391 861 10324 8255 8430 6900 +14143 5870 1229 3576 2526 11909 7268 9615 8565 +14144 2766 4632 293 4688 8805 10671 6332 10727 +14145 4844 4158 2090 1036 10883 10197 8129 7075 +14146 3359 1215 3339 3205 9398 7254 9378 9244 +14147 4773 3490 1479 2365 10812 9529 7518 8404 +14148 4753 1968 2171 835 10792 8007 8210 6874 +14149 564 3424 1159 3267 6603 9463 7198 9306 +14150 1670 5387 878 2487 7709 11426 6917 8526 +14151 5096 783 4042 2366 11135 6822 10081 8405 +14152 3035 1014 3012 3578 9074 7053 9051 9617 +14153 3240 3601 3436 1185 9279 9640 9475 7224 +14154 2222 3457 670 5683 8261 9496 6709 11722 +14155 3427 2982 3458 1118 9466 9021 9497 7157 +14156 2611 949 2389 3836 8650 6988 8428 9875 +14157 2265 5497 1309 6187 8304 11536 7348 12226 +14158 2745 280 1971 4303 8784 6319 8010 10342 +14159 3206 1293 3152 3328 9245 7332 9191 9367 +14160 467 6066 2653 2941 6506 12105 8692 8980 +14161 3746 1425 3688 2893 9785 7464 9727 8932 +14162 3543 2341 4746 472 9582 8380 10785 6511 +14163 5867 4382 1115 3522 11906 10421 7154 9561 +14164 4122 468 3701 2548 10161 6507 9740 8587 +14165 4122 2548 2549 1249 10161 8587 8588 7288 +14166 3238 3623 3350 1182 9277 9662 9389 7221 +14167 2365 1479 3538 5047 8404 7518 9577 11086 +14168 5403 4044 2392 205 11442 10083 8431 6244 +14169 4023 3705 2209 1592 10062 9744 8248 7631 +14170 1273 4628 279 2364 7312 10667 6318 8403 +14171 3511 1149 3664 3200 9550 7188 9703 9239 +14172 3511 3200 3281 1299 9550 9239 9320 7338 +14173 3728 2706 4745 675 9767 8745 10784 6714 +14174 1016 3505 1850 5664 7055 9544 7889 11703 +14175 539 3103 1182 3350 6578 9142 7221 9389 +14176 4499 2665 3178 569 10538 8704 9217 6608 +14177 4401 2217 694 2693 10440 8256 6733 8732 +14178 5210 935 2891 2383 11249 6974 8930 8422 +14179 1468 3785 536 2845 7507 9824 6575 8884 +14180 348 5368 965 2505 6387 11407 7004 8544 +14181 1217 2920 239 3718 7256 8959 6278 9757 +14182 485 3617 1430 3942 6524 9656 7469 9981 +14183 5507 2466 3611 1141 11546 8505 9650 7180 +14184 584 2769 1095 3651 6623 8808 7134 9690 +14185 3302 3204 3104 1246 9341 9243 9143 7285 +14186 4441 812 2136 3776 10480 6851 8175 9815 +14187 4536 2756 4944 845 10575 8795 10983 6884 +14188 2218 5502 876 5005 8257 11541 6915 11044 +14189 1216 3258 1257 3282 7255 9297 7296 9321 +14190 3054 1186 2799 3485 9093 7225 8838 9524 +14191 3437 3001 3335 1248 9476 9040 9374 7287 +14192 5047 892 4197 2365 11086 6931 10236 8404 +14193 1225 3311 313 3205 7264 9350 6352 9244 +14194 2643 3820 5632 430 8682 9859 11671 6469 +14195 1463 4043 1346 3529 7502 10082 7385 9568 +14196 662 3765 1434 4231 6701 9804 7473 10270 +14197 3420 1159 3424 3033 9459 7198 9463 9072 +14198 3067 4310 4166 1548 9106 10349 10205 7587 +14199 1322 3223 552 3436 7361 9262 6591 9475 +14200 3465 1225 3205 3339 9504 7264 9244 9378 +14201 4351 248 4554 3170 10390 6287 10593 9209 +14202 3833 3335 3001 329 9872 9374 9040 6368 +14203 5188 2385 2867 980 11227 8424 8906 7019 +14204 3376 3241 3107 328 9415 9280 9146 6367 +14205 1321 3381 1250 3484 7360 9420 7289 9523 +14206 3033 3424 3086 1237 9072 9463 9125 7276 +14207 3382 1180 3108 3107 9421 7219 9147 9146 +14208 3038 3425 2982 330 9077 9464 9021 6369 +14209 3235 538 3202 1165 9274 6577 9241 7204 +14210 5998 3647 885 5577 12037 9686 6924 11616 +14211 1240 3407 1241 3259 7279 9446 7280 9298 +14212 4727 2375 4431 703 10766 8414 10470 6742 +14213 1465 3290 1911 5557 7504 9329 7950 11596 +14214 3267 3357 3347 564 9306 9396 9386 6603 +14215 2995 3448 2662 589 9034 9487 8701 6628 +14216 5678 2447 4841 1455 11717 8486 10880 7494 +14217 3852 3498 2877 1129 9891 9537 8916 7168 +14218 1237 3086 1283 3396 7276 9125 7322 9435 +14219 49 3518 1821 50 145 9557 7860 146 +14220 5493 2376 3988 1374 11532 8415 10027 7413 +14221 3321 1722 287 3971 9360 7761 6326 10010 +14222 3683 3419 3124 1240 9722 9458 9163 7279 +14223 3873 3872 4173 953 9912 9911 10212 6992 +14224 3300 558 3403 3258 9339 6597 9442 9297 +14225 4331 2390 3719 906 10370 8429 9758 6945 +14226 1920 5167 815 4658 7959 11206 6854 10697 +14227 4773 2365 4197 688 10812 8404 10236 6727 +14228 1220 3369 1233 3151 7259 9408 7272 9190 +14229 1236 3243 553 3315 7275 9282 6592 9354 +14230 3347 3172 3242 1213 9386 9211 9281 7252 +14231 3362 3159 3361 1228 9401 9198 9400 7267 +14232 1269 2684 287 6161 7308 8723 6326 12200 +14233 4914 3116 1099 5923 10953 9155 7138 11962 +14234 2286 4762 516 5238 8325 10801 6555 11277 +14235 65 3163 2050 66 161 9202 8089 162 +14236 3136 1217 4067 3380 9175 7256 10106 9419 +14237 3243 1236 3437 3322 9282 7275 9476 9361 +14238 554 3356 1212 3171 6593 9395 7251 9210 +14239 979 3706 524 2740 7018 9745 6563 8779 +14240 3401 3089 3384 562 9440 9128 9423 6601 +14241 2329 5013 5586 623 8368 11052 11625 6662 +14242 4110 2480 2873 445 10149 8519 8912 6484 +14243 3348 3319 3414 1282 9387 9358 9453 7321 +14244 3319 3348 2554 570 9358 9387 8593 6609 +14245 3454 315 3184 3364 9493 6354 9223 9403 +14246 607 3152 1293 3531 6646 9191 7332 9570 +14247 1338 3301 462 2547 7377 9340 6501 8586 +14248 3341 4144 4035 231 9380 10183 10074 6270 +14249 6092 4626 2862 961 12131 10665 8901 7000 +14250 1461 4240 577 2889 7500 10279 6616 8928 +14251 1390 3645 1238 3391 7429 9684 7277 9430 +14252 4814 1109 2858 2601 10853 7148 8897 8640 +14253 4881 3129 320 2412 10920 9168 6359 8451 +14254 4432 2405 4927 1612 10471 8444 10966 7651 +14255 5922 5921 54 5266 11961 11960 150 11305 +14256 3364 3184 2832 1188 9403 9223 8871 7227 +14257 1291 3410 1351 3525 7330 9449 7390 9564 +14258 4176 422 3916 2844 10215 6461 9955 8883 +14259 3366 537 3159 3185 9405 6576 9198 9224 +14260 4602 2030 2624 420 10641 8069 8663 6459 +14261 3637 2832 3184 1286 9676 8871 9223 7325 +14262 3377 3168 3108 1180 9416 9207 9147 7219 +14263 3565 1171 2899 2926 9604 7210 8938 8965 +14264 1125 3924 2275 4818 7164 9963 8314 10857 +14265 4372 2992 3140 1431 10411 9031 9179 7470 +14266 3369 3564 2596 1233 9408 9603 8635 7272 +14267 1176 3165 562 3384 7215 9204 6601 9423 +14268 3438 3390 2944 238 9477 9429 8983 6277 +14269 1884 1607 2353 4912 7923 7646 8392 10951 +14270 5658 2498 4464 1444 11697 8537 10503 7483 +14271 1329 3516 1234 3580 7368 9555 7273 9619 +14272 4077 1438 5671 4295 10116 7477 11710 10334 +14273 5145 3155 474 1757 11184 9194 6513 7796 +14274 3617 2925 2914 1122 9656 8964 8953 7161 +14275 1809 6170 1017 5175 7848 12209 7056 11214 +14276 5537 2733 2643 1374 11576 8772 8682 7413 +14277 2957 3850 2403 937 8996 9889 8442 6976 +14278 4011 210 3199 2819 10050 6249 9238 8858 +14279 3433 3191 3210 1310 9472 9230 9249 7349 +14280 5647 213 3455 2310 11686 6252 9494 8349 +14281 3124 3419 3068 1204 9163 9458 9107 7243 +14282 3481 1202 2617 3492 9520 7241 8656 9531 +14283 1330 3622 1377 3803 7369 9661 7416 9842 +14284 421 5380 5954 2121 6460 11419 11993 8160 +14285 2179 4249 766 5077 8218 10288 6805 11116 +14286 1372 3186 1095 3879 7411 9225 7134 9918 +14287 984 3467 6063 5170 7023 9506 12102 11209 +14288 3737 235 4040 4386 9776 6274 10079 10425 +14289 1422 4511 2517 5857 7461 10550 8556 11896 +14290 6210 2980 382 2291 12249 9019 6421 8330 +14291 2407 5916 660 3936 8446 11955 6699 9975 +14292 2834 3882 1992 918 8873 9921 8031 6957 +14293 1650 2659 975 5148 7689 8698 7014 11187 +14294 1216 3158 1241 3407 7255 9197 7280 9446 +14295 5955 4022 1155 2539 11994 10061 7194 8578 +14296 3635 496 3545 2850 9674 6535 9584 8889 +14297 3400 1213 3241 3376 9439 7252 9280 9415 +14298 3625 2860 4113 6088 9664 8899 10152 12127 +14299 539 3262 1179 3465 6578 9301 7218 9504 +14300 1159 3440 580 3091 7198 9479 6619 9130 +14301 3507 2999 3281 532 9546 9038 9320 6571 +14302 3539 239 2920 3391 9578 6278 8959 9430 +14303 1213 3400 564 3347 7252 9439 6603 9386 +14304 578 3414 1261 3257 6617 9453 7300 9296 +14305 3451 3206 3328 237 9490 9245 9367 6276 +14306 4922 4007 1700 1325 10961 10046 7739 7364 +14307 4752 1866 4913 2613 10791 7905 10952 8652 +14308 5136 1654 4656 2674 11175 7693 10695 8713 +14309 3519 1354 3512 3167 9558 7393 9551 9206 +14310 3189 561 3322 3437 9228 6600 9361 9476 +14311 3437 1248 3089 3189 9476 7287 9128 9228 +14312 323 3616 1131 3191 6362 9655 7170 9230 +14313 4854 2694 2763 1521 10893 8733 8802 7560 +14314 5583 2887 2888 1259 11622 8926 8927 7298 +14315 4721 1117 3209 2996 10760 7156 9248 9035 +14316 4290 1167 3066 2572 10329 7206 9105 8611 +14317 2552 4012 2436 893 8591 10051 8475 6932 +14318 316 4298 1222 3148 6355 10337 7261 9187 +14319 1323 3927 303 3869 7362 9966 6342 9908 +14320 2603 4769 2024 6053 8642 10808 8063 12092 +14321 6016 477 5711 2780 12055 6516 11750 8819 +14322 3630 3233 3235 1210 9669 9272 9274 7249 +14323 3521 3451 3416 1313 9560 9490 9455 7352 +14324 1420 3560 1252 3687 7459 9599 7291 9726 +14325 210 2478 826 3199 6249 8517 6865 9238 +14326 3580 1234 3164 3402 9619 7273 9203 9441 +14327 3485 245 2773 3054 9524 6284 8812 9093 +14328 3056 3659 2846 567 9095 9698 8885 6606 +14329 2962 3549 2317 503 9001 9588 8356 6542 +14330 3487 3085 3202 538 9526 9124 9241 6577 +14331 3375 1295 3390 3438 9414 7334 9429 9477 +14332 722 5074 1777 5159 6761 11113 7816 11198 +14333 1807 4198 380 5323 7846 10237 6419 11362 +14334 5993 476 2490 2782 12032 6515 8529 8821 +14335 4047 1258 2509 3703 10086 7297 8548 9742 +14336 53 52 2100 3494 149 148 8139 9533 +14337 4660 1817 4355 862 10699 7856 10394 6901 +14338 3597 2918 3440 1294 9636 8957 9479 7333 +14339 588 2997 1330 3803 6627 9036 7369 9842 +14340 3620 1071 3390 2895 9659 7110 9429 8934 +14341 1282 3349 1256 3348 7321 9388 7295 9387 +14342 3376 328 3356 1283 9415 6367 9395 7322 +14343 3525 3416 3451 237 9564 9455 9490 6276 +14344 3106 3463 2845 536 9145 9502 8884 6575 +14345 1703 4195 353 4713 7742 10234 6392 10752 +14346 1252 3560 284 3083 7291 9599 6323 9122 +14347 1210 3059 547 3500 7249 9098 6586 9539 +14348 3363 233 3757 3944 9402 6272 9796 9983 +14349 3686 3305 3600 1364 9725 9344 9639 7403 +14350 3778 1121 3077 3423 9817 7160 9116 9462 +14351 3468 3104 3436 552 9507 9143 9475 6591 +14352 3669 2855 3379 1253 9708 8894 9418 7292 +14353 1320 3787 247 4054 7359 9826 6286 10093 +14354 739 3296 1819 4765 6778 9335 7858 10804 +14355 3266 3427 3270 1319 9305 9466 9309 7358 +14356 3199 2006 929 2819 9238 8045 6968 8858 +14357 4093 1455 2833 1044 10132 7494 8872 7083 +14358 3478 3102 3198 1153 9517 9141 9237 7192 +14359 1247 3244 323 3417 7286 9283 6362 9456 +14360 2341 3543 3226 419 8380 9582 9265 6458 +14361 6196 5784 1768 3175 12235 11823 7807 9214 +14362 3376 1283 3086 3400 9415 7322 9125 9439 +14363 4552 2611 4157 1695 10591 8650 10196 7734 +14364 2542 1587 4739 2208 8581 7626 10778 8247 +14365 3516 3244 3487 1234 9555 9283 9526 7273 +14366 1632 3105 625 4565 7671 9144 6664 10604 +14367 1623 3977 1052 3694 7662 10016 7091 9733 +14368 2281 5021 399 4866 8320 11060 6438 10905 +14369 3717 3416 3525 1351 9756 9455 9564 7390 +14370 2090 4158 367 3928 8129 10197 6406 9967 +14371 3774 2761 2565 485 9813 8800 8604 6524 +14372 4142 1795 780 4498 10181 7834 6819 10537 +14373 900 2482 353 4195 6939 8521 6392 10234 +14374 24 23 1885 3278 120 119 7924 9317 +14375 5851 1588 5234 2417 11890 7627 11273 8456 +14376 1348 3439 1296 3662 7387 9478 7335 9701 +14377 3515 554 3519 3167 9554 6593 9558 9206 +14378 6169 1869 432 2566 12208 7908 6471 8605 +14379 4972 5934 3446 1693 11011 11973 9485 7732 +14380 5766 5374 5614 2257 11805 11413 11653 8296 +14381 4283 4916 414 3079 10322 10955 6453 9118 +14382 5366 1074 2558 2434 11405 7113 8597 8473 +14383 3206 3451 3521 1228 9245 9490 9560 7267 +14384 4950 1556 4194 2400 10989 7595 10233 8439 +14385 3700 3892 3651 1352 9739 9931 9690 7391 +14386 3269 4530 2443 1347 9308 10569 8482 7386 +14387 2913 3646 6111 1125 8952 9685 12150 7164 +14388 3852 1341 3300 2704 9891 7380 9339 8743 +14389 3417 323 3191 3433 9456 6362 9230 9472 +14390 1871 4197 892 2626 7910 10236 6931 8665 +14391 3433 1302 3274 3417 9472 7341 9313 9456 +14392 6117 1460 3951 2494 12156 7499 9990 8533 +14393 4247 5350 4940 2527 10286 11389 10979 8566 +14394 4247 2527 2921 971 10286 8566 8960 7010 +14395 1296 3439 239 3539 7335 9478 6278 9578 +14396 3456 1264 2973 3461 9495 7303 9012 9500 +14397 3482 3305 3686 1292 9521 9344 9725 7331 +14398 3482 540 3600 3305 9521 6579 9639 9344 +14399 5600 2340 428 1784 11639 8379 6467 7823 +14400 4512 2756 4536 1493 10551 8795 10575 7532 +14401 1234 3487 538 3164 7273 9526 6577 9203 +14402 552 3223 1118 3458 6591 9262 7157 9497 +14403 2563 5746 1485 3839 8602 11785 7524 9878 +14404 1502 4340 1959 4563 7541 10379 7998 10602 +14405 1136 3786 1772 4846 7175 9825 7811 10885 +14406 3433 3469 2918 1302 9472 9508 8957 7341 +14407 5619 2395 1483 4207 11658 8434 7522 10246 +14408 4112 455 3708 2796 10151 6494 9747 8835 +14409 3456 3276 3468 1264 9495 9315 9507 7303 +14410 1592 4880 617 4246 7631 10919 6656 10285 +14411 917 4596 1981 2952 6956 10635 8020 8991 +14412 540 3482 1185 3204 6579 9521 7224 9243 +14413 3739 5478 4831 768 9778 11517 10870 6807 +14414 834 4803 2640 6237 6873 10842 8679 12276 +14415 3577 3458 2982 1276 9616 9497 9021 7315 +14416 835 2171 5684 5793 6874 8210 11723 11832 +14417 3297 1082 3167 3512 9336 7121 9206 9551 +14418 3509 1154 2571 2779 9548 7193 8610 8818 +14419 348 4293 1517 4432 6387 10332 7556 10471 +14420 311 4136 1507 2638 6350 10175 7546 8677 +14421 3623 3286 3642 1335 9662 9325 9681 7374 +14422 4415 489 3109 2124 10454 6528 9148 8163 +14423 4779 2237 4129 1260 10818 8276 10168 7299 +14424 3886 1301 3212 2801 9925 7340 9251 8840 +14425 381 3589 1991 3343 6420 9628 8030 9382 +14426 3100 1191 5338 836 9139 7230 11377 6875 +14427 3192 3948 3894 3858 9231 9987 9933 9897 +14428 1294 3196 551 3597 7333 9235 6590 9636 +14429 5522 5008 2892 2639 11561 11047 8931 8678 +14430 5516 1405 3550 2423 11555 7444 9589 8462 +14431 3636 3729 2966 2965 9675 9768 9005 9004 +14432 5990 1790 4513 2522 12029 7829 10552 8561 +14433 5990 2522 3792 683 12029 8561 9831 6722 +14434 5040 5523 2173 2172 11079 11562 8212 8211 +14435 3530 3306 3803 1377 9569 9345 9842 7416 +14436 1162 3744 2544 5714 7201 9783 8583 11753 +14437 1528 3027 561 3591 7567 9066 6600 9630 +14438 4312 732 4859 2022 10351 6771 10898 8061 +14439 4949 855 5616 1954 10988 6894 11655 7993 +14440 3664 3574 3409 1317 9703 9613 9448 7356 +14441 554 3171 1187 3519 6593 9210 7226 9558 +14442 5867 308 3349 2464 11906 6347 9388 8503 +14443 5200 3473 1753 2311 11239 9512 7792 8350 +14444 4555 2676 4182 224 10594 8715 10221 6263 +14445 6047 2428 3252 1199 12086 8467 9291 7238 +14446 738 3426 2411 5882 6777 9465 8450 11921 +14447 2838 3765 4634 1105 8877 9804 10673 7144 +14448 6142 2075 4439 1630 12181 8114 10478 7669 +14449 4318 1584 3047 4789 10357 7623 9086 10828 +14450 4820 2476 5673 4309 10859 8515 11712 10348 +14451 4228 560 3371 2589 10267 6599 9410 8628 +14452 5180 2105 1572 4160 11219 8144 7611 10199 +14453 1313 3639 563 3521 7352 9678 6602 9560 +14454 4139 201 5310 2545 10178 6240 11349 8584 +14455 5396 1394 2172 2173 11435 7433 8211 8212 +14456 1049 3913 250 2926 7088 9952 6289 8965 +14457 218 2534 1359 3291 6257 8573 7398 9330 +14458 2165 5168 1045 4234 8204 11207 7084 10273 +14459 322 3484 1250 3286 6361 9523 7289 9325 +14460 442 3788 2279 6221 6481 9827 8318 12260 +14461 4082 1508 4390 2062 10121 7547 10429 8101 +14462 4037 1401 3147 2353 10076 7440 9186 8392 +14463 3807 586 3673 2806 9846 6625 9712 8845 +14464 4976 2067 4532 1643 11015 8106 10571 7682 +14465 1132 3933 1712 5692 7171 9972 7751 11731 +14466 3465 3339 3103 539 9504 9378 9142 6578 +14467 3624 2671 2702 487 9663 8710 8741 6526 +14468 5887 1551 5426 2516 11926 7590 11465 8555 +14469 4497 2641 2887 222 10536 8680 8926 6261 +14470 1075 2983 498 3643 7114 9022 6537 9682 +14471 3140 523 3793 1431 9179 6562 9832 7470 +14472 5208 2502 3687 2435 11247 8541 9726 8474 +14473 6090 2656 4813 1814 12129 8695 10852 7853 +14474 2326 4350 466 3325 8365 10389 6505 9364 +14475 661 3546 2228 4809 6700 9585 8267 10848 +14476 3453 1342 3636 3454 9492 7381 9675 9493 +14477 3453 3454 3364 1251 9492 9493 9403 7290 +14478 5631 2474 3988 789 11670 8513 10027 6828 +14479 1835 5778 762 3510 7874 11817 6801 9549 +14480 2007 4791 728 4233 8046 10830 6767 10272 +14481 1307 3530 233 3363 7346 9569 6272 9402 +14482 378 5183 1746 4910 6417 11222 7785 10949 +14483 6072 943 3138 2331 12111 6982 9177 8370 +14484 3658 549 2895 3775 9697 6588 8934 9814 +14485 4592 2951 2723 559 10631 8990 8762 6598 +14486 3934 1909 5472 2816 9973 7948 11511 8855 +14487 5478 2459 362 1992 11517 8498 6401 8031 +14488 1330 3326 595 3622 7369 9365 6634 9661 +14489 4657 1457 3789 3094 10696 7496 9828 9133 +14490 4657 3094 6005 777 10696 9133 12044 6816 +14491 4174 2606 1567 5373 10213 8645 7606 11412 +14492 5418 2456 5005 876 11457 8495 11044 6915 +14493 532 3664 1317 3796 6571 9703 7356 9835 +14494 547 3352 1355 3500 6586 9391 7394 9539 +14495 3090 3599 2515 1080 9129 9638 8554 7119 +14496 554 3515 1237 3396 6593 9554 7276 9435 +14497 3587 4345 2309 214 9626 10384 8348 6253 +14498 794 2746 1695 3874 6833 8785 7734 9913 +14499 1042 3963 1232 2621 7081 10002 7271 8660 +14500 3999 2649 4704 719 10038 8688 10743 6758 +14501 1771 3756 681 4708 7810 9795 6720 10747 +14502 732 4312 1933 5529 6771 10351 7972 11568 +14503 1777 3503 933 5016 7816 9542 6972 11055 +14504 4607 744 5774 5789 10646 6783 11813 11828 +14505 3813 3359 3205 313 9852 9398 9244 6352 +14506 1737 4314 2474 5631 7776 10353 8513 11670 +14507 1483 3115 570 4207 7522 9154 6609 10246 +14508 3767 241 3137 3598 9806 6280 9176 9637 +14509 1889 3537 265 4983 7928 9576 6304 11022 +14510 1379 4343 2045 6131 7418 10382 8084 12170 +14511 3935 2168 2354 889 9974 8207 8393 6928 +14512 3484 322 3276 3456 9523 6361 9315 9495 +14513 3484 3456 3461 1321 9523 9495 9500 7360 +14514 4422 5737 5270 1736 10461 11776 11309 7775 +14515 5319 2828 4336 690 11358 8867 10375 6729 +14516 3943 2699 4213 1404 9982 8738 10252 7443 +14517 3783 2876 2874 3799 9822 8915 8913 9838 +14518 4332 2551 3763 624 10371 8590 9802 6663 +14519 5513 3021 5580 2657 11552 9060 11619 8696 +14520 3569 202 3896 1631 9608 6241 9935 7670 +14521 3813 1355 3448 2995 9852 7394 9487 9034 +14522 685 6040 2439 5487 6724 12079 8478 11526 +14523 2665 1271 2705 3178 8704 7310 8744 9217 +14524 585 4551 2292 6190 6624 10590 8331 12229 +14525 4842 707 3213 2137 10881 6746 9252 8176 +14526 4919 2743 4886 576 10958 8782 10925 6615 +14527 3878 550 3488 2758 9917 6589 9527 8797 +14528 4555 1371 4028 1988 10594 7410 10067 8027 +14529 5322 1927 4484 4706 11361 7966 10523 10745 +14530 1671 6028 6000 3514 7710 12067 12039 9553 +14531 4897 2432 4814 494 10936 8471 10853 6533 +14532 2025 6049 1421 4499 8064 12088 7460 10538 +14533 1688 6006 288 3940 7727 12045 6327 9979 +14534 5837 2857 1943 385 11876 8896 7982 6424 +14535 3807 3261 3548 1388 9846 9300 9587 7427 +14536 3539 3357 3267 1296 9578 9396 9306 7335 +14537 1934 3273 867 5966 7973 9312 6906 12005 +14538 5280 1209 3133 2667 11319 7248 9172 8706 +14539 5077 766 2206 3977 11116 6805 8245 10016 +14540 2507 4242 924 5902 8546 10281 6963 11941 +14541 4610 2446 4387 1569 10649 8485 10426 7608 +14542 5345 2453 2452 1050 11384 8492 8491 7089 +14543 242 2978 1514 4367 6281 9017 7553 10406 +14544 4878 2436 4287 632 10917 8475 10326 6671 +14545 3203 3574 3664 1149 9242 9613 9703 7188 +14546 392 5845 1999 4540 6431 11884 8038 10579 +14547 5808 4458 3052 618 11847 10497 9091 6657 +14548 5857 2517 5663 1803 11896 8556 11702 7842 +14549 4871 3181 1363 2330 10910 9220 7402 8369 +14550 3952 2707 3783 1418 9991 8746 9822 7457 +14551 3397 525 2904 3926 9436 6564 8943 9965 +14552 1348 3255 594 3721 7387 9294 6633 9760 +14553 382 5560 1858 3655 6421 11599 7897 9694 +14554 3791 3381 3015 590 9830 9420 9054 6629 +14555 2120 5964 1503 5424 8159 12003 7542 11463 +14556 2654 393 1539 3754 8693 6432 7578 9793 +14557 1386 3220 869 2590 7425 9259 6908 8629 +14558 1602 4545 772 3346 7641 10584 6811 9385 +14559 4618 882 5734 3019 10657 6921 11773 9058 +14560 1856 3464 449 4751 7895 9503 6488 10790 +14561 4659 1015 3518 2632 10698 7054 9557 8671 +14562 3697 3055 3873 953 9736 9094 9912 6992 +14563 563 3362 1228 3521 6602 9401 7267 9560 +14564 5823 2475 3727 849 11862 8514 9766 6888 +14565 3659 3056 3465 1179 9698 9095 9504 7218 +14566 3711 6065 1995 1205 9750 12104 8034 7244 +14567 4688 1391 3954 2765 10727 7430 9993 8804 +14568 5537 1374 3988 2474 11576 7413 10027 8513 +14569 3406 321 3192 3858 9445 6360 9231 9897 +14570 5476 4000 737 2020 11515 10039 6776 8059 +14571 540 3174 1215 3600 6579 9213 7254 9639 +14572 4253 504 6214 2812 10292 6543 12253 8851 +14573 4590 1063 2850 3545 10629 7102 8889 9584 +14574 2160 3759 43 42 8199 9798 139 138 +14575 5019 895 2437 2444 11058 6934 8476 8483 +14576 299 3933 2069 3074 6338 9972 8108 9113 +14577 1403 3691 1358 3506 7442 9730 7397 9545 +14578 5992 2993 3968 1993 12031 9032 10007 8032 +14579 1593 4901 763 4800 7632 10940 6802 10839 +14580 3927 979 2740 2741 9966 7018 8779 8780 +14581 549 3658 1244 3082 6588 9697 7283 9121 +14582 5815 2741 2740 2496 11854 8780 8779 8535 +14583 794 5975 1887 2746 6833 12014 7926 8785 +14584 4449 2288 2251 5797 10488 8327 8290 11836 +14585 1457 4657 1873 5052 7496 10696 7912 11091 +14586 1322 3714 1118 3223 7361 9753 7157 9262 +14587 5753 628 4242 2507 11792 6667 10281 8546 +14588 5312 334 3069 2449 11351 6373 9108 8488 +14589 5496 2959 2532 956 11535 8998 8571 6995 +14590 4357 1042 2621 1987 10396 7081 8660 8026 +14591 5571 1786 305 4729 11610 7825 6344 10768 +14592 4981 2455 4518 1389 11020 8494 10557 7428 +14593 4495 2002 4888 3123 10534 8041 10927 9162 +14594 1472 4359 645 2924 7511 10398 6684 8963 +14595 580 3662 1296 3091 6619 9701 7335 9130 +14596 1639 4793 355 2977 7678 10832 6394 9016 +14597 386 6008 1880 2722 6425 12047 7919 8761 +14598 6008 386 4108 2549 12047 6425 10147 8588 +14599 6009 2549 2548 884 12048 8588 8587 6923 +14600 5069 1104 3707 529 11108 7143 9746 6568 +14601 3810 3015 3381 1321 9849 9054 9420 7360 +14602 3391 1238 3357 3539 9430 7277 9396 9578 +14603 1337 5237 887 2599 7376 11276 6926 8638 +14604 3564 3369 3488 550 9603 9408 9527 6589 +14605 6096 2931 5904 1847 12135 8970 11943 7886 +14606 3136 3922 2920 1217 9175 9961 8959 7256 +14607 60 59 2343 4208 156 155 8382 10247 +14608 3717 579 3275 3013 9756 6618 9314 9052 +14609 2269 2583 3058 6227 8308 8622 9097 12266 +14610 979 3927 1323 2928 7018 9966 7362 8967 +14611 4181 500 4067 2721 10220 6539 10106 8760 +14612 3383 2259 977 4907 9422 8298 7016 10946 +14613 2796 1265 4672 4112 8835 7304 10711 10151 +14614 3601 3240 3137 241 9640 9279 9176 6280 +14615 579 3717 1351 3810 6618 9756 7390 9849 +14616 4762 2652 2934 516 10801 8691 8973 6555 +14617 4175 1316 3445 2486 10214 7355 9484 8525 +14618 4999 2651 4650 1658 11038 8690 10689 7697 +14619 589 3077 1292 3686 6628 9116 7331 9725 +14620 4610 3462 975 2446 10649 9501 7014 8485 +14621 1179 3944 1419 3659 7218 9983 7458 9698 +14622 2563 3839 4267 1486 8602 9878 10306 7525 +14623 5567 4799 2468 1177 11606 10838 8507 7216 +14624 3992 2804 5905 1830 10031 8843 11944 7869 +14625 5750 260 2644 5182 11789 6299 8683 11221 +14626 5819 2520 2843 1740 11858 8559 8882 7779 +14627 4646 865 2150 2003 10685 6904 8189 8042 +14628 3894 3366 3082 1244 9933 9405 9121 7283 +14629 5678 591 3207 2447 11717 6630 9246 8486 +14630 1920 3780 303 5167 7959 9819 6342 11206 +14631 5794 277 2898 2473 11833 6316 8937 8512 +14632 4685 1146 2153 2785 10724 7185 8192 8824 +14633 6037 4039 5189 2102 12076 10078 11228 8141 +14634 3012 3878 3292 1326 9051 9917 9331 7365 +14635 3878 3012 3564 550 9917 9051 9603 6589 +14636 1330 2997 1398 3749 7369 9036 7437 9788 +14637 5344 4788 5110 1231 11383 10827 11149 7270 +14638 1307 3046 1335 3742 7346 9085 7374 9781 +14639 1238 3645 553 3172 7277 9684 6592 9211 +14640 1142 3193 563 3639 7181 9232 6602 9678 +14641 67 3923 6082 68 163 9962 12121 164 +14642 3637 1286 3264 3247 9676 7325 9303 9286 +14643 5786 503 5567 2512 11825 6542 11606 8551 +14644 5603 2177 1937 363 11642 8216 7976 6402 +14645 5803 2582 2321 1223 11842 8621 8360 7262 +14646 3238 322 3286 3623 9277 6361 9325 9662 +14647 5593 2450 6076 408 11632 8489 12115 6447 +14648 3630 313 3311 3233 9669 6352 9350 9272 +14649 3758 1767 5044 901 9797 7806 11083 6940 +14650 5798 1318 6164 2451 11837 7357 12203 8490 +14651 4481 2492 2403 1011 10520 8531 8442 7050 +14652 5443 1112 2780 2490 11482 7151 8819 8529 +14653 4049 840 5637 2835 10088 6879 11676 8874 +14654 4981 470 5436 2455 11020 6509 11475 8494 +14655 5537 2474 4314 514 11576 8513 10353 6553 +14656 523 3881 1311 3793 6562 9920 7350 9832 +14657 331 3076 1112 3716 6370 9115 7151 9755 +14658 5807 2544 3744 344 11846 8583 9783 6383 +14659 3410 1291 3298 3712 9449 7330 9337 9751 +14660 1224 5941 2088 4010 7263 11980 8127 10049 +14661 3637 3247 4921 1148 9676 9286 10960 7187 +14662 2146 2619 5984 240 8185 8658 12023 6279 +14663 3794 1310 3210 3255 9833 7349 9249 9294 +14664 5704 2642 994 405 11743 8681 7033 6444 +14665 1887 3344 377 5385 7926 9383 6416 11424 +14666 4011 2391 1696 210 10050 8430 7735 6249 +14667 4875 951 2483 2484 10914 6990 8522 8523 +14668 4171 278 3536 1318 10210 6317 9575 7357 +14669 6112 1509 5420 2575 12151 7548 11459 8614 +14670 6048 1888 4351 2567 12087 7927 10390 8606 +14671 1698 3715 251 4868 7737 9754 6290 10907 +14672 3847 3222 5199 1546 9886 9261 11238 7585 +14673 3847 3549 2962 2907 9886 9588 9001 8946 +14674 4021 2815 4957 1719 10060 8854 10996 7758 +14675 1134 2682 1004 4058 7173 8721 7043 10097 +14676 3402 567 2846 3580 9441 6606 8885 9619 +14677 5064 1157 2214 2614 11103 7196 8253 8653 +14678 2325 5967 932 3771 8364 12006 6971 9810 +14679 505 4143 1088 3138 6544 10182 7127 9177 +14680 3664 532 3281 3200 9703 6571 9320 9239 +14681 3378 544 3036 3848 9417 6583 9075 9887 +14682 3929 1340 3952 3612 9968 7379 9991 9651 +14683 1054 6214 2503 6232 7093 12253 8542 12271 +14684 543 3652 1102 3991 6582 9691 7141 10030 +14685 2025 2593 858 5209 8064 8632 6897 11248 +14686 5400 2355 2677 307 11439 8394 8716 6346 +14687 4443 1491 3610 244 10482 7530 9649 6283 +14688 809 4475 1453 4029 6848 10514 7492 10068 +14689 545 3654 1240 3259 6584 9693 7279 9298 +14690 806 5640 2085 5406 6845 11679 8124 11445 +14691 4087 3331 5877 1345 10126 9370 11916 7384 +14692 5016 2463 5159 1777 11055 8502 11198 7816 +14693 4617 2501 1464 4388 10656 8540 7503 10427 +14694 4738 3540 4583 1680 10777 9579 10622 7719 +14695 5499 1983 5162 968 11538 8022 11201 7007 +14696 6017 2473 5221 877 12056 8512 11260 6916 +14697 3531 3854 3894 3948 9570 9893 9933 9987 +14698 3458 3577 3468 552 9497 9616 9507 6591 +14699 5080 2554 3348 1256 11119 8593 9387 7295 +14700 4881 2142 5853 3129 10920 8181 11892 9168 +14701 4543 5758 5551 1929 10582 11797 11590 7968 +14702 1377 3622 595 3588 7416 9661 6634 9627 +14703 4045 2720 2825 573 10084 8759 8864 6612 +14704 2964 4811 362 2459 9003 10850 6401 8498 +14705 5640 4015 260 2085 11679 10054 6299 8124 +14706 1380 3463 1176 3833 7419 9502 7215 9872 +14707 4018 3797 3847 1546 10057 9836 9886 7585 +14708 3909 1329 3580 2846 9948 7368 9619 8885 +14709 3907 310 2817 3011 9946 6349 8856 9050 +14710 5512 3272 1024 3653 11551 9311 7063 9692 +14711 5211 1001 5372 2470 11250 7040 11411 8509 +14712 5221 2473 2898 1063 11260 8512 8937 7102 +14713 4859 1875 4061 2735 10898 7914 10100 8774 +14714 4067 1412 3214 2721 10106 7451 9253 8760 +14715 1950 4102 1524 5369 7989 10141 7563 11408 +14716 4096 2713 3593 1397 10135 8752 9632 7436 +14717 2006 5014 427 4820 8045 11053 6466 10859 +14718 5275 606 2685 2475 11314 6645 8724 8514 +14719 1329 3909 599 3008 7368 9948 6638 9047 +14720 1701 5040 454 1958 7740 11079 6493 7997 +14721 3319 570 3115 3819 9358 6609 9154 9858 +14722 3923 2180 4903 6082 9962 8219 10942 12121 +14723 4550 2698 2697 4731 10589 8737 8736 10770 +14724 1997 5023 946 5688 8036 11062 6985 11727 +14725 2242 3285 495 5562 8281 9324 6534 11601 +14726 5060 5187 1945 3748 11099 11226 7984 9787 +14727 1721 1406 1681 5860 7760 7445 7720 11899 +14728 5427 927 4524 2560 11466 6966 10563 8599 +14729 342 3405 2064 5127 6381 9444 8103 11166 +14730 4427 6122 5879 2140 10466 12161 11918 8179 +14731 2922 512 2602 3304 8961 6551 8641 9343 +14732 4763 2689 2688 941 10802 8728 8727 6980 +14733 1325 3801 1633 5027 7364 9840 7672 11066 +14734 1592 4246 1370 4023 7631 10285 7409 10062 +14735 2375 5880 746 4431 8414 11919 6785 10470 +14736 4648 2508 4025 390 10687 8547 10064 6429 +14737 3881 1288 3131 3010 9920 7327 9170 9049 +14738 220 6102 2045 4223 6259 12141 8084 10262 +14739 4664 2533 983 3508 10703 8572 7022 9547 +14740 4749 6092 3337 431 10788 12131 9376 6470 +14741 4869 1526 2802 2633 10908 7565 8841 8672 +14742 3509 4562 2093 1154 9548 10601 8132 7193 +14743 6034 2763 2694 871 12073 8802 8733 6910 +14744 2904 6042 2822 1002 8943 12081 8861 7041 +14745 558 3634 1229 3403 6597 9673 7268 9442 +14746 1393 3080 361 5896 7432 9119 6400 11935 +14747 4794 1493 4536 2644 10833 7532 10575 8683 +14748 1484 3869 303 3780 7523 9908 6342 9819 +14749 2887 1357 2340 2888 8926 7396 8379 8927 +14750 3588 3665 3530 1377 9627 9704 9569 7416 +14751 3516 1329 3008 3616 9555 7368 9047 9655 +14752 1887 5385 1429 4373 7926 11424 7468 10412 +14753 5949 2018 4980 2329 11988 8057 11019 8368 +14754 1463 3529 578 4030 7502 9568 6617 10069 +14755 438 2577 2324 5138 6477 8616 8363 11177 +14756 3827 1131 3616 3008 9866 7170 9655 9047 +14757 4134 1952 5713 3910 10173 7991 11752 9949 +14758 599 3909 1419 4081 6638 9948 7458 10120 +14759 5242 1564 3209 2493 11281 7603 9248 8532 +14760 5242 2493 4204 800 11281 8532 10243 6839 +14761 1642 5098 2318 4958 7681 11137 8357 10997 +14762 5528 2991 1691 4970 11567 9030 7730 11009 +14763 5782 927 2425 2538 11821 6966 8464 8577 +14764 1823 4098 1489 4557 7862 10137 7528 10596 +14765 2222 5911 848 4684 8261 11950 6887 10723 +14766 5567 1177 3071 2512 11606 7216 9110 8551 +14767 4183 3136 3380 1218 10222 9175 9419 7257 +14768 3881 523 3102 3478 9920 6562 9141 9517 +14769 2315 449 5554 3980 8354 6488 11593 10019 +14770 4010 2783 3921 1224 10049 8822 9960 7263 +14771 3818 1343 2454 3043 9857 7382 8493 9082 +14772 3645 3777 3315 553 9684 9816 9354 6592 +14773 4810 1638 4478 2537 10849 7677 10517 8576 +14774 2968 1606 4056 4025 9007 7645 10095 10064 +14775 852 2751 1910 5693 6891 8790 7949 11732 +14776 1201 1919 939 4682 7240 7958 6978 10721 +14777 1839 5329 936 5458 7878 11368 6975 11497 +14778 1301 4188 1467 3212 7340 10227 7506 9251 +14779 4076 1352 3651 2912 10115 7391 9690 8951 +14780 4051 1085 2204 2797 10090 7124 8243 8836 +14781 5151 2623 1155 4138 11190 8662 7194 10177 +14782 3794 3469 3433 1310 9833 9508 9472 7349 +14783 1184 3943 1404 3299 7223 9982 7443 9338 +14784 3772 2199 827 5885 9811 8238 6866 11924 +14785 4303 1971 610 3528 10342 8010 6649 9567 +14786 246 3823 1192 3057 6285 9862 7231 9096 +14787 3636 1342 2753 3729 9675 7381 8792 9768 +14788 465 5408 1107 2499 6504 11447 7146 8538 +14789 3889 1253 3379 2935 9928 7292 9418 8974 +14790 5272 2220 5962 957 11311 8259 12001 6996 +14791 1106 3317 1255 3704 7145 9356 7294 9743 +14792 4188 3755 3749 336 10227 9794 9788 6375 +14793 4799 5567 503 2317 10838 11606 6542 8356 +14794 3616 323 3244 3516 9655 6362 9283 9555 +14795 673 3067 1548 4521 6712 9106 7587 10560 +14796 392 4760 857 2479 6431 10799 6896 8518 +14797 6170 1420 3687 2502 12209 7459 9726 8541 +14798 5192 2430 4107 908 11231 8469 10146 6947 +14799 3778 3149 3598 1121 9817 9188 9637 7160 +14800 4381 2880 2837 647 10420 8919 8876 6686 +14801 4313 381 5716 2803 10352 6420 11755 8842 +14802 2011 5532 2082 2515 8050 11571 8121 8554 +14803 3683 325 3068 3419 9722 6364 9107 9458 +14804 3666 1398 3791 3667 9705 7437 9830 9706 +14805 464 3413 1300 4613 6503 9452 7339 10652 +14806 5249 404 2298 4173 11288 6443 8337 10212 +14807 5804 5378 459 3122 11843 11417 6498 9161 +14808 3992 1277 3064 3248 10031 7316 9103 9287 +14809 571 3619 1162 3957 6610 9658 7201 9996 +14810 3767 3182 3601 241 9806 9221 9640 6280 +14811 3742 3306 3530 1307 9781 9345 9569 7346 +14812 5711 2950 6091 2189 11750 8989 12130 8228 +14813 5667 2530 5547 888 11706 8569 11586 6927 +14814 5665 2688 2689 1208 11704 8727 8728 7247 +14815 345 3331 1798 4755 6384 9370 7837 10794 +14816 5487 2439 844 2896 11526 8478 6883 8935 +14817 692 3825 1259 2888 6731 9864 7298 8927 +14818 5467 2674 4656 383 11506 8713 10695 6422 +14819 5751 2362 1019 3663 11790 8401 7058 9702 +14820 4984 2489 3538 1479 11023 8528 9577 7518 +14821 448 4394 2099 5051 6487 10433 8138 11090 +14822 3712 3667 3791 590 9751 9706 9830 6629 +14823 5810 2555 3966 1831 11849 8594 10005 7870 +14824 3949 387 5142 2897 9988 6426 11181 8936 +14825 1368 2955 605 4078 7407 8994 6644 10117 +14826 4354 2853 2852 745 10393 8892 8891 6784 +14827 6145 314 3474 2491 12184 6353 9513 8530 +14828 2955 5206 4993 605 8994 11245 11032 6644 +14829 4609 4123 2743 1079 10648 10162 8782 7118 +14830 4677 2625 4105 251 10716 8664 10144 6290 +14831 3998 4583 4153 1596 10037 10622 10192 7635 +14832 396 2967 969 2906 6435 9006 7008 8945 +14833 4884 1692 2109 2587 10923 7731 8148 8626 +14834 4072 1139 4720 2771 10111 7178 10759 8810 +14835 5009 2489 4984 909 11048 8528 11023 6948 +14836 1577 4937 778 3314 7616 10976 6817 9353 +14837 4697 1470 4659 2632 10736 7509 10698 8671 +14838 3044 1270 4107 2430 9083 7309 10146 8469 +14839 536 3785 1153 3198 6575 9824 7192 9237 +14840 3775 1295 3375 3217 9814 7334 9414 9256 +14841 3383 813 5179 2259 9422 6852 11218 8298 +14842 1348 3718 239 3439 7387 9757 6278 9478 +14843 5697 3697 2298 854 11736 9736 8337 6893 +14844 1912 5829 757 3321 7951 11868 6796 9360 +14845 5821 2523 2928 1323 11860 8562 8967 7362 +14846 2556 1967 5438 863 8595 8006 11477 6902 +14847 4200 2677 2813 1109 10239 8716 8852 7148 +14848 1211 3723 1183 3236 7250 9762 7222 9275 +14849 3604 1073 2865 4238 9643 7112 8904 10277 +14850 2096 5515 782 3689 8135 11554 6821 9728 +14851 761 5031 2031 5295 6800 11070 8070 11334 +14852 5333 868 2062 3846 11372 6907 8101 9885 +14853 730 2624 2030 4486 6769 8663 8069 10525 +14854 5137 2666 2437 895 11176 8705 8476 6934 +14855 513 6133 1816 2598 6552 12172 7855 8637 +14856 3712 590 3015 3410 9751 6629 9054 9449 +14857 833 5985 2202 5263 6872 12024 8241 11302 +14858 4471 3187 3280 1384 10510 9226 9319 7423 +14859 265 2578 1402 4983 6304 8617 7441 11022 +14860 1583 4784 6234 3736 7622 10823 12273 9775 +14861 520 3740 1284 3374 6559 9779 7323 9413 +14862 1013 4630 227 2805 7052 10669 6266 8844 +14863 5052 3946 2225 924 11091 9985 8264 6963 +14864 3819 1261 3414 3319 9858 7300 9453 9358 +14865 2145 3272 508 4537 8184 9311 6547 10576 +14866 5177 1523 3123 2616 11216 7562 9162 8655 +14867 3726 2989 2511 417 9765 9028 8550 6456 +14868 3531 1293 3361 3854 9570 7332 9400 9893 +14869 5347 1227 3554 3618 11386 7266 9593 9657 +14870 2157 3139 1062 5057 8196 9178 7101 11096 +14871 4204 1577 3314 5796 10243 7616 9353 11835 +14872 1035 5247 1941 6021 7074 11286 7980 12060 +14873 2028 4783 936 5329 8067 10822 6975 11368 +14874 5064 5229 259 3470 11103 11268 6298 9509 +14875 4988 1641 94 2088 11027 7680 190 8127 +14876 4181 2721 3214 1175 10220 8760 9253 7214 +14877 1376 5810 5976 4379 7415 11849 12015 10418 +14878 5547 2530 4629 1091 11586 8569 10668 7130 +14879 3972 1674 2418 4474 10011 7713 8457 10513 +14880 6190 4259 1037 3562 12229 10298 7076 9601 +14881 2908 897 2359 4198 8947 6936 8398 10237 +14882 5774 2324 816 5789 11813 8363 6855 11828 +14883 4170 1683 4252 4911 10209 7722 10291 10950 +14884 252 2795 1032 4094 6291 8834 7071 10133 +14885 4971 2173 5523 324 11010 8212 11562 6363 +14886 3544 2308 508 5450 9583 8347 6547 11489 +14887 455 3556 899 4090 6494 9595 6938 10129 +14888 1758 5479 3049 5840 7797 11518 9088 11879 +14889 6145 3802 1053 3310 12184 9841 7092 9349 +14890 870 5281 2542 2208 6909 11320 8581 8247 +14891 335 4203 1903 4703 6374 10242 7942 10742 +14892 6140 836 5338 3678 12179 6875 11377 9717 +14893 4296 807 4905 3342 10335 6846 10944 9381 +14894 1348 3721 1412 3718 7387 9760 7451 9757 +14895 2986 507 2142 5383 9025 6546 8181 11422 +14896 4081 1419 3944 3757 10120 7458 9983 9796 +14897 391 4892 818 2290 6430 10931 6857 8329 +14898 5245 574 2276 3693 11284 6613 8315 9732 +14899 4962 1904 3528 5973 11001 7943 9567 12012 +14900 1095 3643 498 3879 7134 9682 6537 9918 +14901 4394 2609 3145 1272 10433 8648 9184 7311 +14902 5348 1828 5464 2518 11387 7867 11503 8557 +14903 4004 1231 2156 3080 10043 7270 8195 9119 +14904 2566 432 4304 3884 8605 6471 10343 9923 +14905 6237 2640 5682 1998 12276 8679 11721 8037 +14906 498 2983 1193 3930 6537 9022 7232 9969 +14907 1175 3214 594 3888 7214 9253 6633 9927 +14908 1898 5677 4957 2815 7937 11716 10996 8854 +14909 5714 2544 5134 1907 11753 8583 11173 7946 +14910 2347 6194 3026 978 8386 12233 9065 7017 +14911 1848 4861 621 3095 7887 10900 6660 9134 +14912 1676 3260 218 3291 7715 9299 6257 9330 +14913 3691 321 2913 3558 9730 6360 8952 9597 +14914 3803 3306 3742 588 9842 9345 9781 6627 +14915 747 4407 3145 2609 6786 10446 9184 8648 +14916 753 4827 2134 5023 6792 10866 8173 11062 +14917 3779 3821 3237 1645 9818 9860 9276 7684 +14918 5535 3061 3654 545 11574 9100 9693 6584 +14919 2265 5333 1445 4438 8304 11372 7484 10477 +14920 1258 4047 822 2863 7297 10086 6861 8902 +14921 3974 2933 3072 278 10013 8972 9111 6317 +14922 1083 3122 459 4038 7122 9161 6498 10077 +14923 4830 698 3590 2730 10869 6737 9629 8769 +14924 3767 3598 3149 1341 9806 9637 9188 7380 +14925 3634 3778 3423 1395 9673 9817 9462 7434 +14926 452 2673 1141 4321 6491 8712 7180 10360 +14927 3926 3675 2512 1230 9965 9714 8551 7269 +14928 5748 922 4025 2508 11787 6961 10064 8547 +14929 5887 1124 2394 3065 11926 7163 8433 9104 +14930 3464 1944 5554 449 9503 7983 11593 6488 +14931 4053 4917 3815 1169 10092 10956 9854 7208 +14932 5021 2550 4272 399 11060 8589 10311 6438 +14933 3026 6194 3411 720 9065 12233 9450 6759 +14934 4930 1510 3644 2523 10969 7549 9683 8562 +14935 4186 3245 5191 1491 10225 9284 11230 7530 +14936 4716 2969 5752 2077 10755 9008 11791 8116 +14937 6047 3234 4229 343 12086 9273 10268 6382 +14938 5519 4036 882 2669 11558 10075 6921 8708 +14939 5488 2728 3493 1475 11527 8767 9532 7514 +14940 4416 1171 3565 3698 10455 7210 9604 9737 +14941 4214 2521 3542 1147 10253 8560 9581 7186 +14942 211 5930 1850 3505 6250 11969 7889 9544 +14943 1049 4744 1405 4196 7088 10783 7444 10235 +14944 5312 2526 3576 334 11351 8565 9615 6373 +14945 5959 1039 2852 3626 11998 7078 8891 9665 +14946 5877 3547 4667 1864 11916 9586 10706 7903 +14947 3832 3642 3286 1250 9871 9681 9325 7289 +14948 5436 2896 844 2455 11475 8935 6883 8494 +14949 754 4184 1622 3218 6793 10223 7661 9257 +14950 2670 5717 4917 478 8709 11756 10956 6517 +14951 5979 2702 2671 727 12018 8741 8710 6766 +14952 5536 1987 2621 4699 11575 8026 8660 10738 +14953 4114 2820 3644 1262 10153 8859 9683 7301 +14954 3696 2109 1692 527 9735 8148 7731 6566 +14955 359 4750 2153 5796 6398 10789 8192 11835 +14956 578 3798 1282 3414 6617 9837 7321 9453 +14957 3444 3777 3645 1390 9483 9816 9684 7429 +14958 1332 3020 273 4095 7371 9059 6312 10134 +14959 5471 5997 5391 1808 11510 12036 11430 7847 +14960 334 3925 1203 3069 6373 9964 7242 9108 +14961 3477 5636 4748 2083 9516 11675 10787 8122 +14962 1809 4422 786 4278 7848 10461 6825 10317 +14963 3833 1176 3384 3335 9872 7215 9423 9374 +14964 4851 2094 4061 1495 10890 8133 10100 7534 +14965 880 5515 2096 3194 6919 11554 8135 9233 +14966 5776 2540 2541 907 11815 8579 8580 6946 +14967 5376 2531 4784 1583 11415 8570 10823 7622 +14968 3917 3256 3942 1430 9956 9295 9981 7469 +14969 3526 646 3168 3377 9565 6685 9207 9416 +14970 5160 487 2702 2703 11199 6526 8741 8742 +14971 4153 4583 3540 676 10192 10622 9579 6715 +14972 5067 1409 3966 2555 11106 7448 10005 8594 +14973 5235 2073 4934 837 11274 8112 10973 6876 +14974 6077 1230 2512 3071 12116 7269 8551 9110 +14975 5338 1191 5853 2214 11377 7230 11892 8253 +14976 1411 5754 665 2642 7450 11793 6704 8681 +14977 2124 5287 686 4388 8163 11326 6725 10427 +14978 1098 4605 1612 4927 7137 10644 7651 10966 +14979 5548 1168 2745 4898 11587 7207 8784 10937 +14980 3052 2335 1370 618 9091 8374 7409 6657 +14981 3469 3794 3662 580 9508 9833 9701 6619 +14982 4192 1113 2985 4770 10231 7152 9024 10809 +14983 3911 3667 3712 3298 9950 9706 9751 9337 +14984 5756 3226 3543 1093 11795 9265 9582 7132 +14985 3245 4186 724 1492 9284 10225 6763 7531 +14986 5872 490 5976 2725 11911 6529 12015 8764 +14987 4826 619 3901 2553 10865 6658 9940 8592 +14988 996 3095 1782 2963 7035 9134 7821 9002 +14989 4088 1456 3698 3565 10127 7495 9737 9604 +14990 1587 3540 4738 4739 7626 9579 10777 10778 +14991 3916 2245 5088 1804 9955 8284 11127 7843 +14992 4281 1617 4274 4187 10320 7656 10313 10226 +14993 1861 2785 2153 4750 7900 8824 8192 10789 +14994 4467 2639 2892 357 10506 8678 8931 6396 +14995 3304 4267 3839 4152 9343 10306 9878 10191 +14996 2445 2963 223 6096 8484 9002 6262 12135 +14997 5366 2434 1484 3780 11405 8473 7523 9819 +14998 1631 3896 2471 5079 7670 9935 8510 11118 +14999 579 3810 1321 3461 6618 9849 7360 9500 +15000 5475 3084 1989 1207 11514 9123 8028 7246 +15001 1127 2678 704 4909 7166 8717 6743 10948 +15002 4043 3665 3588 1346 10082 9704 9627 7385 +15003 1880 4301 885 2722 7919 10340 6924 8761 +15004 5614 3303 639 2257 11653 9342 6678 8296 +15005 532 3796 1251 3507 6571 9835 7290 9546 +15006 3441 1187 3237 3821 9480 7226 9276 9860 +15007 573 5870 2526 3088 6612 11909 8565 9127 +15008 1791 3995 276 4587 7830 10034 6315 10626 +15009 2104 4490 2798 333 8143 10529 8837 6372 +15010 3486 2580 4226 1366 9525 8619 10265 7405 +15011 3480 1400 4187 4274 9519 7439 10226 10313 +15012 4172 1382 3557 731 10211 7421 9596 6770 +15013 1030 3528 1904 4402 7069 9567 7943 10441 +15014 5192 1786 236 2430 11231 7825 6275 8469 +15015 1016 5664 2376 4383 7055 11703 8415 10422 +15016 479 3299 1404 4243 6518 9338 7443 10282 +15017 4290 902 5580 3021 10329 6941 11619 9060 +15018 3544 5450 2708 1116 9583 11489 8747 7155 +15019 5596 3805 2287 828 11635 9844 8326 6867 +15020 5598 2646 3671 1327 11637 8685 9710 7366 +15021 373 2539 1155 5141 6412 8578 7194 11180 +15022 3848 1278 2884 3378 9887 7317 8923 9417 +15023 3881 3478 3341 1288 9920 9517 9380 7327 +15024 5270 471 3969 2540 11309 6510 10008 8579 +15025 3854 3361 3159 537 9893 9400 9198 6576 +15026 1468 4144 1153 3785 7507 10183 7192 9824 +15027 2134 4827 2004 2690 8173 10866 8043 8729 +15028 824 1739 4768 1529 6863 7778 10807 7568 +15029 4236 2768 3541 1367 10275 8807 9580 7406 +15030 2503 6214 504 3142 8542 12253 6543 9181 +15031 2747 4016 1512 709 8786 10055 7551 6748 +15032 1341 3852 1129 3767 7380 9891 7168 9806 +15033 2890 971 2921 4206 8929 7010 8960 10245 +15034 1811 4792 1025 3954 7850 10831 7064 9993 +15035 4191 3073 5748 1601 10230 9112 11787 7640 +15036 5310 1020 2695 2545 11349 7059 8734 8584 +15037 5353 3702 1992 362 11392 9741 8031 6401 +15038 911 1432 5056 2610 6950 7471 11095 8649 +15039 6031 2572 3330 1494 12070 8611 9369 7533 +15040 5389 1285 3751 2558 11428 7324 9790 8597 +15041 5134 2544 5807 1743 11173 8583 11846 7782 +15042 4602 1497 5756 2030 10641 7536 11795 8069 +15043 4414 376 2515 3599 10453 6415 8554 9638 +15044 5336 2575 3788 442 11375 8614 9827 6481 +15045 5726 2727 1512 1511 11765 8766 7551 7550 +15046 5458 4085 5370 1839 11497 10124 11409 7878 +15047 4784 2531 1033 3806 10823 8570 7072 9845 +15048 531 4209 1115 2801 6570 10248 7154 8840 +15049 4991 3117 1513 2374 11030 9156 7552 8413 +15050 945 3025 5996 5928 6984 9064 12035 11967 +15051 3978 1447 2942 3868 10017 7486 8981 9907 +15052 5068 2636 788 1793 11107 8675 6827 7832 +15053 4541 1195 3228 3229 10580 7234 9267 9268 +15054 1575 4229 1261 3819 7614 10268 7300 9858 +15055 1842 5073 904 4345 7881 11112 6943 10384 +15056 1060 1863 643 3475 7099 7902 6682 9514 +15057 5474 267 2390 4331 11513 6306 8429 10370 +15058 3254 1160 2553 3901 9293 7199 8592 9940 +15059 5375 375 3567 2637 11414 6414 9606 8676 +15060 5375 2637 4380 1637 11414 8676 10419 7676 +15061 943 6072 1673 4168 6982 12111 7712 10207 +15062 5701 2268 1984 3501 11740 8307 8023 9540 +15063 4546 436 3110 2622 10585 6475 9149 8661 +15064 3406 3858 3894 1244 9445 9897 9933 7283 +15065 4670 2830 5694 1477 10709 8869 11733 7516 +15066 595 3326 1301 3886 6634 9365 7340 9925 +15067 5274 4330 457 3559 11313 10369 6496 9598 +15068 3614 1362 3535 3857 9653 7401 9574 9896 +15069 565 3905 1160 3254 6604 9944 7199 9293 +15070 629 4698 1059 2586 6668 10737 7098 8625 +15071 2148 5403 205 4190 8187 11442 6244 10229 +15072 367 4046 1745 3928 6406 10085 7784 9967 +15073 3175 3166 3395 610 9214 9205 9434 6649 +15074 3540 1587 5913 5055 9579 7626 11952 11094 +15075 4920 5963 1488 2679 10959 12002 7527 8718 +15076 1508 4082 1939 5205 7547 10121 7978 11244 +15077 5067 2555 5194 282 11106 8594 11233 6321 +15078 4904 2651 4559 1544 10943 8690 10598 7583 +15079 5786 2597 2962 503 11825 8636 9001 6542 +15080 5194 2607 2945 282 11233 8646 8984 6321 +15081 6078 1837 4434 2559 12117 7876 10473 8598 +15082 5198 2053 838 2738 11237 8092 6877 8777 +15083 4884 2991 948 1692 10923 9030 6987 7731 +15084 796 5135 1792 4674 6835 11174 7831 10713 +15085 5888 2615 2744 296 11927 8654 8783 6335 +15086 728 4791 6195 3290 6767 10830 12234 9329 +15087 1287 4308 2233 6158 7326 10347 8272 12197 +15088 5870 573 2825 3216 11909 6612 8864 9255 +15089 5974 2628 2180 881 12013 8667 8219 6920 +15090 4283 3079 3445 1316 10322 9118 9484 7355 +15091 1773 5825 2522 4513 7812 11864 8561 10552 +15092 5261 1938 4836 406 11300 7977 10875 6445 +15093 5763 4647 1976 3541 11802 10686 8015 9580 +15094 4854 2561 3829 526 10893 8600 9868 6565 +15095 5049 1113 2871 2872 11088 7152 8910 8911 +15096 2946 5308 1854 1328 8985 11347 7893 7367 +15097 4052 1173 2656 4169 10091 7212 8695 10208 +15098 5747 1549 3614 2617 11786 7588 9653 8656 +15099 4687 2711 6176 18 10726 8750 12215 114 +15100 3366 3894 3854 537 9405 9933 9893 6576 +15101 293 3055 1685 5063 6332 9094 7724 11102 +15102 3298 565 3254 3911 9337 6604 9293 9950 +15103 2646 4690 3496 533 8685 10729 9535 6572 +15104 5315 640 4373 2567 11354 6679 10412 8606 +15105 5315 2567 4351 1581 11354 8606 10390 7620 +15106 5734 2716 252 4094 11773 8755 6291 10133 +15107 5581 1953 934 2579 11620 7992 6973 8618 +15108 6212 743 5578 2676 12251 6782 11617 8715 +15109 4920 2679 4933 1562 10959 8718 10972 7601 +15110 2418 1674 4839 4764 8457 7713 10878 10803 +15111 4671 2660 465 2244 10710 8699 6504 8283 +15112 4415 5435 318 2246 10454 11474 6357 8285 +15113 3624 903 2221 2671 9663 6942 8260 8710 +15114 5260 1568 5745 3476 11299 7607 11784 9515 +15115 3476 1108 5948 5260 9515 7147 11987 11299 +15116 1113 4192 211 2871 7152 10231 6250 8910 +15117 3991 5468 5195 543 10030 11507 11234 6582 +15118 20 3912 2348 21 116 9951 8387 117 +15119 1148 4216 326 2839 7187 10255 6365 8878 +15120 6090 633 4169 2656 12129 6672 10208 8695 +15121 388 2894 1030 4402 6427 8933 7069 10441 +15122 4712 374 5770 3221 10751 6413 11809 9260 +15123 3090 1080 3635 4008 9129 7119 9674 10047 +15124 4253 2812 2945 1156 10292 8851 8984 7195 +15125 1139 4072 1622 3859 7178 10111 7661 9898 +15126 2017 3596 782 5515 8056 9635 6821 11554 +15127 2595 3815 2200 763 8634 9854 8239 6802 +15128 213 4805 695 3455 6252 10844 6734 9494 +15129 1104 4821 1640 3707 7143 10860 7679 9746 +15130 5648 4285 1079 1555 11687 10324 7118 7594 +15131 4724 2634 2016 735 10763 8673 8055 6774 +15132 3146 4337 2668 994 9185 10376 8707 7033 +15133 313 3630 1355 3813 6352 9669 7394 9852 +15134 1278 3848 1053 3802 7317 9887 7092 9841 +15135 4971 324 5689 1140 11010 6363 11728 7179 +15136 5364 1414 4906 2316 11403 7453 10945 8355 +15137 6104 1900 3288 5244 12143 7939 9327 11283 +15138 767 2823 1357 5397 6806 8862 7396 11436 +15139 1731 3816 805 4709 7770 9855 6844 10748 +15140 642 4874 2034 3730 6681 10913 8073 9769 +15141 3888 3609 4732 1175 9927 9648 10771 7214 +15142 4011 4484 861 2391 10050 10523 6900 8430 +15143 4392 4639 3522 1597 10431 10678 9561 7636 +15144 5605 212 2779 2571 11644 6251 8818 8610 +15145 4504 291 2691 3843 10543 6330 8730 9882 +15146 3529 1346 3956 4121 9568 7385 9995 10160 +15147 4684 848 3265 5854 10723 6887 9304 11893 +15148 656 3508 1653 4718 6695 9547 7692 10757 +15149 3473 535 2409 4623 9512 6574 8448 10662 +15150 1616 5440 2943 5024 7655 11479 8982 11063 +15151 1537 4270 479 4243 7576 10309 6518 10282 +15152 4333 483 3644 2820 10372 6522 9683 8859 +15153 3791 1398 2997 3832 9830 7437 9036 9871 +15154 859 3412 6223 3411 6898 9451 12262 9450 +15155 3125 1306 3867 5065 9164 7345 9906 11104 +15156 2013 5951 1001 5846 8052 11990 7040 11885 +15157 6112 2575 5336 1034 12151 8614 11375 7073 +15158 4287 2814 3930 1490 10326 8853 9969 7529 +15159 669 4693 3030 5731 6708 10732 9069 11770 +15160 4305 2845 3463 1380 10344 8884 9502 7419 +15161 5402 4268 1304 2778 11441 10307 7343 8817 +15162 2879 4213 2699 990 8918 10252 8738 7029 +15163 6192 1611 5894 2905 12231 7650 11933 8944 +15164 3900 5925 1725 3183 9939 11964 7764 9222 +15165 5685 4494 2038 463 11724 10533 8077 6502 +15166 4752 2613 5765 1799 10791 8652 11804 7838 +15167 6070 4753 2484 2483 12109 10792 8523 8522 +15168 4215 1266 2837 2880 10254 7305 8876 8919 +15169 4726 2143 4089 1437 10765 8182 10128 7476 +15170 5630 2652 2359 897 11669 8691 8398 6936 +15171 3857 571 2617 3614 9896 6610 8656 9653 +15172 1034 5336 1618 2723 7073 11375 7657 8762 +15173 5582 823 5393 2612 11621 6862 11432 8651 +15174 4570 1363 3181 3908 10609 7402 9220 9947 +15175 433 2942 1447 4151 6472 8981 7486 10190 +15176 4163 2010 514 4694 10202 8049 6553 10733 +15177 3926 1230 6077 3397 9965 7269 12116 9436 +15178 227 3150 1836 4017 6266 9189 7875 10056 +15179 3492 3957 2955 1368 9531 9996 8994 7407 +15180 4814 2601 2437 494 10853 8640 8476 6533 +15181 4886 2743 4123 1055 10925 8782 10162 7094 +15182 2984 822 2351 5542 9023 6861 8390 11581 +15183 1908 5182 1059 4698 7947 11221 7098 10737 +15184 5885 827 2796 3708 11924 6866 8835 9747 +15185 3944 1179 3262 3363 9983 7218 9301 9402 +15186 1137 3567 2031 5031 7176 9606 8070 11070 +15187 1093 4486 2030 5756 7132 10525 8069 11795 +15188 1024 3111 1554 4655 7063 9150 7593 10694 +15189 4606 2862 4626 1827 10645 8901 10665 7866 +15190 3506 584 3651 3892 9545 6623 9690 9931 +15191 214 5772 2700 3587 6253 11811 8739 9626 +15192 5603 2328 4516 1624 11642 8367 10555 7663 +15193 1733 3656 326 4216 7772 9695 6365 10255 +15194 4987 1547 4582 3063 11026 7586 10621 9102 +15195 5459 3762 5190 1772 11498 9801 11229 7811 +15196 2108 4978 3393 2584 8147 11017 9432 8623 +15197 4660 862 2556 2922 10699 6901 8595 8961 +15198 2869 519 4887 4327 8908 6558 10926 10366 +15199 5395 2585 1691 819 11434 8624 7730 6858 +15200 3992 3248 2978 242 10031 9287 9017 6281 +15201 1454 3735 717 3967 7493 9774 6756 10006 +15202 4558 4894 3710 1012 10597 10933 9749 7051 +15203 5550 3808 4840 1990 11589 9847 10879 8029 +15204 6114 2187 5545 3900 12153 8226 11584 9939 +15205 1101 3849 1752 3632 7140 9888 7791 9671 +15206 5635 2606 4747 970 11674 8645 10786 7009 +15207 404 5458 936 2594 6443 11497 6975 8633 +15208 2016 4029 264 5442 8055 10068 6303 11481 +15209 5660 1137 5031 2774 11699 7176 11070 8813 +15210 5660 2774 4482 1738 11699 8813 10521 7777 +15211 1795 4142 370 5343 7834 10181 6409 11382 +15212 4322 2841 2170 886 10361 8880 8209 6925 +15213 4376 1441 3466 4681 10415 7480 9505 10720 +15214 1968 4872 1711 3690 8007 10911 7750 9729 +15215 1438 4093 1044 3070 7477 10132 7083 9109 +15216 4457 3179 3351 1043 10496 9218 9390 7082 +15217 4420 597 4642 2754 10459 6636 10681 8793 +15218 672 4847 1668 4453 6711 10886 7707 10492 +15219 4853 4501 5802 230 10892 10540 11841 6269 +15220 1481 3619 571 3857 7520 9658 6610 9896 +15221 3898 5680 5563 2125 9937 11719 11602 8164 +15222 4247 971 2890 2889 10286 7010 8929 8928 +15223 4807 467 2941 1057 10846 6506 8980 7096 +15224 4545 4671 2244 772 10584 10710 8283 6811 +15225 5173 2789 1783 951 11212 8828 7822 6990 +15226 4368 596 3217 3375 10407 6635 9256 9414 +15227 5499 968 4103 3024 11538 7007 10142 9063 +15228 4286 1416 3942 3256 10325 7455 9981 9295 +15229 3256 4248 4741 4286 9295 10287 10780 10325 +15230 5750 2627 2085 260 11789 8666 8124 6299 +15231 4354 997 2654 3754 10393 7036 8693 9793 +15232 4520 3360 5200 1163 10559 9399 11239 7202 +15233 5542 1369 4315 2984 11581 7408 10354 9023 +15234 882 4618 2033 2669 6921 10657 8072 8708 +15235 6153 2687 3097 1281 12192 8726 9136 7320 +15236 919 4601 2065 3074 6958 10640 8104 9113 +15237 1208 3016 1965 5665 7247 9055 8004 11704 +15238 4270 1076 3378 2884 10309 7115 9417 8923 +15239 2124 3109 1290 5287 8163 9148 7329 11326 +15240 6226 2131 2568 5091 12265 8170 8607 11130 +15241 4414 3893 4127 376 10453 9932 10166 6415 +15242 5691 718 2253 2623 11730 6757 8292 8662 +15243 4501 2752 6177 499 10540 8791 12216 6538 +15244 522 2605 1166 5003 6561 8644 7205 11042 +15245 1315 5212 1659 3680 7354 11251 7698 9719 +15246 2199 3772 230 4800 8238 9811 6269 10839 +15247 5720 1798 3331 4087 11759 7837 9370 10126 +15248 5982 2248 960 2910 12021 8287 6999 8949 +15249 6077 3071 2469 300 12116 9110 8508 6339 +15250 4037 2353 1607 208 10076 8392 7646 6247 +15251 1506 4502 1781 4595 7545 10541 7820 10634 +15252 5086 2570 787 1012 11125 8609 6826 7051 +15253 555 4510 1645 3237 6594 10549 7684 9276 +15254 3595 3480 3017 1222 9634 9519 9056 7261 +15255 5647 3005 3134 213 11686 9044 9173 6252 +15256 4677 5186 1485 2625 10716 11225 7524 8664 +15257 4546 2622 909 4984 10585 8661 6948 11023 +15258 4440 5015 825 1872 10479 11054 6864 7911 +15259 4408 942 4044 3075 10447 6981 10083 9114 +15260 4062 234 3703 3292 10101 6273 9742 9331 +15261 5464 2379 1624 4516 11503 8418 7663 10555 +15262 4516 740 2518 5464 10555 6779 8557 11503 +15263 5832 614 3960 5864 11871 6653 9999 11903 +15264 4247 2889 577 5350 10286 8928 6616 11389 +15265 1199 4030 578 3257 7238 10069 6617 9296 +15266 1533 3401 562 3230 7572 9440 6601 9269 +15267 4614 1450 2261 5685 10653 7489 8300 11724 +15268 4806 3053 2605 522 10845 9092 8644 6561 +15269 5702 604 2816 2631 11741 6643 8855 8670 +15270 4842 2137 4611 992 10881 8176 10650 7031 +15271 4979 1273 2364 2794 11018 7312 8403 8833 +15272 416 2347 978 5572 6455 8386 7017 11611 +15273 5059 456 4942 5112 11098 6495 10981 11151 +15274 4029 2016 2634 809 10068 8055 8673 6848 +15275 5264 2054 5553 2972 11303 8093 11592 9011 +15276 1214 4386 1494 3330 7253 10425 7533 9369 +15277 5735 2637 3567 1137 11774 8676 9606 7176 +15278 4605 4183 3979 1612 10644 10222 10018 7651 +15279 3832 1250 3381 3791 9871 7289 9420 9830 +15280 3523 825 5015 5416 9562 6864 11054 11455 +15281 653 5827 1959 3462 6692 11866 7998 9501 +15282 2521 4214 4117 798 8560 10253 10156 6837 +15283 4767 1531 3958 2655 10806 7570 9997 8694 +15284 2087 3653 1308 6038 8126 9692 7347 12077 +15285 4573 349 2992 4372 10612 6388 9031 10411 +15286 1800 5667 888 3368 7839 11706 6927 9407 +15287 5037 1202 3481 4755 11076 7241 9520 10794 +15288 1172 2886 793 5429 7211 8925 6832 11468 +15289 2767 843 2584 6125 8806 6882 8623 12164 +15290 6125 6135 1232 2767 12164 12174 7271 8806 +15291 1381 4071 219 3309 7420 10110 6258 9348 +15292 5209 2467 3835 255 11248 8506 9874 6294 +15293 4171 1174 3974 278 10210 7213 10013 6317 +15294 4576 3853 2859 1476 10615 9892 8898 7515 +15295 3957 3492 2617 571 9996 9531 8656 6610 +15296 6224 1208 2689 2718 12263 7247 8728 8757 +15297 85 84 2729 4825 181 180 8768 10864 +15298 1522 3638 1661 4230 7561 9677 7700 10269 +15299 4696 2968 4025 922 10735 9007 10064 6961 +15300 4779 3844 3260 1408 10818 9883 9299 7447 +15301 5799 3045 747 2609 11838 9084 6786 8648 +15302 3982 309 2822 3517 10021 6348 8861 9556 +15303 670 4064 1931 3627 6709 10103 7970 9666 +15304 1933 5121 1029 4479 7972 11160 7068 10518 +15305 6164 1318 3536 2878 12203 7357 9575 8917 +15306 5194 1376 4375 2607 11233 7415 10414 8646 +15307 1141 3611 1762 4321 7180 9650 7801 10360 +15308 5585 1156 2945 2607 11624 7195 8984 8646 +15309 2007 4233 1091 5248 8046 10272 7130 11287 +15310 6114 3900 3183 2384 12153 9939 9222 8423 +15311 3389 253 4911 4252 9428 6292 10950 10291 +15312 5362 541 1847 3513 11401 6580 7886 9552 +15313 6057 4390 846 2133 12096 10429 6885 8172 +15314 3450 1272 3145 354 9489 7311 9184 6393 +15315 1790 5463 2401 3586 7829 11502 8440 9625 +15316 1557 2989 305 3828 7596 9028 6344 9867 +15317 1101 3936 1773 3661 7140 9975 7812 9700 +15318 5334 2614 2214 507 11373 8653 8253 6546 +15319 5908 630 3073 4191 11947 6669 9112 10230 +15320 5033 1526 4830 2730 11072 7565 10869 8769 +15321 769 4998 1983 5499 6808 11037 8022 11538 +15322 5926 1557 4255 2535 11965 7596 10294 8574 +15323 5102 4943 2012 823 11141 10982 8051 6862 +15324 6045 2185 1378 4585 12084 8224 7417 10624 +15325 4062 3292 3878 1361 10101 9331 9917 7400 +15326 4941 2618 1847 541 10980 8657 7886 6580 +15327 4081 3252 2428 599 10120 9291 8467 6638 +15328 1438 4077 591 4093 7477 10116 6630 10132 +15329 5802 835 5793 2851 11841 6874 11832 8890 +15330 6231 5092 825 3523 12270 11131 6864 9562 +15331 5696 74 73 2650 11735 170 169 8689 +15332 5617 4250 1605 2971 11656 10289 7644 9010 +15333 11 10 3307 6186 107 106 9346 12225 +15334 3346 5874 435 2640 9385 11913 6474 8679 +15335 93 92 2783 4010 189 188 8822 10049 +15336 2127 4496 2040 5649 8166 10535 8079 11688 +15337 3138 5700 2261 505 9177 11739 8300 6544 +15338 6189 2842 3110 436 12228 8881 9149 6475 +15339 5494 1035 6220 2574 11533 7074 12259 8613 +15340 1396 4084 602 4008 7435 10123 6641 10047 +15341 4491 1877 403 5909 10530 7916 6442 11948 +15342 4079 270 4742 1863 10118 6309 10781 7902 +15343 4156 3978 3868 910 10195 10017 9907 6949 +15344 1854 5308 3589 6173 7893 11347 9628 12212 +15345 2886 1172 2551 4509 8925 7211 8590 10548 +15346 965 3387 1638 4810 7004 9426 7677 10849 +15347 1507 5066 925 2638 7546 11105 6964 8677 +15348 6098 2710 5918 697 12137 8749 11957 6736 +15349 4046 367 4309 5673 10085 6406 10348 11712 +15350 3939 1356 4097 506 9978 7395 10136 6545 +15351 5537 514 2010 2733 11576 6553 8049 8772 +15352 5903 1787 269 3213 11942 7826 6308 9252 +15353 3700 3948 3192 1403 9739 9987 9231 7442 +15354 4913 470 3903 3048 10952 6509 9942 9087 +15355 5598 864 4180 2646 11637 6903 10219 8685 +15356 728 5089 2089 4233 6767 11128 8128 10272 +15357 233 4043 1463 3757 6272 10082 7502 9796 +15358 4746 724 4186 1647 10785 6763 10225 7686 +15359 4165 3609 3888 1469 10204 9648 9927 7508 +15360 4165 343 4732 3609 10204 6382 10771 9648 +15361 2663 460 6060 5803 8702 6499 12099 11842 +15362 1981 4531 1454 4756 8020 10570 7493 10795 +15363 985 3395 2026 6119 7024 9434 8065 12158 +15364 2510 6050 1379 6131 8549 12089 7418 12170 +15365 6093 1766 5404 2908 12132 7805 11443 8947 +15366 1733 4921 546 3945 7772 10960 6585 9984 +15367 595 3956 1346 3588 6634 9995 7385 9627 +15368 3668 3917 3974 1174 9707 9956 10013 7213 +15369 6120 1167 4290 3021 12159 7206 10329 9060 +15370 1820 5217 2129 3743 7859 11256 8168 9782 +15371 5103 2649 3999 1571 11142 8688 10038 7610 +15372 4117 2980 6210 798 10156 9019 12249 6837 +15373 4136 3157 4339 1297 10175 9196 10378 7336 +15374 5245 2628 4582 574 11284 8667 10621 6613 +15375 3956 595 3886 3605 9995 6634 9925 9644 +15376 3605 1530 4121 3956 9644 7569 10160 9995 +15377 4959 2193 4622 1690 10998 8232 10661 7729 +15378 1448 2719 4339 4678 7487 8758 10378 10717 +15379 4790 95 94 1641 10829 191 190 7680 +15380 3486 1366 1956 6107 9525 7405 7995 12146 +15381 1735 4743 1171 4416 7774 10782 7210 10455 +15382 1383 4018 1546 4019 7422 10057 7585 10058 +15383 4384 1136 4846 2931 10423 7175 10885 8970 +15384 4599 303 3927 2741 10638 6342 9966 8780 +15385 430 5493 1374 2643 6469 11532 7413 8682 +15386 5388 384 4869 2633 11427 6423 10908 8672 +15387 4492 3090 4008 602 10531 9129 10047 6641 +15388 4492 1472 3599 3090 10531 7511 9638 9129 +15389 1835 3986 928 5357 7874 10025 6967 11396 +15390 4943 5102 420 2624 10982 11141 6459 8663 +15391 4148 1901 226 3629 10187 7940 6265 9668 +15392 3863 4369 4239 648 9902 10408 10278 6687 +15393 2066 5221 1063 4590 8105 11260 7102 10629 +15394 5509 2880 4381 1440 11548 8919 10420 7479 +15395 5129 3010 3131 600 11168 9049 9170 6639 +15396 5032 1570 4704 2649 11071 7609 10743 8688 +15397 5717 827 2199 2200 11756 6866 8238 8239 +15398 1775 4377 680 4421 7814 10416 6719 10460 +15399 5872 3014 4655 490 11911 9053 10694 6529 +15400 1733 3945 909 3657 7772 9984 6948 9696 +15401 1819 702 2135 5164 7858 6741 8174 11203 +15402 3491 1761 3094 3789 9530 7800 9133 9828 +15403 3386 1446 2656 1173 9425 7485 8695 7212 +15404 5379 311 5398 2882 11418 6350 11437 8921 +15405 4775 2706 3728 1563 10814 8745 9767 7602 +15406 5713 391 2290 3293 11752 6430 8329 9332 +15407 5227 4892 3501 1984 11266 10931 9540 8023 +15408 4228 1778 4600 4777 10267 7817 10639 10816 +15409 5618 930 4024 2661 11657 6969 10063 8700 +15410 5618 2661 4206 1665 11657 8700 10245 7704 +15411 5840 615 3638 3141 11879 6654 9677 9180 +15412 5563 3232 5001 752 11602 9271 11040 6791 +15413 1670 4828 2161 4855 7709 10867 8200 10894 +15414 35 5246 2284 36 131 11285 8323 132 +15415 4183 598 3922 3136 10222 6637 9961 9175 +15416 2722 4731 2697 386 8761 10770 8736 6425 +15417 2400 6034 871 4950 8439 12073 6910 10989 +15418 1464 4415 2124 4388 7503 10454 8163 10427 +15419 234 4062 1534 3533 6273 10101 7573 9572 +15420 4147 594 3255 3210 10186 6633 9294 9249 +15421 4503 3373 3367 2817 10542 9412 9406 8856 +15422 1126 3804 1785 3431 7165 9843 7824 9470 +15423 4790 1641 4601 2762 10829 7680 10640 8801 +15424 6224 2718 1573 4266 12263 8757 7612 10305 +15425 1467 3422 1487 4075 7506 9461 7526 10114 +15426 4694 2775 3127 1399 10733 8814 9166 7438 +15427 4086 1638 3387 4452 10125 7677 9426 10491 +15428 3700 607 3531 3948 9739 6646 9570 9987 +15429 4485 1943 6167 2985 10524 7982 12206 9024 +15430 6153 4737 4300 2687 12192 10776 10339 8726 +15431 4497 1923 759 4797 10536 7962 6798 10836 +15432 1037 4259 1303 3048 7076 10298 7342 9087 +15433 1545 3959 1521 3960 7584 9998 7560 9999 +15434 5263 2202 6016 3076 11302 8241 12055 9115 +15435 2334 4955 641 5477 8373 10994 6680 11516 +15436 1549 4088 250 4003 7588 10127 6289 10042 +15437 5540 2802 575 3751 11579 8841 6614 9790 +15438 5892 2655 4274 1617 11931 8694 10313 7656 +15439 1976 5915 1367 3541 8015 11954 7406 9580 +15440 5703 2821 4596 917 11742 8860 10635 6956 +15441 2042 5624 705 5114 8081 11663 6744 11153 +15442 5472 2660 5337 981 11511 8699 11376 7020 +15443 4320 3354 534 6088 10359 9393 6573 12127 +15444 325 3146 2357 5243 6364 9185 8396 11282 +15445 4798 973 2486 3445 10837 7012 8525 9484 +15446 4265 3057 2998 1120 10304 9096 9037 7159 +15447 5122 3760 5561 1284 11161 9799 11600 7323 +15448 5387 2658 3421 878 11426 8697 9460 6917 +15449 4660 2922 3304 4152 10699 8961 9343 10191 +15450 5721 2149 5745 750 11760 8188 11784 6789 +15451 2679 433 3946 4933 8718 6472 9985 10972 +15452 4196 3169 3913 1049 10235 9208 9952 7088 +15453 3644 1510 2805 4311 9683 7549 8844 10350 +15454 1530 3605 1115 4382 7569 9644 7154 10421 +15455 586 4109 1519 4850 6625 10148 7558 10889 +15456 1469 3888 594 4147 7508 9927 6633 10186 +15457 4275 3398 2911 1096 10314 9437 8950 7135 +15458 4967 72 71 2959 11006 168 167 8998 +15459 5029 1665 4206 2921 11068 7704 10245 8960 +15460 5029 2921 80 79 11068 8960 176 175 +15461 4474 957 5962 2592 10513 6996 12001 8631 +15462 6177 3475 2250 4875 12216 9514 8289 10914 +15463 5101 4060 3890 1365 11140 10099 9929 7404 +15464 5137 2663 5803 1223 11176 8702 11842 7262 +15465 2788 622 4261 5267 8827 6661 10300 11306 +15466 5333 2265 6187 868 11372 8304 12226 6907 +15467 5285 1625 4897 2666 11324 7664 10936 8705 +15468 5135 1304 5228 3602 11174 7343 11267 9641 +15469 4889 1421 5628 2943 10928 7460 11667 8982 +15470 1749 4392 679 4323 7788 10431 6718 10362 +15471 5239 246 3057 4265 11278 6285 9096 10304 +15472 5971 2663 5137 895 12010 8702 11176 6934 +15473 4009 4701 2786 820 10048 10740 8825 6859 +15474 4621 3845 4107 587 10660 9884 10146 6626 +15475 4858 4225 1724 891 10897 10264 7763 6930 +15476 485 3942 1416 3774 6524 9981 7455 9813 +15477 4769 3327 2342 1107 10808 9366 8381 7146 +15478 5317 3355 838 2053 11356 9394 6877 8092 +15479 1744 4131 5669 5218 7783 10170 11708 11257 +15480 4621 587 2807 5346 10660 6626 8846 11385 +15481 2924 4414 3599 1472 8963 10453 9638 7511 +15482 1435 3889 261 4126 7474 9928 6300 10165 +15483 4096 1397 3982 3517 10135 7436 10021 9556 +15484 456 3455 2693 4942 6495 9494 8732 10981 +15485 648 4133 1517 3863 6687 10172 7556 9902 +15486 4615 2793 2891 935 10654 8832 8930 6974 +15487 2669 644 4375 5519 8708 6683 10414 11558 +15488 5117 1001 5951 2724 11156 7040 11990 8763 +15489 6218 923 2370 2732 12257 6962 8409 8771 +15490 3042 231 4166 4310 9081 6270 10205 10349 +15491 4423 3358 5992 2219 10462 9397 12031 8258 +15492 3758 901 5729 3773 9797 6940 11768 9812 +15493 1750 3740 520 4675 7789 9779 6559 10714 +15494 5384 2165 5880 440 11423 8204 11919 6479 +15495 4144 3341 3478 1153 10183 9380 9517 7192 +15496 5280 2667 5866 915 11319 8706 11905 6954 +15497 5951 720 2229 2724 11990 6759 8268 8763 +15498 1456 4118 712 3698 7495 10157 6751 9737 +15499 5979 1090 2703 2702 12018 7129 8742 8741 +15500 5033 2730 3590 1484 11072 8769 9629 7523 +15501 4615 3040 4557 1489 10654 9079 10596 7528 +15502 4615 935 5210 3040 10654 6974 11249 9079 +15503 5772 1913 5439 2700 11811 7952 11478 8739 +15504 1369 3579 955 4269 7408 9618 6994 10308 +15505 4367 1151 4137 2988 10406 7190 10176 9027 +15506 4694 514 4314 2775 10733 6553 10353 8814 +15507 723 5490 3130 4019 6762 11529 9169 10058 +15508 5626 1331 3907 3011 11665 7370 9946 9050 +15509 1460 3905 565 4275 7499 9944 6604 10314 +15510 1843 3862 1111 5588 7882 9901 7150 11627 +15511 472 4746 1647 1406 6511 10785 7686 7445 +15512 4999 1658 2854 2339 11038 7697 8893 8378 +15513 2266 2701 78 77 8305 8740 174 173 +15514 4685 2785 5835 706 10724 8824 11874 6745 +15515 832 4619 2395 5619 6871 10658 8434 11658 +15516 1948 5267 4261 6035 7987 11306 10300 12074 +15517 3517 1150 3497 4096 9556 7189 9536 10135 +15518 1048 5813 2354 3842 7087 11852 8393 9881 +15519 4503 2817 310 5437 10542 8856 6349 11476 +15520 1056 5491 215 2591 7095 11530 6254 8630 +15521 5267 1948 399 4272 11306 7987 6438 10311 +15522 6095 1851 5918 2710 12134 7890 11957 8749 +15523 37 36 2284 4695 133 132 8323 10734 +15524 3566 3720 872 2305 9605 9759 6911 8344 +15525 5273 2692 3224 883 11312 8731 9263 6922 +15526 6174 3166 3175 1768 12213 9205 9214 7807 +15527 1360 2692 468 5629 7399 8731 6507 11668 +15528 4088 3565 2926 250 10127 9604 8965 6289 +15529 5776 2818 4217 1736 11815 8857 10256 7775 +15530 5057 2700 5439 804 11096 8739 11478 6843 +15531 634 4305 1380 3606 6673 10344 7419 9645 +15532 5618 2701 2266 930 11657 8740 8305 6969 +15533 5618 1665 5029 2701 11657 7704 11068 8740 +15534 4229 3234 3257 1261 10268 9273 9296 7300 +15535 3480 4274 2655 608 9519 10313 8694 6647 +15536 3772 5885 3708 1178 9811 11924 9747 7217 +15537 5007 385 1943 4485 11046 6424 7982 10524 +15538 5755 515 5305 2793 11794 6554 11344 8832 +15539 5511 396 2906 2886 11550 6435 8945 8925 +15540 3978 4156 4372 1431 10017 10195 10411 7470 +15541 4808 577 4240 3051 10847 6616 10279 9090 +15542 4099 1609 4454 4521 10138 7648 10493 10560 +15543 1217 3718 1412 4067 7256 9757 7451 10106 +15544 275 4026 1567 4140 6314 10065 7606 10179 +15545 3145 4407 5307 1662 9184 10446 11346 7701 +15546 5814 3963 6107 4488 11853 10002 12146 10527 +15547 4080 2674 5467 1279 10119 8713 11506 7318 +15548 2269 4425 1019 5779 8308 10464 7058 11818 +15549 5175 1017 2545 2695 11214 7056 8584 8734 +15550 4043 233 3530 3665 10082 6272 9569 9704 +15551 5590 1749 5307 2686 11629 7788 11346 8725 +15552 5734 882 4036 2716 11773 6921 10075 8755 +15553 5579 742 4319 3633 11618 6781 10358 9672 +15554 5830 2072 5303 497 11869 8111 11342 6536 +15555 5496 2696 4024 1626 11535 8735 10063 7665 +15556 4020 841 1865 3795 10059 6880 7904 9834 +15557 627 5940 1836 4160 6666 11979 7875 10199 +15558 5202 2696 5496 956 11241 8735 11535 6995 +15559 811 3724 1770 4022 6850 9763 7809 10061 +15560 873 4125 1760 5038 6912 10164 7799 11077 +15561 1584 4318 831 4589 7623 10357 6870 10628 +15562 3698 712 3208 4416 9737 6751 9247 10455 +15563 4483 531 2801 3212 10522 6570 8840 9251 +15564 2585 5395 1556 4950 8624 11434 7595 10989 +15565 4856 838 1881 3408 10895 6877 7920 9447 +15566 4877 2929 3955 1298 10916 8968 9994 7337 +15567 5556 904 2697 2698 11595 6943 8736 8737 +15568 1533 3834 1527 3401 7572 9873 7566 9440 +15569 5527 2771 4720 1434 11566 8810 10759 7473 +15570 5539 771 5289 1706 11578 6810 11328 7745 +15571 5013 2184 2987 5586 11052 8223 9026 11625 +15572 5764 4885 3060 309 11803 10924 9099 6348 +15573 3529 4121 3798 578 9568 10160 9837 6617 +15574 5390 2699 3943 232 11429 8738 9982 6271 +15575 5719 1004 2682 2683 11758 7043 8721 8722 +15576 4453 2960 4229 1575 10492 8999 10268 7614 +15577 372 6200 2984 4315 6411 12239 9023 10354 +15578 3770 1242 2326 3325 9809 7281 8365 9364 +15579 5873 4797 3372 2937 11912 10836 9411 8976 +15580 4368 3375 3438 1268 10407 9414 9477 7307 +15581 5049 2872 5501 675 11088 8911 11540 6714 +15582 4637 2052 1239 3572 10676 8091 7278 9611 +15583 74 5696 5708 75 170 11735 11747 171 +15584 5708 5696 930 2266 11747 11735 6969 8305 +15585 1720 4510 555 3723 7759 10549 6594 9762 +15586 6043 2009 1040 2754 12082 8048 7079 8793 +15587 5633 423 5852 2829 11672 6462 11891 8868 +15588 5945 3285 2242 1103 11984 9324 8281 7142 +15589 4016 2319 4050 1110 10055 8358 10089 7149 +15590 5242 2711 4687 1564 11281 8750 10726 7603 +15591 1684 4224 1547 4316 7723 10263 7586 10355 +15592 5365 2415 4568 2018 11404 8454 10607 8057 +15593 4716 1855 4471 2969 10755 7894 10510 9008 +15594 4097 3674 6215 1833 10136 9713 12254 7872 +15595 5237 2151 5396 887 11276 8190 11435 6926 +15596 4005 1494 4386 4040 10044 7533 10425 10079 +15597 5679 405 994 2668 11718 6444 7033 8707 +15598 5350 577 4808 2732 11389 6616 10847 8771 +15599 3911 4141 3666 3667 9950 10180 9705 9706 +15600 3497 2368 1161 5927 9536 8407 7200 11966 +15601 5565 2717 4199 1065 11604 8756 10238 7104 +15602 2664 5438 1966 6025 8703 11477 8005 12064 +15603 1857 4549 1618 5672 7896 10588 7657 11711 +15604 5117 2724 2229 1442 11156 8763 8268 7481 +15605 6139 2547 3251 1433 12178 8586 9290 7472 +15606 4710 993 5614 2728 10749 7032 11653 8767 +15607 5308 2946 5070 1021 11347 8985 11109 7060 +15608 6027 632 4287 1490 12066 6671 10326 7529 +15609 2147 5178 1776 2807 8186 11217 7815 8846 +15610 5008 630 2072 2892 11047 6669 8111 8931 +15611 4725 3293 4693 669 10764 9332 10732 6708 +15612 3978 1431 3793 1447 10017 7470 9832 7486 +15613 2916 521 2698 4550 8955 6560 8737 10589 +15614 1393 5766 2257 6147 7432 11805 8296 12186 +15615 3930 1193 3603 4344 9969 7232 9642 10383 +15616 1600 4041 1498 4235 7639 10080 7537 10274 +15617 5437 310 4199 2717 11476 6349 10238 8756 +15618 5798 3842 5495 775 11837 9881 11534 6814 +15619 4606 1090 5979 2333 10645 7129 12018 8372 +15620 5749 395 4238 2865 11788 6434 10277 8904 +15621 719 5041 991 2726 6758 11080 7030 8765 +15622 1699 5950 886 4711 7738 11989 6925 10750 +15623 1969 6150 758 4073 8008 12189 6797 10112 +15624 3769 3670 5365 989 9808 9709 11404 7028 +15625 1542 4523 2028 4934 7581 10562 8067 10973 +15626 1628 5099 2156 5282 7667 11138 8195 11321 +15627 235 3779 1646 4040 6274 9818 7685 10079 +15628 5277 2969 4471 1384 11316 9008 10510 7423 +15629 4515 3727 2475 1102 10554 9766 8514 7141 +15630 5808 1919 1201 4458 11847 7958 7240 10497 +15631 1734 5912 999 2750 7773 11951 7038 8789 +15632 1542 3470 259 4523 7581 9509 6298 10562 +15633 232 3370 1422 4326 6271 9409 7461 10365 +15634 4580 2247 3594 1726 10619 8286 9633 7765 +15635 4965 1003 2620 2749 11004 7042 8659 8788 +15636 4935 1575 3819 3115 10974 7614 9858 9154 +15637 5419 64 63 4027 11458 160 159 10066 +15638 3626 1672 6026 2076 9665 7711 12065 8115 +15639 2036 5841 2037 4649 8075 11880 8076 10688 +15640 1922 2952 411 4524 7961 8991 6450 10563 +15641 575 2802 1526 5033 6614 8841 7565 11072 +15642 1831 5297 1977 2725 7870 11336 8016 8764 +15643 2729 5174 2450 1536 8768 11213 8489 7575 +15644 5174 2729 5591 923 11213 8768 11630 6962 +15645 522 5003 1409 2864 6561 11042 7448 8903 +15646 298 1672 3626 2852 6337 7711 9665 8891 +15647 14 6078 2559 15 110 12117 8598 111 +15648 799 5541 2029 4100 6838 11580 8068 10139 +15649 318 6185 2256 4589 6357 12224 8295 10628 +15650 4017 1262 3644 4311 10056 7301 9683 10350 +15651 474 3155 1263 4559 6513 9194 7302 10598 +15652 3161 5953 2829 915 9200 11992 8868 6954 +15653 6184 3481 3492 1368 12223 9520 9531 7407 +15654 4227 1128 2737 3442 10266 7167 8776 9481 +15655 4725 1375 5713 3293 10764 7414 11752 9332 +15656 2235 5433 1853 4514 8274 11472 7892 10553 +15657 6027 1350 3023 2768 12066 7389 9062 8807 +15658 6224 5612 3016 1208 12263 11651 9055 7247 +15659 6030 1045 3835 2467 12069 7084 9874 8506 +15660 5164 497 4765 1819 11203 6536 10804 7858 +15661 1596 4153 1424 4132 7635 10192 7463 10171 +15662 4251 4681 3466 1452 10290 10720 9505 7491 +15663 4795 2001 945 5928 10834 8040 6984 11967 +15664 6043 3633 4319 2009 12082 9672 10358 8048 +15665 2421 810 2776 3502 8460 6849 8815 9541 +15666 1827 5028 488 4473 7866 11067 6527 10512 +15667 5488 3030 3452 770 11527 9069 9491 6809 +15668 1440 4381 1362 4003 7479 10420 7401 10042 +15669 1379 3246 4841 4343 7418 9285 10880 10382 +15670 3432 4292 3353 1069 9471 10331 9392 7108 +15671 5839 2756 4512 613 11878 8795 10551 6652 +15672 5839 1715 4944 2756 11878 7754 10983 8795 +15673 4724 2112 1041 3822 10763 8151 7080 9861 +15674 4850 3118 3585 1534 10889 9157 9624 7573 +15675 5802 2851 5083 230 11841 8890 11122 6269 +15676 6214 1054 2945 2812 12253 7093 8984 8851 +15677 5477 641 4213 2879 11516 6680 10252 8918 +15678 5477 2879 4663 1666 11516 8918 10702 7705 +15679 6208 2917 4200 1852 12247 8956 10239 7891 +15680 6208 959 5132 2917 12247 6998 11171 8956 +15681 83 5591 2729 84 179 11630 8768 180 +15682 5964 3851 4378 1503 12003 9890 10417 7542 +15683 4177 5311 3845 1535 10216 11350 9884 7574 +15684 681 3756 1531 4767 6720 9795 7570 10806 +15685 5527 1434 3765 2838 11566 7473 9804 8877 +15686 4001 3914 4433 1427 10040 9953 10472 7466 +15687 2780 1112 3076 6016 8819 7151 9115 12055 +15688 2270 3935 889 5340 8309 9974 6928 11379 +15689 5864 2763 6034 1891 11903 8802 12073 7930 +15690 5379 3157 4136 311 11418 9196 10175 6350 +15691 1829 4368 1268 4806 7868 10407 7307 10845 +15692 4806 1268 2734 3053 10845 7307 8773 9092 +15693 5817 1636 2516 3885 11856 7675 8555 9924 +15694 3566 1337 5193 3720 9605 7376 11232 9759 +15695 3773 5729 1720 5341 9812 11768 7759 11380 +15696 5993 2782 2781 1114 12032 8821 8820 7153 +15697 5031 761 6115 2774 11070 6800 12154 8813 +15698 4363 3570 5163 542 10402 9609 11202 6581 +15699 5398 2044 5681 2742 11437 8083 11720 8781 +15700 2154 5766 1393 5896 8193 11805 7432 11935 +15701 3911 1487 3422 4141 9950 7526 9461 10180 +15702 4320 1069 3353 3354 10359 7108 9392 9393 +15703 5565 1928 772 4212 11604 7967 6811 10251 +15704 1441 5838 339 4292 7480 11877 6378 10331 +15705 5084 854 2594 1274 11123 6893 8633 7313 +15706 3502 2776 2777 1333 9541 8815 8816 7372 +15707 1961 3318 3621 6193 8000 9357 9660 12232 +15708 2516 3695 1124 5887 8555 9734 7163 11926 +15709 5160 2703 5434 1741 11199 8742 11473 7780 +15710 2306 5789 816 6235 8345 11828 6855 12274 +15711 5777 1905 5761 4279 11816 7944 11800 10318 +15712 2258 4447 601 3817 8297 10486 6640 9856 +15713 1171 4743 486 2899 7210 10782 6525 8938 +15714 4744 1049 2926 2899 10783 7088 8965 8938 +15715 5600 2923 3899 692 11639 8962 9938 6731 +15716 57 3 56 5444 153 7 152 11483 +15717 4823 2116 306 3201 10862 8155 6345 9240 +15718 1693 3621 1000 4972 7732 9660 7039 11011 +15719 5311 908 4107 3845 11350 6947 10146 9884 +15720 6106 1383 4019 3130 12145 7422 10058 9169 +15721 1270 3044 1501 4032 7309 9083 7540 10071 +15722 4292 3432 3466 1441 10331 9471 9505 7480 +15723 926 3052 4458 5650 6965 9091 10497 11689 +15724 5468 1349 2293 3568 11507 7388 8332 9607 +15725 1224 5296 1723 3365 7263 11335 7762 9404 +15726 4764 1890 4843 2418 10803 7929 10882 8457 +15727 1444 4413 725 4862 7483 10452 6764 10901 +15728 4766 3177 4056 1606 10805 9216 10095 7645 +15729 5289 2356 460 3947 11328 8395 6499 9986 +15730 1704 4953 1981 4596 7743 10992 8020 10635 +15731 5584 1446 3386 521 11623 7485 9425 6560 +15732 3473 5200 3360 535 9512 11239 9399 6574 +15733 4982 1389 4518 3752 11021 7428 10557 9791 +15734 5694 3044 2430 236 11733 9083 8469 6275 +15735 4618 3019 3354 1407 10657 9058 9393 7446 +15736 4224 1684 4776 3679 10263 7723 10815 9718 +15737 4224 3679 2276 574 10263 9718 8315 6613 +15738 4041 1600 5124 5827 10080 7639 11163 11866 +15739 1883 3738 773 5553 7922 9777 6812 11592 +15740 4904 1544 4517 2235 10943 7583 10556 8274 +15741 947 4604 2458 3049 6986 10643 8497 9088 +15742 45 5269 1960 46 141 11308 7999 142 +15743 2228 5181 1614 4809 8267 11220 7653 10848 +15744 4995 961 4014 2919 11034 7000 10053 8958 +15745 5981 2274 3937 668 12020 8313 9976 6707 +15746 4833 438 5054 2338 10872 6477 11093 8377 +15747 5573 6206 34 33 11612 12245 130 129 +15748 586 3807 1388 4109 6625 9846 7427 10148 +15749 3528 1030 2745 4303 9567 7069 8784 10342 +15750 931 5452 1909 3934 6970 11491 7948 9973 +15751 413 5727 2140 4193 6452 11766 8179 10232 +15752 3117 4777 4600 1513 9156 10816 10639 7552 +15753 2745 1030 2894 4898 8784 7069 8933 10937 +15754 5318 2885 5096 1553 11357 8924 11135 7592 +15755 77 76 5708 2266 173 172 11747 8305 +15756 5183 1711 4862 2809 11222 7750 10901 8848 +15757 5480 3429 5585 644 11519 9468 11624 6683 +15758 5860 256 1726 3594 11899 6295 7765 9633 +15759 2691 4472 739 3838 8730 10511 6778 9877 +15760 5419 4027 4462 1924 11458 10066 10501 7963 +15761 4818 1358 3691 3558 10857 7397 9730 9597 +15762 6021 2525 6220 1035 12060 8564 12259 7074 +15763 5119 790 1984 2268 11158 6829 8023 8307 +15764 5657 4002 2564 556 11696 10041 8603 6595 +15765 1554 4627 490 4655 7593 10666 6529 10694 +15766 5154 1552 4257 1874 11193 7591 10296 7913 +15767 4987 397 4217 2818 11026 6436 10256 8857 +15768 1524 4102 1917 4260 7563 10141 7956 10299 +15769 5527 368 4072 2771 11566 6407 10111 8810 +15770 6122 844 2439 5879 12161 6883 8478 11918 +15771 5440 1616 5402 2778 11479 7655 11441 8817 +15772 4931 2833 3246 418 10970 8872 9285 6457 +15773 515 3582 2086 5305 6554 9621 8125 11344 +15774 5719 2338 5661 1004 11758 8377 11700 7043 +15775 4971 1140 4429 1290 11010 7179 10468 7329 +15776 3088 982 2517 4511 9127 7021 8556 10550 +15777 4430 3734 46 1960 10469 9773 142 7999 +15778 6159 2836 5125 1734 12198 8875 11164 7773 +15779 4898 2894 6021 1941 10937 8933 12060 7980 +15780 657 3219 1117 4434 6696 9258 7156 10473 +15781 5711 2782 2490 2780 11750 8821 8529 8819 +15782 5048 2063 729 4409 11087 8102 6768 10448 +15783 3344 5938 3022 377 9383 11977 9061 6416 +15784 4996 316 3215 3000 11035 6355 9254 9039 +15785 4920 1562 4734 3920 10959 7601 10773 9959 +15786 647 2837 972 4948 6686 8876 7011 10987 +15787 434 4571 2063 5048 6473 10610 8102 11087 +15788 5725 5835 4674 1792 11764 11874 10713 7831 +15789 249 3225 1427 4433 6288 9264 7466 10472 +15790 27 5481 28 2 123 11520 124 6 +15791 251 4105 1813 4868 6290 10144 7852 10907 +15792 3990 379 4654 4324 10029 6418 10693 10363 +15793 6196 1971 280 3771 12235 8010 6319 9810 +15794 1472 4492 1755 4359 7511 10531 7794 10398 +15795 5895 2408 864 5598 11934 8447 6903 11637 +15796 5093 3007 4073 758 11132 9046 10112 6797 +15797 1306 3125 1029 5121 7345 9164 7068 11160 +15798 2792 936 4783 5792 8831 6975 10822 11831 +15799 1594 4457 1840 4575 7633 10496 7879 10614 +15800 5126 617 4880 3081 11165 6656 10919 9120 +15801 957 3532 1578 5272 6996 9571 7617 11311 +15802 5890 2804 3992 242 11929 8843 10031 6281 +15803 5200 2311 5286 1163 11239 8350 11325 7202 +15804 5958 2211 4143 505 11997 8250 10182 6544 +15805 4257 3323 3065 664 10296 9362 9104 6703 +15806 1467 4075 619 4001 7506 10114 6658 10040 +15807 1545 5301 295 2784 7584 11340 6334 8823 +15808 4796 2840 2811 302 10835 8879 8850 6341 +15809 1550 4118 1456 4276 7589 10157 7495 10315 +15810 6042 1150 3517 2822 12081 7189 9556 8861 +15811 6044 916 5992 3358 12083 6955 12031 9397 +15812 4128 1615 4264 4445 10167 7654 10303 10484 +15813 6084 1461 2889 2890 12123 7500 8928 8929 +15814 5970 1372 3879 2814 12009 7411 9918 8853 +15815 1636 4231 1434 4232 7675 10270 7473 10271 +15816 4586 1407 3354 3353 10625 7446 9393 9392 +15817 5315 1581 3719 2790 11354 7620 9758 8829 +15818 5315 2790 4552 640 11354 8829 10591 6679 +15819 4104 4059 4305 634 10143 10098 10344 6673 +15820 5763 3181 4871 1788 11802 9220 10910 7827 +15821 5763 502 3908 3181 11802 6541 9947 9220 +15822 975 3462 1959 4340 7014 9501 7998 10379 +15823 4069 4116 2190 830 10108 10155 8229 6869 +15824 5148 5051 2099 1650 11187 11090 8138 7689 +15825 4276 1456 4088 3997 10315 7495 10127 10036 +15826 1451 3615 6222 4636 7490 9654 12261 10675 +15827 5305 2560 2891 2793 11344 8599 8930 8832 +15828 617 3628 1370 4246 6656 9667 7409 10285 +15829 2587 291 2000 4653 8626 6330 8039 10692 +15830 4314 1737 964 2775 10353 7776 7003 8814 +15831 455 4090 1178 3708 6494 10129 7217 9747 +15832 4509 2551 5171 1629 10548 8590 11210 7668 +15833 4302 557 3861 5658 10341 6596 9900 11697 +15834 586 4219 1361 3673 6625 10258 7400 9712 +15835 4403 1056 5378 5804 10442 7095 11417 11843 +15836 4732 2960 4453 1668 10771 8999 10492 7707 +15837 1441 4376 1704 5838 7480 10415 7743 11877 +15838 4035 4059 4104 1516 10074 10098 10143 7555 +15839 2043 3781 852 5693 8082 9820 6891 11732 +15840 4522 3837 5552 1694 10561 9876 11591 7733 +15841 6163 3028 5848 1841 12202 9067 11887 7880 +15842 5833 2939 492 2940 11872 8978 6531 8979 +15843 5833 2940 2576 974 11872 8979 8615 7013 +15844 6026 802 5058 2076 12065 6841 11097 8115 +15845 4188 1301 3326 3755 10227 7340 9365 9794 +15846 5749 2865 1541 3596 11788 8904 7580 9635 +15847 1612 3979 348 4432 7651 10018 6387 10471 +15848 1562 3699 777 4734 7601 9738 6816 10773 +15849 1755 4492 602 4380 7794 10531 6641 10419 +15850 4518 1834 5331 3752 10557 7873 11370 9791 +15851 4655 3014 3653 1024 10694 9053 9692 7063 +15852 6084 3338 1061 4426 12123 9377 7100 10465 +15853 2275 5914 1358 4818 8314 11953 7397 10857 +15854 5837 3224 2692 1360 11876 9263 8731 7399 +15855 5540 942 2633 2802 11579 6981 8672 8841 +15856 5838 2821 4389 339 11877 8860 10428 6378 +15857 5927 1161 2944 2826 11966 7200 8983 8865 +15858 4407 747 2686 5307 10446 6786 8725 11346 +15859 5890 1604 5146 2804 11929 7643 11185 8843 +15860 2150 5094 403 5155 8189 11133 6442 11194 +15861 5306 5858 4578 1027 11345 11897 10617 7066 +15862 5943 4418 2143 4726 11982 10457 8182 10765 +15863 335 4703 1570 3561 6374 10742 7609 9600 +15864 4258 1392 3731 3121 10297 7431 9770 9160 +15865 5953 1334 5633 2829 11992 7373 11672 8868 +15866 4468 1260 2639 4467 10507 7299 8678 10506 +15867 3209 1664 3993 461 9248 7703 10032 6500 +15868 5371 5775 3471 2147 11410 11814 9510 8186 +15869 2563 4398 664 5746 8602 10437 6703 11785 +15870 1937 2177 962 4406 7976 8216 7001 10445 +15871 5041 2861 6199 991 11080 8900 12238 7030 +15872 947 3188 1320 4604 6986 9227 7359 10643 +15873 5819 2927 4698 629 11858 8966 10737 6668 +15874 5819 1740 4269 2927 11858 7779 10308 8966 +15875 5446 4355 1817 2313 11485 10394 7856 8352 +15876 560 4149 1385 3371 6599 10188 7424 9410 +15877 5985 3618 3554 1426 12024 9657 9593 7465 +15878 5535 545 2739 2808 11574 6584 8778 8847 +15879 412 4496 1759 4400 6451 10535 7798 10439 +15880 6117 2494 1352 4076 12156 8533 7391 10115 +15881 4721 2996 17 16 10760 9035 113 112 +15882 4609 1079 4285 3472 10648 7118 10324 9511 +15883 5173 1523 5177 2789 11212 7562 11216 8828 +15884 4059 4035 4144 1468 10098 10074 10183 7507 +15885 6056 1924 4462 3467 12095 7963 10501 9506 +15886 4682 4702 556 2564 10721 10741 6595 8603 +15887 6154 1331 4333 2820 12193 7370 10372 8859 +15888 209 5440 2778 5775 6248 11479 8817 11814 +15889 839 2581 453 5655 6878 8620 6492 11694 +15890 1158 3707 1640 5797 7197 9746 7679 11836 +15891 6159 934 2278 2836 12198 6973 8317 8875 +15892 4162 5392 4132 1424 10201 11431 10171 7463 +15893 5100 2857 5837 1360 11139 8896 11876 7399 +15894 5703 1373 4389 2821 11742 7412 10428 8860 +15895 744 4607 1694 5552 6783 10646 7733 11591 +15896 5893 103 102 2836 11932 199 198 8875 +15897 6129 2818 5776 907 12168 8857 11815 6946 +15898 5379 2882 2869 1336 11418 8921 8908 7375 +15899 4770 2985 6167 699 10809 9024 12206 6738 +15900 5578 1860 4182 2676 11617 7899 10221 8715 +15901 6182 2883 4776 281 12221 8922 10815 6320 +15902 6164 2878 5011 469 12203 8917 11050 6508 +15903 2148 2934 2652 5630 8187 8973 8691 11669 +15904 4162 1424 5294 6115 10201 7463 11333 12154 +15905 4573 4541 3229 349 10612 10580 9268 6388 +15906 4483 3713 4849 531 10522 9752 10888 6570 +15907 6203 708 2964 5197 12242 6747 9003 11236 +15908 4299 677 4764 4839 10338 6716 10803 10878 +15909 1383 6106 2195 3421 7422 12145 8234 9460 +15910 6009 4477 4301 1880 12048 10516 10340 7919 +15911 2061 5075 773 5740 8100 11114 6812 11779 +15912 2457 4824 401 5712 8496 10863 6440 11751 +15913 5995 2856 4539 1541 12034 8895 10578 7580 +15914 3327 222 2887 5583 9366 6261 8926 11622 +15915 1513 4600 1028 3495 7552 10639 7067 9534 +15916 1525 5220 1952 4419 7564 11259 7991 10458 +15917 5995 1073 3483 2856 12034 7112 9522 8895 +15918 2235 4517 220 5433 8274 10556 6259 11472 +15919 4325 4074 945 2001 10364 10113 6984 8040 +15920 6012 5321 13 3613 12051 11360 109 9652 +15921 1649 792 3460 5518 7688 6831 9499 11557 +15922 4307 1528 3591 4306 10346 7567 9630 10345 +15923 6065 4807 2979 1995 12104 10846 9018 8034 +15924 4345 3587 1062 1842 10384 9626 7101 7881 +15925 1245 4571 2611 3836 7284 10610 8650 9875 +15926 978 3026 944 3345 7017 9065 6983 9384 +15927 5839 613 2084 2861 11878 6652 8123 8900 +15928 5839 2861 4203 1715 11878 8900 10242 7754 +15929 5330 1011 3496 2842 11369 7050 9535 8881 +15930 5497 446 2388 2608 11536 6485 8427 8647 +15931 4070 3303 5614 993 10109 9342 11653 7032 +15932 1541 2865 1073 5995 7580 8904 7112 12034 +15933 5757 2885 5318 62 11796 8924 11357 158 +15934 6163 406 4836 3028 12202 6445 10875 9067 +15935 4834 2971 4911 253 10873 9010 10950 6292 +15936 660 3743 1604 4676 6699 9782 7643 10715 +15937 3269 1243 3672 4530 9308 7282 9711 10569 +15938 4849 3097 4392 1597 10888 9136 10431 7636 +15939 1119 4527 600 3131 7158 10566 6639 9170 +15940 5129 3984 924 2225 11168 10023 6963 8264 +15941 4441 5190 3762 812 10480 11229 9801 6851 +15942 4322 451 5314 2841 10361 6490 11353 8880 +15943 1829 2864 2300 5226 7868 8903 8339 11265 +15944 4265 1120 3333 3958 10304 7159 9372 9997 +15945 5050 921 5848 3028 11089 6960 11887 9067 +15946 5050 3028 4836 1561 11089 9067 10875 7600 +15947 3965 6226 5091 1504 10004 12265 11130 7543 +15948 834 5222 1846 6059 6873 11261 7885 12098 +15949 18 17 2996 4687 114 113 9035 10726 +15950 5396 4548 3109 887 11435 10587 9148 6926 +15951 4866 399 1948 2409 10905 6438 7987 8448 +15952 1332 4780 963 3020 7371 10819 7002 9059 +15953 5704 405 2283 3329 11743 6444 8322 9368 +15954 4436 444 1657 2460 10475 6483 7696 8499 +15955 4239 4099 4167 648 10278 10138 10206 6687 +15956 378 3690 1711 5183 6417 9729 7750 11222 +15957 4818 3558 2913 1125 10857 9597 8952 7164 +15958 5508 228 4651 3004 11547 6267 10690 9043 +15959 899 5526 1060 2752 6938 11565 7099 8791 +15960 6228 2908 4198 1807 12267 8947 10237 7846 +15961 2554 5080 832 5619 8593 11119 6871 11658 +15962 5936 3005 5647 1599 11975 9044 11686 7638 +15963 4900 6230 5648 421 10939 12269 11687 6460 +15964 5342 972 2837 2868 11381 7011 8876 8907 +15965 5142 1135 2429 2897 11181 7174 8468 8936 +15966 1516 4166 231 4035 7555 10205 6270 10074 +15967 5354 2869 2882 1005 11393 8908 8921 7044 +15968 2890 441 3338 6084 8929 6480 9377 12123 +15969 4789 3047 2346 1020 10828 9086 8385 7059 +15970 5965 2859 3853 926 12004 8898 9892 6965 +15971 5684 2171 1968 3690 11723 8210 8007 9729 +15972 284 4446 1964 3479 6323 10485 8003 9518 +15973 1589 4594 1637 4411 7628 10633 7676 10450 +15974 1775 5606 2232 4377 7814 11645 8271 10416 +15975 2623 5151 1687 5691 8662 11190 7726 11730 +15976 5320 3570 4363 996 11359 9609 10402 7035 +15977 5340 889 2354 6022 11379 6928 8393 12061 +15978 6212 2676 4555 1988 12251 8715 10594 8027 +15979 5668 2863 822 1914 11707 8902 6861 7953 +15980 1789 4808 3051 6044 7828 10847 9090 12083 +15981 1163 2948 1558 4520 7202 8987 7597 10559 +15982 5191 2427 3610 1491 11230 8466 9649 7530 +15983 2512 3675 1002 5786 8551 9714 7041 11825 +15984 1759 4496 2127 5407 7798 10535 8166 11446 +15985 3935 342 6104 2168 9974 6381 12143 8207 +15986 4828 6098 5201 2161 10867 12137 11240 8200 +15987 4034 716 5744 5787 10073 6755 11783 11826 +15988 5081 272 5140 3087 11120 6311 11179 9126 +15989 5209 858 2139 2467 11248 6897 8178 8506 +15990 468 3430 2059 5629 6507 9469 8098 11668 +15991 445 2873 1059 5431 6484 8912 7098 11470 +15992 6011 693 3263 5204 12050 6732 9302 11243 +15993 6069 3733 1954 393 12108 9772 7993 6432 +15994 4822 5955 2539 1811 10861 11994 8578 7850 +15995 3930 4344 2866 1490 9969 10383 8905 7529 +15996 5418 876 2857 5100 11457 6915 8896 11139 +15997 5179 266 3034 2259 11218 6305 9073 8298 +15998 5501 2872 2871 1085 11540 8911 8910 7124 +15999 715 3953 1832 5597 6754 9992 7871 11636 +16000 4889 2665 4499 1421 10928 8704 10538 7460 +16001 6216 1501 2830 5662 12255 7540 8869 11701 +16002 5530 1471 2270 243 11569 7510 8309 6282 +16003 2120 6198 274 5964 8159 12237 6313 12003 +16004 3303 4070 463 2038 9342 10109 6502 8077 +16005 1804 896 4712 3221 7843 6935 10751 9260 +16006 2990 1047 2936 4879 9029 7086 8975 10918 +16007 4825 3753 86 85 10864 9792 182 181 +16008 3720 4134 3910 872 9759 10173 9949 6911 +16009 5627 2932 4871 952 11666 8971 10910 6991 +16010 4904 814 4650 2651 10943 6853 10689 8690 +16011 992 4556 1586 3811 7031 10595 7625 9850 +16012 4971 1290 3109 4548 11010 7329 9148 10587 +16013 2830 4670 419 5662 8869 10709 6458 11701 +16014 5314 950 2170 2841 11353 6989 8209 8880 +16015 4611 3207 4556 992 10650 9246 10595 7031 +16016 5423 1111 4101 3120 11462 7150 10140 9159 +16017 4277 1867 4928 5950 10316 7906 10967 11989 +16018 6201 635 4995 2919 12240 6674 11034 8958 +16019 1759 5643 866 4400 7798 11682 6905 10439 +16020 4713 2197 826 3555 10752 8236 6865 9594 +16021 3413 694 5466 1300 9452 6733 11505 7339 +16022 2026 5339 1077 4801 8065 11378 7116 10840 +16023 6213 3336 4280 1018 12252 9375 10319 7057 +16024 4586 3353 4292 339 10625 9392 10331 6378 +16025 1027 4580 2198 5306 7066 10619 8237 11345 +16026 4786 3093 3774 1416 10825 9132 9813 7455 +16027 4605 1098 2994 3295 10644 7137 9033 9334 +16028 1821 3518 1015 5994 7860 9557 7054 12033 +16029 5474 4331 2316 1729 11513 10370 8355 7768 +16030 653 4013 1576 4254 6692 10052 7615 10293 +16031 989 5949 2329 2371 7028 11988 8368 8410 +16032 4886 1055 3972 2282 10925 7094 10011 8321 +16033 4824 1737 5631 4091 10863 7776 11670 10130 +16034 5602 1037 3048 3903 11641 7076 9087 9942 +16035 5613 2883 6182 1796 11652 8922 12221 7835 +16036 1371 4866 2409 4028 7410 10905 8448 10067 +16037 5351 1744 1168 3039 11390 7783 7207 9078 +16038 2056 3250 1751 5410 8095 9289 7790 11449 +16039 4202 1515 4349 1498 10241 7554 10388 7537 +16040 5822 2916 4550 1713 11861 8955 10589 7752 +16041 5822 986 2209 2916 11861 7025 8248 8955 +16042 5509 3169 5516 566 11548 9208 11555 6605 +16043 3294 5889 1670 2487 9333 11928 7709 8526 +16044 2055 6161 287 5454 8094 12200 6326 11493 +16045 3871 517 2373 3569 9910 6556 8412 9608 +16046 1539 2853 4354 3754 7578 8892 10393 9793 +16047 1595 3301 1338 4857 7634 9340 7377 10896 +16048 5866 2667 525 3397 11905 8706 6564 9436 +16049 5611 3194 4423 1439 11650 9233 10462 7478 +16050 424 5376 1583 2902 6463 11415 7622 8941 +16051 5487 2896 5436 1866 11526 8935 11475 7905 +16052 1517 4133 1516 4104 7556 10172 7555 10143 +16053 4841 2447 1436 4385 10880 8486 7475 10424 +16054 5399 1006 2264 2902 11438 7045 8303 8941 +16055 6211 1253 3889 1435 12250 7292 9928 7474 +16056 4781 3308 2879 990 10820 9347 8918 7029 +16057 1158 5913 1587 2542 7197 11952 7626 8581 +16058 5674 3372 4797 759 11713 9411 10836 6798 +16059 4481 1011 5330 6180 10520 7050 11369 12219 +16060 47 4697 2632 48 143 10736 8671 144 +16061 5125 101 100 3135 11164 197 196 9174 +16062 3024 4103 3846 337 9063 10142 9885 6376 +16063 4358 797 5091 2568 10397 6836 11130 8607 +16064 365 4482 2181 5608 6404 10521 8220 11647 +16065 1373 5703 2352 5520 7412 11742 8391 11559 +16066 5247 3251 2547 462 11286 9290 8586 6501 +16067 4686 543 5195 3527 10725 6582 11234 9566 +16068 5506 2974 2098 1040 11545 9013 8137 7079 +16069 4282 1515 4202 351 10321 7554 10241 6390 +16070 1517 4293 1590 3863 7556 10332 7629 9902 +16071 5284 2387 5214 1967 11323 8426 11253 8006 +16072 2598 6168 1978 4812 8637 12207 8017 10851 +16073 1651 2903 597 5646 7690 8942 6636 11685 +16074 5385 3970 5104 1429 11424 10009 11143 7468 +16075 5016 3294 437 2463 11055 9333 6476 8502 +16076 6206 2936 35 34 12245 8975 131 130 +16077 829 3817 1682 5944 6868 9856 7721 11983 +16078 5252 1520 5671 2975 11291 7559 11710 9014 +16079 5397 1357 2887 2641 11436 7396 8926 8680 +16080 4386 1214 2635 3737 10425 7253 8674 9776 +16081 4885 1138 2597 3060 10924 7177 8636 9099 +16082 1572 5007 2057 4745 7611 11046 8096 10784 +16083 4561 324 5523 5790 10600 6363 11562 11829 +16084 5365 3670 1314 2415 11404 9709 7353 8454 +16085 1133 6149 516 2934 7172 12188 6555 8973 +16086 5129 600 2192 3984 11168 6639 8231 10023 +16087 1371 6137 2281 4866 7410 12176 8320 10905 +16088 415 4663 2879 3308 6454 10702 8918 9347 +16089 4374 4184 3271 1573 10413 10223 9310 7612 +16090 4184 4374 3859 1622 10223 10413 9898 7661 +16091 4600 3393 4978 1028 10639 9432 11017 7067 +16092 5277 944 5752 2969 11316 6983 11791 9008 +16093 6187 1309 4719 3676 12226 7348 10758 9715 +16094 1085 4051 1972 5501 7124 10090 8011 11540 +16095 4145 2909 2412 320 10184 8948 8451 6359 +16096 6194 2347 859 3411 12233 8386 6898 9450 +16097 3738 5327 3246 1379 9777 11366 9285 7418 +16098 6120 4996 3000 1167 12159 11035 9039 7206 +16099 5320 2445 2618 898 11359 8484 8657 6937 +16100 1829 3784 596 4368 7868 9823 6635 10407 +16101 3048 1303 2613 4913 9087 7342 8652 10952 +16102 572 4838 1397 3593 6611 10877 7436 9632 +16103 4949 5283 3741 217 10988 11322 9780 6256 +16104 6179 3799 2839 326 12218 9838 8878 6365 +16105 2905 5894 2290 818 8944 11933 8329 6857 +16106 611 5574 963 4780 6650 11613 7002 10819 +16107 4457 1594 3860 3179 10496 7633 9899 9218 +16108 4958 1134 5355 3607 10997 7173 11394 9646 +16109 5053 1458 3654 3061 11092 7497 9693 9100 +16110 35 2936 1047 5246 131 8975 7086 11285 +16111 5881 3553 2578 914 11920 9592 8617 6953 +16112 4880 986 3087 3081 10919 7025 9126 9120 +16113 5554 1550 4179 3980 11593 7589 10218 10019 +16114 103 5893 5730 104 199 11932 11769 200 +16115 16 15 2559 4721 112 111 8598 10760 +16116 1831 3966 734 5297 7870 10005 6773 11336 +16117 2989 3726 4729 305 9028 9765 10768 6344 +16118 1016 5234 1588 3007 7055 11273 7627 9046 +16119 4404 3732 2509 1258 10443 9771 8548 7297 +16120 688 3268 1480 4754 6727 9307 7519 10793 +16121 845 4819 1886 4536 6884 10858 7925 10575 +16122 2468 4799 697 5918 8507 10838 6736 11957 +16123 6201 2919 4014 1710 12240 8958 10053 7749 +16124 5206 2955 3957 1162 11245 8994 9996 7201 +16125 203 3745 1415 4440 6242 9784 7454 10479 +16126 1928 5565 1065 3987 7967 11604 7104 10026 +16127 1922 4524 927 5782 7961 10563 6966 11821 +16128 4241 4542 4393 1619 10280 10581 10432 7658 +16129 5628 950 5024 2943 11667 6989 11063 8982 +16130 6086 2416 4870 1682 12125 8455 10909 7721 +16131 4282 1609 4099 4239 10321 7648 10138 10278 +16132 782 5290 1536 3689 6821 11329 7575 9728 +16133 424 5358 3955 2929 6463 11397 9994 8968 +16134 5980 2927 4269 955 12019 8966 10308 6994 +16135 5263 3076 331 2481 11302 9115 6370 8520 +16136 4318 5841 4370 831 10357 11880 10409 6870 +16137 3701 5639 884 2548 9740 11678 6923 8587 +16138 396 5409 1723 2967 6435 11448 7762 9006 +16139 3113 3696 527 5382 9152 9735 6566 11421 +16140 5898 5343 1315 4507 11937 11382 7354 10546 +16141 5197 2964 2459 1219 11236 9003 8498 7258 +16142 5534 1568 3893 1473 11573 7607 9932 7512 +16143 648 4167 1516 4133 6687 10206 7555 10172 +16144 88 87 2262 4539 184 183 8301 10578 +16145 5089 728 3290 3385 11128 6767 9329 9424 +16146 996 2963 2445 5320 7035 9002 8484 11359 +16147 5148 975 4340 2976 11187 7014 10379 9015 +16148 5120 1821 5994 5046 11159 7860 12033 11085 +16149 1460 4275 1096 3951 7499 10314 7135 9990 +16150 3705 4813 2656 1446 9744 10852 8695 7485 +16151 1687 5151 437 5570 7726 11190 6476 11609 +16152 839 5886 1870 2581 6878 11925 7909 8620 +16153 5678 1455 4093 591 11717 7494 10132 6630 +16154 1814 3120 633 6090 7853 9159 6672 12129 +16155 6203 2958 4804 708 12242 8997 10843 6747 +16156 4925 2398 3722 5257 10964 8437 9761 11296 +16157 1516 4167 1548 4166 7555 10206 7587 10205 +16158 5108 2023 5854 3265 11147 8062 11893 9304 +16159 5891 3549 3847 3797 11930 9588 9886 9836 +16160 4668 3650 4213 641 10707 9689 10252 6680 +16161 4668 1537 4243 3650 10707 7576 10282 9689 +16162 3678 5338 2214 1157 9717 11377 8253 7196 +16163 5959 3626 2076 803 11998 9665 8115 6842 +16164 2217 4401 1580 5899 8256 10440 7619 11938 +16165 5889 3294 5016 933 11928 9333 11055 6972 +16166 5279 4154 2787 1344 11318 10193 8826 7383 +16167 6233 229 1956 1366 12272 6268 7995 7405 +16168 6075 4370 5841 2036 12114 10409 11880 8075 +16169 4995 3337 6092 961 11034 9376 12131 7000 +16170 2675 6030 2467 2139 8714 12069 8506 8178 +16171 4369 1515 4282 4239 10408 7554 10321 10278 +16172 2149 5169 3610 749 8188 11208 9649 6788 +16173 5243 1519 4109 4489 11282 7558 10148 10528 +16174 1097 5114 705 3098 7136 11153 6744 9137 +16175 4905 938 3870 3342 10944 6977 9909 9381 +16176 1594 6000 913 3860 7633 12039 6952 9899 +16177 4659 1938 5261 1015 10698 7977 11300 7054 +16178 824 1529 5984 2619 6863 7568 12023 8658 +16179 347 5718 1739 4210 6386 11757 7778 10249 +16180 3750 6148 4429 1140 9789 12187 10468 7179 +16181 1426 4031 2202 5985 7465 10070 8241 12024 +16182 6140 3678 3470 1542 12179 9717 9509 7581 +16183 1589 4411 602 4084 7628 10450 6641 10123 +16184 5149 1443 4625 3563 11188 7482 10664 9602 +16185 6051 2932 2438 701 12090 8971 8477 6740 +16186 1391 4688 293 3392 7430 10727 6332 9431 +16187 5873 2937 3776 767 11912 8976 9815 6806 +16188 2139 5855 1497 4602 8178 11894 7536 10641 +16189 5958 505 2261 3768 11997 6544 8300 9807 +16190 4882 3571 3628 3918 10921 9610 9667 9957 +16191 5252 2975 3070 360 11291 9014 9109 6399 +16192 4985 2505 965 4810 11024 8544 7004 10849 +16193 5833 2296 1087 2939 11872 8335 7126 8978 +16194 4798 3445 3079 1423 10837 9484 9118 7462 +16195 543 4686 2122 3652 6582 10725 8161 9691 +16196 5812 4205 1892 4115 11851 10244 7931 10154 +16197 5108 4155 3938 1353 11147 10194 9977 7392 +16198 6073 4570 1066 3428 12112 10609 7105 9467 +16199 4056 1607 1884 5856 10095 7646 7923 11895 +16200 1567 2958 1050 5373 7606 8997 7089 11412 +16201 5129 1311 3881 3010 11168 7350 9920 9049 +16202 1098 4927 634 3606 7137 10966 6673 9645 +16203 4041 4254 4202 1498 10080 10293 10241 7537 +16204 4537 5931 2248 976 10576 11970 8287 7015 +16205 5931 4537 508 2308 11970 10576 6547 8347 +16206 1482 3891 707 4842 7521 9930 6746 10881 +16207 5647 2310 4112 1599 11686 8349 10151 7638 +16208 1690 4622 2325 6108 7729 10661 8364 12147 +16209 5454 2381 2946 1328 11493 8420 8985 7367 +16210 1950 3147 1401 4964 7989 9186 7440 11003 +16211 1119 3067 673 5018 7158 9106 6712 11057 +16212 1561 3263 1029 5006 7600 9302 7068 11045 +16213 5654 3615 6028 1671 11693 9654 12067 7710 +16214 2735 5876 839 5655 8774 11915 6878 11694 +16215 5465 2956 4033 983 11504 8995 10072 7022 +16216 4727 703 5844 3931 10766 6742 11883 9970 +16217 326 3906 2224 6179 6365 9945 8263 12218 +16218 4221 1433 3251 5494 10260 7472 9290 11533 +16219 5494 3251 5247 1035 11533 9290 11286 7074 +16220 691 5543 1189 3009 6730 11582 7228 9048 +16221 5913 1158 5797 2251 11952 7197 11836 8290 +16222 1569 4387 1621 4364 7608 10426 7660 10403 +16223 2237 4779 1408 3583 8276 10818 7447 9622 +16224 4508 1496 5544 3840 10547 7535 11583 9879 +16225 1391 4822 1811 3954 7430 10861 7850 9993 +16226 4175 2486 2485 493 10214 8525 8524 6532 +16227 4590 3545 2415 1314 10629 9584 8454 7353 +16228 1578 3532 488 5028 7617 9571 6527 11067 +16229 5496 1626 4967 2959 11535 7665 11006 8998 +16230 2025 5209 255 6049 8064 11248 6294 12088 +16231 407 4577 1853 3890 6446 10616 7892 9929 +16232 1720 4700 1645 4510 7759 10739 7684 10549 +16233 690 4336 1267 3865 6729 10375 7306 9904 +16234 655 5402 1616 2990 6694 11441 7655 9029 +16235 5556 2698 521 3386 11595 8737 6560 9425 +16236 4985 4810 2537 649 11024 10849 8576 6688 +16237 6166 5257 3722 1535 12205 11296 9761 7574 +16238 3713 4483 4001 1427 9752 10522 10040 7466 +16239 1627 4342 1576 4294 7666 10381 7615 10333 +16240 4968 737 2252 3119 11007 6776 8291 9158 +16241 1619 4360 1566 4241 7658 10399 7605 10280 +16242 449 2315 3891 4751 6488 8354 9930 10790 +16243 75 5708 76 4 171 11747 172 8 +16244 5534 3418 5977 750 11573 9457 12016 6789 +16245 6200 1914 822 2984 12239 7953 6861 9023 +16246 5462 1735 4416 3208 11501 7774 10455 9247 +16247 5369 1524 2618 4941 11408 7563 8657 10980 +16248 1580 4401 695 2247 7619 10440 6734 8286 +16249 3338 5202 956 2276 9377 11241 6995 8315 +16250 1763 5638 1105 4634 7802 11677 7144 10673 +16251 669 3709 2550 4725 6708 9748 8589 10764 +16252 1875 4150 671 4456 7914 10189 6710 10495 +16253 4565 1697 5676 4273 10604 7736 11715 10312 +16254 1758 5840 3141 5900 7797 11879 9180 11939 +16255 5449 3483 5690 1774 11488 9522 11729 7813 +16256 2143 4418 715 5597 8182 10457 6754 11636 +16257 4844 1036 4063 2848 10883 7075 10102 8887 +16258 5420 3119 2252 1078 11459 9158 8291 7117 +16259 417 4564 709 3726 6456 10603 6748 9765 +16260 4697 47 46 3734 10736 143 142 9773 +16261 5220 3501 4892 391 11259 9540 10931 6430 +16262 5545 1775 4421 5739 11584 7814 10460 11778 +16263 5298 2389 267 3460 11337 8428 6306 9499 +16264 5354 2241 1023 3499 11393 8280 7062 9538 +16265 1878 4630 1013 3546 7917 10669 7052 9585 +16266 1672 298 2557 4740 7711 6337 8596 10779 +16267 5890 2988 4676 1604 11929 9027 10715 7643 +16268 6181 2993 5992 916 12220 9032 12031 6955 +16269 6182 281 3968 2993 12221 6320 10007 9032 +16270 5617 2971 4834 1058 11656 9010 10873 7097 +16271 4918 3680 5569 371 10957 9719 11608 6410 +16272 4986 1586 4295 3277 11025 7625 10334 9316 +16273 4894 817 5945 3710 10933 6856 11984 9749 +16274 5483 3118 4850 1519 11522 9157 10889 7558 +16275 9 1 104 5730 105 5 200 11769 +16276 4742 2091 5963 912 10781 8130 12002 6951 +16277 3771 932 5784 6196 9810 6971 11823 12235 +16278 5231 1703 4713 3555 11270 7742 10752 9594 +16279 4326 4189 6033 232 10365 10228 12072 6271 +16280 683 3792 1514 4525 6722 9831 7553 10564 +16281 4690 1410 2842 3496 10729 7449 8881 9535 +16282 4251 1452 3389 4252 10290 7491 9428 10291 +16283 5604 2977 2518 1031 11643 9016 8557 7070 +16284 724 5733 3557 1492 6763 11772 9596 7531 +16285 2319 781 2471 3896 8358 6820 8510 9935 +16286 707 2647 5903 3213 6746 8686 11942 9252 +16287 1810 6059 708 4804 7849 12098 6747 10843 +16288 363 1937 2316 4906 6402 7976 8355 10945 +16289 3981 475 3116 4914 10020 6514 9155 10953 +16290 4914 1709 4525 3981 10953 7748 10564 10020 +16291 4725 2550 5021 1375 10764 8589 11060 7414 +16292 6181 3051 4240 1796 12220 9090 10279 7835 +16293 5076 1130 2622 3110 11115 7169 8661 9149 +16294 4738 1680 4057 4281 10777 7719 10096 10320 +16295 5615 1989 3084 4679 11654 8028 9123 10718 +16296 4908 2254 446 4438 10947 8293 6485 10477 +16297 2010 4163 751 5681 8049 10202 6790 11720 +16298 6014 2986 2708 1051 12053 9025 8747 7090 +16299 5736 1336 2869 4327 11775 7375 8908 10366 +16300 1725 5712 401 3183 7764 11751 6440 9222 +16301 4667 3547 2249 920 10706 9586 8288 6959 +16302 5873 2641 4497 4797 11912 8680 10536 10836 +16303 5719 2683 2798 1951 11758 8722 8837 7990 +16304 4700 4291 3779 1645 10739 10330 9818 7684 +16305 5186 4152 3839 1485 11225 10191 9878 7524 +16306 4853 1178 2752 4501 10892 7217 8791 10540 +16307 6156 3004 4651 2048 12195 9043 10690 8087 +16308 5165 2831 5956 1392 11204 8870 11995 7431 +16309 5525 3604 4238 1754 11564 9643 10277 7793 +16310 4468 218 3260 3844 10507 6257 9299 9883 +16311 2033 4389 1373 5480 8072 10428 7412 11519 +16312 5333 3846 4103 1445 11372 9885 10142 7484 +16313 1961 5232 1289 263 8000 11271 7328 6302 +16314 859 3829 2561 3412 6898 9868 8600 9451 +16315 4921 3247 3264 546 10960 9286 9303 6585 +16316 6046 5123 5505 2402 12085 11162 11544 8441 +16317 2006 3199 826 5014 8045 9238 6865 11053 +16318 4294 4506 4405 1627 10333 10545 10444 7666 +16319 5414 3226 5756 1497 11453 9265 11795 7536 +16320 4779 1260 4468 3844 10818 7299 10507 9883 +16321 5890 242 4367 2988 11929 6281 10406 9027 +16322 809 6220 2525 4475 6848 12259 8564 10514 +16323 811 4822 1391 3392 6850 10861 7430 9431 +16324 6093 3075 4044 1766 12132 9114 10083 7805 +16325 4709 1913 5772 5451 10748 7952 11811 11490 +16326 1609 4282 351 4328 7648 10321 6390 10367 +16327 743 4520 1558 6144 6782 10559 7597 12183 +16328 6159 1734 2750 4529 12198 7773 8789 10568 +16329 3320 4931 418 2125 9359 10970 6457 8164 +16330 1615 4365 1582 4264 7654 10404 7621 10303 +16331 3004 1449 3128 5508 9043 7488 9167 11547 +16332 842 4673 2049 5868 6881 10712 8088 11907 +16333 1526 4869 1986 4830 7565 10908 8025 10869 +16334 628 3789 1457 4242 6667 9828 7496 10281 +16335 713 4179 1550 4276 6752 10218 7589 10315 +16336 1725 5072 2457 5712 7764 11111 8496 11751 +16337 1970 5845 392 3985 8009 11884 6431 10024 +16338 5181 3368 4335 1614 11220 9407 10374 7653 +16339 5181 384 5388 3368 11220 6423 11427 9407 +16340 4094 1955 3019 5734 10133 7994 9058 11773 +16341 5981 3655 5022 2274 12020 9694 11061 8313 +16342 5722 4929 2218 2384 11761 10968 8257 8423 +16343 4696 922 5748 3073 10735 6961 11787 9112 +16344 4712 896 4504 3843 10751 6935 10543 9882 +16345 1358 5914 1003 3003 7397 11953 7042 9042 +16346 4971 4548 5396 2173 11010 10587 11435 8212 +16347 5364 2316 4331 906 11403 8355 10370 6945 +16348 1963 6111 596 3784 8002 12150 6635 9823 +16349 5659 3431 1785 216 11698 9470 7824 6255 +16350 4696 5008 5522 2968 10735 11047 11561 9007 +16351 5461 865 4646 2419 11500 6904 10685 8458 +16352 4663 1663 5161 1666 10702 7702 11200 7705 +16353 3680 1659 4650 5569 9719 7698 10689 11608 +16354 5412 3763 4848 1046 11451 9802 10887 7085 +16355 3016 5612 2406 801 9055 11651 8445 6840 +16356 3875 4895 2586 1123 9914 10934 8625 7162 +16357 5872 1308 3653 3014 11911 7347 9692 9053 +16358 4098 1823 5538 4948 10137 7862 11577 10987 +16359 5524 2297 3615 1451 11563 8336 9654 7490 +16360 3337 5996 3025 431 9376 12035 9064 6470 +16361 6225 425 6227 3058 12264 6464 12266 9097 +16362 6225 3058 5725 1792 12264 9097 11764 7831 +16363 4280 2373 517 1018 10319 8412 6556 7057 +16364 5646 3032 2513 1651 11685 9071 8552 7690 +16365 1710 4014 268 5116 7749 10053 6307 11155 +16366 6112 1034 2169 3284 12151 7073 8208 9323 +16367 2166 3756 1771 6123 8205 9795 7810 12162 +16368 1894 3022 2185 5759 7933 9061 8224 11798 +16369 4999 474 4559 2651 11038 6513 10598 8690 +16370 5642 999 2513 3032 11681 7038 8552 9071 +16371 1656 4352 1655 4353 7695 10391 7694 10392 +16372 5646 597 4420 3032 11685 6636 10459 9071 +16373 1694 4759 1582 4522 7733 10798 7621 10561 +16374 4342 4202 4254 1576 10381 10241 10293 7615 +16375 5196 2080 4092 1764 11235 8119 10131 7803 +16376 5136 711 4378 4876 11175 6750 10417 10915 +16377 2215 4175 493 5030 8254 10214 6532 11069 +16378 5131 1574 5865 3271 11170 7613 11904 9310 +16379 5131 3271 4184 754 11170 9310 10223 6793 +16380 3758 400 2657 1767 9797 6439 8696 7806 +16381 6132 3862 1843 4771 12171 9901 7882 10810 +16382 95 4790 2762 96 191 10829 8801 192 +16383 4507 217 3741 5259 10546 6256 9780 11298 +16384 5852 423 5000 3037 11891 6462 11039 9076 +16385 6117 340 2552 3685 12156 6379 8591 9724 +16386 3278 5002 25 24 9317 11041 121 120 +16387 6186 5150 12 11 12225 11189 108 107 +16388 5807 344 4557 3040 11846 6383 10596 9079 +16389 5814 3747 1025 2604 11853 9786 7064 8643 +16390 850 6204 1990 4840 6889 12243 8029 10879 +16391 6044 3051 6181 916 12083 9090 12220 6955 +16392 4172 2570 5599 1382 10211 8609 11638 7421 +16393 4885 4675 2907 1138 10924 10714 8946 7177 +16394 2566 4837 853 6169 8605 10876 6892 12208 +16395 651 5525 2107 5296 6690 11564 8146 11335 +16396 839 5876 1838 5886 6878 11915 7877 11925 +16397 5498 3075 6093 638 11537 9114 12132 6677 +16398 5923 1099 2736 3050 11962 7138 8775 9089 +16399 3418 1008 4821 5977 9457 7047 10860 12016 +16400 5840 3049 2458 615 11879 9088 8497 6654 +16401 5475 304 5847 3084 11514 6343 11886 9123 +16402 5808 618 3571 4882 11847 6657 9610 10921 +16403 5741 2081 867 3273 11780 8120 6906 9312 +16404 5741 3273 30 29 11780 9312 126 125 +16405 777 3699 1873 4657 6816 9738 7912 10696 +16406 4442 659 4410 4245 10481 6698 10449 10284 +16407 2184 5013 988 6054 8223 11052 7027 12093 +16408 769 5654 2573 4998 6808 11693 8612 11037 +16409 5249 4085 5458 404 11288 10124 11497 6443 +16410 846 4390 1508 4391 6885 10429 7547 10430 +16411 4288 4567 4624 1667 10327 10606 10663 7706 +16412 5974 881 2155 3063 12013 6920 8194 9102 +16413 5905 3061 5535 1830 11944 9100 11574 7869 +16414 4857 3915 3748 290 10896 9954 9787 6329 +16415 6005 4888 4734 777 12044 10927 10773 6816 +16416 5790 5523 5040 1701 11829 11562 11079 7740 +16417 650 4424 1569 4364 6689 10463 7608 10403 +16418 1743 3967 717 5134 7782 10006 6756 11173 +16419 4702 5107 6094 1975 10741 11146 12133 8014 +16420 1007 3459 1209 4873 7046 9498 7248 10912 +16421 5887 3065 3323 1551 11926 9104 9362 7590 +16422 2980 4117 5738 1558 9019 10156 11777 7597 +16423 1423 3079 414 3682 7462 9118 6453 9721 +16424 4995 1794 5996 3337 11034 7833 12035 9376 +16425 615 4736 1661 3638 6654 10775 7700 9677 +16426 5196 1764 3782 817 11235 7803 9821 6856 +16427 344 3744 1481 4638 6383 9783 7520 10677 +16428 4925 3509 2779 741 10964 9548 8818 6780 +16429 1135 5142 2021 4178 7174 11181 8060 10217 +16430 4307 3526 3377 1528 10346 9565 9416 7567 +16431 4146 320 3129 3099 10185 6359 9168 9138 +16432 3934 2816 604 5991 9973 8855 6643 12030 +16433 4360 4444 4334 1566 10399 10483 10373 7605 +16434 2334 5477 1666 5045 8373 11516 7705 11084 +16435 5416 1754 4238 3523 11455 7793 10277 9562 +16436 5422 3405 5861 1471 11461 9444 11900 7510 +16437 5420 1509 4968 3119 11459 7548 11007 9158 +16438 37 5780 3160 38 133 11819 9199 134 +16439 5816 1581 4351 3170 11855 7620 10390 9209 +16440 3122 5800 2786 5804 9161 11839 8825 11843 +16441 5271 2514 2684 852 11310 8553 8723 6891 +16442 3435 6234 4784 674 9474 12273 10823 6713 +16443 3765 662 2369 4634 9804 6701 8408 10673 +16444 5755 1489 4098 3520 11794 7528 10137 9559 +16445 5912 3135 2513 999 11951 9174 8552 7038 +16446 5912 1734 5125 3135 11951 7773 11164 9174 +16447 5730 5893 2836 2278 11769 11932 8875 8317 +16448 4244 4369 3863 1590 10283 10408 9902 7629 +16449 4369 4244 4349 1515 10408 10283 10388 7554 +16450 649 4235 1498 4349 6688 10274 7537 10388 +16451 698 3434 1510 4930 6737 9473 7549 10969 +16452 4765 4714 3838 739 10804 10753 9877 6778 +16453 611 4271 1806 5026 6650 10310 7845 11065 +16454 715 4549 1857 3953 6754 10588 7896 9992 +16455 5081 3647 5998 272 11120 9686 12037 6311 +16456 5850 947 3049 5479 11889 6986 9088 11518 +16457 5479 2764 1200 5850 11518 8803 7239 11889 +16458 4534 492 2760 2930 10573 6531 8799 8969 +16459 5483 665 3585 3118 11522 6704 9624 9157 +16460 4128 4387 2446 350 10167 10426 8485 6389 +16461 1752 5640 806 3632 7791 11679 6845 9671 +16462 3753 4825 2729 1536 9792 10864 8768 7575 +16463 784 3932 1781 4502 6823 9971 7820 10541 +16464 668 3937 1353 3938 6707 9976 7392 9977 +16465 3891 1482 1856 4751 9930 7521 7895 10790 +16466 6222 769 5499 3024 12261 6808 11538 9063 +16467 5671 1520 5048 4409 11710 7559 11087 10448 +16468 2629 5721 750 5977 8668 11760 6789 12016 +16469 5725 3058 1064 3973 11764 9097 7103 10012 +16470 4851 1495 4508 3840 10890 7534 10547 9879 +16471 2346 3969 471 4665 8385 10008 6510 10704 +16472 4118 4399 4757 712 10157 10438 10796 6751 +16473 4970 2694 4854 526 11009 8733 10893 6565 +16474 5724 1708 5199 3222 11763 7747 11238 9261 +16475 5724 3222 3847 520 11763 9261 9886 6559 +16476 4362 673 4521 4454 10401 6712 10560 10493 +16477 3938 4155 3940 1705 9977 10194 9979 7744 +16478 4697 3734 4430 1470 10736 9773 10469 7509 +16479 5960 1274 2792 3856 11999 7313 8831 9895 +16480 5335 3868 2942 1488 11374 9907 8981 7527 +16481 2272 5133 1679 5453 8311 11172 7718 11492 +16482 1781 4651 228 4595 7820 10690 6267 10634 +16483 6019 3918 3628 617 12058 9957 9667 6656 +16484 3431 5659 2738 1728 9470 11698 8777 7767 +16485 6238 1902 6148 3750 12277 7941 12187 9789 +16486 4742 270 2610 2091 10781 6309 8649 8130 +16487 5116 268 2333 4772 11155 6307 8372 10811 +16488 2089 6124 1091 4233 8128 12163 7130 10272 +16489 840 3114 2576 2117 6879 9153 8615 8156 +16490 5442 1757 2339 4297 11481 7796 8378 10336 +16491 5607 2488 4418 1730 11646 8527 10457 7769 +16492 6213 1018 3280 3187 12252 7057 9319 9226 +16493 618 1370 3628 3571 6657 7409 9667 9610 +16494 1504 4667 920 3965 7543 10706 6959 10004 +16495 5022 3824 2055 687 11061 9863 8094 6726 +16496 1499 4361 1917 5300 7538 10400 7956 11339 +16497 4508 5636 3477 1496 10547 11675 9516 7535 +16498 1706 5019 2444 5539 7745 11058 8483 11578 +16499 3770 407 3890 4060 9809 6446 9929 10099 +16500 2143 5597 1832 4089 8182 11636 7871 10128 +16501 5166 4005 4040 1646 11205 10044 10079 7685 +16502 1862 2905 818 5489 7901 8944 6857 11528 +16503 2056 5544 1496 5432 8095 11583 7535 11471 +16504 4640 5643 1759 2114 10679 11682 7798 8153 +16505 5473 751 4163 3162 11512 6790 10202 9201 +16506 5768 3232 5563 1812 11807 9271 11602 7851 +16507 207 4994 1425 3552 6246 11033 7464 9591 +16508 4316 907 2541 5085 10355 6946 8580 11124 +16509 5777 4279 2525 388 11816 10318 8564 6427 +16510 5068 5518 3460 2636 11107 11557 9499 8675 +16511 3495 5834 2374 1513 9534 11873 8413 7552 +16512 5787 1207 1989 4034 11826 7246 8028 10073 +16513 69 4903 2532 70 165 10942 8571 166 +16514 5534 750 5745 1568 11573 6789 11784 7607 +16515 6106 3130 4990 476 12145 9169 11029 6515 +16516 4452 1483 2395 4086 10491 7522 8434 10125 +16517 5687 1265 2796 2670 11726 7304 8835 8709 +16518 1205 3201 306 2938 7244 9240 6345 8977 +16519 1698 4763 941 3715 7737 10802 6980 9754 +16520 2265 4438 446 5497 8304 10477 6485 11536 +16521 4996 4578 4298 316 11035 10617 10337 6355 +16522 5627 3141 3638 1522 11666 9180 9677 7561 +16523 5847 4325 1356 6134 11886 10364 7395 12173 +16524 4834 2206 766 3660 10873 8245 6805 9699 +16525 396 5511 2360 5409 6435 11550 8399 11448 +16526 5509 1440 3913 3169 11548 7479 9952 9208 +16527 1637 4380 602 4411 7676 10419 6641 10450 +16528 5860 1681 870 256 11899 7720 6909 6295 +16529 4570 3908 3023 1066 10609 9947 9062 7105 +16530 1062 3139 452 6130 7101 9178 6491 12169 +16531 6095 2710 933 3503 12134 8749 6972 9542 +16532 3336 1895 689 4280 9375 7934 6728 10319 +16533 4896 3887 2719 682 10935 9926 8758 6721 +16534 6076 3358 4423 408 12115 9397 10462 6447 +16535 6076 1789 6044 3358 12115 7828 12083 9397 +16536 3843 1724 4225 4712 9882 7763 10264 10751 +16537 4294 1576 4013 4424 10333 7615 10052 10463 +16538 2043 5657 556 3781 8082 11696 6595 9820 +16539 3455 695 4401 2693 9494 6734 10440 8732 +16540 4525 1514 4227 3981 10564 7553 10266 10020 +16541 4342 1627 4450 4437 10381 7666 10489 10476 +16542 2269 6227 425 4425 8308 12266 6464 10464 +16543 5533 711 4080 5954 11572 6750 10119 11993 +16544 5686 3160 5780 1678 11725 9199 11819 7717 +16545 5686 928 3986 3160 11725 6967 10025 9199 +16546 1474 3289 625 5256 7513 9328 6664 11295 +16547 3806 2100 5120 5046 9845 8139 11159 11085 +16548 5126 3081 5089 3385 11165 9120 11128 9424 +16549 4542 4588 4288 4393 10581 10627 10327 10432 +16550 6107 3963 1042 3486 12146 10002 7081 9525 +16551 1893 2791 1046 4848 7932 8830 7085 10887 +16552 5900 3141 5627 952 11939 9180 11666 6991 +16553 82 81 2527 4940 178 177 8566 10979 +16554 5075 1263 3312 2972 11114 7302 9351 9011 +16555 5933 2278 934 3307 11972 8317 6973 9346 +16556 1931 3144 4211 5983 7970 9183 10250 12022 +16557 1561 5006 2111 5050 7600 11045 8150 11089 +16558 2708 5450 508 5836 8747 11489 6547 11875 +16559 1443 3880 6100 4625 7482 9919 12139 10664 +16560 4445 1621 4387 4128 10484 7660 10426 10167 +16561 5172 204 5881 914 11211 6243 11920 6953 +16562 1535 3722 283 4177 7574 9761 6322 10216 +16563 1668 4847 500 4181 7707 10886 6539 10220 +16564 1059 5182 2644 5431 7098 11221 8683 11470 +16565 4241 1566 4442 4487 10280 7605 10481 10526 +16566 1613 5482 2164 4662 7652 11521 8203 10701 +16567 5361 865 5461 3962 11400 6904 11500 10001 +16568 1536 5290 2262 3753 7575 11329 8301 9792 +16569 4048 319 4455 4815 10087 6358 10494 10854 +16570 3730 2034 6136 911 9769 8073 12175 6950 +16571 5094 3801 5909 403 11133 9840 11948 6442 +16572 2155 5004 984 5170 8194 11043 7023 11209 +16573 5954 4080 1279 2121 11993 10119 7318 8160 +16574 4191 1601 5259 3741 10230 7640 11298 9780 +16575 4410 659 4445 4264 10449 6698 10484 10303 +16576 2471 5705 416 5079 8510 11744 6455 11118 +16577 4397 4362 4454 1610 10436 10401 10493 7649 +16578 4813 3705 4023 364 10852 9744 10062 6403 +16579 3595 1222 4298 4723 9634 7261 10337 10762 +16580 72 4967 2650 73 168 11006 8689 169 +16581 2851 5793 903 5083 8890 11832 6942 11122 +16582 5100 2059 4095 5418 11139 8098 10134 11457 +16583 3163 6056 3467 984 9202 12095 9506 7023 +16584 1727 4412 2654 997 7766 10451 8693 7036 +16585 1718 4421 680 4644 7757 10460 6719 10683 +16586 5230 1867 4277 3250 11269 7906 10316 9289 +16587 709 4564 987 2747 6748 10603 7026 8786 +16588 738 5122 1284 3426 6777 11161 7323 9465 +16589 2323 5760 2005 1100 8362 11799 8044 7139 +16590 5968 1799 6213 3187 12007 7838 12252 9226 +16591 4976 704 2152 4284 11015 6743 8191 10323 +16592 1175 4732 1668 4181 7214 10771 7707 10220 +16593 5816 3170 5364 906 11855 9209 11403 6945 +16594 5064 3470 3678 1157 11103 9509 9717 7196 +16595 2847 4909 1643 5322 8886 10948 7682 11361 +16596 5820 1642 4958 3607 11859 7681 10997 9646 +16597 2245 4194 1556 5087 8284 10233 7595 11126 +16598 4718 3837 4522 656 10757 9876 10561 6695 +16599 5047 3538 2166 892 11086 9577 8205 6931 +16600 6004 931 2193 3766 12043 6970 8232 9805 +16601 6198 1083 3162 1399 12237 7122 9201 7438 +16602 5650 4458 1201 1797 11689 10497 7240 7836 +16603 4882 3918 3990 4324 10921 9957 10029 10363 +16604 4245 4584 4487 4442 10284 10623 10526 10481 +16605 473 4089 1832 5592 6512 10128 7871 11631 +16606 5843 1822 6067 3277 11882 7861 12106 9316 +16607 5843 3277 4295 729 11882 9316 10334 6768 +16608 6029 340 2912 3186 12068 6379 8951 9225 +16609 4395 1634 4245 4410 10434 7673 10284 10449 +16610 4395 4410 4264 1582 10434 10449 10303 7621 +16611 4486 1093 3134 3005 10525 7132 9173 9044 +16612 286 4021 1719 4581 6325 10060 7758 10620 +16613 2427 5517 1598 4715 8466 11556 7637 10754 +16614 5220 1525 5701 3501 11259 7564 11740 9540 +16615 4887 3812 2672 1459 10926 9851 8711 7498 +16616 4341 820 2786 5800 10380 6859 8825 11839 +16617 5555 977 2259 3034 11594 7016 8298 9073 +16618 4609 3472 5441 346 10648 9511 11480 6385 +16619 5815 2496 1259 3825 11854 8535 7298 9864 +16620 79 78 2701 5029 175 174 8740 11068 +16621 2604 1232 3963 5814 8643 7271 10002 11853 +16622 4226 374 4712 4225 10265 6413 10751 10264 +16623 5032 3562 3561 1570 11071 9601 9600 7609 +16624 1717 5254 1935 5653 7756 11293 7974 11692 +16625 1621 4445 659 4334 7660 10484 6698 10373 +16626 5943 264 4029 3902 11982 6303 10068 9941 +16627 991 6199 4973 3211 7030 12238 11012 9250 +16628 5426 1551 3323 3324 11465 7590 9362 9363 +16629 5862 2915 2197 913 11901 8954 8236 6952 +16630 2164 5363 2106 756 8203 11402 8145 6795 +16631 5659 216 5198 2738 11698 6255 11237 8777 +16632 4610 1569 4424 4013 10649 7608 10463 10052 +16633 4013 653 3462 4610 10052 6692 9501 10649 +16634 5093 2204 211 3505 11132 8243 6250 9544 +16635 62 61 5447 5757 158 157 11486 11796 +16636 1928 3987 435 5874 7967 10026 6474 11913 +16637 796 3471 1304 5135 6835 9510 7343 11174 +16638 4521 1548 4167 4099 10560 7587 10206 10138 +16639 4583 3998 4057 1680 10622 10037 10096 7719 +16640 4598 3983 4720 1139 10637 10022 10759 7178 +16641 5342 3603 1193 2182 11381 9642 7232 8221 +16642 2274 5022 687 5897 8313 11061 6726 11936 +16643 1596 4708 681 3998 7635 10747 6720 10037 +16644 4230 5510 2438 1522 10269 11549 8477 7561 +16645 5524 427 5862 2297 11563 6466 11901 8336 +16646 5870 3216 3403 1229 11909 9255 9442 7268 +16647 4775 1563 3907 3876 10814 7602 9946 9915 +16648 4775 3876 6154 627 10814 9915 12193 6666 +16649 5430 451 4322 3575 11469 6490 10361 9614 +16650 2449 3929 982 5312 8488 9968 7021 11351 +16651 2281 5460 1375 5021 8320 11499 7414 11060 +16652 6155 3604 5525 651 12194 9643 11564 6690 +16653 4355 5446 5805 2387 10394 11485 11844 8426 +16654 5034 1741 5434 4843 11073 7780 11473 10882 +16655 734 3841 1652 4977 6773 9880 7691 11016 +16656 4352 1656 4256 4588 10391 7695 10295 10627 +16657 1627 4405 658 4450 7666 10444 6697 10489 +16658 5658 3861 813 2498 11697 9900 6852 8537 +16659 4580 1726 256 2198 10619 7765 6295 8237 +16660 5169 2422 244 3610 11208 8461 6283 9649 +16661 4384 2931 6096 223 10423 8970 12135 6262 +16662 4843 1890 2528 5034 10882 7929 8567 11073 +16663 4084 1396 2898 4593 10123 7435 8937 10632 +16664 4925 5257 4562 3509 10964 11296 10601 9548 +16665 4692 4439 2075 721 10731 10478 8114 6760 +16666 4299 4123 4609 1417 10338 10162 10648 7456 +16667 696 4612 2048 5417 6735 10651 8087 11456 +16668 6083 3231 5589 1946 12122 9270 11628 7985 +16669 5585 3429 5520 1156 11624 9468 11559 7195 +16670 6047 1199 3257 3234 12086 7238 9296 9273 +16671 5060 1339 5362 3513 11099 7378 11401 9552 +16672 4632 1196 3872 3873 10671 7235 9911 9912 +16673 1610 4328 351 4437 7649 10367 6390 10476 +16674 6095 3503 5610 358 12134 9542 11649 6397 +16675 5351 3039 3489 626 11390 9078 9528 6665 +16676 4405 4393 4288 658 10444 10432 10327 6697 +16677 4393 4405 4506 1619 10432 10444 10545 7658 +16678 1174 4171 775 3288 7213 10210 6814 9327 +16679 5677 616 2859 4957 11716 6655 8898 10996 +16680 5261 1865 6234 3435 11300 7904 12273 9474 +16681 98 5111 2513 99 194 11150 8552 195 +16682 1889 4983 1402 5844 7928 11022 7441 11883 +16683 742 5579 2524 4863 6781 11618 8563 10902 +16684 3640 815 2923 5302 9679 6854 8962 11341 +16685 946 6126 2302 5688 6985 12165 8341 11727 +16686 101 5125 2836 102 197 11164 8875 198 +16687 5506 1040 2009 3592 11545 7079 8048 9631 +16688 1178 4853 230 3772 7217 10892 6269 9811 +16689 3865 2286 1021 5070 9904 8325 7060 11109 +16690 1962 5119 201 4139 8001 11158 6240 10178 +16691 6200 3760 5122 1914 12239 9799 11161 7953 +16692 55 3504 2060 5715 151 9543 8099 11754 +16693 388 4402 1904 5777 6427 10441 7943 11816 +16694 2681 6074 1196 5773 8720 12113 7235 11812 +16695 4004 6147 2257 639 10043 12186 8296 6678 +16696 3808 1480 3268 4840 9847 7519 9307 10879 +16697 4891 880 3194 5611 10930 6919 9233 11650 +16698 5904 2931 4846 736 11943 8970 10885 6775 +16699 4364 1621 4334 4444 10403 7660 10373 10483 +16700 899 5059 5112 1801 6938 11098 11151 7840 +16701 6153 1281 3225 4737 12192 7320 9264 10776 +16702 4072 368 5078 5394 10111 6407 11117 11433 +16703 5747 2617 1202 5037 11786 8656 7241 11076 +16704 4437 351 4202 4342 10476 6390 10241 10381 +16705 5425 1608 4101 3394 11464 7647 10140 9433 +16706 3661 369 3211 4973 9700 6408 9250 11012 +16707 1136 3989 2119 3786 7175 10028 8158 9825 +16708 2428 6047 343 4165 8467 12086 6382 10204 +16709 1566 4334 659 4442 7605 10373 6698 10481 +16710 4848 3763 2551 1172 10887 9802 8590 7211 +16711 6112 3284 4289 1509 12151 9323 10328 7548 +16712 5766 2154 2788 5374 11805 8193 8827 11413 +16713 4084 4593 4926 1589 10123 10632 10965 7628 +16714 344 4638 1823 4557 6383 10677 7862 10596 +16715 685 5487 1866 4752 6724 11526 7905 10791 +16716 5716 2433 4684 5854 11755 8472 10723 11893 +16717 5184 366 4281 4187 11223 6405 10320 10226 +16718 5074 722 5017 3950 11113 6761 11056 9989 +16719 658 4288 1667 4526 6697 10327 7706 10565 +16720 5593 3689 1536 2450 11632 9728 7575 8489 +16721 660 5916 1820 3743 6699 11955 7859 9782 +16722 5971 1706 5289 3947 12010 7745 11328 9986 +16723 3563 784 3725 5149 9602 6823 9764 11188 +16724 6117 4076 2912 340 12156 10115 8951 6379 +16725 1814 4813 364 4576 7853 10852 6403 10615 +16726 3329 1411 2642 5704 9368 7450 8681 11743 +16727 1609 4328 1610 4454 7648 10367 7649 10493 +16728 631 5871 2238 4766 6670 11910 8277 10805 +16729 3285 3782 1764 2234 9324 9821 7803 8273 +16730 5796 3314 5328 359 11835 9353 11367 6398 +16731 5687 5987 2159 2012 11726 12026 8198 8051 +16732 1949 3430 468 4122 7988 9469 6507 10161 +16733 1781 5417 2048 4651 7820 11456 8087 10690 +16734 4935 4452 3387 672 10974 10491 9426 6711 +16735 3494 5266 54 53 9533 11305 150 149 +16736 4132 4730 4708 1596 10171 10769 10747 7635 +16737 3324 1552 3770 3325 9363 7591 9809 9364 +16738 5163 3570 5320 898 11202 9609 11359 6937 +16739 757 4533 1585 5025 6796 10572 7624 11064 +16740 4002 5944 2032 2564 10041 11983 8071 8603 +16741 5785 2784 1442 4852 11824 8823 7481 10891 +16742 4360 650 4364 4444 10399 6689 10403 10483 +16743 6186 3307 934 1953 12225 9346 6973 7992 +16744 660 4676 2988 4137 6699 10715 9027 10176 +16745 1648 3716 1112 5443 7687 9755 7151 11482 +16746 6145 3310 3158 314 12184 9349 9197 6353 +16747 3846 6057 4636 337 9885 12096 10675 6376 +16748 2066 6062 877 5221 8105 12101 6916 11260 +16749 1538 4505 1662 4323 7577 10544 7701 10362 +16750 5020 3671 2646 533 11059 9710 8685 6572 +16751 5556 3386 1173 2309 11595 9425 7212 8348 +16752 2142 4881 1116 5383 8181 10920 7155 11422 +16753 5607 1730 3902 3800 11646 7769 9941 9839 +16754 1425 4994 760 3688 7464 11033 6799 9727 +16755 3331 345 3547 5877 9370 6384 9586 11916 +16756 4909 2847 2848 1127 10948 8886 8887 7166 +16757 5528 3829 859 3830 11567 9868 6898 9869 +16758 4941 541 5362 3804 10980 6580 11401 9843 +16759 4898 1941 5247 5548 10937 7980 11286 11587 +16760 6156 4831 1449 3004 12195 10870 7488 9043 +16761 1306 4312 2022 3867 7345 10351 8061 9906 +16762 698 5821 1323 3590 6737 11860 7362 9629 +16763 225 3811 1586 4986 6264 9850 7625 11025 +16764 684 4460 1655 4459 6723 10499 7694 10498 +16765 4868 1813 3983 4598 10907 7852 10022 10637 +16766 4506 4294 4424 650 10545 10333 10463 6689 +16767 4347 3915 4857 1338 10386 9954 10896 7377 +16768 4826 3914 4001 619 10865 9953 10040 6658 +16769 710 5072 1725 5767 6749 11111 7764 11806 +16770 3800 3902 4029 1453 9839 9941 10068 7492 +16771 833 5263 2481 6110 6872 11302 8520 12149 +16772 4694 1399 3162 4163 10733 7438 9201 10202 +16773 1745 4705 262 4055 7784 10744 6301 10094 +16774 5691 1687 5769 3404 11730 7726 11808 9443 +16775 5691 3404 5082 718 11730 9443 11121 6757 +16776 4397 1610 4437 4450 10436 7649 10476 10489 +16777 4283 1316 689 1895 10322 7355 6728 7934 +16778 5981 2291 382 3655 12020 8330 6421 9694 +16779 4192 4770 5653 1935 10231 10809 11692 7974 +16780 1453 4475 2525 4279 7492 10514 8564 10318 +16781 520 3374 1708 5724 6559 9413 7747 11763 +16782 5299 5723 2397 1500 11338 11762 8436 7539 +16783 4322 886 5950 4928 10361 6925 11989 10967 +16784 4905 2369 662 4463 10944 8408 6701 10502 +16785 2255 4150 732 5529 8294 10189 6771 11568 +16786 5874 3346 772 1928 11913 9385 6811 7967 +16787 5938 3344 4120 1378 11977 9383 10159 7417 +16788 4175 2215 689 1316 10214 8254 6728 7355 +16789 4958 2318 905 4124 10997 8357 6944 10163 +16790 2203 3823 2489 5009 8242 9862 8528 11048 +16791 4831 3882 2834 1449 10870 9921 8873 7488 +16792 5463 4039 6037 2953 11502 10078 12076 8992 +16793 1887 5975 4120 3344 7926 12014 10159 9383 +16794 5229 3568 2293 259 11268 9607 8332 6298 +16795 4613 2146 5961 642 10652 8185 12000 6681 +16796 5520 3429 5480 1373 11559 9468 11519 7412 +16797 6049 255 4711 3961 12088 6294 10750 10000 +16798 5150 3613 13 12 11189 9652 109 108 +16799 5909 3801 1325 1700 11948 9840 7364 7739 +16800 4542 4241 4487 4493 10581 10280 10526 10532 +16801 4714 891 1724 3838 10753 6930 7763 9877 +16802 5182 1908 5980 5750 11221 7947 12019 11789 +16803 30 5309 3681 31 126 11348 9720 127 +16804 6222 3615 5654 769 12261 9654 11693 6808 +16805 5087 1556 5395 4652 11126 7595 11434 10691 +16806 4608 4356 4701 1518 10647 10395 10740 7557 +16807 4868 4598 5326 1698 10907 10637 11365 7737 +16808 1224 3365 765 5941 7263 9404 6804 11980 +16809 289 5459 1772 3786 6328 11498 7811 9825 +16810 445 5589 3231 4110 6484 11628 9270 10149 +16811 1699 4711 255 3835 7738 10750 6294 9874 +16812 603 3551 1439 5276 6642 9590 7478 11315 +16813 4982 3752 5331 257 11021 9791 11370 6296 +16814 6130 3897 1842 1062 12169 9936 7881 7101 +16815 2126 2557 298 4974 8165 8596 6337 11013 +16816 1444 4464 1888 4413 7483 10503 7927 10452 +16817 5932 900 4195 4115 11971 6939 10234 10154 +16818 3166 6174 1077 5339 9205 12213 7116 11378 +16819 4526 4397 4450 658 10565 10436 10489 6697 +16820 2282 5491 1056 4403 8321 11530 7095 10442 +16821 5792 2293 1349 4068 11831 8332 7388 10107 +16822 4826 1560 4433 3914 10865 7599 10472 9953 +16823 6197 3534 6067 1822 12236 9573 12106 7861 +16824 696 5417 1781 5811 6735 11456 7820 11850 +16825 4078 4689 920 2249 10117 10728 6959 8288 +16826 1504 5091 797 3866 7543 11130 6836 9905 +16827 5283 1280 4191 3741 11322 7319 10230 9780 +16828 3903 4956 5240 5602 9942 10995 11279 11641 +16829 5651 1252 3083 4020 11690 7291 9122 10059 +16830 5651 4020 3795 1841 11690 10059 9834 7880 +16831 4812 1207 5787 4106 10851 7246 11826 10145 +16832 5020 3850 2957 1505 11059 9889 8996 7544 +16833 4459 4493 4487 4584 10498 10532 10526 10623 +16834 5363 2164 5482 755 11402 8203 11521 6794 +16835 4947 1945 5190 4441 10986 7984 11229 10480 +16836 5273 3701 468 2692 11312 9740 6507 8731 +16837 342 5127 1900 6104 6381 11166 7939 12143 +16838 6019 3385 3290 1465 12058 9424 9329 7504 +16839 4379 4627 4036 5519 10418 10666 10075 11558 +16840 5796 2153 800 4204 11835 8192 6839 10243 +16841 1547 4224 574 4582 7586 10263 6613 10621 +16842 5926 2511 2989 1557 11965 8550 9028 7596 +16843 5866 3397 6077 2380 11905 9436 12116 8419 +16844 1619 4506 650 4360 7658 10545 6689 10399 +16845 4354 745 4159 1849 10393 6784 10198 7888 +16846 1942 4910 1746 4631 7981 10949 7785 10670 +16847 6236 292 2584 3393 12275 6331 8623 9432 +16848 6236 3393 4600 1778 12275 9432 10639 7817 +16849 1078 3788 2575 5420 7117 9827 8614 11459 +16850 5275 3856 2792 606 11314 9895 8831 6645 +16851 2830 1501 3044 5694 8869 7540 9083 11733 +16852 2226 5130 1574 5131 8265 11169 7613 11170 +16853 64 5419 3163 65 160 11458 9202 161 +16854 2352 4253 1156 5520 8391 10292 7195 11559 +16855 5695 1450 5172 914 11734 7489 11211 6953 +16856 5579 1712 4332 2524 11618 7751 10371 8563 +16857 5761 559 5607 3800 11800 6598 11646 9839 +16858 6063 3467 4462 4111 12102 9506 10501 10150 +16859 656 4522 1582 4365 6695 10561 7621 10404 +16860 3818 5425 3394 410 9857 11464 9433 6449 +16861 663 4232 1434 4720 6702 10271 7473 10759 +16862 2347 6079 3830 859 8386 12118 9869 6898 +16863 1541 5290 782 3596 7580 11329 6821 9635 +16864 4288 4588 4256 4567 10327 10627 10295 10606 +16865 4033 2956 678 6229 10072 8995 6717 12268 +16866 91 90 3483 5449 187 186 9522 11488 +16867 4038 2113 751 5473 10077 8152 6790 11512 +16868 4116 4069 5670 1635 10155 10108 11709 7674 +16869 5687 4135 4672 1265 11726 10174 10711 7304 +16870 1698 5326 609 4763 7737 11365 6648 10802 +16871 5014 826 2197 2915 11053 6865 8236 8954 +16872 4963 4237 1084 2386 11002 10276 7123 8425 +16873 5097 1683 4170 3735 11136 7722 10209 9774 +16874 4888 6005 2616 3123 10927 12044 8655 9162 +16875 4015 4794 2644 260 10054 10833 8683 6299 +16876 5453 1679 4378 3851 11492 7718 10417 9890 +16877 5811 5470 4603 696 11850 11509 10642 6735 +16878 2572 6031 902 4290 8611 12070 6941 10329 +16879 685 5968 3187 4471 6724 12007 9226 10510 +16880 3887 4896 3820 1507 9926 10935 9859 7546 +16881 1405 5516 3169 4196 7444 11555 9208 10235 +16882 4365 1615 2533 4664 10404 7654 8572 10703 +16883 6138 1707 812 3762 12177 7746 6851 9801 +16884 6100 3446 2252 356 12139 9485 8291 6395 +16885 5673 846 4391 4046 11712 6885 10430 10085 +16886 4890 4488 2681 1026 10929 10527 8720 7065 +16887 4526 1620 4362 4397 10565 7659 10401 10436 +16888 5318 1553 4462 4027 11357 7592 10501 10066 +16889 736 4846 1772 5187 6775 10885 7811 11226 +16890 3983 1813 4105 5644 10022 7852 10144 11683 +16891 5644 663 4720 3983 11683 6702 10759 10022 +16892 1457 5052 924 4242 7496 11091 6963 10281 +16893 6073 3428 4215 566 12112 9467 10254 6605 +16894 706 3973 1885 5656 6745 10012 7924 11695 +16895 5994 1015 5261 3435 12033 7054 11300 9474 +16896 4459 1655 4352 4493 10498 7694 10391 10532 +16897 5768 263 1289 3232 11807 6302 7328 9271 +16898 4804 4026 4535 1810 10843 10065 10574 7849 +16899 4878 2008 5012 4065 10917 8047 11051 10104 +16900 3916 1804 3221 3220 9955 7843 9260 9259 +16901 5046 674 4784 3806 11085 6713 10823 9845 +16902 3640 1275 4646 4304 9679 7314 10685 10343 +16903 1718 4952 1844 4717 7757 10991 7883 10756 +16904 5460 3910 5713 1375 11499 9949 11752 7414 +16905 5355 439 5820 3607 11394 6478 11859 9646 +16906 4805 1721 5860 3594 10844 7760 11899 9633 +16907 5934 1078 2252 3446 11973 7117 8291 9485 +16908 4388 686 2227 4617 10427 6725 8266 10656 +16909 5538 1481 3857 3535 11577 7520 9896 9574 +16910 6189 436 4546 3490 12228 6475 10585 9529 +16911 6189 3490 4773 1779 12228 9529 10812 7818 +16912 5654 1671 3514 2573 11693 7710 9553 8612 +16913 4620 1962 1017 5313 10659 8001 7056 11352 +16914 5300 338 3126 1500 11339 6377 9165 7539 +16915 511 5805 2688 5665 6550 11844 8727 11704 +16916 5668 4404 1258 2863 11707 10443 7297 8902 +16917 1227 5514 257 3554 7266 11553 6296 9593 +16918 678 5972 1272 3450 6717 12011 7311 9489 +16919 3959 1545 2784 5785 9998 7584 8823 11824 +16920 5775 5371 4889 209 11814 11410 10928 6248 +16921 5494 2574 389 4221 11533 8613 6428 10260 +16922 5745 2149 749 3476 11784 8188 6788 9515 +16923 4954 1200 2332 4006 10993 7239 8371 10045 +16924 1801 3692 270 4079 7840 9731 6309 10118 +16925 3446 6100 3880 1693 9485 12139 9919 7732 +16926 4145 1038 2910 2909 10184 7077 8949 8948 +16927 4267 3304 2602 810 10306 9343 8641 6849 +16928 5196 5340 6022 2080 11235 11379 12061 8119 +16929 665 5754 1164 3585 6704 11793 7203 9624 +16930 3910 5460 2281 872 9949 11499 8320 6911 +16931 4000 6036 2252 737 10039 12075 8291 6776 +16932 5208 2435 5848 921 11247 8474 11887 6960 +16933 2393 1477 2536 4997 8432 7516 8575 11036 +16934 5697 1685 3055 3697 11736 7724 9094 9736 +16935 1507 3820 2643 5066 7546 9859 8682 11105 +16936 4682 939 5107 4702 10721 6978 11146 10741 +16937 5334 3684 1591 2614 11373 9723 7630 8653 +16938 4063 1036 2211 4865 10102 7075 8250 10904 +16939 4985 649 4349 4244 11024 6688 10388 10283 +16940 5568 5195 5468 4519 11607 11234 11507 10558 +16941 2471 5382 948 5705 8510 11421 6987 11744 +16942 6145 2491 1278 3802 12184 8530 7317 9841 +16943 666 6032 1700 4007 6705 12071 7739 10046 +16944 1652 5377 946 4048 7691 11416 6985 10087 +16945 1644 5594 626 3489 7683 11633 6665 9528 +16946 5089 5140 272 2089 11128 11179 6311 8128 +16947 5089 3081 3087 5140 11128 9120 9126 11179 +16948 4352 4588 4542 4493 10391 10627 10581 10532 +16949 2260 5377 1166 5000 8299 11416 7205 11039 +16950 5834 3495 4680 429 11873 9534 10719 6468 +16951 5747 713 4276 3997 11786 6752 10315 10036 +16952 5104 3970 5095 1747 11143 10009 11134 7786 +16953 4873 2039 2829 5852 10912 8078 8868 11891 +16954 5399 3736 841 2051 11438 9775 6880 8090 +16955 6074 2294 3872 1196 12113 8333 9911 7235 +16956 566 4215 2880 5509 6605 10254 8919 11548 +16957 6197 792 1649 3534 12236 6831 7688 9573 +16958 5513 1027 4578 2404 11552 7066 10617 8443 +16959 1997 5688 2302 3527 8036 11727 8341 9566 +16960 6076 2450 5174 5223 12115 8489 11213 11262 +16961 5128 2175 900 5932 11167 8214 6939 11971 +16962 5956 285 5034 2528 11995 6324 11073 8567 +16963 5461 2419 4802 1707 11500 8458 10841 7746 +16964 1893 5429 1401 4037 7932 11468 7440 10076 +16965 5892 4057 3998 681 11931 10096 10037 6720 +16966 3592 1543 5359 5506 9631 7582 11398 11545 +16967 5441 3472 4285 861 11480 9511 10324 6900 +16968 820 5424 1503 4009 6859 11463 7542 10048 +16969 5755 3520 2182 515 11794 9559 8221 6554 +16970 383 4656 1844 4952 6422 10695 7883 10991 +16971 5602 3561 3562 1037 11641 9600 9601 7076 +16972 5830 497 5164 357 11869 6536 11203 6396 +16973 3701 5273 3150 1879 9740 11312 9189 7918 +16974 444 4406 4461 1657 6483 10445 10500 7696 +16975 458 3579 1369 5542 6497 9618 7408 11581 +16976 4108 386 2697 5666 10147 6425 8736 11705 +16977 5081 3087 986 5822 11120 9126 7025 11861 +16978 6184 345 4755 3481 12223 6384 10794 9520 +16979 2033 4586 339 4389 8072 10625 6378 10428 +16980 2210 5101 1365 3864 8249 11140 7404 9903 +16981 4545 1602 4535 5503 10584 7641 10574 11542 +16982 3986 5709 40 39 10025 11748 136 135 +16983 6045 4585 3332 506 12084 10624 9371 6545 +16984 286 4581 1797 4466 6325 10620 7836 10505 +16985 2083 4748 2255 3949 8122 10787 8294 9988 +16986 1581 5816 906 3719 7620 11855 6945 9758 +16987 3684 5334 6014 2004 9723 11373 12053 8043 +16988 4451 5332 4912 637 10490 11371 10951 6676 +16989 1675 4540 1660 4547 7714 10579 7699 10586 +16990 789 5930 1935 5254 6828 11969 7974 11293 +16991 3648 5423 4576 1476 9687 11462 10615 7515 +16992 5447 2277 2885 5757 11486 8316 8924 11796 +16993 5867 3522 4639 308 11906 9561 10678 6347 +16994 1970 3985 1097 3098 8009 10024 7136 9137 +16995 5763 3541 2768 502 11802 9580 8807 6541 +16996 473 6101 2054 5264 6512 12140 8093 11303 +16997 6146 2066 4590 4346 12185 8105 10629 10385 +16998 5353 1588 5851 3702 11392 7627 11890 9741 +16999 6128 4519 5468 3568 12167 10558 11507 9607 +17000 373 5141 2253 4867 6412 11180 8292 10906 +17001 484 5410 1751 5036 6523 11449 7790 11075 +17002 5133 2272 964 4130 11172 8311 7003 10169 +17003 398 5392 1994 5113 6437 11431 8033 11152 +17004 963 3904 1762 5622 7002 9943 7801 11661 +17005 5891 1689 2317 3549 11930 7728 8356 9588 +17006 5278 6121 3537 1889 11317 12160 9576 7928 +17007 894 5469 1944 3464 6933 11508 7983 9503 +17008 861 4484 1927 5441 6900 10523 7966 11480 +17009 5392 4162 5295 1994 11431 10201 11334 8033 +17010 5030 493 2576 3114 11069 6532 8615 9153 +17011 5856 390 4025 4056 11895 6429 10064 10095 +17012 4915 717 3735 4170 10954 6756 9774 10209 +17013 1196 4632 2766 5773 7235 10671 8805 11812 +17014 5686 1678 5430 3575 11725 7717 11469 9614 +17015 1465 5557 379 3990 7504 11596 6418 10029 +17016 1543 3592 212 5605 7582 9631 6251 11644 +17017 4817 787 2570 4172 10856 6826 8609 10211 +17018 9 5933 3307 10 105 11972 9346 106 +17019 5815 3899 4599 2741 11854 9938 10638 8780 +17020 1333 4577 2421 3502 7372 10616 8460 9541 +17021 451 5430 2284 3677 6490 11469 8323 9716 +17022 1825 3563 4625 5849 7864 9602 10664 11888 +17023 1772 5190 1945 5187 7811 11229 7984 11226 +17024 6231 3523 4238 395 12270 9562 10277 6434 +17025 68 6082 4903 69 164 12121 10942 165 +17026 4256 5360 5039 4567 10295 11399 11078 10606 +17027 5878 4065 5012 1560 11917 10104 11051 7599 +17028 2500 5576 2138 4338 8539 11615 8177 10377 +17029 5544 484 4851 3840 11583 6523 10890 9879 +17030 5285 1223 2321 3790 11324 7262 8360 9829 +17031 4365 4664 3508 656 10404 10703 9547 6695 +17032 19 6143 3912 20 115 12182 9951 116 +17033 6069 393 2654 1630 12108 6432 8693 7669 +17034 4816 1976 4647 5236 10855 8015 10686 11275 +17035 42 41 3510 2160 138 137 9549 8199 +17036 3867 453 6192 5707 9906 6492 12231 11746 +17037 768 5349 1742 3739 6807 11388 7781 9778 +17038 4283 1895 3336 4916 10322 7934 9375 10955 +17039 4228 4777 3117 560 10267 10816 9156 6599 +17040 733 5045 1666 5161 6772 11084 7705 11200 +17041 3629 5106 4069 830 9668 11145 10108 6869 +17042 5891 3797 4018 258 11930 9836 10057 6297 +17043 5415 1387 4357 1987 11454 7426 10396 8026 +17044 3604 5690 3483 1073 9643 11729 9522 7112 +17045 4875 2250 5173 951 10914 8289 11212 6990 +17046 3891 2648 2647 707 9930 8687 8686 6746 +17047 2828 5319 2381 1722 8867 11358 8420 7761 +17048 2237 5871 631 4129 8276 11910 6670 10168 +17049 3596 2017 2472 5749 9635 8056 8511 11788 +17050 622 5621 1635 5670 6661 11660 7674 11709 +17051 711 5136 2674 4080 6750 11175 8713 10119 +17052 4376 4681 4251 652 10415 10720 10290 6691 +17053 1732 4053 1169 4435 7771 10092 7208 10474 +17054 6069 4066 4633 1579 12108 10105 10672 7618 +17055 6061 4120 5975 794 12100 10159 12014 6833 +17056 5285 3790 5794 1625 11324 9829 11833 7664 +17057 5300 1500 2397 1499 11339 7539 8436 7538 +17058 5588 1111 5423 3648 11627 7150 11462 9687 +17059 5843 3581 4119 1822 11882 9620 10158 7861 +17060 4158 4844 481 1826 10197 10883 6520 7865 +17061 3996 1070 5150 5581 10035 7109 11189 11620 +17062 5581 2579 443 3996 11620 8618 6482 10035 +17063 5637 840 2117 2118 11676 6879 8156 8157 +17064 5039 5360 4939 2176 11078 11399 10978 8215 +17065 5540 3751 1285 2392 11579 9790 7324 8431 +17066 4324 4654 939 1919 10363 10693 6978 7958 +17067 4092 5132 2234 1764 10131 11171 8273 7803 +17068 1652 3841 1166 5377 7691 9880 7205 11416 +17069 5216 684 4459 4584 11255 6723 10498 10623 +17070 6190 3562 5032 585 12229 9601 11071 6624 +17071 3824 5022 3655 1858 9863 11061 9694 7897 +17072 1963 5090 450 3924 8002 11129 6489 9963 +17073 1699 3835 1045 5168 7738 9874 7084 11207 +17074 5052 1873 4933 3946 11091 7912 10972 9985 +17075 5865 1574 2361 4113 11904 7613 8400 10152 +17076 1720 3723 1211 5341 7759 9762 7250 11380 +17077 6004 3766 759 1923 12043 9805 6798 7962 +17078 5747 5037 2461 713 11786 11076 8500 6752 +17079 1667 4624 1828 5010 7706 10663 7867 11049 +17080 1827 4626 1578 5028 7866 10665 7617 11067 +17081 5569 2777 2776 371 11608 8816 8815 6410 +17082 5301 3855 2132 295 11340 9894 8171 6334 +17083 625 4218 2141 5256 6664 10257 8180 11295 +17084 5358 2264 783 3955 11397 8303 6822 9994 +17085 2183 4965 219 4071 8222 11004 6258 10110 +17086 5958 3768 5695 2123 11997 9807 11734 8162 +17087 6217 1918 6033 3671 12256 7957 12072 9710 +17088 4864 2074 2075 6142 10903 8113 8114 12181 +17089 6209 2052 670 3627 12248 8091 6709 9666 +17090 5736 776 6168 4083 11775 6815 12207 10122 +17091 742 4863 1676 6013 6781 10902 7715 12052 +17092 5960 3856 5275 1686 11999 9895 11314 7725 +17093 6225 3602 5228 425 12264 9641 11267 6464 +17094 6225 1792 5135 3602 12264 7831 11174 9641 +17095 5443 2490 476 4990 11482 8529 6515 11029 +17096 4740 863 5438 2664 10779 6902 11477 8703 +17097 5298 4119 3581 1245 11337 10158 9620 7284 +17098 5513 2404 6120 3021 11552 8443 12159 9060 +17099 5574 611 5026 3897 11613 6650 11065 9936 +17100 6212 3360 4520 743 12251 9399 10559 6782 +17101 4755 1798 2461 5037 10794 7837 8500 11076 +17102 5101 1242 3770 4060 11140 7281 9809 10099 +17103 4603 1540 5566 6041 10642 7579 11605 12080 +17104 5726 787 4817 2727 11765 6826 10856 8766 +17105 4395 352 4835 1634 10434 6391 10874 7673 +17106 5531 3809 2819 929 11570 9848 8858 6968 +17107 3689 5593 3194 2096 9728 11632 9233 8135 +17108 6146 4346 5562 495 12185 10385 11601 6534 +17109 6121 2678 1127 3537 12160 8717 7166 9576 +17110 3716 5551 5758 331 9755 11590 11797 6370 +17111 6178 1387 5415 3631 12217 7426 11454 9670 +17112 5926 702 1819 2511 11965 6741 7858 8550 +17113 5346 1996 6166 4621 11385 8035 12205 10660 +17114 5692 3633 6043 1132 11731 9672 12082 7171 +17115 828 4771 1843 5224 6867 10810 7882 11263 +17116 531 4849 1597 4209 6570 10888 7636 10248 +17117 6038 3608 1051 2087 12077 9647 7090 8126 +17118 5844 1402 5036 3931 11883 7441 11075 9970 +17119 1957 4214 1147 5325 7996 10253 7186 11364 +17120 4976 4284 764 2067 11015 10323 6803 8106 +17121 6012 3613 5150 1070 12051 9652 11189 7109 +17122 5751 3663 2144 655 11790 9702 8183 6694 +17123 586 4850 1534 4219 6625 10889 7573 10258 +17124 6027 1490 2866 1350 12066 7529 8905 7389 +17125 5985 833 5347 3618 12024 6872 11386 9657 +17126 5513 2657 4580 1027 11552 8696 10619 7066 +17127 5644 3695 2516 663 11683 9734 8555 6702 +17128 5832 4176 2844 1385 11871 10215 8883 7424 +17129 1799 5765 3336 6213 7838 11804 9375 12252 +17130 6183 1681 1406 2344 12222 7720 7445 8383 +17131 3701 1879 4476 5639 9740 7918 10515 11678 +17132 4660 4152 5186 1817 10699 10191 11225 7856 +17133 5068 1951 2798 5518 11107 7990 8837 11557 +17134 1631 5079 416 5572 7670 11118 6455 11611 +17135 5098 1642 4954 4006 11137 7681 10993 10045 +17136 5098 4006 2332 486 11137 10045 8371 6525 +17137 352 4395 1582 4759 6391 10434 7621 10798 +17138 4906 3383 4907 363 10945 9422 10946 6402 +17139 1423 4551 2358 4798 7462 10590 8397 10837 +17140 4231 4893 4463 662 10270 10932 10502 6701 +17141 4977 1652 4048 4815 11016 7691 10087 10854 +17142 4839 1055 4123 4299 10878 7094 10162 10338 +17143 4012 2552 340 6029 10051 8591 6379 12068 +17144 4170 4911 2971 1605 10209 10950 9010 7644 +17145 6201 1710 6215 3674 12240 7749 12254 9713 +17146 2241 5250 459 5620 8280 11289 6498 11659 +17147 4862 1711 4872 4302 10901 7750 10911 10341 +17148 5856 3408 1881 390 11895 9447 7920 6429 +17149 683 4525 1709 5189 6722 10564 7748 11228 +17150 6101 4733 5869 2054 12140 10772 11908 8093 +17151 4908 3805 5596 2254 10947 9844 11635 8293 +17152 5326 3859 4374 609 11365 9898 10413 6648 +17153 4789 2037 5841 4318 10828 8076 11880 10357 +17154 804 4946 1840 4528 6843 10985 7879 10567 +17155 4796 1926 2930 2840 10835 7965 8969 8879 +17156 5317 389 4724 3822 11356 6428 10763 9861 +17157 5508 3128 1448 5546 11547 9167 7487 11585 +17158 5561 3760 6200 372 11600 9799 12239 6411 +17159 5278 703 4431 5279 11317 6742 10470 11318 +17160 6236 1778 6178 3631 12275 7817 12217 9670 +17161 4958 4124 2588 1134 10997 10163 8627 7173 +17162 5555 2500 6002 977 11594 8539 12041 7016 +17163 6236 3631 5536 292 12275 9670 11575 6331 +17164 4494 5700 3138 943 10533 11739 9177 6982 +17165 335 5240 1982 5203 6374 11279 8021 11242 +17166 5881 2094 4851 3553 11920 8133 10890 9592 +17167 1877 5911 2222 5683 7916 11950 8261 11722 +17168 207 4161 1756 5405 6246 10200 7795 11444 +17169 5518 2798 4490 1649 11557 8837 10529 7688 +17170 6111 3646 3217 596 12150 9685 9256 6635 +17171 456 5059 899 3556 6495 11098 6938 9595 +17172 5442 4297 735 2016 11481 10336 6774 8055 +17173 1866 5436 470 4913 7905 11475 6509 10952 +17174 5357 928 1868 5316 11396 6967 7907 11355 +17175 5357 5316 271 2240 11396 11355 6310 8279 +17176 5072 4130 964 2457 11111 10169 7003 8496 +17177 1845 5411 752 5001 7884 11450 6791 11040 +17178 5851 918 1992 3702 11890 6957 8031 9741 +17179 5088 2000 291 4504 11127 8039 6330 10543 +17180 2239 4735 866 6188 8278 10774 6905 12227 +17181 5522 2639 1260 4129 11561 8678 7299 10168 +17182 1318 5798 775 4171 7357 11837 6814 10210 +17183 4989 4787 5744 716 11028 10826 11783 6755 +17184 5229 5064 2614 1591 11268 11103 8653 7630 +17185 5362 1339 3915 4347 11401 7378 9954 10386 +17186 5638 3764 4249 1105 11677 9803 10288 7144 +17187 3030 5488 1475 5731 9069 11527 7514 11770 +17188 1913 4709 805 5255 7952 10748 6844 11294 +17189 1613 4786 1416 4286 7652 10825 7455 10325 +17190 6190 2292 1303 4259 12229 8331 7342 10298 +17191 1727 3099 1191 3100 7766 9138 7230 9139 +17192 5758 3875 2481 331 11797 9914 8520 6370 +17193 4569 5082 3153 1802 10608 11121 9192 7841 +17194 5082 4569 2253 718 11121 10608 8292 6757 +17195 2120 4341 1083 6198 8159 10380 7122 12237 +17196 4966 4371 5199 1708 11005 10410 11238 7747 +17197 4966 821 4543 4371 11005 6860 10582 10410 +17198 5964 274 5453 3851 12003 6313 11492 9890 +17199 6075 1925 4417 4370 12114 7964 10456 10409 +17200 5187 5060 3513 736 11226 11099 9552 6775 +17201 2098 5642 3032 4420 8137 11681 9071 10459 +17202 5389 4211 3144 1285 11428 10250 9183 7324 +17203 652 4953 1704 4376 6691 10992 7743 10415 +17204 2165 5384 1699 5168 8204 11423 7738 11207 +17205 5600 1784 5302 2923 11639 7823 11341 8962 +17206 5742 26 25 3831 11781 122 121 9870 +17207 5742 3831 867 2081 11781 9870 6906 8120 +17208 5440 209 4889 2943 11479 6248 10928 8982 +17209 1224 3921 651 5296 7263 9960 6690 11335 +17210 1585 5323 380 5025 7624 11362 6419 11064 +17211 5845 1970 5149 3725 11884 8009 11188 9764 +17212 6084 4426 5613 1461 12123 10465 11652 7500 +17213 5959 2947 2970 1039 11998 8986 9009 7078 +17214 5564 2497 945 4074 11603 8536 6984 10113 +17215 5269 45 44 3941 11308 141 140 9980 +17216 669 5731 1475 3709 6708 11770 7514 9748 +17217 4485 2985 1113 6191 10524 9024 7152 12230 +17218 2019 4968 1509 4289 8058 11007 7548 10328 +17219 6201 3674 4097 635 12240 9713 10136 6674 +17220 4692 721 6074 2681 10731 6760 12113 8720 +17221 1172 5429 1893 4848 7211 11468 7932 10887 +17222 4431 1899 4154 5279 10470 7938 10193 11318 +17223 1883 5553 2054 5869 7922 11592 8093 11908 +17224 5595 4495 3123 1523 11634 10534 9162 7562 +17225 335 5203 1715 4203 6374 11242 7754 10242 +17226 5669 280 2745 5218 11708 6319 8784 11257 +17227 4385 654 4343 4841 10424 6693 10382 10880 +17228 1903 4704 1570 4703 7942 10743 7609 10742 +17229 5800 3122 1083 4341 11839 9161 7122 10380 +17230 738 5668 1914 5122 6777 11707 7953 11161 +17231 773 3738 1379 6050 6812 9777 7418 12089 +17232 6117 3685 3905 1460 12156 9724 9944 7499 +17233 5412 1046 2237 3583 11451 7085 8276 9622 +17234 2373 4961 202 3569 8412 11000 6241 9608 +17235 4961 2373 4280 689 11000 8412 10319 6728 +17236 4051 2797 1998 5682 10090 8836 8037 11721 +17237 2768 4236 632 6027 8807 10275 6671 12066 +17238 4974 298 2852 2853 11013 6337 8891 8892 +17239 1565 5897 4348 6160 7604 11936 10387 12199 +17240 5809 4895 3875 1748 11848 10934 9914 7787 +17241 5669 4131 4959 1690 11708 10170 10998 7729 +17242 6147 4004 3080 1393 12186 10043 9119 7432 +17243 1070 3975 1837 6012 7109 10014 7876 12051 +17244 2495 5620 459 5378 8534 11659 6498 11417 +17245 5978 1999 5845 3725 12017 8038 11884 9764 +17246 6000 1594 4575 3514 12039 7633 10614 9553 +17247 4563 5124 4478 254 10602 11163 10517 6293 +17248 1103 2242 3670 3769 7142 8281 9709 9808 +17249 5999 868 6187 3676 12038 6907 12226 9715 +17250 4666 5435 4415 1464 10705 11474 10454 7503 +17251 1903 4203 2861 5041 7942 10242 8900 11080 +17252 3815 4917 5717 2200 9854 10956 11756 8239 +17253 3711 467 4807 6065 9750 6506 10846 12104 +17254 5372 2271 4185 5486 11411 8310 10224 11525 +17255 5372 5486 2114 785 11411 11525 8153 6824 +17256 5944 4002 4148 829 11983 10041 10187 6868 +17257 6121 1344 2787 2678 12160 7383 8826 8717 +17258 5683 4637 3572 1877 11722 10676 9611 7916 +17259 4353 4461 4406 962 10392 10500 10445 7001 +17260 5072 710 5133 4130 11111 6749 11172 10169 +17261 2028 4523 259 4783 8067 10562 6298 10822 +17262 5530 243 4894 4558 11569 6282 10933 10597 +17263 1577 4938 2093 4937 7616 10977 8132 10976 +17264 5610 5074 3950 2186 11649 11113 9989 8225 +17265 5074 5610 3503 1777 11113 11649 9542 7816 +17266 1753 3826 226 5157 7792 9865 6265 11196 +17267 4460 4461 4353 1655 10499 10500 10392 7694 +17268 2531 5376 424 6089 8570 11415 6463 12128 +17269 4705 1745 4046 4391 10744 7784 10085 10430 +17270 5197 2070 5345 6203 11236 8109 11384 12242 +17271 6165 645 4359 3976 12204 6684 10398 10015 +17272 1918 5390 232 6033 7957 11429 6271 12072 +17273 5619 4207 570 2554 11658 10246 6609 8593 +17274 5794 3790 2321 277 11833 9829 8360 6316 +17275 5053 4337 3146 1458 11092 10376 9185 7497 +17276 2188 5076 1410 4180 8227 11115 7449 10219 +17277 5594 2937 3372 626 11633 8976 9411 6665 +17278 5366 4658 4366 1074 11405 10697 10405 7113 +17279 4658 5366 3780 1920 10697 11405 9819 7959 +17280 4300 4737 4816 5236 10339 10776 10855 11275 +17281 5236 701 2438 4300 11275 6740 8477 10339 +17282 2765 1026 2766 4688 8804 7065 8805 10727 +17283 4354 1849 4146 997 10393 7888 10185 7036 +17284 5010 355 5910 1620 11049 6394 11949 7659 +17285 6139 5156 1338 2547 12178 11195 7377 8586 +17286 5239 4265 3958 1531 11278 10304 9997 7570 +17287 4244 1590 2505 4985 10283 7629 8544 11024 +17288 4448 4449 5797 1640 10487 10488 11836 7679 +17289 4438 1445 4103 4908 10477 7484 10142 10947 +17290 5533 5954 5380 2477 11572 11993 11419 8516 +17291 833 6110 2480 5347 6872 12149 8519 11386 +17292 4469 4876 4378 1679 10508 10915 10417 7718 +17293 6234 1865 841 3736 12273 7904 6880 9775 +17294 6030 2675 4234 1045 12069 8714 10273 7084 +17295 1602 4803 1810 4535 7641 10842 7849 10574 +17296 1605 4250 605 4993 7644 10289 6644 11032 +17297 6149 1133 4064 5587 12188 7172 10103 11626 +17298 5562 4346 4590 1314 11601 10385 10629 7353 +17299 2325 3771 280 6108 8364 9810 6319 12147 +17300 4011 1428 4706 4484 10050 7467 10745 10523 +17301 4585 5801 1756 3332 10624 11840 7795 9371 +17302 5044 1646 3779 4291 11083 7685 9818 10330 +17303 2263 5215 795 5969 8302 11254 6834 12008 +17304 5971 3947 460 2663 12010 9986 6499 8702 +17305 6085 1881 838 3355 12124 7920 6877 9394 +17306 671 4508 1495 4456 6710 10547 7534 10495 +17307 2091 5335 1488 5963 8130 11374 7527 12002 +17308 5384 440 3250 4277 11423 6479 9289 10316 +17309 4768 3761 3236 646 10807 9800 9275 6685 +17310 5152 2371 2329 623 11191 8410 8368 6662 +17311 5735 3976 4359 1755 11774 10015 10398 7794 +17312 4701 4009 2477 1518 10740 10048 8516 7557 +17313 5385 377 5095 3970 11424 6416 11134 10009 +17314 5432 1496 3477 4317 11471 7535 9516 10356 +17315 1989 5291 716 4034 8028 11330 6755 10073 +17316 5292 2465 5517 592 11331 8504 11556 6631 +17317 5097 4251 4252 1683 11136 10290 10291 7722 +17318 4251 5097 4531 652 10290 11136 10570 6691 +17319 5795 5998 5577 4335 11834 12037 11616 10374 +17320 5795 4335 3368 888 11834 10374 9407 6927 +17321 5508 5546 2285 228 11547 11585 8324 6267 +17322 6099 633 3120 4101 12138 6672 9159 10140 +17323 4465 1648 3130 5490 10504 7687 9169 11529 +17324 4467 2135 218 4468 10506 8174 6257 10507 +17325 5555 3491 5576 2500 11594 9530 11615 8539 +17326 5798 2451 1048 3842 11837 8490 7087 9881 +17327 5574 3897 6130 1930 11613 9936 12169 7969 +17328 4072 5394 3218 1622 10111 11433 9257 7661 +17329 5311 4177 283 2047 11350 10216 6322 8086 +17330 4027 63 62 5318 10066 159 158 11357 +17331 5952 3808 5550 808 11991 9847 11589 6847 +17332 1735 5401 486 4743 7774 11440 6525 10782 +17333 3868 5335 2091 910 9907 11374 8130 6949 +17334 5124 1600 2537 4478 11163 7639 8576 10517 +17335 2299 5355 1134 4058 8338 11394 7173 10097 +17336 6086 1682 3817 4262 12125 7721 9856 10301 +17337 4670 1477 2393 4669 10709 7516 8432 10708 +17338 1768 5784 2377 5641 7807 11823 8416 11680 +17339 4053 1732 5988 5986 10092 7771 12027 12025 +17340 651 3921 1774 6155 6690 9960 7813 12194 +17341 4946 2071 6116 5706 10985 8110 12155 11745 +17342 2008 5915 249 5012 8047 11954 6288 11051 +17343 5738 4117 4214 1957 11777 10156 10253 7996 +17344 5991 2193 931 3934 12030 8232 6970 9973 +17345 4816 4737 3225 249 10855 10776 9264 6288 +17346 2042 5114 1097 4201 8081 11153 7136 10240 +17347 987 4472 3696 3113 7026 10511 9735 9152 +17348 5219 4631 4574 726 11258 10670 10613 6765 +17349 1940 5063 1685 5017 7979 11102 7724 11056 +17350 5482 1613 4286 4741 11521 7652 10325 10780 +17351 5657 1901 4148 4002 11696 7940 10187 10041 +17352 6165 1738 2562 3883 12204 7777 8601 9922 +17353 1532 5152 4778 2465 7571 11191 10817 8504 +17354 5965 4500 4581 1719 12004 10539 10620 7758 +17355 1640 4821 1008 4448 7679 10860 7047 10487 +17356 1841 3795 1865 6163 7880 9834 7904 12202 +17357 4614 4641 5886 1838 10653 10680 11925 7877 +17358 1856 5381 894 3464 7895 11420 6933 9503 +17359 6179 1418 3783 3799 12218 7457 9822 9838 +17360 711 5533 1503 4378 6750 11572 7542 10417 +17361 5554 1944 4757 4399 11593 7983 10796 10438 +17362 5559 816 2324 2577 11598 6855 8363 8616 +17363 1739 824 2217 4210 7778 6863 8256 10249 +17364 4727 3931 5036 1751 10766 9970 11075 7790 +17365 6196 3175 610 1971 12235 9214 6649 8010 +17366 1489 5755 2793 4615 7528 11794 8832 10654 +17367 5854 2023 2803 5716 11893 8062 8842 11755 +17368 1628 4447 2190 5099 7667 10486 8229 11138 +17369 2480 4110 1227 5347 8519 10149 7266 11386 +17370 5504 1633 5361 3962 11543 7672 11400 10001 +17371 5353 4073 3007 1588 11392 10112 9046 7627 +17372 6152 4470 912 3920 12191 10509 6951 9959 +17373 2167 4654 379 5558 8206 10693 6418 11597 +17374 4129 631 2968 5522 10168 6670 9007 11561 +17375 5680 3898 5869 4733 11719 9937 11908 10772 +17376 837 4934 2028 5421 6876 10973 8067 11460 +17377 4741 2064 755 5482 10780 8103 6794 11521 +17378 6132 410 3394 3862 12171 6449 9433 9901 +17379 5468 3991 2685 1349 11507 10030 8724 7388 +17380 1560 5012 249 4433 7599 11051 6288 10472 +17381 1544 5806 2061 4517 7583 11845 8100 10556 +17382 5205 4705 4391 1508 11244 10744 10430 7547 +17383 1769 5167 303 4599 7808 11206 6342 10638 +17384 1026 2765 3747 4890 7065 8804 9786 10929 +17385 5260 4127 3893 1568 11299 10166 9932 7607 +17386 5641 447 3340 3964 11680 6486 9379 10003 +17387 1461 5613 1796 4240 7500 11652 7835 10279 +17388 4865 265 3537 4063 10904 6304 9576 10102 +17389 962 4939 1656 4353 7001 10978 7695 10392 +17390 4833 2338 5719 1951 10872 8377 11758 7990 +17391 621 3895 1084 4883 6660 9934 7123 10922 +17392 672 4453 1575 4935 6711 10492 7614 10974 +17393 6015 1812 5563 5680 12054 7851 11602 11719 +17394 4101 1608 3816 6099 10140 7647 9855 12138 +17395 4357 1387 2590 869 10396 7426 8629 6908 +17396 4992 4574 4960 1747 11031 10613 10999 7786 +17397 4140 1567 2606 5635 10179 7606 8645 11674 +17398 5925 3900 5545 774 11964 9939 11584 6813 +17399 2057 6191 1113 5049 8096 12230 7152 11088 +17400 4004 639 4168 4829 10043 6678 10207 10868 +17401 4316 5085 4776 1684 10355 11124 10815 7723 +17402 5999 4082 2062 868 12038 10121 8101 6907 +17403 1674 3972 1055 4839 7713 10011 7094 10878 +17404 4894 243 5196 817 10933 6282 11235 6856 +17405 2282 4403 576 4886 8321 10442 6615 10925 +17406 723 5199 4371 6175 6762 11238 10410 12214 +17407 6174 3964 3340 1077 12213 10003 9379 7116 +17408 1629 5788 2065 3994 7668 11827 8104 10033 +17409 1654 4469 710 5143 7693 10508 6749 11182 +17410 2820 4114 627 6154 8859 10153 6666 12193 +17411 346 4532 2067 6068 6385 10571 8106 12107 +17412 5373 1050 2452 4174 11412 7089 8491 10213 +17413 1601 5748 2508 3154 7640 11787 8547 9193 +17414 5381 6239 3534 1649 11420 12278 9573 7688 +17415 1780 5294 1424 5304 7819 11333 7463 11343 +17416 5375 1637 4594 4100 11414 7676 10633 10139 +17417 5395 819 4653 4652 11434 6858 10692 10691 +17418 5249 4173 3872 2005 11288 10212 9911 8044 +17419 338 4102 1950 4964 6377 10141 7989 11003 +17420 5697 3950 5017 1685 11736 9989 11056 7724 +17421 676 5304 1424 4153 6715 11343 7463 10192 +17422 5668 738 5882 4404 11707 6777 11921 10443 +17423 2814 4287 2436 5970 8853 10326 8475 12009 +17424 412 4400 1947 5946 6451 10439 7986 11985 +17425 1966 5214 511 5601 8005 11253 6550 11640 +17426 4544 1982 5240 4956 10583 8021 11279 10995 +17427 5155 403 1877 3572 11194 6442 7916 9611 +17428 346 6068 4258 3121 6385 12107 10297 9160 +17429 5908 3334 2072 630 11947 9373 8111 6669 +17430 5270 5737 5175 471 11309 11776 11214 6510 +17431 4503 5437 2717 1478 10542 11476 8756 7517 +17432 4970 4969 871 2694 11009 11008 6910 8733 +17433 6038 4455 319 3608 12077 10494 6358 9647 +17434 2003 6081 1239 3884 8042 12120 7278 9923 +17435 4728 5570 2487 878 10767 11609 8526 6917 +17436 5660 3976 5735 1137 11699 10015 11774 7176 +17437 1825 5811 1781 3932 7864 11850 7820 9971 +17438 2551 4332 1712 5171 8590 10371 7751 11210 +17439 5637 2118 1926 756 11676 8157 7965 6795 +17440 5503 1980 4671 4545 11542 8019 10710 10584 +17441 5783 1808 3176 771 11822 7847 9215 6810 +17442 5465 983 2533 4566 11504 7022 8572 10605 +17443 652 4531 1981 4953 6691 10570 8020 10992 +17444 6205 5818 5113 1994 12244 11857 11152 8033 +17445 2027 4901 487 5160 8066 10940 6526 11199 +17446 1758 5900 952 4758 7797 11939 6991 10797 +17447 5612 6224 4266 297 11651 12263 10305 6336 +17448 5215 1632 4565 4273 11254 7671 10604 10312 +17449 5392 398 4730 4132 11431 6437 10769 10171 +17450 6223 4852 1442 2229 12262 10891 7481 8268 +17451 6223 3412 5785 4852 12262 9451 11824 10891 +17452 6019 1465 3990 3918 12058 7504 10029 9957 +17453 4358 2568 807 4296 10397 8607 6846 10335 +17454 1800 4408 3075 5498 7839 10447 9114 11537 +17455 5785 3412 2561 3959 11824 9451 8600 9998 +17456 5604 2192 600 4527 11643 8231 6639 10566 +17457 6154 3876 3907 1331 12193 9915 9946 7370 +17458 5934 4972 1000 2279 11973 11011 7039 8318 +17459 2393 5733 724 4669 8432 11772 6763 10708 +17460 6174 1768 5641 3964 12213 7807 11680 10003 +17461 5640 1752 4794 4015 11679 7791 10833 10054 +17462 4739 4738 4281 366 10778 10777 10320 6405 +17463 3986 1835 3510 5709 10025 7874 9549 11748 +17464 5216 1634 4835 2363 11255 7673 10874 8402 +17465 6191 2057 5007 4485 12230 8096 11046 10524 +17466 1630 2654 4412 6142 7669 8693 10451 12181 +17467 5010 1620 4526 1667 11049 7659 10565 7706 +17468 5208 4620 5313 2502 11247 10659 11352 8541 +17469 5208 1791 4587 4620 11247 7830 10626 10659 +17470 5191 592 5517 2427 11230 6631 11556 8466 +17471 6165 3883 2345 645 12204 9922 8384 6684 +17472 6097 4951 4961 689 12136 10990 11000 6728 +17473 5225 4801 2519 221 11264 10840 8558 6260 +17474 5990 683 5189 4039 12029 6722 11228 10078 +17475 5990 4039 5463 1790 12029 10078 11502 7829 +17476 4164 1742 6041 5566 10203 7781 12080 11605 +17477 5566 402 2070 4164 11605 6441 8109 10203 +17478 5942 4680 3105 1632 11981 10719 9144 7671 +17479 1786 5192 2047 4691 7825 11231 8086 10730 +17480 4960 4574 4631 1746 10999 10613 10670 7785 +17481 4984 1479 3490 4546 11023 7518 9529 10585 +17482 759 3766 2193 4959 6798 9805 8232 10998 +17483 6127 1883 5869 3898 12166 7922 11908 9937 +17484 2283 5675 806 5406 8322 11714 6845 11445 +17485 3829 5528 4970 526 9868 11567 11009 6565 +17486 3250 2056 5432 5230 9289 8095 11471 11269 +17487 5747 3997 4088 1549 11786 10036 10127 7588 +17488 5471 1663 4663 415 11510 7702 10702 6454 +17489 5894 4693 3293 2290 11933 10732 9332 8329 +17490 566 5516 2423 6073 6605 11555 8462 12112 +17491 2018 4568 2082 4980 8057 10607 8121 11019 +17492 5288 6204 6205 2031 11327 12243 12244 8070 +17493 1807 5248 1091 4629 7846 11287 7130 10668 +17494 1924 6056 3163 5419 7963 12095 9202 11458 +17495 5232 4330 5274 1289 11271 10369 11313 7328 +17496 668 3938 1705 5265 6707 9977 7744 11304 +17497 2520 5819 629 5809 8559 11858 6668 11848 +17498 4929 5653 4770 699 10968 11692 10809 6738 +17499 1543 4222 657 5359 7582 10261 6696 11398 +17500 1151 5825 1773 4137 7190 11864 7812 10176 +17501 725 5104 1747 4960 6764 11143 7786 10999 +17502 1976 4816 249 5915 8015 10855 6288 11954 +17503 4899 1824 5116 4772 10938 7863 11155 10811 +17504 5178 796 4674 4643 11217 6835 10713 10682 +17505 5178 4643 5842 1776 11217 10682 11881 7815 +17506 2165 4234 746 5880 8204 10273 6785 11919 +17507 1894 4992 1747 5095 7933 11031 7786 11134 +17508 744 4480 1921 5774 6783 10519 7960 11813 +17509 5767 774 4717 1844 11806 6813 10756 7883 +17510 6127 418 3246 5327 12166 6457 9285 11366 +17511 5687 2012 4943 4135 11726 8051 10982 10174 +17512 6069 1630 4439 4066 12108 7669 10478 10105 +17513 4051 5682 2640 435 10090 11721 8679 6474 +17514 5685 463 4641 4614 11724 6502 10680 10653 +17515 3846 2062 4390 6057 9885 8101 10429 12096 +17516 5625 1731 4052 4169 11664 7770 10091 10208 +17517 5856 1884 4856 3408 11895 7923 10895 9447 +17518 4845 726 4574 4992 10884 6765 10613 11031 +17519 4992 1894 5521 4845 11031 7933 11560 10884 +17520 4412 1727 3100 3101 10451 7766 9139 9140 +17521 5965 926 5650 4500 12004 6965 11689 10539 +17522 5094 2150 865 5361 11133 8189 6904 11400 +17523 2046 4668 641 4955 8085 10707 6680 10994 +17524 5722 4091 5254 1717 11761 10130 11293 7756 +17525 2000 5088 2245 5087 8039 11127 8284 11126 +17526 6068 2067 764 4258 12107 8106 6803 10297 +17527 2324 5774 1921 5138 8363 11813 7960 11177 +17528 4317 271 5230 5432 10356 6310 11269 11471 +17529 4256 1656 4939 5360 10295 7695 10978 11399 +17530 4928 1868 3575 4322 10967 7907 9614 10361 +17531 1356 3939 2196 6134 7395 9978 8235 12173 +17532 5044 4291 4700 901 11083 10330 10739 6940 +17533 5459 289 6138 3762 11498 6328 12177 9801 +17534 2908 6228 638 6093 8947 12267 6677 12132 +17535 5344 4829 4168 1673 11383 10868 10207 7712 +17536 5219 726 4845 4899 11258 6765 10884 10938 +17537 710 4469 1679 5133 6749 10508 7718 11172 +17538 4890 3747 5814 4488 10929 9786 11853 10527 +17539 1016 4383 2417 5234 7055 10422 8456 11273 +17540 5078 5077 3977 1623 11117 11116 10016 7662 +17541 5077 5078 368 2179 11116 11117 6407 8218 +17542 425 5228 2144 4425 6464 11267 8183 10464 +17543 4208 5447 61 60 10247 11486 157 156 +17544 4836 5204 3263 1561 10875 11243 9302 7600 +17545 2058 5265 1705 5139 8097 11304 7744 11178 +17546 466 3885 2516 5426 6505 9924 8555 11465 +17547 4296 3342 3870 1787 10335 9381 9909 7826 +17548 5087 4652 4653 2000 11126 10691 10692 8039 +17549 848 5911 1877 4491 6887 11950 7916 10530 +17550 1749 4323 1662 5307 7788 10362 7701 11346 +17551 438 5138 1921 5054 6477 11177 7960 11093 +17552 4799 5201 6098 697 10838 11240 12137 6736 +17553 4799 2317 1689 5201 10838 8356 7728 11240 +17554 6080 1336 5736 4083 12119 7375 11775 10122 +17555 4083 1816 3157 6080 10122 7855 9196 12119 +17556 1415 3745 969 4936 7454 9784 7008 10975 +17557 5294 1780 2288 5608 11333 7819 8327 11647 +17558 6002 6018 4907 977 12041 12057 10946 7016 +17559 743 6144 2420 5578 6782 12183 8459 11617 +17560 4856 5332 4451 1728 10895 11371 10490 7767 +17561 5827 653 4254 4041 11866 6692 10293 10080 +17562 5666 1806 4271 4108 11705 7845 10310 10147 +17563 4608 1518 2477 5380 10647 7557 8516 11419 +17564 779 5759 1833 6215 6818 11798 7872 12254 +17565 5722 401 4824 4091 11761 6440 10863 10130 +17566 5402 655 2144 4268 11441 6694 8183 10307 +17567 1494 4005 902 6031 7533 10044 6941 12070 +17568 4947 4441 3776 1644 10986 10480 9815 7683 +17569 5925 774 5767 1725 11964 6813 11806 7764 +17570 5566 1540 4000 5476 11605 7579 10039 11515 +17571 5566 5476 2453 402 11605 11515 8492 6441 +17572 5752 944 3026 2013 11791 6983 9065 8052 +17573 6152 4495 5595 643 12191 10534 11634 6682 +17574 4924 741 6001 4591 10963 6780 12040 10630 +17575 2234 5132 959 5253 8273 11171 6998 11292 +17576 6192 453 2581 3452 12231 6492 8620 9491 +17577 2007 5323 1585 4791 8046 11362 7624 10830 +17578 5115 6024 5601 1965 11154 12063 11640 8004 +17579 1882 5115 1965 5356 7921 11154 8004 11395 +17580 4189 5895 5598 1327 10228 11934 11637 7366 +17581 5895 4189 4326 1803 11934 10228 10365 7842 +17582 2095 5828 1413 4683 8134 11867 7452 10722 +17583 3245 5935 592 5191 9284 11974 6631 11230 +17584 5801 4120 6061 1756 11840 10159 12100 7795 +17585 5060 3748 3915 1339 11099 9787 9954 7378 +17586 3395 5973 3528 610 9434 12012 9567 6649 +17587 1974 2602 512 5884 8013 8641 6551 11923 +17588 4000 1540 4645 6036 10039 7579 10684 12075 +17589 1593 5083 903 3624 7632 11122 6942 9663 +17590 5489 818 4892 5227 11528 6857 10931 11266 +17591 3769 989 2371 5492 9808 7028 8410 11531 +17592 5634 5684 3690 378 11673 11723 9729 6417 +17593 1862 5707 6192 2905 7901 11746 12231 8944 +17594 4759 1694 4607 6162 10798 7733 10646 12201 +17595 5936 4672 4135 730 11975 10711 10174 6769 +17596 4726 1437 3155 5145 10765 7476 9194 11184 +17597 1058 5645 2280 5617 7097 11684 8319 11656 +17598 359 5328 1776 5842 6398 11367 7815 11881 +17599 2471 781 3113 5382 8510 6820 9152 11421 +17600 5571 4729 2569 583 11610 10768 8608 6622 +17601 5030 6097 689 2215 11069 12136 6728 8254 +17602 2420 6144 1558 5738 8459 12183 7597 11777 +17603 2071 4946 804 5439 8110 10985 6843 11478 +17604 5706 426 3514 4575 11745 6465 9553 10614 +17605 5548 4560 3039 1168 11587 10599 9078 7207 +17606 4563 1959 5827 5124 10602 7998 11866 11163 +17607 1973 5058 1882 5233 8012 11097 7921 11272 +17608 4230 354 4505 5510 10269 6393 10544 11549 +17609 5892 1617 4281 4057 11931 7656 10320 10096 +17610 5617 2280 605 4250 11656 8319 6644 10289 +17611 6135 292 5536 4699 12174 6331 11575 10738 +17612 4065 5878 2553 893 10104 11917 8592 6932 +17613 6011 5204 4836 1938 12050 11243 10875 7977 +17614 4888 2002 3920 4734 10927 8041 9959 10773 +17615 4435 5901 5989 1732 10474 11940 12028 7771 +17616 5104 725 4413 4597 11143 6764 10452 10636 +17617 4106 5787 5744 2015 10145 11826 11783 8054 +17618 2331 4055 262 6064 8370 10094 6301 12103 +17619 748 4427 2140 5268 6787 10466 8179 11307 +17620 6239 225 6067 3534 12278 6264 12106 9573 +17621 4138 1770 5159 2463 10177 7809 11198 8502 +17622 2463 437 5151 4138 8502 6476 11190 10177 +17623 5127 4248 3668 1900 11166 10287 9707 7939 +17624 5388 2633 942 4408 11427 8672 6981 10447 +17625 2115 4982 257 5514 8154 11021 6296 11553 +17626 4361 6238 3750 542 10400 12277 9789 6581 +17627 6169 4211 5389 1869 12208 10250 11428 7908 +17628 748 5699 1834 4427 6787 11738 7873 10466 +17629 464 5112 4942 3413 6503 11151 10981 9452 +17630 4961 4951 4050 202 11000 10990 10089 6241 +17631 4977 4815 4455 1977 11016 10854 10494 8016 +17632 5695 3768 2261 1450 11734 9807 8300 7489 +17633 4874 3814 3230 1195 10913 9853 9269 7234 +17634 852 3781 1975 5271 6891 9820 8014 11310 +17635 4932 5055 5913 2251 10971 11094 11952 8290 +17636 5828 4111 5917 1413 11867 10150 11956 7452 +17637 2185 6045 1833 5759 8224 12084 7872 11798 +17638 5810 1831 2725 5976 11849 7870 8764 12015 +17639 2057 5049 675 4745 8096 11088 6714 10784 +17640 5628 1421 6049 3961 11667 7460 12088 10000 +17641 5243 4489 3068 325 11282 10528 9107 6364 +17642 2240 5778 1835 5357 8279 11817 7874 11396 +17643 6058 4707 4054 247 12097 10746 10093 6286 +17644 1847 5904 736 3513 7886 11943 6775 9552 +17645 4347 1785 3804 5362 10386 7824 9843 11401 +17646 359 5842 1861 4750 6398 11881 7900 10789 +17647 1315 5343 370 5212 7354 11382 6409 11251 +17648 6115 5294 5608 2181 12154 11333 11647 8220 +17649 4534 5241 2940 492 10573 11280 8979 6531 +17650 1039 2970 1038 4159 7078 9009 7077 10198 +17651 4113 297 4266 5865 10152 6336 10305 11904 +17652 907 4316 1547 6129 6946 10355 7586 12168 +17653 4915 4993 5206 1907 10954 11032 11245 7946 +17654 4993 4915 4170 1605 11032 10954 10209 7644 +17655 6074 721 1100 2294 12113 6760 7139 8333 +17656 837 5421 1839 5370 6876 11460 7878 11409 +17657 4932 676 3540 5055 10971 6715 9579 11094 +17658 802 5115 1882 5058 6841 11154 7921 11097 +17659 2126 5884 512 2557 8165 11923 6551 8596 +17660 4573 4372 4156 1432 10612 10411 10195 7471 +17661 2061 6102 220 4517 8100 12141 6259 10556 +17662 4717 5739 4421 1718 10756 11778 10460 7757 +17663 5920 1143 6086 4262 11959 7182 12125 10301 +17664 1844 4656 1654 5143 7883 10695 7693 11182 +17665 4991 875 2367 4975 11030 6914 8406 11014 +17666 4975 1818 3117 4991 11014 7857 9156 11030 +17667 5674 759 4959 4131 11713 6798 10998 10170 +17668 5554 4399 4118 1550 11593 10438 10157 7589 +17669 4924 4591 3291 1359 10963 10630 9330 7398 +17670 6202 4350 938 2301 12241 10389 6977 8340 +17671 5772 214 4052 5451 11811 6253 10091 11490 +17672 5216 4584 4245 1634 11255 10623 10284 7673 +17673 4408 1800 3368 5388 10447 7839 9407 11427 +17674 2616 266 2789 5177 8655 6305 8828 11216 +17675 6035 1089 3473 4623 12074 7128 9512 10662 +17676 6229 2304 1653 4033 12268 8343 7692 10072 +17677 5136 4876 4469 1654 11175 10915 10508 7693 +17678 5952 2364 279 4428 11991 8403 6318 10467 +17679 1385 4149 614 5832 7424 10188 6653 11871 +17680 6233 4633 4066 229 12272 10672 10105 6268 +17681 2191 5331 1834 5699 8230 11370 7873 11738 +17682 5728 2106 5422 1471 11767 8145 11461 7510 +17683 1710 5116 1824 4722 7749 11155 7863 10761 +17684 627 4114 1262 5940 6666 10153 7301 11979 +17685 1905 4592 559 5761 7944 10631 6598 11800 +17686 6177 4875 2484 499 12216 10914 8523 6538 +17687 1823 4638 1481 5538 7862 10677 7520 11577 +17688 6212 1988 535 3360 12251 8027 6574 9399 +17689 6160 4348 1328 1854 12199 10387 7367 7893 +17690 269 4832 2210 4263 6308 10871 8249 10302 +17691 4696 3073 630 5008 10735 9112 6669 11047 +17692 5986 478 4917 4053 12025 6517 10956 10092 +17693 5679 5217 2283 405 11718 11256 8322 6444 +17694 5217 5679 2668 2129 11256 11718 8707 8168 +17695 2553 5878 1560 4826 8592 11917 7599 10865 +17696 5344 1673 6064 4788 11383 7712 12103 10827 +17697 1779 4773 688 5213 7818 10812 6727 11252 +17698 6023 799 4100 4594 12062 6838 10139 10633 +17699 1697 5118 294 6141 7736 11157 6333 12180 +17700 4963 1688 4007 4922 11002 7727 10046 10961 +17701 5445 1942 4631 5219 11484 7981 10670 11258 +17702 2307 4835 352 5710 8346 10874 6391 11749 +17703 6063 4111 5828 1702 12102 10150 11867 7741 +17704 2128 5213 688 4754 8167 11252 6727 10793 +17705 2193 5991 604 4622 8232 12030 6643 10661 +17706 1803 4326 1422 5857 7842 10365 7461 11896 +17707 1593 3624 487 4901 7632 9663 6526 10940 +17708 5920 4262 3817 601 11959 10301 9856 6640 +17709 5676 795 5215 4273 11715 6834 11254 10312 +17710 1757 5442 264 5145 7796 11481 6303 11184 +17711 1906 5268 2140 5727 7945 11307 8179 11766 +17712 1803 5663 2408 5895 7842 11702 8447 11934 +17713 5157 5147 2311 1753 11196 11186 8350 7792 +17714 2655 5892 681 4767 8694 11931 6720 10806 +17715 5282 4719 2543 1628 11321 10758 8582 7667 +17716 5864 1891 4176 5832 11903 7930 10215 11871 +17717 5026 1806 5666 5073 11065 7845 11705 11112 +17718 5073 1842 3897 5026 11112 7881 9936 11065 +17719 1849 4145 320 4146 7888 10184 6359 10185 +17720 2015 5744 2285 5546 8054 11783 8324 11585 +17721 5658 1444 4862 4302 11697 7483 10901 10341 +17722 2140 5879 2439 4193 8179 11918 8478 10232 +17723 5303 847 1979 4858 11342 6886 8018 10897 +17724 5823 4538 5485 1686 11862 10577 11524 7725 +17725 719 4704 1903 5041 6758 10743 7942 11080 +17726 5367 4811 2964 1846 11406 10850 9003 7885 +17727 4811 5367 5353 362 10850 11406 11392 6401 +17728 5543 691 5615 4679 11582 6730 11654 10718 +17729 2223 4333 1331 5626 8262 10372 7370 11665 +17730 5344 1231 4004 4829 11383 7270 10043 10868 +17731 5720 4087 2648 940 11759 10126 8687 6979 +17732 5219 4899 4772 1896 11258 10938 10811 7935 +17733 1997 5568 753 5023 8036 11607 6792 11062 +17734 5586 2987 1598 4778 11625 9026 7637 10817 +17735 5867 2464 1530 4382 11906 8503 7569 10421 +17736 2607 4375 644 5585 8646 10414 6683 11624 +17737 5572 978 3345 3871 11611 7017 9384 9910 +17738 6211 582 3669 1253 12250 6621 9708 7292 +17739 4883 1084 4237 5042 10922 7123 10276 11081 +17740 3005 5936 730 4486 9044 11975 6769 10525 +17741 792 6197 1822 4119 6831 12236 7861 10158 +17742 5224 1843 5588 5071 11263 7882 11627 11110 +17743 6192 3452 3030 1611 12231 9491 9069 7650 +17744 5624 2042 4330 5232 11663 8081 10369 11271 +17745 2243 5910 355 4793 8282 11949 6394 10832 +17746 1578 4749 2220 5272 7617 10788 8259 11311 +17747 4926 6023 4594 1589 10965 12062 10633 7628 +17748 5670 4069 5106 1716 11709 10108 11145 7755 +17749 2152 5901 764 4284 8191 11940 6803 10323 +17750 1660 4540 1999 4989 7699 10579 8038 11028 +17751 4645 1540 4603 5470 10684 7579 10642 11509 +17752 5282 2156 1231 5110 11321 8195 7270 11149 +17753 4317 3477 762 5778 10356 9516 6801 11817 +17754 2930 1926 2118 4534 8969 7965 8157 10573 +17755 1382 5599 5292 2414 7421 11638 11331 8453 +17756 1132 6043 2754 4642 7171 12082 8793 10681 +17757 271 5316 1867 5230 6310 11355 7906 11269 +17758 5947 4436 2460 1206 11986 10475 8499 7245 +17759 6032 666 5108 3265 12071 6705 11147 9304 +17760 6169 853 5983 4211 12208 6892 12022 10250 +17761 4730 398 2626 6123 10769 6437 8665 12162 +17762 4189 1327 3671 6033 10228 7366 9710 12072 +17763 5590 4639 4392 1749 11629 10678 10431 7788 +17764 1366 4226 1979 6233 7405 10265 8018 12272 +17765 6115 761 5295 4162 12154 6800 11334 10201 +17766 5950 1699 5384 4277 11989 7738 11423 10316 +17767 6081 5155 3572 1239 12120 11194 9611 7278 +17768 5568 1997 3527 5195 11607 8036 9566 11234 +17769 5937 4366 432 1869 11976 10405 6471 7908 +17770 1987 5536 3631 5415 8026 11575 9670 11454 +17771 6121 5278 5279 1344 12160 11317 11318 7383 +17772 1760 5054 1921 5038 7799 11093 7960 11077 +17773 6132 4771 828 2287 12171 10810 6867 8326 +17774 5783 1663 5471 1808 11822 7702 11510 7847 +17775 1946 4544 714 6083 7985 10583 6753 12122 +17776 4973 6199 2861 2084 11012 12238 8900 8123 +17777 5978 4787 4989 1999 12017 10826 11028 8038 +17778 4787 5978 4502 1506 10826 12017 10541 7545 +17779 4669 2341 419 4670 10708 8380 6458 10709 +17780 929 4309 367 5531 6968 10348 6406 11570 +17781 2138 5576 628 5753 8177 11615 6667 11792 +17782 5630 897 2908 5404 11669 6936 8947 11443 +17783 1853 5433 220 4223 7892 11472 6259 10262 +17784 1859 4220 1858 5560 7898 10259 7897 11599 +17785 4313 6173 3589 381 10352 12212 9628 6420 +17786 676 4932 1780 5304 6715 10971 7819 11343 +17787 6186 1953 5581 5150 12225 7992 11620 11189 +17788 4822 811 4022 5955 10861 6850 10061 11994 +17789 4612 696 4603 6041 10651 6735 10642 12080 +17790 1846 5222 1969 5367 7885 11261 8008 11406 +17791 5158 636 5282 5110 11197 6675 11321 11149 +17792 4409 729 4295 5671 10448 6768 10334 11710 +17793 1796 6182 2993 6181 7835 12221 9032 12220 +17794 5847 304 4074 4325 11886 6343 10113 10364 +17795 5282 636 3676 4719 11321 6675 9715 10758 +17796 6175 4465 5490 723 12214 10504 11529 6762 +17797 6175 1929 5551 4465 12214 7968 11590 10504 +17798 1020 5310 2037 4789 7059 11349 8076 10828 +17799 585 5032 2649 5103 6624 11071 8688 11142 +17800 5503 4535 4026 275 11542 10574 10065 6314 +17801 3413 4942 2693 694 9452 10981 8732 6733 +17802 4366 5937 2558 1074 10405 11976 8597 7113 +17803 384 6007 1986 4869 6423 12046 8025 10908 +17804 5346 5328 3314 1996 11385 11367 9353 8035 +17805 5328 5346 2807 1776 11367 11385 8846 7815 +17806 6097 5030 3114 1305 12136 11069 9153 7344 +17807 4412 3101 4864 6142 10451 9140 10903 12181 +17808 1660 4989 716 5291 7699 11028 6755 11330 +17809 1555 4919 576 4356 7594 10958 6615 10395 +17810 5186 4677 2313 1817 11225 10716 8352 7856 +17811 5648 1555 4356 4608 11687 7594 10395 10647 +17812 4805 3594 2247 695 10844 9633 8286 6734 +17813 6038 1308 1977 4455 12077 7347 8016 10494 +17814 2947 5959 803 6171 8986 11998 6842 12210 +17815 2061 5740 2510 6102 8100 11779 8549 12141 +17816 779 4722 1824 5521 6818 10761 7863 11560 +17817 5568 4519 3684 753 11607 10558 9723 6792 +17818 2766 1026 2681 5773 8805 7065 8720 11812 +17819 5683 670 2052 4637 11722 6709 8091 10676 +17820 4422 1809 5175 5737 10461 7848 11214 11776 +17821 5426 3324 3325 466 11465 9363 9364 6505 +17822 448 5799 2609 4394 6487 11838 8648 10433 +17823 1778 4228 2589 6178 7817 10267 8628 12217 +17824 3920 2002 4495 6152 9959 8041 10534 12191 +17825 1715 5203 1982 4944 7754 11242 8021 10983 +17826 4740 2664 6026 1672 10779 8703 12065 7711 +17827 3710 5945 1103 6157 9749 11984 7142 12196 +17828 5764 1750 4675 4885 11803 7789 10714 10924 +17829 4974 5616 855 2126 11013 11655 6894 8165 +17830 1910 6151 2043 5693 7949 12190 8082 11732 +17831 1867 5316 1868 4928 7906 11355 7907 10967 +17832 2314 4661 714 6071 8353 10700 6753 12110 +17833 1675 4760 392 4540 7714 10799 6431 10579 +17834 5531 1826 481 3809 11570 7865 6520 9848 +17835 1828 5348 355 5010 7867 11387 6394 11049 +17836 2473 6017 1625 5794 8512 12056 7664 11833 +17837 1682 4870 2032 5944 7721 10909 8071 11983 +17838 4723 4298 4578 5858 10762 10337 10617 11897 +17839 414 4916 3336 5765 6453 10955 9375 11804 +17840 4709 5451 4052 1731 10748 11490 10091 7770 +17841 4560 5548 5247 462 10599 11587 11286 6501 +17842 4692 229 4066 4439 10731 6268 10105 10478 +17843 1660 5615 691 4547 7699 11654 6730 10586 +17844 6058 4923 4718 1653 12097 10962 10757 7692 +17845 1544 4559 1263 5806 7583 10598 7302 11845 +17846 1809 4278 1420 6170 7848 10317 7459 12209 +17847 6045 506 4097 1833 12084 6545 10136 7872 +17848 5457 5456 5638 1763 11496 11495 11677 7802 +17849 4906 1414 4554 3383 10945 7453 10593 9422 +17850 1917 5163 898 4260 7956 11202 6937 10299 +17851 5936 1599 4112 4672 11975 7638 10151 10711 +17852 5976 490 4627 4379 12015 6529 10666 10418 +17853 4782 240 4306 3834 10821 6279 10345 9873 +17854 6133 513 4678 4339 12172 6552 10717 10378 +17855 5170 5176 397 2155 11209 11215 6436 8194 +17856 5274 5001 3232 1289 11313 11040 9271 7328 +17857 5001 5274 3559 1845 11040 11313 9598 7884 +17858 5580 902 4005 5166 11619 6941 10044 11205 +17859 5901 4435 5165 764 11940 10474 11204 6803 +17860 1872 5428 203 4440 7911 11467 6242 10479 +17861 5662 419 3226 5414 11701 6458 9265 11453 +17862 2555 5810 1376 5194 8594 11849 7415 11233 +17863 757 5829 1911 4533 6796 11868 7950 10572 +17864 5960 1686 5485 5144 11999 7725 11524 11183 +17865 5176 5170 6063 1702 11215 11209 12102 7741 +17866 2217 5899 347 4210 8256 11938 6386 10249 +17867 4858 891 4714 5303 10897 6930 10753 11342 +17868 5351 5674 4131 1744 11390 11713 10170 7783 +17869 1855 6040 685 4471 7894 12079 6724 10510 +17870 2344 5069 529 6183 8383 11108 6568 12222 +17871 5386 5224 5071 1898 11425 11263 11110 7937 +17872 6133 4339 3157 1816 12172 10378 9196 7855 +17873 4639 5590 3349 308 10678 11629 9388 6347 +17874 4680 5942 2263 429 10719 11981 8302 6468 +17875 764 5165 1392 4258 6803 11204 7431 10297 +17876 254 4619 1502 4563 6293 10658 7541 10602 +17877 5650 1797 4581 4500 11689 7836 10620 10539 +17878 1851 4538 5823 849 7890 10577 11862 6888 +17879 5043 5042 4237 1765 11082 11081 10276 7804 +17880 1942 5634 378 4910 7981 11673 6417 10949 +17881 5947 788 2636 5474 11986 6827 8675 11513 +17882 5495 5244 3288 775 11534 11283 9327 6814 +17883 1913 5255 2071 5439 7952 11294 8110 11478 +17884 5225 2169 985 6119 11264 8208 7024 12158 +17885 4543 1748 3875 5758 10582 7787 9914 11797 +17886 2028 5329 1839 5421 8067 11368 7878 11460 +17887 5552 2289 4480 744 11591 8328 10519 6783 +17888 5768 1812 6015 5062 11807 7851 12054 11101 +17889 1897 5293 2303 509 7936 11332 8342 6548 +17890 6095 358 5144 5485 12134 6397 11183 11524 +17891 741 4924 2398 4925 6780 10963 8437 10964 +17892 1223 5285 2666 5137 7262 11324 8705 11176 +17893 5643 4640 6188 866 11682 10679 12227 6905 +17894 2260 6126 946 5377 8299 12165 6985 11416 +17895 5899 3773 5341 347 11938 9812 11380 6386 +17896 5570 4728 5769 1687 11609 10767 11808 7726 +17897 4949 1954 3733 5283 10988 7993 9772 11322 +17898 4891 6185 4666 1559 10930 12224 10705 7598 +17899 693 6011 1470 4430 6732 12050 7509 10469 +17900 6175 4371 4543 1929 12214 10410 10582 7968 +17901 6122 4518 2455 844 12161 10557 8494 6883 +17902 1874 4257 664 4398 7913 10296 6703 10437 +17903 5185 1400 3480 3595 11224 7439 9519 9634 +17904 6222 3024 337 4636 12261 9063 6376 10675 +17905 4296 1787 5903 4358 10335 7826 11942 10397 +17906 6125 2584 292 6135 12164 8623 6331 12174 +17907 5559 788 5947 4902 11598 6827 11986 10941 +17908 3405 342 3935 5861 9444 6381 9974 11900 +17909 6051 701 5236 4647 12090 6740 11275 10686 +17910 2005 5760 4085 5249 8044 11799 10124 11288 +17911 791 5053 3061 5905 6830 11092 9100 11944 +17912 686 5287 1290 4429 6725 11326 7329 10468 +17913 6185 4891 5611 2256 12224 10930 11650 8295 +17914 3935 2270 1471 5861 9974 8309 7510 11900 +17915 5559 4902 6235 816 11598 10941 12274 6855 +17916 6233 1979 847 4633 12272 8018 6886 10672 +17917 6048 1429 5104 4597 12087 7468 11143 10636 +17918 6048 4597 4413 1888 12087 10636 10452 7927 +17919 4533 1911 3290 6195 10572 7950 9329 12234 +17920 4533 6195 4791 1585 10572 12234 10830 7624 +17921 6078 5321 6012 1837 12117 11360 12051 7876 +17922 6128 1591 3684 4519 12167 7630 9723 10558 +17923 5521 1824 4899 4845 11560 7863 10938 10884 +17924 2580 4357 869 5770 8619 10396 6908 11809 +17925 4585 1378 4120 5801 10624 7417 10159 11840 +17926 5789 2306 6162 4607 11828 8345 12201 10646 +17927 4427 1834 4518 6122 10466 7873 10557 12161 +17928 1415 4936 1754 5416 7454 10975 7793 11455 +17929 6100 356 5849 4625 12139 6395 11888 10664 +17930 6159 4529 2579 934 12198 10568 8618 6973 +17931 6073 2423 1363 4570 12112 8462 7402 10609 +17932 2228 6007 384 5181 8267 12046 6423 11220 +17933 2163 5676 1697 6141 8202 11715 7736 12180 +17934 5733 2393 731 3557 11772 8432 6770 9596 +17935 4946 5706 4575 1840 10985 11745 10614 7879 +17936 442 5672 1618 5336 6481 11711 7657 11375 +17937 2024 5408 465 5324 8063 11447 6504 11363 +17938 1433 5198 216 6139 7472 11237 6255 12178 +17939 1242 4832 3870 2326 7281 10871 9909 8365 +17940 5455 4348 5897 687 11494 10387 11936 6726 +17941 2681 1956 229 4692 8720 7995 6268 10731 +17942 5770 374 4226 2580 11809 6413 10265 8619 +17943 6035 4261 1716 1089 12074 10300 7755 7128 +17944 2628 5974 3063 4582 8667 12013 9102 10621 +17945 2231 4860 582 6211 8270 10899 6621 12250 +17946 6138 289 5504 3962 12177 6328 11543 10001 +17947 5443 4990 3130 1648 11482 11029 9169 7687 +17948 5901 2152 2787 5989 11940 8191 8826 12028 +17949 910 5056 1432 4156 6949 11095 7471 10195 +17950 1905 4962 985 4592 7944 11001 7024 10631 +17951 5528 3830 948 2991 11567 9869 6987 9030 +17952 37 4695 1678 5780 133 10734 7717 11819 +17953 486 5401 2318 5098 6525 11440 8357 11137 +17954 5842 4643 4674 1861 11881 10682 10713 7900 +17955 5127 2064 4741 4248 11166 8103 10780 10287 +17956 6172 5080 1256 3045 12211 11119 7295 9084 +17957 622 5670 1716 4261 6661 11709 7755 10300 +17958 356 4645 1825 5849 6395 10684 7864 11888 +17959 2371 5152 1532 5153 8410 11191 7571 11192 +17960 1471 5530 1511 5728 7510 11569 7550 11767 +17961 1807 5323 2007 5248 7846 11362 8046 11287 +17962 4674 5835 2785 1861 10713 11874 8824 7900 +17963 4473 488 4843 5434 10512 6527 10882 11473 +17964 5648 4608 5380 421 11687 10647 11419 6460 +17965 6099 5625 4169 633 12138 11664 10208 6672 +17966 5471 415 2957 5997 11510 6454 8996 12036 +17967 1603 5689 324 4561 7642 11728 6363 10600 +17968 6053 6004 1923 2603 12092 12043 7962 8642 +17969 4082 5999 5158 1939 10121 12038 11197 7978 +17970 4872 1968 4753 6070 10911 8007 10792 12109 +17971 5812 700 2504 4205 11851 6739 8543 10244 +17972 4856 1884 4912 5332 10895 7923 10951 11371 +17973 5791 727 5762 5445 11830 6766 11801 11484 +17974 5545 5739 4717 774 11584 11778 10756 6813 +17975 5404 1766 4044 5403 11443 7805 10083 11442 +17976 5403 2148 5630 5404 11442 8187 11669 11443 +17977 4498 6085 3355 1041 10537 12124 9394 7080 +17978 1659 5212 1658 4650 7698 11251 7697 10689 +17979 1912 5557 1911 5829 7951 11596 7950 11868 +17980 4070 993 4710 6003 10109 7032 10749 12042 +17981 6070 557 4302 4872 12109 6596 10341 10911 +17982 5416 5015 4440 1415 11455 11054 10479 7454 +17983 950 5314 2201 5024 6989 11353 8240 11063 +17984 5894 1611 3030 4693 11933 7650 9069 10732 +17985 5886 4641 6003 1870 11925 10680 12042 7909 +17986 5862 913 6000 6028 11901 6952 12039 12067 +17987 5760 2323 5370 4085 11799 8362 11409 10124 +17988 1529 4768 646 3526 7568 10807 6685 9565 +17989 4504 896 1804 5088 10543 6935 7843 11127 +17990 9 5730 2278 5933 105 11769 8317 11972 +17991 4508 671 4748 5636 10547 6710 10787 11675 +17992 5652 4817 4172 731 11691 10856 10211 6770 +17993 1989 5615 1660 5291 8028 11654 7699 11330 +17994 2027 5160 1741 5623 8066 11199 7780 11662 +17995 1967 5214 1966 5438 8006 11253 8005 11477 +17996 1925 6075 620 5193 7964 12114 6659 11232 +17997 1838 5172 1450 4614 7877 11211 7489 10653 +17998 2500 4338 2328 6002 8539 10377 8367 12041 +17999 6166 1535 3845 4621 12205 7574 9884 10660 +18000 6151 1910 5147 5157 12190 7949 11186 11196 +18001 223 5043 1765 4384 6262 11082 7804 10423 +18002 2386 6006 1688 4963 8425 12045 7727 11002 +18003 5573 4879 2936 6206 11612 10918 8975 12245 +18004 6171 803 1973 5505 12210 6842 8012 11544 +18005 285 5623 1741 5034 6324 11662 7780 11073 +18006 779 5521 1894 5759 6818 11560 7933 11798 +18007 1807 4629 638 6228 7846 10668 6677 12267 +18008 6107 1956 2681 4488 12146 7995 8720 10527 +18009 6041 1742 5349 4612 12080 7781 11388 10651 +18010 700 5812 1703 5231 6739 11851 7742 11270 +18011 770 4710 2728 5488 6809 10749 8767 11527 +18012 2331 6064 1673 6072 8370 12103 7712 12111 +18013 5653 4929 5722 1717 11692 10968 11761 7756 +18014 6207 1657 4461 4460 12246 7696 10500 10499 +18015 1754 4936 2107 5525 7793 10975 8146 11564 +18016 785 5407 2127 5609 6824 11446 8166 11648 +18017 5817 4893 4231 1636 11856 10932 10270 7675 +18018 4723 5858 3524 1815 10762 11897 9563 7854 +18019 4706 481 2847 5322 10745 6520 8886 11361 +18020 616 5677 1898 5071 6655 11716 7937 11110 +18021 5084 2273 2186 6055 11123 8312 8225 12094 +18022 5084 6055 5697 854 11123 12094 11736 6893 +18023 5582 2612 1899 5258 11621 8651 7938 11297 +18024 5883 569 3178 4032 11922 6608 9217 10071 +18025 6064 262 5929 4788 12103 6301 11968 10827 +18026 5361 1633 3801 5094 11400 7672 9840 11133 +18027 6051 4647 5763 1788 12090 10686 11802 7827 +18028 6152 643 1863 4470 12191 6682 7902 10509 +18029 5213 6180 5330 1779 11252 12219 11369 7818 +18030 5213 2128 4481 6180 11252 8167 10520 12219 +18031 1844 5143 710 5767 7883 11182 6749 11806 +18032 5817 2301 4463 4893 11856 8340 10502 10932 +18033 5241 2117 2576 2940 11280 8156 8615 8979 +18034 2041 5386 1898 5448 8080 11425 7937 11487 +18035 2013 5846 2077 5752 8052 11885 8116 11791 +18036 6060 460 2356 4979 12099 6499 8395 11018 +18037 4979 2794 1985 6060 11018 8833 8024 12099 +18038 2483 5575 557 6070 8522 11614 6596 12109 +18039 5906 276 3125 5065 11945 6315 9164 11104 +18040 4922 667 4237 4963 10961 6706 10276 11002 +18041 959 6208 2432 4572 6998 12247 8471 10611 +18042 1801 5112 464 3692 7840 11151 6503 9731 +18043 5481 5741 29 28 11520 11780 125 124 +18044 5481 27 26 5742 11520 123 122 11781 +18045 5742 2081 5741 5481 11781 8120 11780 11520 +18046 2465 5292 5599 1532 8504 11331 11638 7571 +18047 5715 2060 4616 5444 11754 8099 10655 11483 +18048 5444 56 55 5715 11483 152 151 11754 +18049 1126 4451 637 6118 7165 10490 6676 12157 +18050 5835 5725 3973 706 11874 11764 10012 6745 +18051 685 4752 1799 5968 6724 10791 7838 12007 +18052 4837 6209 5983 853 10876 12248 12022 6892 +18053 5452 5324 5472 1909 11491 11363 11511 7948 +18054 473 5592 2035 6101 6512 11631 8074 12140 +18055 4795 5928 5996 1794 10834 11967 12035 7833 +18056 1832 5105 2035 5592 7871 11144 8074 11631 +18057 1944 5469 2103 4757 7983 11508 8142 10796 +18058 2287 5162 410 6132 8326 11201 6449 12171 +18059 4855 2161 5201 258 10894 8200 11240 6297 +18060 4707 6058 1653 2304 10746 12097 7692 8343 +18061 2859 5965 1719 4957 8898 12004 7758 10996 +18062 1934 5966 2269 5779 7973 12005 8308 11818 +18063 5086 6157 5492 341 11125 12196 11531 6380 +18064 1670 5889 933 4828 7709 11928 6972 10867 +18065 5718 1211 3236 3761 11757 7250 9275 9800 +18066 5616 4974 2853 1539 11655 11013 8892 7578 +18067 5778 2240 271 4317 11817 8279 6310 10356 +18068 4970 1691 2585 4969 11009 7730 8624 11008 +18069 1783 2789 266 5179 7822 8828 6305 11218 +18070 4613 1300 2619 2146 10652 7339 8658 8185 +18071 5011 5831 2858 469 11050 11870 8897 6508 +18072 5831 5011 3649 1932 11870 11050 9688 7971 +18073 5812 4115 4195 1703 11851 10154 10234 7742 +18074 6116 2454 1343 5824 12155 8493 7382 11863 +18075 1892 5467 383 5128 7931 11506 6422 11167 +18076 2029 5541 808 5550 8068 11580 6847 11589 +18077 5413 624 3763 5412 11452 6663 9802 11451 +18078 5685 2261 5700 4494 11724 8300 11739 10533 +18079 5732 6207 4460 684 11771 12246 10499 6723 +18080 5276 2219 5992 1993 11315 8258 12031 8032 +18081 5770 869 3220 3221 11809 6908 9259 9260 +18082 4749 1578 4626 6092 10788 7617 10665 12131 +18083 4914 5923 3050 1709 10953 11962 9089 7748 +18084 5288 375 5375 5743 11327 6414 11414 11782 +18085 5603 363 4907 6018 11642 6402 10946 12057 +18086 706 5656 2348 4685 6745 11695 8387 10724 +18087 2523 5821 698 4930 8562 11860 6737 10969 +18088 6101 2035 5875 4733 12140 8074 11914 10772 +18089 2106 5728 1511 394 8145 11767 7550 6433 +18090 6123 1771 4708 4730 12162 7810 10747 10769 +18091 5454 1328 4348 5455 11493 7367 10387 11494 +18092 2022 4859 2735 5655 8061 10898 8774 11694 +18093 5582 5258 746 2110 11621 11297 6785 8149 +18094 1767 5166 1646 5044 7806 11205 7685 11083 +18095 5412 3583 1408 5413 11451 9622 7447 11452 +18096 5157 226 1901 6151 11196 6265 7940 12190 +18097 5811 1825 4645 5470 11850 7864 10684 11509 +18098 1629 5511 2886 4509 7668 11550 8925 10548 +18099 5474 2636 3460 267 11513 8675 9499 6306 +18100 2061 5806 1263 5075 8100 11845 7302 11114 +18101 6039 3837 4718 4923 12078 9876 10757 10962 +18102 4832 269 1787 3870 10871 6308 7826 9909 +18103 2267 4954 1642 5820 8306 10993 7681 11859 +18104 6160 1854 6173 4313 12199 7893 12212 10352 +18105 5005 2456 2187 6114 11044 8495 8226 12153 +18106 6114 2384 2218 5005 12153 8423 8257 11044 +18107 6171 5505 5123 1897 12210 11544 11162 7936 +18108 2416 6086 1143 4761 8455 12125 7182 10800 +18109 5907 1280 5283 3733 11946 7319 11322 9772 +18110 834 6059 1810 4803 6873 12098 7849 10842 +18111 1649 4490 894 5381 7688 10529 6933 11420 +18112 1532 5599 2570 5153 7571 11638 8609 11192 +18113 6160 4313 2803 1565 12199 10352 8842 7604 +18114 6231 2472 1559 5092 12270 8511 7598 11131 +18115 5219 1896 5791 5445 11258 7935 11830 11484 +18116 6025 6024 5115 802 12064 12063 11154 6841 +18117 5500 6020 6148 1902 11539 12059 12187 7941 +18118 779 6215 1710 4722 6818 12254 7749 10761 +18119 5768 5062 5698 263 11807 11101 11737 6302 +18120 5475 5564 4074 304 11514 11603 10113 6343 +18121 5475 1978 2497 5564 11514 8017 8536 11603 +18122 2732 4808 1789 6218 8771 10847 7828 12257 +18123 4759 6162 5710 352 10798 12201 11749 6391 +18124 6237 4945 5222 834 12276 10984 11261 6873 +18125 6237 1998 6150 4945 12276 8037 12189 10984 +18126 5836 508 3272 5512 11875 6547 9311 11551 +18127 5836 5512 3653 2087 11875 11551 9692 8126 +18128 6217 4781 5390 1918 12256 10820 11429 7957 +18129 6217 1505 3308 4781 12256 7544 9347 10820 +18130 5393 2159 5986 5988 11432 8198 12025 12027 +18131 5710 6235 4902 2307 11749 12274 10941 8346 +18132 2432 4897 1625 6017 8471 10936 7664 12056 +18133 5652 731 2393 4997 11691 6770 8432 11036 +18134 2010 5681 2044 5549 8049 11720 8083 11588 +18135 4016 394 1511 1512 10055 6433 7550 7551 +18136 5822 1713 3647 5081 11861 7752 9686 11120 +18137 1162 5714 1907 5206 7201 11753 7946 11245 +18138 6230 2216 4285 5648 12269 8255 10324 11687 +18139 2242 5562 1314 3670 8281 11601 7353 9709 +18140 6185 318 5435 4666 12224 6357 11474 10705 +18141 5720 940 6052 1677 11759 6979 12091 7716 +18142 2296 5833 974 6105 8335 11872 7013 12144 +18143 5113 5818 3268 1871 11152 11857 9307 7910 +18144 2163 5924 795 5676 8202 11963 6834 11715 +18145 6023 4926 277 2321 12062 10965 6316 8360 +18146 6039 4923 6058 247 12078 10962 12097 6286 +18147 592 5935 2414 5292 6631 11974 8453 11331 +18148 704 4976 1643 4909 6743 11015 7682 10948 +18149 5185 5184 4187 1400 11224 11223 10226 7439 +18150 5907 3733 6069 1579 11946 9772 12108 7618 +18151 4817 5652 5571 583 10856 11691 11610 6622 +18152 5674 5351 626 3372 11713 11390 6665 9411 +18153 5790 1701 1958 4861 11829 7740 7997 10900 +18154 6001 1676 3291 4591 12040 7715 9330 10630 +18155 5826 2835 2106 394 11865 8874 8145 6433 +18156 3569 1631 5572 3871 9608 7670 11611 9910 +18157 895 5019 1706 5971 6934 11058 7745 12010 +18158 2104 5352 905 5251 8143 11391 6944 11290 +18159 2127 5649 1906 5609 8166 11688 7945 11648 +18160 4883 5042 5043 1782 10922 11081 11082 7821 +18161 5196 243 2270 5340 11235 6282 8309 11379 +18162 842 5868 2068 5105 6881 11907 8107 11144 +18163 1736 5270 2540 5776 7775 11309 8579 11815 +18164 6235 5710 6162 2306 12274 11749 12201 8345 +18165 5918 1851 849 2468 11957 7890 6888 8507 +18166 5422 755 2064 3405 11461 6794 8103 9444 +18167 1001 5211 2077 5846 7040 11250 8116 11885 +18168 6071 714 4544 4956 12110 6753 10583 10995 +18169 5705 6079 2347 416 11744 12118 8386 6455 +18170 6134 4679 3084 5847 12173 10718 9123 11886 +18171 5993 1114 3404 5769 12032 7153 9443 11808 +18172 5993 5769 4728 2195 12032 11808 10767 8234 +18173 5898 4507 5259 2130 11937 10546 11298 8169 +18174 2577 1793 788 5559 8616 7832 6827 11598 +18175 4418 5943 3902 1730 10457 11982 9941 7769 +18176 5826 394 4016 1110 11865 6433 10055 7149 +18177 5624 6193 3621 705 11663 12232 9660 6744 +18178 225 4986 3277 6067 6264 11025 9316 12106 +18179 5155 6081 2003 2150 11194 12120 8042 8189 +18180 5908 5907 1579 3334 11947 11946 7618 9373 +18181 6119 2026 4801 5225 12158 8065 10840 11264 +18182 2475 5823 1686 5275 8514 11862 7725 11314 +18183 5265 2058 6210 2291 11304 8097 12249 8330 +18184 6150 1969 5222 4945 12189 8008 11261 10984 +18185 5960 5144 358 2273 11999 11183 6397 8312 +18186 1591 6128 3568 5229 7630 12167 9607 11268 +18187 5276 1993 4553 603 11315 8032 10592 6642 +18188 5586 4778 5152 623 11625 10817 11191 6662 +18189 1110 4050 1305 4049 7149 10089 7344 10088 +18190 5414 2178 6216 5662 11453 8217 12255 11701 +18191 2818 6129 1547 4987 8857 12168 7586 11026 +18192 2422 5169 2149 5721 8461 11208 8188 11760 +18193 5868 5698 5062 2068 11907 11737 11101 8107 +18194 5265 2291 5981 668 11304 8330 12020 6707 +18195 5552 3837 6039 2289 11591 9876 12078 8328 +18196 5909 1700 6032 4491 11948 7739 12071 10530 +18197 3385 6019 617 5126 9424 12058 6656 11165 +18198 5943 4726 5145 264 11982 10765 11184 6303 +18199 5818 6205 6204 850 11857 12244 12243 6889 +18200 5961 1533 3230 3814 12000 7572 9269 9853 +18201 5110 4788 5929 5158 11149 10827 11968 11197 +18202 2263 5942 1632 5215 8302 11981 7671 11254 +18203 6148 6020 5428 2227 12187 12059 11467 8266 +18204 3885 6202 2301 5817 9924 12241 8340 11856 +18205 937 6109 2078 5391 6976 12148 8117 11430 +18206 2363 5732 684 5216 8402 11771 6723 11255 +18207 6209 4837 1239 2052 12248 10876 7278 8091 +18208 5386 2041 2254 5596 11425 8080 8293 11635 +18209 1869 5389 2558 5937 7908 11428 8597 11976 +18210 5795 2442 272 5998 11834 8481 6311 12037 +18211 5456 6226 3965 409 11495 12265 10004 6448 +18212 6226 5456 5457 2131 12265 11495 11496 8170 +18213 1906 5649 748 5268 7945 11688 6787 11307 +18214 5875 2068 5062 6015 11914 8107 11101 12054 +18215 6216 5883 4032 1501 12255 11922 10071 7540 +18216 5634 1942 5445 5762 11673 7981 11484 11801 +18217 1990 5743 2029 5550 8029 11782 8068 11589 +18218 1690 6108 280 5669 7729 12147 6319 11708 +18219 2080 6022 2355 5400 8119 12061 8394 11439 +18220 5862 6028 3615 2297 11901 12067 9654 8336 +18221 1505 6217 3671 5020 7544 12256 9710 11059 +18222 6120 2404 4578 4996 12159 8443 10617 11035 +18223 2119 5027 1633 5504 8158 11066 7672 11543 +18224 4079 5526 899 1801 10118 11565 6938 7840 +18225 299 5788 1629 5171 6338 11827 7668 11210 +18226 6156 2048 4612 5349 12195 8087 10651 11388 +18227 5080 6172 2715 832 11119 12211 8754 6871 +18228 5128 5932 4115 1892 11167 11971 10154 7931 +18229 5208 921 3995 1791 11247 6960 10034 7830 +18230 5824 426 5706 6116 11863 6465 11745 12155 +18231 5907 5908 4191 1280 11946 11947 10230 7319 +18232 1975 6094 2514 5271 8014 12133 8553 11310 +18233 5349 768 4831 6156 11388 6807 10870 12195 +18234 4358 5903 2647 797 10397 11942 8686 6836 +18235 6076 5223 6218 1789 12115 11262 12257 7828 +18236 2056 5410 484 5544 8095 11449 6523 11583 +18237 1882 6087 510 5233 7921 12126 6549 11272 +18238 2034 4874 1195 4541 8073 10913 7234 10580 +18239 5808 4882 4324 1919 11847 10921 10363 7958 +18240 6188 5859 2374 2239 12227 11898 8413 8278 +18241 5859 6188 4640 2132 11898 12227 10679 8171 +18242 2110 5102 823 5582 8149 11141 6862 11621 +18243 6053 2024 5324 5452 12092 8063 11363 11491 +18244 5596 828 5224 5386 11635 6867 11263 11425 +18245 4534 2118 2117 5241 10573 8157 8156 11280 +18246 4861 1848 4561 5790 10900 7887 10600 11829 +18247 5452 931 6004 6053 11491 6970 12043 12092 +18248 862 4355 2387 5284 6901 10394 8426 11323 +18249 2074 4864 2073 5235 8113 10903 8112 11274 +18250 1841 5848 2435 5651 7880 11887 8474 11690 +18251 5158 5929 5205 1939 11197 11968 11244 7978 +18252 5891 258 5201 1689 11930 6297 11240 7728 +18253 6078 14 13 5321 12117 110 109 11360 +18254 1647 4186 1491 4443 7686 10225 7530 10482 +18255 4226 4225 4858 1979 10265 10264 10897 8018 +18256 4350 6202 3885 466 10389 12241 9924 6505 +18257 6183 529 2542 5281 12222 6568 8581 11320 +18258 2549 6009 1880 6008 8588 12048 7919 12047 +18259 6097 1305 4050 4951 12136 7344 10089 10990 +18260 6219 5262 2519 890 12258 11301 8558 6929 +18261 6219 2020 737 5262 12258 8059 6776 11301 +18262 6218 5223 5174 923 12257 11262 11213 6962 +18263 2333 5979 727 5791 8372 12018 6766 11830 +18264 5185 3595 4723 1815 11224 9634 10762 7854 +18265 5921 5922 6089 2236 11960 11961 12128 8275 +18266 2035 5105 2068 5875 8074 11144 8107 11914 +18267 1336 6080 3157 5379 7375 12119 9196 11418 +18268 2336 5405 1756 6061 8375 11444 7795 12100 +18269 5868 2049 3318 5698 11907 8088 9357 11737 +18270 201 5701 1525 4649 6240 11740 7564 10688 +18271 1912 5558 379 5557 7951 11597 6418 11596 +18272 1738 6165 3976 5660 7777 12204 10015 11699 +18273 1012 3710 6157 5086 7051 9749 12196 11125 +18274 6204 5288 5743 1990 12243 11327 11782 8029 +18275 6230 4900 2504 1696 12269 10939 8543 7735 +18276 1994 5295 2031 6205 8033 11334 8070 12244 +18277 2510 5740 773 6050 8549 11779 6812 12089 +18278 1779 5330 2842 6189 7818 11369 8881 12228 +18279 6166 778 4562 5257 12205 6817 10601 11296 +18280 2045 6102 2510 6131 8084 12141 8549 12170 +18281 2011 6054 988 5532 8050 12093 7027 11571 +18282 2184 6054 2011 5948 8223 12093 8050 11987 +18283 407 3770 1552 5154 6446 9809 7591 11193 +18284 5489 5906 5065 1862 11528 11945 11104 7901 +18285 5984 4307 4306 240 12023 10346 10345 6279 +18286 6095 5485 4538 1851 12134 11524 10577 7890 +18287 1712 5579 3633 5692 7751 11618 9672 11731 +18288 1951 5068 1793 4833 7990 11107 7832 10872 +18289 6216 2593 569 5883 12255 8632 6608 11922 +18290 2164 4796 302 4662 8203 10835 6341 10701 +18291 412 5946 2349 5771 6451 11985 8388 11810 +18292 5920 5919 2608 1143 11959 11958 8647 7182 +18293 5988 206 2612 5393 12027 6245 8651 11432 +18294 5875 6015 5680 4733 11914 12054 11719 10772 +18295 5929 262 4705 5205 11968 6301 10744 11244 +18296 1863 4742 912 4470 7902 10781 6951 10509 +18297 1091 6124 2442 5547 7130 12163 8481 11586 +18298 1943 5502 2218 6167 7982 11541 8257 12206 +18299 2040 5699 748 5649 8079 11738 6787 11688 +18300 1905 5777 1904 4962 7944 11816 7943 11001 +18301 6099 3816 1731 5625 12138 9855 7770 11664 +18302 5558 1912 3321 5781 11597 7951 9360 11820 +18303 1110 4049 2835 5826 7149 10088 8874 11865 +18304 2570 5086 341 5153 8609 11125 6380 11192 +18305 5961 4782 3834 1533 12000 10821 9873 7572 +18306 5530 4558 5726 1511 11569 10597 11765 7550 +18307 5732 2460 1657 6207 11771 8499 7696 12246 +18308 6193 5624 5232 1961 12232 11663 11271 8000 +18309 5454 5455 687 2055 11493 11494 6726 8094 +18310 2066 6146 2322 6062 8105 12185 8361 12101 +18311 1774 5690 3604 6155 7813 11729 9643 12194 +18312 5977 4821 1104 2629 12016 10860 7143 8668 +18313 6136 2034 4541 4573 12175 8073 10580 10612 +18314 1707 6138 3962 5461 7746 12177 10001 11500 +18315 5474 1729 4436 5947 11513 7768 10475 11986 +18316 3475 6177 2752 1060 9514 12216 8791 7099 +18317 5603 6018 6002 2328 11642 12057 12041 8367 +18318 5526 4079 1863 1060 11565 10118 7902 7099 +18319 767 5397 2641 5873 6806 11436 8680 11912 +18320 5762 2221 5684 5634 11801 8260 11723 11673 +18321 464 4613 642 3730 6503 10652 6681 9769 +18322 5343 5898 780 1795 11382 11937 6819 7834 +18323 948 3830 6079 5705 6987 9869 12118 11744 +18324 2163 6141 2189 6091 8202 12180 8228 12130 +18325 6104 5244 5495 2168 12143 11283 11534 8207 +18326 5500 203 5428 6020 11539 6242 11467 12059 +18327 1300 5466 824 2619 7339 11505 6863 8658 +18328 6139 216 1785 5156 12178 6255 7824 11195 +18329 6143 6176 2711 2194 12182 12215 8750 8233 +18330 6143 19 18 6176 12182 115 114 12215 +18331 2154 5896 1635 5621 8193 11935 7674 11660 +18332 5906 5489 5227 2092 11945 11528 11266 8131 +18333 5558 5781 851 2167 11597 11820 6890 8206 +18334 1950 5369 1126 6118 7989 11408 7165 12157 +18335 347 5341 1211 5718 6386 11380 7250 11757 +18336 901 4700 1720 5729 6940 10739 7759 11768 +18337 2104 5251 2103 5469 8143 11290 8142 11508 +18338 817 3782 3285 5945 6856 9821 9324 11984 +18339 2250 5595 1523 5173 8289 11634 7562 11212 +18340 5303 4714 4765 497 11342 10753 10804 6536 +18341 5963 4920 3920 912 12002 10959 9959 6951 +18342 6171 1897 509 2947 12210 7936 6548 8986 +18343 6025 1966 5601 6024 12064 8005 11640 12063 +18344 2159 5987 478 5986 8198 12026 6517 12025 +18345 4573 1432 911 6136 10612 7471 6950 12175 +18346 341 5492 2371 5153 6380 11531 8410 11192 +18347 5899 1580 3758 3773 11938 7619 9797 9812 +18348 2162 6013 1676 6001 8201 12052 7715 12040 +18349 5919 5920 601 2543 11958 11959 6640 8582 +18350 5166 1767 2657 5580 11205 7806 8696 11619 +18351 206 5988 1732 5989 6245 12027 7771 12028 +18352 989 5365 2018 5949 7028 11404 8057 11988 +18353 5381 1856 225 6239 11420 7895 6264 12278 +18354 5984 1529 3526 4307 12023 7568 9565 10346 +18355 5718 3761 4768 1739 11757 9800 10807 7778 +18356 5185 1815 2208 5184 11224 7854 8247 11223 +18357 5306 2198 3524 5858 11345 8237 9563 11897 +18358 5961 3814 4874 642 12000 9853 10913 6681 +18359 4997 2536 5571 5652 11036 8575 11610 11691 +18360 2106 5363 755 5422 8145 11402 6794 11461 +18361 5961 2146 240 4782 12000 8185 6279 10821 +18362 2664 6025 802 6026 8703 12064 6841 12065 +18363 4220 612 2751 1269 10259 6651 8790 7308 +18364 2421 1486 4267 810 8460 7525 10306 6849 $EndElements From 41397706f7fbe5f5cf61586eb9dc892e553c3177 Mon Sep 17 00:00:00 2001 From: Stefano Colombo Date: Wed, 1 Feb 2023 12:15:15 +0100 Subject: [PATCH 09/15] problemfile added to IBM test --- .../IBM_Cylinder/SETUP/ProblemFile.f90 | 629 ++++++++++++++++++ 1 file changed, 629 insertions(+) create mode 100644 Solver/test/NavierStokes/IBM_Cylinder/SETUP/ProblemFile.f90 diff --git a/Solver/test/NavierStokes/IBM_Cylinder/SETUP/ProblemFile.f90 b/Solver/test/NavierStokes/IBM_Cylinder/SETUP/ProblemFile.f90 new file mode 100644 index 000000000..eeaaaf8bb --- /dev/null +++ b/Solver/test/NavierStokes/IBM_Cylinder/SETUP/ProblemFile.f90 @@ -0,0 +1,629 @@ +! +!//////////////////////////////////////////////////////////////////////// +! +! The Problem File contains user defined procedures +! that are used to "personalize" i.e. define a specific +! problem to be solved. These procedures include initial conditions, +! exact solutions (e.g. for tests), etc. and allow modifications +! without having to modify the main code. +! +! The procedures, *even if empty* that must be defined are +! +! UserDefinedSetUp +! UserDefinedInitialCondition(mesh) +! UserDefinedPeriodicOperation(mesh) +! UserDefinedFinalize(mesh) +! UserDefinedTermination +! +!//////////////////////////////////////////////////////////////////////// +! +#include "Includes.h" +module ProblemFileFunctions + implicit none + + abstract interface + subroutine UserDefinedStartup_f + end subroutine UserDefinedStartup_f + + SUBROUTINE UserDefinedFinalSetup_f(mesh & +#ifdef FLOW + , thermodynamics_ & + , dimensionless_ & + , refValues_ & +#endif +#ifdef CAHNHILLIARD + , multiphase_ & +#endif + ) + USE HexMeshClass + use FluidData + IMPLICIT NONE + CLASS(HexMesh) :: mesh +#ifdef FLOW + type(Thermodynamics_t), intent(in) :: thermodynamics_ + type(Dimensionless_t), intent(in) :: dimensionless_ + type(RefValues_t), intent(in) :: refValues_ +#endif +#ifdef CAHNHILLIARD + type(Multiphase_t), intent(in) :: multiphase_ +#endif + END SUBROUTINE UserDefinedFinalSetup_f + + subroutine UserDefinedInitialCondition_f(mesh & +#ifdef FLOW + , thermodynamics_ & + , dimensionless_ & + , refValues_ & +#endif +#ifdef CAHNHILLIARD + , multiphase_ & +#endif + ) + use smconstants + use physicsstorage + use hexmeshclass + use fluiddata + implicit none + class(hexmesh) :: mesh +#ifdef FLOW + type(Thermodynamics_t), intent(in) :: thermodynamics_ + type(Dimensionless_t), intent(in) :: dimensionless_ + type(RefValues_t), intent(in) :: refValues_ +#endif +#ifdef CAHNHILLIARD + type(Multiphase_t), intent(in) :: multiphase_ +#endif + end subroutine UserDefinedInitialCondition_f +#ifdef FLOW + subroutine UserDefinedState_f(x, t, nHat, Q, thermodynamics_, dimensionless_, refValues_) + use SMConstants + use PhysicsStorage + use FluidData + implicit none + real(kind=RP) :: x(NDIM) + real(kind=RP) :: t + real(kind=RP) :: nHat(NDIM) + real(kind=RP) :: Q(NCONS) + type(Thermodynamics_t), intent(in) :: thermodynamics_ + type(Dimensionless_t), intent(in) :: dimensionless_ + type(RefValues_t), intent(in) :: refValues_ + end subroutine UserDefinedState_f + + subroutine UserDefinedGradVars_f(x, t, nHat, Q, U, thermodynamics_, dimensionless_, refValues_) + use SMConstants + use PhysicsStorage + use FluidData + implicit none + real(kind=RP), intent(in) :: x(NDIM) + real(kind=RP), intent(in) :: t + real(kind=RP), intent(in) :: nHat(NDIM) + real(kind=RP), intent(in) :: Q(NCONS) + real(kind=RP), intent(inout) :: U(NGRAD) + type(Thermodynamics_t), intent(in) :: thermodynamics_ + type(Dimensionless_t), intent(in) :: dimensionless_ + type(RefValues_t), intent(in) :: refValues_ + end subroutine UserDefinedGradVars_f + + + subroutine UserDefinedNeumann_f(x, t, nHat, Q, U_x, U_y, U_z, flux, thermodynamics_, dimensionless_, refValues_) + use SMConstants + use PhysicsStorage + use FluidData + implicit none + real(kind=RP), intent(in) :: x(NDIM) + real(kind=RP), intent(in) :: t + real(kind=RP), intent(in) :: nHat(NDIM) + real(kind=RP), intent(in) :: Q(NCONS) + real(kind=RP), intent(in) :: U_x(NGRAD) + real(kind=RP), intent(in) :: U_y(NGRAD) + real(kind=RP), intent(in) :: U_z(NGRAD) + real(kind=RP), intent(inout) :: flux(NCONS) + type(Thermodynamics_t), intent(in) :: thermodynamics_ + type(Dimensionless_t), intent(in) :: dimensionless_ + type(RefValues_t), intent(in) :: refValues_ + end subroutine UserDefinedNeumann_f + +#endif +! +!//////////////////////////////////////////////////////////////////////// +! + SUBROUTINE UserDefinedPeriodicOperation_f(mesh, time, dt, Monitors) + use SMConstants + USE HexMeshClass + use MonitorsClass + IMPLICIT NONE + CLASS(HexMesh) :: mesh + REAL(KIND=RP) :: time + REAL(KIND=RP) :: dt + type(Monitor_t), intent(in) :: monitors + END SUBROUTINE UserDefinedPeriodicOperation_f +! +!//////////////////////////////////////////////////////////////////////// +! +#ifdef FLOW + subroutine UserDefinedSourceTermNS_f(x, Q, time, S, thermodynamics_, dimensionless_, refValues_ & +#ifdef CAHNHILLIARD +,multiphase_ & +#endif +) + use SMConstants + USE HexMeshClass + use FluidData + use PhysicsStorage + IMPLICIT NONE + real(kind=RP), intent(in) :: x(NDIM) + real(kind=RP), intent(in) :: Q(NCONS) + real(kind=RP), intent(in) :: time + real(kind=RP), intent(inout) :: S(NCONS) + type(Thermodynamics_t), intent(in) :: thermodynamics_ + type(Dimensionless_t), intent(in) :: dimensionless_ + type(RefValues_t), intent(in) :: refValues_ +#ifdef CAHNHILLIARD + type(Multiphase_t), intent(in) :: multiphase_ +#endif + end subroutine UserDefinedSourceTermNS_f +#endif +! +!//////////////////////////////////////////////////////////////////////// +! + SUBROUTINE UserDefinedFinalize_f(mesh, time, iter, maxResidual & +#ifdef FLOW + , thermodynamics_ & + , dimensionless_ & + , refValues_ & +#endif +#ifdef CAHNHILLIARD + , multiphase_ & +#endif + , monitors, & + elapsedTime, & + CPUTime ) + use SMConstants + USE HexMeshClass + use FluidData + use MonitorsClass + IMPLICIT NONE + CLASS(HexMesh) :: mesh + REAL(KIND=RP) :: time + integer :: iter + real(kind=RP) :: maxResidual +#ifdef FLOW + type(Thermodynamics_t), intent(in) :: thermodynamics_ + type(Dimensionless_t), intent(in) :: dimensionless_ + type(RefValues_t), intent(in) :: refValues_ +#endif +#ifdef CAHNHILLIARD + type(Multiphase_t), intent(in) :: multiphase_ +#endif + type(Monitor_t), intent(in) :: monitors + real(kind=RP), intent(in) :: elapsedTime + real(kind=RP), intent(in) :: CPUTime + END SUBROUTINE UserDefinedFinalize_f + + SUBROUTINE UserDefinedTermination_f + implicit none + END SUBROUTINE UserDefinedTermination_f + end interface + +end module ProblemFileFunctions + + SUBROUTINE UserDefinedStartup +! +! -------------------------------- +! Called before any other routines +! -------------------------------- +! + IMPLICIT NONE + END SUBROUTINE UserDefinedStartup +! +!//////////////////////////////////////////////////////////////////////// +! + SUBROUTINE UserDefinedFinalSetup(mesh & +#ifdef FLOW + , thermodynamics_ & + , dimensionless_ & + , refValues_ & +#endif +#ifdef CAHNHILLIARD + , multiphase_ & +#endif + ) +! +! ---------------------------------------------------------------------- +! Called after the mesh is read in to allow mesh related initializations +! or memory allocations. +! ---------------------------------------------------------------------- +! + USE HexMeshClass + use PhysicsStorage + use FluidData + IMPLICIT NONE + CLASS(HexMesh) :: mesh +#ifdef FLOW + type(Thermodynamics_t), intent(in) :: thermodynamics_ + type(Dimensionless_t), intent(in) :: dimensionless_ + type(RefValues_t), intent(in) :: refValues_ +#endif +#ifdef CAHNHILLIARD + type(Multiphase_t), intent(in) :: multiphase_ +#endif + END SUBROUTINE UserDefinedFinalSetup +! +!//////////////////////////////////////////////////////////////////////// +! + subroutine UserDefinedInitialCondition(mesh & +#ifdef FLOW + , thermodynamics_ & + , dimensionless_ & + , refValues_ & +#endif +#ifdef CAHNHILLIARD + , multiphase_ & +#endif + ) +! +! ------------------------------------------------ +! called to set the initial condition for the flow +! - by default it sets an uniform initial +! condition. +! ------------------------------------------------ +! + use smconstants + use physicsstorage + use hexmeshclass + use fluiddata + implicit none + class(hexmesh) :: mesh +#ifdef FLOW + type(Thermodynamics_t), intent(in) :: thermodynamics_ + type(Dimensionless_t), intent(in) :: dimensionless_ + type(RefValues_t), intent(in) :: refValues_ +#endif +#ifdef CAHNHILLIARD + type(Multiphase_t), intent(in) :: multiphase_ +#endif +! +! --------------- +! local variables +! --------------- +! + integer :: eid, i, j, k + real(kind=RP) :: qq, u, v, w, p +#if defined(NAVIERSTOKES) + real(kind=RP) :: Q(NCONS), phi, theta +#endif + +! +! --------------------------------------- +! Navier-Stokes default initial condition +! --------------------------------------- +! +#if defined(NAVIERSTOKES) + associate ( gammaM2 => dimensionless_ % gammaM2, & + gamma => thermodynamics_ % gamma ) + theta = refvalues_ % AOAtheta*(pi/180.0_RP) + phi = refvalues_ % AOAphi*(pi/180.0_RP) + + do eID = 1, mesh % no_of_elements + associate( Nx => mesh % elements(eID) % Nxyz(1), & + ny => mesh % elemeNts(eID) % nxyz(2), & + Nz => mesh % elements(eID) % Nxyz(3) ) + do k = 0, Nz; do j = 0, Ny; do i = 0, Nx + qq = 1.0_RP + u = qq*cos(theta)*cos(phi) + v = qq*sin(theta)*cos(phi) + w = qq*sin(phi) + + q(1) = 1.0_RP + p = 1.0_RP/(gammaM2) + q(2) = q(1)*u + q(3) = q(1)*v + q(4) = q(1)*w + q(5) = p/(gamma - 1._RP) + 0.5_RP*q(1)*(u**2 + v**2 + w**2) + + mesh % elements(eID) % storage % q(:,i,j,k) = q + end do; end do; end do + end associate + end do + + end associate +#endif +! +! ------------------------------------------------------ +! Incompressible Navier-Stokes default initial condition +! ------------------------------------------------------ +! +#if defined(INCNS) + do eID = 1, mesh % no_of_elements + associate( Nx => mesh % elements(eID) % Nxyz(1), & + ny => mesh % elemeNts(eID) % nxyz(2), & + Nz => mesh % elements(eID) % Nxyz(3) ) + do k = 0, Nz; do j = 0, Ny; do i = 0, Nx + mesh % elements(eID) % storage % q(:,i,j,k) = [1.0_RP, 1.0_RP,0.0_RP,0.0_RP,0.0_RP] + end do; end do; end do + end associate + end do +#endif + +! +! --------------------------------------- +! Cahn-Hilliard default initial condition +! --------------------------------------- +! +#ifdef CAHNHILLIARD + call random_seed() + + do eid = 1, mesh % no_of_elements + associate( Nx => mesh % elements(eid) % Nxyz(1), & + Ny => mesh % elements(eid) % Nxyz(2), & + Nz => mesh % elements(eid) % Nxyz(3) ) + associate(e => mesh % elements(eID) % storage) + call random_number(e % c) + e % c = 2.0_RP * (e % c - 0.5_RP) + end associate + end associate + end do +#endif + + end subroutine UserDefinedInitialCondition +#ifdef FLOW + subroutine UserDefinedState1(x, t, nHat, Q, thermodynamics_, dimensionless_, refValues_) + use SMConstants + use PhysicsStorage + use FluidData + implicit none + real(kind=RP), intent(in) :: x(NDIM) + real(kind=RP), intent(in) :: t + real(kind=RP), intent(in) :: nHat(NDIM) + real(kind=RP), intent(inout) :: Q(NCONS) + type(Thermodynamics_t), intent(in) :: thermodynamics_ + type(Dimensionless_t), intent(in) :: dimensionless_ + type(RefValues_t), intent(in) :: refValues_ + end subroutine UserDefinedState1 + + subroutine UserDefinedGradVars1(x, t, nHat, Q, U, thermodynamics_, dimensionless_, refValues_) + use SMConstants + use PhysicsStorage + use FluidData + implicit none + real(kind=RP), intent(in) :: x(NDIM) + real(kind=RP), intent(in) :: t + real(kind=RP), intent(in) :: nHat(NDIM) + real(kind=RP), intent(in) :: Q(NCONS) + real(kind=RP), intent(inout) :: U(NGRAD) + type(Thermodynamics_t), intent(in) :: thermodynamics_ + type(Dimensionless_t), intent(in) :: dimensionless_ + type(RefValues_t), intent(in) :: refValues_ + end subroutine UserDefinedGradVars1 + + subroutine UserDefinedNeumann1(x, t, nHat, Q, U_x, U_y, U_z, flux, thermodynamics_, dimensionless_, refValues_) + use SMConstants + use PhysicsStorage + use FluidData + implicit none + real(kind=RP), intent(in) :: x(NDIM) + real(kind=RP), intent(in) :: t + real(kind=RP), intent(in) :: nHat(NDIM) + real(kind=RP), intent(in) :: Q(NCONS) + real(kind=RP), intent(in) :: U_x(NGRAD) + real(kind=RP), intent(in) :: U_y(NGRAD) + real(kind=RP), intent(in) :: U_z(NGRAD) + real(kind=RP), intent(inout) :: flux(NCONS) + type(Thermodynamics_t), intent(in) :: thermodynamics_ + type(Dimensionless_t), intent(in) :: dimensionless_ + type(RefValues_t), intent(in) :: refValues_ + end subroutine UserDefinedNeumann1 +#endif +! +!//////////////////////////////////////////////////////////////////////// +! + SUBROUTINE UserDefinedPeriodicOperation(mesh, time, dt, Monitors) +! +! ---------------------------------------------------------- +! Called before every time-step to allow periodic operations +! to be performed +! ---------------------------------------------------------- +! + use SMConstants + USE HexMeshClass + use MonitorsClass + IMPLICIT NONE + CLASS(HexMesh) :: mesh + REAL(KIND=RP) :: time + REAL(KIND=RP) :: dt + type(Monitor_t), intent(in) :: monitors + + END SUBROUTINE UserDefinedPeriodicOperation +! +!//////////////////////////////////////////////////////////////////////// +! +#ifdef FLOW + subroutine UserDefinedSourceTermNS(x, Q, time, S, thermodynamics_, dimensionless_, refValues_ & +#ifdef CAHNHILLIARD +, multiphase_ & +#endif +) +! +! -------------------------------------------- +! Called to apply source terms to the equation +! -------------------------------------------- +! + use SMConstants + USE HexMeshClass + use PhysicsStorage + use FluidData + IMPLICIT NONE + real(kind=RP), intent(in) :: x(NDIM) + real(kind=RP), intent(in) :: Q(NCONS) + real(kind=RP), intent(in) :: time + real(kind=RP), intent(inout) :: S(NCONS) + type(Thermodynamics_t), intent(in) :: thermodynamics_ + type(Dimensionless_t), intent(in) :: dimensionless_ + type(RefValues_t), intent(in) :: refValues_ +#ifdef CAHNHILLIARD + type(Multiphase_t), intent(in) :: multiphase_ +#endif +! +! --------------- +! Local variables +! --------------- +! + integer :: i, j, k, eID +! +! Usage example +! ------------- +! S(:) = x(1) + x(2) + x(3) + time + + end subroutine UserDefinedSourceTermNS +#endif +! +!//////////////////////////////////////////////////////////////////////// +! + SUBROUTINE UserDefinedFinalize(mesh, time, iter, maxResidual & +#ifdef FLOW + , thermodynamics_ & + , dimensionless_ & + , refValues_ & +#endif +#ifdef CAHNHILLIARD + , multiphase_ & +#endif + , monitors, & + elapsedTime, & + CPUTime ) +! +! -------------------------------------------------------- +! Called after the solution computed to allow, for example +! error tests to be performed +! -------------------------------------------------------- +! + use SMConstants + use FTAssertions + USE HexMeshClass + use PhysicsStorage + use FluidData + use MonitorsClass + IMPLICIT NONE + CLASS(HexMesh) :: mesh + REAL(KIND=RP) :: time + integer :: iter + real(kind=RP) :: maxResidual +#ifdef FLOW + type(Thermodynamics_t), intent(in) :: thermodynamics_ + type(Dimensionless_t), intent(in) :: dimensionless_ + type(RefValues_t), intent(in) :: refValues_ +#endif +#ifdef CAHNHILLIARD + type(Multiphase_t), intent(in) :: multiphase_ +#endif + type(Monitor_t), intent(in) :: monitors + real(kind=RP), intent(in) :: elapsedTime + real(kind=RP), intent(in) :: CPUTime +! +! --------------- +! Local variables +! --------------- +! + CHARACTER(LEN=29) :: testName = "IBM Cylinder" + REAL(KIND=RP) :: maxError + REAL(KIND=RP), ALLOCATABLE :: QExpected(:,:,:,:) + INTEGER :: eID + INTEGER :: i, j, k, N + TYPE(FTAssertionsManager), POINTER :: sharedManager + LOGICAL :: success +! +! ----------------------------------------------------------------------------------------- +! Expected solutions. +! InnerCylinder 0.0 NoSlipAdiabaticWall +! Front 0.0 Inflow +! bottom 0.0 FreeSlipWall +! top 0.0 FreeSlipWall +! Back 0.0 Inflow +! Left 0.0 Inflow +! Right 0.0 OutflowSpecifyP +! ----------------------------------------------------------------------------------------- +! +! +! ------------------------------------------------ +! Expected Solutions: Wall conditions on the sides +! Number of iterations are for CFL of 0.3, for +! the roe solver and mach = 0.3 +! ------------------------------------------------ +! +#if defined(NAVIERSTOKES) + INTEGER :: iterations(3:7) = [20, 0, 0, 0, 0] + + real(kind=RP), parameter :: residuals(5) = [ 1.2223517957664467E+02_RP, & + 6.7711555047253364E+02_RP, & + 1.0571976691827385E+02_RP, & + 6.0391096545765535E+01_RP, & + 6.3046070987611856E+03_RP] + +! + N = mesh % elements(1) % Nxyz(1) ! This works here because all the elements have the same order in all directions + + CALL initializeSharedAssertionsManager + sharedManager => sharedAssertionsManager() + + CALL FTAssertEqual(expectedValue = residuals(1)+1.0_RP, & + actualValue = monitors % residuals % values(1,1)+1.0_RP, & + tol = 1.d-11, & + msg = "Continuity residual") + + CALL FTAssertEqual(expectedValue = residuals(2)+1.0_RP, & + actualValue = monitors % residuals % values(2,1)+1.0_RP, & + tol = 1.d-11, & + msg = "X-Momentum residual") + + CALL FTAssertEqual(expectedValue = residuals(3)+1.0_RP, & + actualValue = monitors % residuals % values(3,1)+1.0_RP, & + tol = 1.d-11, & + msg = "Y-Momentum residual") + + CALL FTAssertEqual(expectedValue = residuals(4)+1.0_RP, & + actualValue = monitors % residuals % values(4,1)+1.0_RP, & + tol = 1.d-11, & + msg = "Z-Momentum residual") + + CALL FTAssertEqual(expectedValue = residuals(5)+1.0_RP, & + actualValue = monitors % residuals % values(5,1)+1.0_RP, & + tol = 1.d-11, & + msg = "Energy residual") + + + CALL FTAssertEqual(expectedValue = iterations(N), & + actualValue = iter, & + msg = "Number of time steps to tolerance") + + + CALL sharedManager % summarizeAssertions(title = testName,iUnit = 6) + + IF ( sharedManager % numberOfAssertionFailures() == 0 ) THEN + WRITE(6,*) testName, " ... Passed" + WRITE(6,*) "This test case has no expected solution yet, only checks the residual after 20 iterations." + ELSE + WRITE(6,*) testName, " ... Failed" + WRITE(6,*) "NOTE: Failure is expected when the max eigenvalue procedure is changed." + WRITE(6,*) " If that is done, re-compute the expected values and modify this procedure" + STOP 99 + END IF + WRITE(6,*) + + CALL finalizeSharedAssertionsManager + CALL detachSharedAssertionsManager +#endif + + + END SUBROUTINE UserDefinedFinalize +! +!//////////////////////////////////////////////////////////////////////// +! + SUBROUTINE UserDefinedTermination +! +! ----------------------------------------------- +! Called at the the end of the main driver after +! everything else is done. +! ----------------------------------------------- +! + IMPLICIT NONE + END SUBROUTINE UserDefinedTermination \ No newline at end of file From 3b55fb0216a607fd02efe3ba0daeaa3e7aa20dc5 Mon Sep 17 00:00:00 2001 From: Stefano Colombo Date: Wed, 1 Feb 2023 12:18:45 +0100 Subject: [PATCH 10/15] added test to configure --- Solver/configure | 1 + 1 file changed, 1 insertion(+) diff --git a/Solver/configure b/Solver/configure index d3d7bb6f6..39422c069 100755 --- a/Solver/configure +++ b/Solver/configure @@ -51,6 +51,7 @@ TEST_CASES="./Euler/BoxAroundCircle \ ./NavierStokes/CylinderDucros \ ./NavierStokes/CylinderDifferentOrders \ ./NavierStokes/CylinderLES \ + ./NavierStokes/IBM_Cylinder \ ./NavierStokes/DualTimeStepping \ ./NavierStokes/EntropyConservingTest \ ./NavierStokes/EnergyConservingTest \ From 82c1d85a5c437e33ec8bc478b6fbeaa1a0486349 Mon Sep 17 00:00:00 2001 From: Stefano Colombo Date: Wed, 1 Feb 2023 12:40:49 +0100 Subject: [PATCH 11/15] Manual updated --- doc/UserManual.pdf | Bin 420355 -> 355433 bytes doc/UserManual.tex | 29 +++++++++++++++++------------ 2 files changed, 17 insertions(+), 12 deletions(-) diff --git a/doc/UserManual.pdf b/doc/UserManual.pdf index cc06686ef490c1373ad1830d90830c1bd27f8004..013d54620fd8021ea12692898bf2d3a6081178d3 100644 GIT binary patch delta 285252 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

WIw=Z1} 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%0AVH9q*n_N02hI>ay)^MXM%IP1<}^l z;_EwonUe-dh2;#$%+5}}HoOKg=4VexjZ732*%@D7oW2$;j!a|}!L%|lKe@aUCarj8 z$jv46#KGO(0=95sE^}}KNZ>(j_yV$1n<)Pk{w5HPY%JiOquE3T#%C{gmvM|HKyA`A zlmL45z>`@ADH8VnuKr(>!_zzG+an`8%Lovjb4bdmY2Y+`8S7v63{P#KgnPR)pe*bx zU))=LJzsEU=3mT~>C5 zeN+jt(kEn2`0NVed}K76VW!KRB_xr6;{G-|<5eGeZ}E_rK?cWyYs=tiKU!F;kOk zvInq_k4%sK&X4+%te>6+QKLt<3~0yv|KsmX=U?0X;;AR`m;2*4KPhYrXK&4ulso*sbO^ZnX; z=yOhqss7X-6ZS2=nh6BC?wj(vSpwvKd^{m3f4qrQfPUf2gFg3mSb+Q#j;@^=o;ADw zjDGog==_>G{@P9Z!aV+RU-)vAL}O}g{aRG}u)qB(=5B0i{QKNC@^;e6(`OhcaQlG; zTz=J6maXrW(}Oj0e)REKTNXd*qO`Wve>mdTnb>)yEbJN3r0Job}bCZWpU!Is~pdX4NoNAd;TW2yWcyu(iOiS7Jv z`Wl=88Z!x?zz3)t|68wpg>C@FS@|q@(pmocH*ox$UFrbyK96%>l3T!yJKl%rP1-0h z-&HyRpuTm@LRh^C&3?&zX3-U&3-9?{Spb*2w$DC=pSJz?N_&2@Qc7uGPTu8KpU}PG zEMMU3yM)s))i^Z$iF8029EY1=v0Qg45a+-|Sk${rVfB^-g|lSRDXFdB?-Phhwup@Y9A1 zUpx^Y-544?wpyG3-eaThj^Ku$M~>5&BIHm_wXTp>vW+1$-mjU`?d-ps{wjPf@>` z1Y&u4Qh_hEc835EsC)y(v-!7?1zqy~6LEOYbOf)~VtDK#Ri=#|-M$i^ZISa0&)b8* zdt=OShAr1~2EP*T5C@S30k1gcQ7|sp6m~&S4#bO6{>As1tAFNu89z~hfw6kdn!+|P z{gF$4c_`>qssk@tjT;F!j*Dv`9Dn%^7mhix7@)wdrmQ;{j9~mMRhXSW+g~a8Y=_iF zBtSEyv{P1w6$G;S^sw=?J<_se@y0cV%;Z2tL}k^Xul}ZXYb^@&Cb^ZYk$~?`-t32_ zh;S;wZ>6*rhyNo}((8#H$kzJEx+SkH7jd=LWVBgbnh0|3?0`+YO(4<;Lyxy1&&?pF))%lX?+Fq zJe63nMJe*m5()zK)PRj|P7ZQ4WlrVWIxst}K3Gb&|L0^7N0sm$p^W+#atZvgW0u`3 zU`#;qqMhl*XS9XZQ^0Sr^}442i7WzO=3hTxZ<^ zI?*Q{ookvmAb)!Fvh_zzPT{9_;i>vzh1fltKIfm*KfI%t-Pr}Scl*c1t=0KS%YZq9 z3|Z`rk{(st<2gU`&Lcu_(9Ikg5ZhrRZN-bL6O3#1yW>?~>vVOlwvoO=g3zLqX};1W zeKJnP7teWdFxt@h8&P}ghA^(3s%nl*1gEonl1($F08Gb5NGuOGd&HrSPnx^+sZQyg z1>JH#{UjQzi{L?mp4c2ox(sZc3-E&p4lW_Z{KVXdH=ioD{cdrZAY`p^$bCRoh9tu3 zT9^&^PD$ZU7%*;GXw5ScoR!Zq9KCn25M_<{Y+hv$_EyO&!}p}4JXV7M=Hamg5hnH) zZj3ssAggg|!P%W$nUX1C%tmR!9=o)UI(X?8kVX5{9kKAkpXWZku8L3P5Rhsxlf`P8 zwx2tZ$#;uK6J{kGa>_%+t5i5IR`vtZh8m?v3CUYsH_fcc?VE_fuM)h%`(`Q%^CtY{ zB382>>6Yl&e0|LDjS>{x#BCXN4IeZ*Em3(JwCX(G?Cq8qRdQjWu?v(9%p7L$&FN(D zOy$Lm-#?hv8X48ar<*WW)l26IbE$t#t?6}aiNcI7po;c@5t|7j02eg=j>Wsl_ z4{>@c4z#V;h%<5XJ=FB(Dx@QBWYWg-l=Am{>RQ+@(mFqff8TI@0%0v{Cc1SoEkh`g zT_U6yp}^d8hCWX+_(!c>u7rFz=j%Hkq@ zbZc%Zwncbrx@{)Bf=jGHYeeWFb4@!G~pM_djLIk{Mwi+f>di$Q#RSN zz}9al*bv+HPj9)^9PD{l11eABq}7c+uOyVXv};}5v-Q@&B7KA=j({3EH$s7Y&%BlM zKS6db(OX;b1d5#CIl?3M21eZO3>%6+>X@lEY#++x*xJ*enTZ_N0`rO`@C~)x zHK~Gjwya;q&A=)VdS8EgdVeR&9C%;Dj7+ElxiX;Y;$amiw zqu!#w@{uHz#g|#B*1=7vtGVV($EmAEvI2uNN7R&Na|K=#H4SceeB&5Bsk=;U6DJQt z@A=6fuu6ZvPx<%@3F@U(udlntvzH4k0$u#${)03NqH)0>%)ZNB~iNl|-~6h@-aA7L^-6#Bx)YW^*xD9|WyGFFH$v;m~YK%h8JRVF`bCB!n+@ zWMJlgi0XT9A(_03=ajtAV^%rqZ|O3@_6B@!JI+{}x<|SUAMncP45trAzFZ5dRx`wh&ek{I88&)x9xb+3`Q_8{dWs($?D0wCE(94ZKi-l>#SUTQ<03LSpg@g!n`g% zsb@~-H$#W$pD9u2YdDEjY|S+eU*l!9h^Bl|nk`VPzq zyCZjkT3!Br+g>DC>)2J!+)h3GI#?wnsG;)roViA~p5{2Y&v(dN5YtjfWv;xgh_4XQ zXWEc#3389vP=YNd0@F|Fw|u*HWcm6;0#>^)K0eTi>+)&!Q$Go$2LipIa#h=g%o?7| zOBK7|H0dpeI12+X^RR$qI4p{2vdArY#W+6GlRL^&_<~Oq!uf}8OF5cr;JF{$!+K|VrZ8D)CFAy5 zI#3~HD6_;uoiw!Jbc!*u5&fv#1ZbOWP@M=^Daoy%Q9RuAWMMi_OqL9DaJMBdvQVdN zhPk~@PC|C49Ix{pf8x-}i8C%y)pE0xK-X;4N-XI$^9BL3L$h0BhSvH>Q_f-GDd>=G z8KK7w+-ZTZUMaR$9xpUOWAid3kB{}cx;A(*~t#`rP50OzynoExVD z66waLl6@3|oZ~1Atpg{wff2FGAilEIgYz8ku2dOU=syAoq(&%^BHwN7XKWo81wtdO<&n`FDQ}^<(?i& z&Yv2Y`uK0X-pgGh^OPJAuY(Z=Si>*ZKM_W8TbK5Gw2~nfYZ20?HYCVsnoL8>;^m;z zbm9f0p$&1XRPxEclbR<>K&`@Zv=chE3$0vvCL6QX=MFEy%<#h20s}hR;R?I~EBMHl z7ePj39jKvGudOXFM0(cp(uF^dB%U_WsI8-6f3=eoEhOI(3k>3JNm^<`HPQ6CRbo@W zR-efc?}Y_Kut^b1H<&Tp?y+}zcp|M1Lo_(cOMyD)S1kJP7yV(O$VID{wyEsLXR8(b zf#KtKz*T*;F)9*;1ngcJrix$|C%my;+t=StvZ&?}p4zxI)_5mOPgN=jISjoSe?u~m z7{1+Fr`m;<>V5*L9Qaouk%KgL3X&lEd!zv0@tXbAIkp@ceG|wQWuB>+PM5uo0hAEdt4j=PqYMXGrAUWY$t`OCI01VuF>prEQ_<$O?^mI` z3xycE4dnA?B2bss!Gu3FZo<~2fILVmlNn(V@B}-{#P`>A68-So!G-wn^BTBmr$jcZ zl9j`OW8ckGm4*_p&J;&F*?!PMN{123?8Wom#I`*x*lm;%b{&1foS!6v$4eXKg=?FP zmYeRMv&WAUn-CET^^u5HG+`^KK_OS6I*D2){F9*-9-sm)iCfnzK2(^;C-_`s*BI|X zaL;-2LAYej#e_FjVUv5$KU2yfht}QHcvHgQb;Ewr%9rV+N?iZ%?L<%wP59q4bMYjw zm<3VN`g8)?M5EBQqHW$!6i|UoXaTUz{WFM9h>yb6F~v`QC^+&AY=r^!4uA+f*je^I zkF(*?07yYG^!y|pOyAV}7B9K!bg;|rGvutOGXuG!c^Tp^#MEod1K_-w#~Gn ztj@~sI(XYMXZKxr`VmKAf_NV}6JiI>t8Kos2*}PFf2{jMP1*=~CREOjA|p^keH0AL zkwJe;xE!*PY`ZQg2H_u5FV9eCWHuM$lO2hskyok7s6SiYw!QX)lmF;o1(&s*7`a8v z^(?6{V0nz4IVHd9e;#*NnhdQxdp1G3x%wtH@i}`T@bx|bYOlKg%5#~M)ETX9#x8w_ z1%OgSFkyD6W-!-%Hcp9|?a-TKVOH+DuExm0xhuaeMOJetG;+Uzj(sry4pv+iawVoS zk2_|Rv6xsR?x;oJW1N)8)sn#HIX7c(Ou%A;ETrC~Dz9ilMi*b>+9yU`&6FMR39K=f zWmMF{S(MPB!jMc~94(K+uDmFBH1pdN9tr@UL@xYv*Rn)*@z-z{`fP6^7yo$u9 z%Y0lmYQs4+*Bs5`pAn0jA9d*a`Z{!tymJM?CKLZMs0p1+?Y^^jVEtITr!e>yoa<}V zZ19?94qp?k3S{$~y}XpU+_}SFjr=L8=Q`1DBd9m?eG|)rnVqR*@sd3`$Nwi#2cScd z8d0xOm)DQ^oua-r)k0H0W8fheHA^6JN|t;oFpiS&G{CfuZ|A9)&z8ANsd}Sw7OyO_ z#erN&$winI97ICb2wsa_wKrWsdP;Ojb_ZItY^e!u%e@tbG{ll|@u8d|NzOnDdTbyQ ze(TNH@Pyi zNE9_-G0sDlmB!~FYLq&NfD87fLx%3R^d=hlAjFjD7Q>&>4>lWMHn|-ueWy2GEDPoNk%3XfQ-3IxOr~bHkOrg;}b{;o0XZBcA7wFPPlE%_M zH|o1OiumPTA6dKPn}kA2u5sbNX2;_MIZKW^%SSf;LTE9Y6fC*!{SD9A;Ibxs0oD#f zoTLMtbR!~)1d^93O&VE4rZUZ&I)*=skh1Q_^T20T6#ZJP@W*eh;U1~Ia(Y{^M2hE6VZuZj7T5q)sq zcKMa=o-C)7*Us4)tCfb2#gEib^4K!I>BSwA19b?oW-y!6`Z6f>Ii zym0oa<}A0^hqcz(wj)^HDi0}L=u9lsKt+_L>$9)&W61S8CsQ;Q0t!!xdpJIA;&cb- znoZ$ZQefC1T2v;I@+){j72uRyF1hKAlE)fcB>MCR&x-qbu^18bh)Iq9!DS&2zRv`A z^e!&{Z5*!F(M)zAtZ*`Nne>3JFz^tholUlYMeuB+3hw+fFFB|^NGq6PRDCZ)ZncBo z;)8GTLW#7>sf1(o3g|UX(|#l3z>0yz{urssIi~&z;weP$M)-RlBKZ?rQF9#(CuhF} z&V#W=R29a0Pjl9(z2bV)JtdT|-2^vTKMz&s`(SN97Y&`rePXc60v5%@d3`dGq|3@i ztwHC^O_RZjcL#j@l47vt@3#hw)KaP5XuAWI!Wpq&&|ZIjBc*U4Snp z!+?aZ>n8?Sr5zSp8WQBYD(~Zd%LIro*X)>Kx36^>qr`ZEUyE*6@F0E4So5=<7!lFr zPhov26(+Q@W&uO?t2j-q?etpl8nZ}p`W(H%@n9QGVn2CLv5fX-tJGY!laLumGU!Mqs~UJ5_RuiZ<9N`S}JO zmckfsxL-Tz+>++tnCT4{HzusWcV*c`zUvd4unFLuImPOIStt!MQ4k;{`*@mPM)-r( zh69_G9Wup*IEple``w)~<=)oDAoc~T2{V5eT zaJyQ~kAU_xB6CzVGw7y*RT9Vir!<5sx$le`Q(8a|ouyvbfd@gaS*K4!k?KGfRVEdU z6~$6{VOaCSMIq3varetC(ekwGW4m4>oASWQl5d#*{jhnpw?0O;v2oH*sJpm_c7JVGRBJI=+&{(F^^8__o}!n1Ryup!t5mvJ1$RMSbQCPULlt)ymtx>Bh@rZcL=#_@ zwC{>68mET$?KlTrco>*TWYb+)YXqNuI1@cBM^H>gCl*jsX&eqVgWl01`;!{J0NUZZ zOJDBIBDCRB8tU7uvsCyDq)zc}aQe65it?NUU@ZdEE9=P=y>P~V6UsQiP$MTTXQ#+! zR$KpS*LNh33|!av>!`tA)*@y?NYN5W^o`Oo*vzcEL^)l-53^5@gcI?2^ z1YKgU@Hm?BEh{m@mHFb9sC-}A1ja7R?;q6lmS93EM-TKTg-ex@3leg1y=Qp+_wtxd z{!|vnJ2s{r+~Oafx4piQnMPlq_q^{gKT?}yj*vBkLt!)Su*0k;C+uf=o%`St8{c(a z(=D@#N*N=?^y37vLa*Y%+JnkV%xvFX{Nzb8_=uuQdhYn2^j9%*-8MU)eTh2o4Ry zt4E<&!bCsmn+H|=1l{QhpkRR#Ny0*^Aiw^B@sy1XUS2AKPcHozRQa??9OTtY(|$Tq>9|33 z>hE;HAMZ4&G;$!De^Kr+#>ioyPADv^h%+^WL|p+aP*|?2pW;q6KpRVI;PEo_@0V*b ztmA^CXgPX2V%`!vAfGdahlje%|8UWt$)3-HdG-;eH?ACkfaPwf;l*TkQ$FP7mbMq1 zl6m~xwQY&Qf$}fJo`hk2IGm#LQ?Znpeff<^-uG2Y9JAdAaTiJzRa|5@6qB5;t)TFL zKuiz|+{6{Nd*9(lV8p7^=A-`+9o>73 zV*D{t)V}ZhRcR^l(DI|VMAdC#g5KdG4c|@5V>DiHWp-N>0lDLdae)~MjVKZQ9;@$d zNevS=C< z7?=4~ACbybV#RSThN-jK4sT0b`~{q^`uRkOmT0a9?ZcM0Qf%~S7(It2{ltnsb{!wl zG0@t38e@KXz$1coaV7p8fi9q{(6~!%BE~4QE*$Vp!zk!GT%=SimW34D4hxSqsNa=T zIpCa7)meZIs0c0H%KU+TY^A`l!{fhHN;64jm)}p1-EeH3p%w5o#IQcFv2S^Hi}h82 zvc0Qc=Z`!?Fyj#;>REO|8Y-bfX|JNCcX7a^`HVsYKCHN+nK?)AT;Nv}#?AD-W!Qpe z0(D{y%+AHIq(vy^wwsKx^R7mC=6Zje-SE^5z?1AL7jTKGa>a&Ppu)+_5_}9Yh)rw@ zqA)d~Zk4ve6DgLS+3kK->{IkH6-}#z@jM?#E4{8yX=!tO21D8uy`BC@#U2dWrN_L& zatKugm>DbeM98Q7OK_*^APY4eqpH}f&9dd_R@+q$sO+fR_m3Eu%hYY28 zvuKFBSslNkPQYvBx$mM0EaWC>6Za>tq;#WB+PFe@-Rn>$tk~wPl|uYtzxoc&PXV^N zSk_2L4pX0?zSuxy(V${v$Wh53V0nb1+wa^W_z?QFWWJ+eJer&Aj7SVV>tje? zqu6;)2v=}0zE4uOwLx$Rxr)rp+NFUCe)V?`UIMnUKg_sS{Qc(N1Bs-`ZrH!G#nAl% z&JVRxg)y$_kwL@QSGDvjP`A;+1_UM|x>A3}OB(6}(V*^Cf>#v#%&ITDxaWqw3~Fko zfeHtAP7zMRms4yG;qipt+$L%$%F31=&O2u#L!yAmu0GXhtDPeu4Iv-8L>!prkDq*b zEne^@0Y4^s@#-~IP@`1cl{;5KD{~zHR_LK)(epPwd3{f4MK9B%vl|Rwb+>aukmz%? zuE&r0m2b?O(MQVl$>&e>CuR5e5FI?_HodvMGcNaH-B zu9f00!FF5^@SczVC2`659xxSFq#TUZrzU2U))HzYzhz=D?c2>4E{=o7nMsl3|7~OZAJ(3Q{LDXVA}Jj~-tS zV~0O6scUv&M`Y@D-u&jm&w1XtKgX0p-4_EU1CF&tXMDG$KunCP;CgP?1Y&BUDdUzM zUUU4dPzG;I5~_lkX2zcH%27d?pN9%1tq_O8dQLLZ%E)((AeY(!pY)naC}Pd_ z`>_ls^_P%}SugQ^E62$T2k!5+(gT?2>H5wNDjtp+@-*IL_I|3UPq++7 z4rXq3t{M0-Im7*qODJbJT~{U-q1z^eBxQJ5W)&urO5UQq9z=& zU?rQd5*P2;hHrjOfZ;=>`cSAg)(^b~b@lIRc1Z6(CS{x93PY=DhXu-03%IlPrCwdA zKo{Uhx3bs3P?Y$sqSRSshK>As6n+z(w`Kkqo0a*R#Oc*Ad`>Arb#Cuo@{8QOI`V*E zR0(9QrhldanxOn z+`gUf$ogmtB-({iI}rO6r<eG2R}k|Kt8GP=9I{q~ z_Y5F51`rbTHJeUZR<jJVI%v8>L`335e33bZqk5^Zw)b-GT-Gk&~(jxZqOc&*S}gF7)#>tMm2W<1;B&|1dWgM>t2Y zJ@V(B*pG`Fw4N+ApVFc=cxLfDUxNI-&1Ns{q#e5~fPYf3AkvwQGJ?ln)U0a5ragMEvpS9Dyu}D)y5eY?3?rTEtn46;y+h8yFVumEVvn;NpAnt8R z9mVt|Z@eniUfbvD%1z7^9lm`LS(@ah{W0PgMXvYW8SP`Sta%x6VK_|Akc$wAU%#X0 z04n=;kp$*^*aYmn*cx%JY9>_aDAT$x))OlD>k+=FNE;2*h-#j6oSE)6XhOkCxi@Gs zD!P&FIyu!xFlcWBhVgsusHi+gNbCXvS|@MW7uU*qWii z-}GBTMs?z5Eq=4u|`U3ff?nOk&{pJIZMCQn8Cec&+Nv#`~fPVV1C5HIh^G`W@`>_z6MG`VQ7j)E*WtLMKpYXx;f3+`L_m?{_7D2CkIVVPlbwXWgb4 z`{v^S-RFA`0m{7B{fx_vPq7%hz@5~cH7ey#<3F6~=j1Ydhz5EQz^^s`vM?&i9mkfF z)xb%xz-$>K$ulh*Jf8@^(=p^`Lei{C$G*}_JZBOm9SxMSrK!7+KYnj?2KHKFA-Uo* zk`c-;1h`f*x|k#B`aLe+!|cH{-*Iu8 zkhJ=Xq~>fpttdW6n)@9R<248ZK5_TKC)5YZ^6$LSo}JOUgHfInb)g6+|)) z0LW$r*vDMsRj25et>5Jj&ELbv_~~G$R_`83f9Cmh05DL-B}=yr32$|p7c!O$53f!8 z)dP)Oel4e(WZ0OKD)_J#_WqVe_(S>s0A4_$zn-L{V>D6X70)ehAvb(Vsc(sM zbN3vK+neLS*6~Js#(;&3@Qi$Li{{;gKwqIB1MMevh$#6X0z@EW2fskFb

-M)f^bZisMw==iK_>ysZ_GDvFeiuo-x-beCkb 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%0A~Dn5;?g?=vIH%pSW%ox2sC5-Mj%jCPesi-?F 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�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