From 238ab5210ee951dbfb6b91f0f14feac1a8e673ba Mon Sep 17 00:00:00 2001 From: NybergWISC Date: Fri, 10 Jun 2022 13:31:39 -0500 Subject: [PATCH 001/120] Initial Mesh Sampling Changes --- include/openmc/mesh.h | 17 +++++++++ src/mesh.cpp | 84 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 101 insertions(+) diff --git a/include/openmc/mesh.h b/include/openmc/mesh.h index eece0f1ff..6bf49b221 100644 --- a/include/openmc/mesh.h +++ b/include/openmc/mesh.h @@ -75,6 +75,12 @@ public: // Methods + //! Sample a mesh volume using a certain seed + // + //! \param[in] seed Seed to use for random sampling + //! \param[out] r Position within tet + virtual Position sample(uint64_t* seed) const=0; + //! Determine which bins were crossed by a particle // //! \param[in] r0 Previous position of the particle @@ -160,6 +166,8 @@ public: } }; + Position sample(uint64_t* seed) const override; + int get_bin(Position r) const override; int n_bins() const override; @@ -460,7 +468,12 @@ public: static const std::string mesh_type; virtual std::string get_mesh_type() const override; + //! Sample a tetrahedron for an unstructured mesh + virtual Position sample_tet(std::array coords, uint64_t* seed) const; + // Overridden Methods + // TODO Position sample(uint64_t* seed) const=0; + void surface_bins_crossed(Position r0, Position r1, const Direction& u, vector& bins) const override; @@ -552,6 +565,8 @@ public: // Overridden Methods + Position sample(uint64_t* seed) const override; + void bins_crossed(Position r0, Position r1, const Direction& u, vector& bins, vector& lengths) const override; @@ -714,6 +729,8 @@ public: void bins_crossed(Position r0, Position r1, const Direction& u, vector& bins, vector& lengths) const override; + Position sample(uint64_t* seed) const override; + int get_bin(Position r) const override; int n_bins() const override; diff --git a/src/mesh.cpp b/src/mesh.cpp index d9ad0ce8a..191f0af5d 100644 --- a/src/mesh.cpp +++ b/src/mesh.cpp @@ -195,6 +195,37 @@ UnstructuredMesh::UnstructuredMesh(pugi::xml_node node) : Mesh(node) } } +// Sample barycentric coordinates given a seed and the vertex positions and return the sampled position +Position UnstructuredMesh::sample_tet(std::array coords, uint64_t* seed) const { + // Uniform distribution + double s = prn(seed); + double t = prn(seed); + double u = prn(seed); + + // From PyNE implementation of moab tet sampling + // C. Rocchini and P. Cignoni, “Generating Random Points in a Tetrahedron,” + if (s + t > 1) { + s = 1.0 - s; + t = 1.0 - t; + } + if (s + t + u > 1) { + if (t + u > 1) { + double old_t = t; + t = 1.0 - u; + u = 1.0 - s - old_t; + }else if (t + u <= 1) { + double old_s = s; + s = 1.0 - t - u; + u = old_s + t + u - 1; + } + } + return s*(coords[1]-coords[0]) + + t*(coords[2]-coords[0]) + + u*(coords[3]-coords[0]) + + coords[0]; + +} + const std::string UnstructuredMesh::mesh_type = "unstructured"; std::string UnstructuredMesh::get_mesh_type() const @@ -327,6 +358,10 @@ StructuredMesh::MeshIndex StructuredMesh::get_indices_from_bin(int bin) const return ijk; } +Position StructuredMesh::sample(uint64_t* seed) const { + fatal_error("Position sampling on structured meshes is not yet implemented"); +} + int StructuredMesh::get_bin(Position r) const { // Determine indices @@ -2049,6 +2084,36 @@ std::string MOABMesh::library() const return mesh_lib_type; } +// Sample position within a tet for MOAB type tets +Position MOABMesh::sample(uint64_t* seed) const { + // Get bin # assuming equal weights, IMP weigh by activity + int64_t tet_bin = round(n_bins()*prn(seed)); + + moab::EntityHandle tet_ent = get_ent_handle_from_bin(tet_bin); + + // Get vertex coordinates for MOAB tet + vector conn1; + moab::ErrorCode rval = mbi_->get_connectivity(&tet_ent, 1, conn1); + if (rval != moab::MB_SUCCESS) { + fatal_error("Failed to get tet connectivity"); + } + moab::CartVect p[4]; + rval = mbi_->get_coords(conn1.data(), conn1.size(), p[0].array()); + if (rval != moab::MB_SUCCESS) { + fatal_error("Failed to get tet coords"); + } + + std::array tet_verts; + for (int i = 0; i < 4; i++) { + tet_verts[i] = {p[i][0], p[i][1], p[i][2]}; + } + // Samples position within tet using Barycentric stuff + Position r = this->sample_tet(tet_verts, seed); + + return r; +} + + double MOABMesh::tet_volume(moab::EntityHandle tet) const { vector conn; @@ -2501,6 +2566,25 @@ void LibMesh::initialize() bbox_ = libMesh::MeshTools::create_bounding_box(*m_); } +// Sample position within a tet for LibMesh type tets +Position LibMesh::sample(uint64_t* seed) const { + // Get bin # assuming equal weights, IMP weigh by activity + int64_t tet_xi = round(n_bins()*prn(seed)); + + const auto& elem = get_element_from_bin(tet_xi); + + // Get tet vertex coordinates from LibMesh + std::array tet_verts; + for (int i = 0; i < elem.n_nodes(); i++) { + auto node_ref = elem.node_ref(i); + tet_verts[i] = {node_ref(0), node_ref(1), node_ref(2)}; + } + // Samples position within tet using Barycentric coordinates + Position r = this->sample_tet(tet_verts, seed); + + return r; +} + Position LibMesh::centroid(int bin) const { const auto& elem = this->get_element_from_bin(bin); From 80077ed3fd04758a1fb10095648e977b515a5305 Mon Sep 17 00:00:00 2001 From: NybergWISC Date: Tue, 21 Jun 2022 12:06:45 -0500 Subject: [PATCH 002/120] New changes to spatial distribution and source to include mesh sources. Made some edits suggested by Shriwise, now compiles successfully --- include/openmc/distribution_spatial.h | 19 +++++++++++++++++++ src/distribution_spatial.cpp | 25 +++++++++++++++++++++++++ src/mesh.cpp | 6 ++++-- src/source.cpp | 2 ++ 4 files changed, 50 insertions(+), 2 deletions(-) diff --git a/include/openmc/distribution_spatial.h b/include/openmc/distribution_spatial.h index 5e426b878..8a77a4bd3 100644 --- a/include/openmc/distribution_spatial.h +++ b/include/openmc/distribution_spatial.h @@ -5,6 +5,7 @@ #include "openmc/distribution.h" #include "openmc/position.h" +#include "openmc/mesh.h" namespace openmc { @@ -94,6 +95,24 @@ private: Position origin_; //!< Cartesian coordinates of the sphere center }; +//============================================================================== +//! Distribution of points within a mesh +//============================================================================== + +class MeshIndependent : public SpatialDistribution { +public: + explicit MeshIndependent(pugi::xml_node node); + + //! Sample a position from the distribution + //! \param seed Pseudorandom number seed pointer + //! \return Sampled position + Position sample(uint64_t* seed) const; + +private: + UnstructuredMesh* umesh_ptr_; + Position sampled_; +}; + //============================================================================== //! Uniform distribution of points over a box //============================================================================== diff --git a/src/distribution_spatial.cpp b/src/distribution_spatial.cpp index a06f84d80..f78c2c49b 100644 --- a/src/distribution_spatial.cpp +++ b/src/distribution_spatial.cpp @@ -180,6 +180,31 @@ Position SphericalIndependent::sample(uint64_t* seed) const return {x, y, z}; } +//============================================================================== +// MeshIndependent implementation +//============================================================================== + +// Loosely adapted Patrick's code shown here +MeshIndependent::MeshIndependent(pugi::xml_node node) +{ + // No in-tet distributions implemented, could include distributions for the barycentric coords + + int32_t mesh_id = std::stoi(get_node_value(node, "mesh")); + const auto& mesh_ptr = model::meshes[mesh_id]; + + // line from Patrick code, unsure of use + // int bin = mesh_ptr->get_bin(); + const UnstructuredMesh* umesh_ptr_ = dynamic_cast(mesh_ptr.get()); + if (!umesh_ptr_) {fatal_error("Mesh passed to spatial distribution is not an unstructured mesh object"); } +} + +Position MeshIndependent::sample(uint64_t* seed) const +{ + Position sampled_ = umesh_ptr_->sample(seed); + return sampled_; +} + + //============================================================================== // SpatialBox implementation //============================================================================== diff --git a/src/mesh.cpp b/src/mesh.cpp index 191f0af5d..56d793079 100644 --- a/src/mesh.cpp +++ b/src/mesh.cpp @@ -2087,7 +2087,8 @@ std::string MOABMesh::library() const // Sample position within a tet for MOAB type tets Position MOABMesh::sample(uint64_t* seed) const { // Get bin # assuming equal weights, IMP weigh by activity - int64_t tet_bin = round(n_bins()*prn(seed)); + // This may underweigh first and last bins + int64_t tet_bin = trunc(n_bins()*prn(seed)); moab::EntityHandle tet_ent = get_ent_handle_from_bin(tet_bin); @@ -2569,7 +2570,8 @@ void LibMesh::initialize() // Sample position within a tet for LibMesh type tets Position LibMesh::sample(uint64_t* seed) const { // Get bin # assuming equal weights, IMP weigh by activity - int64_t tet_xi = round(n_bins()*prn(seed)); + // This may underweight first and last bin by 1/2 TODO + int64_t tet_xi = trunc(n_bins()*prn(seed)); const auto& elem = get_element_from_bin(tet_xi); diff --git a/src/source.cpp b/src/source.cpp index 3a80e1156..58aac711f 100644 --- a/src/source.cpp +++ b/src/source.cpp @@ -94,6 +94,8 @@ IndependentSource::IndependentSource(pugi::xml_node node) space_ = UPtrSpace {new CylindricalIndependent(node_space)}; } else if (type == "spherical") { space_ = UPtrSpace {new SphericalIndependent(node_space)}; + } else if (type =="mesh"){ + space_ = UPtrSpace {new MeshIndependent(node_space)}; } else if (type == "box") { space_ = UPtrSpace {new SpatialBox(node_space)}; } else if (type == "fission") { From 9f6d536959e3bdfb2d47809410d40c317e253682 Mon Sep 17 00:00:00 2001 From: NybergWISC Date: Wed, 6 Jul 2022 08:59:12 -0500 Subject: [PATCH 003/120] Commit including most of the sampling work in distribution_spatial.cpp and testing --- include/openmc/distribution_spatial.h | 8 +- include/openmc/mesh.h | 8 +- openmc/settings.py | 10 + openmc/source.py | 1 + openmc/stats/multivariate.py | 118 ++ src/distribution_spatial.cpp | 70 +- src/initialize.cpp | 1 - src/mesh.cpp | 18 +- src/settings.cpp | 10 +- src/source.cpp | 4 - .../source_sampling/__init__.py | 0 .../source_sampling/inputs_true0.dat | 1066 ++++++++++++++++ .../source_sampling/inputs_true1.dat | 1068 +++++++++++++++++ .../source_sampling/inputs_true2.dat | 1066 ++++++++++++++++ .../source_sampling/inputs_true3.dat | 1068 +++++++++++++++++ .../unstructured_mesh/source_sampling/test.py | 190 +++ .../source_sampling/test_mesh_tets.e | 1 + .../source_sampling/test_mesh_tets.exo | 1 + 18 files changed, 4669 insertions(+), 39 deletions(-) create mode 100644 tests/regression_tests/unstructured_mesh/source_sampling/__init__.py create mode 100644 tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat create mode 100644 tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat create mode 100644 tests/regression_tests/unstructured_mesh/source_sampling/inputs_true2.dat create mode 100644 tests/regression_tests/unstructured_mesh/source_sampling/inputs_true3.dat create mode 100644 tests/regression_tests/unstructured_mesh/source_sampling/test.py create mode 120000 tests/regression_tests/unstructured_mesh/source_sampling/test_mesh_tets.e create mode 120000 tests/regression_tests/unstructured_mesh/source_sampling/test_mesh_tets.exo diff --git a/include/openmc/distribution_spatial.h b/include/openmc/distribution_spatial.h index 8a77a4bd3..1d6d6413b 100644 --- a/include/openmc/distribution_spatial.h +++ b/include/openmc/distribution_spatial.h @@ -110,7 +110,13 @@ public: private: UnstructuredMesh* umesh_ptr_; - Position sampled_; + int32_t mesh_map_idx_; + std::string sample_scheme_; + double total_weight_; + std::vector mesh_CDF_; + std::vector mesh_weights_; + int64_t tot_bins_; + }; //============================================================================== diff --git a/include/openmc/mesh.h b/include/openmc/mesh.h index 6bf49b221..402b22455 100644 --- a/include/openmc/mesh.h +++ b/include/openmc/mesh.h @@ -79,7 +79,7 @@ public: // //! \param[in] seed Seed to use for random sampling //! \param[out] r Position within tet - virtual Position sample(uint64_t* seed) const=0; + virtual Position sample(uint64_t* seed, int32_t tet_bin) const=0; //! Determine which bins were crossed by a particle // @@ -166,7 +166,7 @@ public: } }; - Position sample(uint64_t* seed) const override; + Position sample(uint64_t* seed, int32_t tet_bin) const override; int get_bin(Position r) const override; @@ -565,7 +565,7 @@ public: // Overridden Methods - Position sample(uint64_t* seed) const override; + Position sample(uint64_t* seed, int32_t tet_bin) const override; void bins_crossed(Position r0, Position r1, const Direction& u, vector& bins, vector& lengths) const override; @@ -729,7 +729,7 @@ public: void bins_crossed(Position r0, Position r1, const Direction& u, vector& bins, vector& lengths) const override; - Position sample(uint64_t* seed) const override; + Position sample(uint64_t* seed, int32_t tet_bin) const override; int get_bin(Position r) const override; diff --git a/openmc/settings.py b/openmc/settings.py index 6f3ef5ab4..ecbe2d7ca 100644 --- a/openmc/settings.py +++ b/openmc/settings.py @@ -11,10 +11,12 @@ from typing import Optional from xml.etree import ElementTree as ET import openmc.checkvalue as cv +from openmc.stats.multivariate import MeshIndependent from . import RegularMesh, Source, VolumeCalculation, WeightWindows from ._xml import clean_indentation, get_text, reorder_attributes from openmc.checkvalue import PathLike +from .mesh import MeshBase class RunMode(Enum): @@ -975,6 +977,8 @@ class Settings: def _create_source_subelement(self, root): for source in self.source: root.append(source.to_xml_element()) + if isinstance(source.space, MeshIndependent): + root.append(source.space.mesh.to_xml_element()) def _create_volume_calcs_subelement(self, root): for calc in self.volume_calculations: @@ -1323,6 +1327,12 @@ class Settings: def _source_from_xml_element(self, root): for elem in root.findall('source'): self.source.append(Source.from_xml_element(elem)) + if isinstance(Source.from_xml_element(elem), MeshIndependent): + mesh_id = int(get_text(elem, 'mesh')) + path = f"./mesh[@id='{mesh_id}']" + mesh_elem = root.find(path) + if mesh_elem is not None: + self.source.space.mesh = MeshBase.from_xml_element(mesh_elem) def _volume_calcs_from_xml_element(self, root): volume_elems = root.findall("volume_calc") diff --git a/openmc/source.py b/openmc/source.py index 9293a5953..32f8ea3d6 100644 --- a/openmc/source.py +++ b/openmc/source.py @@ -16,6 +16,7 @@ from openmc.checkvalue import PathLike from openmc.stats.multivariate import UnitSphere, Spatial from openmc.stats.univariate import Univariate from ._xml import get_text +from .mesh import MeshBase class Source: diff --git a/openmc/stats/multivariate.py b/openmc/stats/multivariate.py index 8bb319aa4..4484c62a6 100644 --- a/openmc/stats/multivariate.py +++ b/openmc/stats/multivariate.py @@ -3,12 +3,14 @@ from collections.abc import Iterable from math import pi, cos from numbers import Real from xml.etree import ElementTree as ET +from xmlrpc.client import boolean import numpy as np import openmc.checkvalue as cv from .._xml import get_text from .univariate import Univariate, Uniform, PowerLaw +from ..mesh import MeshBase class UnitSphere(ABC): @@ -269,6 +271,8 @@ class Spatial(ABC): return CylindricalIndependent.from_xml_element(elem) elif distribution == 'spherical': return SphericalIndependent.from_xml_element(elem) + elif distribution == 'mesh': + return MeshIndependent.from_xml_element(elem) elif distribution == 'box' or distribution == 'fission': return Box.from_xml_element(elem) elif distribution == 'point': @@ -616,6 +620,120 @@ class CylindricalIndependent(Spatial): origin = [float(x) for x in elem.get('origin').split()] return cls(r, phi, z, origin=origin) +class MeshIndependent(Spatial): + """Spatial distribution for a mesh. + + This distribution allows one to specify a mesh to sample over and the scheme to sample over the entire mesh. + + .. versionadded:: 0.13 + + Parameters + ---------- + elem_weight_scheme : str, optional + The scheme for weighting and sampling elements from the mesh. Options are 'file' and 'volume' based weights. + mesh : openmc.MeshBase + The mesh instance used for sampling, mesh is written into settings.xml, mesh.id is written into the source distribution + weights_from_file : Iterable of Real, optional + A list of values which represent the weights of each element + + + Attributes + ---------- + elem_weight_scheme : str, optional + Weighting scheme for sampling element from mesh, defaults to volume + mesh : openmc.MeshBase + The mesh instance used for sampling, mesh is written into settings.xml, mesh.id is written into the source distribution + weights_from_file : Iterable of Real, optional + A list of values which represent the weights of each element + + """ + + def __init__(self, mesh, weights_from_file=None, volume_weighting=False): + self.mesh = mesh + self.weights_from_file = weights_from_file + self.volume_weighting = volume_weighting + + @property + def mesh(self): + return self._mesh + + @mesh.setter + def mesh(self, mesh): + if mesh != None: + cv.check_type('Unstructured Mesh', mesh, MeshBase) + self._mesh = mesh + + @property + def volume_weighting(self): + return self._volume_weighting + + @volume_weighting.setter + def volume_weighting(self, volume_weighting): + cv.check_type('Scheme for sampling an element from the mesh', volume_weighting, bool) + self._volume_weighting = volume_weighting + + @property + def weights_from_file(self): + return self._weights_from_file + + @weights_from_file.setter + def weights_from_file(self, given_weights): + if given_weights is not None: + self._weights_from_file = (np.array(given_weights, dtype=float)).flatten() + else: + self._weights_from_file = None + + @property + def num_weight_bins(self): + if self.weights_from_file == None: + raise ValueError('Weight bins are not set') + return self.weights_from_file.size + + def to_xml_element(self): + """Return XML representation of the spatial distribution + + Returns + ------- + element : xml.etree.ElementTree.Element + XML element containing spatial distribution data + + """ + element = ET.Element('space') + element.set('type', 'mesh') + element.set("mesh_id", str(self.mesh.id)) + element.set("volume_weighting", str(self.volume_weighting)) + + if self.weights_from_file is not None: + subelement = ET.SubElement(element, 'weights_from_file') + subelement.text = ' '.join(str(e) for e in self.weights_from_file) + + return element + + @classmethod + def from_xml_element(cls, elem): + """Generate spatial distribution from an XML element + + Parameters + ---------- + elem : xml.etree.ElementTree.Element + XML element + + Returns + ------- + openmc.stats.MeshIndependent + Spatial distribution generated from XML element + + """ + + mesh_id = int(elem.get('mesh_id')) + volume_weighting = elem.get("volume_weighting") + volume_weighting = get_text(elem, 'volume_weighting').lower() == 'true' + if elem.get('weights_from_file') is not None: + weights_from_file = [float(b) for b in get_text(elem, 'weights_from_file').split()] + else: + weights_from_file = None + return cls(volume_weighting, mesh_id, weights_from_file) + class Box(Spatial): """Uniform distribution of coordinates in a rectangular cuboid. diff --git a/src/distribution_spatial.cpp b/src/distribution_spatial.cpp index f78c2c49b..fdac3433a 100644 --- a/src/distribution_spatial.cpp +++ b/src/distribution_spatial.cpp @@ -3,6 +3,11 @@ #include "openmc/error.h" #include "openmc/random_lcg.h" #include "openmc/xml_interface.h" +#include "openmc/mesh.h" +#include "openmc/search.h" + +#include +#include namespace openmc { @@ -184,24 +189,71 @@ Position SphericalIndependent::sample(uint64_t* seed) const // MeshIndependent implementation //============================================================================== -// Loosely adapted Patrick's code shown here MeshIndependent::MeshIndependent(pugi::xml_node node) { // No in-tet distributions implemented, could include distributions for the barycentric coords + // Read in unstructured mesh from mesh_id value + int32_t mesh_id = std::stoi(get_node_value(node, "mesh_id")); + // Get pointer to spatial distribution + mesh_map_idx_ = model::mesh_map.at(mesh_id); + const auto& mesh_ptr = model::meshes[mesh_map_idx_]; - int32_t mesh_id = std::stoi(get_node_value(node, "mesh")); - const auto& mesh_ptr = model::meshes[mesh_id]; - - // line from Patrick code, unsure of use - // int bin = mesh_ptr->get_bin(); - const UnstructuredMesh* umesh_ptr_ = dynamic_cast(mesh_ptr.get()); + // Check whether mesh pointer points to an unstructured mesh + umesh_ptr_ = dynamic_cast(mesh_ptr.get()); if (!umesh_ptr_) {fatal_error("Mesh passed to spatial distribution is not an unstructured mesh object"); } + + // Create CDF based on weighting scheme + tot_bins_ = umesh_ptr_->n_bins(); + std::vector weights = {}; + weights.resize(tot_bins_); + double temp_total_weight = 0.0; + mesh_CDF_.resize(tot_bins_+1); + mesh_CDF_[0] = {0.0}; + total_weight_ = 0.0; + mesh_weights_.resize(tot_bins_); + + // Create cdfs for sampling for an element over a mesh + // Volume scheme is weighted by the volume of each tet + // File scheme is weighted by an array given in the xml file + + if (check_for_node(node, "weights_from_file")) { + mesh_weights_ = get_node_array(node, "weights_from_file"); + if (mesh_weights_.size() != tot_bins_){ + write_message("WARNING: The size of the weights array from the xml file does not equal the number of elements in the mesh."); + } if (get_node_value_bool(node, "volume_weighting")){ + for (int i = 0; i < tot_bins_; i++){ + weights[i] = mesh_weights_[i]*umesh_ptr_->volume(i); + } + } else if (!get_node_value_bool(node, "volume_weighting")){ + for (int i = 0; i < tot_bins_; i++){ + weights[i] = mesh_weights_[i]; + } + } + } else if (get_node_value_bool(node, "volume_weighting")){ + for (int i = 0; ivolume(i); + } + } else { + for (int i = 0; isample(seed); - return sampled_; + // Create random variable for sampling element from mesh + float eta = prn(seed); + // Sample over the CDF defined in initialization above + int32_t tet_bin = lower_bound_index(mesh_CDF_.begin(), mesh_CDF_.end(), eta); + return umesh_ptr_->sample(seed, tet_bin); } diff --git a/src/initialize.cpp b/src/initialize.cpp index 0c137795b..913e0b1a9 100644 --- a/src/initialize.cpp +++ b/src/initialize.cpp @@ -405,7 +405,6 @@ void read_separate_xml_files() // Finalize cross sections having assigned temperatures finalize_cross_sections(); - read_tallies_xml(); // Initialize distribcell_filters diff --git a/src/mesh.cpp b/src/mesh.cpp index 56d793079..5225d3074 100644 --- a/src/mesh.cpp +++ b/src/mesh.cpp @@ -358,7 +358,7 @@ StructuredMesh::MeshIndex StructuredMesh::get_indices_from_bin(int bin) const return ijk; } -Position StructuredMesh::sample(uint64_t* seed) const { +Position StructuredMesh::sample(uint64_t* seed, int32_t tet_bin) const { fatal_error("Position sampling on structured meshes is not yet implemented"); } @@ -2085,10 +2085,7 @@ std::string MOABMesh::library() const } // Sample position within a tet for MOAB type tets -Position MOABMesh::sample(uint64_t* seed) const { - // Get bin # assuming equal weights, IMP weigh by activity - // This may underweigh first and last bins - int64_t tet_bin = trunc(n_bins()*prn(seed)); +Position MOABMesh::sample(uint64_t* seed, int32_t tet_bin) const { moab::EntityHandle tet_ent = get_ent_handle_from_bin(tet_bin); @@ -2568,18 +2565,13 @@ void LibMesh::initialize() } // Sample position within a tet for LibMesh type tets -Position LibMesh::sample(uint64_t* seed) const { - // Get bin # assuming equal weights, IMP weigh by activity - // This may underweight first and last bin by 1/2 TODO - int64_t tet_xi = trunc(n_bins()*prn(seed)); - - const auto& elem = get_element_from_bin(tet_xi); - +Position LibMesh::sample(uint64_t* seed, int32_t tet_bin) const { + const auto& elem = get_element_from_bin(tet_bin); // Get tet vertex coordinates from LibMesh std::array tet_verts; for (int i = 0; i < elem.n_nodes(); i++) { auto node_ref = elem.node_ref(i); - tet_verts[i] = {node_ref(0), node_ref(1), node_ref(2)}; + tet_verts[i] = {node_ref(0), node_ref(1), node_ref(2)}; } // Samples position within tet using Barycentric coordinates Position r = this->sample_tet(tet_verts, seed); diff --git a/src/settings.cpp b/src/settings.cpp index 6386ce52b..c3ecd46b4 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -279,6 +279,9 @@ void read_settings_xml(pugi::xml_node root) } } + // Check for user meshes and allocate + read_meshes(root); + // Look for deprecated cross_sections.xml file in settings.xml if (check_for_node(root, "cross_sections")) { warning( @@ -368,7 +371,6 @@ void read_settings_xml(pugi::xml_node root) } } } - if (run_mode == RunMode::EIGENVALUE || run_mode == RunMode::FIXED_SOURCE) { // Read run parameters get_run_parameters(node_mode); @@ -432,7 +434,6 @@ void read_settings_xml(pugi::xml_node root) "the OMP_NUM_THREADS environment variable to set the number of " "threads."); } - // ========================================================================== // EXTERNAL SOURCE @@ -461,7 +462,6 @@ void read_settings_xml(pugi::xml_node root) model::external_sources.push_back(make_unique(node)); } } - // Check if the user has specified to read surface source if (check_for_node(root, "surf_source_read")) { surf_source_read = true; @@ -532,7 +532,6 @@ void read_settings_xml(pugi::xml_node root) std::stod(get_node_value(node_cutoff, "energy_positron")); } } - // Particle trace if (check_for_node(root, "trace")) { auto temp = get_node_array(root, "trace"); @@ -564,9 +563,6 @@ void read_settings_xml(pugi::xml_node root) } } - // Read meshes - read_meshes(root); - // Shannon Entropy mesh if (check_for_node(root, "entropy_mesh")) { int temp = std::stoi(get_node_value(root, "entropy_mesh")); diff --git a/src/source.cpp b/src/source.cpp index 58aac711f..2ceff9964 100644 --- a/src/source.cpp +++ b/src/source.cpp @@ -111,7 +111,6 @@ IndependentSource::IndependentSource(pugi::xml_node node) // If no spatial distribution specified, make it a point source space_ = UPtrSpace {new SpatialPoint()}; } - // Determine external source angular distribution if (check_for_node(node, "angle")) { // Get pointer to angular distribution @@ -131,11 +130,9 @@ IndependentSource::IndependentSource(pugi::xml_node node) fatal_error(fmt::format( "Invalid angular distribution for external source: {}", type)); } - } else { angle_ = UPtrAngle {new Isotropic()}; } - // Determine external source energy distribution if (check_for_node(node, "energy")) { pugi::xml_node node_dist = node.child("energy"); @@ -144,7 +141,6 @@ IndependentSource::IndependentSource(pugi::xml_node node) // Default to a Watt spectrum with parameters 0.988 MeV and 2.249 MeV^-1 energy_ = UPtrDist {new Watt(0.988e6, 2.249e-6)}; } - // Determine external source time distribution if (check_for_node(node, "time")) { pugi::xml_node node_dist = node.child("time"); diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/__init__.py b/tests/regression_tests/unstructured_mesh/source_sampling/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat new file mode 100644 index 000000000..ee30a9dbe --- /dev/null +++ b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat @@ -0,0 +1,1066 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + fixed source + 5000 + 2 + + + + 15000000.0 1.0 + + + + test_mesh_tets.e + + 10000 + + + + + scatter total absorption + + diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat new file mode 100644 index 000000000..fca2bb796 --- /dev/null +++ b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat @@ -0,0 +1,1068 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + fixed source + 5000 + 2 + + + 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 + + + 15000000.0 1.0 + + + + test_mesh_tets.e + + 10000 + + + + + scatter total absorption + + diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true2.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true2.dat new file mode 100644 index 000000000..2cd7bf746 --- /dev/null +++ b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true2.dat @@ -0,0 +1,1066 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + fixed source + 5000 + 2 + + + + 15000000.0 1.0 + + + + test_mesh_tets.e + + 10000 + + + + + scatter total absorption + + diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true3.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true3.dat new file mode 100644 index 000000000..271ef9b1b --- /dev/null +++ b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true3.dat @@ -0,0 +1,1068 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + fixed source + 5000 + 2 + + + 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 + + + 15000000.0 1.0 + + + + test_mesh_tets.e + + 10000 + + + + + scatter total absorption + + diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test.py b/tests/regression_tests/unstructured_mesh/source_sampling/test.py new file mode 100644 index 000000000..3149e80aa --- /dev/null +++ b/tests/regression_tests/unstructured_mesh/source_sampling/test.py @@ -0,0 +1,190 @@ +import glob +from itertools import product +import os + +import openmc +import openmc.lib +import numpy as np + +import pytest +from tests.testing_harness import PyAPITestHarness +from tests.regression_tests import config +from subprocess import call + +TETS_PER_VOXEL = 12 + +class UnstructuredMeshSourceTest(PyAPITestHarness): + def __init__(self, statepoint_name, model, inputs_true, schemes): + + super().__init__(statepoint_name, model, inputs_true) + self.schemes = schemes + + def _run_openmc(self): + kwargs = {'openmc_exec' : config['exe'], + 'event_based' : config['event'], + 'tracks' : "True"} + + if config['mpi']: + kwargs['mpi_args'] = [config['mpiexec'], '-n', config['mpi_np']] + + openmc.run(**kwargs) + + def _compare_results(self): + + average_in_hex = 10.0 + + + call(['../../../../scripts/openmc-track-combine', '-o', 'tracks.h5'] + + glob.glob('tracks_p*.h5')) + + # loop over the tracks and get data + tracks = openmc.Tracks(filepath='tracks.h5') + tracks_born = np.empty((len(tracks), 1)) + decimals = 0 + + instances = np.zeros(1000) + + for i in range(0, len(tracks)): + tracks_born[i] = tracks[i].particle_tracks[0].states['cell_id'][0] + instances[int(tracks_born[i])-1] = instances[int(tracks_born[i])-1]+1 + + if self.schemes == "file": + assert(instances[0] > 0 and instances[1] > 0) + assert(instances[0] > instances[1]) + + for i in range(0, len(instances)): + if i != 0 and i != 1: + assert(instances[i] == 0) + + else: + assert(np.average(instances) == average_in_hex) + assert(np.std(instances) < np.average(instances)) + assert(np.amax(instances) < np.average(instances)+6*np.std(instances)) + + + def _cleanup(self): + super()._cleanup() + output = glob.glob('tally*.vtk') + output += glob.glob('tally*.e') + for f in output: + if os.path.exists(f): + os.remove(f) + + + + +param_values = (['libmesh', 'moab'], # mesh libraries + ['volume', 'file']) # Element weighting schemes + +test_cases = [] +# for i, (lib, holes) in enumerate(product(*param_values)): +for i, (lib, schemes) in enumerate(product(*param_values)): + test_cases.append({'library' : lib, + 'schemes' : schemes, + 'inputs_true' : 'inputs_true{}.dat'.format(i)}) + + +@pytest.mark.parametrize("test_opts", test_cases) +def test_unstructured_mesh(test_opts): + + openmc.reset_auto_ids() + + # skip the test if the library is not enabled + if test_opts['library'] == 'moab' and not openmc.lib._dagmc_enabled(): + pytest.skip("DAGMC (and MOAB) mesh not enabled in this build.") + + if test_opts['library'] == 'libmesh' and not openmc.lib._libmesh_enabled(): + pytest.skip("LibMesh is not enabled in this build.") + + ### Materials ### + materials = openmc.Materials() + + water_mat = openmc.Material(material_id=3, name="water") + water_mat.add_nuclide("H1", 2.0) + water_mat.add_nuclide("O16", 1.0) + water_mat.set_density("atom/b-cm", 0.07416) + materials.append(water_mat) + + materials.export_to_xml() + + ### Geometry ### + dimen = 10 + size_hex = 20.0/dimen + + ### Geometry ### + cell = np.empty((dimen, dimen, dimen), dtype=object) + surfaces = np.empty((dimen+1, 3), dtype=object) + + geometry = openmc.Geometry() + universe = openmc.Universe(universe_id=1, name="Contains all hexes") + + for i in range(0,dimen+1): + surfaces[i][0] = openmc.XPlane(-10.0+i*size_hex, name="X plane at "+str(-10.0+i*size_hex)) + surfaces[i][1] = openmc.YPlane(-10.0+i*size_hex, name="Y plane at "+str(-10.0+i*size_hex)) + surfaces[i][2] = openmc.ZPlane(-10.0+i*size_hex, name="Z plane at "+str(-10.0+i*size_hex)) + + surfaces[i][0].boundary_type = 'vacuum' + surfaces[i][1].boundary_type = 'vacuum' + surfaces[i][2].boundary_type = 'vacuum' + + for k in range(0,dimen): + for j in range(0,dimen): + for i in range(0,dimen): + cell[i][j][k] = openmc.Cell(name=("x " + str(i) +" y " + str(j) +" z " + str(k))) + cell[i][j][k].region = +surfaces[i][0] & -surfaces[i+1][0] & \ + +surfaces[j][1] & -surfaces[j+1][1] & \ + +surfaces[k][2] & -surfaces[k+1][2] + cell[i][j][k].fill = water_mat + universe.add_cell(cell[i][j][k]) + + geometry = openmc.Geometry(universe) + + mesh_filename = "test_mesh_tets.e" + + uscd_mesh = openmc.UnstructuredMesh(mesh_filename, test_opts['library']) + + ### Tallies ### + + # create tallies + tallies = openmc.Tallies() + + tally1 = openmc.Tally(1) + tally1.scores = ['scatter', 'total', 'absorption'] + # Export tallies + tallies = openmc.Tallies([tally1]) + tallies.export_to_xml() + + ### Settings ### + settings = openmc.Settings() + settings.run_mode = 'fixed source' + settings.particles = 5000 + settings.batches = 2 + + # settings.create_fission_neutrons = False + settings.tracks = [(1, 1, 1)] + settings.max_tracks = 10000 + + # source setup + if test_opts['schemes'] == 'volume': + space = openmc.stats.MeshIndependent(volume_weighting=True, mesh=uscd_mesh) + elif test_opts['schemes'] == 'file': + array = np.zeros(12000) + for i in range(0, 12): + array[i] = 10 + array[i+12] = 2 + space = openmc.stats.MeshIndependent(volume_weighting=False, weights_from_file=array, mesh=uscd_mesh) + + energy = openmc.stats.Discrete(x=[15.e+06], p=[1.0]) + source = openmc.Source(space=space, energy=energy) + settings.source = source + + model = openmc.model.Model(geometry=geometry, + materials=materials, + tallies=tallies, + settings=settings) + + harness = UnstructuredMeshSourceTest('statepoint.2.h5', + model, + test_opts['inputs_true'], + test_opts['schemes']) + harness.main() diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test_mesh_tets.e b/tests/regression_tests/unstructured_mesh/source_sampling/test_mesh_tets.e new file mode 120000 index 000000000..0aa0d1a23 --- /dev/null +++ b/tests/regression_tests/unstructured_mesh/source_sampling/test_mesh_tets.e @@ -0,0 +1 @@ +../test_mesh_tets.e \ No newline at end of file diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test_mesh_tets.exo b/tests/regression_tests/unstructured_mesh/source_sampling/test_mesh_tets.exo new file mode 120000 index 000000000..6d40011d4 --- /dev/null +++ b/tests/regression_tests/unstructured_mesh/source_sampling/test_mesh_tets.exo @@ -0,0 +1 @@ +../test_mesh_tets.exo \ No newline at end of file From 7a3a1876e1a0dc063e43fd1b03ef7d0da1633ff0 Mon Sep 17 00:00:00 2001 From: Matthew Nyberg Date: Mon, 8 Aug 2022 08:35:13 -0500 Subject: [PATCH 004/120] Reorganize imports in source_sampling/test.py Co-authored-by: Patrick Shriwise --- .../unstructured_mesh/source_sampling/test.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test.py b/tests/regression_tests/unstructured_mesh/source_sampling/test.py index 3149e80aa..f6262971a 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/test.py +++ b/tests/regression_tests/unstructured_mesh/source_sampling/test.py @@ -2,11 +2,12 @@ import glob from itertools import product import os -import openmc -import openmc.lib +import pytest import numpy as np -import pytest +import openmc +import openmc.lib + from tests.testing_harness import PyAPITestHarness from tests.regression_tests import config from subprocess import call From 7c40badfbc62bed28d0771fdc656f4baff41e25b Mon Sep 17 00:00:00 2001 From: NybergWISC Date: Mon, 8 Aug 2022 11:21:09 -0500 Subject: [PATCH 005/120] Address comments on initial PR, all changed other than name of class and the use of python API to combine track outputs --- include/openmc/distribution_spatial.h | 5 +- include/openmc/mesh.h | 6 +- openmc/settings.py | 4 +- openmc/stats/multivariate.py | 72 +- src/distribution_spatial.cpp | 43 +- src/mesh.cpp | 12 +- .../source_sampling/inputs_true0.dat | 2002 ++++++++-------- .../source_sampling/inputs_true1.dat | 2004 ++++++++--------- .../source_sampling/inputs_true2.dat | 2002 ++++++++-------- .../source_sampling/inputs_true3.dat | 2004 ++++++++--------- .../unstructured_mesh/source_sampling/test.py | 53 +- 11 files changed, 4096 insertions(+), 4111 deletions(-) diff --git a/include/openmc/distribution_spatial.h b/include/openmc/distribution_spatial.h index 1d6d6413b..8864e1139 100644 --- a/include/openmc/distribution_spatial.h +++ b/include/openmc/distribution_spatial.h @@ -112,11 +112,10 @@ private: UnstructuredMesh* umesh_ptr_; int32_t mesh_map_idx_; std::string sample_scheme_; - double total_weight_; + double total_strength_; std::vector mesh_CDF_; - std::vector mesh_weights_; + std::vector mesh_strengths_; int64_t tot_bins_; - }; //============================================================================== diff --git a/include/openmc/mesh.h b/include/openmc/mesh.h index 402b22455..a4104f75a 100644 --- a/include/openmc/mesh.h +++ b/include/openmc/mesh.h @@ -468,9 +468,6 @@ public: static const std::string mesh_type; virtual std::string get_mesh_type() const override; - //! Sample a tetrahedron for an unstructured mesh - virtual Position sample_tet(std::array coords, uint64_t* seed) const; - // Overridden Methods // TODO Position sample(uint64_t* seed) const=0; @@ -545,6 +542,9 @@ protected: 1.0}; //!< Constant multiplication factor to apply to mesh coordinates bool specified_length_multiplier_ {false}; + //! Sample a tetrahedron for an unstructured mesh + Position sample_tet(std::array coords, uint64_t* seed) const; + private: //! Setup method for the mesh. Builds data structures, //! sets up element mapping, creates bounding boxes, etc. diff --git a/openmc/settings.py b/openmc/settings.py index ecbe2d7ca..045cccd5c 100644 --- a/openmc/settings.py +++ b/openmc/settings.py @@ -978,7 +978,9 @@ class Settings: for source in self.source: root.append(source.to_xml_element()) if isinstance(source.space, MeshIndependent): - root.append(source.space.mesh.to_xml_element()) + path = f"./mesh[@id='{source.space.mesh.id}']" + if root.find(path) is None: + root.append(source.space.mesh.to_xml_element()) def _create_volume_calcs_subelement(self, root): for calc in self.volume_calculations: diff --git a/openmc/stats/multivariate.py b/openmc/stats/multivariate.py index 4484c62a6..0df540ddd 100644 --- a/openmc/stats/multivariate.py +++ b/openmc/stats/multivariate.py @@ -3,7 +3,6 @@ from collections.abc import Iterable from math import pi, cos from numbers import Real from xml.etree import ElementTree as ET -from xmlrpc.client import boolean import numpy as np @@ -629,29 +628,25 @@ class MeshIndependent(Spatial): Parameters ---------- - elem_weight_scheme : str, optional - The scheme for weighting and sampling elements from the mesh. Options are 'file' and 'volume' based weights. mesh : openmc.MeshBase The mesh instance used for sampling, mesh is written into settings.xml, mesh.id is written into the source distribution - weights_from_file : Iterable of Real, optional + strengths : Iterable of Real, optional A list of values which represent the weights of each element Attributes ---------- - elem_weight_scheme : str, optional - Weighting scheme for sampling element from mesh, defaults to volume mesh : openmc.MeshBase The mesh instance used for sampling, mesh is written into settings.xml, mesh.id is written into the source distribution - weights_from_file : Iterable of Real, optional + strengths : Iterable of Real, optional A list of values which represent the weights of each element """ - def __init__(self, mesh, weights_from_file=None, volume_weighting=False): + def __init__(self, mesh, strengths=None, volume_normalized=False): self.mesh = mesh - self.weights_from_file = weights_from_file - self.volume_weighting = volume_weighting + self.strengths = strengths + self.volume_normalized = volume_normalized @property def mesh(self): @@ -660,34 +655,35 @@ class MeshIndependent(Spatial): @mesh.setter def mesh(self, mesh): if mesh != None: - cv.check_type('Unstructured Mesh', mesh, MeshBase) + cv.check_type('Unstructured Mesh instance', mesh, MeshBase) self._mesh = mesh @property - def volume_weighting(self): - return self._volume_weighting + def volume_normalized(self): + return self._volume_normalized - @volume_weighting.setter - def volume_weighting(self, volume_weighting): - cv.check_type('Scheme for sampling an element from the mesh', volume_weighting, bool) - self._volume_weighting = volume_weighting + @volume_normalized.setter + def volume_normalized(self, volume_normalized): + cv.check_type('Normalize (multiply) strengths by volume', volume_normalized, bool) + self._volume_normalized = volume_normalized @property - def weights_from_file(self): - return self._weights_from_file + def strengths(self): + return self._strengths - @weights_from_file.setter - def weights_from_file(self, given_weights): - if given_weights is not None: - self._weights_from_file = (np.array(given_weights, dtype=float)).flatten() + @strengths.setter + def strengths(self, given_strengths): + if given_strengths is not None: + cv.check_type('strengths array passed in', given_strengths, Iterable, Real) + self._strengths = np.array(given_strengths, dtype=float).flatten() else: - self._weights_from_file = None + self._strengths = None @property - def num_weight_bins(self): - if self.weights_from_file == None: - raise ValueError('Weight bins are not set') - return self.weights_from_file.size + def num_strength_bins(self): + if self.strengths == None: + raise ValueError('Strengths are not set') + return self.strengths.size def to_xml_element(self): """Return XML representation of the spatial distribution @@ -701,11 +697,11 @@ class MeshIndependent(Spatial): element = ET.Element('space') element.set('type', 'mesh') element.set("mesh_id", str(self.mesh.id)) - element.set("volume_weighting", str(self.volume_weighting)) + element.set("volume_normalized", str(self.volume_normalized)) - if self.weights_from_file is not None: - subelement = ET.SubElement(element, 'weights_from_file') - subelement.text = ' '.join(str(e) for e in self.weights_from_file) + if self.strengths is not None: + subelement = ET.SubElement(element, 'strengths') + subelement.text = ' '.join(str(e) for e in self.strengths) return element @@ -726,13 +722,13 @@ class MeshIndependent(Spatial): """ mesh_id = int(elem.get('mesh_id')) - volume_weighting = elem.get("volume_weighting") - volume_weighting = get_text(elem, 'volume_weighting').lower() == 'true' - if elem.get('weights_from_file') is not None: - weights_from_file = [float(b) for b in get_text(elem, 'weights_from_file').split()] + volume_normalized = elem.get("volume_normalized") + volume_normalized = get_text(elem, 'volume_normalized').lower() == 'true' + if elem.get('strengths') is not None: + strengths = [float(b) for b in get_text(elem, 'strengths').split()] else: - weights_from_file = None - return cls(volume_weighting, mesh_id, weights_from_file) + strengths = None + return cls(volume_normalized, mesh_id, strengths) class Box(Spatial): diff --git a/src/distribution_spatial.cpp b/src/distribution_spatial.cpp index fdac3433a..0ac24e39a 100644 --- a/src/distribution_spatial.cpp +++ b/src/distribution_spatial.cpp @@ -6,9 +6,6 @@ #include "openmc/mesh.h" #include "openmc/search.h" -#include -#include - namespace openmc { //============================================================================== @@ -202,48 +199,48 @@ MeshIndependent::MeshIndependent(pugi::xml_node node) umesh_ptr_ = dynamic_cast(mesh_ptr.get()); if (!umesh_ptr_) {fatal_error("Mesh passed to spatial distribution is not an unstructured mesh object"); } - // Create CDF based on weighting scheme + // Initialize arrays for CDF creation tot_bins_ = umesh_ptr_->n_bins(); - std::vector weights = {}; - weights.resize(tot_bins_); - double temp_total_weight = 0.0; + std::vector strengths = {}; + strengths.resize(tot_bins_); + double temp_total_strength = 0.0; mesh_CDF_.resize(tot_bins_+1); mesh_CDF_[0] = {0.0}; - total_weight_ = 0.0; - mesh_weights_.resize(tot_bins_); + total_strength_ = 0.0; + mesh_strengths_.resize(tot_bins_); // Create cdfs for sampling for an element over a mesh // Volume scheme is weighted by the volume of each tet // File scheme is weighted by an array given in the xml file - if (check_for_node(node, "weights_from_file")) { - mesh_weights_ = get_node_array(node, "weights_from_file"); - if (mesh_weights_.size() != tot_bins_){ - write_message("WARNING: The size of the weights array from the xml file does not equal the number of elements in the mesh."); - } if (get_node_value_bool(node, "volume_weighting")){ + if (check_for_node(node, "strengths")) { + mesh_strengths_ = get_node_array(node, "strengths"); + if (mesh_strengths_.size() != tot_bins_){ + fatal_error("The size of the strengths array from the xml file does not equal the number of elements in the mesh."); + } if (get_node_value_bool(node, "volume_normalized")){ for (int i = 0; i < tot_bins_; i++){ - weights[i] = mesh_weights_[i]*umesh_ptr_->volume(i); + strengths[i] = mesh_strengths_[i]*umesh_ptr_->volume(i); } - } else if (!get_node_value_bool(node, "volume_weighting")){ + } else if (!get_node_value_bool(node, "volume_normalized")){ for (int i = 0; i < tot_bins_; i++){ - weights[i] = mesh_weights_[i]; + strengths[i] = mesh_strengths_[i]; } } - } else if (get_node_value_bool(node, "volume_weighting")){ + } else if (get_node_value_bool(node, "volume_normalized")){ for (int i = 0; ivolume(i); + strengths[i] = umesh_ptr_->volume(i); } } else { for (int i = 0; i conn1; @@ -2103,7 +2103,7 @@ Position MOABMesh::sample(uint64_t* seed, int32_t tet_bin) const { std::array tet_verts; for (int i = 0; i < 4; i++) { - tet_verts[i] = {p[i][0], p[i][1], p[i][2]}; + tet_verts[i] = {p[i][0], p[i][1], p[i][2]}; } // Samples position within tet using Barycentric stuff Position r = this->sample_tet(tet_verts, seed); @@ -2565,8 +2565,8 @@ void LibMesh::initialize() } // Sample position within a tet for LibMesh type tets -Position LibMesh::sample(uint64_t* seed, int32_t tet_bin) const { - const auto& elem = get_element_from_bin(tet_bin); +Position LibMesh::sample(uint64_t* seed, int32_t bin) const { + const auto& elem = get_element_from_bin(bin); // Get tet vertex coordinates from LibMesh std::array tet_verts; for (int i = 0; i < elem.n_nodes(); i++) { diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat index ee30a9dbe..c85bdd920 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat +++ b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat @@ -1,1005 +1,1005 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1048,7 +1048,7 @@ 5000 2 - + 15000000.0 1.0 diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat index fca2bb796..dca3958c3 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat +++ b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat @@ -1,1005 +1,1005 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1048,8 +1048,8 @@ 5000 2 - - 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 + + 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 15000000.0 1.0 diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true2.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true2.dat index 2cd7bf746..be58bd8f9 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true2.dat +++ b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true2.dat @@ -1,1005 +1,1005 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1048,7 +1048,7 @@ 5000 2 - + 15000000.0 1.0 diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true3.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true3.dat index 271ef9b1b..5003e7b1b 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true3.dat +++ b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true3.dat @@ -1,1005 +1,1005 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1048,8 +1048,8 @@ 5000 2 - - 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 + + 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 15000000.0 1.0 diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test.py b/tests/regression_tests/unstructured_mesh/source_sampling/test.py index f6262971a..dfbe74d05 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/test.py +++ b/tests/regression_tests/unstructured_mesh/source_sampling/test.py @@ -16,7 +16,6 @@ TETS_PER_VOXEL = 12 class UnstructuredMeshSourceTest(PyAPITestHarness): def __init__(self, statepoint_name, model, inputs_true, schemes): - super().__init__(statepoint_name, model, inputs_true) self.schemes = schemes @@ -31,60 +30,53 @@ class UnstructuredMeshSourceTest(PyAPITestHarness): openmc.run(**kwargs) def _compare_results(self): - + # There are 10000 particles and 1000 hexes, this leads to the average + # shown below average_in_hex = 10.0 - call(['../../../../scripts/openmc-track-combine', '-o', 'tracks.h5'] + glob.glob('tracks_p*.h5')) # loop over the tracks and get data tracks = openmc.Tracks(filepath='tracks.h5') tracks_born = np.empty((len(tracks), 1)) - decimals = 0 instances = np.zeros(1000) for i in range(0, len(tracks)): tracks_born[i] = tracks[i].particle_tracks[0].states['cell_id'][0] - instances[int(tracks_born[i])-1] = instances[int(tracks_born[i])-1]+1 + instances[int(tracks_born[i])-1] += 1 if self.schemes == "file": assert(instances[0] > 0 and instances[1] > 0) assert(instances[0] > instances[1]) - - for i in range(0, len(instances)): - if i != 0 and i != 1: - assert(instances[i] == 0) + + for i in range(2, len(instances)): + assert(instances[i] == 0) else: assert(np.average(instances) == average_in_hex) - assert(np.std(instances) < np.average(instances)) + assert(np.std(instances) < np.average(instances)) assert(np.amax(instances) < np.average(instances)+6*np.std(instances)) - + def _cleanup(self): super()._cleanup() - output = glob.glob('tally*.vtk') + output = glob.glob('track*.h5') output += glob.glob('tally*.e') for f in output: if os.path.exists(f): os.remove(f) - - - param_values = (['libmesh', 'moab'], # mesh libraries ['volume', 'file']) # Element weighting schemes test_cases = [] -# for i, (lib, holes) in enumerate(product(*param_values)): for i, (lib, schemes) in enumerate(product(*param_values)): test_cases.append({'library' : lib, 'schemes' : schemes, 'inputs_true' : 'inputs_true{}.dat'.format(i)}) - @pytest.mark.parametrize("test_opts", test_cases) def test_unstructured_mesh(test_opts): @@ -110,19 +102,20 @@ def test_unstructured_mesh(test_opts): ### Geometry ### dimen = 10 - size_hex = 20.0/dimen + size_hex = 20.0 / dimen ### Geometry ### cell = np.empty((dimen, dimen, dimen), dtype=object) - surfaces = np.empty((dimen+1, 3), dtype=object) + surfaces = np.empty((dimen + 1, 3), dtype=object) geometry = openmc.Geometry() universe = openmc.Universe(universe_id=1, name="Contains all hexes") for i in range(0,dimen+1): - surfaces[i][0] = openmc.XPlane(-10.0+i*size_hex, name="X plane at "+str(-10.0+i*size_hex)) - surfaces[i][1] = openmc.YPlane(-10.0+i*size_hex, name="Y plane at "+str(-10.0+i*size_hex)) - surfaces[i][2] = openmc.ZPlane(-10.0+i*size_hex, name="Z plane at "+str(-10.0+i*size_hex)) + coord = -10.0 + i * size_hex + surfaces[i][0] = openmc.XPlane(coord, name="X plane at "+str(coord)) + surfaces[i][1] = openmc.YPlane(coord, name="Y plane at "+str(coord)) + surfaces[i][2] = openmc.ZPlane(coord, name="Z plane at "+str(coord)) surfaces[i][0].boundary_type = 'vacuum' surfaces[i][1].boundary_type = 'vacuum' @@ -131,11 +124,11 @@ def test_unstructured_mesh(test_opts): for k in range(0,dimen): for j in range(0,dimen): for i in range(0,dimen): - cell[i][j][k] = openmc.Cell(name=("x " + str(i) +" y " + str(j) +" z " + str(k))) + cell[i][j][k] = openmc.Cell(name=("x = {}, y = {}, z = {}".format(i,j,k))) cell[i][j][k].region = +surfaces[i][0] & -surfaces[i+1][0] & \ +surfaces[j][1] & -surfaces[j+1][1] & \ +surfaces[k][2] & -surfaces[k+1][2] - cell[i][j][k].fill = water_mat + cell[i][j][k].fill = None universe.add_cell(cell[i][j][k]) geometry = openmc.Geometry(universe) @@ -161,19 +154,17 @@ def test_unstructured_mesh(test_opts): settings.particles = 5000 settings.batches = 2 - # settings.create_fission_neutrons = False - settings.tracks = [(1, 1, 1)] settings.max_tracks = 10000 # source setup if test_opts['schemes'] == 'volume': - space = openmc.stats.MeshIndependent(volume_weighting=True, mesh=uscd_mesh) + space = openmc.stats.MeshIndependent(volume_normalized=True, mesh=uscd_mesh) elif test_opts['schemes'] == 'file': array = np.zeros(12000) for i in range(0, 12): array[i] = 10 array[i+12] = 2 - space = openmc.stats.MeshIndependent(volume_weighting=False, weights_from_file=array, mesh=uscd_mesh) + space = openmc.stats.MeshIndependent(volume_normalized=False, strengths=array, mesh=uscd_mesh) energy = openmc.stats.Discrete(x=[15.e+06], p=[1.0]) source = openmc.Source(space=space, energy=energy) @@ -185,7 +176,7 @@ def test_unstructured_mesh(test_opts): settings=settings) harness = UnstructuredMeshSourceTest('statepoint.2.h5', - model, - test_opts['inputs_true'], - test_opts['schemes']) + model, + test_opts['inputs_true'], + test_opts['schemes']) harness.main() From bd60956d20c9e538179597d0c6e8029cbea2963c Mon Sep 17 00:00:00 2001 From: NybergWISC Date: Wed, 10 Aug 2022 14:42:57 -0500 Subject: [PATCH 006/120] Second round of comments. volume method is now implemented from Mesh instead of UnstructuredMesh --- include/openmc/distribution_spatial.h | 10 ++++---- include/openmc/mesh.h | 19 +++++++++++---- openmc/settings.py | 13 +++++++---- openmc/stats/multivariate.py | 8 +++---- src/distribution_spatial.cpp | 23 +++++++++---------- src/mesh.cpp | 8 ++++++- src/source.cpp | 2 +- .../unstructured_mesh/source_sampling/test.py | 21 ++++++++--------- 8 files changed, 60 insertions(+), 44 deletions(-) diff --git a/include/openmc/distribution_spatial.h b/include/openmc/distribution_spatial.h index 8864e1139..6d771fd6b 100644 --- a/include/openmc/distribution_spatial.h +++ b/include/openmc/distribution_spatial.h @@ -99,9 +99,9 @@ private: //! Distribution of points within a mesh //============================================================================== -class MeshIndependent : public SpatialDistribution { +class MeshSpatial : public SpatialDistribution { public: - explicit MeshIndependent(pugi::xml_node node); + explicit MeshSpatial(pugi::xml_node node); //! Sample a position from the distribution //! \param seed Pseudorandom number seed pointer @@ -109,13 +109,13 @@ public: Position sample(uint64_t* seed) const; private: - UnstructuredMesh* umesh_ptr_; - int32_t mesh_map_idx_; + Mesh* mesh_ptr_; + int32_t mesh_idx_; std::string sample_scheme_; double total_strength_; std::vector mesh_CDF_; std::vector mesh_strengths_; - int64_t tot_bins_; + int32_t tot_bins_; }; //============================================================================== diff --git a/include/openmc/mesh.h b/include/openmc/mesh.h index a4104f75a..8015d2e4c 100644 --- a/include/openmc/mesh.h +++ b/include/openmc/mesh.h @@ -79,7 +79,13 @@ public: // //! \param[in] seed Seed to use for random sampling //! \param[out] r Position within tet - virtual Position sample(uint64_t* seed, int32_t tet_bin) const=0; + virtual Position sample(uint64_t* seed, int32_t bin) const=0; + + //! Get the volume of a mesh bin + // + //! \param[in] bin Bin to return the volume for + //! \return Volume of the bin + virtual double volume(int bin) const = 0; //! Determine which bins were crossed by a particle // @@ -166,7 +172,9 @@ public: } }; - Position sample(uint64_t* seed, int32_t tet_bin) const override; + Position sample(uint64_t* seed, int32_t bin) const override; + + double volume(int bin) const override; int get_bin(Position r) const override; @@ -469,13 +477,14 @@ public: virtual std::string get_mesh_type() const override; // Overridden Methods - // TODO Position sample(uint64_t* seed) const=0; void surface_bins_crossed(Position r0, Position r1, const Direction& u, vector& bins) const override; void to_hdf5(hid_t group) const override; + virtual double volume(int bin) const = 0; + std::string bin_label(int bin) const override; // Methods @@ -565,7 +574,7 @@ public: // Overridden Methods - Position sample(uint64_t* seed, int32_t tet_bin) const override; + Position sample(uint64_t* seed, int32_t bin) const override; void bins_crossed(Position r0, Position r1, const Direction& u, vector& bins, vector& lengths) const override; @@ -729,7 +738,7 @@ public: void bins_crossed(Position r0, Position r1, const Direction& u, vector& bins, vector& lengths) const override; - Position sample(uint64_t* seed, int32_t tet_bin) const override; + Position sample(uint64_t* seed, int32_t bin) const override; int get_bin(Position r) const override; diff --git a/openmc/settings.py b/openmc/settings.py index 045cccd5c..b8b1ec2b4 100644 --- a/openmc/settings.py +++ b/openmc/settings.py @@ -11,7 +11,7 @@ from typing import Optional from xml.etree import ElementTree as ET import openmc.checkvalue as cv -from openmc.stats.multivariate import MeshIndependent +from openmc.stats.multivariate import MeshSpatial from . import RegularMesh, Source, VolumeCalculation, WeightWindows from ._xml import clean_indentation, get_text, reorder_attributes @@ -977,7 +977,7 @@ class Settings: def _create_source_subelement(self, root): for source in self.source: root.append(source.to_xml_element()) - if isinstance(source.space, MeshIndependent): + if isinstance(source.space, MeshSpatial): path = f"./mesh[@id='{source.space.mesh.id}']" if root.find(path) is None: root.append(source.space.mesh.to_xml_element()) @@ -1328,13 +1328,16 @@ class Settings: def _source_from_xml_element(self, root): for elem in root.findall('source'): - self.source.append(Source.from_xml_element(elem)) - if isinstance(Source.from_xml_element(elem), MeshIndependent): + src = Source.from_xml_element(elem) + if isinstance(src.space, MeshSpatial): mesh_id = int(get_text(elem, 'mesh')) path = f"./mesh[@id='{mesh_id}']" mesh_elem = root.find(path) if mesh_elem is not None: - self.source.space.mesh = MeshBase.from_xml_element(mesh_elem) + src.space.mesh = MeshBase.from_xml_element(mesh_elem) + else: + raise RuntimeError('No mesh was specified for the mesh source') + self.source.append(src) def _volume_calcs_from_xml_element(self, root): volume_elems = root.findall("volume_calc") diff --git a/openmc/stats/multivariate.py b/openmc/stats/multivariate.py index 0df540ddd..9aa03b2d7 100644 --- a/openmc/stats/multivariate.py +++ b/openmc/stats/multivariate.py @@ -271,7 +271,7 @@ class Spatial(ABC): elif distribution == 'spherical': return SphericalIndependent.from_xml_element(elem) elif distribution == 'mesh': - return MeshIndependent.from_xml_element(elem) + return MeshSpatial.from_xml_element(elem) elif distribution == 'box' or distribution == 'fission': return Box.from_xml_element(elem) elif distribution == 'point': @@ -619,10 +619,10 @@ class CylindricalIndependent(Spatial): origin = [float(x) for x in elem.get('origin').split()] return cls(r, phi, z, origin=origin) -class MeshIndependent(Spatial): +class MeshSpatial(Spatial): """Spatial distribution for a mesh. - This distribution allows one to specify a mesh to sample over and the scheme to sample over the entire mesh. + This distribution specifies a mesh to sample over, chooses whether it will be volume normalized, and can set the source strengths. .. versionadded:: 0.13 @@ -716,7 +716,7 @@ class MeshIndependent(Spatial): Returns ------- - openmc.stats.MeshIndependent + openmc.stats.MeshSpatial Spatial distribution generated from XML element """ diff --git a/src/distribution_spatial.cpp b/src/distribution_spatial.cpp index 0ac24e39a..6d00739b0 100644 --- a/src/distribution_spatial.cpp +++ b/src/distribution_spatial.cpp @@ -183,24 +183,23 @@ Position SphericalIndependent::sample(uint64_t* seed) const } //============================================================================== -// MeshIndependent implementation +// MeshSpatial implementation //============================================================================== -MeshIndependent::MeshIndependent(pugi::xml_node node) +MeshSpatial::MeshSpatial(pugi::xml_node node) { // No in-tet distributions implemented, could include distributions for the barycentric coords // Read in unstructured mesh from mesh_id value int32_t mesh_id = std::stoi(get_node_value(node, "mesh_id")); // Get pointer to spatial distribution - mesh_map_idx_ = model::mesh_map.at(mesh_id); - const auto& mesh_ptr = model::meshes[mesh_map_idx_]; + mesh_idx_ = model::mesh_map.at(mesh_id); - // Check whether mesh pointer points to an unstructured mesh - umesh_ptr_ = dynamic_cast(mesh_ptr.get()); - if (!umesh_ptr_) {fatal_error("Mesh passed to spatial distribution is not an unstructured mesh object"); } + // Check whether mesh pointer points to a mesh + mesh_ptr_ = dynamic_cast(model::meshes[mesh_idx_].get()); + if (!mesh_ptr_) {fatal_error("Mesh passed to spatial distribution is not a mesh object"); } // Initialize arrays for CDF creation - tot_bins_ = umesh_ptr_->n_bins(); + tot_bins_ = mesh_ptr_->n_bins(); std::vector strengths = {}; strengths.resize(tot_bins_); double temp_total_strength = 0.0; @@ -219,7 +218,7 @@ MeshIndependent::MeshIndependent(pugi::xml_node node) fatal_error("The size of the strengths array from the xml file does not equal the number of elements in the mesh."); } if (get_node_value_bool(node, "volume_normalized")){ for (int i = 0; i < tot_bins_; i++){ - strengths[i] = mesh_strengths_[i]*umesh_ptr_->volume(i); + strengths[i] = mesh_strengths_[i]*mesh_ptr_->volume(i); } } else if (!get_node_value_bool(node, "volume_normalized")){ for (int i = 0; i < tot_bins_; i++){ @@ -228,7 +227,7 @@ MeshIndependent::MeshIndependent(pugi::xml_node node) } } else if (get_node_value_bool(node, "volume_normalized")){ for (int i = 0; ivolume(i); + strengths[i] = mesh_ptr_->volume(i); } } else { for (int i = 0; isample(seed, tet_bin); + return mesh_ptr_->sample(seed, tet_bin); } diff --git a/src/mesh.cpp b/src/mesh.cpp index b37c238f1..453ce572b 100644 --- a/src/mesh.cpp +++ b/src/mesh.cpp @@ -358,8 +358,14 @@ StructuredMesh::MeshIndex StructuredMesh::get_indices_from_bin(int bin) const return ijk; } -Position StructuredMesh::sample(uint64_t* seed, int32_t bin) const { +Position StructuredMesh::sample(uint64_t* seed, int32_t bin) const +{ fatal_error("Position sampling on structured meshes is not yet implemented"); +} + +double StructuredMesh::volume(int bin) const +{ + fatal_error("Unable to get volume of structured mesh, not yet implemented"); } int StructuredMesh::get_bin(Position r) const diff --git a/src/source.cpp b/src/source.cpp index 2ceff9964..2fdcc319f 100644 --- a/src/source.cpp +++ b/src/source.cpp @@ -95,7 +95,7 @@ IndependentSource::IndependentSource(pugi::xml_node node) } else if (type == "spherical") { space_ = UPtrSpace {new SphericalIndependent(node_space)}; } else if (type =="mesh"){ - space_ = UPtrSpace {new MeshIndependent(node_space)}; + space_ = UPtrSpace {new MeshSpatial(node_space)}; } else if (type == "box") { space_ = UPtrSpace {new SpatialBox(node_space)}; } else if (type == "fission") { diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test.py b/tests/regression_tests/unstructured_mesh/source_sampling/test.py index dfbe74d05..6f8d6fded 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/test.py +++ b/tests/regression_tests/unstructured_mesh/source_sampling/test.py @@ -34,15 +34,14 @@ class UnstructuredMeshSourceTest(PyAPITestHarness): # shown below average_in_hex = 10.0 - call(['../../../../scripts/openmc-track-combine', '-o', 'tracks.h5'] + - glob.glob('tracks_p*.h5')) - - # loop over the tracks and get data + # Load in tracks + openmc.Tracks.combine(glob.glob('tracks_p*.h5')) tracks = openmc.Tracks(filepath='tracks.h5') tracks_born = np.empty((len(tracks), 1)) instances = np.zeros(1000) + # loop over the tracks and get data for i in range(0, len(tracks)): tracks_born[i] = tracks[i].particle_tracks[0].states['cell_id'][0] instances[int(tracks_born[i])-1] += 1 @@ -113,9 +112,9 @@ def test_unstructured_mesh(test_opts): for i in range(0,dimen+1): coord = -10.0 + i * size_hex - surfaces[i][0] = openmc.XPlane(coord, name="X plane at "+str(coord)) - surfaces[i][1] = openmc.YPlane(coord, name="Y plane at "+str(coord)) - surfaces[i][2] = openmc.ZPlane(coord, name="Z plane at "+str(coord)) + surfaces[i][0] = openmc.XPlane(coord, name=f"X plane at {coord}") + surfaces[i][1] = openmc.YPlane(coord, name=f"Y plane at {coord}") + surfaces[i][2] = openmc.ZPlane(coord, name=f"Z plane at {coord}") surfaces[i][0].boundary_type = 'vacuum' surfaces[i][1].boundary_type = 'vacuum' @@ -126,8 +125,8 @@ def test_unstructured_mesh(test_opts): for i in range(0,dimen): cell[i][j][k] = openmc.Cell(name=("x = {}, y = {}, z = {}".format(i,j,k))) cell[i][j][k].region = +surfaces[i][0] & -surfaces[i+1][0] & \ - +surfaces[j][1] & -surfaces[j+1][1] & \ - +surfaces[k][2] & -surfaces[k+1][2] + +surfaces[j][1] & -surfaces[j+1][1] & \ + +surfaces[k][2] & -surfaces[k+1][2] cell[i][j][k].fill = None universe.add_cell(cell[i][j][k]) @@ -158,13 +157,13 @@ def test_unstructured_mesh(test_opts): # source setup if test_opts['schemes'] == 'volume': - space = openmc.stats.MeshIndependent(volume_normalized=True, mesh=uscd_mesh) + space = openmc.stats.MeshSpatial(volume_normalized=True, mesh=uscd_mesh) elif test_opts['schemes'] == 'file': array = np.zeros(12000) for i in range(0, 12): array[i] = 10 array[i+12] = 2 - space = openmc.stats.MeshIndependent(volume_normalized=False, strengths=array, mesh=uscd_mesh) + space = openmc.stats.MeshSpatial(volume_normalized=False, strengths=array, mesh=uscd_mesh) energy = openmc.stats.Discrete(x=[15.e+06], p=[1.0]) source = openmc.Source(space=space, energy=energy) From 115be68953b30e64aa886c55db13b0e9d212f3c5 Mon Sep 17 00:00:00 2001 From: NybergWISC Date: Mon, 15 Aug 2022 09:30:57 -0500 Subject: [PATCH 007/120] Small refactor of distribution_spatial.cpp and change default of volume_normalized to True --- openmc/stats/multivariate.py | 2 +- src/distribution_spatial.cpp | 33 ++++++++----------- .../unstructured_mesh/source_sampling/test.py | 4 ++- 3 files changed, 17 insertions(+), 22 deletions(-) diff --git a/openmc/stats/multivariate.py b/openmc/stats/multivariate.py index 9aa03b2d7..88beea2f7 100644 --- a/openmc/stats/multivariate.py +++ b/openmc/stats/multivariate.py @@ -643,7 +643,7 @@ class MeshSpatial(Spatial): """ - def __init__(self, mesh, strengths=None, volume_normalized=False): + def __init__(self, mesh, strengths=None, volume_normalized=True): self.mesh = mesh self.strengths = strengths self.volume_normalized = volume_normalized diff --git a/src/distribution_spatial.cpp b/src/distribution_spatial.cpp index 6d00739b0..b47b85281 100644 --- a/src/distribution_spatial.cpp +++ b/src/distribution_spatial.cpp @@ -212,34 +212,27 @@ MeshSpatial::MeshSpatial(pugi::xml_node node) // Volume scheme is weighted by the volume of each tet // File scheme is weighted by an array given in the xml file + mesh_strengths_ = std::vector(tot_bins_, 1.0); if (check_for_node(node, "strengths")) { - mesh_strengths_ = get_node_array(node, "strengths"); - if (mesh_strengths_.size() != tot_bins_){ - fatal_error("The size of the strengths array from the xml file does not equal the number of elements in the mesh."); - } if (get_node_value_bool(node, "volume_normalized")){ - for (int i = 0; i < tot_bins_; i++){ - strengths[i] = mesh_strengths_[i]*mesh_ptr_->volume(i); - } - } else if (!get_node_value_bool(node, "volume_normalized")){ - for (int i = 0; i < tot_bins_; i++){ - strengths[i] = mesh_strengths_[i]; + strengths = get_node_array(node, "strengths"); + if (strengths.size() != mesh_strengths_.size()){ + fatal_error("Number of entries in the strength matrix does not match the number of mesh entities"); } - } - } else if (get_node_value_bool(node, "volume_normalized")){ - for (int i = 0; ivolume(i); - } - } else { - for (int i = 0; ivolume(i); } } + for (int i = 0; i Date: Mon, 15 Aug 2022 13:04:47 -0500 Subject: [PATCH 008/120] Remove second volume method from mesh header file --- include/openmc/mesh.h | 6 ------ 1 file changed, 6 deletions(-) diff --git a/include/openmc/mesh.h b/include/openmc/mesh.h index 8015d2e4c..310320486 100644 --- a/include/openmc/mesh.h +++ b/include/openmc/mesh.h @@ -483,8 +483,6 @@ public: void to_hdf5(hid_t group) const override; - virtual double volume(int bin) const = 0; - std::string bin_label(int bin) const override; // Methods @@ -528,10 +526,6 @@ public: //! \return element connectivity as IDs of the vertices virtual std::vector connectivity(int id) const = 0; - //! Get the volume of a mesh bin - // - //! \param[in] bin Bin to return the volume for - //! \return Volume of the bin virtual double volume(int bin) const = 0; //! Get the library used for this unstructured mesh From fba3a9a118220b40065bbdcd7d641a3b8926cb50 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Wed, 21 Dec 2022 10:52:52 -0600 Subject: [PATCH 009/120] tet_bin to elem_bin suggestion from @eepeterson --- src/distribution_spatial.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/distribution_spatial.cpp b/src/distribution_spatial.cpp index b47b85281..a0cfec2f0 100644 --- a/src/distribution_spatial.cpp +++ b/src/distribution_spatial.cpp @@ -193,7 +193,7 @@ MeshSpatial::MeshSpatial(pugi::xml_node node) int32_t mesh_id = std::stoi(get_node_value(node, "mesh_id")); // Get pointer to spatial distribution mesh_idx_ = model::mesh_map.at(mesh_id); - + // Check whether mesh pointer points to a mesh mesh_ptr_ = dynamic_cast(model::meshes[mesh_idx_].get()); if (!mesh_ptr_) {fatal_error("Mesh passed to spatial distribution is not a mesh object"); } @@ -237,15 +237,14 @@ MeshSpatial::MeshSpatial(pugi::xml_node node) } Position MeshSpatial::sample(uint64_t* seed) const -{ +{ // Create random variable for sampling element from mesh float eta = prn(seed); // Sample over the CDF defined in initialization above - int32_t tet_bin = lower_bound_index(mesh_CDF_.begin(), mesh_CDF_.end(), eta); - return mesh_ptr_->sample(seed, tet_bin); + int32_t elem_bin = lower_bound_index(mesh_CDF_.begin(), mesh_CDF_.end(), eta); + return mesh_ptr_->sample(seed, elem_bin); } - //============================================================================== // SpatialBox implementation //============================================================================== From 0ffe0b39c11259c50b1be8fa8210830208af8cec Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Fri, 23 Dec 2022 12:10:47 -0600 Subject: [PATCH 010/120] Adding docstrings to MeshSpatial Python class --- openmc/stats/multivariate.py | 36 +++++++++++++++++++++++++----------- 1 file changed, 25 insertions(+), 11 deletions(-) diff --git a/openmc/stats/multivariate.py b/openmc/stats/multivariate.py index 88beea2f7..bff8c301a 100644 --- a/openmc/stats/multivariate.py +++ b/openmc/stats/multivariate.py @@ -9,7 +9,7 @@ import numpy as np import openmc.checkvalue as cv from .._xml import get_text from .univariate import Univariate, Uniform, PowerLaw -from ..mesh import MeshBase +from ..mesh import MeshBase, MESHES class UnitSphere(ABC): @@ -276,6 +276,8 @@ class Spatial(ABC): return Box.from_xml_element(elem) elif distribution == 'point': return Point.from_xml_element(elem) + elif distribution == 'mesh': + return MeshSpatial.from_xml_element(elem) class CartesianIndependent(Spatial): @@ -622,29 +624,36 @@ class CylindricalIndependent(Spatial): class MeshSpatial(Spatial): """Spatial distribution for a mesh. - This distribution specifies a mesh to sample over, chooses whether it will be volume normalized, and can set the source strengths. + This distribution specifies a mesh to sample over, chooses whether it will + be volume normalized, and can set the source strengths. .. versionadded:: 0.13 Parameters ---------- mesh : openmc.MeshBase - The mesh instance used for sampling, mesh is written into settings.xml, mesh.id is written into the source distribution + The mesh instance used for sampling, mesh is written into settings.xml, + mesh.id is written into the source distribution strengths : Iterable of Real, optional - A list of values which represent the weights of each element - + A list of values which represent the weights of each element. If no source + strengths are specified, they will be equal for all mesh elements. + volume_normalized : bool, optional + Whether or not the strengths will be normalized by volume. Default is True. Attributes ---------- mesh : openmc.MeshBase - The mesh instance used for sampling, mesh is written into settings.xml, mesh.id is written into the source distribution + The mesh instance used for sampling, mesh is written into settings.xml, + mesh.id is written into the source distribution strengths : Iterable of Real, optional A list of values which represent the weights of each element - + volume_normalized : bool + Whether or not the strengths will be normalized by volume. """ - def __init__(self, mesh, strengths=None, volume_normalized=True): - self.mesh = mesh + def __init__(self, + mesh, strengths=None, volume_normalized=True): + self.mesh = mesh self.strengths = strengths self.volume_normalized = volume_normalized @@ -684,7 +693,7 @@ class MeshSpatial(Spatial): if self.strengths == None: raise ValueError('Strengths are not set') return self.strengths.size - + def to_xml_element(self): """Return XML representation of the spatial distribution @@ -722,13 +731,18 @@ class MeshSpatial(Spatial): """ mesh_id = int(elem.get('mesh_id')) + + # check if this mesh has been read in from another location already + if mesh_id not in MESHES: + raise RuntimeError(f'Could not locate mesh with ID "{mesh_id}"') + volume_normalized = elem.get("volume_normalized") volume_normalized = get_text(elem, 'volume_normalized').lower() == 'true' if elem.get('strengths') is not None: strengths = [float(b) for b in get_text(elem, 'strengths').split()] else: strengths = None - return cls(volume_normalized, mesh_id, strengths) + return cls(MESHES[mesh_id], strengths, volume_normalized) class Box(Spatial): From e100689c8fb84a9dcc55c784839458cec1aa8720 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Fri, 23 Dec 2022 12:13:04 -0600 Subject: [PATCH 011/120] Minor updates to C++ source. Fix for CDF distribution sampling --- include/openmc/distribution_spatial.h | 11 +++++---- src/distribution_spatial.cpp | 32 +++++++++++++-------------- src/mesh.cpp | 18 +++++++-------- 3 files changed, 32 insertions(+), 29 deletions(-) diff --git a/include/openmc/distribution_spatial.h b/include/openmc/distribution_spatial.h index 6d771fd6b..0be6329f5 100644 --- a/include/openmc/distribution_spatial.h +++ b/include/openmc/distribution_spatial.h @@ -108,14 +108,17 @@ public: //! \return Sampled position Position sample(uint64_t* seed) const; + const unique_ptr& mesh() const { return model::meshes.at(mesh_idx_); } + + int32_t n_sources() const { return this->mesh()->n_bins(); } + private: - Mesh* mesh_ptr_; - int32_t mesh_idx_; + Mesh* mesh_ptr_ {nullptr}; + int32_t mesh_idx_ {C_NONE}; std::string sample_scheme_; - double total_strength_; + double total_strength_ {0.0}; std::vector mesh_CDF_; std::vector mesh_strengths_; - int32_t tot_bins_; }; //============================================================================== diff --git a/src/distribution_spatial.cpp b/src/distribution_spatial.cpp index a0cfec2f0..7418b483a 100644 --- a/src/distribution_spatial.cpp +++ b/src/distribution_spatial.cpp @@ -198,21 +198,18 @@ MeshSpatial::MeshSpatial(pugi::xml_node node) mesh_ptr_ = dynamic_cast(model::meshes[mesh_idx_].get()); if (!mesh_ptr_) {fatal_error("Mesh passed to spatial distribution is not a mesh object"); } - // Initialize arrays for CDF creation - tot_bins_ = mesh_ptr_->n_bins(); - std::vector strengths = {}; - strengths.resize(tot_bins_); - double temp_total_strength = 0.0; - mesh_CDF_.resize(tot_bins_+1); + int32_t n_bins = this->n_sources(); + std::vector strengths(n_bins, 0.0); + + mesh_CDF_.resize(n_bins+1); mesh_CDF_[0] = {0.0}; total_strength_ = 0.0; - mesh_strengths_.resize(tot_bins_); + mesh_strengths_.resize(n_bins); // Create cdfs for sampling for an element over a mesh // Volume scheme is weighted by the volume of each tet // File scheme is weighted by an array given in the xml file - - mesh_strengths_ = std::vector(tot_bins_, 1.0); + mesh_strengths_ = std::vector(n_bins, 1.0); if (check_for_node(node, "strengths")) { strengths = get_node_array(node, "strengths"); if (strengths.size() != mesh_strengths_.size()){ @@ -222,24 +219,27 @@ MeshSpatial::MeshSpatial(pugi::xml_node node) } if (get_node_value_bool(node, "volume_normalized")) { - for (int i = 0; i < tot_bins_; i++) { + for (int i = 0; i < n_bins; i++) { mesh_strengths_[i] *= mesh_ptr_->volume(i); } } - for (int i = 0; i FP_COINCIDENT) { + fatal_error(fmt::format("Mesh sampling CDF is incorrectly formed. Final value is: {}", mesh_CDF_.back())); + } + mesh_CDF_.back() = 1.0; } Position MeshSpatial::sample(uint64_t* seed) const { // Create random variable for sampling element from mesh - float eta = prn(seed); + double eta = prn(seed); // Sample over the CDF defined in initialization above int32_t elem_bin = lower_bound_index(mesh_CDF_.begin(), mesh_CDF_.end(), eta); return mesh_ptr_->sample(seed, elem_bin); diff --git a/src/mesh.cpp b/src/mesh.cpp index 453ce572b..abb6f8b8c 100644 --- a/src/mesh.cpp +++ b/src/mesh.cpp @@ -219,9 +219,9 @@ Position UnstructuredMesh::sample_tet(std::array coords, uint64_t* u = old_s + t + u - 1; } } - return s*(coords[1]-coords[0]) - + t*(coords[2]-coords[0]) - + u*(coords[3]-coords[0]) + return s*(coords[1]-coords[0]) + + t*(coords[2]-coords[0]) + + u*(coords[3]-coords[0]) + coords[0]; } @@ -358,12 +358,12 @@ StructuredMesh::MeshIndex StructuredMesh::get_indices_from_bin(int bin) const return ijk; } -Position StructuredMesh::sample(uint64_t* seed, int32_t bin) const +Position StructuredMesh::sample(uint64_t* seed, int32_t bin) const { fatal_error("Position sampling on structured meshes is not yet implemented"); -} +} -double StructuredMesh::volume(int bin) const +double StructuredMesh::volume(int bin) const { fatal_error("Unable to get volume of structured mesh, not yet implemented"); } @@ -2111,7 +2111,7 @@ Position MOABMesh::sample(uint64_t* seed, int32_t bin) const { for (int i = 0; i < 4; i++) { tet_verts[i] = {p[i][0], p[i][1], p[i][2]}; } - // Samples position within tet using Barycentric stuff + // Samples position within tet using Barycentric stuff Position r = this->sample_tet(tet_verts, seed); return r; @@ -2579,7 +2579,7 @@ Position LibMesh::sample(uint64_t* seed, int32_t bin) const { auto node_ref = elem.node_ref(i); tet_verts[i] = {node_ref(0), node_ref(1), node_ref(2)}; } - // Samples position within tet using Barycentric coordinates + // Samples position within tet using Barycentric coordinates Position r = this->sample_tet(tet_verts, seed); return r; @@ -2766,7 +2766,7 @@ const libMesh::Elem& LibMesh::get_element_from_bin(int bin) const double LibMesh::volume(int bin) const { - return m_->elem_ref(bin).volume(); + return this->get_element_from_bin(bin).volume(); } #endif // LIBMESH From 8e6ce2e16f00c9c61eaef699dc85adec075a75d0 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Fri, 23 Dec 2022 12:13:35 -0600 Subject: [PATCH 012/120] Updates to unstructured mesh sampling tests. --- .../source_sampling/inputs_true0.dat | 6 - .../source_sampling/inputs_true1.dat | 6 - .../source_sampling/inputs_true2.dat | 6 - .../source_sampling/inputs_true3.dat | 6 - .../unstructured_mesh/source_sampling/test.py | 109 +++++++++--------- 5 files changed, 56 insertions(+), 77 deletions(-) diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat index c85bdd920..d632825ba 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat +++ b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat @@ -1058,9 +1058,3 @@ 10000 - - - - scatter total absorption - - diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat index dca3958c3..7ea0a1bd7 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat +++ b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat @@ -1060,9 +1060,3 @@ 10000 - - - - scatter total absorption - - diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true2.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true2.dat index be58bd8f9..24c9400c9 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true2.dat +++ b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true2.dat @@ -1058,9 +1058,3 @@ 10000 - - - - scatter total absorption - - diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true3.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true3.dat index 5003e7b1b..b4a17a948 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true3.dat +++ b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true3.dat @@ -1060,9 +1060,3 @@ 10000 - - - - scatter total absorption - - diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test.py b/tests/regression_tests/unstructured_mesh/source_sampling/test.py index 46d1e0cb0..b0473a839 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/test.py +++ b/tests/regression_tests/unstructured_mesh/source_sampling/test.py @@ -14,10 +14,13 @@ from subprocess import call TETS_PER_VOXEL = 12 +# This test uses a geometry file that resembles a regular mesh. +# 12 tets are used to match each voxel in the geometry. + class UnstructuredMeshSourceTest(PyAPITestHarness): - def __init__(self, statepoint_name, model, inputs_true, schemes): + def __init__(self, statepoint_name, model, inputs_true, source_strengths): super().__init__(statepoint_name, model, inputs_true) - self.schemes = schemes + self.source_strengths = source_strengths def _run_openmc(self): kwargs = {'openmc_exec' : config['exe'], @@ -30,36 +33,43 @@ class UnstructuredMeshSourceTest(PyAPITestHarness): openmc.run(**kwargs) def _compare_results(self): - # There are 10000 particles and 1000 hexes, this leads to the average - # shown below + # This model contains 1000 geometry cells. Each cell is a hex + # corresponding to 12 of the tets. This test runs 10000 particles. This + # results in the following average for each cell + + # we can compute this based on the number of particles run in the simulation average_in_hex = 10.0 # Load in tracks if config['mpi']: openmc.Tracks.combine(glob.glob('tracks_p*.h5')) - + tracks = openmc.Tracks(filepath='tracks.h5') tracks_born = np.empty((len(tracks), 1)) - instances = np.zeros(1000) + # create an array with an entry for each geometric cell + cell_counts = np.zeros(1000) # loop over the tracks and get data for i in range(0, len(tracks)): + # get the initial cell ID of the track, and assign it for the tracks_born array tracks_born[i] = tracks[i].particle_tracks[0].states['cell_id'][0] - instances[int(tracks_born[i])-1] += 1 + # increment the cell_counts entry for this cell_id + cell_counts[int(tracks_born[i])-1] += 1 - if self.schemes == "file": - assert(instances[0] > 0 and instances[1] > 0) - assert(instances[0] > instances[1]) + if self.source_strengths == 'manual': + assert(cell_counts[0] > 0 and cell_counts[1] > 0) + assert(cell_counts[0] > cell_counts[1]) - for i in range(2, len(instances)): - assert(instances[i] == 0) + # counts for all other cells should be zero + for i in range(2, len(cell_counts)): + assert(cell_counts[i] == 0) else: - assert(np.average(instances) == average_in_hex) - assert(np.std(instances) < np.average(instances)) - assert(np.amax(instances) < np.average(instances)+6*np.std(instances)) - + # check that the average number of source sites in each cell + assert(np.average(cell_counts) == average_in_hex) # this probably shouldn't be exact??? + assert(np.std(cell_counts) < np.average(cell_counts)) + assert(np.amax(cell_counts) < np.average(cell_counts)+6*np.std(cell_counts)) def _cleanup(self): super()._cleanup() @@ -70,24 +80,23 @@ class UnstructuredMeshSourceTest(PyAPITestHarness): os.remove(f) param_values = (['libmesh', 'moab'], # mesh libraries - ['volume', 'file']) # Element weighting schemes + ['uniform', 'manual']) # Element weighting schemes test_cases = [] for i, (lib, schemes) in enumerate(product(*param_values)): test_cases.append({'library' : lib, - 'schemes' : schemes, + 'source_strengths' : schemes, 'inputs_true' : 'inputs_true{}.dat'.format(i)}) -@pytest.mark.parametrize("test_opts", test_cases) -def test_unstructured_mesh(test_opts): - +@pytest.mark.parametrize("test_cases", test_cases) +def test_unstructured_mesh_sampling(test_cases): openmc.reset_auto_ids() # skip the test if the library is not enabled - if test_opts['library'] == 'moab' and not openmc.lib._dagmc_enabled(): + if test_cases['library'] == 'moab' and not openmc.lib._dagmc_enabled(): pytest.skip("DAGMC (and MOAB) mesh not enabled in this build.") - if test_opts['library'] == 'libmesh' and not openmc.lib._libmesh_enabled(): + if test_cases['library'] == 'libmesh' and not openmc.lib._libmesh_enabled(): pytest.skip("LibMesh is not enabled in this build.") ### Materials ### @@ -134,38 +143,34 @@ def test_unstructured_mesh(test_opts): geometry = openmc.Geometry(universe) - mesh_filename = "test_mesh_tets.e" - - uscd_mesh = openmc.UnstructuredMesh(mesh_filename, test_opts['library']) - - ### Tallies ### - - # create tallies - tallies = openmc.Tallies() - - tally1 = openmc.Tally(1) - tally1.scores = ['scatter', 'total', 'absorption'] - # Export tallies - tallies = openmc.Tallies([tally1]) - tallies.export_to_xml() - ### Settings ### settings = openmc.Settings() settings.run_mode = 'fixed source' settings.particles = 5000 settings.batches = 2 - settings.max_tracks = 10000 + settings.max_tracks = settings.particles * settings.batches - # source setup - if test_opts['schemes'] == 'volume': - space = openmc.stats.MeshSpatial(volume_normalized=True, mesh=uscd_mesh) - elif test_opts['schemes'] == 'file': - array = np.zeros(12000) - for i in range(0, 12): - array[i] = 10 - array[i+12] = 2 - space = openmc.stats.MeshSpatial(volume_normalized=False, strengths=array, mesh=uscd_mesh) + ### Source ### + mesh_filename = "test_mesh_tets.e" + + uscd_mesh = openmc.UnstructuredMesh(mesh_filename, test_cases['library']) + + # set source weights according to test case + if test_cases['source_strengths'] == 'uniform': + vol_norm = True + strengths = None + + elif test_cases['source_strengths'] == 'manual': + vol_norm = False + strengths = np.zeros(12000) + # set non-zero strengths only for the tets corresponding to the + # first two geometric hex cells + strengths[0:12] = 10 + strengths[12:24] = 2 + + # create the spatial distribution based on the mesh + space = openmc.stats.MeshSpatial(uscd_mesh, strengths, vol_norm) energy = openmc.stats.Discrete(x=[15.e+06], p=[1.0]) source = openmc.Source(space=space, energy=energy) @@ -173,11 +178,9 @@ def test_unstructured_mesh(test_opts): model = openmc.model.Model(geometry=geometry, materials=materials, - tallies=tallies, settings=settings) - harness = UnstructuredMeshSourceTest('statepoint.2.h5', model, - test_opts['inputs_true'], - test_opts['schemes']) - harness.main() + test_cases['inputs_true'], + test_cases['source_strengths']) + harness.main() \ No newline at end of file From 03811745a06208ebf8d749d85fe9ba92c9251ca9 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Fri, 23 Dec 2022 14:33:56 -0600 Subject: [PATCH 013/120] Skip mesh elements without an ID due to overlap in name with WW element --- openmc/mesh.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openmc/mesh.py b/openmc/mesh.py index 157e78263..e314aab3e 100644 --- a/openmc/mesh.py +++ b/openmc/mesh.py @@ -188,7 +188,7 @@ class StructuredMesh(MeshBase): Returns a numpy.ndarray representing the mesh element centroid coordinates with a shape equal to (ndim, dim1, ..., dimn). Can be unpacked along the first dimension with xx, yy, zz = mesh.centroids. - + """ ndim = self.n_dimension From ce956f851546536711b6dbd44cc791ab5f72f605 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Fri, 23 Dec 2022 14:34:17 -0600 Subject: [PATCH 014/120] Run ww unit test in tmp dir --- tests/unit_tests/weightwindows/test.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/unit_tests/weightwindows/test.py b/tests/unit_tests/weightwindows/test.py index d73a52f45..1dfad56aa 100644 --- a/tests/unit_tests/weightwindows/test.py +++ b/tests/unit_tests/weightwindows/test.py @@ -225,7 +225,7 @@ def test_lower_ww_bounds_shape(): assert ww.lower_ww_bounds.shape == (2, 3, 4, 1) -def test_roundtrip(model, wws): +def test_roundtrip(run_in_tmpdir, model, wws): model.settings.weight_windows = wws # write the model with weight windows to XML From 0a83824bea30cfdd8b9fc289f6441d737ad03a02 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Fri, 23 Dec 2022 23:44:04 -0600 Subject: [PATCH 015/120] Improve distribution testing --- .../unstructured_mesh/source_sampling/test.py | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test.py b/tests/regression_tests/unstructured_mesh/source_sampling/test.py index b0473a839..a2d23b226 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/test.py +++ b/tests/regression_tests/unstructured_mesh/source_sampling/test.py @@ -18,9 +18,8 @@ TETS_PER_VOXEL = 12 # 12 tets are used to match each voxel in the geometry. class UnstructuredMeshSourceTest(PyAPITestHarness): - def __init__(self, statepoint_name, model, inputs_true, source_strengths): + def __init__(self, statepoint_name, model, inputs_true): super().__init__(statepoint_name, model, inputs_true) - self.source_strengths = source_strengths def _run_openmc(self): kwargs = {'openmc_exec' : config['exe'], @@ -57,7 +56,9 @@ class UnstructuredMeshSourceTest(PyAPITestHarness): # increment the cell_counts entry for this cell_id cell_counts[int(tracks_born[i])-1] += 1 - if self.source_strengths == 'manual': + source_strengths = self._model.settings.source[0].space.strengths + + if source_strengths is not None: assert(cell_counts[0] > 0 and cell_counts[1] > 0) assert(cell_counts[0] > cell_counts[1]) @@ -67,9 +68,11 @@ class UnstructuredMeshSourceTest(PyAPITestHarness): else: # check that the average number of source sites in each cell + diff = np.abs(cell_counts - average_in_hex) + assert(np.average(cell_counts) == average_in_hex) # this probably shouldn't be exact??? - assert(np.std(cell_counts) < np.average(cell_counts)) - assert(np.amax(cell_counts) < np.average(cell_counts)+6*np.std(cell_counts)) + assert((diff < 2*cell_counts.std()).sum() / diff.size >= 0.75) + assert((diff < 6*cell_counts.std()).sum() / diff.size >= 0.97) def _cleanup(self): super()._cleanup() @@ -181,6 +184,5 @@ def test_unstructured_mesh_sampling(test_cases): settings=settings) harness = UnstructuredMeshSourceTest('statepoint.2.h5', model, - test_cases['inputs_true'], - test_cases['source_strengths']) + test_cases['inputs_true']) harness.main() \ No newline at end of file From 2779902287af68278e8a8f0be9930f6e4f9462c4 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Mon, 26 Dec 2022 15:24:43 -0600 Subject: [PATCH 016/120] Refactoring mesh sampling test to use openmc.lib. Making model a fixture --- .../unstructured_mesh/source_sampling/test.py | 262 ++++++++---------- 1 file changed, 118 insertions(+), 144 deletions(-) diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test.py b/tests/regression_tests/unstructured_mesh/source_sampling/test.py index a2d23b226..3e1609426 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/test.py +++ b/tests/regression_tests/unstructured_mesh/source_sampling/test.py @@ -8,55 +8,141 @@ import numpy as np import openmc import openmc.lib -from tests.testing_harness import PyAPITestHarness +from tests import cdtemp from tests.regression_tests import config from subprocess import call TETS_PER_VOXEL = 12 -# This test uses a geometry file that resembles a regular mesh. -# 12 tets are used to match each voxel in the geometry. -class UnstructuredMeshSourceTest(PyAPITestHarness): - def __init__(self, statepoint_name, model, inputs_true): - super().__init__(statepoint_name, model, inputs_true) +@pytest.fixture +def model(): + ### Materials ### + materials = openmc.Materials() - def _run_openmc(self): - kwargs = {'openmc_exec' : config['exe'], - 'event_based' : config['event'], - 'tracks' : "True"} + water_mat = openmc.Material(material_id=3, name="water") + water_mat.add_nuclide("H1", 2.0) + water_mat.add_nuclide("O16", 1.0) + water_mat.set_density("atom/b-cm", 0.07416) + materials.append(water_mat) - if config['mpi']: - kwargs['mpi_args'] = [config['mpiexec'], '-n', config['mpi_np']] + ### Geometry ### + # This test uses a geometry file that resembles a regular mesh. + # 12 tets are used to match each voxel in the geometry. - openmc.run(**kwargs) + dimen = 10 + size_hex = 20.0 / dimen + + cells = np.empty((dimen, dimen, dimen), dtype=object) + surfaces = np.empty((dimen + 1, 3), dtype=object) + + geometry = openmc.Geometry() + universe = openmc.Universe(universe_id=1, name="Contains all hexes") + + for i in range(0,dimen+1): + coord = -dimen + i * size_hex + surfaces[i][0] = openmc.XPlane(coord, name=f"X plane at {coord}") + surfaces[i][1] = openmc.YPlane(coord, name=f"Y plane at {coord}") + surfaces[i][2] = openmc.ZPlane(coord, name=f"Z plane at {coord}") + + surfaces[i][0].boundary_type = 'vacuum' + surfaces[i][1].boundary_type = 'vacuum' + surfaces[i][2].boundary_type = 'vacuum' + + for (k, j, i) in np.ndindex(cells.shape): + cells[i][j][k] = openmc.Cell(name=("x = {}, y = {}, z = {}".format(i,j,k))) + cells[i][j][k].region = +surfaces[i][0] & -surfaces[i+1][0] & \ + +surfaces[j][1] & -surfaces[j+1][1] & \ + +surfaces[k][2] & -surfaces[k+1][2] + cells[i][j][k].fill = None + + universe.add_cell(cells[i][j][k]) + + geometry = openmc.Geometry(universe) + + ### Settings ### + settings = openmc.Settings() + settings.run_mode = 'fixed source' + settings.particles = 5000 + settings.batches = 2 + + return openmc.model.Model(geometry=geometry, + materials=materials, + settings=settings) + + +param_values = (['libmesh', 'moab'], # mesh libraries + ['uniform', 'manual']) # Element weighting schemes + +test_cases = [] +for i, (lib, schemes) in enumerate(product(*param_values)): + test_cases.append({'library' : lib, + 'source_strengths' : schemes, + 'inputs_true' : 'inputs_true{}.dat'.format(i)}) + +def ids(params): + return f"{params['library']}-{params['source_strengths']}" + +@pytest.mark.parametrize("test_cases", test_cases, ids=ids) +def test_unstructured_mesh_sampling(model, test_cases): + # skip the test if the library is not enabled + if test_cases['library'] == 'moab' and not openmc.lib._dagmc_enabled(): + pytest.skip("DAGMC (and MOAB) mesh not enabled in this build.") + + if test_cases['library'] == 'libmesh' and not openmc.lib._libmesh_enabled(): + pytest.skip("LibMesh is not enabled in this build.") + + # setup mesh source ### + mesh_filename = "test_mesh_tets.e" + + uscd_mesh = openmc.UnstructuredMesh(mesh_filename, test_cases['library']) + + n_cells = len(model.geometry.get_all_cells()) + + # set source weights according to test case + if test_cases['source_strengths'] == 'uniform': + vol_norm = True + strengths = None + elif test_cases['source_strengths'] == 'manual': + vol_norm = False + strengths = np.zeros(n_cells*TETS_PER_VOXEL) + # set non-zero strengths only for the tets corresponding to the + # first two geometric hex cells + strengths[0:TETS_PER_VOXEL] = 10 + strengths[TETS_PER_VOXEL:2*TETS_PER_VOXEL] = 2 + + # create the spatial distribution based on the mesh + space = openmc.stats.MeshSpatial(uscd_mesh, strengths, vol_norm) + + energy = openmc.stats.Discrete(x=[15.e+06], p=[1.0]) + source = openmc.Source(space=space, energy=energy) + model.settings.source = source + + with cdtemp(['test_mesh_tets.e', 'test_mesh_tets.exo']): + model.export_to_xml() + + n_cells = len(model.geometry.get_all_cells()) + + n_samples = 100000 + + cell_counts = np.zeros(n_cells) - def _compare_results(self): # This model contains 1000 geometry cells. Each cell is a hex # corresponding to 12 of the tets. This test runs 10000 particles. This # results in the following average for each cell + average_in_hex = n_samples / n_cells - # we can compute this based on the number of particles run in the simulation - average_in_hex = 10.0 + openmc.lib.init([]) - # Load in tracks - if config['mpi']: - openmc.Tracks.combine(glob.glob('tracks_p*.h5')) + sites = openmc.lib.sample_external_source(n_samples) + cells = [openmc.lib.find_cell(s.r) for s in sites] - tracks = openmc.Tracks(filepath='tracks.h5') - tracks_born = np.empty((len(tracks), 1)) + openmc.lib.finalize() - # create an array with an entry for each geometric cell - cell_counts = np.zeros(1000) + for c in cells: + cell_counts[c[0]._index] += 1 - # loop over the tracks and get data - for i in range(0, len(tracks)): - # get the initial cell ID of the track, and assign it for the tracks_born array - tracks_born[i] = tracks[i].particle_tracks[0].states['cell_id'][0] - # increment the cell_counts entry for this cell_id - cell_counts[int(tracks_born[i])-1] += 1 - - source_strengths = self._model.settings.source[0].space.strengths + source_strengths = model.settings.source[0].space.strengths if source_strengths is not None: assert(cell_counts[0] > 0 and cell_counts[1] > 0) @@ -68,121 +154,9 @@ class UnstructuredMeshSourceTest(PyAPITestHarness): else: # check that the average number of source sites in each cell + # is within the expected deviation diff = np.abs(cell_counts - average_in_hex) assert(np.average(cell_counts) == average_in_hex) # this probably shouldn't be exact??? assert((diff < 2*cell_counts.std()).sum() / diff.size >= 0.75) assert((diff < 6*cell_counts.std()).sum() / diff.size >= 0.97) - - def _cleanup(self): - super()._cleanup() - output = glob.glob('track*.h5') - output += glob.glob('tally*.e') - for f in output: - if os.path.exists(f): - os.remove(f) - -param_values = (['libmesh', 'moab'], # mesh libraries - ['uniform', 'manual']) # Element weighting schemes - -test_cases = [] -for i, (lib, schemes) in enumerate(product(*param_values)): - test_cases.append({'library' : lib, - 'source_strengths' : schemes, - 'inputs_true' : 'inputs_true{}.dat'.format(i)}) - -@pytest.mark.parametrize("test_cases", test_cases) -def test_unstructured_mesh_sampling(test_cases): - openmc.reset_auto_ids() - - # skip the test if the library is not enabled - if test_cases['library'] == 'moab' and not openmc.lib._dagmc_enabled(): - pytest.skip("DAGMC (and MOAB) mesh not enabled in this build.") - - if test_cases['library'] == 'libmesh' and not openmc.lib._libmesh_enabled(): - pytest.skip("LibMesh is not enabled in this build.") - - ### Materials ### - materials = openmc.Materials() - - water_mat = openmc.Material(material_id=3, name="water") - water_mat.add_nuclide("H1", 2.0) - water_mat.add_nuclide("O16", 1.0) - water_mat.set_density("atom/b-cm", 0.07416) - materials.append(water_mat) - - materials.export_to_xml() - - ### Geometry ### - dimen = 10 - size_hex = 20.0 / dimen - - ### Geometry ### - cell = np.empty((dimen, dimen, dimen), dtype=object) - surfaces = np.empty((dimen + 1, 3), dtype=object) - - geometry = openmc.Geometry() - universe = openmc.Universe(universe_id=1, name="Contains all hexes") - - for i in range(0,dimen+1): - coord = -10.0 + i * size_hex - surfaces[i][0] = openmc.XPlane(coord, name=f"X plane at {coord}") - surfaces[i][1] = openmc.YPlane(coord, name=f"Y plane at {coord}") - surfaces[i][2] = openmc.ZPlane(coord, name=f"Z plane at {coord}") - - surfaces[i][0].boundary_type = 'vacuum' - surfaces[i][1].boundary_type = 'vacuum' - surfaces[i][2].boundary_type = 'vacuum' - - for k in range(0,dimen): - for j in range(0,dimen): - for i in range(0,dimen): - cell[i][j][k] = openmc.Cell(name=("x = {}, y = {}, z = {}".format(i,j,k))) - cell[i][j][k].region = +surfaces[i][0] & -surfaces[i+1][0] & \ - +surfaces[j][1] & -surfaces[j+1][1] & \ - +surfaces[k][2] & -surfaces[k+1][2] - cell[i][j][k].fill = None - universe.add_cell(cell[i][j][k]) - - geometry = openmc.Geometry(universe) - - ### Settings ### - settings = openmc.Settings() - settings.run_mode = 'fixed source' - settings.particles = 5000 - settings.batches = 2 - - settings.max_tracks = settings.particles * settings.batches - - ### Source ### - mesh_filename = "test_mesh_tets.e" - - uscd_mesh = openmc.UnstructuredMesh(mesh_filename, test_cases['library']) - - # set source weights according to test case - if test_cases['source_strengths'] == 'uniform': - vol_norm = True - strengths = None - - elif test_cases['source_strengths'] == 'manual': - vol_norm = False - strengths = np.zeros(12000) - # set non-zero strengths only for the tets corresponding to the - # first two geometric hex cells - strengths[0:12] = 10 - strengths[12:24] = 2 - - # create the spatial distribution based on the mesh - space = openmc.stats.MeshSpatial(uscd_mesh, strengths, vol_norm) - - energy = openmc.stats.Discrete(x=[15.e+06], p=[1.0]) - source = openmc.Source(space=space, energy=energy) - settings.source = source - - model = openmc.model.Model(geometry=geometry, - materials=materials, - settings=settings) - harness = UnstructuredMeshSourceTest('statepoint.2.h5', - model, - test_cases['inputs_true']) - harness.main() \ No newline at end of file From ef14e0e8006dc1a8751299ade65d8f485123c3c4 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Mon, 26 Dec 2022 22:29:15 -0600 Subject: [PATCH 017/120] Separating tests into unit and regression tests. --- .../source_sampling/inputs_true0.dat | 7 +- .../source_sampling/inputs_true1.dat | 3 +- .../source_sampling/inputs_true2.dat | 1060 ---------------- .../source_sampling/inputs_true3.dat | 1062 ----------------- .../unstructured_mesh/source_sampling/test.py | 106 +- tests/unit_tests/test_mesh_tets.e | 1 + tests/unit_tests/test_source_mesh.py | 154 +++ 7 files changed, 187 insertions(+), 2206 deletions(-) delete mode 100644 tests/regression_tests/unstructured_mesh/source_sampling/inputs_true2.dat delete mode 100644 tests/regression_tests/unstructured_mesh/source_sampling/inputs_true3.dat create mode 120000 tests/unit_tests/test_mesh_tets.e create mode 100644 tests/unit_tests/test_source_mesh.py diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat index d632825ba..43942c473 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat +++ b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat @@ -1045,10 +1045,12 @@ fixed source - 5000 + 100 2 - + + 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 + 15000000.0 1.0 @@ -1056,5 +1058,4 @@ test_mesh_tets.e - 10000 diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat index 7ea0a1bd7..43942c473 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat +++ b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat @@ -1045,7 +1045,7 @@ fixed source - 5000 + 100 2 @@ -1058,5 +1058,4 @@ test_mesh_tets.e - 10000 diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true2.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true2.dat deleted file mode 100644 index 24c9400c9..000000000 --- a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true2.dat +++ /dev/null @@ -1,1060 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - fixed source - 5000 - 2 - - - - 15000000.0 1.0 - - - - test_mesh_tets.e - - 10000 - diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true3.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true3.dat deleted file mode 100644 index b4a17a948..000000000 --- a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true3.dat +++ /dev/null @@ -1,1062 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - fixed source - 5000 - 2 - - - 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 - - - 15000000.0 1.0 - - - - test_mesh_tets.e - - 10000 - diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test.py b/tests/regression_tests/unstructured_mesh/source_sampling/test.py index 3e1609426..3612c6cf4 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/test.py +++ b/tests/regression_tests/unstructured_mesh/source_sampling/test.py @@ -1,6 +1,4 @@ -import glob from itertools import product -import os import pytest import numpy as np @@ -9,6 +7,7 @@ import openmc import openmc.lib from tests import cdtemp +from tests.testing_harness import PyAPITestHarness from tests.regression_tests import config from subprocess import call @@ -17,6 +16,8 @@ TETS_PER_VOXEL = 12 @pytest.fixture def model(): + openmc.reset_auto_ids() + ### Materials ### materials = openmc.Materials() @@ -63,100 +64,47 @@ def model(): ### Settings ### settings = openmc.Settings() settings.run_mode = 'fixed source' - settings.particles = 5000 + settings.particles = 100 settings.batches = 2 - return openmc.model.Model(geometry=geometry, - materials=materials, - settings=settings) - - -param_values = (['libmesh', 'moab'], # mesh libraries - ['uniform', 'manual']) # Element weighting schemes - -test_cases = [] -for i, (lib, schemes) in enumerate(product(*param_values)): - test_cases.append({'library' : lib, - 'source_strengths' : schemes, - 'inputs_true' : 'inputs_true{}.dat'.format(i)}) - -def ids(params): - return f"{params['library']}-{params['source_strengths']}" - -@pytest.mark.parametrize("test_cases", test_cases, ids=ids) -def test_unstructured_mesh_sampling(model, test_cases): - # skip the test if the library is not enabled - if test_cases['library'] == 'moab' and not openmc.lib._dagmc_enabled(): - pytest.skip("DAGMC (and MOAB) mesh not enabled in this build.") - - if test_cases['library'] == 'libmesh' and not openmc.lib._libmesh_enabled(): - pytest.skip("LibMesh is not enabled in this build.") - - # setup mesh source ### mesh_filename = "test_mesh_tets.e" - uscd_mesh = openmc.UnstructuredMesh(mesh_filename, test_cases['library']) + uscd_mesh = openmc.UnstructuredMesh(mesh_filename, 'libmesh') - n_cells = len(model.geometry.get_all_cells()) + n_cells = len(geometry.get_all_cells()) # set source weights according to test case - if test_cases['source_strengths'] == 'uniform': - vol_norm = True - strengths = None - elif test_cases['source_strengths'] == 'manual': - vol_norm = False - strengths = np.zeros(n_cells*TETS_PER_VOXEL) - # set non-zero strengths only for the tets corresponding to the - # first two geometric hex cells - strengths[0:TETS_PER_VOXEL] = 10 - strengths[TETS_PER_VOXEL:2*TETS_PER_VOXEL] = 2 + vol_norm = False + strengths = np.zeros(n_cells*TETS_PER_VOXEL) + # set non-zero strengths only for the tets corresponding to the + # first two geometric hex cells + strengths[0:TETS_PER_VOXEL] = 10 + strengths[TETS_PER_VOXEL:2*TETS_PER_VOXEL] = 2 # create the spatial distribution based on the mesh space = openmc.stats.MeshSpatial(uscd_mesh, strengths, vol_norm) energy = openmc.stats.Discrete(x=[15.e+06], p=[1.0]) source = openmc.Source(space=space, energy=energy) - model.settings.source = source + settings.source = source - with cdtemp(['test_mesh_tets.e', 'test_mesh_tets.exo']): - model.export_to_xml() + return openmc.model.Model(geometry=geometry, + materials=materials, + settings=settings) - n_cells = len(model.geometry.get_all_cells()) - n_samples = 100000 +test_cases = [] +for i, lib, in enumerate(['libmesh', 'moab']): + test_cases.append({'library' : lib, + 'inputs_true' : 'inputs_true{}.dat'.format(i)}) - cell_counts = np.zeros(n_cells) +def ids(params): + return params['library'] - # This model contains 1000 geometry cells. Each cell is a hex - # corresponding to 12 of the tets. This test runs 10000 particles. This - # results in the following average for each cell - average_in_hex = n_samples / n_cells +@pytest.mark.parametrize("test_cases", test_cases, ids=ids) +def test_unstructured_mesh_sampling(model, test_cases): - openmc.lib.init([]) + model.settings.source[0].space.mesh.libaray = test_cases['library'] - sites = openmc.lib.sample_external_source(n_samples) - cells = [openmc.lib.find_cell(s.r) for s in sites] - - openmc.lib.finalize() - - for c in cells: - cell_counts[c[0]._index] += 1 - - source_strengths = model.settings.source[0].space.strengths - - if source_strengths is not None: - assert(cell_counts[0] > 0 and cell_counts[1] > 0) - assert(cell_counts[0] > cell_counts[1]) - - # counts for all other cells should be zero - for i in range(2, len(cell_counts)): - assert(cell_counts[i] == 0) - - else: - # check that the average number of source sites in each cell - # is within the expected deviation - diff = np.abs(cell_counts - average_in_hex) - - assert(np.average(cell_counts) == average_in_hex) # this probably shouldn't be exact??? - assert((diff < 2*cell_counts.std()).sum() / diff.size >= 0.75) - assert((diff < 6*cell_counts.std()).sum() / diff.size >= 0.97) + harness = PyAPITestHarness('statepoint.2.h5', model, test_cases['inputs_true']) + harness.main() \ No newline at end of file diff --git a/tests/unit_tests/test_mesh_tets.e b/tests/unit_tests/test_mesh_tets.e new file mode 120000 index 000000000..8a6287b4d --- /dev/null +++ b/tests/unit_tests/test_mesh_tets.e @@ -0,0 +1 @@ +../regression_tests/unstructured_mesh/test_mesh_tets.e \ No newline at end of file diff --git a/tests/unit_tests/test_source_mesh.py b/tests/unit_tests/test_source_mesh.py new file mode 100644 index 000000000..f9273b7c5 --- /dev/null +++ b/tests/unit_tests/test_source_mesh.py @@ -0,0 +1,154 @@ +from itertools import product + +import pytest +import numpy as np + +import openmc +import openmc.lib + +from tests import cdtemp +from tests.regression_tests import config +from subprocess import call + +TETS_PER_VOXEL = 12 + +@pytest.fixture +def model(): + openmc.reset_auto_ids() + + ### Materials ### + materials = openmc.Materials() + + water_mat = openmc.Material(material_id=3, name="water") + water_mat.add_nuclide("H1", 2.0) + water_mat.add_nuclide("O16", 1.0) + water_mat.set_density("atom/b-cm", 0.07416) + materials.append(water_mat) + + ### Geometry ### + # This test uses a geometry file that resembles a regular mesh. + # 12 tets are used to match each voxel in the geometry. + + dimen = 10 + size_hex = 20.0 / dimen + + cells = np.empty((dimen, dimen, dimen), dtype=object) + surfaces = np.empty((dimen + 1, 3), dtype=object) + + geometry = openmc.Geometry() + universe = openmc.Universe(universe_id=1, name="Contains all hexes") + + for i in range(0, dimen+1): + coord = -dimen + i * size_hex + surfaces[i][0] = openmc.XPlane(coord, name=f"X plane at {coord}") + surfaces[i][1] = openmc.YPlane(coord, name=f"Y plane at {coord}") + surfaces[i][2] = openmc.ZPlane(coord, name=f"Z plane at {coord}") + + surfaces[i][0].boundary_type = 'vacuum' + surfaces[i][1].boundary_type = 'vacuum' + surfaces[i][2].boundary_type = 'vacuum' + + for (k, j, i) in np.ndindex(cells.shape): + cells[i][j][k] = openmc.Cell(name=("x = {}, y = {}, z = {}".format(i,j,k))) + cells[i][j][k].region = +surfaces[i][0] & -surfaces[i+1][0] & \ + +surfaces[j][1] & -surfaces[j+1][1] & \ + +surfaces[k][2] & -surfaces[k+1][2] + cells[i][j][k].fill = None + + universe.add_cell(cells[i][j][k]) + + geometry = openmc.Geometry(universe) + + ### Settings ### + settings = openmc.Settings() + settings.run_mode = 'fixed source' + settings.particles = 100 + settings.batches = 2 + + return openmc.model.Model(geometry=geometry, + materials=materials, + settings=settings) + +param_values = (['libmesh', 'moab'], # mesh libraries + ['uniform', 'manual']) # Element weighting schemes + +test_cases = [] +for i, (lib, schemes) in enumerate(product(*param_values)): + test_cases.append({'library' : lib, + 'source_strengths' : schemes}) + +def ids(params): + return f"{params['library']}-{params['source_strengths']}" + +@pytest.mark.parametrize("test_cases", test_cases, ids=ids) +def test_unstructured_mesh_sampling(model, test_cases): + # skip the test if the library is not enabled + if test_cases['library'] == 'moab' and not openmc.lib._dagmc_enabled(): + pytest.skip("DAGMC (and MOAB) mesh not enabled in this build.") + + if test_cases['library'] == 'libmesh' and not openmc.lib._libmesh_enabled(): + pytest.skip("LibMesh is not enabled in this build.") + + # setup mesh source ### + mesh_filename = "test_mesh_tets.e" + + uscd_mesh = openmc.UnstructuredMesh(mesh_filename, test_cases['library']) + + n_cells = len(model.geometry.get_all_cells()) + + # set source weights according to test case + if test_cases['source_strengths'] == 'uniform': + vol_norm = True + strengths = None + elif test_cases['source_strengths'] == 'manual': + vol_norm = False + strengths = np.zeros(n_cells*TETS_PER_VOXEL) + # set non-zero strengths only for the tets corresponding to the + # first two geometric hex cells + strengths[0:TETS_PER_VOXEL] = 10 + strengths[TETS_PER_VOXEL:2*TETS_PER_VOXEL] = 2 + + # create the spatial distribution based on the mesh + space = openmc.stats.MeshSpatial(uscd_mesh, strengths, vol_norm) + + energy = openmc.stats.Discrete(x=[15.e+06], p=[1.0]) + source = openmc.Source(space=space, energy=energy) + model.settings.source = source + + with cdtemp(['test_mesh_tets.e']): + model.export_to_xml() + + n_cells = len(model.geometry.get_all_cells()) + + n_samples = 50000 + + cell_counts = np.zeros(n_cells) + + # This model contains 1000 geometry cells. Each cell is a hex + # corresponding to 12 of the tets. This test runs 10000 particles. This + # results in the following average for each cell + average_in_hex = n_samples / n_cells + + openmc.lib.init([]) + sites = openmc.lib.sample_external_source(n_samples) + cells = [openmc.lib.find_cell(s.r) for s in sites] + openmc.lib.finalize() + + for c in cells: + cell_counts[c[0]._index] += 1 + + if strengths is not None: + assert(cell_counts[0] > 0 and cell_counts[1] > 0) + assert(cell_counts[0] > cell_counts[1]) + + # counts for all other cells should be zero + for i in range(2, len(cell_counts)): + assert(cell_counts[i] == 0) + else: + # check that the average number of source sites in each cell + # is within the expected deviation + diff = np.abs(cell_counts - average_in_hex) + + assert(np.average(cell_counts) == average_in_hex) # this probably shouldn't be exact??? + assert((diff < 2*cell_counts.std()).sum() / diff.size >= 0.75) + assert((diff < 6*cell_counts.std()).sum() / diff.size >= 0.97) From bc7c8cd89260181c4b30c9e854062bb515602b51 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Mon, 26 Dec 2022 22:30:18 -0600 Subject: [PATCH 018/120] Adding empty results for now --- .../unstructured_mesh/source_sampling/results_true.dat | 0 .../unstructured_mesh/source_sampling/test_mesh_tets.exo | 1 - 2 files changed, 1 deletion(-) create mode 100644 tests/regression_tests/unstructured_mesh/source_sampling/results_true.dat delete mode 120000 tests/regression_tests/unstructured_mesh/source_sampling/test_mesh_tets.exo diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/results_true.dat b/tests/regression_tests/unstructured_mesh/source_sampling/results_true.dat new file mode 100644 index 000000000..e69de29bb diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test_mesh_tets.exo b/tests/regression_tests/unstructured_mesh/source_sampling/test_mesh_tets.exo deleted file mode 120000 index 6d40011d4..000000000 --- a/tests/regression_tests/unstructured_mesh/source_sampling/test_mesh_tets.exo +++ /dev/null @@ -1 +0,0 @@ -../test_mesh_tets.exo \ No newline at end of file From 996930f7f1a924d127829dda136e6a76d9e4db4d Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Mon, 26 Dec 2022 22:57:37 -0600 Subject: [PATCH 019/120] Improved testing for manually set source strengths --- tests/unit_tests/test_source_mesh.py | 50 +++++++++++++++------------- 1 file changed, 27 insertions(+), 23 deletions(-) diff --git a/tests/unit_tests/test_source_mesh.py b/tests/unit_tests/test_source_mesh.py index f9273b7c5..18c6f3360 100644 --- a/tests/unit_tests/test_source_mesh.py +++ b/tests/unit_tests/test_source_mesh.py @@ -102,11 +102,8 @@ def test_unstructured_mesh_sampling(model, test_cases): strengths = None elif test_cases['source_strengths'] == 'manual': vol_norm = False - strengths = np.zeros(n_cells*TETS_PER_VOXEL) - # set non-zero strengths only for the tets corresponding to the - # first two geometric hex cells - strengths[0:TETS_PER_VOXEL] = 10 - strengths[TETS_PER_VOXEL:2*TETS_PER_VOXEL] = 2 + # assign random weights + strengths = np.random.rand(n_cells*TETS_PER_VOXEL) # create the spatial distribution based on the mesh space = openmc.stats.MeshSpatial(uscd_mesh, strengths, vol_norm) @@ -120,9 +117,10 @@ def test_unstructured_mesh_sampling(model, test_cases): n_cells = len(model.geometry.get_all_cells()) - n_samples = 50000 + n_measurements = 100 + n_samples = 1000 - cell_counts = np.zeros(n_cells) + cell_counts = np.zeros((n_cells, n_measurements)) # This model contains 1000 geometry cells. Each cell is a hex # corresponding to 12 of the tets. This test runs 10000 particles. This @@ -130,25 +128,31 @@ def test_unstructured_mesh_sampling(model, test_cases): average_in_hex = n_samples / n_cells openmc.lib.init([]) - sites = openmc.lib.sample_external_source(n_samples) - cells = [openmc.lib.find_cell(s.r) for s in sites] + + # perform many sets of samples and track counts for each cell + for m in range(n_measurements): + sites = openmc.lib.sample_external_source(n_samples) + cells = [openmc.lib.find_cell(s.r) for s in sites] + + for c in cells: + cell_counts[c[0]._index, m] += 1 + openmc.lib.finalize() - for c in cells: - cell_counts[c[0]._index] += 1 + # normalize cell counts to get sampling frequency per particle + cell_counts /= n_samples - if strengths is not None: - assert(cell_counts[0] > 0 and cell_counts[1] > 0) - assert(cell_counts[0] > cell_counts[1]) + # get the mean and std. dev. of the cell counts + mean = cell_counts.mean(axis=1) + std_dev = cell_counts.std(axis=1) - # counts for all other cells should be zero - for i in range(2, len(cell_counts)): - assert(cell_counts[i] == 0) + if test_cases['source_strengths'] == 'uniform': + exp_vals = np.ones(n_cells) / n_cells else: - # check that the average number of source sites in each cell - # is within the expected deviation - diff = np.abs(cell_counts - average_in_hex) + # sum up the source strengths for each tet, these are the expected true mean + # of the sampling frequency for that cell + exp_vals = strengths.reshape(-1, 12).sum(axis=1) / sum(strengths) - assert(np.average(cell_counts) == average_in_hex) # this probably shouldn't be exact??? - assert((diff < 2*cell_counts.std()).sum() / diff.size >= 0.75) - assert((diff < 6*cell_counts.std()).sum() / diff.size >= 0.97) + diff = np.abs(mean - exp_vals) + assert((diff < 2*std_dev).sum() / diff[:10].size >= 0.95) + assert((diff < 6*std_dev).sum() / diff.size >= 0.97) From eca2a1ad2eefa5c3ee14c63ea612c150330cf781 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Tue, 27 Dec 2022 11:45:11 -0600 Subject: [PATCH 020/120] Reworking geometry model. --- .../source_sampling/inputs_true0.dat | 2155 +++++++++-------- .../source_sampling/inputs_true1.dat | 2155 +++++++++-------- .../unstructured_mesh/source_sampling/test.py | 44 +- tests/unit_tests/test_source_mesh.py | 47 +- 4 files changed, 2274 insertions(+), 2127 deletions(-) diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat index 43942c473..dcb56d403 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat +++ b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat @@ -1,1038 +1,1127 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 2 2 2 + 10 10 10 + -10 -10 -10 + +91 92 93 94 95 96 97 98 99 100 +81 82 83 84 85 86 87 88 89 90 +71 72 73 74 75 76 77 78 79 80 +61 62 63 64 65 66 67 68 69 70 +51 52 53 54 55 56 57 58 59 60 +41 42 43 44 45 46 47 48 49 50 +31 32 33 34 35 36 37 38 39 40 +21 22 23 24 25 26 27 28 29 30 +11 12 13 14 15 16 17 18 19 20 +1 2 3 4 5 6 7 8 9 10 + +191 192 193 194 195 196 197 198 199 200 +181 182 183 184 185 186 187 188 189 190 +171 172 173 174 175 176 177 178 179 180 +161 162 163 164 165 166 167 168 169 170 +151 152 153 154 155 156 157 158 159 160 +141 142 143 144 145 146 147 148 149 150 +131 132 133 134 135 136 137 138 139 140 +121 122 123 124 125 126 127 128 129 130 +111 112 113 114 115 116 117 118 119 120 +101 102 103 104 105 106 107 108 109 110 + +291 292 293 294 295 296 297 298 299 300 +281 282 283 284 285 286 287 288 289 290 +271 272 273 274 275 276 277 278 279 280 +261 262 263 264 265 266 267 268 269 270 +251 252 253 254 255 256 257 258 259 260 +241 242 243 244 245 246 247 248 249 250 +231 232 233 234 235 236 237 238 239 240 +221 222 223 224 225 226 227 228 229 230 +211 212 213 214 215 216 217 218 219 220 +201 202 203 204 205 206 207 208 209 210 + +391 392 393 394 395 396 397 398 399 400 +381 382 383 384 385 386 387 388 389 390 +371 372 373 374 375 376 377 378 379 380 +361 362 363 364 365 366 367 368 369 370 +351 352 353 354 355 356 357 358 359 360 +341 342 343 344 345 346 347 348 349 350 +331 332 333 334 335 336 337 338 339 340 +321 322 323 324 325 326 327 328 329 330 +311 312 313 314 315 316 317 318 319 320 +301 302 303 304 305 306 307 308 309 310 + +491 492 493 494 495 496 497 498 499 500 +481 482 483 484 485 486 487 488 489 490 +471 472 473 474 475 476 477 478 479 480 +461 462 463 464 465 466 467 468 469 470 +451 452 453 454 455 456 457 458 459 460 +441 442 443 444 445 446 447 448 449 450 +431 432 433 434 435 436 437 438 439 440 +421 422 423 424 425 426 427 428 429 430 +411 412 413 414 415 416 417 418 419 420 +401 402 403 404 405 406 407 408 409 410 + +591 592 593 594 595 596 597 598 599 600 +581 582 583 584 585 586 587 588 589 590 +571 572 573 574 575 576 577 578 579 580 +561 562 563 564 565 566 567 568 569 570 +551 552 553 554 555 556 557 558 559 560 +541 542 543 544 545 546 547 548 549 550 +531 532 533 534 535 536 537 538 539 540 +521 522 523 524 525 526 527 528 529 530 +511 512 513 514 515 516 517 518 519 520 +501 502 503 504 505 506 507 508 509 510 + +691 692 693 694 695 696 697 698 699 700 +681 682 683 684 685 686 687 688 689 690 +671 672 673 674 675 676 677 678 679 680 +661 662 663 664 665 666 667 668 669 670 +651 652 653 654 655 656 657 658 659 660 +641 642 643 644 645 646 647 648 649 650 +631 632 633 634 635 636 637 638 639 640 +621 622 623 624 625 626 627 628 629 630 +611 612 613 614 615 616 617 618 619 620 +601 602 603 604 605 606 607 608 609 610 + +791 792 793 794 795 796 797 798 799 800 +781 782 783 784 785 786 787 788 789 790 +771 772 773 774 775 776 777 778 779 780 +761 762 763 764 765 766 767 768 769 770 +751 752 753 754 755 756 757 758 759 760 +741 742 743 744 745 746 747 748 749 750 +731 732 733 734 735 736 737 738 739 740 +721 722 723 724 725 726 727 728 729 730 +711 712 713 714 715 716 717 718 719 720 +701 702 703 704 705 706 707 708 709 710 + +891 892 893 894 895 896 897 898 899 900 +881 882 883 884 885 886 887 888 889 890 +871 872 873 874 875 876 877 878 879 880 +861 862 863 864 865 866 867 868 869 870 +851 852 853 854 855 856 857 858 859 860 +841 842 843 844 845 846 847 848 849 850 +831 832 833 834 835 836 837 838 839 840 +821 822 823 824 825 826 827 828 829 830 +811 812 813 814 815 816 817 818 819 820 +801 802 803 804 805 806 807 808 809 810 + +991 992 993 994 995 996 997 998 999 1000 +981 982 983 984 985 986 987 988 989 990 +971 972 973 974 975 976 977 978 979 980 +961 962 963 964 965 966 967 968 969 970 +951 952 953 954 955 956 957 958 959 960 +941 942 943 944 945 946 947 948 949 950 +931 932 933 934 935 936 937 938 939 940 +921 922 923 924 925 926 927 928 929 930 +911 912 913 914 915 916 917 918 919 920 +901 902 903 904 905 906 907 908 909 910 + + + + + + + diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat index 43942c473..dcb56d403 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat +++ b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat @@ -1,1038 +1,1127 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 2 2 2 + 10 10 10 + -10 -10 -10 + +91 92 93 94 95 96 97 98 99 100 +81 82 83 84 85 86 87 88 89 90 +71 72 73 74 75 76 77 78 79 80 +61 62 63 64 65 66 67 68 69 70 +51 52 53 54 55 56 57 58 59 60 +41 42 43 44 45 46 47 48 49 50 +31 32 33 34 35 36 37 38 39 40 +21 22 23 24 25 26 27 28 29 30 +11 12 13 14 15 16 17 18 19 20 +1 2 3 4 5 6 7 8 9 10 + +191 192 193 194 195 196 197 198 199 200 +181 182 183 184 185 186 187 188 189 190 +171 172 173 174 175 176 177 178 179 180 +161 162 163 164 165 166 167 168 169 170 +151 152 153 154 155 156 157 158 159 160 +141 142 143 144 145 146 147 148 149 150 +131 132 133 134 135 136 137 138 139 140 +121 122 123 124 125 126 127 128 129 130 +111 112 113 114 115 116 117 118 119 120 +101 102 103 104 105 106 107 108 109 110 + +291 292 293 294 295 296 297 298 299 300 +281 282 283 284 285 286 287 288 289 290 +271 272 273 274 275 276 277 278 279 280 +261 262 263 264 265 266 267 268 269 270 +251 252 253 254 255 256 257 258 259 260 +241 242 243 244 245 246 247 248 249 250 +231 232 233 234 235 236 237 238 239 240 +221 222 223 224 225 226 227 228 229 230 +211 212 213 214 215 216 217 218 219 220 +201 202 203 204 205 206 207 208 209 210 + +391 392 393 394 395 396 397 398 399 400 +381 382 383 384 385 386 387 388 389 390 +371 372 373 374 375 376 377 378 379 380 +361 362 363 364 365 366 367 368 369 370 +351 352 353 354 355 356 357 358 359 360 +341 342 343 344 345 346 347 348 349 350 +331 332 333 334 335 336 337 338 339 340 +321 322 323 324 325 326 327 328 329 330 +311 312 313 314 315 316 317 318 319 320 +301 302 303 304 305 306 307 308 309 310 + +491 492 493 494 495 496 497 498 499 500 +481 482 483 484 485 486 487 488 489 490 +471 472 473 474 475 476 477 478 479 480 +461 462 463 464 465 466 467 468 469 470 +451 452 453 454 455 456 457 458 459 460 +441 442 443 444 445 446 447 448 449 450 +431 432 433 434 435 436 437 438 439 440 +421 422 423 424 425 426 427 428 429 430 +411 412 413 414 415 416 417 418 419 420 +401 402 403 404 405 406 407 408 409 410 + +591 592 593 594 595 596 597 598 599 600 +581 582 583 584 585 586 587 588 589 590 +571 572 573 574 575 576 577 578 579 580 +561 562 563 564 565 566 567 568 569 570 +551 552 553 554 555 556 557 558 559 560 +541 542 543 544 545 546 547 548 549 550 +531 532 533 534 535 536 537 538 539 540 +521 522 523 524 525 526 527 528 529 530 +511 512 513 514 515 516 517 518 519 520 +501 502 503 504 505 506 507 508 509 510 + +691 692 693 694 695 696 697 698 699 700 +681 682 683 684 685 686 687 688 689 690 +671 672 673 674 675 676 677 678 679 680 +661 662 663 664 665 666 667 668 669 670 +651 652 653 654 655 656 657 658 659 660 +641 642 643 644 645 646 647 648 649 650 +631 632 633 634 635 636 637 638 639 640 +621 622 623 624 625 626 627 628 629 630 +611 612 613 614 615 616 617 618 619 620 +601 602 603 604 605 606 607 608 609 610 + +791 792 793 794 795 796 797 798 799 800 +781 782 783 784 785 786 787 788 789 790 +771 772 773 774 775 776 777 778 779 780 +761 762 763 764 765 766 767 768 769 770 +751 752 753 754 755 756 757 758 759 760 +741 742 743 744 745 746 747 748 749 750 +731 732 733 734 735 736 737 738 739 740 +721 722 723 724 725 726 727 728 729 730 +711 712 713 714 715 716 717 718 719 720 +701 702 703 704 705 706 707 708 709 710 + +891 892 893 894 895 896 897 898 899 900 +881 882 883 884 885 886 887 888 889 890 +871 872 873 874 875 876 877 878 879 880 +861 862 863 864 865 866 867 868 869 870 +851 852 853 854 855 856 857 858 859 860 +841 842 843 844 845 846 847 848 849 850 +831 832 833 834 835 836 837 838 839 840 +821 822 823 824 825 826 827 828 829 830 +811 812 813 814 815 816 817 818 819 820 +801 802 803 804 805 806 807 808 809 810 + +991 992 993 994 995 996 997 998 999 1000 +981 982 983 984 985 986 987 988 989 990 +971 972 973 974 975 976 977 978 979 980 +961 962 963 964 965 966 967 968 969 970 +951 952 953 954 955 956 957 958 959 960 +941 942 943 944 945 946 947 948 949 950 +931 932 933 934 935 936 937 938 939 940 +921 922 923 924 925 926 927 928 929 930 +911 912 913 914 915 916 917 918 919 920 +901 902 903 904 905 906 907 908 909 910 + + + + + + + diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test.py b/tests/regression_tests/unstructured_mesh/source_sampling/test.py index 3612c6cf4..d4b445f35 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/test.py +++ b/tests/regression_tests/unstructured_mesh/source_sampling/test.py @@ -13,6 +13,8 @@ from subprocess import call TETS_PER_VOXEL = 12 +# This test uses a geometry file that resembles a regular mesh. + @pytest.fixture def model(): @@ -31,35 +33,19 @@ def model(): # This test uses a geometry file that resembles a regular mesh. # 12 tets are used to match each voxel in the geometry. - dimen = 10 - size_hex = 20.0 / dimen + # create a regular mesh that matches the superimposed mesh + regular_mesh = openmc.RegularMesh(mesh_id=10) + regular_mesh.lower_left = (-10, -10, -10) + regular_mesh.dimension = (10, 10, 10) + regular_mesh.width = (2, 2, 2) - cells = np.empty((dimen, dimen, dimen), dtype=object) - surfaces = np.empty((dimen + 1, 3), dtype=object) + root_cell, cells = regular_mesh.build_cells() - geometry = openmc.Geometry() - universe = openmc.Universe(universe_id=1, name="Contains all hexes") + geometry = openmc.Geometry(root=[root_cell]) - for i in range(0,dimen+1): - coord = -dimen + i * size_hex - surfaces[i][0] = openmc.XPlane(coord, name=f"X plane at {coord}") - surfaces[i][1] = openmc.YPlane(coord, name=f"Y plane at {coord}") - surfaces[i][2] = openmc.ZPlane(coord, name=f"Z plane at {coord}") - - surfaces[i][0].boundary_type = 'vacuum' - surfaces[i][1].boundary_type = 'vacuum' - surfaces[i][2].boundary_type = 'vacuum' - - for (k, j, i) in np.ndindex(cells.shape): - cells[i][j][k] = openmc.Cell(name=("x = {}, y = {}, z = {}".format(i,j,k))) - cells[i][j][k].region = +surfaces[i][0] & -surfaces[i+1][0] & \ - +surfaces[j][1] & -surfaces[j+1][1] & \ - +surfaces[k][2] & -surfaces[k+1][2] - cells[i][j][k].fill = None - - universe.add_cell(cells[i][j][k]) - - geometry = openmc.Geometry(universe) + # set boundary conditions of the root cell + for surface in root_cell.region.get_surfaces().values(): + surface.boundary_type = 'vacuum' ### Settings ### settings = openmc.Settings() @@ -68,10 +54,10 @@ def model(): settings.batches = 2 mesh_filename = "test_mesh_tets.e" - uscd_mesh = openmc.UnstructuredMesh(mesh_filename, 'libmesh') - n_cells = len(geometry.get_all_cells()) + # subtract one to account for root cell + n_cells = len(geometry.get_all_cells()) - 1 # set source weights according to test case vol_norm = False @@ -87,12 +73,10 @@ def model(): energy = openmc.stats.Discrete(x=[15.e+06], p=[1.0]) source = openmc.Source(space=space, energy=energy) settings.source = source - return openmc.model.Model(geometry=geometry, materials=materials, settings=settings) - test_cases = [] for i, lib, in enumerate(['libmesh', 'moab']): test_cases.append({'library' : lib, diff --git a/tests/unit_tests/test_source_mesh.py b/tests/unit_tests/test_source_mesh.py index 18c6f3360..223524fdf 100644 --- a/tests/unit_tests/test_source_mesh.py +++ b/tests/unit_tests/test_source_mesh.py @@ -29,35 +29,19 @@ def model(): # This test uses a geometry file that resembles a regular mesh. # 12 tets are used to match each voxel in the geometry. - dimen = 10 - size_hex = 20.0 / dimen + # create a regular mesh that matches the superimposed mesh + regular_mesh = openmc.RegularMesh(mesh_id=10) + regular_mesh.lower_left = (-10, -10, -10) + regular_mesh.dimension = (10, 10, 10) + regular_mesh.width = (2, 2, 2) - cells = np.empty((dimen, dimen, dimen), dtype=object) - surfaces = np.empty((dimen + 1, 3), dtype=object) + root_cell, cells = regular_mesh.build_cells() - geometry = openmc.Geometry() - universe = openmc.Universe(universe_id=1, name="Contains all hexes") + geometry = openmc.Geometry(root=[root_cell]) - for i in range(0, dimen+1): - coord = -dimen + i * size_hex - surfaces[i][0] = openmc.XPlane(coord, name=f"X plane at {coord}") - surfaces[i][1] = openmc.YPlane(coord, name=f"Y plane at {coord}") - surfaces[i][2] = openmc.ZPlane(coord, name=f"Z plane at {coord}") - - surfaces[i][0].boundary_type = 'vacuum' - surfaces[i][1].boundary_type = 'vacuum' - surfaces[i][2].boundary_type = 'vacuum' - - for (k, j, i) in np.ndindex(cells.shape): - cells[i][j][k] = openmc.Cell(name=("x = {}, y = {}, z = {}".format(i,j,k))) - cells[i][j][k].region = +surfaces[i][0] & -surfaces[i+1][0] & \ - +surfaces[j][1] & -surfaces[j+1][1] & \ - +surfaces[k][2] & -surfaces[k+1][2] - cells[i][j][k].fill = None - - universe.add_cell(cells[i][j][k]) - - geometry = openmc.Geometry(universe) + # set boundary conditions of the root cell + for surface in root_cell.region.get_surfaces().values(): + surface.boundary_type = 'vacuum' ### Settings ### settings = openmc.Settings() @@ -69,6 +53,7 @@ def model(): materials=materials, settings=settings) +### Setup test cases ### param_values = (['libmesh', 'moab'], # mesh libraries ['uniform', 'manual']) # Element weighting schemes @@ -78,6 +63,7 @@ for i, (lib, schemes) in enumerate(product(*param_values)): 'source_strengths' : schemes}) def ids(params): + """Test naming function for clarity""" return f"{params['library']}-{params['source_strengths']}" @pytest.mark.parametrize("test_cases", test_cases, ids=ids) @@ -91,10 +77,10 @@ def test_unstructured_mesh_sampling(model, test_cases): # setup mesh source ### mesh_filename = "test_mesh_tets.e" - uscd_mesh = openmc.UnstructuredMesh(mesh_filename, test_cases['library']) - n_cells = len(model.geometry.get_all_cells()) + # subtract one to account for root cell produced by RegularMesh.build_cells + n_cells = len(model.geometry.get_all_cells()) - 1 # set source weights according to test case if test_cases['source_strengths'] == 'uniform': @@ -115,8 +101,6 @@ def test_unstructured_mesh_sampling(model, test_cases): with cdtemp(['test_mesh_tets.e']): model.export_to_xml() - n_cells = len(model.geometry.get_all_cells()) - n_measurements = 100 n_samples = 1000 @@ -135,7 +119,8 @@ def test_unstructured_mesh_sampling(model, test_cases): cells = [openmc.lib.find_cell(s.r) for s in sites] for c in cells: - cell_counts[c[0]._index, m] += 1 + # subtract one from index to account for root cell + cell_counts[c[0]._index - 1, m] += 1 openmc.lib.finalize() From 7fd2f0d7ff28f21032005ed9c4389bffbfa6f6c0 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Tue, 27 Dec 2022 11:50:29 -0600 Subject: [PATCH 021/120] Correcting filepath for test run outside directory --- tests/unit_tests/test_source_mesh.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/tests/unit_tests/test_source_mesh.py b/tests/unit_tests/test_source_mesh.py index 223524fdf..ffc7d73b4 100644 --- a/tests/unit_tests/test_source_mesh.py +++ b/tests/unit_tests/test_source_mesh.py @@ -1,5 +1,6 @@ from itertools import product +from pathlib import Path import pytest import numpy as np @@ -67,7 +68,7 @@ def ids(params): return f"{params['library']}-{params['source_strengths']}" @pytest.mark.parametrize("test_cases", test_cases, ids=ids) -def test_unstructured_mesh_sampling(model, test_cases): +def test_unstructured_mesh_sampling(model, request, test_cases): # skip the test if the library is not enabled if test_cases['library'] == 'moab' and not openmc.lib._dagmc_enabled(): pytest.skip("DAGMC (and MOAB) mesh not enabled in this build.") @@ -76,7 +77,7 @@ def test_unstructured_mesh_sampling(model, test_cases): pytest.skip("LibMesh is not enabled in this build.") # setup mesh source ### - mesh_filename = "test_mesh_tets.e" + mesh_filename = Path(request.fspath).parent / "test_mesh_tets.e" uscd_mesh = openmc.UnstructuredMesh(mesh_filename, test_cases['library']) # subtract one to account for root cell produced by RegularMesh.build_cells @@ -98,7 +99,7 @@ def test_unstructured_mesh_sampling(model, test_cases): source = openmc.Source(space=space, energy=energy) model.settings.source = source - with cdtemp(['test_mesh_tets.e']): + with cdtemp([mesh_filename]): model.export_to_xml() n_measurements = 100 From f001d411eee02ba8a6e7599e9235a2adf25d5421 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Tue, 27 Dec 2022 12:21:01 -0600 Subject: [PATCH 022/120] More small improvements to tests --- .../unstructured_mesh/source_sampling/test.py | 37 +++++++++++-------- tests/unit_tests/test_source_mesh.py | 5 ++- 2 files changed, 26 insertions(+), 16 deletions(-) diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test.py b/tests/regression_tests/unstructured_mesh/source_sampling/test.py index d4b445f35..83458e440 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/test.py +++ b/tests/regression_tests/unstructured_mesh/source_sampling/test.py @@ -1,5 +1,6 @@ from itertools import product +from pathlib import Path import pytest import numpy as np @@ -8,14 +9,11 @@ import openmc.lib from tests import cdtemp from tests.testing_harness import PyAPITestHarness -from tests.regression_tests import config -from subprocess import call TETS_PER_VOXEL = 12 -# This test uses a geometry file that resembles a regular mesh. - - +# This test uses a geometry file with cells that match a regular mesh. Each cell +# in the geometry corresponds to 12 tetrahedra in the unstructured mesh file. @pytest.fixture def model(): openmc.reset_auto_ids() @@ -30,16 +28,13 @@ def model(): materials.append(water_mat) ### Geometry ### - # This test uses a geometry file that resembles a regular mesh. - # 12 tets are used to match each voxel in the geometry. - # create a regular mesh that matches the superimposed mesh regular_mesh = openmc.RegularMesh(mesh_id=10) regular_mesh.lower_left = (-10, -10, -10) regular_mesh.dimension = (10, 10, 10) regular_mesh.width = (2, 2, 2) - root_cell, cells = regular_mesh.build_cells() + root_cell, _ = regular_mesh.build_cells() geometry = openmc.Geometry(root=[root_cell]) @@ -59,7 +54,8 @@ def model(): # subtract one to account for root cell n_cells = len(geometry.get_all_cells()) - 1 - # set source weights according to test case + # set source weights manually so the C++ that checks the + # size of the array is executed vol_norm = False strengths = np.zeros(n_cells*TETS_PER_VOXEL) # set non-zero strengths only for the tets corresponding to the @@ -77,18 +73,29 @@ def model(): materials=materials, settings=settings) + test_cases = [] for i, lib, in enumerate(['libmesh', 'moab']): test_cases.append({'library' : lib, 'inputs_true' : 'inputs_true{}.dat'.format(i)}) -def ids(params): - return params['library'] - -@pytest.mark.parametrize("test_cases", test_cases, ids=ids) +@pytest.mark.parametrize("test_cases", test_cases, ids=lambda p: p['library']) def test_unstructured_mesh_sampling(model, test_cases): model.settings.source[0].space.mesh.libaray = test_cases['library'] harness = PyAPITestHarness('statepoint.2.h5', model, test_cases['inputs_true']) - harness.main() \ No newline at end of file + harness.main() + + +def test_strengths_size_failure(request, model): + mesh_source = model.settings.source[0] + + # make sure that an incorrrectly sized strengths array causes a failure + mesh_source.space.strengths = mesh_source.space.strengths[:-1] + + mesh_filename = Path(request.fspath).parent / mesh_source.space.mesh.filename + + with pytest.raises(RuntimeError, match=r'strengths array'), cdtemp([mesh_filename]): + model.export_to_xml() + openmc.run() diff --git a/tests/unit_tests/test_source_mesh.py b/tests/unit_tests/test_source_mesh.py index ffc7d73b4..6549734e8 100644 --- a/tests/unit_tests/test_source_mesh.py +++ b/tests/unit_tests/test_source_mesh.py @@ -13,6 +13,8 @@ from subprocess import call TETS_PER_VOXEL = 12 +# This test uses a geometry file with cells that match a regular mesh. Each cell +# in the geometry corresponds to 12 tetrahedra in the unstructured mesh file. @pytest.fixture def model(): openmc.reset_auto_ids() @@ -36,7 +38,7 @@ def model(): regular_mesh.dimension = (10, 10, 10) regular_mesh.width = (2, 2, 2) - root_cell, cells = regular_mesh.build_cells() + root_cell, _ = regular_mesh.build_cells() geometry = openmc.Geometry(root=[root_cell]) @@ -142,3 +144,4 @@ def test_unstructured_mesh_sampling(model, request, test_cases): diff = np.abs(mean - exp_vals) assert((diff < 2*std_dev).sum() / diff[:10].size >= 0.95) assert((diff < 6*std_dev).sum() / diff.size >= 0.97) + From 60a2a0e1f80a6438e0cbda436effdf9174d4fafc Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Tue, 27 Dec 2022 12:21:27 -0600 Subject: [PATCH 023/120] Adding clarity to error message re: improperly sized strengths array --- src/distribution_spatial.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/distribution_spatial.cpp b/src/distribution_spatial.cpp index 7418b483a..89fef6155 100644 --- a/src/distribution_spatial.cpp +++ b/src/distribution_spatial.cpp @@ -204,7 +204,6 @@ MeshSpatial::MeshSpatial(pugi::xml_node node) mesh_CDF_.resize(n_bins+1); mesh_CDF_[0] = {0.0}; total_strength_ = 0.0; - mesh_strengths_.resize(n_bins); // Create cdfs for sampling for an element over a mesh // Volume scheme is weighted by the volume of each tet @@ -212,10 +211,13 @@ MeshSpatial::MeshSpatial(pugi::xml_node node) mesh_strengths_ = std::vector(n_bins, 1.0); if (check_for_node(node, "strengths")) { strengths = get_node_array(node, "strengths"); - if (strengths.size() != mesh_strengths_.size()){ - fatal_error("Number of entries in the strength matrix does not match the number of mesh entities"); + if (strengths.size() != n_bins) { + fatal_error( + fmt::format("Number of entries in the source strengths array {} does " + "not match the number of entities in mesh {} ({}).", + strengths.size(), mesh_id, n_bins)); } - mesh_strengths_ = strengths; + mesh_strengths_ = std::move(strengths); } if (get_node_value_bool(node, "volume_normalized")) { From 251d7f5436d9a85255ea95b85dd844a300bdc367 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Tue, 27 Dec 2022 12:40:16 -0600 Subject: [PATCH 024/120] Skip tests if libraries are not enabled --- .../unstructured_mesh/source_sampling/test.py | 6 ++++++ tests/unit_tests/test_source_mesh.py | 1 + 2 files changed, 7 insertions(+) diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test.py b/tests/regression_tests/unstructured_mesh/source_sampling/test.py index 83458e440..81f552698 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/test.py +++ b/tests/regression_tests/unstructured_mesh/source_sampling/test.py @@ -81,6 +81,12 @@ for i, lib, in enumerate(['libmesh', 'moab']): @pytest.mark.parametrize("test_cases", test_cases, ids=lambda p: p['library']) def test_unstructured_mesh_sampling(model, test_cases): + # skip the test if the library is not enabled + if test_cases['library'] == 'moab' and not openmc.lib._dagmc_enabled(): + pytest.skip("DAGMC (and MOAB) mesh not enabled in this build.") + + if test_cases['library'] == 'libmesh' and not openmc.lib._libmesh_enabled(): + pytest.skip("LibMesh is not enabled in this build.") model.settings.source[0].space.mesh.libaray = test_cases['library'] diff --git a/tests/unit_tests/test_source_mesh.py b/tests/unit_tests/test_source_mesh.py index 6549734e8..f093d54d6 100644 --- a/tests/unit_tests/test_source_mesh.py +++ b/tests/unit_tests/test_source_mesh.py @@ -11,6 +11,7 @@ from tests import cdtemp from tests.regression_tests import config from subprocess import call + TETS_PER_VOXEL = 12 # This test uses a geometry file with cells that match a regular mesh. Each cell From 3779c5cc4dc79816b0c9acf846b705b9efa2e046 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Tue, 27 Dec 2022 16:34:58 -0600 Subject: [PATCH 025/120] Skip test in absence of UM support --- .../unstructured_mesh/source_sampling/test.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test.py b/tests/regression_tests/unstructured_mesh/source_sampling/test.py index 81f552698..0188af3f1 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/test.py +++ b/tests/regression_tests/unstructured_mesh/source_sampling/test.py @@ -97,6 +97,13 @@ def test_unstructured_mesh_sampling(model, test_cases): def test_strengths_size_failure(request, model): mesh_source = model.settings.source[0] + # skip the test if unstructured mesh is not available + if not openmc.lib._libmesh_enabled(): + if openmc.lib._dagmc_enabled(): + mesh_source.space.mesh.library = 'moab' + else: + pytest.skip("Unstructured mesh support unavailable.") + # make sure that an incorrrectly sized strengths array causes a failure mesh_source.space.strengths = mesh_source.space.strengths[:-1] From c6f0d36bdb0ecdc91a13c7acbc630d4926972792 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Tue, 27 Dec 2022 23:06:07 -0600 Subject: [PATCH 026/120] Correcting attribute name --- .../unstructured_mesh/source_sampling/inputs_true1.dat | 2 +- .../regression_tests/unstructured_mesh/source_sampling/test.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat index dcb56d403..9e22063f1 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat +++ b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat @@ -1144,7 +1144,7 @@ 15000000.0 1.0 - + test_mesh_tets.e diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test.py b/tests/regression_tests/unstructured_mesh/source_sampling/test.py index 0188af3f1..e34bf3b75 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/test.py +++ b/tests/regression_tests/unstructured_mesh/source_sampling/test.py @@ -88,7 +88,7 @@ def test_unstructured_mesh_sampling(model, test_cases): if test_cases['library'] == 'libmesh' and not openmc.lib._libmesh_enabled(): pytest.skip("LibMesh is not enabled in this build.") - model.settings.source[0].space.mesh.libaray = test_cases['library'] + model.settings.source[0].space.mesh.library = test_cases['library'] harness = PyAPITestHarness('statepoint.2.h5', model, test_cases['inputs_true']) harness.main() From 43549cf1f1edb971efba00c593444f71c6539d5c Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Thu, 29 Dec 2022 08:15:45 -0600 Subject: [PATCH 027/120] A couple small changes from original PR comments --- openmc/stats/multivariate.py | 5 ++--- src/distribution_spatial.cpp | 4 ++-- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/openmc/stats/multivariate.py b/openmc/stats/multivariate.py index bff8c301a..799cb9add 100644 --- a/openmc/stats/multivariate.py +++ b/openmc/stats/multivariate.py @@ -627,7 +627,7 @@ class MeshSpatial(Spatial): This distribution specifies a mesh to sample over, chooses whether it will be volume normalized, and can set the source strengths. - .. versionadded:: 0.13 + .. versionadded:: 0.13.3 Parameters ---------- @@ -651,8 +651,7 @@ class MeshSpatial(Spatial): Whether or not the strengths will be normalized by volume. """ - def __init__(self, - mesh, strengths=None, volume_normalized=True): + def __init__(self, mesh, strengths=None, volume_normalized=True): self.mesh = mesh self.strengths = strengths self.volume_normalized = volume_normalized diff --git a/src/distribution_spatial.cpp b/src/distribution_spatial.cpp index 89fef6155..c1e000fcd 100644 --- a/src/distribution_spatial.cpp +++ b/src/distribution_spatial.cpp @@ -243,8 +243,8 @@ Position MeshSpatial::sample(uint64_t* seed) const // Create random variable for sampling element from mesh double eta = prn(seed); // Sample over the CDF defined in initialization above - int32_t elem_bin = lower_bound_index(mesh_CDF_.begin(), mesh_CDF_.end(), eta); - return mesh_ptr_->sample(seed, elem_bin); + int32_t elem_idx = lower_bound_index(mesh_CDF_.begin(), mesh_CDF_.end(), eta); + return mesh_ptr_->sample(seed, elem_idx); } //============================================================================== From 580096d4233f757220558560dd013a4c017fc99f Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Thu, 29 Dec 2022 10:39:41 -0600 Subject: [PATCH 028/120] Removing MESHES import --- openmc/stats/multivariate.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openmc/stats/multivariate.py b/openmc/stats/multivariate.py index 799cb9add..b491a6843 100644 --- a/openmc/stats/multivariate.py +++ b/openmc/stats/multivariate.py @@ -9,7 +9,7 @@ import numpy as np import openmc.checkvalue as cv from .._xml import get_text from .univariate import Univariate, Uniform, PowerLaw -from ..mesh import MeshBase, MESHES +from ..mesh import MeshBase class UnitSphere(ABC): From 8657123baceeb9ac91fe06d991c60db38950e10f Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Fri, 30 Dec 2022 07:21:11 -0600 Subject: [PATCH 029/120] Add some documentation for the new MeshSpatial class. --- docs/source/pythonapi/stats.rst | 1 + docs/source/usersguide/settings.rst | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/source/pythonapi/stats.rst b/docs/source/pythonapi/stats.rst index fb6383fc7..ffb4fcda2 100644 --- a/docs/source/pythonapi/stats.rst +++ b/docs/source/pythonapi/stats.rst @@ -57,6 +57,7 @@ Spatial Distributions openmc.stats.SphericalIndependent openmc.stats.Box openmc.stats.Point + openmc.stats.MeshSpatial .. autosummary:: :toctree: generated diff --git a/docs/source/usersguide/settings.rst b/docs/source/usersguide/settings.rst index 336982ac6..19373d26e 100644 --- a/docs/source/usersguide/settings.rst +++ b/docs/source/usersguide/settings.rst @@ -187,7 +187,9 @@ The spatial distribution can be set equal to a sub-class of :class:`openmc.stats.CartesianIndependent`. To independently specify distributions using spherical or cylindrical coordinates, you can use :class:`openmc.stats.SphericalIndependent` or -:class:`openmc.stats.CylindricalIndependent`, respectively. +:class:`openmc.stats.CylindricalIndependent`, respectively. Meshes can also be +used to represent spatial distributions with :class:`openmc.stats.MeshSpatial` +by specifying a mesh and source strengths for each mesh element. The angular distribution can be set equal to a sub-class of :class:`openmc.stats.UnitSphere` such as :class:`openmc.stats.Isotropic`, From 5e2cb6778da11b23579884915fce906d6f06f1c2 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Fri, 30 Dec 2022 22:01:11 -0600 Subject: [PATCH 030/120] Adding the mesh spatial option to the IO description --- docs/source/io_formats/settings.rst | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/source/io_formats/settings.rst b/docs/source/io_formats/settings.rst index 71ca61d54..fc98b662e 100644 --- a/docs/source/io_formats/settings.rst +++ b/docs/source/io_formats/settings.rst @@ -493,7 +493,10 @@ attributes/sub-elements: independent distributions of r-, cos_theta-, and phi-coordinates where cos_theta is the cosine of the angle with respect to the z-axis, phi is the azimuthal angle, and the sphere is centered on the coordinate - (x0,y0,z0). + (x0,y0,z0). A "mesh" spatial distribution source sites from a mesh element + based on the relative strengths provided in the node. Source locations + within an element are sampled isotropically. If no strengths are provided, + the space within the mesh is uniformly sampled. *Default*: None From 219a4b04da32e870301ceabbc0dea45852777c29 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Tue, 3 Jan 2023 10:35:44 -0600 Subject: [PATCH 031/120] Addressing comments from @NybergWISC Co-authored-by: Matthew Nyberg --- openmc/stats/multivariate.py | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/openmc/stats/multivariate.py b/openmc/stats/multivariate.py index b491a6843..171ff4b40 100644 --- a/openmc/stats/multivariate.py +++ b/openmc/stats/multivariate.py @@ -270,8 +270,6 @@ class Spatial(ABC): return CylindricalIndependent.from_xml_element(elem) elif distribution == 'spherical': return SphericalIndependent.from_xml_element(elem) - elif distribution == 'mesh': - return MeshSpatial.from_xml_element(elem) elif distribution == 'box' or distribution == 'fission': return Box.from_xml_element(elem) elif distribution == 'point': @@ -625,7 +623,7 @@ class MeshSpatial(Spatial): """Spatial distribution for a mesh. This distribution specifies a mesh to sample over, chooses whether it will - be volume normalized, and can set the source strengths. + be adjusted by element volume, and can set the source strengths. .. versionadded:: 0.13.3 @@ -635,10 +633,12 @@ class MeshSpatial(Spatial): The mesh instance used for sampling, mesh is written into settings.xml, mesh.id is written into the source distribution strengths : Iterable of Real, optional - A list of values which represent the weights of each element. If no source - strengths are specified, they will be equal for all mesh elements. + A list of values which represent the weights of each element. If no + source strengths are specified, they will be equal for all mesh + elements. volume_normalized : bool, optional - Whether or not the strengths will be normalized by volume. Default is True. + Whether or not the strengths will be multiplied by element volumes at + runtime. Default is True. Attributes ---------- @@ -648,7 +648,8 @@ class MeshSpatial(Spatial): strengths : Iterable of Real, optional A list of values which represent the weights of each element volume_normalized : bool - Whether or not the strengths will be normalized by volume. + Whether or not the strengths will be multiplied by element volumes at + runtime. """ def __init__(self, mesh, strengths=None, volume_normalized=True): @@ -672,7 +673,7 @@ class MeshSpatial(Spatial): @volume_normalized.setter def volume_normalized(self, volume_normalized): - cv.check_type('Normalize (multiply) strengths by volume', volume_normalized, bool) + cv.check_type('Multiply strengths by element volumes', volume_normalized, bool) self._volume_normalized = volume_normalized @property From e799346502d7e10500f35cedb4d1a4e4a6a3fc48 Mon Sep 17 00:00:00 2001 From: josh Date: Thu, 12 Jan 2023 21:58:22 +0000 Subject: [PATCH 032/120] switch universe deepcopying for a fresh instance on clones --- openmc/universe.py | 11 ++++++++--- tests/unit_tests/test_universe.py | 8 ++++++++ 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/openmc/universe.py b/openmc/universe.py index 9c93e6da1..15bea0ba9 100644 --- a/openmc/universe.py +++ b/openmc/universe.py @@ -1,7 +1,6 @@ from abc import ABC, abstractmethod from collections import OrderedDict from collections.abc import Iterable -from copy import deepcopy from numbers import Integral, Real from pathlib import Path from tempfile import TemporaryDirectory @@ -138,8 +137,14 @@ class UniverseBase(ABC, IDManagerMixin): # If no memoize'd clone exists, instantiate one if self not in memo: - clone = deepcopy(self) - clone.id = None + clone = openmc.Universe(name=self.name) + clone.volume = self.volume + # Try to set DAGMCUniverse-specific attributes on the clone + try: + clone.auto_geom_ids = self.auto_geom_ids + clone.auto_mat_ids = self.auto_mat_ids + except AttributeError: + pass # Clone all cells for the universe clone clone._cells = OrderedDict() diff --git a/tests/unit_tests/test_universe.py b/tests/unit_tests/test_universe.py index 33c86b150..39d1eec21 100644 --- a/tests/unit_tests/test_universe.py +++ b/tests/unit_tests/test_universe.py @@ -120,6 +120,14 @@ def test_clone(): assert next(iter(u3.cells.values())).region ==\ next(iter(u1.cells.values())).region + dagmc_u = openmc.DAGMCUniverse(filename="") + dagmc_u.auto_geom_ids = True + dagmc_u.auto_mat_ids = True + dagmc_u1 = dagmc_u.clone() + assert dagmc_u1.name == dagmc_u.name + assert dagmc_u1.auto_geom_ids == dagmc_u.auto_geom_ids + assert dagmc_u1.auto_mat_ids == dagmc_u.auto_mat_ids + def test_create_xml(cell_with_lattice): cells = [openmc.Cell() for i in range(5)] From e873db9a07a79500e6740e3362828c2357fd2731 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Thu, 12 Jan 2023 23:13:09 -0600 Subject: [PATCH 033/120] Apply suggestions from @paulromano Co-authored-by: Paul Romano --- docs/source/io_formats/settings.rst | 2 +- include/openmc/distribution_spatial.h | 1 - openmc/source.py | 1 - openmc/stats/multivariate.py | 27 +++++++++---------- src/mesh.cpp | 9 ++----- .../unstructured_mesh/source_sampling/test.py | 16 ++++++----- 6 files changed, 25 insertions(+), 31 deletions(-) diff --git a/docs/source/io_formats/settings.rst b/docs/source/io_formats/settings.rst index fc98b662e..b97049d38 100644 --- a/docs/source/io_formats/settings.rst +++ b/docs/source/io_formats/settings.rst @@ -493,7 +493,7 @@ attributes/sub-elements: independent distributions of r-, cos_theta-, and phi-coordinates where cos_theta is the cosine of the angle with respect to the z-axis, phi is the azimuthal angle, and the sphere is centered on the coordinate - (x0,y0,z0). A "mesh" spatial distribution source sites from a mesh element + (x0,y0,z0). A "mesh" spatial distribution samples source sites from a mesh element based on the relative strengths provided in the node. Source locations within an element are sampled isotropically. If no strengths are provided, the space within the mesh is uniformly sampled. diff --git a/include/openmc/distribution_spatial.h b/include/openmc/distribution_spatial.h index 0be6329f5..ece706759 100644 --- a/include/openmc/distribution_spatial.h +++ b/include/openmc/distribution_spatial.h @@ -115,7 +115,6 @@ public: private: Mesh* mesh_ptr_ {nullptr}; int32_t mesh_idx_ {C_NONE}; - std::string sample_scheme_; double total_strength_ {0.0}; std::vector mesh_CDF_; std::vector mesh_strengths_; diff --git a/openmc/source.py b/openmc/source.py index 32f8ea3d6..9293a5953 100644 --- a/openmc/source.py +++ b/openmc/source.py @@ -16,7 +16,6 @@ from openmc.checkvalue import PathLike from openmc.stats.multivariate import UnitSphere, Spatial from openmc.stats.univariate import Univariate from ._xml import get_text -from .mesh import MeshBase class Source: diff --git a/openmc/stats/multivariate.py b/openmc/stats/multivariate.py index 171ff4b40..db13b9bc9 100644 --- a/openmc/stats/multivariate.py +++ b/openmc/stats/multivariate.py @@ -619,21 +619,21 @@ class CylindricalIndependent(Spatial): origin = [float(x) for x in elem.get('origin').split()] return cls(r, phi, z, origin=origin) + class MeshSpatial(Spatial): """Spatial distribution for a mesh. - This distribution specifies a mesh to sample over, chooses whether it will - be adjusted by element volume, and can set the source strengths. + This distribution specifies a mesh to sample over with source strengths + specified for each mesh element. .. versionadded:: 0.13.3 Parameters ---------- mesh : openmc.MeshBase - The mesh instance used for sampling, mesh is written into settings.xml, - mesh.id is written into the source distribution - strengths : Iterable of Real, optional - A list of values which represent the weights of each element. If no + The mesh instance used for sampling + strengths : iterable of float, optional + An iterable of values that represents the weights of each element. If no source strengths are specified, they will be equal for all mesh elements. volume_normalized : bool, optional @@ -643,10 +643,9 @@ class MeshSpatial(Spatial): Attributes ---------- mesh : openmc.MeshBase - The mesh instance used for sampling, mesh is written into settings.xml, - mesh.id is written into the source distribution - strengths : Iterable of Real, optional - A list of values which represent the weights of each element + The mesh instance used for sampling + strengths : numpy.ndarray or None + An array of source strengths for each mesh element volume_normalized : bool Whether or not the strengths will be multiplied by element volumes at runtime. @@ -663,8 +662,8 @@ class MeshSpatial(Spatial): @mesh.setter def mesh(self, mesh): - if mesh != None: - cv.check_type('Unstructured Mesh instance', mesh, MeshBase) + if mesh is not None: + cv.check_type('mesh instance', mesh, MeshBase) self._mesh = mesh @property @@ -684,13 +683,13 @@ class MeshSpatial(Spatial): def strengths(self, given_strengths): if given_strengths is not None: cv.check_type('strengths array passed in', given_strengths, Iterable, Real) - self._strengths = np.array(given_strengths, dtype=float).flatten() + self._strengths = np.asarray(given_strengths, dtype=float).flatten() else: self._strengths = None @property def num_strength_bins(self): - if self.strengths == None: + if self.strengths is None: raise ValueError('Strengths are not set') return self.strengths.size diff --git a/src/mesh.cpp b/src/mesh.cpp index abb6f8b8c..2102f953d 100644 --- a/src/mesh.cpp +++ b/src/mesh.cpp @@ -195,7 +195,6 @@ UnstructuredMesh::UnstructuredMesh(pugi::xml_node node) : Mesh(node) } } -// Sample barycentric coordinates given a seed and the vertex positions and return the sampled position Position UnstructuredMesh::sample_tet(std::array coords, uint64_t* seed) const { // Uniform distribution double s = prn(seed); @@ -2112,9 +2111,7 @@ Position MOABMesh::sample(uint64_t* seed, int32_t bin) const { tet_verts[i] = {p[i][0], p[i][1], p[i][2]}; } // Samples position within tet using Barycentric stuff - Position r = this->sample_tet(tet_verts, seed); - - return r; + return this->sample_tet(tet_verts, seed); } @@ -2580,9 +2577,7 @@ Position LibMesh::sample(uint64_t* seed, int32_t bin) const { tet_verts[i] = {node_ref(0), node_ref(1), node_ref(2)}; } // Samples position within tet using Barycentric coordinates - Position r = this->sample_tet(tet_verts, seed); - - return r; + return this->sample_tet(tet_verts, seed); } Position LibMesh::centroid(int bin) const diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test.py b/tests/regression_tests/unstructured_mesh/source_sampling/test.py index e34bf3b75..facd0cad5 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/test.py +++ b/tests/regression_tests/unstructured_mesh/source_sampling/test.py @@ -1,15 +1,15 @@ from itertools import product - from pathlib import Path + import pytest import numpy as np - import openmc import openmc.lib from tests import cdtemp from tests.testing_harness import PyAPITestHarness + TETS_PER_VOXEL = 12 # This test uses a geometry file with cells that match a regular mesh. Each cell @@ -60,7 +60,8 @@ def model(): strengths = np.zeros(n_cells*TETS_PER_VOXEL) # set non-zero strengths only for the tets corresponding to the # first two geometric hex cells - strengths[0:TETS_PER_VOXEL] = 10 + strengths[:TETS_PER_VOXEL] = 10 + strengths[TETS_PER_VOXEL:2*TETS_PER_VOXEL] = 2 # create the spatial distribution based on the mesh @@ -74,10 +75,11 @@ def model(): settings=settings) -test_cases = [] -for i, lib, in enumerate(['libmesh', 'moab']): - test_cases.append({'library' : lib, - 'inputs_true' : 'inputs_true{}.dat'.format(i)}) +test_cases = [ + {'library': lib, 'inputs_true': f'inputs_true{i}.dat'} + for i, lib in enumerate(('libmesh', 'moab')) +] + @pytest.mark.parametrize("test_cases", test_cases, ids=lambda p: p['library']) def test_unstructured_mesh_sampling(model, test_cases): From d4cbcd12fc70cb52625e041c409c22e68d009395 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Thu, 12 Jan 2023 23:13:35 -0600 Subject: [PATCH 034/120] Addressing comments from @paulromano's review --- include/openmc/distribution_spatial.h | 1 - include/openmc/mesh.h | 12 ++++++++-- src/distribution_spatial.cpp | 20 ++++++++++++---- src/mesh.cpp | 34 ++++++++++++++++++++------- 4 files changed, 51 insertions(+), 16 deletions(-) diff --git a/include/openmc/distribution_spatial.h b/include/openmc/distribution_spatial.h index ece706759..939d055ba 100644 --- a/include/openmc/distribution_spatial.h +++ b/include/openmc/distribution_spatial.h @@ -113,7 +113,6 @@ public: int32_t n_sources() const { return this->mesh()->n_bins(); } private: - Mesh* mesh_ptr_ {nullptr}; int32_t mesh_idx_ {C_NONE}; double total_strength_ {0.0}; std::vector mesh_CDF_; diff --git a/include/openmc/mesh.h b/include/openmc/mesh.h index 310320486..73a4f0bb7 100644 --- a/include/openmc/mesh.h +++ b/include/openmc/mesh.h @@ -78,7 +78,8 @@ public: //! Sample a mesh volume using a certain seed // //! \param[in] seed Seed to use for random sampling - //! \param[out] r Position within tet + //! \param[in] bin Bin value of the tet sampled + //! \return sampled position within tet virtual Position sample(uint64_t* seed, int32_t bin) const=0; //! Get the volume of a mesh bin @@ -536,6 +537,8 @@ public: true}; //!< Write tallies onto the unstructured mesh at the end of a run std::string filename_; //!< Path to unstructured mesh file + ElementType element_type(int bin) const; + protected: //! Set the length multiplier to apply to each point in the mesh void set_length_multiplier(const double length_multiplier); @@ -545,7 +548,12 @@ protected: 1.0}; //!< Constant multiplication factor to apply to mesh coordinates bool specified_length_multiplier_ {false}; - //! Sample a tetrahedron for an unstructured mesh + //! Sample barycentric coordinates given a seed and the vertex positions and + //! return the sampled position + // + //! \param[in] coords Coordinates of the tetrahedron + //! \param[in] seed Random number generation seed + //! \return Sampled position within the tetrahedron Position sample_tet(std::array coords, uint64_t* seed) const; private: diff --git a/src/distribution_spatial.cpp b/src/distribution_spatial.cpp index c1e000fcd..fbe5ce658 100644 --- a/src/distribution_spatial.cpp +++ b/src/distribution_spatial.cpp @@ -194,9 +194,19 @@ MeshSpatial::MeshSpatial(pugi::xml_node node) // Get pointer to spatial distribution mesh_idx_ = model::mesh_map.at(mesh_id); - // Check whether mesh pointer points to a mesh - mesh_ptr_ = dynamic_cast(model::meshes[mesh_idx_].get()); - if (!mesh_ptr_) {fatal_error("Mesh passed to spatial distribution is not a mesh object"); } + auto mesh_ptr = + dynamic_cast(model::meshes.at(mesh_idx_).get()); + if (!mesh_ptr) { + fatal_error("Only unstructured mesh is supported for source sampling."); + } + + // ensure that the unstructured mesh contains only linear tets + for (int bin = 0; bin < mesh_ptr->n_bins(); bin++) { + if (mesh_ptr->element_type(bin) != ElementType::LINEAR_TET) { + fatal_error( + "Mesh specified for source must contain only linear tetrahedra."); + } + } int32_t n_bins = this->n_sources(); std::vector strengths(n_bins, 0.0); @@ -222,7 +232,7 @@ MeshSpatial::MeshSpatial(pugi::xml_node node) if (get_node_value_bool(node, "volume_normalized")) { for (int i = 0; i < n_bins; i++) { - mesh_strengths_[i] *= mesh_ptr_->volume(i); + mesh_strengths_[i] *= mesh()->volume(i); } } @@ -244,7 +254,7 @@ Position MeshSpatial::sample(uint64_t* seed) const double eta = prn(seed); // Sample over the CDF defined in initialization above int32_t elem_idx = lower_bound_index(mesh_CDF_.begin(), mesh_CDF_.end(), eta); - return mesh_ptr_->sample(seed, elem_idx); + return mesh()->sample(seed, elem_idx); } //============================================================================== diff --git a/src/mesh.cpp b/src/mesh.cpp index 2102f953d..39b5a225e 100644 --- a/src/mesh.cpp +++ b/src/mesh.cpp @@ -195,14 +195,17 @@ UnstructuredMesh::UnstructuredMesh(pugi::xml_node node) : Mesh(node) } } -Position UnstructuredMesh::sample_tet(std::array coords, uint64_t* seed) const { +Position UnstructuredMesh::sample_tet( + std::array coords, uint64_t* seed) const +{ // Uniform distribution double s = prn(seed); double t = prn(seed); double u = prn(seed); - // From PyNE implementation of moab tet sampling - // C. Rocchini and P. Cignoni, “Generating Random Points in a Tetrahedron,” + // From PyNE implementation of moab tet sampling C. Rocchini & P. Cignoni + // (2000) Generating Random Points in a Tetrahedron, Journal of Graphics + // Tools, 5:4, 9-12, DOI: 10.1080/10867651.2000.10487528 if (s + t > 1) { s = 1.0 - s; t = 1.0 - t; @@ -222,7 +225,6 @@ Position UnstructuredMesh::sample_tet(std::array coords, uint64_t* + t*(coords[2]-coords[0]) + u*(coords[3]-coords[0]) + coords[0]; - } const std::string UnstructuredMesh::mesh_type = "unstructured"; @@ -313,6 +315,18 @@ void UnstructuredMesh::set_length_multiplier(double length_multiplier) specified_length_multiplier_ = true; } +ElementType UnstructuredMesh::element_type(int bin) const +{ + auto conn = connectivity(bin); + + if (conn.size() == 4) + return ElementType::LINEAR_TET; + else if (conn.size() == 8) + return ElementType::LINEAR_HEX; + else + return ElementType::UNSUPPORTED; +} + StructuredMesh::MeshIndex StructuredMesh::get_indices( Position r, bool& in_mesh) const { @@ -2095,10 +2109,14 @@ Position MOABMesh::sample(uint64_t* seed, int32_t bin) const { moab::EntityHandle tet_ent = get_ent_handle_from_bin(bin); // Get vertex coordinates for MOAB tet - vector conn1; - moab::ErrorCode rval = mbi_->get_connectivity(&tet_ent, 1, conn1); - if (rval != moab::MB_SUCCESS) { - fatal_error("Failed to get tet connectivity"); + std::array conn1; + int conn1_size; + moab::ErrorCode rval = + mbi_->get_connectivity(&tet_ent, 1, conn1.data(), conn1_size); + if (rval != moab::MB_SUCCESS || conn1_size != 4) { + fatal_error(fmt::format( + "Failed to get tet connectivity or connectivity size () is invalid.", + conn1_size)); } moab::CartVect p[4]; rval = mbi_->get_coords(conn1.data(), conn1.size(), p[0].array()); From 4195d1e8ca464aa5435f9376ac70d1ead190d7eb Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Thu, 12 Jan 2023 23:18:25 -0600 Subject: [PATCH 035/120] Restoring blank lines in settings.cpp and source.cpp --- src/settings.cpp | 4 ++++ src/source.cpp | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/src/settings.cpp b/src/settings.cpp index c3ecd46b4..310378517 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -371,6 +371,7 @@ void read_settings_xml(pugi::xml_node root) } } } + if (run_mode == RunMode::EIGENVALUE || run_mode == RunMode::FIXED_SOURCE) { // Read run parameters get_run_parameters(node_mode); @@ -434,6 +435,7 @@ void read_settings_xml(pugi::xml_node root) "the OMP_NUM_THREADS environment variable to set the number of " "threads."); } + // ========================================================================== // EXTERNAL SOURCE @@ -462,6 +464,7 @@ void read_settings_xml(pugi::xml_node root) model::external_sources.push_back(make_unique(node)); } } + // Check if the user has specified to read surface source if (check_for_node(root, "surf_source_read")) { surf_source_read = true; @@ -532,6 +535,7 @@ void read_settings_xml(pugi::xml_node root) std::stod(get_node_value(node_cutoff, "energy_positron")); } } + // Particle trace if (check_for_node(root, "trace")) { auto temp = get_node_array(root, "trace"); diff --git a/src/source.cpp b/src/source.cpp index 2fdcc319f..2cb5632b3 100644 --- a/src/source.cpp +++ b/src/source.cpp @@ -111,6 +111,7 @@ IndependentSource::IndependentSource(pugi::xml_node node) // If no spatial distribution specified, make it a point source space_ = UPtrSpace {new SpatialPoint()}; } + // Determine external source angular distribution if (check_for_node(node, "angle")) { // Get pointer to angular distribution @@ -130,9 +131,11 @@ IndependentSource::IndependentSource(pugi::xml_node node) fatal_error(fmt::format( "Invalid angular distribution for external source: {}", type)); } + } else { angle_ = UPtrAngle {new Isotropic()}; } + // Determine external source energy distribution if (check_for_node(node, "energy")) { pugi::xml_node node_dist = node.child("energy"); @@ -141,6 +144,7 @@ IndependentSource::IndependentSource(pugi::xml_node node) // Default to a Watt spectrum with parameters 0.988 MeV and 2.249 MeV^-1 energy_ = UPtrDist {new Watt(0.988e6, 2.249e-6)}; } + // Determine external source time distribution if (check_for_node(node, "time")) { pugi::xml_node node_dist = node.child("time"); From 55138aa144942816ae5bdd457cbfc5194cefa988 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Thu, 12 Jan 2023 23:49:31 -0600 Subject: [PATCH 036/120] Picking up an additional suggestion from @paulromano Co-authored-by: Paul Romano --- .../regression_tests/unstructured_mesh/source_sampling/test.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test.py b/tests/regression_tests/unstructured_mesh/source_sampling/test.py index facd0cad5..7627a68db 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/test.py +++ b/tests/regression_tests/unstructured_mesh/source_sampling/test.py @@ -36,7 +36,7 @@ def model(): root_cell, _ = regular_mesh.build_cells() - geometry = openmc.Geometry(root=[root_cell]) + geometry = openmc.Geometry([root_cell]) # set boundary conditions of the root cell for surface in root_cell.region.get_surfaces().values(): From 4d06ed5640604dd8a6c65bab16f27308cace684e Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Thu, 12 Jan 2023 23:51:12 -0600 Subject: [PATCH 037/120] Passing mesh memo through to source from_xml method --- openmc/settings.py | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/openmc/settings.py b/openmc/settings.py index b8b1ec2b4..129ae2655 100644 --- a/openmc/settings.py +++ b/openmc/settings.py @@ -978,8 +978,8 @@ class Settings: for source in self.source: root.append(source.to_xml_element()) if isinstance(source.space, MeshSpatial): - path = f"./mesh[@id='{source.space.mesh.id}']" - if root.find(path) is None: + path = f"./mesh[@id='{source.space.mesh.id}']" + if root.find(path) is None: root.append(source.space.mesh.to_xml_element()) def _create_volume_calcs_subelement(self, root): @@ -1326,17 +1326,22 @@ class Settings: threshold = float(get_text(elem, 'threshold')) self.keff_trigger = {'type': trigger, 'threshold': threshold} - def _source_from_xml_element(self, root): + def _source_from_xml_element(self, root, meshes=None): for elem in root.findall('source'): src = Source.from_xml_element(elem) if isinstance(src.space, MeshSpatial): mesh_id = int(get_text(elem, 'mesh')) - path = f"./mesh[@id='{mesh_id}']" - mesh_elem = root.find(path) - if mesh_elem is not None: - src.space.mesh = MeshBase.from_xml_element(mesh_elem) - else: - raise RuntimeError('No mesh was specified for the mesh source') + if mesh_id not in meshes: + path = f"./mesh[@id='{mesh_id}']" + mesh_elem = root.find(path) + if mesh_elem is not None: + mesh = MeshBase.from_xml_element(mesh_elem) + meshes[mesh.id] = mesh + try: + src.space.mesh = meshes[mesh_id] + except KeyError as e: + raise e(f'Mesh with ID {mesh_id} was not found.') + # add newly constructed source object to the list self.source.append(src) def _volume_calcs_from_xml_element(self, root): @@ -1710,7 +1715,7 @@ class Settings: settings._rel_max_lost_particles_from_xml_element(elem) settings._generations_per_batch_from_xml_element(elem) settings._keff_trigger_from_xml_element(elem) - settings._source_from_xml_element(elem) + settings._source_from_xml_element(elem, meshes) settings._volume_calcs_from_xml_element(elem) settings._output_from_xml_element(elem) settings._statepoint_from_xml_element(elem) From 4675ff0231739849f27019afc2e866cce0e83f87 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Thu, 12 Jan 2023 23:52:34 -0600 Subject: [PATCH 038/120] Correcting MOAB call args --- src/mesh.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/mesh.cpp b/src/mesh.cpp index 39b5a225e..ffe239015 100644 --- a/src/mesh.cpp +++ b/src/mesh.cpp @@ -2109,17 +2109,17 @@ Position MOABMesh::sample(uint64_t* seed, int32_t bin) const { moab::EntityHandle tet_ent = get_ent_handle_from_bin(bin); // Get vertex coordinates for MOAB tet - std::array conn1; + const moab::EntityHandle* conn1; int conn1_size; moab::ErrorCode rval = - mbi_->get_connectivity(&tet_ent, 1, conn1.data(), conn1_size); + mbi_->get_connectivity(tet_ent, conn1, conn1_size); if (rval != moab::MB_SUCCESS || conn1_size != 4) { fatal_error(fmt::format( - "Failed to get tet connectivity or connectivity size () is invalid.", + "Failed to get tet connectivity or connectivity size ({}) is invalid.", conn1_size)); } moab::CartVect p[4]; - rval = mbi_->get_coords(conn1.data(), conn1.size(), p[0].array()); + rval = mbi_->get_coords(conn1, conn1_size, p[0].array()); if (rval != moab::MB_SUCCESS) { fatal_error("Failed to get tet coords"); } From 6f0c6f52962cb37f5ec1420c1537f868630297f7 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Thu, 12 Jan 2023 23:52:57 -0600 Subject: [PATCH 039/120] Applying suggestions for tests from @paulromano. --- .../unstructured_mesh/source_sampling/test.py | 8 ++------ tests/unit_tests/test_source_mesh.py | 8 ++------ 2 files changed, 4 insertions(+), 12 deletions(-) diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test.py b/tests/regression_tests/unstructured_mesh/source_sampling/test.py index 7627a68db..35b3be63e 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/test.py +++ b/tests/regression_tests/unstructured_mesh/source_sampling/test.py @@ -21,7 +21,7 @@ def model(): ### Materials ### materials = openmc.Materials() - water_mat = openmc.Material(material_id=3, name="water") + water_mat = openmc.Material(name="water") water_mat.add_nuclide("H1", 2.0) water_mat.add_nuclide("O16", 1.0) water_mat.set_density("atom/b-cm", 0.07416) @@ -34,14 +34,10 @@ def model(): regular_mesh.dimension = (10, 10, 10) regular_mesh.width = (2, 2, 2) - root_cell, _ = regular_mesh.build_cells() + root_cell, _ = regular_mesh.build_cells(bc=['vacuum']*6) geometry = openmc.Geometry([root_cell]) - # set boundary conditions of the root cell - for surface in root_cell.region.get_surfaces().values(): - surface.boundary_type = 'vacuum' - ### Settings ### settings = openmc.Settings() settings.run_mode = 'fixed source' diff --git a/tests/unit_tests/test_source_mesh.py b/tests/unit_tests/test_source_mesh.py index f093d54d6..34f84f450 100644 --- a/tests/unit_tests/test_source_mesh.py +++ b/tests/unit_tests/test_source_mesh.py @@ -23,7 +23,7 @@ def model(): ### Materials ### materials = openmc.Materials() - water_mat = openmc.Material(material_id=3, name="water") + water_mat = openmc.Material(name="water") water_mat.add_nuclide("H1", 2.0) water_mat.add_nuclide("O16", 1.0) water_mat.set_density("atom/b-cm", 0.07416) @@ -39,14 +39,10 @@ def model(): regular_mesh.dimension = (10, 10, 10) regular_mesh.width = (2, 2, 2) - root_cell, _ = regular_mesh.build_cells() + root_cell, _ = regular_mesh.build_cells(bc=['vacuum']*6) geometry = openmc.Geometry(root=[root_cell]) - # set boundary conditions of the root cell - for surface in root_cell.region.get_surfaces().values(): - surface.boundary_type = 'vacuum' - ### Settings ### settings = openmc.Settings() settings.run_mode = 'fixed source' From d0988327fef653bb09b4152640d099206e55f482 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Fri, 13 Jan 2023 00:00:16 -0600 Subject: [PATCH 040/120] Applying formatter --- include/openmc/distribution_spatial.h | 2 +- include/openmc/mesh.h | 19 ++++---- src/distribution_spatial.cpp | 38 ++++++++------- src/initialize.cpp | 22 +++++---- src/mesh.cpp | 66 +++++++++++++++------------ src/settings.cpp | 3 +- src/source.cpp | 2 +- 7 files changed, 86 insertions(+), 66 deletions(-) diff --git a/include/openmc/distribution_spatial.h b/include/openmc/distribution_spatial.h index 939d055ba..78fb316db 100644 --- a/include/openmc/distribution_spatial.h +++ b/include/openmc/distribution_spatial.h @@ -4,8 +4,8 @@ #include "pugixml.hpp" #include "openmc/distribution.h" -#include "openmc/position.h" #include "openmc/mesh.h" +#include "openmc/position.h" namespace openmc { diff --git a/include/openmc/mesh.h b/include/openmc/mesh.h index 73a4f0bb7..7abc8a832 100644 --- a/include/openmc/mesh.h +++ b/include/openmc/mesh.h @@ -7,8 +7,8 @@ #include #include "hdf5.h" -#include "xtensor/xtensor.hpp" #include "pugixml.hpp" +#include "xtensor/xtensor.hpp" #include "openmc/memory.h" // for unique_ptr #include "openmc/particle.h" @@ -41,7 +41,7 @@ namespace openmc { // Constants //============================================================================== -enum class ElementType { UNSUPPORTED=-1, LINEAR_TET, LINEAR_HEX }; +enum class ElementType { UNSUPPORTED = -1, LINEAR_TET, LINEAR_HEX }; //============================================================================== // Global variables @@ -80,7 +80,7 @@ public: //! \param[in] seed Seed to use for random sampling //! \param[in] bin Bin value of the tet sampled //! \return sampled position within tet - virtual Position sample(uint64_t* seed, int32_t bin) const=0; + virtual Position sample(uint64_t* seed, int32_t bin) const = 0; //! Get the volume of a mesh bin // @@ -713,7 +713,7 @@ private: std::pair get_score_tags(std::string score) const; // Data members - moab::Range ehs_; //!< Range of tetrahedra EntityHandle's in the mesh + moab::Range ehs_; //!< Range of tetrahedra EntityHandle's in the mesh moab::Range verts_; //!< Range of vertex EntityHandle's in the mesh moab::EntityHandle tetset_; //!< EntitySet containing all tetrahedra moab::EntityHandle kdtree_root_; //!< Root of the MOAB KDTree @@ -731,8 +731,8 @@ class LibMesh : public UnstructuredMesh { public: // Constructors LibMesh(pugi::xml_node node); - LibMesh(const std::string & filename, double length_multiplier = 1.0); - LibMesh(libMesh::MeshBase & input_mesh, double length_multiplier = 1.0); + LibMesh(const std::string& filename, double length_multiplier = 1.0); + LibMesh(libMesh::MeshBase& input_mesh, double length_multiplier = 1.0); static const std::string mesh_lib_type; @@ -787,8 +787,11 @@ private: int get_bin_from_element(const libMesh::Elem* elem) const; // Data members - unique_ptr unique_m_ = nullptr; //!< pointer to the libMesh MeshBase instance, only used if mesh is created inside OpenMC - libMesh::MeshBase* m_; //!< pointer to libMesh MeshBase instance, always set during intialization + unique_ptr unique_m_ = + nullptr; //!< pointer to the libMesh MeshBase instance, only used if mesh is + //!< created inside OpenMC + libMesh::MeshBase* m_; //!< pointer to libMesh MeshBase instance, always set + //!< during intialization vector> pl_; //!< per-thread point locators unique_ptr diff --git a/src/distribution_spatial.cpp b/src/distribution_spatial.cpp index fbe5ce658..fb1fbf099 100644 --- a/src/distribution_spatial.cpp +++ b/src/distribution_spatial.cpp @@ -1,10 +1,10 @@ #include "openmc/distribution_spatial.h" #include "openmc/error.h" -#include "openmc/random_lcg.h" -#include "openmc/xml_interface.h" #include "openmc/mesh.h" +#include "openmc/random_lcg.h" #include "openmc/search.h" +#include "openmc/xml_interface.h" namespace openmc { @@ -139,7 +139,8 @@ SphericalIndependent::SphericalIndependent(pugi::xml_node node) pugi::xml_node node_dist = node.child("cos_theta"); cos_theta_ = distribution_from_xml(node_dist); } else { - // If no distribution was specified, default to a single point at cos_theta=0 + // If no distribution was specified, default to a single point at + // cos_theta=0 double x[] {0.0}; double p[] {1.0}; cos_theta_ = make_unique(x, p, 1); @@ -188,8 +189,8 @@ Position SphericalIndependent::sample(uint64_t* seed) const MeshSpatial::MeshSpatial(pugi::xml_node node) { - // No in-tet distributions implemented, could include distributions for the barycentric coords - // Read in unstructured mesh from mesh_id value + // No in-tet distributions implemented, could include distributions for the + // barycentric coords Read in unstructured mesh from mesh_id value int32_t mesh_id = std::stoi(get_node_value(node, "mesh_id")); // Get pointer to spatial distribution mesh_idx_ = model::mesh_map.at(mesh_id); @@ -211,7 +212,7 @@ MeshSpatial::MeshSpatial(pugi::xml_node node) int32_t n_bins = this->n_sources(); std::vector strengths(n_bins, 0.0); - mesh_CDF_.resize(n_bins+1); + mesh_CDF_.resize(n_bins + 1); mesh_CDF_[0] = {0.0}; total_strength_ = 0.0; @@ -220,14 +221,14 @@ MeshSpatial::MeshSpatial(pugi::xml_node node) // File scheme is weighted by an array given in the xml file mesh_strengths_ = std::vector(n_bins, 1.0); if (check_for_node(node, "strengths")) { - strengths = get_node_array(node, "strengths"); - if (strengths.size() != n_bins) { - fatal_error( - fmt::format("Number of entries in the source strengths array {} does " - "not match the number of entities in mesh {} ({}).", - strengths.size(), mesh_id, n_bins)); - } - mesh_strengths_ = std::move(strengths); + strengths = get_node_array(node, "strengths"); + if (strengths.size() != n_bins) { + fatal_error( + fmt::format("Number of entries in the source strengths array {} does " + "not match the number of entities in mesh {} ({}).", + strengths.size(), mesh_id, n_bins)); + } + mesh_strengths_ = std::move(strengths); } if (get_node_value_bool(node, "volume_normalized")) { @@ -236,14 +237,17 @@ MeshSpatial::MeshSpatial(pugi::xml_node node) } } - total_strength_ = std::accumulate(mesh_strengths_.begin(), mesh_strengths_.end(), 0.0); + total_strength_ = + std::accumulate(mesh_strengths_.begin(), mesh_strengths_.end(), 0.0); for (int i = 0; i < n_bins; i++) { - mesh_CDF_[i+1] = mesh_CDF_[i] + mesh_strengths_[i]/total_strength_; + mesh_CDF_[i + 1] = mesh_CDF_[i] + mesh_strengths_[i] / total_strength_; } if (fabs(mesh_CDF_.back() - 1.0) > FP_COINCIDENT) { - fatal_error(fmt::format("Mesh sampling CDF is incorrectly formed. Final value is: {}", mesh_CDF_.back())); + fatal_error( + fmt::format("Mesh sampling CDF is incorrectly formed. Final value is: {}", + mesh_CDF_.back())); } mesh_CDF_.back() = 1.0; } diff --git a/src/initialize.cpp b/src/initialize.cpp index 913e0b1a9..6383af64e 100644 --- a/src/initialize.cpp +++ b/src/initialize.cpp @@ -106,7 +106,8 @@ int openmc_init(int argc, char* argv[], const void* intracomm) openmc::openmc_set_seed(DEFAULT_SEED); // Read XML input files - if (!read_model_xml()) read_separate_xml_files(); + if (!read_model_xml()) + read_separate_xml_files(); // Write some initial output under the header if needed initial_output(); @@ -299,7 +300,8 @@ int parse_command_line(int argc, char* argv[]) return 0; } -bool read_model_xml() { +bool read_model_xml() +{ std::string model_filename = settings::path_input.empty() ? "." : settings::path_input; @@ -314,7 +316,8 @@ bool read_model_xml() { model_filename += "/model.xml"; // if this file doesn't exist, stop here - if (!file_exists(model_filename)) return false; + if (!file_exists(model_filename)) + return false; // try to process the path input as an XML file pugi::xml_document doc; @@ -327,7 +330,7 @@ bool read_model_xml() { // Read settings if (!check_for_node(root, "settings")) { - fatal_error("No node present in the model.xml file."); + fatal_error("No node present in the model.xml file."); } auto settings_root = root.child("settings"); @@ -343,13 +346,15 @@ bool read_model_xml() { title(); } - write_message(fmt::format("Reading model XML file '{}' ...", model_filename), 5); + write_message( + fmt::format("Reading model XML file '{}' ...", model_filename), 5); read_settings_xml(settings_root); // If other XML files are present, display warning // that they will be ignored - auto other_inputs = {"materials.xml", "geometry.xml", "settings.xml", "tallies.xml", "plots.xml"}; + auto other_inputs = {"materials.xml", "geometry.xml", "settings.xml", + "tallies.xml", "plots.xml"}; for (const auto& input : other_inputs) { if (file_exists(settings::path_input + input)) { warning((fmt::format("Other XML file input(s) are present. These files " @@ -384,7 +389,7 @@ bool read_model_xml() { if (check_for_node(root, "tallies")) read_tallies_xml(root.child("tallies")); - // Initialize distribcell_filters + // Initialize distribcell_filters prepare_distribcell(); if (check_for_node(root, "plots")) @@ -415,7 +420,8 @@ void read_separate_xml_files() read_plots_xml(); } -void initial_output() { +void initial_output() +{ // write initial output if (settings::run_mode == RunMode::PLOTTING) { // Read plots.xml if it exists diff --git a/src/mesh.cpp b/src/mesh.cpp index ffe239015..121ca1f8a 100644 --- a/src/mesh.cpp +++ b/src/mesh.cpp @@ -207,24 +207,22 @@ Position UnstructuredMesh::sample_tet( // (2000) Generating Random Points in a Tetrahedron, Journal of Graphics // Tools, 5:4, 9-12, DOI: 10.1080/10867651.2000.10487528 if (s + t > 1) { - s = 1.0 - s; - t = 1.0 - t; + s = 1.0 - s; + t = 1.0 - t; } if (s + t + u > 1) { if (t + u > 1) { double old_t = t; t = 1.0 - u; u = 1.0 - s - old_t; - }else if (t + u <= 1) { + } else if (t + u <= 1) { double old_s = s; s = 1.0 - t - u; u = old_s + t + u - 1; } } - return s*(coords[1]-coords[0]) - + t*(coords[2]-coords[0]) - + u*(coords[3]-coords[0]) - + coords[0]; + return s * (coords[1] - coords[0]) + t * (coords[2] - coords[0]) + + u * (coords[3] - coords[0]) + coords[0]; } const std::string UnstructuredMesh::mesh_type = "unstructured"; @@ -268,8 +266,8 @@ void UnstructuredMesh::to_hdf5(hid_t group) const // write element types and connectivity vector volumes; - xt::xtensor connectivity ({static_cast(this->n_bins()), 8}); - xt::xtensor elem_types ({static_cast(this->n_bins()), 1}); + xt::xtensor connectivity({static_cast(this->n_bins()), 8}); + xt::xtensor elem_types({static_cast(this->n_bins()), 1}); for (int i = 0; i < this->n_bins(); i++) { auto conn = this->connectivity(i); @@ -277,17 +275,20 @@ void UnstructuredMesh::to_hdf5(hid_t group) const // write linear tet element if (conn.size() == 4) { - xt::view(elem_types, i, xt::all()) = static_cast(ElementType::LINEAR_TET); - xt::view(connectivity, i, xt::all()) = xt::xarray({conn[0], conn[1], conn[2], conn[3], - -1, -1, -1, -1}); - // write linear hex element + xt::view(elem_types, i, xt::all()) = + static_cast(ElementType::LINEAR_TET); + xt::view(connectivity, i, xt::all()) = + xt::xarray({conn[0], conn[1], conn[2], conn[3], -1, -1, -1, -1}); + // write linear hex element } else if (conn.size() == 8) { - xt::view(elem_types, i, xt::all()) = static_cast(ElementType::LINEAR_HEX); - xt::view(connectivity, i, xt::all()) = xt::xarray({conn[0], conn[1], conn[2], conn[3], - conn[4], conn[5], conn[6], conn[7]}); + xt::view(elem_types, i, xt::all()) = + static_cast(ElementType::LINEAR_HEX); + xt::view(connectivity, i, xt::all()) = xt::xarray({conn[0], conn[1], + conn[2], conn[3], conn[4], conn[5], conn[6], conn[7]}); } else { num_elem_skipped++; - xt::view(elem_types, i, xt::all()) = static_cast(ElementType::UNSUPPORTED); + xt::view(elem_types, i, xt::all()) = + static_cast(ElementType::UNSUPPORTED); xt::view(connectivity, i, xt::all()) = -1; } } @@ -1873,7 +1874,6 @@ void MOABMesh::initialize() fatal_error("Failed to get all vertex handles"); } - // make an entity set for all tetrahedra // this is used for convenience later in output rval = mbi_->create_meshset(moab::MESHSET_SET, tetset_); @@ -2104,15 +2104,15 @@ std::string MOABMesh::library() const } // Sample position within a tet for MOAB type tets -Position MOABMesh::sample(uint64_t* seed, int32_t bin) const { +Position MOABMesh::sample(uint64_t* seed, int32_t bin) const +{ moab::EntityHandle tet_ent = get_ent_handle_from_bin(bin); // Get vertex coordinates for MOAB tet const moab::EntityHandle* conn1; int conn1_size; - moab::ErrorCode rval = - mbi_->get_connectivity(tet_ent, conn1, conn1_size); + moab::ErrorCode rval = mbi_->get_connectivity(tet_ent, conn1, conn1_size); if (rval != moab::MB_SUCCESS || conn1_size != 4) { fatal_error(fmt::format( "Failed to get tet connectivity or connectivity size ({}) is invalid.", @@ -2132,7 +2132,6 @@ Position MOABMesh::sample(uint64_t* seed, int32_t bin) const { return this->sample_tet(tet_verts, seed); } - double MOABMesh::tet_volume(moab::EntityHandle tet) const { vector conn; @@ -2253,10 +2252,12 @@ std::pair, vector> MOABMesh::plot( return {}; } -int MOABMesh::get_vert_idx_from_handle(moab::EntityHandle vert) const { +int MOABMesh::get_vert_idx_from_handle(moab::EntityHandle vert) const +{ int idx = vert - verts_[0]; if (idx >= n_vertices()) { - fatal_error(fmt::format("Invalid vertex idx {} (# vertices {})", idx, n_vertices())); + fatal_error( + fmt::format("Invalid vertex idx {} (# vertices {})", idx, n_vertices())); } return idx; } @@ -2328,11 +2329,13 @@ Position MOABMesh::centroid(int bin) const return {centroid[0], centroid[1], centroid[2]}; } -int MOABMesh::n_vertices() const { +int MOABMesh::n_vertices() const +{ return verts_.size(); } -Position MOABMesh::vertex(int id) const { +Position MOABMesh::vertex(int id) const +{ moab::ErrorCode rval; @@ -2347,7 +2350,8 @@ Position MOABMesh::vertex(int id) const { return {coords[0], coords[1], coords[2]}; } -std::vector MOABMesh::connectivity(int bin) const { +std::vector MOABMesh::connectivity(int bin) const +{ moab::ErrorCode rval; auto tet = get_ent_handle_from_bin(bin); @@ -2501,14 +2505,15 @@ const std::string LibMesh::mesh_lib_type = "libmesh"; LibMesh::LibMesh(pugi::xml_node node) : UnstructuredMesh(node) { - // filename_ and length_multiplier_ will already be set by the UnstructuredMesh constructor + // filename_ and length_multiplier_ will already be set by the + // UnstructuredMesh constructor set_mesh_pointer_from_filename(filename_); set_length_multiplier(length_multiplier_); initialize(); } // create the mesh from a pointer to a libMesh Mesh -LibMesh::LibMesh(libMesh::MeshBase & input_mesh, double length_multiplier) +LibMesh::LibMesh(libMesh::MeshBase& input_mesh, double length_multiplier) { m_ = &input_mesh; set_length_multiplier(length_multiplier); @@ -2586,7 +2591,8 @@ void LibMesh::initialize() } // Sample position within a tet for LibMesh type tets -Position LibMesh::sample(uint64_t* seed, int32_t bin) const { +Position LibMesh::sample(uint64_t* seed, int32_t bin) const +{ const auto& elem = get_element_from_bin(bin); // Get tet vertex coordinates from LibMesh std::array tet_verts; diff --git a/src/settings.cpp b/src/settings.cpp index 310378517..1eceb5b3d 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -214,7 +214,8 @@ void get_run_parameters(pugi::xml_node node_base) } } -void read_settings_xml() { +void read_settings_xml() +{ using namespace settings; using namespace pugi; // Check if settings.xml exists diff --git a/src/source.cpp b/src/source.cpp index 2cb5632b3..5862a41e2 100644 --- a/src/source.cpp +++ b/src/source.cpp @@ -94,7 +94,7 @@ IndependentSource::IndependentSource(pugi::xml_node node) space_ = UPtrSpace {new CylindricalIndependent(node_space)}; } else if (type == "spherical") { space_ = UPtrSpace {new SphericalIndependent(node_space)}; - } else if (type =="mesh"){ + } else if (type == "mesh") { space_ = UPtrSpace {new MeshSpatial(node_space)}; } else if (type == "box") { space_ = UPtrSpace {new SpatialBox(node_space)}; From 124839796eeb9e17188423c631a2c672abd0bf39 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Fri, 13 Jan 2023 00:04:22 -0600 Subject: [PATCH 041/120] Updating test inputs for auto-generated material ID. --- .../unstructured_mesh/source_sampling/inputs_true0.dat | 2 +- .../unstructured_mesh/source_sampling/inputs_true1.dat | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat index dcb56d403..e50fc71ac 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat +++ b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat @@ -1125,7 +1125,7 @@ - + diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat index 9e22063f1..b416ffb34 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat +++ b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat @@ -1125,7 +1125,7 @@ - + From f92515d6f2152b4a04e75c911a03abcd23ffb598 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Fri, 13 Jan 2023 08:45:48 -0600 Subject: [PATCH 042/120] Correcting sampling unit test --- tests/unit_tests/test_source_mesh.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/unit_tests/test_source_mesh.py b/tests/unit_tests/test_source_mesh.py index 34f84f450..d50e85e3f 100644 --- a/tests/unit_tests/test_source_mesh.py +++ b/tests/unit_tests/test_source_mesh.py @@ -139,6 +139,6 @@ def test_unstructured_mesh_sampling(model, request, test_cases): exp_vals = strengths.reshape(-1, 12).sum(axis=1) / sum(strengths) diff = np.abs(mean - exp_vals) - assert((diff < 2*std_dev).sum() / diff[:10].size >= 0.95) - assert((diff < 6*std_dev).sum() / diff.size >= 0.97) + assert((diff < 2*std_dev).sum() / diff.size >= 0.95) + assert((diff < 6*std_dev).sum() / diff.size >= 0.997) From ff9b5fd74141b0f24676136f5ebec7a69f347ac1 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Fri, 13 Jan 2023 10:24:05 -0600 Subject: [PATCH 043/120] Adding not about moving the mesh cdf in the future. --- include/openmc/distribution_spatial.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/openmc/distribution_spatial.h b/include/openmc/distribution_spatial.h index 78fb316db..8840b0539 100644 --- a/include/openmc/distribution_spatial.h +++ b/include/openmc/distribution_spatial.h @@ -115,6 +115,8 @@ public: private: int32_t mesh_idx_ {C_NONE}; double total_strength_ {0.0}; + // TODO: move to an independent class in the future that's similar + // to a discrete distribution without outcomes std::vector mesh_CDF_; std::vector mesh_strengths_; }; From 9313f809a471f4b7050057f1179e42252089cb22 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Fri, 13 Jan 2023 10:34:30 -0600 Subject: [PATCH 044/120] Adding a tally to the unstructured mesh regression test. --- .../source_sampling/inputs_true0.dat | 15 + .../source_sampling/inputs_true1.dat | 15 + .../source_sampling/results_true.dat | 2001 +++++++++++++++++ .../unstructured_mesh/source_sampling/test.py | 11 +- 4 files changed, 2041 insertions(+), 1 deletion(-) diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat index e50fc71ac..986d80054 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat +++ b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat @@ -1148,3 +1148,18 @@ test_mesh_tets.e + + + + 10 10 10 + -10 -10 -10 + 2 2 2 + + + 10 + + + 1 + flux + + diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat index b416ffb34..38d5aa497 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat +++ b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat @@ -1148,3 +1148,18 @@ test_mesh_tets.e + + + + 10 10 10 + -10 -10 -10 + 2 2 2 + + + 10 + + + 1 + flux + + diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/results_true.dat b/tests/regression_tests/unstructured_mesh/source_sampling/results_true.dat index e69de29bb..2a4e11d06 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/results_true.dat +++ b/tests/regression_tests/unstructured_mesh/source_sampling/results_true.dat @@ -0,0 +1,2001 @@ +tally 1: +1.593417E+00 +1.270534E+00 +6.435684E-01 +2.112550E-01 +1.658901E-01 +1.600397E-02 +1.283617E-02 +8.238393E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +3.437438E-01 +5.945848E-02 +1.616140E-01 +1.856954E-02 +1.615653E-01 +1.561656E-02 +4.938536E-02 +1.239963E-03 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.113048E-01 +6.215464E-03 +4.271852E-02 +1.824872E-03 +1.761175E-02 +1.760674E-04 +1.205084E-01 +1.054273E-02 +6.127572E-02 +1.996189E-03 +1.652343E-02 +2.730237E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.960809E-02 +6.146617E-04 +4.470296E-02 +1.998355E-03 +6.648900E-03 +4.420787E-05 +2.239550E-02 +4.238383E-04 +6.025002E-02 +3.246093E-03 +4.429460E-02 +1.476567E-03 +2.292967E-02 +5.257698E-04 +1.155621E-02 +1.335461E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.006629E-02 +4.026559E-04 +1.373329E-02 +1.886032E-04 +2.885571E-02 +8.326518E-04 +0.000000E+00 +0.000000E+00 +8.681819E-03 +7.269326E-05 +1.729655E-02 +2.991705E-04 +0.000000E+00 +0.000000E+00 +1.137346E-02 +1.293555E-04 +2.292967E-02 +5.257698E-04 +6.588997E-03 +4.341488E-05 +8.403494E-03 +7.061872E-05 +0.000000E+00 +0.000000E+00 +4.258899E-02 +1.813822E-03 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.770928E-03 +7.678044E-06 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.634067E-02 +2.670176E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.316088E-02 +5.364264E-04 +1.942811E-02 +3.774516E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.932682E-02 +3.735258E-04 +2.326218E-02 +5.411290E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +3.203632E-02 +1.026326E-03 +1.055267E-02 +1.113588E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.093434E-02 +4.382464E-04 +2.165466E-02 +4.689242E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +3.733898E-01 +7.002510E-02 +2.309913E-01 +2.966987E-02 +1.527013E-01 +1.167932E-02 +8.319432E-02 +3.486622E-03 +5.053980E-02 +1.792018E-03 +4.025393E-02 +1.620379E-03 +1.411059E-02 +1.991089E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.005911E-01 +2.480369E-02 +1.606208E-01 +1.414104E-02 +2.700608E-02 +6.633840E-04 +6.338189E-02 +2.821858E-03 +2.966171E-02 +8.798173E-04 +2.082516E-02 +4.336873E-04 +2.082516E-02 +4.336873E-04 +4.992758E-03 +2.492763E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +6.481143E-02 +2.319748E-03 +4.078821E-02 +8.322204E-04 +5.300165E-02 +2.052940E-03 +1.632808E-02 +2.666061E-04 +5.095870E-03 +2.596789E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +3.759583E-02 +7.105825E-04 +8.335504E-03 +6.948063E-05 +0.000000E+00 +0.000000E+00 +2.834069E-02 +8.031945E-04 +2.788621E-02 +7.776405E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.122608E-02 +4.505464E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.480612E-02 +5.637391E-04 +2.562242E-02 +6.565086E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.122608E-02 +4.505464E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.155726E-02 +1.335702E-04 +2.713223E-02 +3.711933E-04 +1.066759E-02 +1.137975E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.938184E-02 +3.756556E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.387549E-02 +5.700390E-04 +2.178250E-02 +4.744771E-04 +4.038634E-03 +1.631057E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.614637E-03 +6.836328E-06 +2.126085E-02 +4.520238E-04 +2.582113E-02 +6.667308E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.524705E-02 +2.324725E-04 +2.590321E-03 +6.709765E-06 +2.323081E-02 +5.396705E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +9.219277E-03 +8.499508E-05 +1.660185E-02 +2.756215E-04 +2.063044E-02 +2.178208E-04 +1.117596E-01 +6.818370E-03 +4.897447E-02 +2.398498E-03 +1.499157E-02 +2.055896E-04 +2.464135E-03 +6.071962E-06 +0.000000E+00 +0.000000E+00 +6.772930E-03 +4.587259E-05 +2.037464E-02 +4.151259E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +9.580972E-02 +5.237084E-03 +5.810675E-02 +1.810352E-03 +3.382651E-02 +9.872507E-04 +3.231698E-02 +5.261563E-04 +4.236960E-02 +1.686234E-03 +2.526663E-02 +6.384027E-04 +0.000000E+00 +0.000000E+00 +1.634129E-02 +2.509239E-04 +4.170868E-02 +8.698088E-04 +2.977611E-02 +5.151998E-04 +5.717053E-02 +3.268469E-03 +6.132386E-02 +2.510165E-03 +9.358069E-02 +5.433557E-03 +1.609396E-02 +2.590155E-04 +4.065491E-02 +8.691452E-04 +2.041493E-02 +3.815802E-04 +2.283520E-02 +5.214466E-04 +8.540726E-03 +7.294400E-05 +0.000000E+00 +0.000000E+00 +1.193257E-02 +1.423862E-04 +6.562332E-03 +2.259782E-05 +5.029737E-02 +1.266099E-03 +2.948965E-02 +5.111548E-04 +3.472063E-02 +6.621828E-04 +5.350398E-04 +2.862676E-07 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +4.415816E-02 +9.758404E-04 +1.866923E-02 +3.356958E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.812608E-02 +7.910764E-04 +1.925567E-03 +3.707808E-06 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +3.822746E-02 +7.413062E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +3.275168E-02 +1.072673E-03 +2.157887E-02 +4.656475E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +9.472410E-03 +8.972655E-05 +1.844240E-03 +3.401222E-06 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.374014E-02 +1.887915E-04 +1.325496E-02 +1.756940E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.122608E-02 +4.505464E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.963906E-02 +3.856926E-04 +5.151301E-03 +2.653590E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.168075E-02 +1.364400E-04 +9.545323E-03 +9.111320E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.300459E-03 +5.292110E-06 +6.327981E-03 +4.004335E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.122608E-02 +4.505464E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.387549E-02 +5.700390E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +3.627290E-02 +7.956933E-04 +4.792259E-02 +1.364038E-03 +3.499583E-02 +1.224708E-03 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +6.163818E-02 +2.060150E-03 +4.159379E-02 +8.685600E-04 +4.253859E-03 +1.615120E-05 +6.757111E-03 +4.565855E-05 +1.814466E-02 +3.292288E-04 +7.449618E-03 +5.549681E-05 +2.539823E-02 +6.450699E-04 +1.274061E-03 +1.623232E-06 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +4.668842E-02 +2.179809E-03 +4.556030E-02 +1.050861E-03 +2.476208E-02 +3.198567E-04 +3.207245E-02 +6.091098E-04 +0.000000E+00 +0.000000E+00 +3.802341E-02 +7.237092E-04 +0.000000E+00 +0.000000E+00 +5.283494E-03 +2.791531E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +9.304278E-03 +8.656959E-05 +5.627276E-02 +3.166624E-03 +4.848590E-03 +2.350883E-05 +4.296135E-02 +1.194861E-03 +2.282442E-02 +5.209543E-04 +1.239555E-02 +7.727435E-05 +3.153349E-02 +4.984208E-04 +9.010984E-03 +8.119784E-05 +2.283520E-02 +5.214466E-04 +2.033042E-02 +4.133258E-04 +0.000000E+00 +0.000000E+00 +3.003110E-02 +5.010297E-04 +1.944727E-02 +2.544423E-04 +2.144284E-02 +2.308237E-04 +4.003007E-02 +8.079146E-04 +1.048308E-02 +1.098949E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.504789E-03 +6.273966E-06 +5.930696E-03 +3.517315E-05 +2.241816E-02 +5.025737E-04 +1.134177E-02 +1.286358E-04 +5.854880E-03 +3.427961E-05 +7.824866E-03 +6.122854E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +3.468575E-02 +6.597708E-04 +1.840323E-02 +3.386789E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.741205E-02 +7.514206E-04 +2.354781E-03 +5.544993E-06 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +3.484796E-02 +6.391249E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.748226E-02 +7.552746E-04 +4.489315E-03 +2.015395E-05 +0.000000E+00 +0.000000E+00 +2.141990E-02 +4.588121E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.692746E-02 +7.250880E-04 +8.874956E-04 +7.876485E-07 +1.536058E-03 +2.359473E-06 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.671029E-02 +7.134394E-04 +0.000000E+00 +0.000000E+00 +1.051597E-03 +1.105856E-06 +6.452999E-02 +2.238885E-03 +5.295854E-03 +2.804607E-05 +2.738601E-02 +7.499937E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.967339E-02 +3.313781E-04 +0.000000E+00 +0.000000E+00 +4.584765E-02 +1.051619E-03 +0.000000E+00 +0.000000E+00 +2.030458E-02 +4.122759E-04 +4.597195E-03 +2.113420E-05 +0.000000E+00 +0.000000E+00 +2.412417E-02 +5.819754E-04 +9.997740E-03 +9.995481E-05 +0.000000E+00 +0.000000E+00 +2.601738E-02 +5.109608E-04 +1.133629E-02 +1.285116E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.372903E-02 +5.630669E-04 +4.193295E-02 +1.142818E-03 +4.507083E-03 +2.031379E-05 +3.307050E-02 +5.598584E-04 +3.159351E-02 +4.990749E-04 +0.000000E+00 +0.000000E+00 +2.378321E-02 +2.922266E-04 +1.586381E-02 +1.878945E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +3.377890E-03 +1.141014E-05 +4.122238E-02 +1.699285E-03 +0.000000E+00 +0.000000E+00 +2.161783E-02 +3.365314E-04 +1.827596E-02 +3.340106E-04 +0.000000E+00 +0.000000E+00 +3.637583E-02 +7.202075E-04 +5.929600E-03 +3.516015E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.349882E-02 +2.794124E-04 +1.991652E-02 +3.966678E-04 +3.690232E-03 +1.361781E-05 +3.480244E-02 +6.232648E-04 +1.973558E-02 +3.894929E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +4.014926E-03 +1.611963E-05 +2.233296E-02 +4.987612E-04 +1.655835E-02 +2.741789E-04 +0.000000E+00 +0.000000E+00 +1.298923E-02 +1.687200E-04 +1.225490E-02 +9.257926E-05 +2.969123E-03 +8.815691E-06 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +9.310198E-03 +8.667980E-05 +2.241816E-02 +5.025737E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.273826E-02 +5.170283E-04 +1.848781E-02 +3.417992E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.616298E-02 +6.845017E-04 +2.783995E-03 +7.750628E-06 +2.993240E-02 +4.963407E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.705304E-02 +7.318672E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +3.103212E-02 +8.737693E-04 +3.454947E-02 +6.395950E-04 +1.476239E-03 +2.179280E-06 +2.631350E-02 +6.924005E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +3.813296E-02 +7.488786E-04 +1.150146E-03 +1.322835E-06 +0.000000E+00 +0.000000E+00 +8.473361E-03 +7.179785E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +4.985404E-03 +2.485425E-05 +0.000000E+00 +0.000000E+00 +2.293169E-02 +4.790237E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +6.564545E-03 +4.309325E-05 +0.000000E+00 +0.000000E+00 +1.642841E-02 +2.698927E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.041508E-02 +1.084739E-04 +1.872142E-02 +3.504915E-04 +4.201836E-03 +1.765542E-05 +0.000000E+00 +0.000000E+00 +2.494768E-02 +6.223869E-04 +0.000000E+00 +0.000000E+00 +2.630088E-04 +6.917362E-08 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.952720E-02 +3.813114E-04 +2.582846E-02 +6.671093E-04 +8.222055E-03 +6.162640E-05 +0.000000E+00 +0.000000E+00 +4.111592E-02 +9.592563E-04 +2.156382E-02 +4.178815E-04 +0.000000E+00 +0.000000E+00 +3.077065E-03 +9.468328E-06 +3.174197E-02 +5.438564E-04 +6.451599E-03 +4.162314E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +3.989772E-02 +1.591828E-03 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.115799E-02 +4.476606E-04 +9.599575E-03 +9.215184E-05 +0.000000E+00 +0.000000E+00 +1.764513E-02 +3.113507E-04 +2.303668E-02 +2.914406E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +8.920843E-03 +5.145277E-05 +1.628053E-02 +2.650555E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.267840E-02 +2.956815E-04 +2.131581E-02 +4.543639E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.437863E-02 +5.943177E-04 +1.244256E-03 +1.548174E-06 +2.452714E-02 +6.015808E-04 +0.000000E+00 +0.000000E+00 +1.446335E-02 +2.091885E-04 +1.456619E-02 +1.211898E-04 +2.427522E-02 +5.892863E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +3.930343E-03 +1.544760E-05 +8.945522E-03 +8.002236E-05 +0.000000E+00 +0.000000E+00 +1.490420E-03 +2.221351E-06 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.268970E-02 +1.610285E-04 +2.241816E-02 +5.025737E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.027115E-02 +4.109196E-04 +3.849791E-02 +7.551064E-04 +6.812524E-03 +4.641048E-05 +2.548748E-03 +6.496114E-06 +2.524100E-02 +6.371078E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.909784E-03 +8.466841E-06 +1.945952E-02 +3.786728E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.186038E-02 +4.778760E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.347835E-02 +5.512330E-04 +0.000000E+00 +0.000000E+00 +8.950272E-03 +8.010737E-05 +1.595150E-02 +2.544504E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +6.676807E-03 +4.457975E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.770795E-02 +3.135715E-04 +6.969937E-03 +4.858002E-05 +2.532875E-02 +6.415453E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.087263E-02 +8.225934E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +6.021082E-03 +3.625342E-05 +1.813282E-02 +3.287991E-04 +9.217641E-03 +8.496490E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +3.068594E-02 +5.279156E-04 +2.138418E-02 +4.572831E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.721641E-02 +1.788283E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.472761E-03 +6.114549E-06 +3.329332E-02 +1.108445E-03 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.897689E-02 +3.601223E-04 +5.626331E-03 +3.165561E-05 +0.000000E+00 +0.000000E+00 +8.612011E-03 +7.416673E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.742334E-02 +3.035727E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.049796E-02 +2.263917E-04 +4.544831E-03 +2.065549E-05 +1.424894E-05 +2.030322E-10 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.543311E-02 +2.381809E-04 +0.000000E+00 +0.000000E+00 +2.428098E-02 +5.895660E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.593748E-02 +2.540032E-04 +1.595037E-02 +2.544142E-04 +2.880580E-02 +8.297742E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.993671E-02 +3.974725E-04 +0.000000E+00 +0.000000E+00 +1.219389E-02 +1.486909E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +9.413656E-04 +8.861691E-07 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.027115E-02 +4.109196E-04 +1.629920E-02 +2.656639E-04 +2.901123E-02 +5.793980E-04 +0.000000E+00 +0.000000E+00 +3.621256E-03 +1.311350E-05 +2.416849E-02 +5.841157E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.236930E-02 +5.003856E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +3.425632E-03 +1.173495E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.206052E-02 +1.454560E-04 +1.141784E-02 +1.303670E-04 +0.000000E+00 +0.000000E+00 +2.249774E-02 +5.061483E-04 +2.404034E-03 +5.779379E-06 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.843474E-02 +3.398398E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +4.407967E-03 +1.943017E-05 +8.822362E-03 +7.783407E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.372903E-02 +5.630669E-04 +0.000000E+00 +0.000000E+00 +1.451080E-02 +2.105632E-04 +1.209842E-02 +1.463717E-04 +0.000000E+00 +0.000000E+00 +8.128789E-03 +6.607721E-05 +1.699068E-02 +1.455906E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.131766E-02 +1.280895E-04 +9.142882E-03 +8.359228E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.546445E-02 +1.579151E-04 +2.235882E-02 +4.999168E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +3.163445E-02 +1.000739E-03 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.679579E-02 +2.820984E-04 +1.653088E-03 +2.732699E-06 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +7.839123E-03 +6.145185E-05 +1.306490E-02 +1.706917E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.925889E-02 +3.709049E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +4.441919E-03 +1.973064E-05 +0.000000E+00 +0.000000E+00 +1.696490E-03 +2.878077E-06 +1.188102E-02 +1.411586E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.647024E-02 +2.712688E-04 +1.447624E-02 +2.095615E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.027115E-02 +4.109196E-04 +0.000000E+00 +0.000000E+00 +1.220227E-02 +8.388744E-05 +1.513623E-02 +2.291055E-04 +0.000000E+00 +0.000000E+00 +4.693765E-03 +2.203143E-05 +2.309598E-02 +5.334242E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.896430E-03 +3.596447E-06 +1.797193E-02 +3.229902E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +4.165452E-03 +1.735099E-05 +3.978577E-02 +8.171648E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.623932E-03 +6.885018E-06 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.186038E-02 +4.778760E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.227784E-02 +4.963022E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +7.485032E-03 +5.602571E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.532875E-02 +6.415453E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.624400E-02 +2.638675E-04 +0.000000E+00 +0.000000E+00 +2.205166E-02 +4.862755E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.741186E-02 +3.031728E-04 +1.866250E-02 +1.752786E-04 +3.291961E-03 +1.083700E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +3.776803E-03 +1.426424E-05 +9.793825E-03 +9.591902E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +3.534928E-03 +1.249572E-05 +2.004150E-02 +4.016618E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.138556E-03 +4.573422E-06 +2.536426E-02 +6.433459E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.229453E-02 +1.511554E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.438471E-02 +5.946143E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.320156E-03 +5.383124E-06 +2.309308E-02 +5.332904E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.027115E-02 +4.109196E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.335984E-02 +5.456821E-04 +5.005121E-05 +2.505124E-09 +0.000000E+00 +0.000000E+00 +5.766274E-03 +3.324992E-05 +2.202347E-02 +4.850332E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.190054E-02 +4.796338E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.664785E-02 +5.186916E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +5.560194E-03 +3.091576E-05 +5.012432E-03 +2.512448E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +4.078818E-03 +1.663676E-05 +1.512098E-02 +2.286441E-04 +0.000000E+00 +0.000000E+00 +1.114343E-02 +1.241761E-04 +1.375834E-02 +1.892919E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.128775E-02 +1.274133E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.512973E-03 +2.289086E-06 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.099115E-02 +4.406282E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.181004E-02 +1.394771E-04 +1.200573E-02 +1.441375E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.737885E-03 +7.496015E-06 +0.000000E+00 +0.000000E+00 +2.582846E-02 +6.671093E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.669493E-02 +7.126192E-04 +1.193971E-02 +9.099511E-05 +9.937766E-03 +9.875918E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.044477E-02 +1.090932E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.437034E-02 +2.065067E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +2.337119E-02 +5.462125E-04 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +6.140183E-03 +3.770184E-05 diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test.py b/tests/regression_tests/unstructured_mesh/source_sampling/test.py index 35b3be63e..d6f16315a 100644 --- a/tests/regression_tests/unstructured_mesh/source_sampling/test.py +++ b/tests/regression_tests/unstructured_mesh/source_sampling/test.py @@ -38,6 +38,14 @@ def model(): geometry = openmc.Geometry([root_cell]) + ### Tallies ### + + # create a mesh flux tally + tally = openmc.Tally() + tally.filters.append(openmc.MeshFilter(regular_mesh)) + tally.scores = ['flux'] + tallies = openmc.Tallies([tally]) + ### Settings ### settings = openmc.Settings() settings.run_mode = 'fixed source' @@ -68,7 +76,8 @@ def model(): settings.source = source return openmc.model.Model(geometry=geometry, materials=materials, - settings=settings) + settings=settings, + tallies=tallies) test_cases = [ From beb3085469581fb7d6954f82f1442c7efcf74518 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Fri, 13 Jan 2023 12:24:24 -0600 Subject: [PATCH 045/120] Changing to const Mesh* --- include/openmc/distribution_spatial.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/openmc/distribution_spatial.h b/include/openmc/distribution_spatial.h index 8840b0539..dda23927e 100644 --- a/include/openmc/distribution_spatial.h +++ b/include/openmc/distribution_spatial.h @@ -108,7 +108,7 @@ public: //! \return Sampled position Position sample(uint64_t* seed) const; - const unique_ptr& mesh() const { return model::meshes.at(mesh_idx_); } + const Mesh* mesh() const { return model::meshes.at(mesh_idx_).get(); } int32_t n_sources() const { return this->mesh()->n_bins(); } From 06e6d5d347fd6e3d0833bc3e3a194940d3edfcb8 Mon Sep 17 00:00:00 2001 From: josh Date: Tue, 17 Jan 2023 02:42:40 +0000 Subject: [PATCH 046/120] add dagmc testing --- tests/unit_tests/test_universe.py | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/tests/unit_tests/test_universe.py b/tests/unit_tests/test_universe.py index 39d1eec21..26b7779a7 100644 --- a/tests/unit_tests/test_universe.py +++ b/tests/unit_tests/test_universe.py @@ -107,11 +107,13 @@ def test_clone(): c2.fill = openmc.Material() c3 = openmc.Cell() u1 = openmc.Universe(name='cool', cells=(c1, c2, c3)) + u1.volume = 1. u2 = u1.clone() assert u2.name == u1.name assert u2.cells != u1.cells assert u2.get_all_materials() != u1.get_all_materials() + assert u2.volume == u1.volume u2 = u1.clone(clone_materials=False) assert u2.get_all_materials() == u1.get_all_materials() @@ -120,14 +122,33 @@ def test_clone(): assert next(iter(u3.cells.values())).region ==\ next(iter(u1.cells.values())).region - dagmc_u = openmc.DAGMCUniverse(filename="") + # Change attributes, make sure clone stays intact + u1.volume = 2. + u1.name = "different name" + assert u3.volume != u1.volume + assert u3.name != u1.name + + # Test cloning a DAGMC universe + dagmc_u = openmc.DAGMCUniverse(filename="", name="DAGMC universe") + dagmc_u.volume = 1. dagmc_u.auto_geom_ids = True dagmc_u.auto_mat_ids = True dagmc_u1 = dagmc_u.clone() assert dagmc_u1.name == dagmc_u.name + assert dagmc_u1.volume == dagmc_u.volume assert dagmc_u1.auto_geom_ids == dagmc_u.auto_geom_ids assert dagmc_u1.auto_mat_ids == dagmc_u.auto_mat_ids + # Change attributes, check the clone remained intact + dagmc_u.name = "another name" + dagmc_u.auto_geom_ids = False + dagmc_u.auto_mat_ids = False + dagmc_u.volume = 2. + assert dagmc_u1.name != dagmc_u.name + assert dagmc_u1.volume != dagmc_u.volume + assert dagmc_u1.auto_geom_ids != dagmc_u.auto_geom_ids + assert dagmc_u1.auto_mat_ids != dagmc_u.auto_mat_ids + def test_create_xml(cell_with_lattice): cells = [openmc.Cell() for i in range(5)] From 3d6179fa32a1b07d2fc860158c77bb550da0ee73 Mon Sep 17 00:00:00 2001 From: josh Date: Tue, 17 Jan 2023 02:43:02 +0000 Subject: [PATCH 047/120] remove try/except for class-specific 'deepcopy' --- openmc/universe.py | 34 ++++++++++++++++++++++++++-------- 1 file changed, 26 insertions(+), 8 deletions(-) diff --git a/openmc/universe.py b/openmc/universe.py index 15bea0ba9..8babddfeb 100644 --- a/openmc/universe.py +++ b/openmc/universe.py @@ -1,6 +1,7 @@ from abc import ABC, abstractmethod from collections import OrderedDict from collections.abc import Iterable +from copy import deepcopy from numbers import Integral, Real from pathlib import Path from tempfile import TemporaryDirectory @@ -110,6 +111,12 @@ class UniverseBase(ABC, IDManagerMixin): """ + def _deepcopy_universe_for_clone(self): + """Deepcopy an openmc.UniverseBase object. This is a paceholder for any future classes inherited from this one. + This should only to be used within the openmc.UniverseBase.clone() context. + """ + return deepcopy(self) + def clone(self, clone_materials=True, clone_regions=True, memo=None): """Create a copy of this universe with a new unique ID, and clones all cells within this universe. @@ -137,14 +144,7 @@ class UniverseBase(ABC, IDManagerMixin): # If no memoize'd clone exists, instantiate one if self not in memo: - clone = openmc.Universe(name=self.name) - clone.volume = self.volume - # Try to set DAGMCUniverse-specific attributes on the clone - try: - clone.auto_geom_ids = self.auto_geom_ids - clone.auto_mat_ids = self.auto_mat_ids - except AttributeError: - pass + clone = self._deepcopy_universe_for_clone() # Clone all cells for the universe clone clone._cells = OrderedDict() @@ -616,6 +616,14 @@ class Universe(UniverseBase): if not instances_only: cell._paths.append(cell_path) + def _deepcopy_universe_for_clone(self): + """Clone all of the openmc.Universe object's attributes except for its cells, as they will be handled within the clone function. + This should only to be used within the openmc.UniverseBase.clone() context and is more performant than a deepcopy. + """ + clone = openmc.Universe(name=self.name) + clone.volume = self.volume + return clone + class DAGMCUniverse(UniverseBase): """A reference to a DAGMC file to be used in the model. @@ -952,3 +960,13 @@ class DAGMCUniverse(UniverseBase): out.auto_mat_ids = bool(elem.get('auto_mat_ids')) return out + + def _deepcopy_universe_for_clone(self): + """Clone all of the openmc.DAGMCUniverse object's attributes except for its cells, as they will be handled within the clone function. + This should only to be used within the openmc.UniverseBase.clone() context and is more performant than a deepcopy. + """ + clone = openmc.DAGMCUniverse(name=self.name, filename=self.filename) + clone.volume = self.volume + clone.auto_geom_ids = self.auto_geom_ids + clone.auto_mat_ids = self.auto_mat_ids + return clone \ No newline at end of file From bbacb383cdddb2e1e6f55a0d078109acf7e48b7e Mon Sep 17 00:00:00 2001 From: Baptiste Mouginot <15145274+bam241@users.noreply.github.com> Date: Wed, 18 Jan 2023 14:04:41 +0100 Subject: [PATCH 048/120] allowing to pass additiinal args to pool.deplete when using user specified maxtrix_func --- openmc/deplete/pool.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/openmc/deplete/pool.py b/openmc/deplete/pool.py index a3d37f79f..40e870daf 100644 --- a/openmc/deplete/pool.py +++ b/openmc/deplete/pool.py @@ -15,7 +15,7 @@ USE_MULTIPROCESSING = True NUM_PROCESSES = None -def deplete(func, chain, x, rates, dt, matrix_func=None): +def deplete(func, chain, x, rates, dt, matrix_func=None, **func_args): """Deplete materials using given reaction rates for a specified time Parameters @@ -37,6 +37,8 @@ def deplete(func, chain, x, rates, dt, matrix_func=None): ``fission_yields = {parent: {product: yield_frac}}`` Expected to return the depletion matrix required by ``func`` + func_args : dict + Remaining keyword arguments passed to the matrix_func Returns ------- @@ -57,7 +59,8 @@ def deplete(func, chain, x, rates, dt, matrix_func=None): if matrix_func is None: matrices = map(chain.form_matrix, rates, fission_yields) else: - matrices = map(matrix_func, repeat(chain), rates, fission_yields) + matrices = map(matrix_func, repeat(chain), rates, fission_yields, + **func_args) inputs = zip(matrices, x, repeat(dt)) From dcfac1d10e0b40dfc17079037d81da7298a01d59 Mon Sep 17 00:00:00 2001 From: Baptiste Mouginot <15145274+bam241@users.noreply.github.com> Date: Wed, 18 Jan 2023 14:12:00 +0100 Subject: [PATCH 049/120] tweaking comments --- openmc/deplete/pool.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openmc/deplete/pool.py b/openmc/deplete/pool.py index 40e870daf..13acb8bf5 100644 --- a/openmc/deplete/pool.py +++ b/openmc/deplete/pool.py @@ -38,7 +38,7 @@ def deplete(func, chain, x, rates, dt, matrix_func=None, **func_args): Expected to return the depletion matrix required by ``func`` func_args : dict - Remaining keyword arguments passed to the matrix_func + Remaining keyword arguments passed to matrix_func when used Returns ------- From cd7ad7de7a86c6e4996ae8dec1f74ccd17834116 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Wed, 18 Jan 2023 11:10:33 -0600 Subject: [PATCH 050/120] Adding failure check to mesh source unit test. --- tests/unit_tests/test_source_mesh.py | 34 ++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/tests/unit_tests/test_source_mesh.py b/tests/unit_tests/test_source_mesh.py index d50e85e3f..dc4cbf06c 100644 --- a/tests/unit_tests/test_source_mesh.py +++ b/tests/unit_tests/test_source_mesh.py @@ -122,6 +122,8 @@ def test_unstructured_mesh_sampling(model, request, test_cases): # subtract one from index to account for root cell cell_counts[c[0]._index - 1, m] += 1 + # make sure particle transport is successful + openmc.lib.run() openmc.lib.finalize() # normalize cell counts to get sampling frequency per particle @@ -142,3 +144,35 @@ def test_unstructured_mesh_sampling(model, request, test_cases): assert((diff < 2*std_dev).sum() / diff.size >= 0.95) assert((diff < 6*std_dev).sum() / diff.size >= 0.997) + +def test_strengths_size_failure(request, model): + # setup mesh source ### + mesh_filename = Path(request.fspath).parent / "test_mesh_tets.e" + uscd_mesh = openmc.UnstructuredMesh(mesh_filename, 'libmesh') + + # intentionally incorrectly sized to trigger an error + n_cells = len(model.geometry.get_all_cells()) + strengths = np.random.rand(n_cells*TETS_PER_VOXEL) + + # create the spatial distribution based on the mesh + space = openmc.stats.MeshSpatial(uscd_mesh, strengths) + + energy = openmc.stats.Discrete(x=[15.e+06], p=[1.0]) + source = openmc.Source(space=space, energy=energy) + model.settings.source = source + + # skip the test if unstructured mesh is not available + if not openmc.lib._libmesh_enabled(): + if openmc.lib._dagmc_enabled(): + source.space.mesh.library = 'moab' + else: + pytest.skip("Unstructured mesh support unavailable.") + + # make sure that an incorrrectly sized strengths array causes a failure + source.space.strengths = source.space.strengths[:-1] + + mesh_filename = Path(request.fspath).parent / source.space.mesh.filename + + with pytest.raises(RuntimeError, match=r'strengths array'), cdtemp([mesh_filename]): + model.export_to_xml() + openmc.run() \ No newline at end of file From de8f99adbebe4303e102b7a4c6bacde9fcdab525 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Wed, 18 Jan 2023 11:12:10 -0600 Subject: [PATCH 051/120] Removing unstructured mesh source sampling test. The test cases here almost entirely overlapped with those in the unit test. The test for an invalid size on the strengths array has been moved to the test_mesh_source.py unit test. --- .../source_sampling/__init__.py | 0 .../source_sampling/inputs_true0.dat | 1165 ---------- .../source_sampling/inputs_true1.dat | 1165 ---------- .../source_sampling/results_true.dat | 2001 ----------------- .../unstructured_mesh/source_sampling/test.py | 121 - .../source_sampling/test_mesh_tets.e | 1 - 6 files changed, 4453 deletions(-) delete mode 100644 tests/regression_tests/unstructured_mesh/source_sampling/__init__.py delete mode 100644 tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat delete mode 100644 tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat delete mode 100644 tests/regression_tests/unstructured_mesh/source_sampling/results_true.dat delete mode 100644 tests/regression_tests/unstructured_mesh/source_sampling/test.py delete mode 120000 tests/regression_tests/unstructured_mesh/source_sampling/test_mesh_tets.e diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/__init__.py b/tests/regression_tests/unstructured_mesh/source_sampling/__init__.py deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat deleted file mode 100644 index 986d80054..000000000 --- a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true0.dat +++ /dev/null @@ -1,1165 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 2 2 2 - 10 10 10 - -10 -10 -10 - -91 92 93 94 95 96 97 98 99 100 -81 82 83 84 85 86 87 88 89 90 -71 72 73 74 75 76 77 78 79 80 -61 62 63 64 65 66 67 68 69 70 -51 52 53 54 55 56 57 58 59 60 -41 42 43 44 45 46 47 48 49 50 -31 32 33 34 35 36 37 38 39 40 -21 22 23 24 25 26 27 28 29 30 -11 12 13 14 15 16 17 18 19 20 -1 2 3 4 5 6 7 8 9 10 - -191 192 193 194 195 196 197 198 199 200 -181 182 183 184 185 186 187 188 189 190 -171 172 173 174 175 176 177 178 179 180 -161 162 163 164 165 166 167 168 169 170 -151 152 153 154 155 156 157 158 159 160 -141 142 143 144 145 146 147 148 149 150 -131 132 133 134 135 136 137 138 139 140 -121 122 123 124 125 126 127 128 129 130 -111 112 113 114 115 116 117 118 119 120 -101 102 103 104 105 106 107 108 109 110 - -291 292 293 294 295 296 297 298 299 300 -281 282 283 284 285 286 287 288 289 290 -271 272 273 274 275 276 277 278 279 280 -261 262 263 264 265 266 267 268 269 270 -251 252 253 254 255 256 257 258 259 260 -241 242 243 244 245 246 247 248 249 250 -231 232 233 234 235 236 237 238 239 240 -221 222 223 224 225 226 227 228 229 230 -211 212 213 214 215 216 217 218 219 220 -201 202 203 204 205 206 207 208 209 210 - -391 392 393 394 395 396 397 398 399 400 -381 382 383 384 385 386 387 388 389 390 -371 372 373 374 375 376 377 378 379 380 -361 362 363 364 365 366 367 368 369 370 -351 352 353 354 355 356 357 358 359 360 -341 342 343 344 345 346 347 348 349 350 -331 332 333 334 335 336 337 338 339 340 -321 322 323 324 325 326 327 328 329 330 -311 312 313 314 315 316 317 318 319 320 -301 302 303 304 305 306 307 308 309 310 - -491 492 493 494 495 496 497 498 499 500 -481 482 483 484 485 486 487 488 489 490 -471 472 473 474 475 476 477 478 479 480 -461 462 463 464 465 466 467 468 469 470 -451 452 453 454 455 456 457 458 459 460 -441 442 443 444 445 446 447 448 449 450 -431 432 433 434 435 436 437 438 439 440 -421 422 423 424 425 426 427 428 429 430 -411 412 413 414 415 416 417 418 419 420 -401 402 403 404 405 406 407 408 409 410 - -591 592 593 594 595 596 597 598 599 600 -581 582 583 584 585 586 587 588 589 590 -571 572 573 574 575 576 577 578 579 580 -561 562 563 564 565 566 567 568 569 570 -551 552 553 554 555 556 557 558 559 560 -541 542 543 544 545 546 547 548 549 550 -531 532 533 534 535 536 537 538 539 540 -521 522 523 524 525 526 527 528 529 530 -511 512 513 514 515 516 517 518 519 520 -501 502 503 504 505 506 507 508 509 510 - -691 692 693 694 695 696 697 698 699 700 -681 682 683 684 685 686 687 688 689 690 -671 672 673 674 675 676 677 678 679 680 -661 662 663 664 665 666 667 668 669 670 -651 652 653 654 655 656 657 658 659 660 -641 642 643 644 645 646 647 648 649 650 -631 632 633 634 635 636 637 638 639 640 -621 622 623 624 625 626 627 628 629 630 -611 612 613 614 615 616 617 618 619 620 -601 602 603 604 605 606 607 608 609 610 - -791 792 793 794 795 796 797 798 799 800 -781 782 783 784 785 786 787 788 789 790 -771 772 773 774 775 776 777 778 779 780 -761 762 763 764 765 766 767 768 769 770 -751 752 753 754 755 756 757 758 759 760 -741 742 743 744 745 746 747 748 749 750 -731 732 733 734 735 736 737 738 739 740 -721 722 723 724 725 726 727 728 729 730 -711 712 713 714 715 716 717 718 719 720 -701 702 703 704 705 706 707 708 709 710 - -891 892 893 894 895 896 897 898 899 900 -881 882 883 884 885 886 887 888 889 890 -871 872 873 874 875 876 877 878 879 880 -861 862 863 864 865 866 867 868 869 870 -851 852 853 854 855 856 857 858 859 860 -841 842 843 844 845 846 847 848 849 850 -831 832 833 834 835 836 837 838 839 840 -821 822 823 824 825 826 827 828 829 830 -811 812 813 814 815 816 817 818 819 820 -801 802 803 804 805 806 807 808 809 810 - -991 992 993 994 995 996 997 998 999 1000 -981 982 983 984 985 986 987 988 989 990 -971 972 973 974 975 976 977 978 979 980 -961 962 963 964 965 966 967 968 969 970 -951 952 953 954 955 956 957 958 959 960 -941 942 943 944 945 946 947 948 949 950 -931 932 933 934 935 936 937 938 939 940 -921 922 923 924 925 926 927 928 929 930 -911 912 913 914 915 916 917 918 919 920 -901 902 903 904 905 906 907 908 909 910 - - - - - - - - - - - - - - - - - - - fixed source - 100 - 2 - - - 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 - - - 15000000.0 1.0 - - - - test_mesh_tets.e - - - - - - 10 10 10 - -10 -10 -10 - 2 2 2 - - - 10 - - - 1 - flux - - diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat b/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat deleted file mode 100644 index 38d5aa497..000000000 --- a/tests/regression_tests/unstructured_mesh/source_sampling/inputs_true1.dat +++ /dev/null @@ -1,1165 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 2 2 2 - 10 10 10 - -10 -10 -10 - -91 92 93 94 95 96 97 98 99 100 -81 82 83 84 85 86 87 88 89 90 -71 72 73 74 75 76 77 78 79 80 -61 62 63 64 65 66 67 68 69 70 -51 52 53 54 55 56 57 58 59 60 -41 42 43 44 45 46 47 48 49 50 -31 32 33 34 35 36 37 38 39 40 -21 22 23 24 25 26 27 28 29 30 -11 12 13 14 15 16 17 18 19 20 -1 2 3 4 5 6 7 8 9 10 - -191 192 193 194 195 196 197 198 199 200 -181 182 183 184 185 186 187 188 189 190 -171 172 173 174 175 176 177 178 179 180 -161 162 163 164 165 166 167 168 169 170 -151 152 153 154 155 156 157 158 159 160 -141 142 143 144 145 146 147 148 149 150 -131 132 133 134 135 136 137 138 139 140 -121 122 123 124 125 126 127 128 129 130 -111 112 113 114 115 116 117 118 119 120 -101 102 103 104 105 106 107 108 109 110 - -291 292 293 294 295 296 297 298 299 300 -281 282 283 284 285 286 287 288 289 290 -271 272 273 274 275 276 277 278 279 280 -261 262 263 264 265 266 267 268 269 270 -251 252 253 254 255 256 257 258 259 260 -241 242 243 244 245 246 247 248 249 250 -231 232 233 234 235 236 237 238 239 240 -221 222 223 224 225 226 227 228 229 230 -211 212 213 214 215 216 217 218 219 220 -201 202 203 204 205 206 207 208 209 210 - -391 392 393 394 395 396 397 398 399 400 -381 382 383 384 385 386 387 388 389 390 -371 372 373 374 375 376 377 378 379 380 -361 362 363 364 365 366 367 368 369 370 -351 352 353 354 355 356 357 358 359 360 -341 342 343 344 345 346 347 348 349 350 -331 332 333 334 335 336 337 338 339 340 -321 322 323 324 325 326 327 328 329 330 -311 312 313 314 315 316 317 318 319 320 -301 302 303 304 305 306 307 308 309 310 - -491 492 493 494 495 496 497 498 499 500 -481 482 483 484 485 486 487 488 489 490 -471 472 473 474 475 476 477 478 479 480 -461 462 463 464 465 466 467 468 469 470 -451 452 453 454 455 456 457 458 459 460 -441 442 443 444 445 446 447 448 449 450 -431 432 433 434 435 436 437 438 439 440 -421 422 423 424 425 426 427 428 429 430 -411 412 413 414 415 416 417 418 419 420 -401 402 403 404 405 406 407 408 409 410 - -591 592 593 594 595 596 597 598 599 600 -581 582 583 584 585 586 587 588 589 590 -571 572 573 574 575 576 577 578 579 580 -561 562 563 564 565 566 567 568 569 570 -551 552 553 554 555 556 557 558 559 560 -541 542 543 544 545 546 547 548 549 550 -531 532 533 534 535 536 537 538 539 540 -521 522 523 524 525 526 527 528 529 530 -511 512 513 514 515 516 517 518 519 520 -501 502 503 504 505 506 507 508 509 510 - -691 692 693 694 695 696 697 698 699 700 -681 682 683 684 685 686 687 688 689 690 -671 672 673 674 675 676 677 678 679 680 -661 662 663 664 665 666 667 668 669 670 -651 652 653 654 655 656 657 658 659 660 -641 642 643 644 645 646 647 648 649 650 -631 632 633 634 635 636 637 638 639 640 -621 622 623 624 625 626 627 628 629 630 -611 612 613 614 615 616 617 618 619 620 -601 602 603 604 605 606 607 608 609 610 - -791 792 793 794 795 796 797 798 799 800 -781 782 783 784 785 786 787 788 789 790 -771 772 773 774 775 776 777 778 779 780 -761 762 763 764 765 766 767 768 769 770 -751 752 753 754 755 756 757 758 759 760 -741 742 743 744 745 746 747 748 749 750 -731 732 733 734 735 736 737 738 739 740 -721 722 723 724 725 726 727 728 729 730 -711 712 713 714 715 716 717 718 719 720 -701 702 703 704 705 706 707 708 709 710 - -891 892 893 894 895 896 897 898 899 900 -881 882 883 884 885 886 887 888 889 890 -871 872 873 874 875 876 877 878 879 880 -861 862 863 864 865 866 867 868 869 870 -851 852 853 854 855 856 857 858 859 860 -841 842 843 844 845 846 847 848 849 850 -831 832 833 834 835 836 837 838 839 840 -821 822 823 824 825 826 827 828 829 830 -811 812 813 814 815 816 817 818 819 820 -801 802 803 804 805 806 807 808 809 810 - -991 992 993 994 995 996 997 998 999 1000 -981 982 983 984 985 986 987 988 989 990 -971 972 973 974 975 976 977 978 979 980 -961 962 963 964 965 966 967 968 969 970 -951 952 953 954 955 956 957 958 959 960 -941 942 943 944 945 946 947 948 949 950 -931 932 933 934 935 936 937 938 939 940 -921 922 923 924 925 926 927 928 929 930 -911 912 913 914 915 916 917 918 919 920 -901 902 903 904 905 906 907 908 909 910 - - - - - - - - - - - - - - - - - - - fixed source - 100 - 2 - - - 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 - - - 15000000.0 1.0 - - - - test_mesh_tets.e - - - - - - 10 10 10 - -10 -10 -10 - 2 2 2 - - - 10 - - - 1 - flux - - diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/results_true.dat b/tests/regression_tests/unstructured_mesh/source_sampling/results_true.dat deleted file mode 100644 index 2a4e11d06..000000000 --- a/tests/regression_tests/unstructured_mesh/source_sampling/results_true.dat +++ /dev/null @@ -1,2001 +0,0 @@ -tally 1: -1.593417E+00 -1.270534E+00 -6.435684E-01 -2.112550E-01 -1.658901E-01 -1.600397E-02 -1.283617E-02 -8.238393E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -3.437438E-01 -5.945848E-02 -1.616140E-01 -1.856954E-02 -1.615653E-01 -1.561656E-02 -4.938536E-02 -1.239963E-03 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.113048E-01 -6.215464E-03 -4.271852E-02 -1.824872E-03 -1.761175E-02 -1.760674E-04 -1.205084E-01 -1.054273E-02 -6.127572E-02 -1.996189E-03 -1.652343E-02 -2.730237E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.960809E-02 -6.146617E-04 -4.470296E-02 -1.998355E-03 -6.648900E-03 -4.420787E-05 -2.239550E-02 -4.238383E-04 -6.025002E-02 -3.246093E-03 -4.429460E-02 -1.476567E-03 -2.292967E-02 -5.257698E-04 -1.155621E-02 -1.335461E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.006629E-02 -4.026559E-04 -1.373329E-02 -1.886032E-04 -2.885571E-02 -8.326518E-04 -0.000000E+00 -0.000000E+00 -8.681819E-03 -7.269326E-05 -1.729655E-02 -2.991705E-04 -0.000000E+00 -0.000000E+00 -1.137346E-02 -1.293555E-04 -2.292967E-02 -5.257698E-04 -6.588997E-03 -4.341488E-05 -8.403494E-03 -7.061872E-05 -0.000000E+00 -0.000000E+00 -4.258899E-02 -1.813822E-03 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.770928E-03 -7.678044E-06 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.634067E-02 -2.670176E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.316088E-02 -5.364264E-04 -1.942811E-02 -3.774516E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.932682E-02 -3.735258E-04 -2.326218E-02 -5.411290E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -3.203632E-02 -1.026326E-03 -1.055267E-02 -1.113588E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.093434E-02 -4.382464E-04 -2.165466E-02 -4.689242E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -3.733898E-01 -7.002510E-02 -2.309913E-01 -2.966987E-02 -1.527013E-01 -1.167932E-02 -8.319432E-02 -3.486622E-03 -5.053980E-02 -1.792018E-03 -4.025393E-02 -1.620379E-03 -1.411059E-02 -1.991089E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.005911E-01 -2.480369E-02 -1.606208E-01 -1.414104E-02 -2.700608E-02 -6.633840E-04 -6.338189E-02 -2.821858E-03 -2.966171E-02 -8.798173E-04 -2.082516E-02 -4.336873E-04 -2.082516E-02 -4.336873E-04 -4.992758E-03 -2.492763E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -6.481143E-02 -2.319748E-03 -4.078821E-02 -8.322204E-04 -5.300165E-02 -2.052940E-03 -1.632808E-02 -2.666061E-04 -5.095870E-03 -2.596789E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -3.759583E-02 -7.105825E-04 -8.335504E-03 -6.948063E-05 -0.000000E+00 -0.000000E+00 -2.834069E-02 -8.031945E-04 -2.788621E-02 -7.776405E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.122608E-02 -4.505464E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.480612E-02 -5.637391E-04 -2.562242E-02 -6.565086E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.122608E-02 -4.505464E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.155726E-02 -1.335702E-04 -2.713223E-02 -3.711933E-04 -1.066759E-02 -1.137975E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.938184E-02 -3.756556E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.387549E-02 -5.700390E-04 -2.178250E-02 -4.744771E-04 -4.038634E-03 -1.631057E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.614637E-03 -6.836328E-06 -2.126085E-02 -4.520238E-04 -2.582113E-02 -6.667308E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.524705E-02 -2.324725E-04 -2.590321E-03 -6.709765E-06 -2.323081E-02 -5.396705E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -9.219277E-03 -8.499508E-05 -1.660185E-02 -2.756215E-04 -2.063044E-02 -2.178208E-04 -1.117596E-01 -6.818370E-03 -4.897447E-02 -2.398498E-03 -1.499157E-02 -2.055896E-04 -2.464135E-03 -6.071962E-06 -0.000000E+00 -0.000000E+00 -6.772930E-03 -4.587259E-05 -2.037464E-02 -4.151259E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -9.580972E-02 -5.237084E-03 -5.810675E-02 -1.810352E-03 -3.382651E-02 -9.872507E-04 -3.231698E-02 -5.261563E-04 -4.236960E-02 -1.686234E-03 -2.526663E-02 -6.384027E-04 -0.000000E+00 -0.000000E+00 -1.634129E-02 -2.509239E-04 -4.170868E-02 -8.698088E-04 -2.977611E-02 -5.151998E-04 -5.717053E-02 -3.268469E-03 -6.132386E-02 -2.510165E-03 -9.358069E-02 -5.433557E-03 -1.609396E-02 -2.590155E-04 -4.065491E-02 -8.691452E-04 -2.041493E-02 -3.815802E-04 -2.283520E-02 -5.214466E-04 -8.540726E-03 -7.294400E-05 -0.000000E+00 -0.000000E+00 -1.193257E-02 -1.423862E-04 -6.562332E-03 -2.259782E-05 -5.029737E-02 -1.266099E-03 -2.948965E-02 -5.111548E-04 -3.472063E-02 -6.621828E-04 -5.350398E-04 -2.862676E-07 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -4.415816E-02 -9.758404E-04 -1.866923E-02 -3.356958E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.812608E-02 -7.910764E-04 -1.925567E-03 -3.707808E-06 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -3.822746E-02 -7.413062E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -3.275168E-02 -1.072673E-03 -2.157887E-02 -4.656475E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -9.472410E-03 -8.972655E-05 -1.844240E-03 -3.401222E-06 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.374014E-02 -1.887915E-04 -1.325496E-02 -1.756940E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.122608E-02 -4.505464E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.963906E-02 -3.856926E-04 -5.151301E-03 -2.653590E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.168075E-02 -1.364400E-04 -9.545323E-03 -9.111320E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.300459E-03 -5.292110E-06 -6.327981E-03 -4.004335E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.122608E-02 -4.505464E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.387549E-02 -5.700390E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -3.627290E-02 -7.956933E-04 -4.792259E-02 -1.364038E-03 -3.499583E-02 -1.224708E-03 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -6.163818E-02 -2.060150E-03 -4.159379E-02 -8.685600E-04 -4.253859E-03 -1.615120E-05 -6.757111E-03 -4.565855E-05 -1.814466E-02 -3.292288E-04 -7.449618E-03 -5.549681E-05 -2.539823E-02 -6.450699E-04 -1.274061E-03 -1.623232E-06 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -4.668842E-02 -2.179809E-03 -4.556030E-02 -1.050861E-03 -2.476208E-02 -3.198567E-04 -3.207245E-02 -6.091098E-04 -0.000000E+00 -0.000000E+00 -3.802341E-02 -7.237092E-04 -0.000000E+00 -0.000000E+00 -5.283494E-03 -2.791531E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -9.304278E-03 -8.656959E-05 -5.627276E-02 -3.166624E-03 -4.848590E-03 -2.350883E-05 -4.296135E-02 -1.194861E-03 -2.282442E-02 -5.209543E-04 -1.239555E-02 -7.727435E-05 -3.153349E-02 -4.984208E-04 -9.010984E-03 -8.119784E-05 -2.283520E-02 -5.214466E-04 -2.033042E-02 -4.133258E-04 -0.000000E+00 -0.000000E+00 -3.003110E-02 -5.010297E-04 -1.944727E-02 -2.544423E-04 -2.144284E-02 -2.308237E-04 -4.003007E-02 -8.079146E-04 -1.048308E-02 -1.098949E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.504789E-03 -6.273966E-06 -5.930696E-03 -3.517315E-05 -2.241816E-02 -5.025737E-04 -1.134177E-02 -1.286358E-04 -5.854880E-03 -3.427961E-05 -7.824866E-03 -6.122854E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -3.468575E-02 -6.597708E-04 -1.840323E-02 -3.386789E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.741205E-02 -7.514206E-04 -2.354781E-03 -5.544993E-06 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -3.484796E-02 -6.391249E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.748226E-02 -7.552746E-04 -4.489315E-03 -2.015395E-05 -0.000000E+00 -0.000000E+00 -2.141990E-02 -4.588121E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.692746E-02 -7.250880E-04 -8.874956E-04 -7.876485E-07 -1.536058E-03 -2.359473E-06 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.671029E-02 -7.134394E-04 -0.000000E+00 -0.000000E+00 -1.051597E-03 -1.105856E-06 -6.452999E-02 -2.238885E-03 -5.295854E-03 -2.804607E-05 -2.738601E-02 -7.499937E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.967339E-02 -3.313781E-04 -0.000000E+00 -0.000000E+00 -4.584765E-02 -1.051619E-03 -0.000000E+00 -0.000000E+00 -2.030458E-02 -4.122759E-04 -4.597195E-03 -2.113420E-05 -0.000000E+00 -0.000000E+00 -2.412417E-02 -5.819754E-04 -9.997740E-03 -9.995481E-05 -0.000000E+00 -0.000000E+00 -2.601738E-02 -5.109608E-04 -1.133629E-02 -1.285116E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.372903E-02 -5.630669E-04 -4.193295E-02 -1.142818E-03 -4.507083E-03 -2.031379E-05 -3.307050E-02 -5.598584E-04 -3.159351E-02 -4.990749E-04 -0.000000E+00 -0.000000E+00 -2.378321E-02 -2.922266E-04 -1.586381E-02 -1.878945E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -3.377890E-03 -1.141014E-05 -4.122238E-02 -1.699285E-03 -0.000000E+00 -0.000000E+00 -2.161783E-02 -3.365314E-04 -1.827596E-02 -3.340106E-04 -0.000000E+00 -0.000000E+00 -3.637583E-02 -7.202075E-04 -5.929600E-03 -3.516015E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.349882E-02 -2.794124E-04 -1.991652E-02 -3.966678E-04 -3.690232E-03 -1.361781E-05 -3.480244E-02 -6.232648E-04 -1.973558E-02 -3.894929E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -4.014926E-03 -1.611963E-05 -2.233296E-02 -4.987612E-04 -1.655835E-02 -2.741789E-04 -0.000000E+00 -0.000000E+00 -1.298923E-02 -1.687200E-04 -1.225490E-02 -9.257926E-05 -2.969123E-03 -8.815691E-06 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -9.310198E-03 -8.667980E-05 -2.241816E-02 -5.025737E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.273826E-02 -5.170283E-04 -1.848781E-02 -3.417992E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.616298E-02 -6.845017E-04 -2.783995E-03 -7.750628E-06 -2.993240E-02 -4.963407E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.705304E-02 -7.318672E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -3.103212E-02 -8.737693E-04 -3.454947E-02 -6.395950E-04 -1.476239E-03 -2.179280E-06 -2.631350E-02 -6.924005E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -3.813296E-02 -7.488786E-04 -1.150146E-03 -1.322835E-06 -0.000000E+00 -0.000000E+00 -8.473361E-03 -7.179785E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -4.985404E-03 -2.485425E-05 -0.000000E+00 -0.000000E+00 -2.293169E-02 -4.790237E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -6.564545E-03 -4.309325E-05 -0.000000E+00 -0.000000E+00 -1.642841E-02 -2.698927E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.041508E-02 -1.084739E-04 -1.872142E-02 -3.504915E-04 -4.201836E-03 -1.765542E-05 -0.000000E+00 -0.000000E+00 -2.494768E-02 -6.223869E-04 -0.000000E+00 -0.000000E+00 -2.630088E-04 -6.917362E-08 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.952720E-02 -3.813114E-04 -2.582846E-02 -6.671093E-04 -8.222055E-03 -6.162640E-05 -0.000000E+00 -0.000000E+00 -4.111592E-02 -9.592563E-04 -2.156382E-02 -4.178815E-04 -0.000000E+00 -0.000000E+00 -3.077065E-03 -9.468328E-06 -3.174197E-02 -5.438564E-04 -6.451599E-03 -4.162314E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -3.989772E-02 -1.591828E-03 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.115799E-02 -4.476606E-04 -9.599575E-03 -9.215184E-05 -0.000000E+00 -0.000000E+00 -1.764513E-02 -3.113507E-04 -2.303668E-02 -2.914406E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -8.920843E-03 -5.145277E-05 -1.628053E-02 -2.650555E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.267840E-02 -2.956815E-04 -2.131581E-02 -4.543639E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.437863E-02 -5.943177E-04 -1.244256E-03 -1.548174E-06 -2.452714E-02 -6.015808E-04 -0.000000E+00 -0.000000E+00 -1.446335E-02 -2.091885E-04 -1.456619E-02 -1.211898E-04 -2.427522E-02 -5.892863E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -3.930343E-03 -1.544760E-05 -8.945522E-03 -8.002236E-05 -0.000000E+00 -0.000000E+00 -1.490420E-03 -2.221351E-06 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.268970E-02 -1.610285E-04 -2.241816E-02 -5.025737E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.027115E-02 -4.109196E-04 -3.849791E-02 -7.551064E-04 -6.812524E-03 -4.641048E-05 -2.548748E-03 -6.496114E-06 -2.524100E-02 -6.371078E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.909784E-03 -8.466841E-06 -1.945952E-02 -3.786728E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.186038E-02 -4.778760E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.347835E-02 -5.512330E-04 -0.000000E+00 -0.000000E+00 -8.950272E-03 -8.010737E-05 -1.595150E-02 -2.544504E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -6.676807E-03 -4.457975E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.770795E-02 -3.135715E-04 -6.969937E-03 -4.858002E-05 -2.532875E-02 -6.415453E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.087263E-02 -8.225934E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -6.021082E-03 -3.625342E-05 -1.813282E-02 -3.287991E-04 -9.217641E-03 -8.496490E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -3.068594E-02 -5.279156E-04 -2.138418E-02 -4.572831E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.721641E-02 -1.788283E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.472761E-03 -6.114549E-06 -3.329332E-02 -1.108445E-03 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.897689E-02 -3.601223E-04 -5.626331E-03 -3.165561E-05 -0.000000E+00 -0.000000E+00 -8.612011E-03 -7.416673E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.742334E-02 -3.035727E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.049796E-02 -2.263917E-04 -4.544831E-03 -2.065549E-05 -1.424894E-05 -2.030322E-10 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.543311E-02 -2.381809E-04 -0.000000E+00 -0.000000E+00 -2.428098E-02 -5.895660E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.593748E-02 -2.540032E-04 -1.595037E-02 -2.544142E-04 -2.880580E-02 -8.297742E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.993671E-02 -3.974725E-04 -0.000000E+00 -0.000000E+00 -1.219389E-02 -1.486909E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -9.413656E-04 -8.861691E-07 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.027115E-02 -4.109196E-04 -1.629920E-02 -2.656639E-04 -2.901123E-02 -5.793980E-04 -0.000000E+00 -0.000000E+00 -3.621256E-03 -1.311350E-05 -2.416849E-02 -5.841157E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.236930E-02 -5.003856E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -3.425632E-03 -1.173495E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.206052E-02 -1.454560E-04 -1.141784E-02 -1.303670E-04 -0.000000E+00 -0.000000E+00 -2.249774E-02 -5.061483E-04 -2.404034E-03 -5.779379E-06 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.843474E-02 -3.398398E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -4.407967E-03 -1.943017E-05 -8.822362E-03 -7.783407E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.372903E-02 -5.630669E-04 -0.000000E+00 -0.000000E+00 -1.451080E-02 -2.105632E-04 -1.209842E-02 -1.463717E-04 -0.000000E+00 -0.000000E+00 -8.128789E-03 -6.607721E-05 -1.699068E-02 -1.455906E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.131766E-02 -1.280895E-04 -9.142882E-03 -8.359228E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.546445E-02 -1.579151E-04 -2.235882E-02 -4.999168E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -3.163445E-02 -1.000739E-03 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.679579E-02 -2.820984E-04 -1.653088E-03 -2.732699E-06 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -7.839123E-03 -6.145185E-05 -1.306490E-02 -1.706917E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.925889E-02 -3.709049E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -4.441919E-03 -1.973064E-05 -0.000000E+00 -0.000000E+00 -1.696490E-03 -2.878077E-06 -1.188102E-02 -1.411586E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.647024E-02 -2.712688E-04 -1.447624E-02 -2.095615E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.027115E-02 -4.109196E-04 -0.000000E+00 -0.000000E+00 -1.220227E-02 -8.388744E-05 -1.513623E-02 -2.291055E-04 -0.000000E+00 -0.000000E+00 -4.693765E-03 -2.203143E-05 -2.309598E-02 -5.334242E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.896430E-03 -3.596447E-06 -1.797193E-02 -3.229902E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -4.165452E-03 -1.735099E-05 -3.978577E-02 -8.171648E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.623932E-03 -6.885018E-06 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.186038E-02 -4.778760E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.227784E-02 -4.963022E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -7.485032E-03 -5.602571E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.532875E-02 -6.415453E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.624400E-02 -2.638675E-04 -0.000000E+00 -0.000000E+00 -2.205166E-02 -4.862755E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.741186E-02 -3.031728E-04 -1.866250E-02 -1.752786E-04 -3.291961E-03 -1.083700E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -3.776803E-03 -1.426424E-05 -9.793825E-03 -9.591902E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -3.534928E-03 -1.249572E-05 -2.004150E-02 -4.016618E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.138556E-03 -4.573422E-06 -2.536426E-02 -6.433459E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.229453E-02 -1.511554E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.438471E-02 -5.946143E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.320156E-03 -5.383124E-06 -2.309308E-02 -5.332904E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.027115E-02 -4.109196E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.335984E-02 -5.456821E-04 -5.005121E-05 -2.505124E-09 -0.000000E+00 -0.000000E+00 -5.766274E-03 -3.324992E-05 -2.202347E-02 -4.850332E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.190054E-02 -4.796338E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.664785E-02 -5.186916E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -5.560194E-03 -3.091576E-05 -5.012432E-03 -2.512448E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -4.078818E-03 -1.663676E-05 -1.512098E-02 -2.286441E-04 -0.000000E+00 -0.000000E+00 -1.114343E-02 -1.241761E-04 -1.375834E-02 -1.892919E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.128775E-02 -1.274133E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.512973E-03 -2.289086E-06 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.099115E-02 -4.406282E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.181004E-02 -1.394771E-04 -1.200573E-02 -1.441375E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.737885E-03 -7.496015E-06 -0.000000E+00 -0.000000E+00 -2.582846E-02 -6.671093E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.669493E-02 -7.126192E-04 -1.193971E-02 -9.099511E-05 -9.937766E-03 -9.875918E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.044477E-02 -1.090932E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -1.437034E-02 -2.065067E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -2.337119E-02 -5.462125E-04 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -6.140183E-03 -3.770184E-05 diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test.py b/tests/regression_tests/unstructured_mesh/source_sampling/test.py deleted file mode 100644 index d6f16315a..000000000 --- a/tests/regression_tests/unstructured_mesh/source_sampling/test.py +++ /dev/null @@ -1,121 +0,0 @@ -from itertools import product -from pathlib import Path - -import pytest -import numpy as np -import openmc -import openmc.lib - -from tests import cdtemp -from tests.testing_harness import PyAPITestHarness - - -TETS_PER_VOXEL = 12 - -# This test uses a geometry file with cells that match a regular mesh. Each cell -# in the geometry corresponds to 12 tetrahedra in the unstructured mesh file. -@pytest.fixture -def model(): - openmc.reset_auto_ids() - - ### Materials ### - materials = openmc.Materials() - - water_mat = openmc.Material(name="water") - water_mat.add_nuclide("H1", 2.0) - water_mat.add_nuclide("O16", 1.0) - water_mat.set_density("atom/b-cm", 0.07416) - materials.append(water_mat) - - ### Geometry ### - # create a regular mesh that matches the superimposed mesh - regular_mesh = openmc.RegularMesh(mesh_id=10) - regular_mesh.lower_left = (-10, -10, -10) - regular_mesh.dimension = (10, 10, 10) - regular_mesh.width = (2, 2, 2) - - root_cell, _ = regular_mesh.build_cells(bc=['vacuum']*6) - - geometry = openmc.Geometry([root_cell]) - - ### Tallies ### - - # create a mesh flux tally - tally = openmc.Tally() - tally.filters.append(openmc.MeshFilter(regular_mesh)) - tally.scores = ['flux'] - tallies = openmc.Tallies([tally]) - - ### Settings ### - settings = openmc.Settings() - settings.run_mode = 'fixed source' - settings.particles = 100 - settings.batches = 2 - - mesh_filename = "test_mesh_tets.e" - uscd_mesh = openmc.UnstructuredMesh(mesh_filename, 'libmesh') - - # subtract one to account for root cell - n_cells = len(geometry.get_all_cells()) - 1 - - # set source weights manually so the C++ that checks the - # size of the array is executed - vol_norm = False - strengths = np.zeros(n_cells*TETS_PER_VOXEL) - # set non-zero strengths only for the tets corresponding to the - # first two geometric hex cells - strengths[:TETS_PER_VOXEL] = 10 - - strengths[TETS_PER_VOXEL:2*TETS_PER_VOXEL] = 2 - - # create the spatial distribution based on the mesh - space = openmc.stats.MeshSpatial(uscd_mesh, strengths, vol_norm) - - energy = openmc.stats.Discrete(x=[15.e+06], p=[1.0]) - source = openmc.Source(space=space, energy=energy) - settings.source = source - return openmc.model.Model(geometry=geometry, - materials=materials, - settings=settings, - tallies=tallies) - - -test_cases = [ - {'library': lib, 'inputs_true': f'inputs_true{i}.dat'} - for i, lib in enumerate(('libmesh', 'moab')) -] - - -@pytest.mark.parametrize("test_cases", test_cases, ids=lambda p: p['library']) -def test_unstructured_mesh_sampling(model, test_cases): - # skip the test if the library is not enabled - if test_cases['library'] == 'moab' and not openmc.lib._dagmc_enabled(): - pytest.skip("DAGMC (and MOAB) mesh not enabled in this build.") - - if test_cases['library'] == 'libmesh' and not openmc.lib._libmesh_enabled(): - pytest.skip("LibMesh is not enabled in this build.") - - model.settings.source[0].space.mesh.library = test_cases['library'] - - harness = PyAPITestHarness('statepoint.2.h5', model, test_cases['inputs_true']) - harness.main() - - -def test_strengths_size_failure(request, model): - mesh_source = model.settings.source[0] - - # skip the test if unstructured mesh is not available - if not openmc.lib._libmesh_enabled(): - if openmc.lib._dagmc_enabled(): - mesh_source.space.mesh.library = 'moab' - else: - pytest.skip("Unstructured mesh support unavailable.") - - # make sure that an incorrrectly sized strengths array causes a failure - mesh_source.space.strengths = mesh_source.space.strengths[:-1] - - mesh_filename = Path(request.fspath).parent / mesh_source.space.mesh.filename - - with pytest.raises(RuntimeError, match=r'strengths array'), cdtemp([mesh_filename]): - model.export_to_xml() - openmc.run() diff --git a/tests/regression_tests/unstructured_mesh/source_sampling/test_mesh_tets.e b/tests/regression_tests/unstructured_mesh/source_sampling/test_mesh_tets.e deleted file mode 120000 index 0aa0d1a23..000000000 --- a/tests/regression_tests/unstructured_mesh/source_sampling/test_mesh_tets.e +++ /dev/null @@ -1 +0,0 @@ -../test_mesh_tets.e \ No newline at end of file From e9866b4d66d7896214d6b695b8a663a8c14c135c Mon Sep 17 00:00:00 2001 From: Jonathan Shimwell Date: Tue, 31 Jan 2023 13:20:31 +0000 Subject: [PATCH 052/120] added get_tabular metho to energyfilters --- openmc/filter.py | 29 +++++++++++++++++++++++++++++ tests/unit_tests/test_filters.py | 17 +++++++++++++++++ 2 files changed, 46 insertions(+) diff --git a/openmc/filter.py b/openmc/filter.py index 99b005351..1bb5f9b14 100644 --- a/openmc/filter.py +++ b/openmc/filter.py @@ -1332,6 +1332,35 @@ class EnergyFilter(RealFilter): cv.check_greater_than('filter value', v0, 0., equality=True) cv.check_greater_than('filter value', v1, 0., equality=True) + def get_tabular(self, values, interpolation='histogram'): + """Creates a openmc.stats.Tabular distribution using the EnergyFilter + bins and the provided values. Intended use is to help convert a + spectrum tally into a source energy. + + Parameters + ---------- + values : np.array + Array of numeric values, typically a tally.mean from a spectrum tally + interpolation : {'histogram', 'linear-linear', 'linear-log', 'log-linear', 'log-log'} + Indicate whether the density function is constant between tabulated + points or linearly-interpolated. Defaults to 'histogram'. + + Returns + ------- + openmc.stats.Tabular + Tabular distribution with histogram interpolation + """ + + probabilities = values / sum(values) + + probability_per_ev = probabilities / np.diff(self.bins).flatten() + + return openmc.stats.Tabular( + x=self.bins, + p=probability_per_ev, + interpolation=interpolation + ) + @property def lethargy_bin_width(self): """Calculates the base 10 log width of energy bins which is useful when diff --git a/tests/unit_tests/test_filters.py b/tests/unit_tests/test_filters.py index 8a6f095ef..485926f19 100644 --- a/tests/unit_tests/test_filters.py +++ b/tests/unit_tests/test_filters.py @@ -269,3 +269,20 @@ def test_energyfunc(): np.testing.assert_allclose(f.energy, new_f.energy) np.testing.assert_allclose(f.y, new_f.y) assert f.interpolation == new_f.interpolation + + +def test_tabular_from_energyfilter(): + efilter = openmc.EnergyFilter([0.0, 10.0, 20.0, 25.0]) + tab = efilter.get_tabular(values=np.array([5, 10, 10])) + + assert tab.x.tolist() == [[0.0, 10.0], [10.0, 20.0], [20.0, 25.0]] + + # combination of different values passed into get_tabular and different + # width energy bins results in a doubling value for each p value + assert tab.p.tolist() == [0.02, 0.04, 0.08] + + # 'histogram' is the default + assert tab.interpolation == 'histogram' + + tab = efilter.get_tabular(values=np.array([10, 10, 5]), interpolation='linear-linear') + assert tab.interpolation == 'linear-linear' From dbbad687eba3357d8f6b69bec71bb119d4113e29 Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Fri, 3 Feb 2023 08:32:05 -0600 Subject: [PATCH 053/120] Don't call normalize inside Tabular.mean --- openmc/stats/univariate.py | 11 +++++++---- tests/unit_tests/test_stats.py | 11 +++++++---- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/openmc/stats/univariate.py b/openmc/stats/univariate.py index de8d08ded..64627a4e1 100644 --- a/openmc/stats/univariate.py +++ b/openmc/stats/univariate.py @@ -857,7 +857,6 @@ class Tabular(Univariate): 'or linear-linear interpolation.') if self.interpolation == 'linear-linear': mean = 0.0 - self.normalize() for i in range(1, len(self.x)): y_min = self.p[i-1] y_max = self.p[i] @@ -872,9 +871,13 @@ class Tabular(Univariate): mean += exp_val elif self.interpolation == 'histogram': - mean = 0.5 * (self.x[:-1] + self.x[1:]) - mean *= np.diff(self.cdf()) - mean = sum(mean) + x_l = self.x[:-1] + x_r = self.x[1:] + p_l = self.p[:-1] + mean = (0.5 * (x_l + x_r) * (x_r - x_l) * p_l).sum() + + # Normalize for when integral of distribution is not 1 + mean /= self.integral() return mean diff --git a/tests/unit_tests/test_stats.py b/tests/unit_tests/test_stats.py index 378e1fc0b..ea8898c1a 100644 --- a/tests/unit_tests/test_stats.py +++ b/tests/unit_tests/test_stats.py @@ -166,7 +166,7 @@ def test_watt(): def test_tabular(): x = np.array([0.0, 5.0, 7.0]) - p = np.array([0.1, 0.2, 0.05]) + p = np.array([10.0, 20.0, 5.0]) d = openmc.stats.Tabular(x, p, 'linear-linear') elem = d.to_xml_element('distribution') @@ -178,19 +178,22 @@ def test_tabular(): # test linear-linear sampling d = openmc.stats.Tabular(x, p) - n_samples = 100_000 samples = d.sample(n_samples) assert_sample_mean(samples, d.mean()) - # test histogram sampling - d = openmc.stats.Tabular(x, p, interpolation='histogram') + # test linear-linear normalization d.normalize() assert d.integral() == pytest.approx(1.0) + # test histogram sampling + d = openmc.stats.Tabular(x, p, interpolation='histogram') samples = d.sample(n_samples) assert_sample_mean(samples, d.mean()) + d.normalize() + assert d.integral() == pytest.approx(1.0) + def test_legendre(): # Pu239 elastic scattering at 100 keV From cf8cd62961bbb8b6de52f4e944d725c90072ab05 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Fri, 3 Feb 2023 19:32:41 -0600 Subject: [PATCH 054/120] Update tests/unit_tests/test_source_mesh.py Co-authored-by: Paul Romano --- tests/unit_tests/test_source_mesh.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/tests/unit_tests/test_source_mesh.py b/tests/unit_tests/test_source_mesh.py index dc4cbf06c..e6074cb23 100644 --- a/tests/unit_tests/test_source_mesh.py +++ b/tests/unit_tests/test_source_mesh.py @@ -1,15 +1,14 @@ from itertools import product - from pathlib import Path +from subprocess import call + import pytest import numpy as np - import openmc import openmc.lib from tests import cdtemp from tests.regression_tests import config -from subprocess import call TETS_PER_VOXEL = 12 From fc67b38ba4ee4895529bbfce1ad94e4bdc7adeed Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Fri, 3 Feb 2023 20:11:25 -0600 Subject: [PATCH 055/120] Adding roundtrip test for mesh sampling --- openmc/mesh.py | 13 +++++++++++ openmc/settings.py | 19 ++++------------ openmc/source.py | 7 ++++-- openmc/stats/multivariate.py | 19 +++++++++------- tests/unit_tests/test_source_mesh.py | 34 ++++++++++++++++++++++++---- 5 files changed, 63 insertions(+), 29 deletions(-) diff --git a/openmc/mesh.py b/openmc/mesh.py index e314aab3e..a3452b846 100644 --- a/openmc/mesh.py +++ b/openmc/mesh.py @@ -1,5 +1,6 @@ from abc import ABC, abstractmethod from collections.abc import Iterable +from collections import OrderedDict from math import pi from numbers import Real, Integral from pathlib import Path @@ -1937,3 +1938,15 @@ class UnstructuredMesh(MeshBase): length_multiplier = float(get_text(elem, 'length_multiplier', 1.0)) return cls(filename, library, mesh_id, '', length_multiplier) + + +def read_meshes(tree): + """Reads all mesh nodes under an XML tree + """ + out = OrderedDict() + root = tree.getroot() + for mesh_elem in root.iter('mesh'): + mesh = MeshBase.from_xml_element(mesh_elem) + out[mesh.id] = mesh + + return out \ No newline at end of file diff --git a/openmc/settings.py b/openmc/settings.py index 129ae2655..a219f8aa2 100644 --- a/openmc/settings.py +++ b/openmc/settings.py @@ -16,7 +16,7 @@ from openmc.stats.multivariate import MeshSpatial from . import RegularMesh, Source, VolumeCalculation, WeightWindows from ._xml import clean_indentation, get_text, reorder_attributes from openmc.checkvalue import PathLike -from .mesh import MeshBase +from .mesh import MeshBase, read_meshes class RunMode(Enum): @@ -1328,19 +1328,7 @@ class Settings: def _source_from_xml_element(self, root, meshes=None): for elem in root.findall('source'): - src = Source.from_xml_element(elem) - if isinstance(src.space, MeshSpatial): - mesh_id = int(get_text(elem, 'mesh')) - if mesh_id not in meshes: - path = f"./mesh[@id='{mesh_id}']" - mesh_elem = root.find(path) - if mesh_elem is not None: - mesh = MeshBase.from_xml_element(mesh_elem) - meshes[mesh.id] = mesh - try: - src.space.mesh = meshes[mesh_id] - except KeyError as e: - raise e(f'Mesh with ID {mesh_id} was not found.') + src = Source.from_xml_element(elem, meshes) # add newly constructed source object to the list self.source.append(src) @@ -1774,4 +1762,5 @@ class Settings: """ tree = ET.parse(path) root = tree.getroot() - return cls.from_xml_element(root) + meshes = read_meshes(tree) + return cls.from_xml_element(root, meshes) diff --git a/openmc/source.py b/openmc/source.py index 9293a5953..7f88bcd52 100644 --- a/openmc/source.py +++ b/openmc/source.py @@ -258,13 +258,16 @@ class Source: return element @classmethod - def from_xml_element(cls, elem: ET.Element) -> 'openmc.Source': + def from_xml_element(cls, elem: ET.Element, meshes=None) -> 'openmc.Source': """Generate source from an XML element Parameters ---------- elem : xml.etree.ElementTree.Element XML element + meshes : dict + Dictionary with mesh IDs as keys and openmc.MeshBase instaces as + values Returns ------- @@ -313,7 +316,7 @@ class Source: space = elem.find('space') if space is not None: - source.space = Spatial.from_xml_element(space) + source.space = Spatial.from_xml_element(space, meshes) angle = elem.find('angle') if angle is not None: diff --git a/openmc/stats/multivariate.py b/openmc/stats/multivariate.py index db13b9bc9..7372020b0 100644 --- a/openmc/stats/multivariate.py +++ b/openmc/stats/multivariate.py @@ -262,7 +262,7 @@ class Spatial(ABC): @classmethod @abstractmethod - def from_xml_element(cls, elem): + def from_xml_element(cls, elem, meshes=None): distribution = get_text(elem, 'type') if distribution == 'cartesian': return CartesianIndependent.from_xml_element(elem) @@ -275,7 +275,7 @@ class Spatial(ABC): elif distribution == 'point': return Point.from_xml_element(elem) elif distribution == 'mesh': - return MeshSpatial.from_xml_element(elem) + return MeshSpatial.from_xml_element(elem, meshes) class CartesianIndependent(Spatial): @@ -714,13 +714,16 @@ class MeshSpatial(Spatial): return element @classmethod - def from_xml_element(cls, elem): + def from_xml_element(cls, elem, meshes): """Generate spatial distribution from an XML element Parameters ---------- elem : xml.etree.ElementTree.Element XML element + meshes : dict + A dictionary with mesh IDs as keys and openmc.MeshBase instances as + values Returns ------- @@ -732,16 +735,16 @@ class MeshSpatial(Spatial): mesh_id = int(elem.get('mesh_id')) # check if this mesh has been read in from another location already - if mesh_id not in MESHES: + if mesh_id not in meshes: raise RuntimeError(f'Could not locate mesh with ID "{mesh_id}"') volume_normalized = elem.get("volume_normalized") volume_normalized = get_text(elem, 'volume_normalized').lower() == 'true' - if elem.get('strengths') is not None: + strengths = get_text(elem, 'strengths') + if strengths is not None: strengths = [float(b) for b in get_text(elem, 'strengths').split()] - else: - strengths = None - return cls(MESHES[mesh_id], strengths, volume_normalized) + + return cls(meshes[mesh_id], strengths, volume_normalized) class Box(Spatial): diff --git a/tests/unit_tests/test_source_mesh.py b/tests/unit_tests/test_source_mesh.py index e6074cb23..596b22f9a 100644 --- a/tests/unit_tests/test_source_mesh.py +++ b/tests/unit_tests/test_source_mesh.py @@ -106,10 +106,8 @@ def test_unstructured_mesh_sampling(model, request, test_cases): cell_counts = np.zeros((n_cells, n_measurements)) # This model contains 1000 geometry cells. Each cell is a hex - # corresponding to 12 of the tets. This test runs 10000 particles. This + # corresponding to 12 of the tets. This test runs 1000 samples. This # results in the following average for each cell - average_in_hex = n_samples / n_cells - openmc.lib.init([]) # perform many sets of samples and track counts for each cell @@ -174,4 +172,32 @@ def test_strengths_size_failure(request, model): with pytest.raises(RuntimeError, match=r'strengths array'), cdtemp([mesh_filename]): model.export_to_xml() - openmc.run() \ No newline at end of file + openmc.run() + +def test_roundtrip(run_in_tmpdir, model, request): + if not openmc.lib._libmesh_enabled() and not openmc.lib._dagmc_enabled(): + pytest.skip("Unstructured mesh is not enabled in this build.") + + mesh_filename = Path(request.fspath).parent / 'test_mesh_tets.e' + ucd_mesh = openmc.UnstructuredMesh(mesh_filename, library='libmesh') + + if not openmc.lib._libmesh_enabled(): + ucd_mesh.library = 'moab' + + n_cells = len(model.geometry.get_all_cells()) + + space_out = openmc.MeshSpatial(ucd_mesh) + space_out.strengths = np.random.rand(n_cells*TETS_PER_VOXEL) + model.settings.source = openmc.Source(space=space_out) + + # write out the model + model.export_to_xml() + + model_in = openmc.Model.from_xml() + + space_in = model_in.settings.source[0].space + + np.testing.assert_equal(space_out.strengths, space_in.strengths) + + assert space_in.mesh.id == space_out.mesh.id + assert space_in.volume_normalized == space_out.volume_normalized From 283e3ee6aa5db3012a118cd300bf3b6f9388c2ac Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Fri, 3 Feb 2023 22:51:51 -0600 Subject: [PATCH 056/120] Adjust the read_meshes function to search only for mesh elements directly below the element passed in --- openmc/mesh.py | 18 ++++++++++++++---- openmc/settings.py | 2 +- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/openmc/mesh.py b/openmc/mesh.py index a3452b846..b2114525f 100644 --- a/openmc/mesh.py +++ b/openmc/mesh.py @@ -1940,12 +1940,22 @@ class UnstructuredMesh(MeshBase): return cls(filename, library, mesh_id, '', length_multiplier) -def read_meshes(tree): - """Reads all mesh nodes under an XML tree +def read_meshes(elem): + """Reads all mesh nodes under a a given XML node + + Parameters + ---------- + elem : xml.etree.ElementTree.Element + XML element + + Returns + ------- + OrderedDict + An ordered dictionary with mesh IDs as keys and openmc.MeshBase + instanaces as values """ out = OrderedDict() - root = tree.getroot() - for mesh_elem in root.iter('mesh'): + for mesh_elem in elem.findall('mesh'): mesh = MeshBase.from_xml_element(mesh_elem) out[mesh.id] = mesh diff --git a/openmc/settings.py b/openmc/settings.py index a219f8aa2..ff35a90cf 100644 --- a/openmc/settings.py +++ b/openmc/settings.py @@ -1762,5 +1762,5 @@ class Settings: """ tree = ET.parse(path) root = tree.getroot() - meshes = read_meshes(tree) + meshes = read_meshes(root) return cls.from_xml_element(root, meshes) From 6d69c782ae333dae580a5734896efd311aab71ac Mon Sep 17 00:00:00 2001 From: josh Date: Mon, 6 Feb 2023 17:45:18 +0000 Subject: [PATCH 057/120] abstract _partial_deepcopy and reformat docstrings --- openmc/universe.py | 29 ++++++++++++++++++----------- 1 file changed, 18 insertions(+), 11 deletions(-) diff --git a/openmc/universe.py b/openmc/universe.py index 8babddfeb..3b8d0fe51 100644 --- a/openmc/universe.py +++ b/openmc/universe.py @@ -111,11 +111,16 @@ class UniverseBase(ABC, IDManagerMixin): """ - def _deepcopy_universe_for_clone(self): - """Deepcopy an openmc.UniverseBase object. This is a paceholder for any future classes inherited from this one. - This should only to be used within the openmc.UniverseBase.clone() context. + @abstractmethod + def _partial_deepcopy(self): + """Deepcopy all parameters of an openmc.UniverseBase object except its cells. + This should only be used from the openmc.UniverseBase.clone() context. + + Returns + ------- + None + """ - return deepcopy(self) def clone(self, clone_materials=True, clone_regions=True, memo=None): """Create a copy of this universe with a new unique ID, and clones @@ -144,7 +149,7 @@ class UniverseBase(ABC, IDManagerMixin): # If no memoize'd clone exists, instantiate one if self not in memo: - clone = self._deepcopy_universe_for_clone() + clone = self._partial_deepcopy() # Clone all cells for the universe clone clone._cells = OrderedDict() @@ -616,9 +621,10 @@ class Universe(UniverseBase): if not instances_only: cell._paths.append(cell_path) - def _deepcopy_universe_for_clone(self): - """Clone all of the openmc.Universe object's attributes except for its cells, as they will be handled within the clone function. - This should only to be used within the openmc.UniverseBase.clone() context and is more performant than a deepcopy. + def _partial_deepcopy(self): + """Clone all of the openmc.Universe object's attributes except for its cells, + as they are copied within the clone function. This should only to be + used within the openmc.UniverseBase.clone() context. """ clone = openmc.Universe(name=self.name) clone.volume = self.volume @@ -961,9 +967,10 @@ class DAGMCUniverse(UniverseBase): return out - def _deepcopy_universe_for_clone(self): - """Clone all of the openmc.DAGMCUniverse object's attributes except for its cells, as they will be handled within the clone function. - This should only to be used within the openmc.UniverseBase.clone() context and is more performant than a deepcopy. + def _partial_deepcopy(self): + """Clone all of the openmc.DAGMCUniverse object's attributes except for + its cells, as they are copied within the clone function. This should + only to be used within the openmc.UniverseBase.clone() context. """ clone = openmc.DAGMCUniverse(name=self.name, filename=self.filename) clone.volume = self.volume From 5470ec75b4215faa296bec05a203dcfb9d89d30e Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Mon, 6 Feb 2023 21:49:43 -0600 Subject: [PATCH 058/120] Avoid out-of-bounds access on index_inelastic_scatter_ --- src/physics.cpp | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/src/physics.cpp b/src/physics.cpp index 7cb8040f6..d924b72be 100644 --- a/src/physics.cpp +++ b/src/physics.cpp @@ -705,17 +705,10 @@ void scatter(Particle& p, int i_nuclide) // ======================================================================= // INELASTIC SCATTERING - int j = 0; + int n = nuc->index_inelastic_scatter_.size(); int i = 0; - while (prob < cutoff) { + for (int j = 0; j < n && prob < cutoff; ++j) { i = nuc->index_inelastic_scatter_[j]; - ++j; - - // Check to make sure inelastic scattering reaction sampled - if (i >= nuc->reactions_.size()) { - p.write_restart(); - fatal_error("Did not sample any reaction for nuclide " + nuc->name_); - } // add to cumulative probability prob += nuc->reactions_[i]->xs(micro); From ecebe25f367e9482b8c475f9484c32cddd2be338 Mon Sep 17 00:00:00 2001 From: Jonathan Shimwell Date: Tue, 7 Feb 2023 10:23:28 +0000 Subject: [PATCH 059/120] making error message more helpful with material name --- openmc/deplete/openmc_operator.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/openmc/deplete/openmc_operator.py b/openmc/deplete/openmc_operator.py index b00d83127..6233322ab 100644 --- a/openmc/deplete/openmc_operator.py +++ b/openmc/deplete/openmc_operator.py @@ -223,8 +223,9 @@ class OpenMCOperator(TransportOperator): if mat.depletable: burnable_mats.add(str(mat.id)) if mat.volume is None: - raise RuntimeError("Volume not specified for depletable " - "material with ID={}.".format(mat.id)) + msh = ("Volume not specified for depletable material with " + f"ID={mat.id}. Name={mat.name}") + raise RuntimeError(msh) volume[str(mat.id)] = mat.volume self.heavy_metal += mat.fissionable_mass @@ -242,7 +243,6 @@ class OpenMCOperator(TransportOperator): for nuc in model_nuclides: if nuc not in nuclides: nuclides.append(nuc) - return burnable_mats, volume, nuclides def _load_previous_results(self): From 016a5e5b3c3fdfe90bb9413958e2df0f371861a5 Mon Sep 17 00:00:00 2001 From: Jonathan Shimwell Date: Tue, 7 Feb 2023 10:24:39 +0000 Subject: [PATCH 060/120] moved full stop --- openmc/deplete/openmc_operator.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openmc/deplete/openmc_operator.py b/openmc/deplete/openmc_operator.py index 6233322ab..874a1da23 100644 --- a/openmc/deplete/openmc_operator.py +++ b/openmc/deplete/openmc_operator.py @@ -224,7 +224,7 @@ class OpenMCOperator(TransportOperator): burnable_mats.add(str(mat.id)) if mat.volume is None: msh = ("Volume not specified for depletable material with " - f"ID={mat.id}. Name={mat.name}") + f"ID={mat.id} Name={mat.name}.") raise RuntimeError(msh) volume[str(mat.id)] = mat.volume self.heavy_metal += mat.fissionable_mass From 0d4227fa1f1baaee6116973a12072ba53ac6631f Mon Sep 17 00:00:00 2001 From: Jonathan Shimwell Date: Tue, 7 Feb 2023 12:26:11 +0000 Subject: [PATCH 061/120] added volume information to material repr --- openmc/material.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/openmc/material.py b/openmc/material.py index a213a53fd..28d38cb90 100644 --- a/openmc/material.py +++ b/openmc/material.py @@ -143,6 +143,9 @@ class Material(IDManagerMixin): string += '{: <16}=\t{}'.format('\tDensity', self._density) string += f' [{self._density_units}]\n' + string += '{: <16}=\t{}'.format('\tVolume', self._volume) + string += ' [cm3]\n' + string += '{: <16}\n'.format('\tS(a,b) Tables') if self._ncrystal_cfg: From 5f0e3e14fbf131c8bcf0ec0cf60ddf05bb7c8294 Mon Sep 17 00:00:00 2001 From: Ethan Peterson Date: Mon, 31 Oct 2022 12:18:09 -0400 Subject: [PATCH 062/120] added default filter shape and mesh filter shape --- openmc/filter.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/openmc/filter.py b/openmc/filter.py index 99b005351..bcd3dbc36 100644 --- a/openmc/filter.py +++ b/openmc/filter.py @@ -102,6 +102,8 @@ class Filter(IDManagerMixin, metaclass=FilterMeta): Unique identifier for the filter num_bins : Integral The number of filter bins + shape : tuple + The shape of the filter """ @@ -205,6 +207,10 @@ class Filter(IDManagerMixin, metaclass=FilterMeta): def num_bins(self): return len(self.bins) + @property + def shape(self): + return (self.num_bins,) + def check_bins(self, bins): """Make sure given bins are valid for this filter. @@ -839,6 +845,10 @@ class MeshFilter(Filter): else: self.bins = list(mesh.indices) + @property + def shape(self): + return self.mesh.dimension + @property def translation(self): return self._translation From 512c7e6556b37b45cd7e93eb04c1b1260f14c59c Mon Sep 17 00:00:00 2001 From: Ethan Peterson Date: Mon, 31 Oct 2022 12:47:13 -0400 Subject: [PATCH 063/120] modified get_reshaped_data --- openmc/tallies.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/openmc/tallies.py b/openmc/tallies.py index b22cc4cf0..33a14974c 100644 --- a/openmc/tallies.py +++ b/openmc/tallies.py @@ -1440,11 +1440,23 @@ class Tally(IDManagerMixin): data = self.get_values(value=value) # Build a new array shape with one dimension per filter - new_shape = tuple(f.num_bins for f in self.filters) + new_shape = tuple() + idx0 = None + for i, f in enumerate(self.filters): + # Mesh filter indices are backwards so we need to flip them + if isinstance(f, openmc.MeshFilter): + fshape = f.shape[::-1] + new_shape += fshape + idx0, idx1 = i, i + len(fshape) - 1 + else: + new_shape += f.shape + new_shape += (self.num_nuclides, self.num_scores) # Reshape the data with one dimension for each filter data = np.reshape(data, new_shape) + if idx0 is not None: + data = np.swapaxes(data, idx0, idx1) return data def hybrid_product(self, other, binary_op, filter_product=None, From 61efad0a8d63884f535fa4adce4e04b846f8c714 Mon Sep 17 00:00:00 2001 From: Ethan Peterson Date: Fri, 11 Nov 2022 12:10:10 -0500 Subject: [PATCH 064/120] added test and expand_dims kwarg --- openmc/tallies.py | 39 +++++++++++++++------- tests/unit_tests/test_filter_mesh.py | 48 ++++++++++++++++++++++++++-- 2 files changed, 73 insertions(+), 14 deletions(-) diff --git a/openmc/tallies.py b/openmc/tallies.py index 33a14974c..688369de0 100644 --- a/openmc/tallies.py +++ b/openmc/tallies.py @@ -1405,7 +1405,7 @@ class Tally(IDManagerMixin): return df - def get_reshaped_data(self, value='mean'): + def get_reshaped_data(self, value='mean', expand_dims=False): """Returns an array of tally data with one dimension per filter. The tally data in OpenMC is stored as a 3D array with the dimensions @@ -1417,17 +1417,24 @@ class Tally(IDManagerMixin): This builds and returns a reshaped version of the tally data array with unique dimensions corresponding to each tally filter. For example, - suppose this tally has arrays of data with shape (8,5,5) corresponding - to two filters (2 and 4 bins, respectively), five nuclides and five + suppose this tally has arrays of data with shape (30,5,5) corresponding + to two filters (2 and 15 bins, respectively), five nuclides and five scores. This method will return a version of the data array with the - with a new shape of (2,4,5,5) such that the first two dimensions - correspond directly to the two filters with two and four bins. + with a new shape of (2,15,5,5) such that the first two dimensions + correspond directly to the two filters with two and fifteen bins. If + expand_dims is True and our filter above with 15 bins is an instance of + :class:`openmc.MeshFilter` with a shape of (3,5,1). The resulting tally + data array will have a new shape of (2,3,5,1,5,5). Parameters ---------- value : str A string for the type of value to return - 'mean' (default), 'std_dev', 'rel_err', 'sum', or 'sum_sq' are accepted + expand_dims : bool, optional + Whether or not to expand the dimensions of filters with multiple + dimensions. This will result in more than one dimension per filter + for the returned data array. Returns ------- @@ -1439,24 +1446,32 @@ class Tally(IDManagerMixin): # Get the 3D array of data in filters, nuclides and scores data = self.get_values(value=value) - # Build a new array shape with one dimension per filter + # Build a new array shape with one dimension per filter or expand + # multidimensional filters if desired new_shape = tuple() idx0 = None for i, f in enumerate(self.filters): - # Mesh filter indices are backwards so we need to flip them - if isinstance(f, openmc.MeshFilter): - fshape = f.shape[::-1] - new_shape += fshape - idx0, idx1 = i, i + len(fshape) - 1 + if expand_dims: + # Mesh filter indices are backwards so we need to flip them + if isinstance(f, openmc.MeshFilter): + fshape = f.shape[::-1] + new_shape += fshape + idx0, idx1 = i, i + len(fshape) - 1 + else: + new_shape += f.shape else: - new_shape += f.shape + new_shape += (np.prod(f.shape),) new_shape += (self.num_nuclides, self.num_scores) # Reshape the data with one dimension for each filter data = np.reshape(data, new_shape) + + # If we had a MeshFilter we should swap the axes to have the same shape + # for the data and the filter if idx0 is not None: data = np.swapaxes(data, idx0, idx1) + return data def hybrid_product(self, other, binary_op, filter_product=None, diff --git a/tests/unit_tests/test_filter_mesh.py b/tests/unit_tests/test_filter_mesh.py index 265642360..3bb836e46 100644 --- a/tests/unit_tests/test_filter_mesh.py +++ b/tests/unit_tests/test_filter_mesh.py @@ -1,7 +1,10 @@ +import math + import numpy as np -import openmc from uncertainties import unumpy +import openmc + def test_spherical_mesh_estimators(run_in_tmpdir): """Test that collision/tracklength estimators agree for SphericalMesh""" @@ -62,7 +65,8 @@ def test_cylindrical_mesh_estimators(run_in_tmpdir): mat.add_nuclide('U235', 1.0) mat.set_density('g/cm3', 10.0) - cyl = openmc.model.RightCircularCylinder((0., 0., -5.), 10., 10.0, boundary_type='vacuum') + cyl = openmc.model.RightCircularCylinder((0., 0., -5.), 10., 10.0, + boundary_type='vacuum') cell = openmc.Cell(fill=mat, region=-cyl) model = openmc.Model() model.geometry = openmc.Geometry([cell]) @@ -107,3 +111,43 @@ def test_cylindrical_mesh_estimators(run_in_tmpdir): diff = unumpy.nominal_values(delta) std_dev = unumpy.std_devs(delta) assert np.all(diff < 3*std_dev) + +def test_get_reshaped_data(run_in_tmpdir): + """Test that expanding MeshFilter dimensions works as expected""" + + mat = openmc.Material() + mat.add_nuclide('U235', 1.0) + mat.set_density('g/cm3', 10.0) + + sphere = openmc.Sphere(r=10.0, boundary_type='vacuum') + cell = openmc.Cell(fill=mat, region=-sphere) + model = openmc.Model() + model.geometry = openmc.Geometry([cell]) + model.settings.particles = 1_000 + model.settings.inactive = 10 + model.settings.batches = 20 + + sph_mesh = openmc.SphericalMesh() + sph_mesh.r_grid = np.linspace(0.0, 5.0**3, 20)**(1/3) + sph_mesh.theta_grid = np.linspace(0, math.pi, 4) + sph_mesh.phi_grid = np.linspace(0, 2*math.pi, 3) + tally1 = openmc.Tally() + efilter = openmc.EnergyFilter([0, 1e5, 1e8]) + meshfilter = openmc.MeshFilter(sph_mesh) + assert meshfilter.shape == (19, 3, 2) + tally1.filters = [efilter, meshfilter] + tally1.scores = ['flux'] + + model.tallies = openmc.Tallies([tally1]) + + # Run OpenMC + sp_filename = model.run() + + # Get flux tally as reshaped data + with openmc.StatePoint(sp_filename) as sp: + t1 = sp.tallies[tally1.id] + data1 = t1.get_reshaped_data() + data2 = t1.get_reshaped_data(expand_dims=True) + + assert data1.shape == (2, 19*3*2, 1, 1) + assert data2.shape == (2, 19, 3, 2, 1, 1) From 653bec5fd8955ba4522d6b0f5a9542ebbe802c34 Mon Sep 17 00:00:00 2001 From: Ethan Peterson Date: Fri, 11 Nov 2022 13:20:14 -0500 Subject: [PATCH 065/120] added shape to aggregate filter --- openmc/arithmetic.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/openmc/arithmetic.py b/openmc/arithmetic.py index 618c7c4a1..3655ef2a3 100644 --- a/openmc/arithmetic.py +++ b/openmc/arithmetic.py @@ -604,6 +604,10 @@ class AggregateFilter: def num_bins(self): return len(self.bins) if self.aggregate_filter else 0 + @property + def shape(self): + return (self.num_bins,) + @type.setter def type(self, filter_type): if filter_type not in _FILTER_TYPES: From 63b826133653c5310635d2c924885f7b07fbc48c Mon Sep 17 00:00:00 2001 From: Ethan Peterson Date: Mon, 14 Nov 2022 20:33:59 -0500 Subject: [PATCH 066/120] treat MeshSurfaceFilter differently --- openmc/filter.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/openmc/filter.py b/openmc/filter.py index bcd3dbc36..17678e026 100644 --- a/openmc/filter.py +++ b/openmc/filter.py @@ -847,6 +847,8 @@ class MeshFilter(Filter): @property def shape(self): + if isinstance(self, MeshSurfaceFilter): + return (self.num_bins,) return self.mesh.dimension @property @@ -968,8 +970,6 @@ class MeshSurfaceFilter(MeshFilter): Attributes ---------- - bins : Integral - The mesh ID mesh : openmc.MeshBase The mesh object that events will be tallied onto translation : Iterable of float @@ -978,10 +978,8 @@ class MeshSurfaceFilter(MeshFilter): id : int Unique identifier for the filter bins : list of tuple - A list of mesh indices / surfaces for each filter bin, e.g. [(1, 1, 'x-min out'), (1, 1, 'x-min in'), ...] - num_bins : Integral The number of filter bins From 8a5a5201063b2b6a29e56ab92c6c983cec98aac3 Mon Sep 17 00:00:00 2001 From: Jonathan Shimwell Date: Thu, 9 Feb 2023 17:38:33 +0000 Subject: [PATCH 067/120] code review improvments from @paulromano Co-authored-by: Paul Romano --- openmc/filter.py | 31 +++++++++++++++---------------- tests/unit_tests/test_filters.py | 2 +- 2 files changed, 16 insertions(+), 17 deletions(-) diff --git a/openmc/filter.py b/openmc/filter.py index 1bb5f9b14..e1c8611f9 100644 --- a/openmc/filter.py +++ b/openmc/filter.py @@ -1332,18 +1332,19 @@ class EnergyFilter(RealFilter): cv.check_greater_than('filter value', v0, 0., equality=True) cv.check_greater_than('filter value', v1, 0., equality=True) - def get_tabular(self, values, interpolation='histogram'): - """Creates a openmc.stats.Tabular distribution using the EnergyFilter - bins and the provided values. Intended use is to help convert a - spectrum tally into a source energy. + def get_tabular(self, values, **kwargs): + """Create a tabulated distribution based on tally results with an energy filter + + This method provides an easy way to create a distribution in energy + (e.g., a source spectrum) based on tally results that were obtained from + using an :class:`~openmc.EnergyFilter`. Parameters ---------- - values : np.array - Array of numeric values, typically a tally.mean from a spectrum tally - interpolation : {'histogram', 'linear-linear', 'linear-log', 'log-linear', 'log-log'} - Indicate whether the density function is constant between tabulated - points or linearly-interpolated. Defaults to 'histogram'. + values : iterable of float + Array of numeric values, typically from a tally result + **kwargs + Keyword arguments passed to :class:`openmc.stats.Tabular` Returns ------- @@ -1351,15 +1352,13 @@ class EnergyFilter(RealFilter): Tabular distribution with histogram interpolation """ - probabilities = values / sum(values) + probabilities = np.array(values) + probabilities /= probabilities.sum() - probability_per_ev = probabilities / np.diff(self.bins).flatten() + probability_per_ev = probabilities / np.diff(self.values) - return openmc.stats.Tabular( - x=self.bins, - p=probability_per_ev, - interpolation=interpolation - ) + kwargs.setdefault('interpolation', 'histogram') + return openmc.stats.Tabular(self.bins, probability_per_ev, **kwargs) @property def lethargy_bin_width(self): diff --git a/tests/unit_tests/test_filters.py b/tests/unit_tests/test_filters.py index 485926f19..afe85cdde 100644 --- a/tests/unit_tests/test_filters.py +++ b/tests/unit_tests/test_filters.py @@ -273,7 +273,7 @@ def test_energyfunc(): def test_tabular_from_energyfilter(): efilter = openmc.EnergyFilter([0.0, 10.0, 20.0, 25.0]) - tab = efilter.get_tabular(values=np.array([5, 10, 10])) + tab = efilter.get_tabular(values=[5, 10, 10]) assert tab.x.tolist() == [[0.0, 10.0], [10.0, 20.0], [20.0, 25.0]] From b41c8330f19923be3f59dd01bb3b8a5f4f13f526 Mon Sep 17 00:00:00 2001 From: Josh May Date: Thu, 9 Feb 2023 09:41:23 -0800 Subject: [PATCH 068/120] Update openmc/universe.py Co-authored-by: Paul Romano --- openmc/universe.py | 4 ---- 1 file changed, 4 deletions(-) diff --git a/openmc/universe.py b/openmc/universe.py index 3b8d0fe51..c56cce7ca 100644 --- a/openmc/universe.py +++ b/openmc/universe.py @@ -116,10 +116,6 @@ class UniverseBase(ABC, IDManagerMixin): """Deepcopy all parameters of an openmc.UniverseBase object except its cells. This should only be used from the openmc.UniverseBase.clone() context. - Returns - ------- - None - """ def clone(self, clone_materials=True, clone_regions=True, memo=None): From e6d8e3f4a74f1be2db6b22d11575c0951372090e Mon Sep 17 00:00:00 2001 From: Jonathan Shimwell Date: Thu, 9 Feb 2023 17:53:04 +0000 Subject: [PATCH 069/120] avoiding true divide erorr --- openmc/filter.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/openmc/filter.py b/openmc/filter.py index e1c8611f9..d646cc019 100644 --- a/openmc/filter.py +++ b/openmc/filter.py @@ -1352,8 +1352,7 @@ class EnergyFilter(RealFilter): Tabular distribution with histogram interpolation """ - probabilities = np.array(values) - probabilities /= probabilities.sum() + probabilities = np.array(values) / sum(values) probability_per_ev = probabilities / np.diff(self.values) From b559d32d6849f8ef680a935afd33012c2a593490 Mon Sep 17 00:00:00 2001 From: shimwell Date: Thu, 9 Feb 2023 19:47:29 +0000 Subject: [PATCH 070/120] custom error message for name is None --- openmc/deplete/openmc_operator.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/openmc/deplete/openmc_operator.py b/openmc/deplete/openmc_operator.py index 874a1da23..9122b93d3 100644 --- a/openmc/deplete/openmc_operator.py +++ b/openmc/deplete/openmc_operator.py @@ -223,9 +223,11 @@ class OpenMCOperator(TransportOperator): if mat.depletable: burnable_mats.add(str(mat.id)) if mat.volume is None: - msh = ("Volume not specified for depletable material with " - f"ID={mat.id} Name={mat.name}.") - raise RuntimeError(msh) + msg = ("Volume not specified for depletable material with " + f"ID={mat.id}.") + if mat.name is not None: + msg = f"{msg[:-1]} Name={mat.name}." + raise RuntimeError(msg) volume[str(mat.id)] = mat.volume self.heavy_metal += mat.fissionable_mass From 853ef5ea49862f9c545948b4c8ecf18c3c228c41 Mon Sep 17 00:00:00 2001 From: Jonathan Shimwell Date: Thu, 9 Feb 2023 19:51:46 +0000 Subject: [PATCH 071/120] 2nd round of review improvments from paulromano Co-authored-by: Paul Romano --- openmc/filter.py | 7 +++++-- tests/unit_tests/test_filters.py | 5 ++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/openmc/filter.py b/openmc/filter.py index d646cc019..cb1b57ed0 100644 --- a/openmc/filter.py +++ b/openmc/filter.py @@ -1352,12 +1352,15 @@ class EnergyFilter(RealFilter): Tabular distribution with histogram interpolation """ - probabilities = np.array(values) / sum(values) + probabilities = np.array(values, dtype=float) + probabilities /= probabilities.sum() + # Determine probability per eV, adding extra 0 at the end since it is a histogram probability_per_ev = probabilities / np.diff(self.values) + probability_per_ev = np.append(probability_per_ev, 0.0) kwargs.setdefault('interpolation', 'histogram') - return openmc.stats.Tabular(self.bins, probability_per_ev, **kwargs) + return openmc.stats.Tabular(self.values, probability_per_ev, **kwargs) @property def lethargy_bin_width(self): diff --git a/tests/unit_tests/test_filters.py b/tests/unit_tests/test_filters.py index afe85cdde..d4f0edbf9 100644 --- a/tests/unit_tests/test_filters.py +++ b/tests/unit_tests/test_filters.py @@ -275,12 +275,15 @@ def test_tabular_from_energyfilter(): efilter = openmc.EnergyFilter([0.0, 10.0, 20.0, 25.0]) tab = efilter.get_tabular(values=[5, 10, 10]) - assert tab.x.tolist() == [[0.0, 10.0], [10.0, 20.0], [20.0, 25.0]] + assert tab.x.tolist() == [0.0, 10.0, 20.0, 25.0] # combination of different values passed into get_tabular and different # width energy bins results in a doubling value for each p value assert tab.p.tolist() == [0.02, 0.04, 0.08] + # distribution should integrate to unity + assert tab.integral() == approx(1.0) + # 'histogram' is the default assert tab.interpolation == 'histogram' From eaddf91b6538e58c079d9eaca6f558db344fd644 Mon Sep 17 00:00:00 2001 From: Jonathan Shimwell Date: Thu, 9 Feb 2023 21:19:11 +0000 Subject: [PATCH 072/120] Adding zero to end of test results Co-authored-by: Paul Romano --- tests/unit_tests/test_filters.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/unit_tests/test_filters.py b/tests/unit_tests/test_filters.py index d4f0edbf9..0d34bfee3 100644 --- a/tests/unit_tests/test_filters.py +++ b/tests/unit_tests/test_filters.py @@ -279,7 +279,7 @@ def test_tabular_from_energyfilter(): # combination of different values passed into get_tabular and different # width energy bins results in a doubling value for each p value - assert tab.p.tolist() == [0.02, 0.04, 0.08] + assert tab.p.tolist() == [0.02, 0.04, 0.08, 0.0] # distribution should integrate to unity assert tab.integral() == approx(1.0) From c0391781ca8268989b064d71b2850246d12bf9c9 Mon Sep 17 00:00:00 2001 From: Jonathan Shimwell Date: Fri, 10 Feb 2023 09:22:10 +0000 Subject: [PATCH 073/120] changed error message to preferred option --- openmc/deplete/openmc_operator.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/openmc/deplete/openmc_operator.py b/openmc/deplete/openmc_operator.py index 9122b93d3..8a13bff7f 100644 --- a/openmc/deplete/openmc_operator.py +++ b/openmc/deplete/openmc_operator.py @@ -223,10 +223,12 @@ class OpenMCOperator(TransportOperator): if mat.depletable: burnable_mats.add(str(mat.id)) if mat.volume is None: - msg = ("Volume not specified for depletable material with " - f"ID={mat.id}.") - if mat.name is not None: - msg = f"{msg[:-1]} Name={mat.name}." + if mat.name is None: + msg = ("Volume not specified for depletable material " + f"with ID={mat.id}.") + else: + msg = ("Volume not specified for depletable material " + f"with ID={mat.id} Name={mat.name}.") raise RuntimeError(msg) volume[str(mat.id)] = mat.volume self.heavy_metal += mat.fissionable_mass From 9c646b3f323ad0b52f8cfd35dfd35f6e2a3a2d10 Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Tue, 27 Dec 2022 22:09:43 -0600 Subject: [PATCH 074/120] Fix CMFDMesh.grid setter --- openmc/cmfd.py | 6 ++---- tests/regression_tests/cmfd_feed/test.py | 2 +- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/openmc/cmfd.py b/openmc/cmfd.py index 54c43f333..85550c495 100644 --- a/openmc/cmfd.py +++ b/openmc/cmfd.py @@ -246,7 +246,7 @@ class CMFDMesh: Real) check_greater_than('CMFD mesh {}-grid length'.format(dims[i]), len(grid[i]), 1) - self._grid = np.array(grid) + self._grid = [np.array(g) for g in grid] self._display_mesh_warning('rectilinear', 'CMFD mesh grid') def _display_mesh_warning(self, mesh_type, variable_label): @@ -1382,9 +1382,7 @@ class CMFDRun: """ # Write each element in vector to file - with open(base_filename+'.dat', 'w') as fh: - for val in vector: - fh.write('{:0.8f}\n'.format(val)) + np.savetxt(f'{base_filename}.dat', vector, fmt='%.8f') # Save as numpy format np.save(base_filename, vector) diff --git a/tests/regression_tests/cmfd_feed/test.py b/tests/regression_tests/cmfd_feed/test.py index fa22b0fe3..d513dee2a 100644 --- a/tests/regression_tests/cmfd_feed/test.py +++ b/tests/regression_tests/cmfd_feed/test.py @@ -111,7 +111,7 @@ def test_cmfd_write_matrices(): # Load flux vector from numpy output file flux_np = np.load('fluxvec.npy') # Load flux from data file - flux_dat = np.loadtxt("fluxvec.dat", delimiter='\n') + flux_dat = np.loadtxt("fluxvec.dat") # Compare flux from numpy file, .dat file, and from simulation assert(np.all(np.isclose(flux_np, cmfd_run._phi))) From 990b5449f537139c93b0c0ed77610379cc8ece18 Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Tue, 27 Dec 2022 22:10:33 -0600 Subject: [PATCH 075/120] Avoid use of np.float and np.int --- openmc/filter.py | 2 +- openmc/mgxs/groups.py | 2 +- openmc/mgxs/mdgxs.py | 4 ++-- openmc/mgxs/mgxs.py | 14 +++++++------- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/openmc/filter.py b/openmc/filter.py index 4d40117fe..11462a7fe 100644 --- a/openmc/filter.py +++ b/openmc/filter.py @@ -1741,7 +1741,7 @@ class DistribcellFilter(Filter): # Concatenate with DataFrame of distribcell instance IDs if level_df is not None: level_df = level_df.dropna(axis=1, how='all') - level_df = level_df.astype(np.int) + level_df = level_df.astype(int) df = pd.concat([level_df, df], axis=1) return df diff --git a/openmc/mgxs/groups.py b/openmc/mgxs/groups.py index f26218e03..d49f2d651 100644 --- a/openmc/mgxs/groups.py +++ b/openmc/mgxs/groups.py @@ -164,7 +164,7 @@ class EnergyGroups: if groups == 'all': return np.arange(self.num_groups) else: - indices = np.zeros(len(groups), dtype=np.int) + indices = np.zeros(len(groups), dtype=int) for i, group in enumerate(groups): cv.check_greater_than('group', group, 0) diff --git a/openmc/mgxs/mdgxs.py b/openmc/mgxs/mdgxs.py index 287a2961d..96192323e 100644 --- a/openmc/mgxs/mdgxs.py +++ b/openmc/mgxs/mdgxs.py @@ -586,7 +586,7 @@ class MDGXS(MGXS): if not isinstance(subdomains, str): cv.check_iterable_type('subdomains', subdomains, Integral) elif self.domain_type == 'distribcell': - subdomains = np.arange(self.num_subdomains, dtype=np.int) + subdomains = np.arange(self.num_subdomains, dtype=int) elif self.domain_type == 'mesh': xyz = [range(1, x + 1) for x in self.domain.dimension] subdomains = list(itertools.product(*xyz)) @@ -2473,7 +2473,7 @@ class MatrixMDGXS(MDGXS): if not isinstance(subdomains, str): cv.check_iterable_type('subdomains', subdomains, Integral) elif self.domain_type == 'distribcell': - subdomains = np.arange(self.num_subdomains, dtype=np.int) + subdomains = np.arange(self.num_subdomains, dtype=int) elif self.domain_type == 'mesh': xyz = [range(1, x + 1) for x in self.domain.dimension] subdomains = list(itertools.product(*xyz)) diff --git a/openmc/mgxs/mgxs.py b/openmc/mgxs/mgxs.py index c93b42b88..1077896cc 100644 --- a/openmc/mgxs/mgxs.py +++ b/openmc/mgxs/mgxs.py @@ -918,7 +918,7 @@ class MGXS: # Sum the atomic number densities for all nuclides if nuclides == 'sum': nuclides = self.get_nuclides() - densities = np.zeros(1, dtype=np.float) + densities = np.zeros(1, dtype=float) for nuclide in nuclides: densities[0] += self.get_nuclide_density(nuclide) @@ -931,7 +931,7 @@ class MGXS: # Tabulate the atomic number densities for each specified nuclide else: - densities = np.zeros(len(nuclides), dtype=np.float) + densities = np.zeros(len(nuclides), dtype=float) for i, nuclide in enumerate(nuclides): densities[i] = self.get_nuclide_density(nuclide) @@ -1720,7 +1720,7 @@ class MGXS: if not isinstance(subdomains, str): cv.check_iterable_type('subdomains', subdomains, Integral) elif self.domain_type == 'distribcell': - subdomains = np.arange(self.num_subdomains, dtype=np.int) + subdomains = np.arange(self.num_subdomains, dtype=int) elif self.domain_type == 'mesh': subdomains = list(self.domain.indices) else: @@ -1887,7 +1887,7 @@ class MGXS: if not isinstance(subdomains, str): cv.check_iterable_type('subdomains', subdomains, Integral) elif self.domain_type == 'distribcell': - subdomains = np.arange(self.num_subdomains, dtype=np.int) + subdomains = np.arange(self.num_subdomains, dtype=int) elif self.domain_type == 'sum(distribcell)': domain_filter = self.xs_tally.find_filter('sum(distribcell)') subdomains = domain_filter.bins @@ -1900,7 +1900,7 @@ class MGXS: if self.by_nuclide: if nuclides == 'all': nuclides = self.get_nuclides() - densities = np.zeros(len(nuclides), dtype=np.float) + densities = np.zeros(len(nuclides), dtype=float) elif nuclides == 'sum': nuclides = ['sum'] else: @@ -2447,7 +2447,7 @@ class MatrixMGXS(MGXS): if not isinstance(subdomains, str): cv.check_iterable_type('subdomains', subdomains, Integral) elif self.domain_type == 'distribcell': - subdomains = np.arange(self.num_subdomains, dtype=np.int) + subdomains = np.arange(self.num_subdomains, dtype=int) elif self.domain_type == 'mesh': subdomains = list(self.domain.indices) else: @@ -4785,7 +4785,7 @@ class ScatterMatrixXS(MatrixMGXS): if not isinstance(subdomains, str): cv.check_iterable_type('subdomains', subdomains, Integral) elif self.domain_type == 'distribcell': - subdomains = np.arange(self.num_subdomains, dtype=np.int) + subdomains = np.arange(self.num_subdomains, dtype=int) elif self.domain_type == 'mesh': subdomains = list(self.domain.indices) else: From 956e3f43414e57b0034764973b9ac3486bf02418 Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Wed, 30 Nov 2022 14:21:21 -0600 Subject: [PATCH 076/120] Make sure correct direction is applied when fission neutrons are anisotropic --- include/openmc/physics.h | 4 ++-- src/physics.cpp | 14 ++++++++------ 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/include/openmc/physics.h b/include/openmc/physics.h index 6e7327d38..f62f43a02 100644 --- a/include/openmc/physics.h +++ b/include/openmc/physics.h @@ -87,8 +87,8 @@ Direction sample_target_velocity(const Nuclide& nuc, double E, Direction u, Direction sample_cxs_target_velocity( double awr, double E, Direction u, double kT, uint64_t* seed); -void sample_fission_neutron(int i_nuclide, const Reaction& rx, double E_in, - SourceSite* site, uint64_t* seed); +void sample_fission_neutron( + int i_nuclide, const Reaction& rx, SourceSite* site, Particle& p); //! handles all reactions with a single secondary neutron (other than fission), //! i.e. level scattering, (n,np), (n,na), etc. diff --git a/src/physics.cpp b/src/physics.cpp index 7cb8040f6..2b3f534a1 100644 --- a/src/physics.cpp +++ b/src/physics.cpp @@ -212,7 +212,7 @@ void create_fission_sites(Particle& p, int i_nuclide, const Reaction& rx) site.surf_id = 0; // Sample delayed group and angle/energy for fission reaction - sample_fission_neutron(i_nuclide, rx, p.E(), &site, p.current_seed()); + sample_fission_neutron(i_nuclide, rx, &site, p); // Store fission site in bank if (use_fission_bank) { @@ -1031,9 +1031,13 @@ Direction sample_cxs_target_velocity( return vt * rotate_angle(u, mu, nullptr, seed); } -void sample_fission_neutron(int i_nuclide, const Reaction& rx, double E_in, - SourceSite* site, uint64_t* seed) +void sample_fission_neutron( + int i_nuclide, const Reaction& rx, SourceSite* site, Particle& p) { + // Get attributes of particle + double E_in = p.E(); + uint64_t* seed = p.current_seed(); + // Determine total nu, delayed nu, and delayed neutron fraction const auto& nuc {data::nuclides[i_nuclide]}; double nu_t = nuc->nu(E_in, Nuclide::EmissionMode::total); @@ -1096,9 +1100,7 @@ void sample_fission_neutron(int i_nuclide, const Reaction& rx, double E_in, } // Sample azimuthal angle uniformly in [0, 2*pi) and assign angle - // TODO: account for dependence on incident neutron? - Direction ref(1., 0., 0.); - site->u = rotate_angle(ref, mu, nullptr, seed); + site->u = rotate_angle(p.u(), mu, nullptr, seed); } void inelastic_scatter(const Nuclide& nuc, const Reaction& rx, Particle& p) From 6a790df0bef2a4fbb66bfc2d7253d2a59ee71a3b Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Tue, 27 Dec 2022 22:43:42 -0600 Subject: [PATCH 077/120] Update micro_xs regression test with update option --- tests/regression_tests/microxs/test.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/tests/regression_tests/microxs/test.py b/tests/regression_tests/microxs/test.py index dbfe3357b..f92f61479 100644 --- a/tests/regression_tests/microxs/test.py +++ b/tests/regression_tests/microxs/test.py @@ -4,9 +4,10 @@ from pathlib import Path import numpy as np import pytest import openmc - from openmc.deplete import MicroXS +from tests.regression_tests import config + CHAIN_FILE = Path(__file__).parents[2] / "chain_simple.xml" @pytest.fixture(scope="module") @@ -46,7 +47,10 @@ def model(): def test_from_model(model): - ref_xs = MicroXS.from_csv('test_reference.csv') test_xs = MicroXS.from_model(model, model.materials[0], CHAIN_FILE) + if config['update']: + test_xs.to_csv('test_reference.csv') + + ref_xs = MicroXS.from_csv('test_reference.csv') np.testing.assert_allclose(test_xs, ref_xs, rtol=1e-11) From fcdac0759ef109b37e318bca4ff31363d00e138b Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Tue, 27 Dec 2022 22:51:31 -0600 Subject: [PATCH 078/120] Remove numpy version hardcoding in pyproject.toml / GHA --- pyproject.toml | 2 +- tools/ci/gha-install.sh | 5 +---- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index ac6735593..d5970617a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,2 +1,2 @@ [build-system] -requires = ["setuptools", "wheel", "numpy<1.22", "cython"] +requires = ["setuptools", "wheel", "numpy", "cython"] diff --git a/tools/ci/gha-install.sh b/tools/ci/gha-install.sh index 7854a9dfc..fb81fcea2 100755 --- a/tools/ci/gha-install.sh +++ b/tools/ci/gha-install.sh @@ -2,12 +2,9 @@ set -ex # Upgrade pip, pytest, numpy before doing anything else. -# TODO: numpy 1.22 results in several failing tests, so we force a lower version -# for now (similar change made in pyproject.toml). When this is removed, those -# tests will need to be updated. pip install --upgrade pip pip install --upgrade pytest -pip install --upgrade "numpy<1.22" +pip install --upgrade numpy # Install NJOY 2016 ./tools/ci/gha-install-njoy.sh From 091241070f33916208d732dab41d84ab73ca24fd Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Fri, 23 Dec 2022 10:48:00 -0600 Subject: [PATCH 079/120] Update test results with numpy 1.24 and anisotropic fission --- .../adj_cell_rotation/results_true.dat | 2 +- .../asymmetric_lattice/results_true.dat | 2 +- .../cmfd_feed/results_true.dat | 614 +- .../cmfd_feed_2g/results_true.dat | 536 +- .../results_true.dat | 564 +- .../cmfd_feed_ng/results_true.dat | 708 +- .../cmfd_feed_rectlin/results_true.dat | 780 +- .../cmfd_feed_ref_d/results_true.dat | 564 +- .../cmfd_feed_rolling_window/results_true.dat | 564 +- .../cmfd_nofeed/results_true.dat | 614 +- .../cmfd_restart/results_true.dat | 614 +- .../complex_cell/results_true.dat | 18 +- .../confidence_intervals/results_true.dat | 6 +- .../dagmc/external/results_true.dat | 6 +- .../dagmc/legacy/results_true.dat | 6 +- .../dagmc/refl/results_true.dat | 6 +- .../dagmc/universes/results_true.dat | 2 +- .../regression_tests/density/results_true.dat | 2 +- .../last_step_reference_materials.xml | 1296 +- .../deplete_with_transport/test_reference.h5 | Bin 163736 -> 163736 bytes .../diff_tally/results_true.dat | 220 +- .../distribmat/results_true.dat | 2 +- .../eigenvalue_genperbatch/results_true.dat | 6 +- .../eigenvalue_no_inactive/results_true.dat | 2 +- .../energy_grid/results_true.dat | 2 +- .../regression_tests/entropy/results_true.dat | 20 +- .../filter_cellinstance/results_true.dat | 162 +- .../case-3/results_true.dat | 2 +- .../filter_mesh/results_true.dat | 2 +- .../filter_translations/results_true.dat | 674 +- .../infinite_cell/results_true.dat | 2 +- .../iso_in_lab/results_true.dat | 2 +- .../regression_tests/lattice/results_true.dat | 2 +- .../lattice_hex/results_true.dat | 2 +- .../lattice_hex_coincident/results_true.dat | 2 +- .../lattice_hex_x/results_true.dat | 2 +- .../lattice_multiple/results_true.dat | 2 +- .../lattice_rotated/results_true.dat | 2 +- .../mgxs_library_ce_to_mg/results_true.dat | 2 +- .../results_true.dat | 2 +- .../mgxs_library_condense/results_true.dat | 604 +- .../mgxs_library_correction/results_true.dat | 80 +- .../mgxs_library_distribcell/results_true.dat | 126 +- .../mgxs_library_hdf5/results_true.dat | 274 +- .../mgxs_library_histogram/results_true.dat | 672 +- .../mgxs_library_mesh/results_true.dat | 542 +- .../mgxs_library_no_nuclides/results_true.dat | 858 +- .../mgxs_library_nuclides/results_true.dat | 2 +- .../microxs/test_reference.csv | 24 +- .../multipole/results_true.dat | 54 +- .../regression_tests/output/results_true.dat | 2 +- .../periodic/results_true.dat | 2 +- .../periodic_6fold/results_true.dat | 2 +- .../periodic_hex/results_true.dat | 2 +- .../results_true.dat | 58 +- .../ptables_off/results_true.dat | 2 +- .../quadric_surfaces/results_true.dat | 2 +- .../reflective_plane/results_true.dat | 2 +- .../resonance_scattering/results_true.dat | 2 +- .../rotation/results_true.dat | 2 +- .../salphabeta/results_true.dat | 2 +- .../score_current/results_true.dat | 3178 +- tests/regression_tests/seed/results_true.dat | 2 +- .../regression_tests/source/results_true.dat | 2 +- .../source_file/results_true.dat | 2 +- .../source_mcpl_file/results_true.dat | 2 +- .../sourcepoint_batch/results_true.dat | 4 +- .../sourcepoint_latest/results_true.dat | 2 +- .../sourcepoint_restart/results_true.dat | 1472 +- .../statepoint_batch/results_true.dat | 2 +- .../statepoint_restart/results_true.dat | 2146 +- .../statepoint_sourcesep/results_true.dat | 2 +- .../surface_source/surface_source_true.h5 | Bin 106144 -> 106144 bytes .../surface_tally/results_true.dat | 84 +- .../survival_biasing/results_true.dat | 34 +- .../regression_tests/tallies/results_true.dat | 2 +- .../tally_aggregation/results_true.dat | 194 +- .../tally_arithmetic/results_true.dat | 98 +- .../tally_assumesep/results_true.dat | 14 +- .../tally_nuclides/results_true.dat | 50 +- .../tally_slice_merge/results_true.dat | 104 +- tests/regression_tests/torus/results_true.dat | 2 +- tests/regression_tests/trace/results_true.dat | 2 +- .../track_output/results_true.dat | 194 +- .../translation/results_true.dat | 2 +- .../trigger_batch_interval/results_true.dat | 50 +- .../results_true.dat | 50 +- .../trigger_no_status/results_true.dat | 50 +- .../results_true.dat | 6 +- .../trigger_tallies/results_true.dat | 50 +- tests/regression_tests/triso/results_true.dat | 2 +- .../uniform_fs/results_true.dat | 2 +- .../universe/results_true.dat | 2 +- .../unstructured_mesh/results_true.dat | 30000 +++------------- .../white_plane/results_true.dat | 2 +- tests/unit_tests/test_deplete_resultslist.py | 10 +- 96 files changed, 13550 insertions(+), 35598 deletions(-) diff --git a/tests/regression_tests/adj_cell_rotation/results_true.dat b/tests/regression_tests/adj_cell_rotation/results_true.dat index 2bdfe4330..b3df12e71 100644 --- a/tests/regression_tests/adj_cell_rotation/results_true.dat +++ b/tests/regression_tests/adj_cell_rotation/results_true.dat @@ -1,2 +1,2 @@ k-combined: -4.381997E-01 1.286263E-03 +4.403987E-01 1.514158E-03 diff --git a/tests/regression_tests/asymmetric_lattice/results_true.dat b/tests/regression_tests/asymmetric_lattice/results_true.dat index 66ee9cdd2..741327d80 100644 --- a/tests/regression_tests/asymmetric_lattice/results_true.dat +++ b/tests/regression_tests/asymmetric_lattice/results_true.dat @@ -1 +1 @@ -73bae264aaca0988fd2ae207722461d161ddbcf9aef083b99a2efc536b09665bbe839d6cae89b32ebab3089a820a2c35ae63a88d5869f0c91b0d6c2f2e090e55 \ No newline at end of file +b0ca1fb0436732188b1a199b3250ca9a33782f8fc379b0f7ff9c582e0c794b0a0470df063cafd0b05e802b26f61eaaf9ff5c0a8a672a933246acf49eed3ebf9f \ No newline at end of file diff --git a/tests/regression_tests/cmfd_feed/results_true.dat b/tests/regression_tests/cmfd_feed/results_true.dat index 90d8820d0..f5f22d9ac 100644 --- a/tests/regression_tests/cmfd_feed/results_true.dat +++ b/tests/regression_tests/cmfd_feed/results_true.dat @@ -1,117 +1,117 @@ k-combined: -1.159021E+00 8.924006E-03 +1.164262E+00 9.207592E-03 tally 1: -1.140162E+01 -1.306940E+01 -2.093739E+01 -4.404780E+01 -2.914408E+01 -8.521010E+01 -3.483677E+01 -1.216824E+02 -3.778463E+01 -1.429632E+02 -3.810371E+01 -1.455108E+02 -3.465248E+01 -1.207868E+02 -2.862033E+01 -8.218833E+01 -2.086025E+01 -4.365941E+01 -1.130798E+01 -1.286509E+01 +1.156972E+01 +1.339924E+01 +2.136306E+01 +4.567185E+01 +2.859527E+01 +8.195821E+01 +3.470754E+01 +1.207851E+02 +3.766403E+01 +1.422263E+02 +3.778821E+01 +1.432660E+02 +3.573197E+01 +1.278854E+02 +2.849979E+01 +8.135515E+01 +2.073803E+01 +4.303374E+01 +1.112117E+01 +1.242944E+01 tally 2: -2.234393E+01 -2.516414E+01 -1.555024E+01 -1.218205E+01 -4.087743E+01 -8.401702E+01 -2.883717E+01 -4.185393E+01 -5.635166E+01 -1.595225E+02 -3.998857E+01 -8.040398E+01 -6.887126E+01 -2.379185E+02 -4.903103E+01 -1.206174E+02 -7.452051E+01 -2.785675E+02 -5.295380E+01 -1.406900E+02 -7.495422E+01 -2.819070E+02 -5.333191E+01 -1.427474E+02 -6.921815E+01 -2.408568E+02 -4.928246E+01 -1.221076E+02 -5.668548E+01 -1.612556E+02 -4.035856E+01 -8.181159E+01 -4.259952E+01 -9.112630E+01 -3.026717E+01 -4.600625E+01 -2.310563E+01 -2.688378E+01 -1.615934E+01 -1.315528E+01 +2.388054E+01 +2.875255E+01 +1.667791E+01 +1.403426E+01 +4.224771E+01 +8.942109E+01 +2.993088E+01 +4.490335E+01 +5.689839E+01 +1.625557E+02 +4.043633E+01 +8.212299E+01 +6.764024E+01 +2.297126E+02 +4.807902E+01 +1.161468E+02 +7.314835E+01 +2.684645E+02 +5.203584E+01 +1.359261E+02 +7.375727E+01 +2.733105E+02 +5.252944E+01 +1.386205E+02 +6.909571E+01 +2.397721E+02 +4.922548E+01 +1.217465E+02 +5.685978E+01 +1.621746E+02 +4.051938E+01 +8.237277E+01 +4.185562E+01 +8.784067E+01 +2.983570E+01 +4.467414E+01 +2.238373E+01 +2.520356E+01 +1.566758E+01 +1.234103E+01 tally 3: -1.496375E+01 -1.128154E+01 -9.905641E-01 -5.125710E-02 -2.774937E+01 -3.877241E+01 -1.786861E+00 -1.627655E-01 -3.849739E+01 -7.453828E+01 -2.494135E+00 -3.158098E-01 -4.724085E+01 -1.119901E+02 -3.031174E+00 -4.653741E-01 -5.096719E+01 -1.303552E+02 -3.254375E+00 -5.351020E-01 -5.133808E+01 -1.322892E+02 -3.383595E+00 -5.798798E-01 -4.756072E+01 -1.137527E+02 -3.001917E+00 -4.558247E-01 -3.887437E+01 -7.593416E+01 -2.517908E+00 -3.221926E-01 -2.910687E+01 -4.255173E+01 -1.817765E+00 -1.678763E-01 -1.557241E+01 -1.222026E+01 -9.852737E-01 -5.002659E-02 +1.609520E+01 +1.307542E+01 +1.033429E+00 +5.510889E-02 +2.877073E+01 +4.149542E+01 +1.964219E+00 +1.954692E-01 +3.896816E+01 +7.629752E+01 +2.484053E+00 +3.103733E-01 +4.634285E+01 +1.079367E+02 +2.974750E+00 +4.468223E-01 +5.007964E+01 +1.259202E+02 +3.181802E+00 +5.103621E-01 +5.058915E+01 +1.286193E+02 +3.249442E+00 +5.337712E-01 +4.744464E+01 +1.131026E+02 +3.067644E+00 +4.736335E-01 +3.900632E+01 +7.634433E+01 +2.443552E+00 +3.028060E-01 +2.874166E+01 +4.146375E+01 +1.810421E+00 +1.671667E-01 +1.509222E+01 +1.145579E+01 +1.014919E+00 +5.391053E-02 tally 4: -3.047490E+00 -4.661458E-01 +3.148231E+00 +4.974555E-01 0.000000E+00 0.000000E+00 -2.635775E+00 -3.524426E-01 -5.357229E+00 -1.440049E+00 +2.805439E+00 +3.982239E-01 +5.574031E+00 +1.561105E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -128,14 +128,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -5.357229E+00 -1.440049E+00 -2.635775E+00 -3.524426E-01 -4.982072E+00 -1.251449E+00 -7.228146E+00 -2.620353E+00 +5.574031E+00 +1.561105E+00 +2.805439E+00 +3.982239E-01 +5.171038E+00 +1.344877E+00 +7.372031E+00 +2.725420E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -152,14 +152,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -7.228146E+00 -2.620353E+00 -4.982072E+00 -1.251449E+00 -7.082265E+00 -2.520047E+00 -8.736529E+00 -3.831244E+00 +7.372031E+00 +2.725420E+00 +5.171038E+00 +1.344877E+00 +6.946847E+00 +2.424850E+00 +8.496610E+00 +3.627542E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -176,14 +176,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -8.736529E+00 -3.831244E+00 -7.082265E+00 -2.520047E+00 -8.474631E+00 -3.607043E+00 -9.346623E+00 -4.390819E+00 +8.496610E+00 +3.627542E+00 +6.946847E+00 +2.424850E+00 +8.479501E+00 +3.607280E+00 +9.261869E+00 +4.305912E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -200,14 +200,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -9.346623E+00 -4.390819E+00 -8.474631E+00 -3.607043E+00 -9.496684E+00 -4.522478E+00 -9.532822E+00 -4.559003E+00 +9.261869E+00 +4.305912E+00 +8.479501E+00 +3.607280E+00 +9.232858E+00 +4.278432E+00 +9.306384E+00 +4.348594E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -224,14 +224,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -9.532822E+00 -4.559003E+00 -9.496684E+00 -4.522478E+00 -9.404949E+00 -4.446260E+00 -8.550930E+00 -3.668401E+00 +9.306384E+00 +4.348594E+00 +9.232858E+00 +4.278432E+00 +9.299764E+00 +4.347828E+00 +8.511976E+00 +3.639893E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -248,14 +248,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -8.550930E+00 -3.668401E+00 -9.404949E+00 -4.446260E+00 -8.785273E+00 -3.874792E+00 -7.128863E+00 -2.554326E+00 +8.511976E+00 +3.639893E+00 +9.299764E+00 +4.347828E+00 +8.726086E+00 +3.819567E+00 +7.147277E+00 +2.562747E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -272,14 +272,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -7.128863E+00 -2.554326E+00 -8.785273E+00 -3.874792E+00 -7.408549E+00 -2.755885E+00 -5.094992E+00 -1.305737E+00 +7.147277E+00 +2.562747E+00 +8.726086E+00 +3.819567E+00 +7.218790E+00 +2.612243E+00 +5.018287E+00 +1.263077E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -296,14 +296,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -5.094992E+00 -1.305737E+00 -7.408549E+00 -2.755885E+00 -5.532149E+00 -1.537289E+00 -2.812344E+00 -3.997146E-01 +5.018287E+00 +1.263077E+00 +7.218790E+00 +2.612243E+00 +5.443494E+00 +1.487018E+00 +2.732334E+00 +3.773047E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -320,12 +320,12 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -2.812344E+00 -3.997146E-01 -5.532149E+00 -1.537289E+00 -3.063251E+00 -4.728672E-01 +2.732334E+00 +3.773047E-01 +5.443494E+00 +1.487018E+00 +3.044773E+00 +4.655756E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -345,144 +345,144 @@ tally 4: 0.000000E+00 0.000000E+00 tally 5: -1.496000E+01 -1.127586E+01 -2.280081E+00 -2.675609E-01 -2.774503E+01 -3.876011E+01 -3.908836E+00 -7.703029E-01 -3.848706E+01 -7.449836E+01 -5.299924E+00 -1.422782E+00 -4.723172E+01 -1.119459E+02 -6.450156E+00 -2.105590E+00 -5.095931E+01 -1.303132E+02 -7.050681E+00 -2.515092E+00 -5.133412E+01 -1.322694E+02 -6.853429E+00 -2.384127E+00 -4.754621E+01 -1.136848E+02 -6.370026E+00 -2.058896E+00 -3.886829E+01 -7.591042E+01 -5.266816E+00 -1.400495E+00 -2.910277E+01 -4.253981E+01 -4.090844E+00 -8.442500E-01 -1.556949E+01 -1.221526E+01 -2.266123E+00 -2.641551E-01 +1.609029E+01 +1.306718E+01 +2.230601E+00 +2.559496E-01 +2.876780E+01 +4.148686E+01 +3.835952E+00 +7.456562E-01 +3.895738E+01 +7.625344E+01 +4.841024E+00 +1.197335E+00 +4.633595E+01 +1.079043E+02 +6.236821E+00 +1.963311E+00 +5.007472E+01 +1.258967E+02 +6.749745E+00 +2.297130E+00 +5.058336E+01 +1.285894E+02 +6.727612E+00 +2.315656E+00 +4.743869E+01 +1.130735E+02 +6.338193E+00 +2.042159E+00 +3.899838E+01 +7.631289E+01 +5.187573E+00 +1.359733E+00 +2.873434E+01 +4.144233E+01 +3.815610E+00 +7.367619E-01 +1.509020E+01 +1.145268E+01 +2.125767E+00 +2.341894E-01 cmfd indices 1.000000E+01 1.000000E+00 1.000000E+00 1.000000E+00 k cmfd -1.161531E+00 -1.182724E+00 -1.169653E+00 -1.164722E+00 -1.164583E+00 -1.162952E+00 -1.167024E+00 -1.164509E+00 -1.165693E+00 -1.170623E+00 -1.166618E+00 -1.170805E+00 -1.170962E+00 -1.170964E+00 -1.168224E+00 -1.169864E+00 +1.129918E+00 +1.143848E+00 +1.147976E+00 +1.151534E+00 +1.152378E+00 +1.148219E+00 +1.150402E+00 +1.154647E+00 +1.156159E+00 +1.160048E+00 +1.167441E+00 +1.168163E+00 +1.168629E+00 +1.164120E+00 +1.165051E+00 +1.169177E+00 cmfd entropy -3.206619E+00 -3.205815E+00 -3.208678E+00 -3.210820E+00 -3.217023E+00 -3.215014E+00 -3.214592E+00 -3.215913E+00 -3.214998E+00 -3.213644E+00 -3.210755E+00 -3.210496E+00 -3.212488E+00 -3.211553E+00 -3.212999E+00 -3.214052E+00 +3.224769E+00 +3.225945E+00 +3.227421E+00 +3.226174E+00 +3.224429E+00 +3.227049E+00 +3.230710E+00 +3.230315E+00 +3.226825E+00 +3.226655E+00 +3.226588E+00 +3.224155E+00 +3.223246E+00 +3.222640E+00 +3.223920E+00 +3.222838E+00 cmfd balance -4.99833E-03 -5.64677E-03 -3.62795E-03 -3.91962E-03 -3.87172E-03 -2.48450E-03 -3.15554E-03 -2.49335E-03 -2.31973E-03 -2.19156E-03 -2.31352E-03 -2.03401E-03 -1.80242E-03 -1.65868E-03 -1.47543E-03 -1.49706E-03 +3.90454E-03 +4.08089E-03 +3.46511E-03 +4.09535E-03 +2.62009E-03 +2.23559E-03 +2.54033E-03 +2.12799E-03 +2.25864E-03 +1.85766E-03 +1.49916E-03 +1.63471E-03 +1.48377E-03 +1.59800E-03 +1.37354E-03 +1.32853E-03 cmfd dominance ratio -5.283E-01 -5.289E-01 -5.305E-01 -5.327E-01 -5.377E-01 -5.360E-01 -5.353E-01 -4.983E-01 -5.379E-01 -5.370E-01 -5.359E-01 -5.349E-01 -5.364E-01 -5.347E-01 -5.360E-01 -5.378E-01 +5.539E-01 +5.537E-01 +5.536E-01 +5.515E-01 +5.512E-01 +5.514E-01 +5.518E-01 +5.507E-01 +5.500E-01 +5.497E-01 +5.477E-01 +5.461E-01 +5.444E-01 +5.445E-01 +5.454E-01 +5.441E-01 cmfd openmc source comparison -1.291827E-02 -1.027137E-02 -8.738370E-03 -6.854409E-03 -4.188357E-03 -4.941359E-03 -5.139239E-03 -4.244784E-03 -4.240559E-03 -3.375424E-03 -3.716858E-03 -3.595700E-03 -3.626952E-03 -3.999302E-03 -2.431760E-03 -1.673200E-03 +9.875240E-03 +1.106163E-02 +9.847628E-03 +6.065921E-03 +5.772039E-03 +4.615656E-03 +4.244331E-03 +3.694299E-03 +3.545814E-03 +3.213063E-03 +3.467537E-03 +3.383489E-03 +3.697591E-03 +3.937358E-03 +3.369124E-03 +3.190359E-03 cmfd source -4.185460E-02 -7.636314E-02 -1.075536E-01 -1.307167E-01 -1.400879E-01 -1.459944E-01 -1.297413E-01 -1.084649E-01 -7.772031E-02 -4.150306E-02 +4.360494E-02 +8.397599E-02 +1.074181E-01 +1.294531E-01 +1.385611E-01 +1.407934E-01 +1.325191E-01 +1.044311E-01 +7.660359E-02 +4.263941E-02 diff --git a/tests/regression_tests/cmfd_feed_2g/results_true.dat b/tests/regression_tests/cmfd_feed_2g/results_true.dat index d27e291e7..2b61d9f4e 100644 --- a/tests/regression_tests/cmfd_feed_2g/results_true.dat +++ b/tests/regression_tests/cmfd_feed_2g/results_true.dat @@ -1,112 +1,112 @@ k-combined: -1.021592E+00 7.184545E-03 +1.035567E+00 9.463160E-03 tally 1: -1.158654E+02 -1.342707E+03 -1.151877E+02 -1.327269E+03 -1.153781E+02 -1.331661E+03 -1.151151E+02 -1.325578E+03 +1.146535E+02 +1.315267E+03 +1.157458E+02 +1.340166E+03 +1.140491E+02 +1.301364E+03 +1.146589E+02 +1.315433E+03 tally 2: -4.299142E+01 -9.258204E+01 -6.324043E+01 -2.003732E+02 -1.860419E+02 -1.731270E+03 -1.037502E+02 -5.383979E+02 -4.229132E+01 -8.952923E+01 -6.264581E+01 -1.965074E+02 -1.838340E+02 -1.690620E+03 -1.029415E+02 -5.299801E+02 -4.314759E+01 -9.337463E+01 -6.404361E+01 -2.056541E+02 -1.836548E+02 -1.687065E+03 -1.028141E+02 -5.287334E+02 -4.256836E+01 -9.079806E+01 -6.336524E+01 -2.012627E+02 -1.837730E+02 -1.689124E+03 -1.021852E+02 -5.222598E+02 +4.319968E+01 +9.360083E+01 +6.373035E+01 +2.038056E+02 +1.889646E+02 +1.812892E+03 +1.024866E+02 +5.254528E+02 +4.323262E+01 +9.360200E+01 +6.363111E+01 +2.028178E+02 +1.849746E+02 +1.711533E+03 +1.034532E+02 +5.352768E+02 +4.296541E+01 +9.249656E+01 +6.346919E+01 +2.018659E+02 +1.888697E+02 +1.812037E+03 +1.025707E+02 +5.262261E+02 +4.691085E+01 +1.269707E+02 +6.299377E+01 +1.990497E+02 +1.853864E+02 +1.719984E+03 +1.023015E+02 +5.235858E+02 tally 3: -5.973628E+01 -1.787876E+02 +6.034963E+01 +1.827718E+02 0.000000E+00 0.000000E+00 -1.724004E-02 -2.766372E-05 -4.379655E+00 -9.682433E-01 -3.484795E+00 -6.104792E-01 +1.865665E-02 +4.244195E-05 +4.170941E+00 +8.769372E-01 +3.453368E+00 +5.989168E-01 0.000000E+00 0.000000E+00 -9.874445E+01 -4.877157E+02 -8.886034E-01 -4.009294E-02 -5.923584E+01 -1.757014E+02 +9.743205E+01 +4.749420E+02 +8.570316E-01 +3.807993E-02 +6.005903E+01 +1.807233E+02 0.000000E+00 0.000000E+00 -1.733168E-02 -3.950365E-05 -4.212697E+00 -8.996477E-01 -3.503046E+00 -6.150657E-01 +1.885450E-02 +3.653402E-05 +4.323863E+00 +9.447512E-01 +3.465465E+00 +6.022861E-01 0.000000E+00 0.000000E+00 -9.780995E+01 -4.784706E+02 -8.648283E-01 -3.899383E-02 -6.057017E+01 -1.839745E+02 +9.843481E+01 +4.846158E+02 +9.048150E-01 +4.205551E-02 +5.996660E+01 +1.802150E+02 0.000000E+00 0.000000E+00 -2.056597E-02 -3.726744E-05 -4.280120E+00 -9.288225E-01 -3.378205E+00 -5.730279E-01 +1.221444E-02 +2.263445E-05 +4.301287E+00 +9.309882E-01 +3.456076E+00 +5.992144E-01 0.000000E+00 0.000000E+00 -9.790474E+01 -4.794523E+02 -9.073765E-01 -4.204720E-02 -5.990874E+01 -1.799224E+02 +9.761231E+01 +4.765834E+02 +8.434644E-01 +3.728180E-02 +5.961891E+01 +1.783106E+02 0.000000E+00 0.000000E+00 -1.881508E-02 -4.239902E-05 -4.206916E+00 -8.926965E-01 -3.478009E+00 -6.067461E-01 +1.500709E-02 +3.541280E-05 +4.155669E+00 +8.713442E-01 +3.455342E+00 +6.006426E-01 0.000000E+00 0.000000E+00 -9.715787E+01 -4.721453E+02 -8.602457E-01 -3.786346E-02 +9.726798E+01 +4.733393E+02 +9.202611E-01 +4.390503E-02 tally 4: 0.000000E+00 0.000000E+00 @@ -116,14 +116,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -8.735001E+00 -3.821211E+00 -3.708124E+01 -6.880811E+01 -8.713175E+00 -3.807176E+00 -3.703536E+01 -6.862245E+01 +8.943264E+00 +4.008855E+00 +3.661063E+01 +6.704808E+01 +8.945553E+00 +4.011707E+00 +3.696832E+01 +6.835286E+01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -132,14 +132,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -8.851322E+00 -3.930766E+00 -3.716154E+01 -6.908449E+01 -8.892499E+00 -3.970458E+00 -3.718644E+01 -6.918810E+01 +8.844569E+00 +3.924591E+00 +3.666726E+01 +6.726522E+01 +8.769637E+00 +3.855006E+00 +3.654115E+01 +6.680777E+01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -156,14 +156,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -8.713175E+00 -3.807176E+00 -3.703536E+01 -6.862245E+01 -8.735001E+00 -3.821211E+00 -3.708124E+01 -6.880811E+01 +8.945553E+00 +4.011707E+00 +3.696832E+01 +6.835286E+01 +8.943264E+00 +4.008855E+00 +3.661063E+01 +6.704808E+01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -180,14 +180,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -8.915310E+00 -3.982710E+00 -3.682783E+01 -6.786998E+01 -8.800405E+00 -3.881868E+00 -3.692302E+01 -6.819716E+01 +8.648474E+00 +3.752219E+00 +3.689442E+01 +6.808997E+01 +8.757378E+00 +3.850408E+00 +3.716920E+01 +6.909715E+01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -212,22 +212,22 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -8.659918E+00 -3.761908E+00 -3.709957E+01 -6.884298E+01 -8.796329E+00 -3.881588E+00 -3.693599E+01 -6.825932E+01 -8.892499E+00 -3.970458E+00 -3.718644E+01 -6.918810E+01 -8.851322E+00 -3.930766E+00 -3.716154E+01 -6.908449E+01 +8.783669E+00 +3.870748E+00 +3.687358E+01 +6.802581E+01 +8.755250E+00 +3.846298E+00 +3.660278E+01 +6.704349E+01 +8.769637E+00 +3.855006E+00 +3.654115E+01 +6.680777E+01 +8.844569E+00 +3.924591E+00 +3.666726E+01 +6.726522E+01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -252,14 +252,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -8.796329E+00 -3.881588E+00 -3.693599E+01 -6.825932E+01 -8.659918E+00 -3.761908E+00 -3.709957E+01 -6.884298E+01 +8.755250E+00 +3.846298E+00 +3.660278E+01 +6.704349E+01 +8.783669E+00 +3.870748E+00 +3.687358E+01 +6.802581E+01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -268,14 +268,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -8.800405E+00 -3.881868E+00 -3.692302E+01 -6.819716E+01 -8.915310E+00 -3.982710E+00 -3.682783E+01 -6.786998E+01 +8.757378E+00 +3.850408E+00 +3.716920E+01 +6.909715E+01 +8.648474E+00 +3.752219E+00 +3.689442E+01 +6.808997E+01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -301,133 +301,133 @@ tally 4: 0.000000E+00 0.000000E+00 tally 5: -5.975352E+01 -1.788900E+02 -1.022213E+02 -5.226556E+02 -1.378440E+01 -9.544964E+00 -4.668065E+01 -1.090372E+02 -5.925317E+01 -1.758044E+02 -1.013043E+02 -5.132587E+02 -1.356187E+01 -9.210736E+00 -4.606346E+01 -1.061497E+02 -6.059074E+01 -1.840993E+02 -1.012721E+02 -5.130091E+02 -1.356441E+01 -9.262377E+00 -4.634250E+01 -1.074283E+02 -5.992755E+01 -1.800342E+02 -1.006299E+02 -5.065012E+02 -1.370402E+01 -9.450980E+00 -4.575433E+01 -1.047310E+02 +6.036829E+01 +1.828885E+02 +1.008777E+02 +5.091033E+02 +1.353211E+01 +9.188155E+00 +4.618716E+01 +1.067410E+02 +6.007789E+01 +1.808371E+02 +1.018892E+02 +5.192269E+02 +1.357961E+01 +9.247052E+00 +4.618560E+01 +1.067058E+02 +5.997882E+01 +1.802895E+02 +1.010597E+02 +5.108478E+02 +1.374955E+01 +9.502494E+00 +4.619500E+01 +1.067547E+02 +5.963392E+01 +1.783999E+02 +1.007134E+02 +5.074700E+02 +1.319398E+01 +8.734106E+00 +4.586295E+01 +1.052870E+02 cmfd indices 2.000000E+00 2.000000E+00 1.000000E+00 2.000000E+00 k cmfd -1.037231E+00 -1.035671E+00 -1.042384E+00 -1.033525E+00 -1.031304E+00 -1.029654E+00 -1.031704E+00 -1.032213E+00 -1.030500E+00 -1.036227E+00 -1.034924E+00 -1.035753E+00 -1.034679E+00 -1.035096E+00 -1.033818E+00 -1.030023E+00 +1.018115E+00 +1.022665E+00 +1.020323E+00 +1.020653E+00 +1.021036E+00 +1.020623E+00 +1.021482E+00 +1.025450E+00 +1.027292E+00 +1.028065E+00 +1.027065E+00 +1.024275E+00 +1.025309E+00 +1.026039E+00 +1.026700E+00 +1.023865E+00 cmfd entropy -1.999702E+00 -1.999790E+00 -1.999713E+00 -1.999852E+00 -1.999820E+00 -1.999667E+00 -1.999553E+00 -1.999649E+00 -1.999398E+00 -1.999527E+00 -1.999648E+00 -1.999607E+00 +1.998965E+00 +1.999214E+00 +1.999348E+00 +1.999366E+00 +1.999564E+00 +1.999453E+00 1.999533E+00 -1.999684E+00 -1.999714E+00 -1.999812E+00 +1.999630E+00 +1.999739E+00 +1.999588E+00 +1.999581E+00 +1.999719E+00 +1.999773E+00 +1.999764E+00 +1.999821E+00 +1.999843E+00 cmfd balance -7.33587E-04 -1.00987E-03 -8.26985E-04 -5.20809E-04 -6.47932E-04 -9.69990E-04 -8.62860E-04 -4.92175E-04 -5.80764E-04 -4.49167E-04 -4.05541E-04 -4.13811E-04 -4.27271E-04 -3.64944E-04 -3.43522E-04 -2.82842E-04 +5.73174E-04 +7.55398E-04 +1.46671E-03 +6.39625E-04 +8.19008E-04 +1.93449E-03 +1.15900E-03 +1.01690E-03 +5.62788E-04 +6.90450E-04 +6.01060E-04 +5.73418E-04 +4.37190E-04 +4.82966E-04 +4.09700E-04 +3.45096E-04 cmfd dominance ratio -6.259E-03 -6.252E-03 -6.292E-03 -6.347E-03 -6.360E-03 -6.403E-03 -6.375E-03 -6.400E-03 -6.374E-03 -6.343E-03 -6.331E-03 -6.312E-03 -6.305E-03 -6.271E-03 -6.267E-03 -6.265E-03 +6.264E-03 +6.142E-03 +5.987E-03 +6.082E-03 +5.895E-03 +5.939E-03 +5.910E-03 +5.948E-03 +6.013E-03 +6.017E-03 +6.024E-03 +6.008E-03 +5.976E-03 +5.987E-03 +5.967E-03 +5.929E-03 cmfd openmc source comparison -7.908947E-05 -7.452591E-05 -9.249409E-05 -8.223037E-05 -7.355125E-05 -8.926808E-05 -9.363510E-05 -7.628519E-05 -9.019193E-05 -7.130550E-05 -5.947633E-05 -5.744157E-05 -6.093797E-05 -4.505304E-05 -4.430670E-05 -3.019083E-05 +4.832872E-05 +6.552342E-05 +7.516800E-05 +7.916087E-05 +9.022260E-05 +8.574478E-05 +7.891622E-05 +7.281636E-05 +7.750571E-05 +6.565408E-05 +6.078665E-05 +5.834343E-05 +4.758176E-05 +5.723990E-05 +4.994116E-05 +4.116808E-05 cmfd source -2.557606E-01 -2.464707E-01 -2.518098E-01 -2.459589E-01 +2.455663E-01 +2.553511E-01 +2.512257E-01 +2.478570E-01 0.000000E+00 0.000000E+00 0.000000E+00 diff --git a/tests/regression_tests/cmfd_feed_expanding_window/results_true.dat b/tests/regression_tests/cmfd_feed_expanding_window/results_true.dat index a235a9f6f..8fd8cdbb8 100644 --- a/tests/regression_tests/cmfd_feed_expanding_window/results_true.dat +++ b/tests/regression_tests/cmfd_feed_expanding_window/results_true.dat @@ -1,117 +1,117 @@ k-combined: -1.184725E+00 9.808181E-03 +1.167865E+00 7.492213E-03 tally 1: -1.121111E+01 -1.261033E+01 -2.101271E+01 -4.433294E+01 -2.782926E+01 -7.776546E+01 -3.351044E+01 -1.125084E+02 -3.625691E+01 -1.319666E+02 -3.741881E+01 -1.403776E+02 -3.538049E+01 -1.255798E+02 -3.030311E+01 -9.228152E+01 -2.188389E+01 -4.811272E+01 -1.172417E+01 -1.379179E+01 +1.146860E+01 +1.318884E+01 +2.161527E+01 +4.685283E+01 +2.951158E+01 +8.733566E+01 +3.521610E+01 +1.242821E+02 +3.774236E+01 +1.426501E+02 +3.727918E+01 +1.391158E+02 +3.377176E+01 +1.143839E+02 +2.904497E+01 +8.452907E+01 +2.090871E+01 +4.384549E+01 +1.078642E+01 +1.168086E+01 tally 2: -1.146940E+00 -1.315471E+00 -8.068187E-01 -6.509564E-01 -2.070090E+00 -4.285274E+00 -1.469029E+00 -2.158045E+00 -2.703224E+00 -7.307421E+00 -1.895589E+00 -3.593259E+00 -3.567634E+00 -1.272801E+01 -2.541493E+00 -6.459185E+00 -3.937463E+00 -1.550361E+01 -2.770463E+00 -7.675465E+00 -3.960472E+00 -1.568534E+01 -2.792668E+00 -7.798997E+00 -3.243459E+00 -1.052002E+01 -2.296673E+00 -5.274706E+00 -2.794726E+00 -7.810492E+00 -1.953143E+00 -3.814769E+00 -2.187302E+00 -4.784292E+00 -1.544500E+00 -2.385481E+00 -1.199609E+00 -1.439061E+00 -8.356062E-01 -6.982377E-01 +1.136810E+00 +1.292338E+00 +7.987303E-01 +6.379700E-01 +2.266938E+00 +5.139009E+00 +1.613483E+00 +2.603328E+00 +3.046349E+00 +9.280239E+00 +2.182459E+00 +4.763126E+00 +3.568068E+00 +1.273111E+01 +2.532456E+00 +6.413333E+00 +3.989504E+00 +1.591614E+01 +2.848301E+00 +8.112818E+00 +3.853133E+00 +1.484663E+01 +2.718493E+00 +7.390202E+00 +3.478138E+00 +1.209745E+01 +2.467281E+00 +6.087476E+00 +2.952220E+00 +8.715605E+00 +2.103261E+00 +4.423706E+00 +1.917459E+00 +3.676649E+00 +1.378369E+00 +1.899902E+00 +1.048240E+00 +1.098807E+00 +7.511947E-01 +5.642934E-01 tally 3: -7.817522E-01 -6.111366E-01 -5.930056E-02 -3.516556E-03 -1.426374E+00 -2.034542E+00 -8.539281E-02 -7.291931E-03 -1.815687E+00 -3.296718E+00 -1.221592E-01 -1.492286E-02 -2.447191E+00 -5.988744E+00 -1.624835E-01 -2.640090E-02 -2.670084E+00 -7.129351E+00 -1.838317E-01 -3.379411E-02 -2.683007E+00 -7.198528E+00 -1.719716E-01 -2.957424E-02 -2.215446E+00 -4.908202E+00 -1.707856E-01 -2.916773E-02 -1.872330E+00 -3.505620E+00 -1.209731E-01 -1.463450E-02 -1.484167E+00 -2.202752E+00 -1.114851E-01 -1.242892E-02 -8.018653E-01 -6.429879E-01 -5.692854E-02 -3.240858E-03 +7.701233E-01 +5.930898E-01 +4.481585E-02 +2.008461E-03 +1.547307E+00 +2.394158E+00 +1.226539E-01 +1.504398E-02 +2.106373E+00 +4.436806E+00 +1.450618E-01 +2.104294E-02 +2.437654E+00 +5.942157E+00 +1.521380E-01 +2.314598E-02 +2.754639E+00 +7.588038E+00 +1.745460E-01 +3.046629E-02 +2.623852E+00 +6.884601E+00 +1.851602E-01 +3.428432E-02 +2.376886E+00 +5.649588E+00 +1.615729E-01 +2.610582E-02 +2.021856E+00 +4.087900E+00 +1.533174E-01 +2.350622E-02 +1.333190E+00 +1.777397E+00 +7.076188E-02 +5.007243E-03 +7.258527E-01 +5.268622E-01 +3.656030E-02 +1.336656E-03 tally 4: -1.404203E-01 -1.971786E-02 +1.667432E-01 +2.780328E-02 0.000000E+00 0.000000E+00 -1.383954E-01 -1.915329E-02 -2.626162E-01 -6.896729E-02 +1.292567E-01 +1.670730E-02 +2.813370E-01 +7.915052E-02 0.000000E+00 0.000000E+00 0.000000E+00 @@ -128,14 +128,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -2.626162E-01 -6.896729E-02 -1.383954E-01 -1.915329E-02 -2.300607E-01 -5.292793E-02 -3.213893E-01 -1.032911E-01 +2.813370E-01 +7.915052E-02 +1.292567E-01 +1.670730E-02 +2.670549E-01 +7.131835E-02 +4.055324E-01 +1.644566E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -152,14 +152,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -3.213893E-01 -1.032911E-01 -2.300607E-01 -5.292793E-02 -3.621797E-01 -1.311741E-01 -4.326081E-01 -1.871498E-01 +4.055324E-01 +1.644566E-01 +2.670549E-01 +7.131835E-02 +3.848125E-01 +1.480807E-01 +4.809430E-01 +2.313062E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -176,14 +176,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -4.326081E-01 -1.871498E-01 -3.621797E-01 -1.311741E-01 -4.274873E-01 -1.827454E-01 -4.701391E-01 -2.210307E-01 +4.809430E-01 +2.313062E-01 +3.848125E-01 +1.480807E-01 +4.543918E-01 +2.064719E-01 +5.106133E-01 +2.607260E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -200,14 +200,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -4.701391E-01 -2.210307E-01 -4.274873E-01 -1.827454E-01 -4.867763E-01 -2.369512E-01 -5.027339E-01 -2.527413E-01 +5.106133E-01 +2.607260E-01 +4.543918E-01 +2.064719E-01 +4.543120E-01 +2.063994E-01 +4.626328E-01 +2.140291E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -224,14 +224,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -5.027339E-01 -2.527413E-01 -4.867763E-01 -2.369512E-01 -4.679231E-01 -2.189520E-01 -4.504626E-01 -2.029166E-01 +4.626328E-01 +2.140291E-01 +4.543120E-01 +2.063994E-01 +4.827759E-01 +2.330726E-01 +4.442622E-01 +1.973689E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -248,14 +248,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -4.504626E-01 -2.029166E-01 -4.679231E-01 -2.189520E-01 -4.340994E-01 -1.884423E-01 -3.622741E-01 -1.312425E-01 +4.442622E-01 +1.973689E-01 +4.827759E-01 +2.330726E-01 +4.630420E-01 +2.144079E-01 +3.886524E-01 +1.510507E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -272,14 +272,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -3.622741E-01 -1.312425E-01 -4.340994E-01 -1.884423E-01 -3.743415E-01 -1.401316E-01 -2.666952E-01 -7.112632E-02 +3.886524E-01 +1.510507E-01 +4.630420E-01 +2.144079E-01 +3.535870E-01 +1.250237E-01 +2.530312E-01 +6.402478E-02 0.000000E+00 0.000000E+00 0.000000E+00 @@ -296,14 +296,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -2.666952E-01 -7.112632E-02 -3.743415E-01 -1.401316E-01 -2.832774E-01 -8.024609E-02 -1.469617E-01 -2.159775E-02 +2.530312E-01 +6.402478E-02 +3.535870E-01 +1.250237E-01 +2.465524E-01 +6.078808E-02 +1.197152E-01 +1.433173E-02 0.000000E+00 0.000000E+00 0.000000E+00 @@ -320,12 +320,12 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -1.469617E-01 -2.159775E-02 -2.832774E-01 -8.024609E-02 -1.514998E-01 -2.295220E-02 +1.197152E-01 +1.433173E-02 +2.465524E-01 +6.078808E-02 +1.369631E-01 +1.875888E-02 0.000000E+00 0.000000E+00 0.000000E+00 @@ -345,119 +345,119 @@ tally 4: 0.000000E+00 0.000000E+00 tally 5: -7.817522E-01 -6.111366E-01 -1.254009E-01 -1.572539E-02 -1.426374E+00 -2.034542E+00 -2.208879E-01 -4.879148E-02 -1.815687E+00 -3.296718E+00 -2.598747E-01 -6.753484E-02 -2.446236E+00 -5.984069E+00 -3.067269E-01 -9.408137E-02 -2.670084E+00 -7.129351E+00 -3.358701E-01 -1.128087E-01 -2.682078E+00 -7.193544E+00 -3.021763E-01 -9.131050E-02 -2.215446E+00 -4.908202E+00 -3.092066E-01 -9.560869E-02 -1.871260E+00 -3.501614E+00 -2.400592E-01 -5.762841E-02 -1.483097E+00 -2.199577E+00 -2.197780E-01 -4.830237E-02 -8.009060E-01 -6.414504E-01 -1.023121E-01 -1.046776E-02 +7.701233E-01 +5.930898E-01 +1.386250E-01 +1.921688E-02 +1.547307E+00 +2.394158E+00 +2.630277E-01 +6.918357E-02 +2.106373E+00 +4.436806E+00 +2.807880E-01 +7.884187E-02 +2.435849E+00 +5.933361E+00 +3.322060E-01 +1.103608E-01 +2.753634E+00 +7.582501E+00 +3.825922E-01 +1.463768E-01 +2.623852E+00 +6.884601E+00 +3.888710E-01 +1.512206E-01 +2.376886E+00 +5.649588E+00 +3.196217E-01 +1.021581E-01 +2.021856E+00 +4.087900E+00 +2.897881E-01 +8.397715E-02 +1.333190E+00 +1.777397E+00 +1.627110E-01 +2.647486E-02 +7.258527E-01 +5.268622E-01 +9.348666E-02 +8.739755E-03 cmfd indices 1.000000E+01 1.000000E+00 1.000000E+00 1.000000E+00 k cmfd -1.165553E+00 -1.179705E+00 -1.191818E+00 -1.207372E+00 -1.203745E+00 -1.208055E+00 -1.208191E+00 -1.201797E+00 -1.201945E+00 -1.203753E+00 -1.209025E+00 +1.149077E+00 +1.156751E+00 +1.158648E+00 +1.159506E+00 +1.156567E+00 +1.160259E+00 +1.150345E+00 +1.149846E+00 +1.151606E+00 +1.164544E+00 +1.174648E+00 cmfd entropy -3.217557E+00 -3.209881E+00 -3.204672E+00 -3.212484E+00 -3.217253E+00 -3.216845E+00 -3.219057E+00 -3.217057E+00 -3.223643E+00 -3.230985E+00 -3.230377E+00 +3.216173E+00 +3.228717E+00 +3.220402E+00 +3.214352E+00 +3.215636E+00 +3.213599E+00 +3.212854E+00 +3.213131E+00 +3.213196E+00 +3.205474E+00 +3.202869E+00 cmfd balance -1.65304E-03 -2.29940E-03 -1.63416E-03 -1.39975E-03 -1.91312E-03 -1.62824E-03 -1.95516E-03 -2.02934E-03 -1.92846E-03 -2.33117E-03 -2.29845E-03 +3.08825E-03 +1.42345E-03 +1.21253E-03 +1.17694E-03 +1.05901E-03 +9.29611E-04 +1.35587E-03 +1.13579E-03 +1.14964E-03 +1.29313E-03 +1.46566E-03 cmfd dominance ratio -5.465E-01 -5.481E-01 -5.432E-01 -5.459E-01 -5.463E-01 -5.486E-01 -5.515E-01 -5.493E-01 -5.511E-01 -5.518E-01 -5.499E-01 +5.524E-01 +5.614E-01 +5.522E-01 +5.487E-01 +5.482E-01 +5.446E-01 +5.437E-01 +5.429E-01 +5.407E-01 +5.380E-01 +5.377E-01 cmfd openmc source comparison -6.499546E-03 -3.419761E-03 -4.342514E-03 -7.229618E-03 -9.943057E-03 -1.050086E-02 -1.055060E-02 -6.562146E-03 -7.232860E-03 -4.424331E-03 -2.531323E-03 +1.586045E-02 +6.953134E-03 +6.860419E-03 +6.198467E-03 +5.142854E-03 +4.373354E-03 +5.564831E-03 +4.184765E-03 +1.867780E-03 +2.734784E-03 +2.523985E-03 cmfd source -4.224785E-02 -7.504165E-02 -1.009909E-01 -1.238160E-01 -1.301409E-01 -1.425954E-01 -1.353275E-01 -1.134617E-01 -8.830470E-02 -4.807346E-02 +4.241440E-02 +8.226026E-02 +1.180811E-01 +1.328433E-01 +1.412410E-01 +1.424902E-01 +1.269340E-01 +1.096490E-01 +6.953251E-02 +3.455422E-02 diff --git a/tests/regression_tests/cmfd_feed_ng/results_true.dat b/tests/regression_tests/cmfd_feed_ng/results_true.dat index 722cb16c8..153238bfe 100644 --- a/tests/regression_tests/cmfd_feed_ng/results_true.dat +++ b/tests/regression_tests/cmfd_feed_ng/results_true.dat @@ -1,208 +1,208 @@ k-combined: -1.027584E+00 1.502267E-02 +1.005987E+00 1.354263E-02 tally 1: -1.148263E+02 -1.318910E+03 -1.144863E+02 -1.311468E+03 -1.163124E+02 -1.353643E+03 -1.149445E+02 -1.321759E+03 +1.140273E+02 +1.301245E+03 +1.147962E+02 +1.319049E+03 +1.151426E+02 +1.326442E+03 +1.149265E+02 +1.321518E+03 tally 2: -3.397796E+01 -7.265736E+01 -5.019405E+01 -1.585764E+02 -1.053191E+01 -6.978659E+00 -8.739144E+00 -4.800811E+00 -1.368395E+02 -1.172003E+03 -7.370695E+01 -3.398875E+02 -3.374845E+01 -7.161454E+01 -5.011266E+01 -1.580982E+02 -1.014814E+01 -6.486800E+00 -8.590537E+00 -4.639730E+00 -1.379236E+02 -1.198395E+03 -7.277377E+01 -3.313373E+02 -3.554441E+01 -7.913690E+01 -5.224651E+01 -1.709692E+02 -1.050466E+01 -6.961148E+00 -8.866162E+00 -4.951519E+00 -1.388541E+02 -1.206000E+03 -7.399637E+01 -3.423642E+02 -3.479281E+01 -7.602778E+01 -5.139230E+01 -1.659298E+02 -1.026632E+01 -6.621042E+00 -8.649433E+00 -4.697954E+00 -1.402563E+02 -1.235504E+03 -7.374718E+01 -3.400080E+02 +3.462748E+01 +7.542476E+01 +5.129219E+01 +1.658142E+02 +1.034704E+01 +6.730603E+00 +8.672967E+00 +4.715295E+00 +1.344669E+02 +1.132019E+03 +7.262519E+01 +3.300787E+02 +3.447358E+01 +7.459545E+01 +5.075836E+01 +1.619570E+02 +1.080516E+01 +7.366369E+00 +8.908065E+00 +4.991975E+00 +1.354224E+02 +1.146824E+03 +7.300078E+01 +3.332531E+02 +3.432298E+01 +7.388666E+01 +5.096378E+01 +1.627979E+02 +1.053664E+01 +7.029789E+00 +8.826624E+00 +4.904429E+00 +1.388389E+02 +1.207280E+03 +7.376623E+01 +3.403211E+02 +4.383841E+01 +1.943331E+02 +5.165881E+01 +1.675923E+02 +1.059646E+01 +7.048052E+00 +8.763673E+00 +4.823505E+00 +1.378179E+02 +1.188104E+03 +7.431708E+01 +3.453746E+02 tally 3: -4.748159E+01 -1.419494E+02 +4.858880E+01 +1.488705E+02 0.000000E+00 0.000000E+00 -8.132630E-03 -1.326503E-05 +8.148667E-03 +1.337050E-05 0.000000E+00 0.000000E+00 0.000000E+00 0.000000E+00 -3.299481E+00 -6.900644E-01 -2.429296E+00 -3.713869E-01 +3.347376E+00 +7.045574E-01 +2.433484E+00 +3.727266E-01 0.000000E+00 0.000000E+00 -6.175576E+00 -2.403118E+00 +6.095478E+00 +2.332622E+00 0.000000E+00 0.000000E+00 0.000000E+00 0.000000E+00 -7.020357E-02 -6.481773E-04 -3.097931E-01 -6.853044E-03 +1.235421E-01 +1.205155E-03 +3.647699E-01 +8.953589E-03 0.000000E+00 0.000000E+00 -2.592969E+00 -4.215508E-01 +2.673965E+00 +4.517972E-01 0.000000E+00 0.000000E+00 -6.972257E+01 -3.041404E+02 -5.792796E-01 -2.191871E-02 -4.745221E+01 -1.418371E+02 +6.841105E+01 +2.929195E+02 +5.902473E-01 +2.307683E-02 +4.792291E+01 +1.444397E+02 0.000000E+00 0.000000E+00 -1.507569E-02 -3.140047E-05 +2.183275E-02 +8.061011E-05 0.000000E+00 0.000000E+00 0.000000E+00 0.000000E+00 -3.307769E+00 -6.924370E-01 -2.473164E+00 -3.840166E-01 +3.435826E+00 +7.480244E-01 +2.450829E+00 +3.800327E-01 0.000000E+00 0.000000E+00 -5.967063E+00 -2.251947E+00 +6.331358E+00 +2.530492E+00 0.000000E+00 0.000000E+00 0.000000E+00 0.000000E+00 -9.143833E-02 -8.020544E-04 +1.012941E-01 +8.217580E-04 +2.981274E-01 +5.863186E-03 +0.000000E+00 +0.000000E+00 +2.535628E+00 +4.048310E-01 +0.000000E+00 +0.000000E+00 +6.912003E+01 +2.987684E+02 +5.984862E-01 +2.386115E-02 +4.822881E+01 +1.458309E+02 +0.000000E+00 +0.000000E+00 +1.525590E-02 +3.794082E-05 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +3.314494E+00 +6.944527E-01 +2.424209E+00 +3.691360E-01 +0.000000E+00 +0.000000E+00 +6.254897E+00 +2.474317E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +0.000000E+00 +1.112542E-01 +1.051688E-03 3.234880E-01 -7.219562E-03 +7.156753E-03 0.000000E+00 0.000000E+00 -2.477436E+00 -3.882619E-01 +2.474142E+00 +3.837496E-01 0.000000E+00 0.000000E+00 -6.888326E+01 -2.968630E+02 -5.925099E-01 -2.344632E-02 -4.946736E+01 -1.533087E+02 +6.987095E+01 +3.053358E+02 +5.928782E-01 +2.368116E-02 +4.885415E+01 +1.499856E+02 0.000000E+00 0.000000E+00 -1.369119E-02 -3.099298E-05 +1.262416E-02 +2.486286E-05 0.000000E+00 0.000000E+00 0.000000E+00 0.000000E+00 -3.513467E+00 -7.852189E-01 -2.483110E+00 -3.901527E-01 +3.426826E+00 +7.480396E-01 +2.487209E+00 +3.903882E-01 0.000000E+00 0.000000E+00 -6.238898E+00 -2.455700E+00 +6.127303E+00 +2.364605E+00 0.000000E+00 0.000000E+00 0.000000E+00 0.000000E+00 -9.032973E-02 -6.677512E-04 -2.816159E-01 -5.349737E-03 +9.439007E-02 +1.082564E-03 +2.963491E-01 +5.652952E-03 0.000000E+00 0.000000E+00 -2.620828E+00 -4.350795E-01 +2.620696E+00 +4.311792E-01 0.000000E+00 0.000000E+00 -6.992910E+01 -3.057653E+02 -5.890670E-01 -2.307978E-02 -4.853121E+01 -1.480132E+02 -0.000000E+00 -0.000000E+00 -1.719291E-02 -4.141727E-05 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -3.490129E+00 -7.743548E-01 -2.381968E+00 -3.564896E-01 -0.000000E+00 -0.000000E+00 -6.151693E+00 -2.382656E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -0.000000E+00 -8.653178E-02 -5.524601E-04 -3.307211E-01 -7.362512E-03 -0.000000E+00 -0.000000E+00 -2.566722E+00 -4.136929E-01 -0.000000E+00 -0.000000E+00 -6.968935E+01 -3.036323E+02 -6.295592E-01 -2.609911E-02 +7.030725E+01 +3.091241E+02 +5.986966E-01 +2.352487E-02 tally 4: 0.000000E+00 0.000000E+00 @@ -216,18 +216,18 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -6.910417E+00 -3.013908E+00 -2.099086E+00 -2.794191E-01 -2.725309E+01 -4.645663E+01 -7.076086E+00 -3.154776E+00 -2.051075E+00 -2.671542E-01 -2.737348E+01 -4.686718E+01 +7.028624E+00 +3.105990E+00 +2.154648E+00 +2.948865E-01 +2.714077E+01 +4.607926E+01 +7.035506E+00 +3.118549E+00 +2.085916E+00 +2.730884E-01 +2.750091E+01 +4.731304E+01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -240,18 +240,18 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -7.215131E+00 -3.265328E+00 -2.066108E+00 -2.704238E-01 -2.755564E+01 -4.753705E+01 -7.022836E+00 -3.102535E+00 -2.076586E+00 -2.741254E-01 -2.756981E+01 -4.756632E+01 +7.170567E+00 +3.240715E+00 +2.131758E+00 +2.862355E-01 +2.747702E+01 +4.722977E+01 +7.068817E+00 +3.139275E+00 +2.095865E+00 +2.762179E-01 +2.737835E+01 +4.688689E+01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -276,18 +276,18 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -7.076086E+00 -3.154776E+00 -2.051075E+00 -2.671542E-01 -2.737348E+01 -4.686718E+01 -6.910417E+00 -3.013908E+00 -2.099086E+00 -2.794191E-01 -2.725309E+01 -4.645663E+01 +7.035506E+00 +3.118549E+00 +2.085916E+00 +2.730884E-01 +2.750091E+01 +4.731304E+01 +7.028624E+00 +3.105990E+00 +2.154648E+00 +2.948865E-01 +2.714077E+01 +4.607926E+01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -312,18 +312,18 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -7.008937E+00 -3.087084E+00 -2.040640E+00 -2.622272E-01 -2.705295E+01 -4.578207E+01 -7.038404E+00 -3.111878E+00 -2.123591E+00 -2.840551E-01 -2.708214E+01 -4.588834E+01 +7.103896E+00 +3.171147E+00 +2.095666E+00 +2.756673E-01 +2.711842E+01 +4.600196E+01 +7.197270E+00 +3.255501E+00 +2.046179E+00 +2.630301E-01 +2.729901E+01 +4.662030E+01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -360,30 +360,30 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -7.286308E+00 -3.346248E+00 -2.108252E+00 -2.794781E-01 -2.738387E+01 -4.689407E+01 -7.108444E+00 -3.172810E+00 -2.111474E+00 -2.804633E-01 -2.737249E+01 -4.687424E+01 -7.022836E+00 -3.102535E+00 -2.076586E+00 -2.741254E-01 -2.756981E+01 -4.756632E+01 -7.215131E+00 -3.265328E+00 -2.066108E+00 -2.704238E-01 -2.755564E+01 -4.753705E+01 +7.240906E+00 +3.296285E+00 +2.130816E+00 +2.850713E-01 +2.761433E+01 +4.771548E+01 +7.126427E+00 +3.199209E+00 +2.177254E+00 +2.998765E-01 +2.754936E+01 +4.748447E+01 +7.068817E+00 +3.139275E+00 +2.095865E+00 +2.762179E-01 +2.737835E+01 +4.688689E+01 +7.170567E+00 +3.240715E+00 +2.131758E+00 +2.862355E-01 +2.747702E+01 +4.722977E+01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -420,18 +420,18 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -7.108444E+00 -3.172810E+00 -2.111474E+00 -2.804633E-01 -2.737249E+01 -4.687424E+01 -7.286308E+00 -3.346248E+00 -2.108252E+00 -2.794781E-01 -2.738387E+01 -4.689407E+01 +7.126427E+00 +3.199209E+00 +2.177254E+00 +2.998765E-01 +2.754936E+01 +4.748447E+01 +7.240906E+00 +3.296285E+00 +2.130816E+00 +2.850713E-01 +2.761433E+01 +4.771548E+01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -444,18 +444,18 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -7.038404E+00 -3.111878E+00 -2.123591E+00 -2.840551E-01 -2.708214E+01 -4.588834E+01 -7.008937E+00 -3.087084E+00 -2.040640E+00 -2.622272E-01 -2.705295E+01 -4.578207E+01 +7.197270E+00 +3.255501E+00 +2.046179E+00 +2.630301E-01 +2.729901E+01 +4.662030E+01 +7.103896E+00 +3.171147E+00 +2.095666E+00 +2.756673E-01 +2.711842E+01 +4.600196E+01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -493,124 +493,124 @@ tally 4: 0.000000E+00 0.000000E+00 tally 5: -4.748972E+01 -1.419968E+02 -8.604872E+00 -4.655596E+00 -7.261430E+01 -3.298767E+02 -1.092092E+01 -7.540081E+00 -3.984923E+00 -1.000404E+00 -3.294804E+01 -6.794642E+01 -4.746728E+01 -1.419250E+02 -8.440227E+00 -4.478243E+00 -7.167598E+01 -3.214310E+02 -1.073385E+01 -7.257545E+00 -3.904158E+00 -9.587510E-01 -3.253492E+01 -6.626202E+01 -4.948105E+01 -1.533940E+02 -8.722008E+00 -4.791509E+00 -7.283154E+01 -3.316829E+02 -1.138387E+01 -8.162117E+00 -4.131397E+00 -1.078045E+00 -3.254336E+01 -6.624925E+01 -4.854840E+01 -1.481182E+02 -8.533661E+00 -4.573316E+00 -7.258180E+01 -3.293419E+02 -1.053673E+01 -7.002045E+00 -3.988151E+00 -1.001884E+00 -3.284213E+01 -6.749116E+01 +4.859695E+01 +1.489217E+02 +8.528963E+00 +4.561881E+00 +7.144500E+01 +3.194467E+02 +1.120265E+01 +7.944038E+00 +4.009821E+00 +1.012575E+00 +3.235456E+01 +6.558658E+01 +4.794474E+01 +1.445671E+02 +8.782187E+00 +4.852477E+00 +7.195036E+01 +3.237389E+02 +1.075572E+01 +7.333822E+00 +4.084680E+00 +1.054714E+00 +3.267154E+01 +6.675266E+01 +4.824407E+01 +1.459220E+02 +8.679106E+00 +4.742342E+00 +7.266858E+01 +3.302641E+02 +1.094872E+01 +7.536318E+00 +3.935828E+00 +9.749543E-01 +3.319517E+01 +6.894791E+01 +4.886677E+01 +1.500624E+02 +8.614512E+00 +4.662618E+00 +7.321408E+01 +3.352172E+02 +1.095123E+01 +7.574359E+00 +3.885927E+00 +9.539315E-01 +3.334065E+01 +6.953215E+01 cmfd indices 2.000000E+00 2.000000E+00 1.000000E+00 3.000000E+00 k cmfd -1.026167E+00 -1.026753E+00 -1.034560E+00 -1.028298E+00 -1.029032E+00 -1.033531E+00 -1.034902E+00 -1.029837E+00 -1.025313E+00 -1.019855E+00 -1.021235E+00 +1.026473E+00 +1.024183E+00 +1.023151E+00 +1.025047E+00 +1.019801E+00 +1.020492E+00 +1.015249E+00 +1.016714E+00 +1.016047E+00 +1.019687E+00 +1.020955E+00 cmfd entropy -1.998818E+00 -1.998853E+00 -1.999048E+00 -1.998864E+00 -1.998999E+00 -1.998789E+00 -1.998670E+00 -1.998822E+00 -1.998782E+00 -1.999027E+00 -1.999420E+00 +1.999640E+00 +1.999556E+00 +1.999484E+00 +1.999718E+00 +1.999697E+00 +1.999657E+00 +1.999883E+00 +1.999902E+00 +1.999977E+00 +1.999977E+00 +1.999906E+00 cmfd balance -1.00064E-03 -6.95941E-04 -5.74967E-04 -4.34776E-04 -4.03288E-04 -4.32457E-04 -4.49075E-04 -3.57342E-04 -3.62891E-04 -2.86133E-04 -2.08678E-04 +8.10090E-04 +1.28103E-03 +7.97200E-04 +5.82188E-04 +7.20670E-04 +7.31475E-04 +5.71904E-04 +6.14057E-04 +6.00142E-04 +5.47870E-04 +3.53604E-04 cmfd dominance ratio -3.759E-03 -3.706E-03 -3.719E-03 -3.796E-03 -3.724E-03 -3.809E-03 -3.792E-03 -3.782E-03 -3.841E-03 +3.977E-03 +4.018E-03 +3.950E-03 3.866E-03 -3.868E-03 +3.840E-03 +3.888E-03 +3.867E-03 +3.896E-03 +3.924E-03 +3.885E-03 +3.913E-03 cmfd openmc source comparison -8.283222E-05 -6.636005E-05 -5.320110E-05 -4.474530E-05 -4.409263E-05 -4.914331E-05 -4.834447E-05 -4.040592E-05 -4.173469E-05 -3.118350E-05 -1.667967E-05 +4.787501E-05 +4.450525E-05 +2.532345E-05 +3.844307E-05 +4.821504E-05 +4.840760E-05 +3.739246E-05 +3.957960E-05 +4.521480E-05 +4.072007E-05 +2.532636E-05 cmfd source -2.416781E-01 -2.442811E-01 -2.566121E-01 -2.574288E-01 +2.486236E-01 +2.531628E-01 +2.460219E-01 +2.521918E-01 0.000000E+00 0.000000E+00 0.000000E+00 diff --git a/tests/regression_tests/cmfd_feed_rectlin/results_true.dat b/tests/regression_tests/cmfd_feed_rectlin/results_true.dat index 1a9c3f4e4..600b5d152 100644 --- a/tests/regression_tests/cmfd_feed_rectlin/results_true.dat +++ b/tests/regression_tests/cmfd_feed_rectlin/results_true.dat @@ -1,149 +1,149 @@ k-combined: -1.167761E+00 4.293426E-03 +1.160561E+00 1.029736E-02 tally 1: -1.202277E+01 -1.452746E+01 -2.195725E+01 -4.835710E+01 -2.862021E+01 -8.215585E+01 -3.453333E+01 -1.196497E+02 -3.756803E+01 -1.414919E+02 -3.739045E+01 -1.403446E+02 -3.361501E+01 -1.134271E+02 -2.819861E+01 -7.968185E+01 -2.111919E+01 -4.472336E+01 -1.129975E+01 -1.280982E+01 +1.089904E+01 +1.193573E+01 +2.026534E+01 +4.113383E+01 +2.723584E+01 +7.440537E+01 +3.309956E+01 +1.101184E+02 +3.659327E+01 +1.341221E+02 +3.780158E+01 +1.430045E+02 +3.520883E+01 +1.241772E+02 +2.961801E+01 +8.784675E+01 +2.182029E+01 +4.781083E+01 +1.180347E+01 +1.399970E+01 tally 2: -8.743037E+00 -3.861220E+00 -6.027264E+00 -1.836570E+00 -3.366159E+01 -5.708871E+01 -2.367086E+01 -2.824484E+01 -2.348709E+01 -2.777633E+01 -1.668756E+01 -1.403629E+01 -5.609969E+01 -1.580739E+02 -3.985682E+01 -7.985715E+01 -3.319543E+01 -5.528370E+01 -2.358360E+01 -2.791829E+01 -7.132407E+01 -2.550603E+02 -5.083603E+01 -1.296049E+02 -3.801086E+01 -7.257141E+01 -2.709688E+01 -3.686995E+01 -3.751307E+01 -7.073318E+01 -2.660859E+01 -3.559134E+01 -7.258292E+01 -2.644619E+02 -5.168044E+01 -1.340982E+02 -3.304423E+01 -5.486256E+01 -2.335526E+01 -2.742989E+01 -5.655005E+01 -1.603926E+02 -4.014572E+01 -8.087797E+01 -2.351019E+01 -2.776367E+01 -1.670083E+01 -1.401374E+01 -3.451886E+01 -5.983149E+01 -2.443300E+01 -2.997375E+01 -8.551177E+00 -3.691263E+00 -5.916124E+00 -1.768556E+00 +8.794706E+00 +3.939413E+00 +6.131113E+00 +1.913116E+00 +3.265522E+01 +5.364042E+01 +2.304238E+01 +2.672742E+01 +2.250225E+01 +2.541491E+01 +1.601668E+01 +1.288405E+01 +5.525355E+01 +1.531915E+02 +3.929637E+01 +7.748545E+01 +3.222711E+01 +5.216630E+01 +2.285375E+01 +2.623641E+01 +7.051908E+01 +2.495413E+02 +5.010064E+01 +1.259701E+02 +3.728726E+01 +6.974440E+01 +2.652872E+01 +3.530919E+01 +3.747306E+01 +7.058235E+01 +2.681415E+01 +3.613314E+01 +7.296802E+01 +2.669214E+02 +5.202502E+01 +1.356733E+02 +3.333947E+01 +5.579355E+01 +2.361733E+01 +2.800800E+01 +5.785916E+01 +1.680561E+02 +4.093282E+01 +8.410711E+01 +2.377151E+01 +2.842464E+01 +1.681789E+01 +1.423646E+01 +3.422028E+01 +5.880493E+01 +2.415199E+01 +2.930240E+01 +8.890608E+00 +3.986356E+00 +6.140159E+00 +1.897764E+00 tally 3: -5.799161E+00 -1.702117E+00 -3.588837E-01 -7.127789E-03 -2.273477E+01 -2.606361E+01 -1.586822E+00 -1.296956E-01 -1.606466E+01 -1.300770E+01 -1.018209E+00 -5.281297E-02 -3.840128E+01 -7.415483E+01 -2.383738E+00 -2.877855E-01 -2.268388E+01 -2.583457E+01 -1.485208E+00 -1.122747E-01 -4.899435E+01 -1.204028E+02 -3.203505E+00 -5.163235E-01 -2.610714E+01 -3.423244E+01 -1.707156E+00 -1.476400E-01 -2.559242E+01 -3.293100E+01 -1.761813E+00 -1.597786E-01 -4.985698E+01 -1.248029E+02 -3.081386E+00 -4.824389E-01 -2.245777E+01 -2.536963E+01 -1.447127E+00 -1.065745E-01 -3.869628E+01 -7.516217E+01 -2.545419E+00 -3.270790E-01 -1.610401E+01 -1.303231E+01 -1.011897E+00 -5.274155E-02 -2.353410E+01 -2.781055E+01 -1.517873E+00 -1.184503E-01 -5.687356E+00 -1.636570E+00 -3.728435E-01 -7.203797E-03 +5.925339E+00 +1.788596E+00 +3.912632E-01 +8.061838E-03 +2.215544E+01 +2.471404E+01 +1.465191E+00 +1.092622E-01 +1.542988E+01 +1.195626E+01 +1.022876E+00 +5.356825E-02 +3.792029E+01 +7.218149E+01 +2.370476E+00 +2.839465E-01 +2.200154E+01 +2.432126E+01 +1.360836E+00 +9.402424E-02 +4.824980E+01 +1.168447E+02 +3.124366E+00 +4.907460E-01 +2.557420E+01 +3.282066E+01 +1.725855E+00 +1.519830E-01 +2.577963E+01 +3.341077E+01 +1.654042E+00 +1.386845E-01 +5.008220E+01 +1.257610E+02 +3.223857E+00 +5.237360E-01 +2.273380E+01 +2.595325E+01 +1.438369E+00 +1.050840E-01 +3.938822E+01 +7.789691E+01 +2.648324E+00 +3.559703E-01 +1.623604E+01 +1.327214E+01 +1.058882E+00 +5.680630E-02 +2.325730E+01 +2.717892E+01 +1.584276E+00 +1.275868E-01 +5.937929E+00 +1.774847E+00 +3.866918E-01 +7.994353E-03 tally 4: -3.060660E+00 -4.703581E-01 +3.063235E+00 +4.714106E-01 0.000000E+00 0.000000E+00 -1.451637E+00 -1.081522E-01 -4.402560E+00 -9.746218E-01 +1.425705E+00 +1.043616E-01 +4.355515E+00 +9.538346E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -160,14 +160,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -4.402560E+00 -9.746218E-01 -1.451637E+00 -1.081522E-01 -3.903491E+00 -7.713768E-01 -6.448935E+00 -2.089570E+00 +4.355515E+00 +9.538346E-01 +1.425705E+00 +1.043616E-01 +3.859174E+00 +7.519499E-01 +6.350310E+00 +2.024214E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -184,14 +184,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -6.448935E+00 -2.089570E+00 -3.903491E+00 -7.713768E-01 -5.075609E+00 -1.297182E+00 -7.371853E+00 -2.729133E+00 +6.350310E+00 +2.024214E+00 +3.859174E+00 +7.519499E-01 +4.993073E+00 +1.258264E+00 +7.194275E+00 +2.596886E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -208,14 +208,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -7.371853E+00 -2.729133E+00 -5.075609E+00 -1.297182E+00 -7.015514E+00 -2.477295E+00 -8.723726E+00 -3.828466E+00 +7.194275E+00 +2.596886E+00 +4.993073E+00 +1.258264E+00 +6.786617E+00 +2.312259E+00 +8.306978E+00 +3.459668E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -232,14 +232,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -8.723726E+00 -3.828466E+00 -7.015514E+00 -2.477295E+00 -7.735344E+00 -3.007547E+00 -9.106625E+00 -4.165807E+00 +8.306978E+00 +3.459668E+00 +6.786617E+00 +2.312259E+00 +7.603410E+00 +2.905228E+00 +8.791222E+00 +3.882935E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -256,14 +256,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -9.106625E+00 -4.165807E+00 -7.735344E+00 -3.007547E+00 -9.026526E+00 -4.098261E+00 -9.551542E+00 -4.586695E+00 +8.791222E+00 +3.882935E+00 +7.603410E+00 +2.905228E+00 +8.867113E+00 +3.938503E+00 +9.302808E+00 +4.340042E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -280,14 +280,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -9.551542E+00 -4.586695E+00 -9.026526E+00 -4.098261E+00 -9.344096E+00 -4.384840E+00 -9.405215E+00 -4.441966E+00 +9.302808E+00 +4.340042E+00 +8.867113E+00 +3.938503E+00 +9.270113E+00 +4.306513E+00 +9.263471E+00 +4.302184E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -304,14 +304,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -9.405215E+00 -4.441966E+00 -9.344096E+00 -4.384840E+00 -9.390313E+00 -4.435716E+00 -9.011690E+00 -4.080913E+00 +9.263471E+00 +4.302184E+00 +9.270113E+00 +4.306513E+00 +9.348712E+00 +4.388570E+00 +8.977713E+00 +4.047349E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -328,14 +328,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -9.011690E+00 -4.080913E+00 -9.390313E+00 -4.435716E+00 -9.140785E+00 -4.195868E+00 -8.003067E+00 -3.218771E+00 +8.977713E+00 +4.047349E+00 +9.348712E+00 +4.388570E+00 +9.234380E+00 +4.280666E+00 +8.036978E+00 +3.239853E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -352,14 +352,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -8.003067E+00 -3.218771E+00 -9.140785E+00 -4.195868E+00 -8.629258E+00 -3.736554E+00 -7.133986E+00 -2.557637E+00 +8.036978E+00 +3.239853E+00 +9.234380E+00 +4.280666E+00 +8.713633E+00 +3.808850E+00 +7.160878E+00 +2.572915E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -376,14 +376,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -7.133986E+00 -2.557637E+00 -8.629258E+00 -3.736554E+00 -7.284136E+00 -2.659936E+00 -5.069993E+00 -1.289638E+00 +7.160878E+00 +2.572915E+00 +8.713633E+00 +3.808850E+00 +7.378538E+00 +2.732122E+00 +5.145728E+00 +1.329190E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -400,14 +400,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -5.069993E+00 -1.289638E+00 -7.284136E+00 -2.659936E+00 -6.585377E+00 -2.178573E+00 -4.109746E+00 -8.535283E-01 +5.145728E+00 +1.329190E+00 +7.378538E+00 +2.732122E+00 +6.660125E+00 +2.228506E+00 +4.087925E+00 +8.435381E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -424,14 +424,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -4.109746E+00 -8.535283E-01 -6.585377E+00 -2.178573E+00 -4.394913E+00 -9.694834E-01 -1.455260E+00 -1.073327E-01 +4.087925E+00 +8.435381E-01 +6.660125E+00 +2.228506E+00 +4.466295E+00 +1.002320E+00 +1.468481E+00 +1.099604E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -448,12 +448,12 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -1.455260E+00 -1.073327E-01 -4.394913E+00 -9.694834E-01 -3.054512E+00 -4.687172E-01 +1.468481E+00 +1.099604E-01 +4.466295E+00 +1.002320E+00 +3.139355E+00 +4.955456E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -473,164 +473,164 @@ tally 4: 0.000000E+00 0.000000E+00 tally 5: -5.798163E+00 -1.701480E+00 -7.719076E-01 -3.205800E-02 -2.272861E+01 -2.604939E+01 -3.183925E+00 -5.123120E-01 -1.606367E+01 -1.300597E+01 -2.209506E+00 -2.514085E-01 -3.839444E+01 -7.412912E+01 -5.235063E+00 -1.389014E+00 -2.268086E+01 -2.582733E+01 -3.074902E+00 -4.810618E-01 -4.898566E+01 -1.203589E+02 -6.606838E+00 -2.201101E+00 -2.609836E+01 -3.420917E+01 -3.518842E+00 -6.264238E-01 -2.558605E+01 -3.291399E+01 -3.686659E+00 -6.942431E-01 -4.984902E+01 -1.247644E+02 -6.876822E+00 -2.400434E+00 -2.245394E+01 -2.536044E+01 -3.098158E+00 -4.940204E-01 -3.868744E+01 -7.512715E+01 -5.302748E+00 -1.428609E+00 -1.610093E+01 -1.302770E+01 -2.252209E+00 -2.578778E-01 -2.352951E+01 -2.779963E+01 -3.249775E+00 -5.380883E-01 -5.685356E+00 -1.635162E+00 -7.886630E-01 -3.440650E-02 +5.925339E+00 +1.788596E+00 +8.954773E-01 +4.217679E-02 +2.215054E+01 +2.470273E+01 +2.944747E+00 +4.443186E-01 +1.542658E+01 +1.195085E+01 +1.950262E+00 +1.946340E-01 +3.791137E+01 +7.214779E+01 +4.955741E+00 +1.254830E+00 +2.200054E+01 +2.431894E+01 +3.031040E+00 +4.685971E-01 +4.823946E+01 +1.167941E+02 +6.226321E+00 +1.956308E+00 +2.556930E+01 +3.280828E+01 +3.582546E+00 +6.505962E-01 +2.577249E+01 +3.339204E+01 +3.316825E+00 +5.676842E-01 +5.007249E+01 +1.257124E+02 +6.462364E+00 +2.120157E+00 +2.273285E+01 +2.595106E+01 +2.960964E+00 +4.496277E-01 +3.937362E+01 +7.783849E+01 +5.339336E+00 +1.449257E+00 +1.623315E+01 +1.326746E+01 +2.289661E+00 +2.698618E-01 +2.325250E+01 +2.716827E+01 +3.253010E+00 +5.413837E-01 +5.937929E+00 +1.774847E+00 +9.208589E-01 +4.421403E-02 cmfd indices 1.400000E+01 1.000000E+00 1.000000E+00 1.000000E+00 k cmfd -1.154550E+00 -1.172635E+00 -1.171962E+00 -1.174888E+00 -1.182656E+00 -1.190779E+00 -1.200964E+00 -1.196775E+00 -1.190049E+00 -1.181514E+00 -1.180749E+00 -1.179370E+00 -1.177279E+00 -1.178924E+00 -1.177106E+00 -1.179987E+00 +1.125528E+00 +1.145509E+00 +1.158948E+00 +1.171983E+00 +1.180649E+00 +1.184072E+00 +1.188112E+00 +1.183095E+00 +1.182269E+00 +1.175467E+00 +1.175184E+00 +1.172637E+00 +1.171593E+00 +1.175439E+00 +1.174650E+00 +1.176474E+00 cmfd entropy -3.598911E+00 -3.600560E+00 -3.599978E+00 -3.601027E+00 -3.599502E+00 -3.598849E+00 -3.601916E+00 -3.605728E+00 -3.607212E+00 -3.612277E+00 -3.615627E+00 -3.618446E+00 -3.615292E+00 -3.612951E+00 -3.610620E+00 -3.607388E+00 +3.607059E+00 +3.604890E+00 +3.601329E+00 +3.597776E+00 +3.597360E+00 +3.597387E+00 +3.595379E+00 +3.596995E+00 +3.600901E+00 +3.601832E+00 +3.601426E+00 +3.604521E+00 +3.602848E+00 +3.603875E+00 +3.605213E+00 +3.606699E+00 cmfd balance -6.80696E-03 -7.03786E-03 -5.33837E-03 -5.39054E-03 -4.82209E-03 -4.46014E-03 -4.48076E-03 -3.31344E-03 -2.71476E-03 -2.03403E-03 -1.68070E-03 -1.38975E-03 -1.30457E-03 -1.29678E-03 -1.34009E-03 -1.43023E-03 +4.46212E-03 +4.66648E-03 +5.04274E-03 +5.21553E-03 +3.92498E-03 +2.97185E-03 +2.79785E-03 +2.66951E-03 +2.17472E-03 +1.98009E-03 +1.77035E-03 +1.51281E-03 +1.52807E-03 +1.33341E-03 +1.18155E-03 +1.07752E-03 cmfd dominance ratio -5.913E-01 -5.946E-01 -5.961E-01 -5.995E-01 -6.024E-01 -6.050E-01 -6.056E-01 -6.062E-01 -6.064E-01 -6.087E-01 -6.117E-01 -6.120E-01 +6.136E-01 +6.127E-01 +6.137E-01 +6.102E-01 +6.067E-01 +6.061E-01 +6.031E-01 +6.046E-01 +6.071E-01 6.089E-01 -6.074E-01 -6.052E-01 -6.030E-01 +6.073E-01 +6.080E-01 +6.080E-01 +6.090E-01 +6.092E-01 +6.094E-01 cmfd openmc source comparison -1.274461E-02 -9.191627E-03 -7.371466E-03 -4.977614E-03 -4.481864E-03 -3.396798E-03 -2.167863E-03 -4.137274E-03 -4.692749E-03 -2.955754E-03 -2.656269E-03 -2.241441E-03 -4.127496E-03 -3.040657E-03 -3.925292E-03 -3.183157E-03 +1.043027E-02 +1.278226E-02 +1.184867E-02 +1.017186E-02 +1.099696E-02 +7.955341E-03 +8.360344E-03 +6.875508E-03 +4.824018E-03 +4.915363E-03 +5.371647E-03 +4.593100E-03 +4.894955E-03 +4.928253E-03 +4.292171E-03 +4.018545E-03 cmfd source -1.525739E-02 -6.776716E-02 -4.352345E-02 -1.020209E-01 -6.379967E-02 -1.378464E-01 -7.334653E-02 -7.562170E-02 -1.318340E-01 -6.145426E-02 -1.073314E-01 -4.229800E-02 -6.258388E-02 -1.531527E-02 +1.600876E-02 +6.000305E-02 +4.248071E-02 +9.935789E-02 +5.768092E-02 +1.338593E-01 +7.417398E-02 +7.102984E-02 +1.382563E-01 +6.181889E-02 +1.142473E-01 +4.571447E-02 +6.864655E-02 +1.672206E-02 diff --git a/tests/regression_tests/cmfd_feed_ref_d/results_true.dat b/tests/regression_tests/cmfd_feed_ref_d/results_true.dat index cf1e165b2..9cc26b8cf 100644 --- a/tests/regression_tests/cmfd_feed_ref_d/results_true.dat +++ b/tests/regression_tests/cmfd_feed_ref_d/results_true.dat @@ -1,117 +1,117 @@ k-combined: -1.184724E+00 9.807415E-03 +1.167869E+00 7.492916E-03 tally 1: -1.121178E+01 -1.261180E+01 -2.101384E+01 -4.433764E+01 -2.783041E+01 -7.777181E+01 -3.351124E+01 -1.125137E+02 -3.625716E+01 -1.319682E+02 -3.741849E+01 -1.403752E+02 -3.537964E+01 -1.255737E+02 -3.030185E+01 -9.227364E+01 -2.188275E+01 -4.810760E+01 -1.172353E+01 -1.379028E+01 +1.146821E+01 +1.318787E+01 +2.161476E+01 +4.685066E+01 +2.951084E+01 +8.733116E+01 +3.521523E+01 +1.242762E+02 +3.774181E+01 +1.426460E+02 +3.727924E+01 +1.391162E+02 +3.377236E+01 +1.143877E+02 +2.904590E+01 +8.453427E+01 +2.090941E+01 +4.384824E+01 +1.078680E+01 +1.168172E+01 tally 2: -1.146903E+00 -1.315387E+00 -8.067939E-01 -6.509164E-01 -2.070041E+00 -4.285068E+00 -1.468994E+00 -2.157944E+00 -2.703198E+00 -7.307278E+00 -1.895572E+00 -3.593192E+00 -3.567627E+00 -1.272796E+01 -2.541486E+00 -6.459152E+00 -3.937479E+00 -1.550374E+01 -2.770473E+00 -7.675520E+00 -3.960493E+00 -1.568551E+01 -2.792683E+00 -7.799079E+00 -3.243496E+00 -1.052027E+01 -2.296698E+00 -5.274821E+00 -2.794771E+00 -7.810744E+00 -1.953175E+00 -3.814893E+00 -2.187333E+00 -4.784426E+00 -1.544523E+00 -2.385551E+00 -1.199628E+00 -1.439107E+00 -8.356207E-01 -6.982620E-01 +1.136805E+00 +1.292326E+00 +7.987282E-01 +6.379667E-01 +2.266961E+00 +5.139112E+00 +1.613498E+00 +2.603376E+00 +3.046379E+00 +9.280427E+00 +2.182480E+00 +4.763219E+00 +3.568101E+00 +1.273134E+01 +2.532478E+00 +6.413444E+00 +3.989532E+00 +1.591637E+01 +2.848319E+00 +8.112921E+00 +3.853139E+00 +1.484668E+01 +2.718497E+00 +7.390223E+00 +3.478134E+00 +1.209742E+01 +2.467279E+00 +6.087465E+00 +2.952214E+00 +8.715569E+00 +2.103257E+00 +4.423688E+00 +1.917446E+00 +3.676599E+00 +1.378361E+00 +1.899878E+00 +1.048230E+00 +1.098785E+00 +7.511876E-01 +5.642828E-01 tally 3: -7.817283E-01 -6.110991E-01 -5.930048E-02 -3.516547E-03 -1.426340E+00 -2.034446E+00 -8.539269E-02 -7.291911E-03 -1.815669E+00 -3.296655E+00 -1.221590E-01 -1.492282E-02 -2.447185E+00 -5.988716E+00 -1.624833E-01 -2.640082E-02 -2.670094E+00 -7.129404E+00 -1.838315E-01 -3.379401E-02 -2.683021E+00 -7.198600E+00 -1.719714E-01 -2.957416E-02 -2.215470E+00 -4.908307E+00 -1.707854E-01 -2.916764E-02 -1.872360E+00 -3.505733E+00 -1.209730E-01 -1.463446E-02 -1.484189E+00 -2.202817E+00 -1.114849E-01 -1.242888E-02 -8.018794E-01 -6.430105E-01 -5.692846E-02 -3.240849E-03 +7.701212E-01 +5.930866E-01 +4.481580E-02 +2.008456E-03 +1.547321E+00 +2.394203E+00 +1.226538E-01 +1.504395E-02 +2.106393E+00 +4.436893E+00 +1.450617E-01 +2.104289E-02 +2.437675E+00 +5.942260E+00 +1.521379E-01 +2.314593E-02 +2.754657E+00 +7.588135E+00 +1.745458E-01 +3.046622E-02 +2.623856E+00 +6.884619E+00 +1.851600E-01 +3.428423E-02 +2.376884E+00 +5.649579E+00 +1.615728E-01 +2.610576E-02 +2.021851E+00 +4.087882E+00 +1.533172E-01 +2.350617E-02 +1.333182E+00 +1.777374E+00 +7.076179E-02 +5.007231E-03 +7.258458E-01 +5.268521E-01 +3.656026E-02 +1.336653E-03 tally 4: -1.404164E-01 -1.971677E-02 +1.667426E-01 +2.780308E-02 0.000000E+00 0.000000E+00 -1.383903E-01 -1.915186E-02 -2.626104E-01 -6.896424E-02 +1.292556E-01 +1.670700E-02 +2.813401E-01 +7.915227E-02 0.000000E+00 0.000000E+00 0.000000E+00 @@ -128,14 +128,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -2.626104E-01 -6.896424E-02 -1.383903E-01 -1.915186E-02 -2.300555E-01 -5.292554E-02 -3.213857E-01 -1.032888E-01 +2.813401E-01 +7.915227E-02 +1.292556E-01 +1.670700E-02 +2.670582E-01 +7.132006E-02 +4.055365E-01 +1.644599E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -152,14 +152,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -3.213857E-01 -1.032888E-01 -2.300555E-01 -5.292554E-02 -3.621759E-01 -1.311714E-01 -4.326073E-01 -1.871490E-01 +4.055365E-01 +1.644599E-01 +2.670582E-01 +7.132006E-02 +3.848164E-01 +1.480837E-01 +4.809472E-01 +2.313102E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -176,14 +176,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -4.326073E-01 -1.871490E-01 -3.621759E-01 -1.311714E-01 -4.274871E-01 -1.827452E-01 -4.701411E-01 -2.210326E-01 +4.809472E-01 +2.313102E-01 +3.848164E-01 +1.480837E-01 +4.543959E-01 +2.064756E-01 +5.106174E-01 +2.607301E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -200,14 +200,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -4.701411E-01 -2.210326E-01 -4.274871E-01 -1.827452E-01 -4.867793E-01 -2.369540E-01 -5.027352E-01 -2.527427E-01 +5.106174E-01 +2.607301E-01 +4.543959E-01 +2.064756E-01 +4.543155E-01 +2.064026E-01 +4.626331E-01 +2.140294E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -224,14 +224,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -5.027352E-01 -2.527427E-01 -4.867793E-01 -2.369540E-01 -4.679247E-01 -2.189535E-01 -4.504680E-01 -2.029214E-01 +4.626331E-01 +2.140294E-01 +4.543155E-01 +2.064026E-01 +4.827763E-01 +2.330729E-01 +4.442611E-01 +1.973679E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -248,14 +248,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -4.504680E-01 -2.029214E-01 -4.679247E-01 -2.189535E-01 -4.341058E-01 -1.884478E-01 -3.622812E-01 -1.312477E-01 +4.442611E-01 +1.973679E-01 +4.827763E-01 +2.330729E-01 +4.630415E-01 +2.144074E-01 +3.886521E-01 +1.510505E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -272,14 +272,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -3.622812E-01 -1.312477E-01 -4.341058E-01 -1.884478E-01 -3.743485E-01 -1.401368E-01 -2.666983E-01 -7.112801E-02 +3.886521E-01 +1.510505E-01 +4.630415E-01 +2.144074E-01 +3.535862E-01 +1.250232E-01 +2.530293E-01 +6.402384E-02 0.000000E+00 0.000000E+00 0.000000E+00 @@ -296,14 +296,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -2.666983E-01 -7.112801E-02 -3.743485E-01 -1.401368E-01 -2.832798E-01 -8.024744E-02 -1.469655E-01 -2.159885E-02 +2.530293E-01 +6.402384E-02 +3.535862E-01 +1.250232E-01 +2.465508E-01 +6.078730E-02 +1.197139E-01 +1.433141E-02 0.000000E+00 0.000000E+00 0.000000E+00 @@ -320,12 +320,12 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -1.469655E-01 -2.159885E-02 -2.832798E-01 -8.024744E-02 -1.515017E-01 -2.295275E-02 +1.197139E-01 +1.433141E-02 +2.465508E-01 +6.078730E-02 +1.369614E-01 +1.875841E-02 0.000000E+00 0.000000E+00 0.000000E+00 @@ -345,119 +345,119 @@ tally 4: 0.000000E+00 0.000000E+00 tally 5: -7.817283E-01 -6.110991E-01 -1.253966E-01 -1.572431E-02 -1.426340E+00 -2.034446E+00 -2.208824E-01 -4.878905E-02 -1.815669E+00 -3.296655E+00 -2.598719E-01 -6.753342E-02 -2.446230E+00 -5.984040E+00 -3.067264E-01 -9.408108E-02 -2.670094E+00 -7.129404E+00 -3.358723E-01 -1.128102E-01 -2.682092E+00 -7.193615E+00 -3.021784E-01 -9.131179E-02 -2.215470E+00 -4.908307E+00 -3.092112E-01 -9.561158E-02 -1.871290E+00 -3.501727E+00 -2.400626E-01 -5.763006E-02 -1.483119E+00 -2.199642E+00 -2.197799E-01 -4.830323E-02 -8.009200E-01 -6.414728E-01 -1.023113E-01 -1.046761E-02 +7.701212E-01 +5.930866E-01 +1.386254E-01 +1.921700E-02 +1.547321E+00 +2.394203E+00 +2.630318E-01 +6.918571E-02 +2.106393E+00 +4.436893E+00 +2.807911E-01 +7.884363E-02 +2.435870E+00 +5.933464E+00 +3.322093E-01 +1.103630E-01 +2.753652E+00 +7.582597E+00 +3.825961E-01 +1.463797E-01 +2.623856E+00 +6.884619E+00 +3.888719E-01 +1.512213E-01 +2.376884E+00 +5.649579E+00 +3.196211E-01 +1.021576E-01 +2.021851E+00 +4.087882E+00 +2.897873E-01 +8.397667E-02 +1.333182E+00 +1.777374E+00 +1.627096E-01 +2.647441E-02 +7.258458E-01 +5.268521E-01 +9.348575E-02 +8.739586E-03 cmfd indices 1.000000E+01 1.000000E+00 1.000000E+00 1.000000E+00 k cmfd -1.165539E+00 -1.179703E+00 -1.191810E+00 -1.207373E+00 -1.203749E+00 -1.208059E+00 -1.208191E+00 -1.201767E+00 -1.201921E+00 -1.203758E+00 -1.209018E+00 +1.149087E+00 +1.156777E+00 +1.158641E+00 +1.159507E+00 +1.156564E+00 +1.160257E+00 +1.150344E+00 +1.149854E+00 +1.151616E+00 +1.164575E+00 +1.174683E+00 cmfd entropy -3.217563E+00 -3.209882E+00 -3.204676E+00 -3.212483E+00 -3.217256E+00 -3.216849E+00 -3.219070E+00 -3.217085E+00 -3.223663E+00 -3.230980E+00 -3.230377E+00 +3.216202E+00 +3.228703E+00 +3.220414E+00 +3.214361E+00 +3.215642E+00 +3.213607E+00 +3.212862E+00 +3.213128E+00 +3.213189E+00 +3.205465E+00 +3.202859E+00 cmfd balance -1.65304E-03 -2.29951E-03 -1.63426E-03 -1.40012E-03 -1.91396E-03 -1.62948E-03 -1.95633E-03 -2.03045E-03 -1.93004E-03 -2.33201E-03 -2.29894E-03 +3.08825E-03 +1.42554E-03 +1.21448E-03 +1.17859E-03 +1.06034E-03 +9.30949E-04 +1.35713E-03 +1.13694E-03 +1.14938E-03 +1.29296E-03 +1.46518E-03 cmfd dominance ratio -5.460E-01 -5.473E-01 -5.415E-01 -5.446E-01 -5.451E-01 -5.475E-01 -5.502E-01 -5.474E-01 -5.498E-01 -5.502E-01 -5.483E-01 +5.503E-01 +5.596E-01 +5.505E-01 +5.471E-01 +5.468E-01 +5.427E-01 +5.421E-01 +5.412E-01 +5.389E-01 +5.371E-01 +5.329E-01 cmfd openmc source comparison -6.484315E-03 -3.411419E-03 -4.321857E-03 -7.194272E-03 -9.907101E-03 -1.046661E-02 -1.050754E-02 -6.523687E-03 -7.212189E-03 -4.425062E-03 -2.540177E-03 +1.571006E-02 +6.945629E-03 +6.838511E-03 +6.183655E-03 +5.138825E-03 +4.362701E-03 +5.558586E-03 +4.188314E-03 +1.837101E-03 +2.737321E-03 +2.529244E-03 cmfd source -4.224343E-02 -7.503541E-02 -1.009853E-01 -1.238103E-01 -1.301388E-01 -1.425912E-01 -1.353339E-01 -1.134730E-01 -8.830826E-02 -4.808031E-02 +4.240947E-02 +8.226746E-02 +1.180848E-01 +1.328470E-01 +1.412449E-01 +1.424870E-01 +1.269297E-01 +1.096476E-01 +6.953001E-02 +3.455212E-02 diff --git a/tests/regression_tests/cmfd_feed_rolling_window/results_true.dat b/tests/regression_tests/cmfd_feed_rolling_window/results_true.dat index a065289ec..5ff4a132f 100644 --- a/tests/regression_tests/cmfd_feed_rolling_window/results_true.dat +++ b/tests/regression_tests/cmfd_feed_rolling_window/results_true.dat @@ -1,117 +1,117 @@ k-combined: -1.169526E+00 5.973537E-03 +1.173626E+00 1.098719E-02 tally 1: -1.115884E+01 -1.253283E+01 -2.176964E+01 -4.753045E+01 -2.988209E+01 -8.948736E+01 -3.426842E+01 -1.176956E+02 -3.817775E+01 -1.464502E+02 -3.802079E+01 -1.449155E+02 -3.407399E+01 -1.166067E+02 -2.938579E+01 -8.673128E+01 -2.126809E+01 -4.540856E+01 -1.105934E+01 -1.229825E+01 +1.101892E+01 +1.218768E+01 +2.036233E+01 +4.152577E+01 +2.937587E+01 +8.637268E+01 +3.502389E+01 +1.231700E+02 +3.804803E+01 +1.453948E+02 +3.822561E+01 +1.465677E+02 +3.456290E+01 +1.198651E+02 +2.904088E+01 +8.470264E+01 +2.111529E+01 +4.463713E+01 +1.147633E+01 +1.326012E+01 tally 2: -1.064631E+00 -1.133439E+00 -7.584662E-01 -5.752710E-01 -1.898252E+00 -3.603361E+00 -1.330629E+00 -1.770573E+00 -2.737585E+00 -7.494369E+00 -1.949437E+00 -3.800303E+00 -3.313845E+00 -1.098157E+01 -2.356303E+00 -5.552166E+00 -3.735566E+00 -1.395445E+01 -2.657859E+00 -7.064213E+00 -4.052274E+00 -1.642093E+01 -2.864885E+00 -8.207568E+00 -3.385112E+00 -1.145899E+01 -2.358075E+00 -5.560519E+00 -2.776429E+00 -7.708560E+00 -1.960468E+00 -3.843434E+00 -2.240243E+00 -5.018688E+00 -1.549641E+00 -2.401386E+00 -1.092006E+00 -1.192478E+00 -7.441585E-01 -5.537719E-01 +1.010478E+00 +1.021066E+00 +6.902031E-01 +4.763804E-01 +1.899891E+00 +3.609584E+00 +1.322615E+00 +1.749312E+00 +2.756419E+00 +7.597845E+00 +1.955934E+00 +3.825676E+00 +3.818740E+00 +1.458278E+01 +2.704746E+00 +7.315652E+00 +3.920857E+00 +1.537312E+01 +2.843144E+00 +8.083470E+00 +3.835060E+00 +1.470768E+01 +2.728705E+00 +7.445831E+00 +3.510590E+00 +1.232424E+01 +2.497237E+00 +6.236191E+00 +2.717388E+00 +7.384198E+00 +1.903638E+00 +3.623837E+00 +2.207863E+00 +4.874659E+00 +1.563588E+00 +2.444808E+00 +1.289027E+00 +1.661591E+00 +9.022714E-01 +8.140937E-01 tally 3: -7.295798E-01 -5.322866E-01 -4.986135E-02 -2.486155E-03 -1.280099E+00 -1.638654E+00 -9.022531E-02 -8.140606E-03 -1.859202E+00 -3.456630E+00 -1.234662E-01 -1.524390E-02 -2.274313E+00 -5.172502E+00 -1.234662E-01 -1.524390E-02 -2.548554E+00 -6.495129E+00 -1.531456E-01 -2.345357E-02 -2.773126E+00 -7.690228E+00 -1.733276E-01 -3.004244E-02 -2.270798E+00 -5.156524E+00 -1.673917E-01 -2.801998E-02 -1.887286E+00 -3.561849E+00 -1.507712E-01 -2.273196E-02 -1.480414E+00 -2.191625E+00 -1.127816E-01 -1.271970E-02 -7.126366E-01 -5.078509E-01 -6.054593E-02 -3.665809E-03 +6.593197E-01 +4.347024E-01 +5.216387E-02 +2.721069E-03 +1.266446E+00 +1.603885E+00 +8.298797E-02 +6.887003E-03 +1.888709E+00 +3.567222E+00 +1.398940E-01 +1.957033E-02 +2.616078E+00 +6.843867E+00 +1.588627E-01 +2.523735E-02 +2.733300E+00 +7.470927E+00 +1.944290E-01 +3.780262E-02 +2.643656E+00 +6.988917E+00 +1.612338E-01 +2.599633E-02 +2.410643E+00 +5.811199E+00 +1.754603E-01 +3.078631E-02 +1.838012E+00 +3.378288E+00 +1.126265E-01 +1.268473E-02 +1.500033E+00 +2.250100E+00 +1.102554E-01 +1.215626E-02 +8.750096E-01 +7.656418E-01 +6.757592E-02 +4.566505E-03 tally 4: -1.416041E-01 -2.005172E-02 +1.490605E-01 +2.221904E-02 0.000000E+00 0.000000E+00 -1.118431E-01 -1.250887E-02 -2.419761E-01 -5.855243E-02 +1.139233E-01 +1.297851E-02 +2.549497E-01 +6.499934E-02 0.000000E+00 0.000000E+00 0.000000E+00 @@ -128,14 +128,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -2.419761E-01 -5.855243E-02 -1.118431E-01 -1.250887E-02 -2.383966E-01 -5.683292E-02 -3.454391E-01 -1.193281E-01 +2.549497E-01 +6.499934E-02 +1.139233E-01 +1.297851E-02 +2.191337E-01 +4.801958E-02 +3.295187E-01 +1.085826E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -152,14 +152,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -3.454391E-01 -1.193281E-01 -2.383966E-01 -5.683292E-02 -3.449676E-01 -1.190027E-01 -4.324309E-01 -1.869965E-01 +3.295187E-01 +1.085826E-01 +2.191337E-01 +4.801958E-02 +3.872400E-01 +1.499548E-01 +4.595835E-01 +2.112170E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -176,14 +176,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -4.324309E-01 -1.869965E-01 -3.449676E-01 -1.190027E-01 -4.410209E-01 -1.944994E-01 -4.785286E-01 -2.289896E-01 +4.595835E-01 +2.112170E-01 +3.872400E-01 +1.499548E-01 +4.668106E-01 +2.179121E-01 +5.112307E-01 +2.613569E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -200,14 +200,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -4.785286E-01 -2.289896E-01 -4.410209E-01 -1.944994E-01 -5.038795E-01 -2.538945E-01 -5.028063E-01 -2.528142E-01 +5.112307E-01 +2.613569E-01 +4.668106E-01 +2.179121E-01 +4.716605E-01 +2.224636E-01 +4.916148E-01 +2.416851E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -224,14 +224,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -5.028063E-01 -2.528142E-01 -5.038795E-01 -2.538945E-01 -4.780368E-01 -2.285192E-01 -4.303602E-01 -1.852099E-01 +4.916148E-01 +2.416851E-01 +4.716605E-01 +2.224636E-01 +4.696777E-01 +2.205972E-01 +4.365150E-01 +1.905453E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -248,14 +248,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -4.303602E-01 -1.852099E-01 -4.780368E-01 -2.285192E-01 -4.183673E-01 -1.750312E-01 -3.317104E-01 -1.100318E-01 +4.365150E-01 +1.905453E-01 +4.696777E-01 +2.205972E-01 +4.179902E-01 +1.747158E-01 +3.350564E-01 +1.122628E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -272,14 +272,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -3.317104E-01 -1.100318E-01 -4.183673E-01 -1.750312E-01 -3.797671E-01 -1.442230E-01 -2.636003E-01 -6.948514E-02 +3.350564E-01 +1.122628E-01 +4.179902E-01 +1.747158E-01 +3.743487E-01 +1.401370E-01 +2.400661E-01 +5.763172E-02 0.000000E+00 0.000000E+00 0.000000E+00 @@ -296,14 +296,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -2.636003E-01 -6.948514E-02 -3.797671E-01 -1.442230E-01 -2.686240E-01 -7.215888E-02 -1.324766E-01 -1.755005E-02 +2.400661E-01 +5.763172E-02 +3.743487E-01 +1.401370E-01 +3.063657E-01 +9.385994E-02 +1.605078E-01 +2.576275E-02 0.000000E+00 0.000000E+00 0.000000E+00 @@ -320,12 +320,12 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -1.324766E-01 -1.755005E-02 -2.686240E-01 -7.215888E-02 -1.444839E-01 -2.087560E-02 +1.605078E-01 +2.576275E-02 +3.063657E-01 +9.385994E-02 +1.700639E-01 +2.892174E-02 0.000000E+00 0.000000E+00 0.000000E+00 @@ -345,119 +345,119 @@ tally 4: 0.000000E+00 0.000000E+00 tally 5: -7.285713E-01 -5.308161E-01 -1.056136E-01 -1.115423E-02 -1.280099E+00 -1.638654E+00 -1.717497E-01 -2.949797E-02 -1.859202E+00 -3.456630E+00 -2.285372E-01 -5.222927E-02 -2.274313E+00 -5.172502E+00 -2.636808E-01 -6.952757E-02 -2.547588E+00 -6.490203E+00 -2.914026E-01 -8.491545E-02 -2.773126E+00 -7.690228E+00 -3.908576E-01 -1.527696E-01 -2.269831E+00 -5.152135E+00 -3.279256E-01 -1.075352E-01 -1.886272E+00 -3.558024E+00 -2.679083E-01 -7.177487E-02 -1.479436E+00 -2.188731E+00 -2.362981E-01 -5.583681E-02 -7.126366E-01 -5.078509E-01 -1.015892E-01 -1.032038E-02 +6.593197E-01 +4.347024E-01 +1.314196E-01 +1.727112E-02 +1.266446E+00 +1.603885E+00 +2.002491E-01 +4.009970E-02 +1.888709E+00 +3.567222E+00 +2.444522E-01 +5.975686E-02 +2.616078E+00 +6.843867E+00 +3.234935E-01 +1.046481E-01 +2.733300E+00 +7.470927E+00 +3.309500E-01 +1.095279E-01 +2.643656E+00 +6.988917E+00 +4.025014E-01 +1.620074E-01 +2.410643E+00 +5.811199E+00 +3.050040E-01 +9.302747E-02 +1.838012E+00 +3.378288E+00 +2.800764E-01 +7.844279E-02 +1.500033E+00 +2.250100E+00 +2.324765E-01 +5.404531E-02 +8.750096E-01 +7.656418E-01 +1.256919E-01 +1.579844E-02 cmfd indices 1.000000E+01 1.000000E+00 1.000000E+00 1.000000E+00 k cmfd -1.188625E+00 -1.172261E+00 -1.172154E+00 -1.176234E+00 -1.161072E+00 -1.174217E+00 -1.176208E+00 -1.183067E+00 -1.208406E+00 -1.220367E+00 -1.208889E+00 +1.166297E+00 +1.148237E+00 +1.162472E+00 +1.187078E+00 +1.188411E+00 +1.194879E+00 +1.216739E+00 +1.216829E+00 +1.196596E+00 +1.199223E+00 +1.211817E+00 cmfd entropy -3.216548E+00 -3.213244E+00 -3.220132E+00 -3.216556E+00 -3.218184E+00 -3.208592E+00 -3.220641E+00 -3.217076E+00 -3.216257E+00 -3.212578E+00 -3.230102E+00 +3.215349E+00 +3.225577E+00 +3.223357E+00 +3.208828E+00 +3.211072E+00 +3.206578E+00 +3.195799E+00 +3.198236E+00 +3.220074E+00 +3.230249E+00 +3.238015E+00 cmfd balance -1.65186E-03 -1.76715E-03 -2.25997E-03 -2.27924E-03 -1.67354E-03 -1.72671E-03 -1.79744E-03 -1.99065E-03 -2.56417E-03 -2.45718E-03 -3.26245E-03 +2.07468E-03 +2.39687E-03 +1.51020E-03 +2.07618E-03 +1.89367E-03 +2.00902E-03 +2.54856E-03 +2.43636E-03 +2.48527E-03 +3.07775E-03 +3.37967E-03 cmfd dominance ratio -5.445E-01 -5.466E-01 -5.539E-01 -5.547E-01 -5.569E-01 -5.518E-01 -5.553E-01 -5.544E-01 -5.474E-01 -5.355E-01 -5.460E-01 +5.505E-01 +5.558E-01 +5.584E-01 +5.477E-01 +5.477E-01 +5.426E-01 +5.335E-01 +5.305E-01 +5.427E-01 +5.484E-01 +5.465E-01 cmfd openmc source comparison -5.662096E-03 -3.660183E-03 -4.806643E-03 -2.475327E-03 -6.166988E-03 -2.205088E-03 -4.010491E-03 -6.270883E-03 -3.070427E-03 -5.679208E-03 -1.488803E-02 +5.598628E-03 +1.162952E-02 +1.083004E-02 +1.037470E-02 +5.649750E-03 +5.137914E-03 +3.868209E-03 +1.208756E-02 +5.398131E-03 +8.119598E-03 +4.573105E-03 cmfd source -4.111004E-02 -7.023296E-02 -1.023250E-01 -1.185886E-01 -1.386562E-01 -1.392823E-01 -1.290017E-01 -1.147469E-01 -9.733704E-02 -4.871933E-02 +4.219187E-02 +8.692096E-02 +1.061389E-01 +1.199181E-01 +1.377328E-01 +1.326161E-01 +1.345872E-01 +1.112871E-01 +7.569533E-02 +5.291175E-02 diff --git a/tests/regression_tests/cmfd_nofeed/results_true.dat b/tests/regression_tests/cmfd_nofeed/results_true.dat index dac35871c..756aa4570 100644 --- a/tests/regression_tests/cmfd_nofeed/results_true.dat +++ b/tests/regression_tests/cmfd_nofeed/results_true.dat @@ -1,117 +1,117 @@ k-combined: -1.170405E+00 1.487119E-02 +1.172893E+00 8.095197E-03 tally 1: -1.172722E+01 -1.378635E+01 -2.122139E+01 -4.511390E+01 -2.936481E+01 -8.649521E+01 -3.553909E+01 -1.265901E+02 -3.862903E+01 -1.497314E+02 -3.683895E+01 -1.358679E+02 -3.373597E+01 -1.140439E+02 -2.810435E+01 -7.932253E+01 -2.098314E+01 -4.409819E+01 -1.105096E+01 -1.224007E+01 +1.156995E+01 +1.347019E+01 +2.120053E+01 +4.531200E+01 +2.995993E+01 +8.997889E+01 +3.498938E+01 +1.226414E+02 +3.794510E+01 +1.442188E+02 +3.798115E+01 +1.446436E+02 +3.415954E+01 +1.171635E+02 +2.960329E+01 +8.785532E+01 +2.182231E+01 +4.782353E+01 +1.147379E+01 +1.321150E+01 tally 2: -2.275408E+01 -2.603315E+01 -1.590700E+01 -1.273395E+01 -4.112322E+01 -8.498758E+01 -2.911800E+01 -4.264070E+01 -5.707453E+01 -1.638375E+02 -4.069300E+01 -8.336155E+01 -6.915962E+01 -2.399628E+02 -4.926800E+01 -1.218497E+02 -7.521027E+01 -2.842789E+02 -5.357900E+01 -1.443468E+02 -7.387401E+01 -2.738660E+02 -5.263400E+01 -1.390611E+02 -6.871266E+01 -2.368771E+02 -4.902000E+01 -1.205569E+02 -5.632046E+01 -1.592677E+02 -3.999300E+01 -8.035469E+01 -4.291289E+01 -9.245946E+01 -3.046000E+01 -4.661878E+01 -2.273666E+01 -2.598211E+01 -1.590800E+01 -1.271433E+01 +2.345900E+01 +2.783672E+01 +1.627300E+01 +1.339749E+01 +4.127267E+01 +8.563716E+01 +2.934800E+01 +4.334439E+01 +5.742644E+01 +1.658158E+02 +4.092600E+01 +8.423842E+01 +6.740126E+01 +2.279288E+02 +4.796500E+01 +1.154602E+02 +7.340327E+01 +2.701349E+02 +5.235900E+01 +1.374186E+02 +7.387392E+01 +2.740829E+02 +5.277400E+01 +1.398425E+02 +6.733428E+01 +2.274414E+02 +4.800100E+01 +1.156206E+02 +5.794970E+01 +1.685421E+02 +4.124600E+01 +8.540686E+01 +4.257013E+01 +9.092401E+01 +3.014500E+01 +4.566369E+01 +2.300274E+01 +2.659051E+01 +1.613400E+01 +1.307448E+01 tally 3: -1.529800E+01 -1.178010E+01 -1.016076E+00 -5.280687E-02 -2.803900E+01 -3.955010E+01 -1.861024E+00 -1.765351E-01 -3.919400E+01 -7.734526E+01 -2.540695E+00 -3.268959E-01 -4.749400E+01 -1.132677E+02 -3.087604E+00 -4.837647E-01 -5.156500E+01 -1.337335E+02 -3.371014E+00 -5.734875E-01 -5.070500E+01 -1.290569E+02 -3.292766E+00 -5.489854E-01 -4.723400E+01 -1.119247E+02 -2.949932E+00 -4.381745E-01 -3.847900E+01 -7.441953E+01 -2.522868E+00 -3.218962E-01 -2.933900E+01 -4.325593E+01 -1.818016E+00 -1.672765E-01 -1.534700E+01 -1.183573E+01 -9.564025E-01 -4.735079E-02 +1.564900E+01 +1.239852E+01 +1.086873E+00 +6.047264E-02 +2.821700E+01 +4.006730E+01 +1.855830E+00 +1.755984E-01 +3.946300E+01 +7.833997E+01 +2.523142E+00 +3.210725E-01 +4.622500E+01 +1.072588E+02 +2.919735E+00 +4.340292E-01 +5.033400E+01 +1.270010E+02 +3.243022E+00 +5.318534E-01 +5.082400E+01 +1.297502E+02 +3.313898E+00 +5.546608E-01 +4.623700E+01 +1.072944E+02 +2.887766E+00 +4.203084E-01 +3.975000E+01 +7.934279E+01 +2.567158E+00 +3.333121E-01 +2.903500E+01 +4.237270E+01 +1.852070E+00 +1.733821E-01 +1.557800E+01 +1.219084E+01 +9.951884E-01 +5.121758E-02 tally 4: -3.092000E+00 -4.809100E-01 +3.111000E+00 +4.872850E-01 0.000000E+00 0.000000E+00 -2.628000E+00 -3.509980E-01 -5.388000E+00 -1.458946E+00 +2.794000E+00 +3.972060E-01 +5.520000E+00 +1.535670E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -128,14 +128,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -5.388000E+00 -1.458946E+00 -2.628000E+00 -3.509980E-01 -5.063000E+00 -1.292417E+00 -7.312000E+00 -2.686738E+00 +5.520000E+00 +1.535670E+00 +2.794000E+00 +3.972060E-01 +5.071000E+00 +1.305697E+00 +7.303000E+00 +2.685365E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -152,14 +152,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -7.312000E+00 -2.686738E+00 -5.063000E+00 -1.292417E+00 -7.115000E+00 -2.542363E+00 -8.719000E+00 -3.819081E+00 +7.303000E+00 +2.685365E+00 +5.071000E+00 +1.305697E+00 +7.015000E+00 +2.471981E+00 +8.545000E+00 +3.670539E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -176,14 +176,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -8.719000E+00 -3.819081E+00 -7.115000E+00 -2.542363E+00 -8.483000E+00 -3.615549E+00 -9.255000E+00 -4.303287E+00 +8.545000E+00 +3.670539E+00 +7.015000E+00 +2.471981E+00 +8.431000E+00 +3.570057E+00 +9.224000E+00 +4.268004E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -200,14 +200,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -9.255000E+00 -4.303287E+00 -8.483000E+00 -3.615549E+00 -9.375000E+00 -4.416751E+00 -9.330000E+00 -4.375230E+00 +9.224000E+00 +4.268004E+00 +8.431000E+00 +3.570057E+00 +9.217000E+00 +4.259749E+00 +9.305000E+00 +4.340149E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -224,14 +224,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -9.330000E+00 -4.375230E+00 -9.375000E+00 -4.416751E+00 -9.346000E+00 -4.379220E+00 -8.458000E+00 -3.585930E+00 +9.305000E+00 +4.340149E+00 +9.217000E+00 +4.259749E+00 +9.374000E+00 +4.415290E+00 +8.611000E+00 +3.718227E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -248,14 +248,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -8.458000E+00 -3.585930E+00 -9.346000E+00 -4.379220E+00 -8.671000E+00 -3.770383E+00 -7.062000E+00 -2.505966E+00 +8.611000E+00 +3.718227E+00 +9.374000E+00 +4.415290E+00 +8.515000E+00 +3.639945E+00 +7.056000E+00 +2.501658E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -272,14 +272,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -7.062000E+00 -2.505966E+00 -8.671000E+00 -3.770383E+00 -7.279000E+00 -2.663587E+00 -4.994000E+00 -1.261468E+00 +7.056000E+00 +2.501658E+00 +8.515000E+00 +3.639945E+00 +7.385000E+00 +2.737677E+00 +5.194000E+00 +1.356022E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -296,14 +296,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -4.994000E+00 -1.261468E+00 -7.279000E+00 -2.663587E+00 -5.492000E+00 -1.515002E+00 -2.772000E+00 -3.896040E-01 +5.194000E+00 +1.356022E+00 +7.385000E+00 +2.737677E+00 +5.436000E+00 +1.481654E+00 +2.756000E+00 +3.843860E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -320,12 +320,12 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -2.772000E+00 -3.896040E-01 -5.492000E+00 -1.515002E+00 -3.022000E+00 -4.608940E-01 +2.756000E+00 +3.843860E-01 +5.436000E+00 +1.481654E+00 +3.030000E+00 +4.643920E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -345,144 +345,144 @@ tally 4: 0.000000E+00 0.000000E+00 tally 5: -1.529600E+01 -1.177689E+01 -2.229624E+00 -2.514699E-01 -2.803300E+01 -3.953329E+01 -3.889856E+00 -7.678274E-01 -3.918900E+01 -7.732686E+01 -5.211188E+00 -1.378173E+00 -4.748700E+01 -1.132339E+02 -6.595911E+00 -2.211528E+00 -5.155000E+01 -1.336522E+02 -6.673103E+00 -2.248462E+00 -5.069800E+01 -1.290196E+02 -6.907470E+00 -2.412919E+00 -4.722500E+01 -1.118824E+02 -6.200070E+00 -1.954544E+00 -3.847200E+01 -7.439145E+01 -5.385095E+00 -1.462192E+00 -2.933600E+01 -4.324744E+01 -4.014057E+00 -8.142088E-01 -1.534200E+01 -1.182781E+01 -2.076271E+00 -2.273431E-01 +1.564300E+01 +1.238861E+01 +2.090227E+00 +2.262627E-01 +2.821400E+01 +4.005826E+01 +3.870834E+00 +7.614623E-01 +3.945400E+01 +7.830326E+01 +5.290557E+00 +1.422339E+00 +4.621500E+01 +1.072116E+02 +6.144745E+00 +1.903309E+00 +5.032900E+01 +1.269756E+02 +6.867524E+00 +2.373593E+00 +5.081000E+01 +1.296784E+02 +6.456283E+00 +2.130767E+00 +4.623000E+01 +1.072613E+02 +5.931623E+00 +1.776451E+00 +3.974500E+01 +7.932288E+01 +5.339603E+00 +1.456812E+00 +2.902800E+01 +4.235232E+01 +4.102240E+00 +8.519551E-01 +1.557800E+01 +1.219084E+01 +2.137954E+00 +2.347770E-01 cmfd indices 1.000000E+01 1.000000E+00 1.000000E+00 1.000000E+00 k cmfd -1.161531E+00 -1.181707E+00 -1.176063E+00 -1.168433E+00 -1.173170E+00 -1.174671E+00 -1.176457E+00 -1.177540E+00 -1.180826E+00 -1.174158E+00 -1.171305E+00 -1.172618E+00 -1.170171E+00 -1.173235E+00 -1.172599E+00 -1.177343E+00 +1.129918E+00 +1.148352E+00 +1.143137E+00 +1.145795E+00 +1.147285E+00 +1.148588E+00 +1.148151E+00 +1.162118E+00 +1.165380E+00 +1.162851E+00 +1.163379E+00 +1.166986E+00 +1.167838E+00 +1.171743E+00 +1.170398E+00 +1.169773E+00 cmfd entropy -3.206619E+00 -3.207385E+00 -3.208853E+00 -3.210825E+00 -3.214820E+00 -3.213490E+00 -3.212717E+00 -3.210590E+00 -3.211948E+00 -3.212156E+00 -3.212900E+00 -3.212275E+00 -3.212766E+00 -3.214205E+00 -3.212717E+00 -3.214169E+00 +3.224769E+00 +3.222795E+00 +3.221174E+00 +3.222164E+00 +3.221025E+00 +3.220967E+00 +3.223497E+00 +3.219213E+00 +3.221679E+00 +3.222084E+00 +3.222281E+00 +3.222540E+00 +3.224614E+00 +3.224193E+00 +3.224925E+00 +3.224367E+00 cmfd balance -4.99833E-03 -5.81289E-03 -3.45193E-03 -2.84521E-03 -3.72331E-03 -3.07942E-03 -2.58676E-03 -2.19354E-03 -2.11522E-03 -2.02671E-03 -1.71439E-03 -1.62909E-03 -1.43261E-03 -1.26201E-03 -1.40167E-03 -1.26141E-03 +3.90454E-03 +4.33180E-03 +3.77057E-03 +3.16391E-03 +3.11765E-03 +2.59886E-03 +2.81060E-03 +3.25473E-03 +2.68544E-03 +2.01716E-03 +1.89350E-03 +1.79159E-03 +1.51353E-03 +1.48514E-03 +1.50207E-03 +1.44045E-03 cmfd dominance ratio -5.283E-01 -5.304E-01 -5.310E-01 -5.324E-01 -5.372E-01 -5.369E-01 -5.367E-01 -5.341E-01 -5.353E-01 -5.375E-01 -5.379E-01 -5.372E-01 -5.379E-01 -5.393E-01 -5.384E-01 -5.382E-01 +5.539E-01 +5.522E-01 +5.491E-01 +5.511E-01 +5.506E-01 +5.523E-01 +5.523E-01 +5.473E-01 +5.478E-01 +5.461E-01 +5.462E-01 +5.459E-01 +5.475E-01 +5.463E-01 +5.466E-01 +5.469E-01 cmfd openmc source comparison -1.291827E-02 -9.488059E-03 -8.538280E-03 -6.820006E-03 -4.300032E-03 -5.486871E-03 -4.493389E-03 -4.913340E-03 -5.132196E-03 -3.342331E-03 -3.094995E-03 -3.553279E-03 -3.284811E-03 -2.492272E-03 -3.062765E-03 -2.632092E-03 +9.875240E-03 +1.119358E-02 +8.513903E-03 +7.728971E-03 +5.993771E-03 +5.837301E-03 +4.861789E-03 +5.624038E-03 +4.297229E-03 +4.029732E-03 +3.669197E-03 +3.598834E-03 +3.023310E-03 +3.347346E-03 +2.943658E-03 +2.764986E-03 cmfd source -4.280100E-02 -7.944783E-02 -1.091569E-01 -1.329540E-01 -1.451697E-01 -1.413526E-01 -1.258514E-01 -1.067698E-01 -7.656551E-02 -3.993138E-02 +4.561921E-02 +7.896381E-02 +1.084687E-01 +1.264057E-01 +1.408942E-01 +1.438180E-01 +1.247333E-01 +1.100896E-01 +7.897187E-02 +4.203556E-02 diff --git a/tests/regression_tests/cmfd_restart/results_true.dat b/tests/regression_tests/cmfd_restart/results_true.dat index 90d8820d0..f5f22d9ac 100644 --- a/tests/regression_tests/cmfd_restart/results_true.dat +++ b/tests/regression_tests/cmfd_restart/results_true.dat @@ -1,117 +1,117 @@ k-combined: -1.159021E+00 8.924006E-03 +1.164262E+00 9.207592E-03 tally 1: -1.140162E+01 -1.306940E+01 -2.093739E+01 -4.404780E+01 -2.914408E+01 -8.521010E+01 -3.483677E+01 -1.216824E+02 -3.778463E+01 -1.429632E+02 -3.810371E+01 -1.455108E+02 -3.465248E+01 -1.207868E+02 -2.862033E+01 -8.218833E+01 -2.086025E+01 -4.365941E+01 -1.130798E+01 -1.286509E+01 +1.156972E+01 +1.339924E+01 +2.136306E+01 +4.567185E+01 +2.859527E+01 +8.195821E+01 +3.470754E+01 +1.207851E+02 +3.766403E+01 +1.422263E+02 +3.778821E+01 +1.432660E+02 +3.573197E+01 +1.278854E+02 +2.849979E+01 +8.135515E+01 +2.073803E+01 +4.303374E+01 +1.112117E+01 +1.242944E+01 tally 2: -2.234393E+01 -2.516414E+01 -1.555024E+01 -1.218205E+01 -4.087743E+01 -8.401702E+01 -2.883717E+01 -4.185393E+01 -5.635166E+01 -1.595225E+02 -3.998857E+01 -8.040398E+01 -6.887126E+01 -2.379185E+02 -4.903103E+01 -1.206174E+02 -7.452051E+01 -2.785675E+02 -5.295380E+01 -1.406900E+02 -7.495422E+01 -2.819070E+02 -5.333191E+01 -1.427474E+02 -6.921815E+01 -2.408568E+02 -4.928246E+01 -1.221076E+02 -5.668548E+01 -1.612556E+02 -4.035856E+01 -8.181159E+01 -4.259952E+01 -9.112630E+01 -3.026717E+01 -4.600625E+01 -2.310563E+01 -2.688378E+01 -1.615934E+01 -1.315528E+01 +2.388054E+01 +2.875255E+01 +1.667791E+01 +1.403426E+01 +4.224771E+01 +8.942109E+01 +2.993088E+01 +4.490335E+01 +5.689839E+01 +1.625557E+02 +4.043633E+01 +8.212299E+01 +6.764024E+01 +2.297126E+02 +4.807902E+01 +1.161468E+02 +7.314835E+01 +2.684645E+02 +5.203584E+01 +1.359261E+02 +7.375727E+01 +2.733105E+02 +5.252944E+01 +1.386205E+02 +6.909571E+01 +2.397721E+02 +4.922548E+01 +1.217465E+02 +5.685978E+01 +1.621746E+02 +4.051938E+01 +8.237277E+01 +4.185562E+01 +8.784067E+01 +2.983570E+01 +4.467414E+01 +2.238373E+01 +2.520356E+01 +1.566758E+01 +1.234103E+01 tally 3: -1.496375E+01 -1.128154E+01 -9.905641E-01 -5.125710E-02 -2.774937E+01 -3.877241E+01 -1.786861E+00 -1.627655E-01 -3.849739E+01 -7.453828E+01 -2.494135E+00 -3.158098E-01 -4.724085E+01 -1.119901E+02 -3.031174E+00 -4.653741E-01 -5.096719E+01 -1.303552E+02 -3.254375E+00 -5.351020E-01 -5.133808E+01 -1.322892E+02 -3.383595E+00 -5.798798E-01 -4.756072E+01 -1.137527E+02 -3.001917E+00 -4.558247E-01 -3.887437E+01 -7.593416E+01 -2.517908E+00 -3.221926E-01 -2.910687E+01 -4.255173E+01 -1.817765E+00 -1.678763E-01 -1.557241E+01 -1.222026E+01 -9.852737E-01 -5.002659E-02 +1.609520E+01 +1.307542E+01 +1.033429E+00 +5.510889E-02 +2.877073E+01 +4.149542E+01 +1.964219E+00 +1.954692E-01 +3.896816E+01 +7.629752E+01 +2.484053E+00 +3.103733E-01 +4.634285E+01 +1.079367E+02 +2.974750E+00 +4.468223E-01 +5.007964E+01 +1.259202E+02 +3.181802E+00 +5.103621E-01 +5.058915E+01 +1.286193E+02 +3.249442E+00 +5.337712E-01 +4.744464E+01 +1.131026E+02 +3.067644E+00 +4.736335E-01 +3.900632E+01 +7.634433E+01 +2.443552E+00 +3.028060E-01 +2.874166E+01 +4.146375E+01 +1.810421E+00 +1.671667E-01 +1.509222E+01 +1.145579E+01 +1.014919E+00 +5.391053E-02 tally 4: -3.047490E+00 -4.661458E-01 +3.148231E+00 +4.974555E-01 0.000000E+00 0.000000E+00 -2.635775E+00 -3.524426E-01 -5.357229E+00 -1.440049E+00 +2.805439E+00 +3.982239E-01 +5.574031E+00 +1.561105E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -128,14 +128,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -5.357229E+00 -1.440049E+00 -2.635775E+00 -3.524426E-01 -4.982072E+00 -1.251449E+00 -7.228146E+00 -2.620353E+00 +5.574031E+00 +1.561105E+00 +2.805439E+00 +3.982239E-01 +5.171038E+00 +1.344877E+00 +7.372031E+00 +2.725420E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -152,14 +152,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -7.228146E+00 -2.620353E+00 -4.982072E+00 -1.251449E+00 -7.082265E+00 -2.520047E+00 -8.736529E+00 -3.831244E+00 +7.372031E+00 +2.725420E+00 +5.171038E+00 +1.344877E+00 +6.946847E+00 +2.424850E+00 +8.496610E+00 +3.627542E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -176,14 +176,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -8.736529E+00 -3.831244E+00 -7.082265E+00 -2.520047E+00 -8.474631E+00 -3.607043E+00 -9.346623E+00 -4.390819E+00 +8.496610E+00 +3.627542E+00 +6.946847E+00 +2.424850E+00 +8.479501E+00 +3.607280E+00 +9.261869E+00 +4.305912E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -200,14 +200,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -9.346623E+00 -4.390819E+00 -8.474631E+00 -3.607043E+00 -9.496684E+00 -4.522478E+00 -9.532822E+00 -4.559003E+00 +9.261869E+00 +4.305912E+00 +8.479501E+00 +3.607280E+00 +9.232858E+00 +4.278432E+00 +9.306384E+00 +4.348594E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -224,14 +224,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -9.532822E+00 -4.559003E+00 -9.496684E+00 -4.522478E+00 -9.404949E+00 -4.446260E+00 -8.550930E+00 -3.668401E+00 +9.306384E+00 +4.348594E+00 +9.232858E+00 +4.278432E+00 +9.299764E+00 +4.347828E+00 +8.511976E+00 +3.639893E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -248,14 +248,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -8.550930E+00 -3.668401E+00 -9.404949E+00 -4.446260E+00 -8.785273E+00 -3.874792E+00 -7.128863E+00 -2.554326E+00 +8.511976E+00 +3.639893E+00 +9.299764E+00 +4.347828E+00 +8.726086E+00 +3.819567E+00 +7.147277E+00 +2.562747E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -272,14 +272,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -7.128863E+00 -2.554326E+00 -8.785273E+00 -3.874792E+00 -7.408549E+00 -2.755885E+00 -5.094992E+00 -1.305737E+00 +7.147277E+00 +2.562747E+00 +8.726086E+00 +3.819567E+00 +7.218790E+00 +2.612243E+00 +5.018287E+00 +1.263077E+00 0.000000E+00 0.000000E+00 0.000000E+00 @@ -296,14 +296,14 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -5.094992E+00 -1.305737E+00 -7.408549E+00 -2.755885E+00 -5.532149E+00 -1.537289E+00 -2.812344E+00 -3.997146E-01 +5.018287E+00 +1.263077E+00 +7.218790E+00 +2.612243E+00 +5.443494E+00 +1.487018E+00 +2.732334E+00 +3.773047E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -320,12 +320,12 @@ tally 4: 0.000000E+00 0.000000E+00 0.000000E+00 -2.812344E+00 -3.997146E-01 -5.532149E+00 -1.537289E+00 -3.063251E+00 -4.728672E-01 +2.732334E+00 +3.773047E-01 +5.443494E+00 +1.487018E+00 +3.044773E+00 +4.655756E-01 0.000000E+00 0.000000E+00 0.000000E+00 @@ -345,144 +345,144 @@ tally 4: 0.000000E+00 0.000000E+00 tally 5: -1.496000E+01 -1.127586E+01 -2.280081E+00 -2.675609E-01 -2.774503E+01 -3.876011E+01 -3.908836E+00 -7.703029E-01 -3.848706E+01 -7.449836E+01 -5.299924E+00 -1.422782E+00 -4.723172E+01 -1.119459E+02 -6.450156E+00 -2.105590E+00 -5.095931E+01 -1.303132E+02 -7.050681E+00 -2.515092E+00 -5.133412E+01 -1.322694E+02 -6.853429E+00 -2.384127E+00 -4.754621E+01 -1.136848E+02 -6.370026E+00 -2.058896E+00 -3.886829E+01 -7.591042E+01 -5.266816E+00 -1.400495E+00 -2.910277E+01 -4.253981E+01 -4.090844E+00 -8.442500E-01 -1.556949E+01 -1.221526E+01 -2.266123E+00 -2.641551E-01 +1.609029E+01 +1.306718E+01 +2.230601E+00 +2.559496E-01 +2.876780E+01 +4.148686E+01 +3.835952E+00 +7.456562E-01 +3.895738E+01 +7.625344E+01 +4.841024E+00 +1.197335E+00 +4.633595E+01 +1.079043E+02 +6.236821E+00 +1.963311E+00 +5.007472E+01 +1.258967E+02 +6.749745E+00 +2.297130E+00 +5.058336E+01 +1.285894E+02 +6.727612E+00 +2.315656E+00 +4.743869E+01 +1.130735E+02 +6.338193E+00 +2.042159E+00 +3.899838E+01 +7.631289E+01 +5.187573E+00 +1.359733E+00 +2.873434E+01 +4.144233E+01 +3.815610E+00 +7.367619E-01 +1.509020E+01 +1.145268E+01 +2.125767E+00 +2.341894E-01 cmfd indices 1.000000E+01 1.000000E+00 1.000000E+00 1.000000E+00 k cmfd -1.161531E+00 -1.182724E+00 -1.169653E+00 -1.164722E+00 -1.164583E+00 -1.162952E+00 -1.167024E+00 -1.164509E+00 -1.165693E+00 -1.170623E+00 -1.166618E+00 -1.170805E+00 -1.170962E+00 -1.170964E+00 -1.168224E+00 -1.169864E+00 +1.129918E+00 +1.143848E+00 +1.147976E+00 +1.151534E+00 +1.152378E+00 +1.148219E+00 +1.150402E+00 +1.154647E+00 +1.156159E+00 +1.160048E+00 +1.167441E+00 +1.168163E+00 +1.168629E+00 +1.164120E+00 +1.165051E+00 +1.169177E+00 cmfd entropy -3.206619E+00 -3.205815E+00 -3.208678E+00 -3.210820E+00 -3.217023E+00 -3.215014E+00 -3.214592E+00 -3.215913E+00 -3.214998E+00 -3.213644E+00 -3.210755E+00 -3.210496E+00 -3.212488E+00 -3.211553E+00 -3.212999E+00 -3.214052E+00 +3.224769E+00 +3.225945E+00 +3.227421E+00 +3.226174E+00 +3.224429E+00 +3.227049E+00 +3.230710E+00 +3.230315E+00 +3.226825E+00 +3.226655E+00 +3.226588E+00 +3.224155E+00 +3.223246E+00 +3.222640E+00 +3.223920E+00 +3.222838E+00 cmfd balance -4.99833E-03 -5.64677E-03 -3.62795E-03 -3.91962E-03 -3.87172E-03 -2.48450E-03 -3.15554E-03 -2.49335E-03 -2.31973E-03 -2.19156E-03 -2.31352E-03 -2.03401E-03 -1.80242E-03 -1.65868E-03 -1.47543E-03 -1.49706E-03 +3.90454E-03 +4.08089E-03 +3.46511E-03 +4.09535E-03 +2.62009E-03 +2.23559E-03 +2.54033E-03 +2.12799E-03 +2.25864E-03 +1.85766E-03 +1.49916E-03 +1.63471E-03 +1.48377E-03 +1.59800E-03 +1.37354E-03 +1.32853E-03 cmfd dominance ratio -5.283E-01 -5.289E-01 -5.305E-01 -5.327E-01 -5.377E-01 -5.360E-01 -5.353E-01 -4.983E-01 -5.379E-01 -5.370E-01 -5.359E-01 -5.349E-01 -5.364E-01 -5.347E-01 -5.360E-01 -5.378E-01 +5.539E-01 +5.537E-01 +5.536E-01 +5.515E-01 +5.512E-01 +5.514E-01 +5.518E-01 +5.507E-01 +5.500E-01 +5.497E-01 +5.477E-01 +5.461E-01 +5.444E-01 +5.445E-01 +5.454E-01 +5.441E-01 cmfd openmc source comparison -1.291827E-02 -1.027137E-02 -8.738370E-03 -6.854409E-03 -4.188357E-03 -4.941359E-03 -5.139239E-03 -4.244784E-03 -4.240559E-03 -3.375424E-03 -3.716858E-03 -3.595700E-03 -3.626952E-03 -3.999302E-03 -2.431760E-03 -1.673200E-03 +9.875240E-03 +1.106163E-02 +9.847628E-03 +6.065921E-03 +5.772039E-03 +4.615656E-03 +4.244331E-03 +3.694299E-03 +3.545814E-03 +3.213063E-03 +3.467537E-03 +3.383489E-03 +3.697591E-03 +3.937358E-03 +3.369124E-03 +3.190359E-03 cmfd source -4.185460E-02 -7.636314E-02 -1.075536E-01 -1.307167E-01 -1.400879E-01 -1.459944E-01 -1.297413E-01 -1.084649E-01 -7.772031E-02 -4.150306E-02 +4.360494E-02 +8.397599E-02 +1.074181E-01 +1.294531E-01 +1.385611E-01 +1.407934E-01 +1.325191E-01 +1.044311E-01 +7.660359E-02 +4.263941E-02 diff --git a/tests/regression_tests/complex_cell/results_true.dat b/tests/regression_tests/complex_cell/results_true.dat index 927a7a519..3ce3d7cbc 100644 --- a/tests/regression_tests/complex_cell/results_true.dat +++ b/tests/regression_tests/complex_cell/results_true.dat @@ -1,11 +1,11 @@ k-combined: -2.490321E-01 1.083676E-03 +2.564169E-01 4.095378E-03 tally 1: -2.617769E+00 -1.371478E+00 -2.716496E+00 -1.476169E+00 -1.005297E+00 -2.026100E-01 -1.075286E-01 -2.316593E-03 +2.607144E+00 +1.360414E+00 +2.681079E+00 +1.439354E+00 +9.627534E-01 +1.855496E-01 +1.123751E-01 +2.530233E-03 diff --git a/tests/regression_tests/confidence_intervals/results_true.dat b/tests/regression_tests/confidence_intervals/results_true.dat index cb6c6f00a..6a906d07e 100644 --- a/tests/regression_tests/confidence_intervals/results_true.dat +++ b/tests/regression_tests/confidence_intervals/results_true.dat @@ -1,5 +1,5 @@ k-combined: -2.679617E-01 1.158917E-02 +2.759923E-01 6.988588E-03 tally 1: -6.693704E+01 -5.643483E+02 +6.167984E+01 +4.772717E+02 diff --git a/tests/regression_tests/dagmc/external/results_true.dat b/tests/regression_tests/dagmc/external/results_true.dat index e5127c827..cda656937 100644 --- a/tests/regression_tests/dagmc/external/results_true.dat +++ b/tests/regression_tests/dagmc/external/results_true.dat @@ -1,5 +1,5 @@ k-combined: -8.426936E-01 5.715847E-02 +9.118190E-01 3.615552E-02 tally 1: -8.093843E+00 -1.328829E+01 +8.430103E+00 +1.442878E+01 diff --git a/tests/regression_tests/dagmc/legacy/results_true.dat b/tests/regression_tests/dagmc/legacy/results_true.dat index e5127c827..cda656937 100644 --- a/tests/regression_tests/dagmc/legacy/results_true.dat +++ b/tests/regression_tests/dagmc/legacy/results_true.dat @@ -1,5 +1,5 @@ k-combined: -8.426936E-01 5.715847E-02 +9.118190E-01 3.615552E-02 tally 1: -8.093843E+00 -1.328829E+01 +8.430103E+00 +1.442878E+01 diff --git a/tests/regression_tests/dagmc/refl/results_true.dat b/tests/regression_tests/dagmc/refl/results_true.dat index bd1169835..533c62a90 100644 --- a/tests/regression_tests/dagmc/refl/results_true.dat +++ b/tests/regression_tests/dagmc/refl/results_true.dat @@ -1,5 +1,5 @@ k-combined: -2.130286E+00 2.412252E-02 +2.035173E+00 3.967029E-02 tally 1: -1.177815E+01 -2.806871E+01 +1.064492E+01 +2.301019E+01 diff --git a/tests/regression_tests/dagmc/universes/results_true.dat b/tests/regression_tests/dagmc/universes/results_true.dat index 0dc1789d4..f7bd016c1 100644 --- a/tests/regression_tests/dagmc/universes/results_true.dat +++ b/tests/regression_tests/dagmc/universes/results_true.dat @@ -1,2 +1,2 @@ k-combined: -9.436168E-01 2.905559E-02 +9.156561E-01 4.398617E-02 diff --git a/tests/regression_tests/density/results_true.dat b/tests/regression_tests/density/results_true.dat index 17d0730df..c8e3b1ede 100644 --- a/tests/regression_tests/density/results_true.dat +++ b/tests/regression_tests/density/results_true.dat @@ -1,2 +1,2 @@ k-combined: -1.097336E+00 2.305434E-02 +1.110057E+00 1.303260E-02 diff --git a/tests/regression_tests/deplete_with_transport/last_step_reference_materials.xml b/tests/regression_tests/deplete_with_transport/last_step_reference_materials.xml index b81856683..d38e8f96f 100644 --- a/tests/regression_tests/deplete_with_transport/last_step_reference_materials.xml +++ b/tests/regression_tests/deplete_with_transport/last_step_reference_materials.xml @@ -4,1001 +4,1001 @@ - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - + + + + + + + + + diff --git a/tests/regression_tests/deplete_with_transport/test_reference.h5 b/tests/regression_tests/deplete_with_transport/test_reference.h5 index 952994b86b468a550adcd787666582a53897167c..af0e3ff46f630056ab9141b30ddc2e0433473cc7 100644 GIT binary patch literal 163736 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 diff --git a/tests/regression_tests/surface_tally/results_true.dat b/tests/regression_tests/surface_tally/results_true.dat index cfd70a013..8b27fa192 100644 --- a/tests/regression_tests/surface_tally/results_true.dat +++ b/tests/regression_tests/surface_tally/results_true.dat @@ -1,52 +1,52 @@ mean,std. dev. -1.9600000e-02,1.5719768e-03 -7.3700000e-02,1.9382122e-03 -1.7130000e-01,4.0907755e-03 -6.3490000e-01,8.8197380e-03 -2.5000000e-03,5.2174919e-04 -6.0000000e-03,1.6799471e-03 -1.0600000e-02,1.8749815e-03 -4.0200000e-02,1.6852300e-03 -1.9600000e-02,1.5719768e-03 -7.3700000e-02,1.9382122e-03 -1.7130000e-01,4.0907755e-03 -6.3490000e-01,8.8197380e-03 -2.5000000e-03,5.2174919e-04 -6.0000000e-03,1.6799471e-03 -1.0600000e-02,1.8749815e-03 -4.0200000e-02,1.6852300e-03 -4.7000000e-03,9.1954095e-04 -4.5400000e-02,2.4413111e-03 -4.2800000e-02,2.2150997e-03 -4.2460000e-01,7.3017502e-03 +2.1200000e-02,1.8366636e-03 +7.4900000e-02,2.2083176e-03 +1.6220000e-01,2.8079253e-03 +6.4010000e-01,8.6838931e-03 +2.1000000e-03,3.7859389e-04 +5.6000000e-03,6.8637534e-04 +1.1700000e-02,1.4456832e-03 +4.1700000e-02,2.7041121e-03 +2.1200000e-02,1.8366636e-03 +7.4900000e-02,2.2083176e-03 +1.6220000e-01,2.8079253e-03 +6.4010000e-01,8.6838931e-03 +2.1000000e-03,3.7859389e-04 +5.6000000e-03,6.8637534e-04 +1.1700000e-02,1.4456832e-03 +4.1700000e-02,2.7041121e-03 +5.2000000e-03,5.9254629e-04 +3.9200000e-02,2.5508169e-03 +4.0200000e-02,1.9310331e-03 +4.1360000e-01,8.0072190e-03 0.0000000e+00,0.0000000e+00 -1.6000000e-03,2.6666667e-04 -4.0000000e-04,1.6329932e-04 -1.5700000e-02,1.1551816e-03 --4.7000000e-03,9.1954095e-04 --4.5400000e-02,2.4413111e-03 --4.2800000e-02,2.2150997e-03 --4.2460000e-01,7.3017502e-03 +1.9000000e-03,3.7859389e-04 +1.0000000e-04,1.0000000e-04 +1.6400000e-02,1.2840907e-03 +-5.2000000e-03,5.9254629e-04 +-3.9200000e-02,2.5508169e-03 +-4.0200000e-02,1.9310331e-03 +-4.1360000e-01,8.0072190e-03 0.0000000e+00,0.0000000e+00 --1.6000000e-03,2.6666667e-04 --4.0000000e-04,1.6329932e-04 --1.5700000e-02,1.1551816e-03 -1.4900000e-02,1.5235193e-03 -2.8300000e-02,2.0925795e-03 -1.2850000e-01,4.0613353e-03 -2.1030000e-01,5.4955538e-03 -2.5000000e-03,5.2174919e-04 -4.4000000e-03,1.4847372e-03 -1.0200000e-02,1.8903263e-03 -2.4500000e-02,1.7966017e-03 +-1.9000000e-03,3.7859389e-04 +-1.0000000e-04,1.0000000e-04 +-1.6400000e-02,1.2840907e-03 +1.6000000e-02,2.1602469e-03 +3.5700000e-02,2.9441090e-03 +1.2200000e-01,3.5932035e-03 +2.2650000e-01,9.2463206e-03 +2.1000000e-03,3.7859389e-04 +3.7000000e-03,8.1717671e-04 +1.1600000e-02,1.4772347e-03 +2.5300000e-02,1.9723083e-03 0.0000000e+00,0.0000000e+00 --3.0900000e-02,2.0518285e-03 +-2.9700000e-02,2.4587711e-03 0.0000000e+00,0.0000000e+00 --3.4370000e-01,4.5093730e-03 +-3.5090000e-01,3.7161808e-03 0.0000000e+00,0.0000000e+00 --2.9000000e-03,8.0897741e-04 +-2.1000000e-03,4.8189441e-04 0.0000000e+00,0.0000000e+00 --2.2200000e-02,2.0210009e-03 +-2.1400000e-02,1.7397318e-03 0.0000000e+00,0.0000000e+00 0.0000000e+00,0.0000000e+00 0.0000000e+00,0.0000000e+00 diff --git a/tests/regression_tests/survival_biasing/results_true.dat b/tests/regression_tests/survival_biasing/results_true.dat index edd968340..740272201 100644 --- a/tests/regression_tests/survival_biasing/results_true.dat +++ b/tests/regression_tests/survival_biasing/results_true.dat @@ -1,20 +1,20 @@ k-combined: -9.826269E-01 1.626276E-02 +9.879232E-01 8.097582E-03 tally 1: -4.209907E+01 -3.546281E+02 -1.759415E+01 -6.197412E+01 -2.165888E+00 -9.392975E-01 -1.873459E+00 -7.025989E-01 -4.850267E+00 -4.708899E+00 -3.397795E-02 -2.310621E-04 -3.628554E+08 -2.635633E+16 +4.295331E+01 +3.691096E+02 +1.802724E+01 +6.501934E+01 +2.193500E+00 +9.627609E-01 +1.893529E+00 +7.174104E-01 +4.902380E+00 +4.808570E+00 +3.418014E-02 +2.337353E-04 +3.667128E+08 +2.690758E+16 tally 2: -1.759415E+01 -6.197412E+01 +1.802724E+01 +6.501934E+01 diff --git a/tests/regression_tests/tallies/results_true.dat b/tests/regression_tests/tallies/results_true.dat index 6739f5348..6a58c1725 100644 --- a/tests/regression_tests/tallies/results_true.dat +++ b/tests/regression_tests/tallies/results_true.dat @@ -1 +1 @@ -ad28e723270c25dc46f27f1482052e381c802cb111ea8224368d4ea3d903eeaba1a3dce541957f24ec0634ed2ada6f20f97c0270c269b9bcae4b34a1b317a165 \ No newline at end of file +6b1d8d6f4d7a70af6c39cc76b9267a61ba9a9d0c14b75a4df6f83e72a2bfaf1533caaf936c2185f0a158443eb9da266bd5a77b7996020fd638551ea841d821e0 \ No newline at end of file diff --git a/tests/regression_tests/tally_aggregation/results_true.dat b/tests/regression_tests/tally_aggregation/results_true.dat index a86eff895..172adbfe1 100644 --- a/tests/regression_tests/tally_aggregation/results_true.dat +++ b/tests/regression_tests/tally_aggregation/results_true.dat @@ -1,97 +1,97 @@ -[[1.6100557e-05 5.2845844e-04] - [3.1178030e-01 1.6963068e-01] - [1.8103970e-02 7.1792000e-01]], [[1.6327747e-05 5.3562414e-04] - [3.2299959e-01 1.7506573e-01] - [1.8518775e-02 7.2159429e-01]], [[1.5779072e-05 5.7847880e-04] - [3.1206099e-01 1.6937953e-01] - [1.7615699e-02 6.9887963e-01]], [[1.6129040e-05 5.2214564e-04] - [3.3116549e-01 1.7924984e-01] - [1.8339236e-02 7.1809645e-01]][[2.5070599e-07 4.1541177e-05] - [8.8868371e-03 4.3482360e-03] - [4.2929455e-04 5.1166511e-03]], [[2.6348920e-07 4.0911978e-05] - [9.5560259e-03 4.6948487e-03] - [5.1500008e-04 8.2022796e-03]], [[2.8482730e-07 5.2369388e-05] - [5.9366950e-03 2.9803949e-03] - [3.5036278e-04 7.1193378e-03]], [[4.9529279e-07 5.2183723e-05] - [1.1645140e-02 5.7325245e-03] - [9.3005699e-04 9.2536054e-03]][[1.0276552e-06 8.0660598e-04] - [1.1192721e+00 5.5462743e-01] - [1.3911834e-06 5.0699881e-01]], [[1.9629638e-06 1.0409504e-03] - [1.4059305e-01 9.8087142e-02] - [2.9492646e-05 7.8705320e-01]], [[1.5107402e-05 2.2995488e-04] - [1.3135825e-02 2.9816182e-02] - [3.2964785e-04 1.1215217e+00]], [[4.6238395e-05 8.7195730e-05] - [5.0054342e-03 1.0795027e-02] - [7.2217149e-02 4.4091666e-01]][[1.6532673e-08 1.2337935e-05] - [1.8386631e-02 9.0206165e-03] - [2.1821704e-08 6.5857974e-03]], [[1.4398993e-07 9.3322326e-05] - [1.7502917e-03 1.1333022e-03] - [1.2352929e-05 1.0990819e-02]], [[2.0866393e-07 1.5849226e-06] - [1.0531329e-04 1.2841877e-04] - [5.5780807e-06 5.5626593e-03]], [[6.2783320e-07 1.1660991e-06] - [6.5703644e-05 1.4478948e-04] - [1.1987891e-03 5.8870776e-03]][[0.2726472 0.2604765]], [[0.2826295 0.2668458]], [[0.2735803 0.2601036]], [[0.2904175 0.2750069]], [[0.0346119 0.2258269]], [[0.0357798 0.2250003]], [[0.0340719 0.2185953]], [[0.0361609 0.2167588]], [[0.0033548 0.2889666]], [[0.0034114 0.2907593]], [[0.003291 0.2797162]], [[0.0034234 0.2921258]], [[0.0192865 0.1128092]], [[0.0197139 0.1145903]], [[0.0187492 0.1104225]], [[0.0195192 0.1139769]][[0.0088278 0.0052328]], [[0.0095476 0.0057391]], [[0.0058888 0.003768 ]], [[0.0115889 0.007087 ]], [[0.0010202 0.0025054]], [[0.0003997 0.00688 ]], [[0.0007498 0.0052687]], [[0.0011406 0.0063813]], [[6.0992197e-05 2.7321486e-03]], [[3.8711312e-05 2.3727208e-03]], [[5.9558150e-05 3.2498217e-03]], [[4.8541326e-05 2.7025714e-03]], [[0.00043 0.0019911]], [[0.0005155 0.001849 ]], [[0.0003513 0.0026556]], [[0.0009313 0.0044993]][[1.9753031e-04] - [4.0779730e-01] - [1.2512884e-01]], [[2.0324106e-04] - [4.2264184e-01] - [1.2663026e-01]], [[1.9762520e-04] - [4.0915145e-01] - [1.2433487e-01]], [[2.0923706e-04] - [4.3430891e-01] - [1.3090624e-01]], [[0.0002534] - [0.0589558] - [0.2012296]], [[0.0002515] - [0.0604991] - [0.2000296]], [[0.0003047] - [0.0579695] - [0.1943931]], [[0.0002334] - [0.0612558] - [0.1914305]], [[6.0316499e-05] - [1.0710899e-02] - [2.8155013e-01]], [[6.3374666e-05] - [1.0915514e-02] - [2.8319179e-01]], [[5.9392082e-05] - [1.0461186e-02] - [2.7248670e-01]], [[6.1979034e-05] - [1.0864408e-02] - [2.8462272e-01]], [[3.3331895e-05] - [3.9469598e-03] - [1.2811544e-01]], [[3.3851214e-05] - [4.0088932e-03] - [1.3026145e-01]], [[3.2587500e-05] - [3.8583992e-03] - [1.2528067e-01]], [[3.3663516e-05] - [3.9862087e-03] - [1.2947625e-01]][[5.9589021e-06] - [9.8268994e-03] - [2.9572748e-03]], [[6.3833088e-06] - [1.0635294e-02] - [3.3142463e-03]], [[4.0655901e-06] - [6.5668548e-03] - [2.3984140e-03]], [[7.7097818e-06] - [1.2908862e-02] - [4.2297322e-03]], [[4.1105542e-05] - [1.1418202e-03] - [2.4520182e-03]], [[4.0406959e-05] - [4.9407982e-04] - [6.8737413e-03]], [[5.2191221e-05] - [9.9374825e-04] - [5.2279051e-03]], [[5.1601995e-05] - [1.3462879e-03] - [6.3408638e-03]], [[5.9462092e-07] - [9.1472877e-05] - [2.7312979e-03]], [[4.5487504e-07] - [5.5343645e-05] - [2.3723911e-03]], [[1.3568221e-06] - [1.0496033e-04] - [3.2486719e-03]], [[3.9251575e-07] - [7.1661652e-05] - [2.7020572e-03]], [[4.5230086e-07] - [5.4399064e-05] - [2.0363096e-03]], [[4.2836596e-07] - [5.0791493e-05] - [1.9188091e-03]], [[5.8337236e-07] - [7.0477126e-05] - [2.6777741e-03]], [[1.0127017e-06] - [1.2155206e-04] - [4.5930293e-03]] \ No newline at end of file +[[1.6001087e-05 5.4190949e-04] + [3.2669968e-01 1.7730523e-01] + [1.8149266e-02 7.1525113e-01]], [[1.6239097e-05 5.7499676e-04] + [3.1268633e-01 1.7004165e-01] + [1.8873778e-02 7.0217885e-01]], [[1.6693071e-05 5.4106379e-04] + [3.3370208e-01 1.8051505e-01] + [1.9081306e-02 7.3647547e-01]], [[1.6725399e-05 5.1680146e-04] + [3.2854628e-01 1.7757185e-01] + [1.9529646e-02 7.1005198e-01]][[2.4751834e-07 4.3304565e-05] + [8.6840718e-03 4.3442535e-03] + [3.7054051e-04 6.5678133e-03]], [[4.0830852e-07 4.9612204e-05] + [1.2104241e-02 5.9708675e-03] + [7.1398189e-04 8.2408482e-03]], [[2.6546344e-07 2.5234256e-05] + [6.5083211e-03 3.2185071e-03] + [4.2935150e-04 5.1707774e-03]], [[2.7845203e-07 3.4453402e-05] + [3.3125427e-03 1.7749508e-03] + [6.0407731e-04 7.5353872e-03]][[1.0455251e-06 8.1938339e-04] + [1.1392765e+00 5.6434761e-01] + [1.4142831e-06 5.1213654e-01]], [[2.2009815e-06 1.0418935e-03] + [1.4422554e-01 1.0070647e-01] + [3.9488382e-05 7.9236390e-01]], [[1.4606612e-05 2.2374470e-04] + [1.2962842e-02 2.9268594e-02] + [3.1339824e-04 1.1056439e+00]], [[4.7805535e-05 8.9749934e-05] + [5.1694597e-03 1.1111105e-02] + [7.5279695e-02 4.5381305e-01]][[1.4955183e-08 1.1461548e-05] + [1.6454649e-02 8.1236707e-03] + [2.0028007e-08 6.8264819e-03]], [[1.6334486e-07 7.7617340e-05] + [2.1161584e-03 1.4078445e-03] + [1.4742097e-05 6.9350862e-03]], [[1.7444757e-07 1.9026095e-06] + [1.4084092e-04 2.0345990e-04] + [5.9546175e-06 8.6038812e-03]], [[5.6449127e-07 1.0110585e-06] + [5.9158873e-05 1.2485325e-04] + [1.0936497e-03 5.0836702e-03]][[0.2866239 0.2725595]], [[0.2729156 0.258831 ]], [[0.2920724 0.2755922]], [[0.287667 0.2703207]], [[0.035617 0.2232707]], [[0.0353082 0.2224423]], [[0.0370072 0.2288263]], [[0.0363348 0.219573 ]], [[0.0033013 0.2850034]], [[0.0032726 0.2771099]], [[0.0034234 0.2951295]], [[0.0032935 0.2778935]], [[0.0193227 0.1122647]], [[0.0200799 0.1144123]], [[0.0202971 0.1179836]], [[0.0207973 0.1203534]][[0.0086351 0.0061876]], [[0.0120688 0.0074831]], [[0.0064221 0.0035246]], [[0.0030483 0.0024267]], [[0.0009185 0.0033896]], [[0.0009223 0.0039584]], [[0.0010541 0.0038599]], [[0.0012934 0.0028331]], [[6.5126963e-05 2.8486593e-03]], [[7.1110242e-05 4.3424340e-03]], [[5.8911409e-05 2.4296178e-03]], [[8.4278765e-05 6.4182190e-03]], [[0.0003712 0.0020298]], [[0.0007152 0.0036115]], [[0.0004298 0.0019677]], [[0.0006046 0.0021965]][[2.0694650e-04] + [4.2868191e-01] + [1.3029457e-01]], [[1.9694048e-04] + [4.0809445e-01] + [1.2345525e-01]], [[2.1012645e-04] + [4.3670571e-01] + [1.3074883e-01]], [[2.0641548e-04] + [4.3014207e-01] + [1.2763930e-01]], [[0.0002584] + [0.0608867] + [0.1977426]], [[0.0003026] + [0.0602368] + [0.1972111]], [[0.0002509] + [0.0624699] + [0.2031126]], [[0.0002322] + [0.0613385] + [0.1943371]], [[5.9349736e-05] + [1.0506741e-02] + [2.7773865e-01]], [[5.7855564e-05] + [1.0389781e-02] + [2.6993483e-01]], [[6.1819700e-05] + [1.0910874e-02] + [2.8758020e-01]], [[5.9326317e-05] + [1.0424040e-02] + [2.7070367e-01]], [[3.3192167e-05] + [3.9295320e-03] + [1.2762462e-01]], [[3.3882691e-05] + [4.0069157e-03] + [1.3045143e-01]], [[3.4882103e-05] + [4.1306182e-03] + [1.3411514e-01]], [[3.5598508e-05] + [4.2134987e-03] + [1.3690156e-01]][[6.4505980e-06] + [9.6369034e-03] + [4.4700460e-03]], [[8.2880772e-06] + [1.3456171e-02] + [4.5368708e-03]], [[3.9384462e-06] + [7.1570638e-03] + [1.5629142e-03]], [[2.3565894e-06] + [3.4040401e-03] + [1.8956916e-03]], [[4.2806047e-05] + [1.1841015e-03] + [3.3058802e-03]], [[4.8905696e-05] + [1.0360139e-03] + [3.9298937e-03]], [[2.4911390e-05] + [1.2173305e-03] + [3.8114473e-03]], [[3.4347869e-05] + [1.5820360e-03] + [2.6824612e-03]], [[1.0809230e-06] + [1.0316180e-04] + [2.8475354e-03]], [[6.4150814e-07] + [1.1179425e-04] + [4.3415770e-03]], [[7.3848139e-07] + [9.3111666e-05] + [2.4285475e-03]], [[1.2349384e-06] + [1.7152843e-04] + [6.4164799e-03]], [[4.5871493e-07] + [5.4732075e-05] + [2.0627309e-03]], [[8.1649994e-07] + [9.7699188e-05] + [3.6803256e-03]], [[4.5174850e-07] + [5.3913784e-05] + [2.0133571e-03]], [[5.0962865e-07] + [6.0338032e-05] + [2.2773911e-03]] \ No newline at end of file diff --git a/tests/regression_tests/tally_arithmetic/results_true.dat b/tests/regression_tests/tally_arithmetic/results_true.dat index 473dd5ee7..143930dd4 100644 --- a/tests/regression_tests/tally_arithmetic/results_true.dat +++ b/tests/regression_tests/tally_arithmetic/results_true.dat @@ -1,49 +1,49 @@ -[2.18485e-07 1.40714e-13 1.90835e-04 1.22906e-10 2.14194e-07 1.70920e-07 - 1.87087e-04 1.49289e-04 5.77324e-03 3.71823e-09 2.98131e-03 1.92010e-09 - 5.65986e-03 4.51638e-03 2.92276e-03 2.33227e-03 1.77087e-07 1.04308e-13 - 1.54676e-04 9.11076e-11 1.53337e-07 1.20737e-07 1.33931e-04 1.05457e-04 - 4.67935e-03 2.75624e-09 2.41642e-03 1.42333e-09 4.05176e-03 3.19035e-03 - 2.09234e-03 1.64750e-03 2.32566e-07 1.53743e-13 2.03133e-04 1.34286e-10 - 2.42559e-07 1.94114e-07 2.11862e-04 1.69548e-04 6.14530e-03 4.06249e-09 - 3.17345e-03 2.09788e-09 6.40937e-03 5.12926e-03 3.30981e-03 2.64876e-03 - 2.15237e-07 1.23240e-13 1.87998e-04 1.07643e-10 1.85758e-07 1.46699e-07 - 1.62249e-04 1.28134e-04 5.68742e-03 3.25649e-09 2.93699e-03 1.68166e-09 - 4.90845e-03 3.87638e-03 2.53473e-03 2.00177e-03 2.47477e-03 4.87068e-05 - 1.06189e-02 2.08993e-04 1.26298e-04 3.02426e-05 5.41924e-04 1.29766e-04 - 2.77770e-02 5.46688e-04 4.83214e-02 9.51031e-04 1.41757e-03 3.39445e-04 - 2.46604e-03 5.90506e-04 2.31220e-03 4.16752e-05 9.92129e-03 1.78822e-04 - 1.15514e-04 2.68262e-05 4.95652e-04 1.15107e-04 2.59523e-02 4.67766e-04 - 4.51471e-02 8.13735e-04 1.29654e-03 3.01100e-04 2.25548e-03 5.23800e-04 - 2.30792e-03 4.67592e-05 9.90296e-03 2.00637e-04 1.15169e-04 2.57221e-05 - 4.94175e-04 1.10370e-04 2.59043e-02 5.24828e-04 4.50637e-02 9.13003e-04 - 1.29267e-03 2.88707e-04 2.24876e-03 5.02241e-04 2.35337e-03 4.59723e-05 - 1.00979e-02 1.97260e-04 1.17182e-04 2.59928e-05 5.02809e-04 1.11531e-04 - 2.64144e-02 5.15997e-04 4.59510e-02 8.97639e-04 1.31526e-03 2.91745e-04 - 2.28805e-03 5.07527e-04][2.18485e-07 1.40714e-13 1.90835e-04 1.22906e-10 2.14194e-07 1.70920e-07 - 1.87087e-04 1.49289e-04 5.77324e-03 3.71823e-09 2.98131e-03 1.92010e-09 - 5.65986e-03 4.51638e-03 2.92276e-03 2.33227e-03 1.77087e-07 1.04308e-13 - 1.54676e-04 9.11076e-11 1.53337e-07 1.20737e-07 1.33931e-04 1.05457e-04 - 4.67935e-03 2.75624e-09 2.41642e-03 1.42333e-09 4.05176e-03 3.19035e-03 - 2.09234e-03 1.64750e-03 2.32566e-07 1.53743e-13 2.03133e-04 1.34286e-10 - 2.42559e-07 1.94114e-07 2.11862e-04 1.69548e-04 6.14530e-03 4.06249e-09 - 3.17345e-03 2.09788e-09 6.40937e-03 5.12926e-03 3.30981e-03 2.64876e-03 - 2.15237e-07 1.23240e-13 1.87998e-04 1.07643e-10 1.85758e-07 1.46699e-07 - 1.62249e-04 1.28134e-04 5.68742e-03 3.25649e-09 2.93699e-03 1.68166e-09 - 4.90845e-03 3.87638e-03 2.53473e-03 2.00177e-03 2.47477e-03 4.87068e-05 - 1.06189e-02 2.08993e-04 1.26298e-04 3.02426e-05 5.41924e-04 1.29766e-04 - 2.77770e-02 5.46688e-04 4.83214e-02 9.51031e-04 1.41757e-03 3.39445e-04 - 2.46604e-03 5.90506e-04 2.31220e-03 4.16752e-05 9.92129e-03 1.78822e-04 - 1.15514e-04 2.68262e-05 4.95652e-04 1.15107e-04 2.59523e-02 4.67766e-04 - 4.51471e-02 8.13735e-04 1.29654e-03 3.01100e-04 2.25548e-03 5.23800e-04 - 2.30792e-03 4.67592e-05 9.90296e-03 2.00637e-04 1.15169e-04 2.57221e-05 - 4.94175e-04 1.10370e-04 2.59043e-02 5.24828e-04 4.50637e-02 9.13003e-04 - 1.29267e-03 2.88707e-04 2.24876e-03 5.02241e-04 2.35337e-03 4.59723e-05 - 1.00979e-02 1.97260e-04 1.17182e-04 2.59928e-05 5.02809e-04 1.11531e-04 - 2.64144e-02 5.15997e-04 4.59510e-02 8.97639e-04 1.31526e-03 2.91745e-04 - 2.28805e-03 5.07527e-04][0.00566 0.00452 0.00292 0.00233 0.00405 0.00319 0.00209 0.00165 0.00641 - 0.00513 0.00331 0.00265 0.00491 0.00388 0.00253 0.002 0.00142 0.00034 - 0.00247 0.00059 0.0013 0.0003 0.00226 0.00052 0.00129 0.00029 0.00225 - 0.0005 0.00132 0.00029 0.00229 0.00051][0.00019 0.00019 0.00298 0.00292 0.00015 0.00013 0.00242 0.00209 0.0002 - 0.00021 0.00317 0.00331 0.00019 0.00016 0.00294 0.00253 0.01062 0.00054 - 0.04832 0.00247 0.00992 0.0005 0.04515 0.00226 0.0099 0.00049 0.04506 - 0.00225 0.0101 0.0005 0.04595 0.00229][0.00292 0.00209 0.00331 0.00253 0.00247 0.00226 0.00225 0.00229] \ No newline at end of file +[2.04229e-07 1.28343e-13 1.79333e-04 1.12698e-10 1.89952e-07 1.51210e-07 + 1.66796e-04 1.32777e-04 6.13215e-03 3.85362e-09 3.14746e-03 1.97795e-09 + 5.70345e-03 4.54021e-03 2.92742e-03 2.33037e-03 2.10575e-07 1.28419e-13 + 1.84905e-04 1.12764e-10 1.89188e-07 1.50221e-07 1.66125e-04 1.31908e-04 + 6.32269e-03 3.85587e-09 3.24526e-03 1.97911e-09 5.68054e-03 4.51051e-03 + 2.91566e-03 2.31512e-03 1.96696e-07 1.26388e-13 1.72718e-04 1.10981e-10 + 1.91283e-07 1.53449e-07 1.67964e-04 1.34743e-04 5.90596e-03 3.79491e-09 + 3.03136e-03 1.94782e-09 5.74342e-03 4.60742e-03 2.94794e-03 2.36486e-03 + 2.06016e-07 1.35264e-13 1.80901e-04 1.18775e-10 2.05873e-07 1.65814e-07 + 1.80776e-04 1.45600e-04 6.18579e-03 4.06142e-09 3.17499e-03 2.08461e-09 + 6.18150e-03 4.97869e-03 3.17279e-03 2.55542e-03 2.36089e-03 4.46651e-05 + 1.02263e-02 1.93469e-04 1.18179e-04 2.62375e-05 5.11897e-04 1.13649e-04 + 2.56040e-02 4.84394e-04 4.55595e-02 8.61927e-04 1.28165e-03 2.84546e-04 + 2.28056e-03 5.06320e-04 2.29877e-03 4.53056e-05 9.95724e-03 1.96244e-04 + 1.14803e-04 2.57898e-05 4.97276e-04 1.11710e-04 2.49302e-02 4.91340e-04 + 4.43606e-02 8.74289e-04 1.24504e-03 2.79691e-04 2.21542e-03 4.97680e-04 + 2.31940e-03 4.34238e-05 1.00466e-02 1.88093e-04 1.17620e-04 2.69280e-05 + 5.09479e-04 1.16640e-04 2.51540e-02 4.70932e-04 4.47588e-02 8.37974e-04 + 1.27560e-03 2.92034e-04 2.26979e-03 5.19644e-04 2.19212e-03 4.53914e-05 + 9.49530e-03 1.96615e-04 1.09609e-04 2.41615e-05 4.74778e-04 1.04657e-04 + 2.37736e-02 4.92271e-04 4.23026e-02 8.75944e-04 1.18871e-03 2.62032e-04 + 2.11519e-03 4.66257e-04][2.04229e-07 1.28343e-13 1.79333e-04 1.12698e-10 1.89952e-07 1.51210e-07 + 1.66796e-04 1.32777e-04 6.13215e-03 3.85362e-09 3.14746e-03 1.97795e-09 + 5.70345e-03 4.54021e-03 2.92742e-03 2.33037e-03 2.10575e-07 1.28419e-13 + 1.84905e-04 1.12764e-10 1.89188e-07 1.50221e-07 1.66125e-04 1.31908e-04 + 6.32269e-03 3.85587e-09 3.24526e-03 1.97911e-09 5.68054e-03 4.51051e-03 + 2.91566e-03 2.31512e-03 1.96696e-07 1.26388e-13 1.72718e-04 1.10981e-10 + 1.91283e-07 1.53449e-07 1.67964e-04 1.34743e-04 5.90596e-03 3.79491e-09 + 3.03136e-03 1.94782e-09 5.74342e-03 4.60742e-03 2.94794e-03 2.36486e-03 + 2.06016e-07 1.35264e-13 1.80901e-04 1.18775e-10 2.05873e-07 1.65814e-07 + 1.80776e-04 1.45600e-04 6.18579e-03 4.06142e-09 3.17499e-03 2.08461e-09 + 6.18150e-03 4.97869e-03 3.17279e-03 2.55542e-03 2.36089e-03 4.46651e-05 + 1.02263e-02 1.93469e-04 1.18179e-04 2.62375e-05 5.11897e-04 1.13649e-04 + 2.56040e-02 4.84394e-04 4.55595e-02 8.61927e-04 1.28165e-03 2.84546e-04 + 2.28056e-03 5.06320e-04 2.29877e-03 4.53056e-05 9.95724e-03 1.96244e-04 + 1.14803e-04 2.57898e-05 4.97276e-04 1.11710e-04 2.49302e-02 4.91340e-04 + 4.43606e-02 8.74289e-04 1.24504e-03 2.79691e-04 2.21542e-03 4.97680e-04 + 2.31940e-03 4.34238e-05 1.00466e-02 1.88093e-04 1.17620e-04 2.69280e-05 + 5.09479e-04 1.16640e-04 2.51540e-02 4.70932e-04 4.47588e-02 8.37974e-04 + 1.27560e-03 2.92034e-04 2.26979e-03 5.19644e-04 2.19212e-03 4.53914e-05 + 9.49530e-03 1.96615e-04 1.09609e-04 2.41615e-05 4.74778e-04 1.04657e-04 + 2.37736e-02 4.92271e-04 4.23026e-02 8.75944e-04 1.18871e-03 2.62032e-04 + 2.11519e-03 4.66257e-04][0.0057 0.00454 0.00293 0.00233 0.00568 0.00451 0.00292 0.00232 0.00574 + 0.00461 0.00295 0.00236 0.00618 0.00498 0.00317 0.00256 0.00128 0.00028 + 0.00228 0.00051 0.00125 0.00028 0.00222 0.0005 0.00128 0.00029 0.00227 + 0.00052 0.00119 0.00026 0.00212 0.00047][0.00018 0.00017 0.00315 0.00293 0.00018 0.00017 0.00325 0.00292 0.00017 + 0.00017 0.00303 0.00295 0.00018 0.00018 0.00317 0.00317 0.01023 0.00051 + 0.04556 0.00228 0.00996 0.0005 0.04436 0.00222 0.01005 0.00051 0.04476 + 0.00227 0.0095 0.00047 0.0423 0.00212][0.00293 0.00292 0.00295 0.00317 0.00228 0.00222 0.00227 0.00212] \ No newline at end of file diff --git a/tests/regression_tests/tally_assumesep/results_true.dat b/tests/regression_tests/tally_assumesep/results_true.dat index 5728cfc04..9d7cbf9c3 100644 --- a/tests/regression_tests/tally_assumesep/results_true.dat +++ b/tests/regression_tests/tally_assumesep/results_true.dat @@ -1,11 +1,11 @@ k-combined: -6.353587E-01 1.925016E-02 +5.683578E-01 1.129170E-02 tally 1: -7.878503E+00 -1.242768E+01 +6.753950E+00 +9.188305E+00 tally 2: -2.687214E-01 -1.487262E-02 +2.278558E-01 +1.052944E-02 tally 3: -1.344654E+01 -3.630145E+01 +1.179091E+01 +2.795539E+01 diff --git a/tests/regression_tests/tally_nuclides/results_true.dat b/tests/regression_tests/tally_nuclides/results_true.dat index ad385b82a..7f9641fc8 100644 --- a/tests/regression_tests/tally_nuclides/results_true.dat +++ b/tests/regression_tests/tally_nuclides/results_true.dat @@ -1,28 +1,28 @@ k-combined: -9.655280E-01 1.463557E-02 +1.132463E+00 5.721067E-02 tally 1: -6.932814E+00 -9.650528E+00 -1.591338E+00 -5.075076E-01 -1.541515E+00 -4.761914E-01 -5.341475E+00 -5.732892E+00 -6.932814E+00 -9.650528E+00 -1.591338E+00 -5.075076E-01 -1.541515E+00 -4.761914E-01 -5.341475E+00 -5.732892E+00 +7.310528E+00 +1.080411E+01 +1.664215E+00 +5.567756E-01 +1.609340E+00 +5.205634E-01 +5.646313E+00 +6.459724E+00 +7.310528E+00 +1.080411E+01 +1.664215E+00 +5.567756E-01 +1.609340E+00 +5.205634E-01 +5.646313E+00 +6.459724E+00 tally 2: -6.932814E+00 -9.650528E+00 -1.591338E+00 -5.075076E-01 -1.541515E+00 -4.761914E-01 -5.341475E+00 -5.732892E+00 +7.310528E+00 +1.080411E+01 +1.664215E+00 +5.567756E-01 +1.609340E+00 +5.205634E-01 +5.646313E+00 +6.459724E+00 diff --git a/tests/regression_tests/tally_slice_merge/results_true.dat b/tests/regression_tests/tally_slice_merge/results_true.dat index 84b296d64..58b15fc18 100644 --- a/tests/regression_tests/tally_slice_merge/results_true.dat +++ b/tests/regression_tests/tally_slice_merge/results_true.dat @@ -1,45 +1,45 @@ cell energy low [eV] energy high [eV] nuclide score mean std. dev. -0 21 0.00e+00 6.25e-01 U235 fission 1.77e-01 1.81e-02 cell energy low [eV] energy high [eV] nuclide score mean std. dev. -0 21 0.00e+00 6.25e-01 U235 nu-fission 4.32e-01 4.42e-02 cell energy low [eV] energy high [eV] nuclide score mean std. dev. -0 21 0.00e+00 6.25e-01 U238 fission 2.43e-07 2.40e-08 cell energy low [eV] energy high [eV] nuclide score mean std. dev. -0 21 0.00e+00 6.25e-01 U238 nu-fission 6.07e-07 5.97e-08 cell energy low [eV] energy high [eV] nuclide score mean std. dev. -0 21 6.25e-01 2.00e+07 U235 fission 3.03e-02 1.93e-03 cell energy low [eV] energy high [eV] nuclide score mean std. dev. -0 21 6.25e-01 2.00e+07 U235 nu-fission 7.41e-02 4.67e-03 cell energy low [eV] energy high [eV] nuclide score mean std. dev. -0 21 6.25e-01 2.00e+07 U238 fission 1.65e-02 1.61e-03 cell energy low [eV] energy high [eV] nuclide score mean std. dev. -0 21 6.25e-01 2.00e+07 U238 nu-fission 4.61e-02 4.87e-03 cell energy low [eV] energy high [eV] nuclide score mean std. dev. -0 27 0.00e+00 6.25e-01 U235 fission 1.31e-01 2.54e-02 cell energy low [eV] energy high [eV] nuclide score mean std. dev. -0 27 0.00e+00 6.25e-01 U235 nu-fission 3.18e-01 6.19e-02 cell energy low [eV] energy high [eV] nuclide score mean std. dev. -0 27 0.00e+00 6.25e-01 U238 fission 1.80e-07 3.46e-08 cell energy low [eV] energy high [eV] nuclide score mean std. dev. -0 27 0.00e+00 6.25e-01 U238 nu-fission 4.49e-07 8.62e-08 cell energy low [eV] energy high [eV] nuclide score mean std. dev. -0 27 6.25e-01 2.00e+07 U235 fission 2.34e-02 1.23e-03 cell energy low [eV] energy high [eV] nuclide score mean std. dev. -0 27 6.25e-01 2.00e+07 U235 nu-fission 5.72e-02 2.99e-03 cell energy low [eV] energy high [eV] nuclide score mean std. dev. -0 27 6.25e-01 2.00e+07 U238 fission 1.24e-02 9.35e-04 cell energy low [eV] energy high [eV] nuclide score mean std. dev. -0 27 6.25e-01 2.00e+07 U238 nu-fission 3.44e-02 2.73e-03 cell energy low [eV] energy high [eV] nuclide score mean std. dev. -0 21 0.00e+00 6.25e-01 U235 fission 1.77e-01 1.81e-02 -1 21 0.00e+00 6.25e-01 U235 nu-fission 4.32e-01 4.42e-02 -2 21 0.00e+00 6.25e-01 U238 fission 2.43e-07 2.40e-08 -3 21 0.00e+00 6.25e-01 U238 nu-fission 6.07e-07 5.97e-08 -4 21 6.25e-01 2.00e+07 U235 fission 3.03e-02 1.93e-03 -5 21 6.25e-01 2.00e+07 U235 nu-fission 7.41e-02 4.67e-03 -6 21 6.25e-01 2.00e+07 U238 fission 1.65e-02 1.61e-03 -7 21 6.25e-01 2.00e+07 U238 nu-fission 4.61e-02 4.87e-03 -8 27 0.00e+00 6.25e-01 U235 fission 1.31e-01 2.54e-02 -9 27 0.00e+00 6.25e-01 U235 nu-fission 3.18e-01 6.19e-02 -10 27 0.00e+00 6.25e-01 U238 fission 1.80e-07 3.46e-08 -11 27 0.00e+00 6.25e-01 U238 nu-fission 4.49e-07 8.62e-08 -12 27 6.25e-01 2.00e+07 U235 fission 2.34e-02 1.23e-03 -13 27 6.25e-01 2.00e+07 U235 nu-fission 5.72e-02 2.99e-03 -14 27 6.25e-01 2.00e+07 U238 fission 1.24e-02 9.35e-04 -15 27 6.25e-01 2.00e+07 U238 nu-fission 3.44e-02 2.73e-03 +0 21 0.00e+00 6.25e-01 U235 fission 1.75e-01 1.20e-02 cell energy low [eV] energy high [eV] nuclide score mean std. dev. +0 21 0.00e+00 6.25e-01 U235 nu-fission 4.26e-01 2.92e-02 cell energy low [eV] energy high [eV] nuclide score mean std. dev. +0 21 0.00e+00 6.25e-01 U238 fission 2.41e-07 1.61e-08 cell energy low [eV] energy high [eV] nuclide score mean std. dev. +0 21 0.00e+00 6.25e-01 U238 nu-fission 6.00e-07 4.01e-08 cell energy low [eV] energy high [eV] nuclide score mean std. dev. +0 21 6.25e-01 2.00e+07 U235 fission 2.89e-02 2.07e-03 cell energy low [eV] energy high [eV] nuclide score mean std. dev. +0 21 6.25e-01 2.00e+07 U235 nu-fission 7.07e-02 5.06e-03 cell energy low [eV] energy high [eV] nuclide score mean std. dev. +0 21 6.25e-01 2.00e+07 U238 fission 1.41e-02 5.76e-04 cell energy low [eV] energy high [eV] nuclide score mean std. dev. +0 21 6.25e-01 2.00e+07 U238 nu-fission 3.95e-02 1.90e-03 cell energy low [eV] energy high [eV] nuclide score mean std. dev. +0 27 0.00e+00 6.25e-01 U235 fission 1.51e-01 1.17e-02 cell energy low [eV] energy high [eV] nuclide score mean std. dev. +0 27 0.00e+00 6.25e-01 U235 nu-fission 3.69e-01 2.86e-02 cell energy low [eV] energy high [eV] nuclide score mean std. dev. +0 27 0.00e+00 6.25e-01 U238 fission 2.07e-07 1.47e-08 cell energy low [eV] energy high [eV] nuclide score mean std. dev. +0 27 0.00e+00 6.25e-01 U238 nu-fission 5.17e-07 3.66e-08 cell energy low [eV] energy high [eV] nuclide score mean std. dev. +0 27 6.25e-01 2.00e+07 U235 fission 2.57e-02 2.43e-03 cell energy low [eV] energy high [eV] nuclide score mean std. dev. +0 27 6.25e-01 2.00e+07 U235 nu-fission 6.30e-02 5.92e-03 cell energy low [eV] energy high [eV] nuclide score mean std. dev. +0 27 6.25e-01 2.00e+07 U238 fission 1.47e-02 1.41e-03 cell energy low [eV] energy high [eV] nuclide score mean std. dev. +0 27 6.25e-01 2.00e+07 U238 nu-fission 4.12e-02 4.02e-03 cell energy low [eV] energy high [eV] nuclide score mean std. dev. +0 21 0.00e+00 6.25e-01 U235 fission 1.75e-01 1.20e-02 +1 21 0.00e+00 6.25e-01 U235 nu-fission 4.26e-01 2.92e-02 +2 21 0.00e+00 6.25e-01 U238 fission 2.41e-07 1.61e-08 +3 21 0.00e+00 6.25e-01 U238 nu-fission 6.00e-07 4.01e-08 +4 21 6.25e-01 2.00e+07 U235 fission 2.89e-02 2.07e-03 +5 21 6.25e-01 2.00e+07 U235 nu-fission 7.07e-02 5.06e-03 +6 21 6.25e-01 2.00e+07 U238 fission 1.41e-02 5.76e-04 +7 21 6.25e-01 2.00e+07 U238 nu-fission 3.95e-02 1.90e-03 +8 27 0.00e+00 6.25e-01 U235 fission 1.51e-01 1.17e-02 +9 27 0.00e+00 6.25e-01 U235 nu-fission 3.69e-01 2.86e-02 +10 27 0.00e+00 6.25e-01 U238 fission 2.07e-07 1.47e-08 +11 27 0.00e+00 6.25e-01 U238 nu-fission 5.17e-07 3.66e-08 +12 27 6.25e-01 2.00e+07 U235 fission 2.57e-02 2.43e-03 +13 27 6.25e-01 2.00e+07 U235 nu-fission 6.30e-02 5.92e-03 +14 27 6.25e-01 2.00e+07 U238 fission 1.47e-02 1.41e-03 +15 27 6.25e-01 2.00e+07 U238 nu-fission 4.12e-02 4.02e-03 sum(distribcell) energy low [eV] energy high [eV] nuclide score mean std. dev. 0 (0, 100, 2000, 30000) 0.00e+00 6.25e-01 U235 fission 0.00e+00 0.00e+00 1 (0, 100, 2000, 30000) 0.00e+00 6.25e-01 U235 nu-fission 0.00e+00 0.00e+00 2 (0, 100, 2000, 30000) 0.00e+00 6.25e-01 U238 fission 0.00e+00 0.00e+00 3 (0, 100, 2000, 30000) 0.00e+00 6.25e-01 U238 nu-fission 0.00e+00 0.00e+00 -4 (0, 100, 2000, 30000) 6.25e-01 2.00e+07 U235 fission 0.00e+00 0.00e+00 -5 (0, 100, 2000, 30000) 6.25e-01 2.00e+07 U235 nu-fission 0.00e+00 0.00e+00 -6 (0, 100, 2000, 30000) 6.25e-01 2.00e+07 U238 fission 0.00e+00 0.00e+00 -7 (0, 100, 2000, 30000) 6.25e-01 2.00e+07 U238 nu-fission 0.00e+00 0.00e+00 +4 (0, 100, 2000, 30000) 6.25e-01 2.00e+07 U235 fission 9.53e-07 9.53e-07 +5 (0, 100, 2000, 30000) 6.25e-01 2.00e+07 U235 nu-fission 2.37e-06 2.37e-06 +6 (0, 100, 2000, 30000) 6.25e-01 2.00e+07 U238 fission 1.25e-08 1.25e-08 +7 (0, 100, 2000, 30000) 6.25e-01 2.00e+07 U238 nu-fission 3.15e-08 3.15e-08 8 (500, 5000, 50000) 0.00e+00 6.25e-01 U235 fission 0.00e+00 0.00e+00 9 (500, 5000, 50000) 0.00e+00 6.25e-01 U235 nu-fission 0.00e+00 0.00e+00 10 (500, 5000, 50000) 0.00e+00 6.25e-01 U238 fission 0.00e+00 0.00e+00 @@ -49,19 +49,19 @@ 14 (500, 5000, 50000) 6.25e-01 2.00e+07 U238 fission 0.00e+00 0.00e+00 15 (500, 5000, 50000) 6.25e-01 2.00e+07 U238 nu-fission 0.00e+00 0.00e+00 sum(mesh) energy low [eV] energy high [eV] nuclide score mean std. dev. -0 ((1, 1), (1, 2)) 0.00e+00 6.25e-01 U235 fission 2.75e-02 4.32e-03 -1 ((1, 1), (1, 2)) 0.00e+00 6.25e-01 U235 nu-fission 6.71e-02 1.05e-02 -2 ((1, 1), (1, 2)) 0.00e+00 6.25e-01 U238 fission 3.78e-08 5.83e-09 -3 ((1, 1), (1, 2)) 0.00e+00 6.25e-01 U238 nu-fission 9.42e-08 1.45e-08 -4 ((1, 1), (1, 2)) 6.25e-01 2.00e+07 U235 fission 3.96e-03 7.84e-04 -5 ((1, 1), (1, 2)) 6.25e-01 2.00e+07 U235 nu-fission 9.71e-03 1.91e-03 -6 ((1, 1), (1, 2)) 6.25e-01 2.00e+07 U238 fission 3.92e-03 8.53e-04 -7 ((1, 1), (1, 2)) 6.25e-01 2.00e+07 U238 nu-fission 1.08e-02 2.25e-03 -8 ((2, 1), (2, 2)) 0.00e+00 6.25e-01 U235 fission 5.42e-02 2.50e-02 -9 ((2, 1), (2, 2)) 0.00e+00 6.25e-01 U235 nu-fission 1.32e-01 6.10e-02 -10 ((2, 1), (2, 2)) 0.00e+00 6.25e-01 U238 fission 7.47e-08 3.42e-08 -11 ((2, 1), (2, 2)) 0.00e+00 6.25e-01 U238 nu-fission 1.86e-07 8.53e-08 -12 ((2, 1), (2, 2)) 6.25e-01 2.00e+07 U235 fission 6.58e-03 2.03e-03 -13 ((2, 1), (2, 2)) 6.25e-01 2.00e+07 U235 nu-fission 1.61e-02 4.95e-03 -14 ((2, 1), (2, 2)) 6.25e-01 2.00e+07 U238 fission 3.74e-03 1.12e-03 -15 ((2, 1), (2, 2)) 6.25e-01 2.00e+07 U238 nu-fission 1.05e-02 3.20e-03 +0 ((1, 1), (1, 2)) 0.00e+00 6.25e-01 U235 fission 6.73e-03 3.04e-03 +1 ((1, 1), (1, 2)) 0.00e+00 6.25e-01 U235 nu-fission 1.64e-02 7.40e-03 +2 ((1, 1), (1, 2)) 0.00e+00 6.25e-01 U238 fission 8.80e-09 3.84e-09 +3 ((1, 1), (1, 2)) 0.00e+00 6.25e-01 U238 nu-fission 2.19e-08 9.56e-09 +4 ((1, 1), (1, 2)) 6.25e-01 2.00e+07 U235 fission 9.89e-04 3.53e-04 +5 ((1, 1), (1, 2)) 6.25e-01 2.00e+07 U235 nu-fission 2.42e-03 8.60e-04 +6 ((1, 1), (1, 2)) 6.25e-01 2.00e+07 U238 fission 5.01e-04 2.13e-04 +7 ((1, 1), (1, 2)) 6.25e-01 2.00e+07 U238 nu-fission 1.36e-03 5.86e-04 +8 ((2, 1), (2, 2)) 0.00e+00 6.25e-01 U235 fission 1.63e-02 4.21e-03 +9 ((2, 1), (2, 2)) 0.00e+00 6.25e-01 U235 nu-fission 3.98e-02 1.02e-02 +10 ((2, 1), (2, 2)) 0.00e+00 6.25e-01 U238 fission 2.28e-08 5.90e-09 +11 ((2, 1), (2, 2)) 0.00e+00 6.25e-01 U238 nu-fission 5.67e-08 1.47e-08 +12 ((2, 1), (2, 2)) 6.25e-01 2.00e+07 U235 fission 1.79e-03 4.31e-04 +13 ((2, 1), (2, 2)) 6.25e-01 2.00e+07 U235 nu-fission 4.37e-03 1.05e-03 +14 ((2, 1), (2, 2)) 6.25e-01 2.00e+07 U238 fission 7.51e-04 2.51e-04 +15 ((2, 1), (2, 2)) 6.25e-01 2.00e+07 U238 nu-fission 2.02e-03 6.71e-04 diff --git a/tests/regression_tests/torus/results_true.dat b/tests/regression_tests/torus/results_true.dat index 42444ad09..42fb209cc 100644 --- a/tests/regression_tests/torus/results_true.dat +++ b/tests/regression_tests/torus/results_true.dat @@ -1,2 +1,2 @@ k-combined: -7.628424E-01 2.557300E-02 +7.667201E-01 1.136882E-02 diff --git a/tests/regression_tests/trace/results_true.dat b/tests/regression_tests/trace/results_true.dat index fe46748c8..bbf03de94 100644 --- a/tests/regression_tests/trace/results_true.dat +++ b/tests/regression_tests/trace/results_true.dat @@ -1,2 +1,2 @@ k-combined: -2.987050E-01 1.827430E-03 +3.070134E-01 3.900396E-03 diff --git a/tests/regression_tests/track_output/results_true.dat b/tests/regression_tests/track_output/results_true.dat index 756226d10..37f4a0f98 100644 --- a/tests/regression_tests/track_output/results_true.dat +++ b/tests/regression_tests/track_output/results_true.dat @@ -143,124 +143,76 @@ ParticleType.NEUTRON [((-9.469716e-01, -2.580266e-01, 1.414357e-01), (1.438873e- ((-3.920090e+00, -9.211794e-01, 2.908406e+00), (9.094673e-01, -3.659267e-01, -1.974002e-01), 9.547085e+00, 1.260840e-07, 1.000000e+00, 23, 2387, 1) ((-3.729948e+00, -9.976834e-01, 2.867135e+00), (-2.916959e-01, -6.494657e-01, -7.022164e-01), 8.590591e+00, 1.750036e-07, 1.000000e+00, 23, 2387, 1) ((-3.744933e+00, -1.031047e+00, 2.831062e+00), (-2.916959e-01, -6.494657e-01, -7.022164e-01), 8.590591e+00, 1.876753e-07, 0.000000e+00, 23, 2387, 1)] -ParticleType.NEUTRON [((6.474155e+00, -5.192870e+00, 5.413003e+00), (-3.042035e-02, -9.914979e-01, 1.265170e-01), 2.052226e+06, 4.450859e-05, 1.000000e+00, 21, 2367, 2) - ((6.467293e+00, -5.416535e+00, 5.441544e+00), (-3.042035e-02, -9.914979e-01, 1.265170e-01), 2.052226e+06, 4.450870e-05, 1.000000e+00, 22, 2367, 3) - ((6.464574e+00, -5.505149e+00, 5.452851e+00), (-3.042035e-02, -9.914979e-01, 1.265170e-01), 2.052226e+06, 4.450874e-05, 1.000000e+00, 23, 2367, 1) - ((6.461877e+00, -5.593034e+00, 5.464065e+00), (6.364108e-01, -7.713322e-01, 5.284745e-03), 1.141417e+06, 4.450879e-05, 1.000000e+00, 23, 2367, 1) - ((6.570892e+00, -5.725160e+00, 5.464970e+00), (6.364108e-01, -7.713322e-01, 5.284745e-03), 1.141417e+06, 4.450891e-05, 1.000000e+00, 32, 7, 1) - ((6.821003e+00, -6.028296e+00, 5.467047e+00), (6.364108e-01, -7.713322e-01, 5.284745e-03), 1.141417e+06, 4.450917e-05, 1.000000e+00, 31, 7, 4) - ((7.101210e+00, -6.367908e+00, 5.469374e+00), (6.364108e-01, -7.713322e-01, 5.284745e-03), 1.141417e+06, 4.450947e-05, 1.000000e+00, 32, 7, 1) - ((7.360920e+00, -6.682677e+00, 5.471531e+00), (6.364108e-01, -7.713322e-01, 5.284745e-03), 1.141417e+06, 4.450975e-05, 1.000000e+00, 23, 2353, 1) - ((7.833926e+00, -7.255962e+00, 5.475459e+00), (9.404210e-01, 3.383106e-01, -3.397550e-02), 1.289848e+05, 4.451025e-05, 1.000000e+00, 23, 2353, 1) - ((8.142528e+00, -7.144944e+00, 5.464309e+00), (9.404210e-01, 3.383106e-01, -3.397550e-02), 1.289848e+05, 4.451091e-05, 1.000000e+00, 22, 2353, 3) - ((8.590199e+00, -6.983897e+00, 5.448136e+00), (9.404210e-01, 3.383106e-01, -3.397550e-02), 1.289848e+05, 4.451187e-05, 1.000000e+00, 23, 2353, 1) - ((8.682515e+00, -6.950687e+00, 5.444801e+00), (6.997233e-01, 7.142820e-01, 1.373092e-02), 1.043159e+05, 4.451207e-05, 1.000000e+00, 23, 2353, 1) - ((8.996680e+00, -6.629985e+00, 5.450966e+00), (6.997233e-01, 7.142820e-01, 1.373092e-02), 1.043159e+05, 4.451307e-05, 1.000000e+00, 23, 2354, 1) - ((9.231138e+00, -6.390649e+00, 5.455567e+00), (6.997233e-01, 7.142820e-01, 1.373092e-02), 1.043159e+05, 4.451382e-05, 1.000000e+00, 22, 2354, 3) - ((9.650189e+00, -5.962879e+00, 5.463790e+00), (6.997233e-01, 7.142820e-01, 1.373092e-02), 1.043159e+05, 4.451516e-05, 1.000000e+00, 23, 2354, 1) - ((9.721007e+00, -5.890588e+00, 5.465180e+00), (6.565855e-01, -1.880518e-01, -7.304327e-01), 1.036285e+04, 4.451539e-05, 1.000000e+00, 23, 2354, 1) - ((9.939012e+00, -5.953026e+00, 5.222655e+00), (6.565855e-01, -1.880518e-01, -7.304327e-01), 1.036285e+04, 4.451775e-05, 1.000000e+00, 22, 2354, 3) - ((1.002133e+01, -5.976602e+00, 5.131083e+00), (6.565855e-01, -1.880518e-01, -7.304327e-01), 1.036285e+04, 4.451864e-05, 1.000000e+00, 23, 2354, 1) - ((1.020258e+01, -6.028514e+00, 4.929446e+00), (8.848761e-01, -4.005580e-02, -4.641012e-01), 8.908873e+03, 4.452060e-05, 1.000000e+00, 23, 2354, 1) - ((1.063244e+01, -6.047973e+00, 4.703991e+00), (8.848761e-01, -4.005580e-02, -4.641012e-01), 8.908873e+03, 4.452432e-05, 1.000000e+00, 23, 2355, 1) - ((1.084241e+01, -6.057477e+00, 4.593868e+00), (9.066652e-01, -6.565865e-02, 4.167099e-01), 3.324374e+03, 4.452614e-05, 1.000000e+00, 23, 2355, 1) - ((1.107130e+01, -6.074053e+00, 4.699070e+00), (9.066652e-01, -6.565865e-02, 4.167099e-01), 3.324374e+03, 4.452930e-05, 1.000000e+00, 22, 2355, 3) - ((1.121611e+01, -6.084540e+00, 4.765623e+00), (9.066652e-01, -6.565865e-02, 4.167099e-01), 3.324374e+03, 4.453130e-05, 1.000000e+00, 21, 2355, 2) - ((1.174815e+01, -6.123069e+00, 5.010155e+00), (9.066652e-01, -6.565865e-02, 4.167099e-01), 3.324374e+03, 4.453866e-05, 1.000000e+00, 22, 2355, 3) - ((1.189296e+01, -6.133556e+00, 5.076709e+00), (9.066652e-01, -6.565865e-02, 4.167099e-01), 3.324374e+03, 4.454067e-05, 1.000000e+00, 23, 2355, 1) - ((1.221698e+01, -6.157021e+00, 5.225634e+00), (5.263177e-01, -7.048209e-01, -4.756229e-01), 3.449618e+02, 4.454515e-05, 1.000000e+00, 23, 2355, 1) - ((1.226820e+01, -6.225607e+00, 5.179351e+00), (5.263177e-01, -7.048209e-01, -4.756229e-01), 3.449618e+02, 4.454893e-05, 1.000000e+00, 23, 2519, 1) - ((1.230378e+01, -6.273253e+00, 5.147199e+00), (9.203567e-01, -2.667811e-01, -2.859569e-01), 2.269067e+02, 4.455157e-05, 1.000000e+00, 23, 2519, 1) - ((1.237909e+01, -6.295083e+00, 5.123800e+00), (8.444192e-01, -5.115818e-01, 1.588717e-01), 1.686474e+02, 4.455549e-05, 1.000000e+00, 23, 2519, 1) - ((1.250758e+01, -6.372926e+00, 5.147974e+00), (8.444192e-01, -5.115818e-01, 1.588717e-01), 1.686474e+02, 4.456396e-05, 1.000000e+00, 22, 2519, 3) - ((1.258603e+01, -6.420455e+00, 5.162734e+00), (8.444192e-01, -5.115818e-01, 1.588717e-01), 1.686474e+02, 4.456914e-05, 1.000000e+00, 21, 2519, 2) - ((1.264082e+01, -6.453648e+00, 5.173042e+00), (3.837750e-01, -8.931658e-01, -2.344604e-01), 1.632815e+02, 4.457275e-05, 1.000000e+00, 21, 2519, 2) - ((1.288240e+01, -7.015898e+00, 5.025449e+00), (3.837750e-01, -8.931658e-01, -2.344604e-01), 1.632815e+02, 4.460837e-05, 1.000000e+00, 22, 2519, 3) - ((1.292943e+01, -7.125332e+00, 4.996722e+00), (3.837750e-01, -8.931658e-01, -2.344604e-01), 1.632815e+02, 4.461530e-05, 1.000000e+00, 23, 2519, 1) - ((1.303065e+01, -7.360920e+00, 4.934879e+00), (3.837750e-01, -8.931658e-01, -2.344604e-01), 1.632815e+02, 4.463022e-05, 1.000000e+00, 23, 2520, 1) - ((1.309295e+01, -7.505897e+00, 4.896822e+00), (3.189366e-01, -9.220512e-01, 2.193195e-01), 1.303968e+02, 4.463941e-05, 1.000000e+00, 23, 2520, 1) - ((1.311741e+01, -7.576618e+00, 4.913644e+00), (3.189366e-01, -9.220512e-01, 2.193195e-01), 1.303968e+02, 4.464426e-05, 1.000000e+00, 22, 2520, 3) - ((1.314895e+01, -7.667795e+00, 4.935331e+00), (3.189366e-01, -9.220512e-01, 2.193195e-01), 1.303968e+02, 4.465052e-05, 1.000000e+00, 21, 2520, 2) - ((1.345125e+01, -8.541749e+00, 5.143210e+00), (3.189366e-01, -9.220512e-01, 2.193195e-01), 1.303968e+02, 4.471053e-05, 1.000000e+00, 22, 2520, 3) - ((1.348278e+01, -8.632925e+00, 5.164897e+00), (3.189366e-01, -9.220512e-01, 2.193195e-01), 1.303968e+02, 4.471679e-05, 1.000000e+00, 23, 2520, 1) - ((1.356121e+01, -8.859646e+00, 5.218825e+00), (3.469373e-01, -8.669828e-01, 3.577365e-01), 1.276458e+02, 4.473236e-05, 1.000000e+00, 23, 2520, 1) - ((1.361604e+01, -8.996680e+00, 5.275368e+00), (3.469373e-01, -8.669828e-01, 3.577365e-01), 1.276458e+02, 4.474248e-05, 1.000000e+00, 23, 2521, 1) - ((1.390396e+01, -9.716172e+00, 5.572247e+00), (3.469373e-01, -8.669828e-01, 3.577365e-01), 1.276458e+02, 4.479558e-05, 1.000000e+00, 23, 2536, 1) - ((1.399742e+01, -9.949713e+00, 5.668611e+00), (-5.897476e-01, -6.217559e-01, 5.153807e-01), 3.643244e+01, 4.481282e-05, 1.000000e+00, 23, 2536, 1) - ((1.390396e+01, -1.004824e+01, 5.750282e+00), (-5.897476e-01, -6.217559e-01, 5.153807e-01), 3.643244e+01, 4.483180e-05, 1.000000e+00, 23, 2521, 1) - ((1.334984e+01, -1.063244e+01, 6.234531e+00), (-5.897476e-01, -6.217559e-01, 5.153807e-01), 3.643244e+01, 4.494435e-05, 1.000000e+00, 23, 2522, 1) - ((1.317711e+01, -1.081455e+01, 6.385480e+00), (-4.211158e-01, -4.515418e-01, 7.866203e-01), 3.302717e+01, 4.497943e-05, 1.000000e+00, 23, 2522, 1) - ((1.316679e+01, -1.082561e+01, 6.404749e+00), (-5.182259e-01, 3.860612e-01, 7.631505e-01), 1.437084e+01, 4.498251e-05, 1.000000e+00, 23, 2522, 1) - ((1.292206e+01, -1.064329e+01, 6.765147e+00), (-8.169098e-01, 1.482852e-01, 5.573777e-01), 1.219816e+01, 4.507257e-05, 1.000000e+00, 23, 2522, 1) - ((1.286229e+01, -1.063244e+01, 6.805923e+00), (-8.169098e-01, 1.482852e-01, 5.573777e-01), 1.219816e+01, 4.508772e-05, 1.000000e+00, 23, 2521, 1) - ((1.284917e+01, -1.063006e+01, 6.814880e+00), (-5.213758e-01, -3.360250e-01, 7.843816e-01), 8.052778e+00, 4.509105e-05, 1.000000e+00, 23, 2521, 1) - ((1.284547e+01, -1.063244e+01, 6.820442e+00), (-5.213758e-01, -3.360250e-01, 7.843816e-01), 8.052778e+00, 4.509285e-05, 1.000000e+00, 23, 2522, 1) - ((1.249929e+01, -1.085555e+01, 7.341246e+00), (-1.520079e-01, -3.513652e-01, 9.238161e-01), 7.069024e+00, 4.526201e-05, 1.000000e+00, 23, 2522, 1) - ((1.240103e+01, -1.108268e+01, 7.938428e+00), (-7.405967e-01, -3.230926e-01, 5.891754e-01), 4.460475e+00, 4.543779e-05, 1.000000e+00, 23, 2522, 1) - ((1.229354e+01, -1.112958e+01, 8.023945e+00), (-6.892797e-01, 5.508903e-01, 4.705458e-01), 2.006774e+00, 4.548748e-05, 1.000000e+00, 23, 2522, 1) - ((1.226820e+01, -1.110933e+01, 8.041241e+00), (-6.892797e-01, 5.508903e-01, 4.705458e-01), 2.006774e+00, 4.550624e-05, 1.000000e+00, 23, 2314, 1) - ((1.198501e+01, -1.088299e+01, 8.234567e+00), (-7.677533e-01, 4.569444e-01, 4.491733e-01), 1.935517e+00, 4.571593e-05, 1.000000e+00, 23, 2314, 1) - ((1.156403e+01, -1.063244e+01, 8.480859e+00), (-7.677533e-01, 4.569444e-01, 4.491733e-01), 1.935517e+00, 4.600087e-05, 1.000000e+00, 23, 2329, 1) - ((1.150264e+01, -1.059590e+01, 8.516776e+00), (-7.780064e-01, -9.937785e-02, 6.203467e-01), 1.893413e+00, 4.604243e-05, 1.000000e+00, 23, 2329, 1) - ((1.121659e+01, -1.063244e+01, 8.744860e+00), (-7.780064e-01, -9.937785e-02, 6.203467e-01), 1.893413e+00, 4.623561e-05, 1.000000e+00, 23, 2314, 1) - ((1.063244e+01, -1.070706e+01, 9.210632e+00), (-7.780064e-01, -9.937785e-02, 6.203467e-01), 1.893413e+00, 4.663011e-05, 1.000000e+00, 23, 2313, 1) - ((1.035391e+01, -1.074263e+01, 9.432717e+00), (-4.847677e-01, -8.685325e-01, -1.032060e-01), 5.647686e-01, 4.681821e-05, 1.000000e+00, 23, 2313, 1) - ((1.031409e+01, -1.081397e+01, 9.424239e+00), (-4.227592e-01, -9.022601e-01, -8.486053e-02), 5.651902e-01, 4.689723e-05, 1.000000e+00, 23, 2313, 1) - ((1.028497e+01, -1.087614e+01, 9.418392e+00), (1.549579e-01, -4.270887e-01, 8.908329e-01), 5.395517e-01, 4.696349e-05, 1.000000e+00, 23, 2313, 1) - ((1.034128e+01, -1.103135e+01, 9.742126e+00), (5.631544e-01, 4.925564e-01, 6.635098e-01), 2.637257e-01, 4.732118e-05, 1.000000e+00, 23, 2313, 1) - ((1.044415e+01, -1.094137e+01, 9.863334e+00), (-1.034377e-01, 7.912271e-01, 6.027108e-01), 1.474934e-01, 4.757836e-05, 1.000000e+00, 23, 2313, 1) - ((1.043959e+01, -1.090643e+01, 9.889950e+00), (1.163182e-01, 9.160889e-01, -3.837331e-01), 1.522434e-01, 4.766149e-05, 1.000000e+00, 23, 2313, 1) - ((1.045733e+01, -1.076664e+01, 9.831395e+00), (-8.136862e-01, 9.805444e-02, -5.729748e-01), 3.341488e-02, 4.794423e-05, 1.000000e+00, 23, 2313, 1) - ((1.044231e+01, -1.076483e+01, 9.820815e+00), (-8.437241e-01, 5.222731e-01, -1.239373e-01), 3.874838e-02, 4.801727e-05, 1.000000e+00, 23, 2313, 1) - ((1.028725e+01, -1.066884e+01, 9.798037e+00), (-8.066297e-01, 3.960430e-01, -4.387465e-01), 3.989754e-02, 4.869227e-05, 1.000000e+00, 23, 2313, 1) - ((1.021310e+01, -1.063244e+01, 9.757708e+00), (-8.066297e-01, 3.960430e-01, -4.387465e-01), 3.989754e-02, 4.902498e-05, 1.000000e+00, 23, 2328, 1) - ((1.012717e+01, -1.059025e+01, 9.710967e+00), (-4.762033e-01, 8.377852e-01, -2.671075e-01), 3.271721e-02, 4.941058e-05, 1.000000e+00, 23, 2328, 1) - ((1.001043e+01, -1.038486e+01, 9.645483e+00), (-4.762033e-01, 8.377852e-01, -2.671075e-01), 3.271721e-02, 5.039049e-05, 1.000000e+00, 22, 2328, 3) - ((9.971285e+00, -1.031600e+01, 9.623530e+00), (5.437395e-01, -6.104117e-01, -5.759730e-01), 2.765456e-02, 5.071901e-05, 1.000000e+00, 22, 2328, 3) - ((1.002723e+01, -1.037881e+01, 9.564267e+00), (5.437395e-01, -6.104117e-01, -5.759730e-01), 2.765456e-02, 5.116633e-05, 1.000000e+00, 23, 2328, 1) - ((1.025152e+01, -1.063060e+01, 9.326683e+00), (-8.159392e-01, -4.792697e-03, 5.781179e-01), 2.920905e-02, 5.295966e-05, 1.000000e+00, 23, 2328, 1) - ((1.000779e+01, -1.063203e+01, 9.499373e+00), (-6.486477e-01, -4.621598e-01, -6.047020e-01), 2.383638e-02, 5.422329e-05, 1.000000e+00, 23, 2328, 1) - ((1.000721e+01, -1.063244e+01, 9.498835e+00), (-6.486477e-01, -4.621598e-01, -6.047020e-01), 2.383638e-02, 5.422746e-05, 1.000000e+00, 23, 2313, 1) - ((9.852478e+00, -1.074269e+01, 9.354584e+00), (-6.686452e-01, -2.988396e-01, 6.808880e-01), 2.993224e-02, 5.534454e-05, 1.000000e+00, 23, 2313, 1) - ((9.765042e+00, -1.078177e+01, 9.443621e+00), (7.712484e-01, -5.215773e-01, 3.648739e-01), 3.590785e-02, 5.589099e-05, 1.000000e+00, 23, 2313, 1) - ((9.798992e+00, -1.080472e+01, 9.459682e+00), (-4.563170e-01, 8.081811e-01, -3.723144e-01), 2.674168e-02, 5.605894e-05, 1.000000e+00, 23, 2313, 1) - ((9.792857e+00, -1.079386e+01, 9.454677e+00), (-9.080336e-01, 4.172659e-01, 3.693418e-02), 9.753404e-03, 5.611838e-05, 1.000000e+00, 23, 2313, 1) - ((9.653805e+00, -1.072996e+01, 9.460332e+00), (-3.727950e-01, 2.889342e-01, -8.817828e-01), 1.781716e-02, 5.723944e-05, 1.000000e+00, 23, 2313, 1) - ((9.628677e+00, -1.071048e+01, 9.400895e+00), (-6.406523e-01, 7.657269e-01, -5.680598e-02), 1.764425e-02, 5.760453e-05, 1.000000e+00, 23, 2313, 1) - ((9.563380e+00, -1.063244e+01, 9.395105e+00), (-6.406523e-01, 7.657269e-01, -5.680598e-02), 1.764425e-02, 5.815928e-05, 1.000000e+00, 23, 2328, 1) - ((9.411305e+00, -1.045068e+01, 9.381621e+00), (3.205568e-01, -1.311309e-02, -9.471385e-01), 2.153422e-02, 5.945128e-05, 1.000000e+00, 23, 2328, 1) - ((9.860026e+00, -1.046903e+01, 8.055798e+00), (6.278124e-01, 1.023095e-01, -7.716115e-01), 2.013742e-02, 6.634788e-05, 1.000000e+00, 23, 2328, 1) - ((1.007604e+01, -1.043383e+01, 7.790303e+00), (6.790346e-01, 5.167838e-01, 5.213891e-01), 1.340865e-02, 6.810089e-05, 1.000000e+00, 23, 2328, 1) - ((1.008869e+01, -1.042421e+01, 7.800011e+00), (2.792456e-01, 1.367953e-01, 9.504257e-01), 8.576635e-03, 6.821715e-05, 1.000000e+00, 23, 2328, 1) - ((1.017046e+01, -1.038415e+01, 8.078330e+00), (-9.462370e-01, 3.185163e-01, 5.641780e-02), 1.119274e-01, 7.050324e-05, 1.000000e+00, 23, 2328, 1) - ((1.008276e+01, -1.035463e+01, 8.083559e+00), (-9.462370e-01, 3.185163e-01, 5.641780e-02), 1.119274e-01, 7.070353e-05, 1.000000e+00, 22, 2328, 3) - ((9.952201e+00, -1.031068e+01, 8.091343e+00), (-9.462370e-01, 3.185163e-01, 5.641780e-02), 1.119274e-01, 7.100170e-05, 1.000000e+00, 21, 2328, 2) - ((9.404929e+00, -1.012646e+01, 8.123973e+00), (-9.462370e-01, 3.185163e-01, 5.641780e-02), 1.119274e-01, 7.225157e-05, 1.000000e+00, 22, 2328, 3) - ((9.274369e+00, -1.008251e+01, 8.131758e+00), (-9.462370e-01, 3.185163e-01, 5.641780e-02), 1.119274e-01, 7.254974e-05, 1.000000e+00, 23, 2328, 1) - ((9.126730e+00, -1.003281e+01, 8.140560e+00), (-8.389978e-01, -2.248732e-01, 4.954945e-01), 1.164832e-01, 7.288692e-05, 1.000000e+00, 23, 2328, 1) - ((8.996680e+00, -1.006767e+01, 8.217365e+00), (-8.389978e-01, -2.248732e-01, 4.954945e-01), 1.164832e-01, 7.321528e-05, 1.000000e+00, 23, 2327, 1) - ((8.694758e+00, -1.014859e+01, 8.395674e+00), (5.156148e-01, 7.316558e-01, 4.458937e-01), 1.391972e-01, 7.397758e-05, 1.000000e+00, 23, 2327, 1) - ((8.996680e+00, -9.720167e+00, 8.656770e+00), (5.156148e-01, 7.316558e-01, 4.458937e-01), 1.391972e-01, 7.511228e-05, 1.000000e+00, 23, 2328, 1) - ((9.263031e+00, -9.342216e+00, 8.887105e+00), (5.734531e-01, -5.017666e-01, 6.475970e-01), 9.798082e-02, 7.611330e-05, 1.000000e+00, 23, 2328, 1) - ((9.334809e+00, -9.405021e+00, 8.968164e+00), (5.419546e-03, -7.721039e-01, -6.354732e-01), 1.234091e-01, 7.640240e-05, 1.000000e+00, 23, 2328, 1) - ((9.335117e+00, -9.448857e+00, 8.932084e+00), (5.419546e-03, -7.721039e-01, -6.354732e-01), 1.234091e-01, 7.651925e-05, 1.000000e+00, 22, 2328, 3) - ((9.336345e+00, -9.623801e+00, 8.788098e+00), (5.419546e-03, -7.721039e-01, -6.354732e-01), 1.234091e-01, 7.698556e-05, 1.000000e+00, 21, 2328, 2) - ((9.339070e+00, -1.001201e+01, 8.468584e+00), (5.419546e-03, -7.721039e-01, -6.354732e-01), 1.234091e-01, 7.802034e-05, 1.000000e+00, 22, 2328, 3) - ((9.340298e+00, -1.018696e+01, 8.324598e+00), (5.419546e-03, -7.721039e-01, -6.354732e-01), 1.234091e-01, 7.848665e-05, 1.000000e+00, 23, 2328, 1) - ((9.343193e+00, -1.059945e+01, 7.985097e+00), (1.798796e-01, 3.522536e-02, -9.830577e-01), 1.283272e-01, 7.958616e-05, 1.000000e+00, 23, 2328, 1) - ((9.397753e+00, -1.058877e+01, 7.686922e+00), (6.459563e-01, 7.279465e-03, -7.633397e-01), 1.319449e-01, 8.019832e-05, 1.000000e+00, 23, 2328, 1) - ((9.462343e+00, -1.058804e+01, 7.610595e+00), (-5.748716e-01, 5.760301e-01, -5.811299e-01), 8.880732e-02, 8.039733e-05, 1.000000e+00, 23, 2328, 1) - ((9.287877e+00, -1.041322e+01, 7.434230e+00), (-4.932135e-03, 1.668926e-01, 9.859627e-01), 3.503028e-02, 8.113361e-05, 1.000000e+00, 23, 2328, 1) - ((9.286930e+00, -1.038117e+01, 7.623600e+00), (-9.325544e-02, -9.933000e-01, -6.825369e-02), 3.173764e-02, 8.187553e-05, 1.000000e+00, 23, 2328, 1) - ((9.283901e+00, -1.041342e+01, 7.621384e+00), (-4.235208e-01, -5.129112e-01, 7.466942e-01), 4.258127e-02, 8.200731e-05, 1.000000e+00, 23, 2328, 1) - ((9.264517e+00, -1.043690e+01, 7.655560e+00), (-7.165846e-01, 3.926265e-01, 5.764988e-01), 4.485063e-02, 8.216767e-05, 1.000000e+00, 23, 2328, 1) - ((9.256348e+00, -1.043242e+01, 7.662132e+00), (1.703748e-01, -9.175599e-01, -3.592441e-01), 3.521226e-02, 8.220659e-05, 1.000000e+00, 23, 2328, 1) - ((9.284015e+00, -1.058143e+01, 7.603793e+00), (3.963415e-01, -8.051509e-01, 4.411865e-01), 2.970280e-02, 8.283227e-05, 1.000000e+00, 23, 2328, 1) - ((9.309126e+00, -1.063244e+01, 7.631745e+00), (3.963415e-01, -8.051509e-01, 4.411865e-01), 2.970280e-02, 8.309804e-05, 1.000000e+00, 23, 2313, 1) - ((9.317824e+00, -1.065011e+01, 7.641427e+00), (7.190682e-01, 8.976507e-02, -6.891177e-01), 2.867417e-02, 8.319011e-05, 1.000000e+00, 23, 2313, 1) - ((9.459378e+00, -1.063244e+01, 7.505770e+00), (7.190682e-01, 8.976507e-02, -6.891177e-01), 2.867417e-02, 8.403060e-05, 1.000000e+00, 23, 2328, 1) - ((9.492454e+00, -1.062831e+01, 7.474071e+00), (4.092619e-03, -9.482095e-01, -3.176193e-01), 4.656141e-02, 8.422700e-05, 1.000000e+00, 23, 2328, 1) - ((9.492472e+00, -1.063244e+01, 7.472688e+00), (4.092619e-03, -9.482095e-01, -3.176193e-01), 4.656141e-02, 8.424159e-05, 1.000000e+00, 23, 2313, 1) - ((9.492761e+00, -1.069927e+01, 7.450302e+00), (9.457151e-01, -1.928731e-01, 2.615777e-01), 4.542312e-02, 8.447773e-05, 1.000000e+00, 23, 2313, 1) - ((9.890524e+00, -1.078039e+01, 7.560320e+00), (7.849118e-01, -1.237812e-01, -6.071175e-01), 5.609444e-02, 8.590450e-05, 1.000000e+00, 23, 2313, 1) - ((1.004645e+01, -1.080498e+01, 7.439717e+00), (7.849118e-01, -1.237812e-01, -6.071175e-01), 5.609444e-02, 8.651090e-05, 0.000000e+00, 23, 2313, 1)] +ParticleType.NEUTRON [((6.474155e+00, -5.192870e+00, 5.413003e+00), (-9.112559e-01, 3.950037e-01, 1.165536e-01), 2.052226e+06, 4.450859e-05, 1.000000e+00, 21, 2367, 2) + ((6.037250e+00, -5.003484e+00, 5.468885e+00), (-9.112559e-01, 3.950037e-01, 1.165536e-01), 2.052226e+06, 4.450883e-05, 1.000000e+00, 22, 2367, 3) + ((5.942573e+00, -4.962444e+00, 5.480995e+00), (-9.112559e-01, 3.950037e-01, 1.165536e-01), 2.052226e+06, 4.450888e-05, 1.000000e+00, 23, 2367, 1) + ((5.861800e+00, -4.927431e+00, 5.491326e+00), (-9.518772e-01, -3.064714e-01, -2.259335e-03), 1.141417e+06, 4.450892e-05, 1.000000e+00, 23, 2367, 1) + ((5.725160e+00, -4.971424e+00, 5.491002e+00), (-9.518772e-01, -3.064714e-01, -2.259335e-03), 1.141417e+06, 4.450902e-05, 1.000000e+00, 23, 2366, 1) + ((5.494150e+00, -5.045802e+00, 5.490454e+00), (-9.518772e-01, -3.064714e-01, -2.259335e-03), 1.141417e+06, 4.450919e-05, 1.000000e+00, 22, 2366, 3) + ((5.392865e+00, -5.078412e+00, 5.490213e+00), (-9.518772e-01, -3.064714e-01, -2.259335e-03), 1.141417e+06, 4.450926e-05, 1.000000e+00, 21, 2366, 2) + ((4.612759e+00, -5.329579e+00, 5.488362e+00), (-9.518772e-01, -3.064714e-01, -2.259335e-03), 1.141417e+06, 4.450981e-05, 1.000000e+00, 22, 2366, 3) + ((4.511474e+00, -5.362189e+00, 5.488121e+00), (-9.518772e-01, -3.064714e-01, -2.259335e-03), 1.141417e+06, 4.450989e-05, 1.000000e+00, 23, 2366, 1) + ((4.089400e+00, -5.498082e+00, 5.487119e+00), (-9.518772e-01, -3.064714e-01, -2.259335e-03), 1.141417e+06, 4.451019e-05, 1.000000e+00, 23, 2365, 1) + ((3.384113e+00, -5.725160e+00, 5.485445e+00), (-9.518772e-01, -3.064714e-01, -2.259335e-03), 1.141417e+06, 4.451069e-05, 1.000000e+00, 23, 2351, 1) + ((2.453640e+00, -6.024740e+00, 5.483237e+00), (-9.518772e-01, -3.064714e-01, -2.259335e-03), 1.141417e+06, 4.451135e-05, 1.000000e+00, 23, 2350, 1) + ((2.086813e+00, -6.142846e+00, 5.482366e+00), (-9.518772e-01, -3.064714e-01, -2.259335e-03), 1.141417e+06, 4.451161e-05, 1.000000e+00, 22, 2350, 3) + ((1.993594e+00, -6.172859e+00, 5.482145e+00), (-9.518772e-01, -3.064714e-01, -2.259335e-03), 1.141417e+06, 4.451168e-05, 1.000000e+00, 21, 2350, 2) + ((1.325704e+00, -6.387896e+00, 5.480560e+00), (8.986086e-01, -4.380574e-01, -2.466265e-02), 9.775839e+05, 4.451215e-05, 1.000000e+00, 21, 2350, 2) + ((2.061403e+00, -6.746538e+00, 5.460368e+00), (-7.778764e-01, 2.051975e-01, -5.939716e-01), 7.813219e+05, 4.451275e-05, 1.000000e+00, 21, 2350, 2) + ((1.122794e+00, -6.498940e+00, 4.743664e+00), (-7.778764e-01, 2.051975e-01, -5.939716e-01), 7.813219e+05, 4.451374e-05, 1.000000e+00, 22, 2350, 3) + ((1.036483e+00, -6.476172e+00, 4.677758e+00), (-7.778764e-01, 2.051975e-01, -5.939716e-01), 7.813219e+05, 4.451383e-05, 1.000000e+00, 23, 2350, 1) + ((8.178800e-01, -6.418507e+00, 4.510837e+00), (-7.778764e-01, 2.051975e-01, -5.939716e-01), 7.813219e+05, 4.451406e-05, 1.000000e+00, 23, 2349, 1) + ((5.725264e-01, -6.353784e+00, 4.323490e+00), (-7.778764e-01, 2.051975e-01, -5.939716e-01), 7.813219e+05, 4.451432e-05, 1.000000e+00, 22, 2349, 3) + ((4.668297e-01, -6.325902e+00, 4.242782e+00), (-7.778764e-01, 2.051975e-01, -5.939716e-01), 7.813219e+05, 4.451443e-05, 1.000000e+00, 21, 2349, 2) + ((-2.989816e-01, -6.123888e+00, 3.658023e+00), (-7.778764e-01, 2.051975e-01, -5.939716e-01), 7.813219e+05, 4.451524e-05, 1.000000e+00, 22, 2349, 3) + ((-4.046782e-01, -6.096006e+00, 3.577315e+00), (-7.778764e-01, 2.051975e-01, -5.939716e-01), 7.813219e+05, 4.451535e-05, 1.000000e+00, 23, 2349, 1) + ((-8.040445e-01, -5.990656e+00, 3.272367e+00), (-7.989001e-01, -1.890553e-01, -5.709787e-01), 6.637114e+05, 4.451577e-05, 1.000000e+00, 23, 2349, 1) + ((-8.178800e-01, -5.993930e+00, 3.262478e+00), (-7.989001e-01, -1.890553e-01, -5.709787e-01), 6.637114e+05, 4.451578e-05, 1.000000e+00, 23, 2348, 1) + ((-1.077910e+00, -6.055465e+00, 3.076633e+00), (-4.487118e-01, 1.670254e-01, -8.779295e-01), 4.550608e+05, 4.451607e-05, 1.000000e+00, 23, 2348, 1) + ((-1.215611e+00, -6.004208e+00, 2.807214e+00), (7.872329e-01, 4.481433e-01, -4.235941e-01), 3.544207e+03, 4.451640e-05, 1.000000e+00, 23, 2348, 1) + ((-1.100296e+00, -5.938564e+00, 2.745166e+00), (8.468456e-01, 5.310954e-01, 2.811230e-02), 2.812308e+03, 4.451818e-05, 1.000000e+00, 23, 2348, 1) + ((-8.178800e-01, -5.761448e+00, 2.754541e+00), (8.468456e-01, 5.310954e-01, 2.811230e-02), 2.812308e+03, 4.452273e-05, 1.000000e+00, 23, 2349, 1) + ((-7.600184e-01, -5.725160e+00, 2.756462e+00), (8.468456e-01, 5.310954e-01, 2.811230e-02), 2.812308e+03, 4.452366e-05, 1.000000e+00, 23, 2363, 1) + ((-2.947156e-01, -5.433347e+00, 2.771908e+00), (8.468456e-01, 5.310954e-01, 2.811230e-02), 2.812308e+03, 4.453115e-05, 1.000000e+00, 22, 2363, 3) + ((-2.073333e-01, -5.378546e+00, 2.774809e+00), (8.468456e-01, 5.310954e-01, 2.811230e-02), 2.812308e+03, 4.453255e-05, 1.000000e+00, 21, 2363, 2) + ((-1.746705e-01, -5.358062e+00, 2.775893e+00), (5.278774e-01, 5.459205e-01, 6.506276e-01), 2.806481e+03, 4.453308e-05, 1.000000e+00, 21, 2363, 2) + ((-8.681718e-02, -5.267205e+00, 2.884176e+00), (-8.975500e-01, 8.968076e-04, -4.409119e-01), 2.764929e+03, 4.453535e-05, 1.000000e+00, 21, 2363, 2) + ((-3.684221e-01, -5.266924e+00, 2.745840e+00), (-8.975500e-01, 8.968076e-04, -4.409119e-01), 2.764929e+03, 4.453967e-05, 1.000000e+00, 22, 2363, 3) + ((-4.840903e-01, -5.266809e+00, 2.689019e+00), (-8.975500e-01, 8.968076e-04, -4.409119e-01), 2.764929e+03, 4.454144e-05, 1.000000e+00, 23, 2363, 1) + ((-8.178800e-01, -5.266475e+00, 2.525049e+00), (-8.975500e-01, 8.968076e-04, -4.409119e-01), 2.764929e+03, 4.454655e-05, 1.000000e+00, 23, 2362, 1) + ((-1.151175e+00, -5.266142e+00, 2.361321e+00), (-8.975500e-01, 8.968076e-04, -4.409119e-01), 2.764929e+03, 4.455166e-05, 1.000000e+00, 22, 2362, 3) + ((-1.266464e+00, -5.266027e+00, 2.304687e+00), (-8.975500e-01, 8.968076e-04, -4.409119e-01), 2.764929e+03, 4.455342e-05, 1.000000e+00, 21, 2362, 2) + ((-2.005772e+00, -5.265288e+00, 1.941509e+00), (-8.975500e-01, 8.968076e-04, -4.409119e-01), 2.764929e+03, 4.456475e-05, 1.000000e+00, 22, 2362, 3) + ((-2.121061e+00, -5.265173e+00, 1.884875e+00), (-8.975500e-01, 8.968076e-04, -4.409119e-01), 2.764929e+03, 4.456651e-05, 1.000000e+00, 23, 2362, 1) + ((-2.393759e+00, -5.264900e+00, 1.750915e+00), (-9.607392e-01, -1.749373e-01, 2.153533e-01), 1.619469e+03, 4.457069e-05, 1.000000e+00, 23, 2362, 1) + ((-2.453640e+00, -5.275804e+00, 1.764337e+00), (-9.607392e-01, -1.749373e-01, 2.153533e-01), 1.619469e+03, 4.457181e-05, 1.000000e+00, 23, 2361, 1) + ((-2.470658e+00, -5.278903e+00, 1.768152e+00), (-6.728606e-01, -2.916408e-01, -6.798561e-01), 4.873672e+02, 4.457213e-05, 1.000000e+00, 23, 2361, 1) + ((-3.463692e+00, -5.709318e+00, 7.647939e-01), (-2.249302e-01, -9.330150e-01, -2.808728e-01), 1.790901e+02, 4.462046e-05, 1.000000e+00, 23, 2361, 1) + ((-3.467511e+00, -5.725160e+00, 7.600247e-01), (-2.249302e-01, -9.330150e-01, -2.808728e-01), 1.790901e+02, 4.462138e-05, 1.000000e+00, 23, 2347, 1) + ((-3.533785e+00, -6.000066e+00, 6.772677e-01), (-2.249302e-01, -9.330150e-01, -2.808728e-01), 1.790901e+02, 4.463730e-05, 1.000000e+00, 22, 2347, 3) + ((-3.562245e+00, -6.118119e+00, 6.417291e-01), (-2.249302e-01, -9.330150e-01, -2.808728e-01), 1.790901e+02, 4.464413e-05, 1.000000e+00, 21, 2347, 2) + ((-3.723934e+00, -6.788806e+00, 4.398272e-01), (-2.249302e-01, -9.330150e-01, -2.808728e-01), 1.790901e+02, 4.468297e-05, 1.000000e+00, 22, 2347, 3) + ((-3.752394e+00, -6.906859e+00, 4.042885e-01), (-2.249302e-01, -9.330150e-01, -2.808728e-01), 1.790901e+02, 4.468980e-05, 1.000000e+00, 23, 2347, 1) + ((-3.848515e+00, -7.305571e+00, 2.842613e-01), (6.498448e-01, -3.243413e-01, -6.873896e-01), 2.328979e+01, 4.471289e-05, 1.000000e+00, 23, 2347, 1) + ((-3.737619e+00, -7.360920e+00, 1.669579e-01), (6.498448e-01, -3.243413e-01, -6.873896e-01), 2.328979e+01, 4.473846e-05, 1.000000e+00, 11, 1750, 1) + ((-3.574308e+00, -7.442429e+00, -5.788041e-03), (6.794505e-01, 3.157106e-01, -6.623246e-01), 1.590416e+01, 4.477610e-05, 1.000000e+00, 11, 1750, 1) + ((-3.398889e+00, -7.360920e+00, -1.767852e-01), (6.794505e-01, 3.157106e-01, -6.623246e-01), 1.590416e+01, 4.482291e-05, 1.000000e+00, 23, 2347, 1) + ((-2.904712e+00, -7.131298e+00, -6.585068e-01), (-4.836985e-02, -2.819627e-01, -9.582053e-01), 2.610202e+00, 4.495476e-05, 1.000000e+00, 23, 2347, 1) + ((-2.923579e+00, -7.241285e+00, -1.032280e+00), (-6.089807e-01, -2.347428e-01, -7.576532e-01), 1.671268e+00, 4.512932e-05, 1.000000e+00, 23, 2347, 1) + ((-3.012516e+00, -7.275567e+00, -1.142930e+00), (3.221931e-01, -5.406104e-01, -7.771306e-01), 1.275709e-01, 4.521100e-05, 1.000000e+00, 23, 2347, 1) + ((-2.984032e+00, -7.323360e+00, -1.211633e+00), (-8.629564e-01, -1.719529e-01, -4.751195e-01), 1.897424e-02, 4.538995e-05, 1.000000e+00, 23, 2347, 1) + ((-3.172528e+00, -7.360920e+00, -1.315413e+00), (-8.629564e-01, -1.719529e-01, -4.751195e-01), 1.897424e-02, 4.653641e-05, 1.000000e+00, 11, 1750, 1) + ((-3.602328e+00, -7.446562e+00, -1.552049e+00), (-1.530190e-01, -7.092235e-01, 6.881767e-01), 1.306951e-02, 4.915052e-05, 1.000000e+00, 11, 1750, 1) + ((-3.625236e+00, -7.552741e+00, -1.449021e+00), (-1.976867e-01, 2.826475e-01, 9.386322e-01), 2.145548e-02, 5.009730e-05, 1.000000e+00, 11, 1750, 1) + ((-3.636290e+00, -7.536936e+00, -1.396537e+00), (1.266676e-01, 2.265353e-01, -9.657314e-01), 1.815564e-02, 5.037329e-05, 1.000000e+00, 11, 1750, 1) + ((-3.621792e+00, -7.511008e+00, -1.507069e+00), (-4.275550e-01, 8.441443e-01, 3.234457e-01), 1.848049e-02, 5.098741e-05, 1.000000e+00, 11, 1750, 1) + ((-3.697811e+00, -7.360920e+00, -1.449560e+00), (-4.275550e-01, 8.441443e-01, 3.234457e-01), 1.848049e-02, 5.193299e-05, 1.000000e+00, 23, 2347, 1) + ((-3.703436e+00, -7.349814e+00, -1.445305e+00), (-7.832167e-01, 5.713670e-01, 2.451762e-01), 1.861705e-02, 5.200296e-05, 1.000000e+00, 23, 2347, 1) + ((-3.823243e+00, -7.262414e+00, -1.407801e+00), (-9.917106e-01, 5.069164e-02, 1.180695e-01), 4.703334e-02, 5.281350e-05, 1.000000e+00, 23, 2347, 1) + ((-4.089400e+00, -7.248809e+00, -1.376113e+00), (-9.917106e-01, 5.069164e-02, 1.180695e-01), 4.703334e-02, 5.370820e-05, 1.000000e+00, 23, 2346, 1) + ((-4.131081e+00, -7.246679e+00, -1.371151e+00), (9.108632e-01, -4.018526e-01, 9.403556e-02), 8.057393e-02, 5.384831e-05, 1.000000e+00, 23, 2346, 1) + ((-4.089400e+00, -7.265067e+00, -1.366848e+00), (9.108632e-01, -4.018526e-01, 9.403556e-02), 8.057393e-02, 5.396486e-05, 1.000000e+00, 23, 2347, 1) + ((-3.872134e+00, -7.360920e+00, -1.344418e+00), (9.108632e-01, -4.018526e-01, 9.403556e-02), 8.057393e-02, 5.457239e-05, 1.000000e+00, 11, 1750, 1) + ((-3.673062e+00, -7.448746e+00, -1.323866e+00), (2.976906e-01, 8.174443e-01, -4.931178e-01), 5.538060e-02, 5.512905e-05, 1.000000e+00, 11, 1750, 1) + ((-3.658580e+00, -7.408978e+00, -1.347855e+00), (-5.409120e-01, 8.345378e-01, -1.046943e-01), 8.122576e-02, 5.527851e-05, 1.000000e+00, 11, 1750, 1) + ((-3.682981e+00, -7.371331e+00, -1.352578e+00), (-5.409120e-01, 8.345378e-01, -1.046943e-01), 8.122576e-02, 5.539294e-05, 0.000000e+00, 11, 1750, 1)] diff --git a/tests/regression_tests/translation/results_true.dat b/tests/regression_tests/translation/results_true.dat index 32897b8e7..f832aa296 100644 --- a/tests/regression_tests/translation/results_true.dat +++ b/tests/regression_tests/translation/results_true.dat @@ -1,2 +1,2 @@ k-combined: -4.003951E-01 7.739871E-03 +4.087580E-01 4.466279E-03 diff --git a/tests/regression_tests/trigger_batch_interval/results_true.dat b/tests/regression_tests/trigger_batch_interval/results_true.dat index 2fcfaa10a..0571d6c4f 100644 --- a/tests/regression_tests/trigger_batch_interval/results_true.dat +++ b/tests/regression_tests/trigger_batch_interval/results_true.dat @@ -1,28 +1,28 @@ k-combined: -9.764624E-01 8.747085E-03 +9.767929E-01 5.327552E-03 tally 1: -1.408588E+01 -1.985937E+01 -3.194837E+00 -1.021391E+00 -3.096170E+00 -9.592197E-01 -1.089104E+01 -1.187349E+01 -1.408588E+01 -1.985937E+01 -3.194837E+00 -1.021391E+00 -3.096170E+00 -9.592197E-01 -1.089104E+01 -1.187349E+01 +1.405471E+01 +1.976444E+01 +3.186139E+00 +1.015515E+00 +3.088643E+00 +9.542994E-01 +1.086857E+01 +1.182011E+01 +1.405471E+01 +1.976444E+01 +3.186139E+00 +1.015515E+00 +3.088643E+00 +9.542994E-01 +1.086857E+01 +1.182011E+01 tally 2: -1.408588E+01 -1.985937E+01 -3.194837E+00 -1.021391E+00 -3.096170E+00 -9.592197E-01 -1.089104E+01 -1.187349E+01 +1.405471E+01 +1.976444E+01 +3.186139E+00 +1.015515E+00 +3.088643E+00 +9.542994E-01 +1.086857E+01 +1.182011E+01 diff --git a/tests/regression_tests/trigger_no_batch_interval/results_true.dat b/tests/regression_tests/trigger_no_batch_interval/results_true.dat index 2fcfaa10a..0571d6c4f 100644 --- a/tests/regression_tests/trigger_no_batch_interval/results_true.dat +++ b/tests/regression_tests/trigger_no_batch_interval/results_true.dat @@ -1,28 +1,28 @@ k-combined: -9.764624E-01 8.747085E-03 +9.767929E-01 5.327552E-03 tally 1: -1.408588E+01 -1.985937E+01 -3.194837E+00 -1.021391E+00 -3.096170E+00 -9.592197E-01 -1.089104E+01 -1.187349E+01 -1.408588E+01 -1.985937E+01 -3.194837E+00 -1.021391E+00 -3.096170E+00 -9.592197E-01 -1.089104E+01 -1.187349E+01 +1.405471E+01 +1.976444E+01 +3.186139E+00 +1.015515E+00 +3.088643E+00 +9.542994E-01 +1.086857E+01 +1.182011E+01 +1.405471E+01 +1.976444E+01 +3.186139E+00 +1.015515E+00 +3.088643E+00 +9.542994E-01 +1.086857E+01 +1.182011E+01 tally 2: -1.408588E+01 -1.985937E+01 -3.194837E+00 -1.021391E+00 -3.096170E+00 -9.592197E-01 -1.089104E+01 -1.187349E+01 +1.405471E+01 +1.976444E+01 +3.186139E+00 +1.015515E+00 +3.088643E+00 +9.542994E-01 +1.086857E+01 +1.182011E+01 diff --git a/tests/regression_tests/trigger_no_status/results_true.dat b/tests/regression_tests/trigger_no_status/results_true.dat index e95f05ccb..fb6c0086a 100644 --- a/tests/regression_tests/trigger_no_status/results_true.dat +++ b/tests/regression_tests/trigger_no_status/results_true.dat @@ -1,28 +1,28 @@ k-combined: -9.688702E-01 2.263104E-02 +9.682315E-01 3.302924E-03 tally 1: -7.069810E+00 -1.000691E+01 -1.597648E+00 -5.109653E-01 -1.547262E+00 -4.792189E-01 -5.472161E+00 -5.995488E+00 -7.069810E+00 -1.000691E+01 -1.597648E+00 -5.109653E-01 -1.547262E+00 -4.792189E-01 -5.472161E+00 -5.995488E+00 +7.046510E+00 +9.932168E+00 +1.591675E+00 +5.067777E-01 +1.541572E+00 +4.753743E-01 +5.454835E+00 +5.951990E+00 +7.046510E+00 +9.932168E+00 +1.591675E+00 +5.067777E-01 +1.541572E+00 +4.753743E-01 +5.454835E+00 +5.951990E+00 tally 2: -7.069810E+00 -1.000691E+01 -1.597648E+00 -5.109653E-01 -1.547262E+00 -4.792189E-01 -5.472161E+00 -5.995488E+00 +7.046510E+00 +9.932168E+00 +1.591675E+00 +5.067777E-01 +1.541572E+00 +4.753743E-01 +5.454835E+00 +5.951990E+00 diff --git a/tests/regression_tests/trigger_statepoint_restart/results_true.dat b/tests/regression_tests/trigger_statepoint_restart/results_true.dat index 3ab555d73..3e6619d74 100644 --- a/tests/regression_tests/trigger_statepoint_restart/results_true.dat +++ b/tests/regression_tests/trigger_statepoint_restart/results_true.dat @@ -1,5 +1,5 @@ k-combined: -2.963805E-01 2.986351E-03 +3.014717E-01 2.864764E-03 tally 1: -8.017826E+01 -6.436316E+02 +8.946107E+01 +7.281263E+02 diff --git a/tests/regression_tests/trigger_tallies/results_true.dat b/tests/regression_tests/trigger_tallies/results_true.dat index 2fcfaa10a..0571d6c4f 100644 --- a/tests/regression_tests/trigger_tallies/results_true.dat +++ b/tests/regression_tests/trigger_tallies/results_true.dat @@ -1,28 +1,28 @@ k-combined: -9.764624E-01 8.747085E-03 +9.767929E-01 5.327552E-03 tally 1: -1.408588E+01 -1.985937E+01 -3.194837E+00 -1.021391E+00 -3.096170E+00 -9.592197E-01 -1.089104E+01 -1.187349E+01 -1.408588E+01 -1.985937E+01 -3.194837E+00 -1.021391E+00 -3.096170E+00 -9.592197E-01 -1.089104E+01 -1.187349E+01 +1.405471E+01 +1.976444E+01 +3.186139E+00 +1.015515E+00 +3.088643E+00 +9.542994E-01 +1.086857E+01 +1.182011E+01 +1.405471E+01 +1.976444E+01 +3.186139E+00 +1.015515E+00 +3.088643E+00 +9.542994E-01 +1.086857E+01 +1.182011E+01 tally 2: -1.408588E+01 -1.985937E+01 -3.194837E+00 -1.021391E+00 -3.096170E+00 -9.592197E-01 -1.089104E+01 -1.187349E+01 +1.405471E+01 +1.976444E+01 +3.186139E+00 +1.015515E+00 +3.088643E+00 +9.542994E-01 +1.086857E+01 +1.182011E+01 diff --git a/tests/regression_tests/triso/results_true.dat b/tests/regression_tests/triso/results_true.dat index 279094ab3..fa1842e54 100644 --- a/tests/regression_tests/triso/results_true.dat +++ b/tests/regression_tests/triso/results_true.dat @@ -1,2 +1,2 @@ k-combined: -1.406055E+00 9.581396E-02 +1.716873E+00 5.266107E-02 diff --git a/tests/regression_tests/uniform_fs/results_true.dat b/tests/regression_tests/uniform_fs/results_true.dat index ebf06a8d3..46654b49b 100644 --- a/tests/regression_tests/uniform_fs/results_true.dat +++ b/tests/regression_tests/uniform_fs/results_true.dat @@ -1,2 +1,2 @@ k-combined: -3.643255E-01 1.041799E-02 +3.685309E-01 1.861720E-03 diff --git a/tests/regression_tests/universe/results_true.dat b/tests/regression_tests/universe/results_true.dat index fe46748c8..bbf03de94 100644 --- a/tests/regression_tests/universe/results_true.dat +++ b/tests/regression_tests/universe/results_true.dat @@ -1,2 +1,2 @@ k-combined: -2.987050E-01 1.827430E-03 +3.070134E-01 3.900396E-03 diff --git a/tests/regression_tests/unstructured_mesh/results_true.dat b/tests/regression_tests/unstructured_mesh/results_true.dat index c93eadfdb..a6cad647c 100644 --- a/tests/regression_tests/unstructured_mesh/results_true.dat +++ b/tests/regression_tests/unstructured_mesh/results_true.dat @@ -1,26002 +1,4002 @@ tally 1: -4.873713E-02 -2.881006E-04 -7.388548E-02 -6.421281E-04 -8.309847E-02 -8.079791E-04 -8.802030E-02 -8.590396E-04 -6.935977E-02 -5.711723E-04 -7.203243E-02 -5.847086E-04 -8.146742E-02 -8.422730E-04 -7.112287E-02 -5.331461E-04 -6.944025E-02 -6.220640E-04 -4.605581E-02 -3.052058E-04 -7.341445E-02 -6.319466E-04 -9.013420E-02 -1.083246E-03 -1.221831E-01 -1.761591E-03 -1.244445E-01 -1.714565E-03 -1.324446E-01 -2.041161E-03 -1.110879E-01 -1.399393E-03 -1.484356E-01 -2.412924E-03 -1.243711E-01 -1.740278E-03 -1.011503E-01 -1.167740E-03 -6.361036E-02 -4.887610E-04 -6.774704E-02 -6.414084E-04 -8.554708E-02 -9.422426E-04 -1.400424E-01 -2.238846E-03 -1.573053E-01 -2.687261E-03 -1.640744E-01 -2.864310E-03 -1.305526E-01 -1.848808E-03 -1.688498E-01 -3.171592E-03 -1.886270E-01 -3.972143E-03 -1.198794E-01 -1.610468E-03 -7.781359E-02 -8.133302E-04 -8.003923E-02 -7.488868E-04 -1.533578E-01 -2.662538E-03 -2.008234E-01 -4.137147E-03 -2.073409E-01 -4.520687E-03 -1.975748E-01 -4.160887E-03 -2.267844E-01 -5.491338E-03 -1.881489E-01 -3.776524E-03 -1.546827E-01 -2.713647E-03 -1.390602E-01 -2.088805E-03 -9.507737E-02 -1.035204E-03 -9.443902E-02 -9.783367E-04 -1.528603E-01 -2.521963E-03 -2.009995E-01 -4.414632E-03 -2.303894E-01 -5.751985E-03 -2.273601E-01 -5.379286E-03 -2.086601E-01 -4.747259E-03 -1.587188E-01 -2.863534E-03 -1.656423E-01 -2.826265E-03 -1.358638E-01 -2.045306E-03 -9.729054E-02 -1.078500E-03 -1.007280E-01 -1.185702E-03 -1.587021E-01 -2.754745E-03 -1.900019E-01 -3.874093E-03 -1.874138E-01 -4.177562E-03 -2.233840E-01 -5.748107E-03 -2.044120E-01 -4.806449E-03 -1.840480E-01 -3.872224E-03 -2.000442E-01 -4.610770E-03 -1.260142E-01 -1.809723E-03 -8.400216E-02 -8.434010E-04 -5.900093E-02 -3.850176E-04 -1.411568E-01 -2.471608E-03 -1.744586E-01 -3.239802E-03 -1.834956E-01 -3.972256E-03 -2.120173E-01 -4.965877E-03 -1.896203E-01 -3.727876E-03 -1.768841E-01 -3.517246E-03 -1.329247E-01 -1.981664E-03 -9.206320E-02 -1.061169E-03 -8.660878E-02 -8.546437E-04 -7.697726E-02 -7.926443E-04 -1.161555E-01 -1.548200E-03 -1.386967E-01 -2.047818E-03 -1.482373E-01 -2.537385E-03 -1.929067E-01 -4.259826E-03 -1.371938E-01 -1.949236E-03 -1.308202E-01 -2.027747E-03 -1.135428E-01 -1.560189E-03 -1.215934E-01 -1.672414E-03 -4.697342E-02 -3.377074E-04 -4.963529E-02 -3.397352E-04 -8.476039E-02 -8.774056E-04 -1.108440E-01 -1.411371E-03 -1.054914E-01 -1.252891E-03 -1.453762E-01 -2.358977E-03 -9.293716E-02 -9.683367E-04 -1.224872E-01 -1.612325E-03 -8.334352E-02 -7.907688E-04 -7.546069E-02 -7.025010E-04 -5.962134E-02 -6.951755E-04 -3.107769E-02 -1.723123E-04 -8.479467E-02 -9.620488E-04 -8.295926E-02 -7.769636E-04 -8.805824E-02 -8.500302E-04 -8.616294E-02 -8.661213E-04 -7.861089E-02 -6.835617E-04 -7.593919E-02 -7.633339E-04 -7.303400E-02 -6.464593E-04 -7.512486E-02 -6.007484E-04 -5.595863E-02 -4.403603E-04 -6.015811E-02 -4.297440E-04 -8.867588E-02 -8.521129E-04 -1.103542E-01 -1.469796E-03 -1.153731E-01 -1.606650E-03 -1.280835E-01 -1.791883E-03 -1.434578E-01 -2.215626E-03 -1.104920E-01 -1.470286E-03 -9.385805E-02 -1.114787E-03 -1.169307E-01 -1.600595E-03 -6.083594E-02 -4.303510E-04 -8.816849E-02 -8.791686E-04 -1.350912E-01 -2.127521E-03 -2.026574E-01 -4.456203E-03 -2.082171E-01 -4.587768E-03 -2.291899E-01 -5.560114E-03 -2.040384E-01 -4.355166E-03 -2.081784E-01 -5.172938E-03 -1.958644E-01 -4.308708E-03 -1.535028E-01 -2.754667E-03 -6.265531E-02 -4.662647E-04 -1.239416E-01 -1.608329E-03 -1.655136E-01 -3.098331E-03 -2.152185E-01 -5.116031E-03 -2.663061E-01 -7.502107E-03 -3.072160E-01 -9.873652E-03 -2.453306E-01 -6.585229E-03 -2.577460E-01 -6.982524E-03 -2.470375E-01 -6.761678E-03 -1.492132E-01 -2.465269E-03 -1.115903E-01 -1.444496E-03 -8.901752E-02 -9.826260E-04 -1.849459E-01 -3.824332E-03 -3.139129E-01 -1.040826E-02 -3.209843E-01 -1.072304E-02 -3.074029E-01 -9.805249E-03 -3.289037E-01 -1.137280E-02 -3.333668E-01 -1.140301E-02 -2.305636E-01 -5.572002E-03 -1.911618E-01 -3.897249E-03 -1.239342E-01 -1.745528E-03 -1.463546E-01 -2.897280E-03 -2.041194E-01 -4.264966E-03 -2.781505E-01 -8.222869E-03 -3.535732E-01 -1.290897E-02 -3.736359E-01 -1.424372E-02 -3.507573E-01 -1.268186E-02 -3.537878E-01 -1.317025E-02 -2.797764E-01 -8.141471E-03 -2.257660E-01 -5.307299E-03 -1.248875E-01 -1.867307E-03 -1.334027E-01 -1.952356E-03 -2.190936E-01 -5.220949E-03 -2.880627E-01 -9.292540E-03 -3.683567E-01 -1.398170E-02 -3.451428E-01 -1.245893E-02 -3.602954E-01 -1.357760E-02 -3.363047E-01 -1.177859E-02 -2.658735E-01 -8.042327E-03 -1.720687E-01 -3.616340E-03 -9.348145E-02 -9.216558E-04 -1.303415E-01 -2.064085E-03 -1.757103E-01 -3.440908E-03 -2.442374E-01 -6.810297E-03 -2.858542E-01 -8.698701E-03 -3.349866E-01 -1.174757E-02 -2.840415E-01 -8.265549E-03 -2.763234E-01 -8.045873E-03 -2.478361E-01 -6.589169E-03 -1.766169E-01 -3.338895E-03 -1.236805E-01 -1.649583E-03 -1.307918E-01 -1.796440E-03 -1.756810E-01 -3.938136E-03 -2.071625E-01 -4.889011E-03 -2.332393E-01 -5.650908E-03 -2.524899E-01 -7.236764E-03 -2.393364E-01 -5.985752E-03 -2.142983E-01 -4.994425E-03 -2.132056E-01 -4.981318E-03 -1.437349E-01 -2.274574E-03 -1.142901E-01 -1.631508E-03 -7.809219E-02 -7.844820E-04 -1.076778E-01 -1.505283E-03 -1.787646E-01 -3.437697E-03 -1.664344E-01 -2.938475E-03 -1.868305E-01 -3.942399E-03 -2.065932E-01 -4.503697E-03 -1.644873E-01 -3.015461E-03 -1.553155E-01 -2.637052E-03 -1.523517E-01 -2.641268E-03 -8.646767E-02 -8.586764E-04 -4.575304E-02 -2.880831E-04 -8.659752E-02 -1.007122E-03 -1.086638E-01 -1.418859E-03 -1.206844E-01 -1.631006E-03 -1.553521E-01 -2.699733E-03 -1.023448E-01 -1.229544E-03 -1.236892E-01 -1.719554E-03 -1.059603E-01 -1.474144E-03 -9.843445E-02 -1.147384E-03 -6.598215E-02 -6.724344E-04 -8.999660E-02 -1.129810E-03 -1.016655E-01 -1.128618E-03 -1.115822E-01 -1.437827E-03 -1.649326E-01 -3.015499E-03 -1.937529E-01 -4.048175E-03 -1.852317E-01 -3.668098E-03 -1.620688E-01 -2.937845E-03 -1.290063E-01 -1.922280E-03 -1.208701E-01 -1.669032E-03 -4.421440E-02 -2.483126E-04 -1.159755E-01 -1.426808E-03 -1.459714E-01 -2.613102E-03 -1.778589E-01 -3.427022E-03 -2.346134E-01 -5.940704E-03 -3.063520E-01 -1.009182E-02 -2.950770E-01 -9.132939E-03 -2.583166E-01 -7.253540E-03 -2.101808E-01 -5.272950E-03 -1.850368E-01 -3.730831E-03 -7.244837E-02 -5.806488E-04 -1.441504E-01 -2.203647E-03 -2.206693E-01 -5.103470E-03 -3.047901E-01 -9.751684E-03 -3.531926E-01 -1.351362E-02 -3.945357E-01 -1.624582E-02 -4.621245E-01 -2.215536E-02 -4.200516E-01 -1.926381E-02 -3.397496E-01 -1.264644E-02 -2.045791E-01 -4.443989E-03 -1.132779E-01 -1.665634E-03 -1.168744E-01 -1.466979E-03 -2.665743E-01 -7.799994E-03 -4.108479E-01 -1.764683E-02 -5.099245E-01 -2.656607E-02 -5.375292E-01 -2.986206E-02 -5.477580E-01 -3.184925E-02 -5.060566E-01 -2.644067E-02 -3.917491E-01 -1.649179E-02 -2.631839E-01 -7.172646E-03 -1.393797E-01 -2.179333E-03 -1.415608E-01 -2.582853E-03 -2.695963E-01 -8.100051E-03 -4.591315E-01 -2.150436E-02 -5.838830E-01 -3.565296E-02 -6.933462E-01 -4.933765E-02 -6.498992E-01 -4.329824E-02 -5.274087E-01 -2.893644E-02 -4.644714E-01 -2.208542E-02 -2.784825E-01 -8.228619E-03 -1.756971E-01 -3.435838E-03 -1.841108E-01 -3.753742E-03 -2.556216E-01 -6.993979E-03 -4.539882E-01 -2.105903E-02 -5.644697E-01 -3.353269E-02 -6.477708E-01 -4.262528E-02 -6.274586E-01 -4.094566E-02 -4.871803E-01 -2.460107E-02 -3.651460E-01 -1.537598E-02 -2.377974E-01 -6.036841E-03 -1.492687E-01 -2.421537E-03 -1.449703E-01 -2.190902E-03 -2.414255E-01 -6.387083E-03 -4.115719E-01 -1.783179E-02 -4.694990E-01 -2.282330E-02 -5.311416E-01 -2.970750E-02 -5.218655E-01 -2.795428E-02 -4.993270E-01 -2.574782E-02 -3.564483E-01 -1.422766E-02 -2.266457E-01 -5.534879E-03 -1.952576E-01 -4.177312E-03 -1.042590E-01 -1.176129E-03 -1.697991E-01 -3.286179E-03 -2.717221E-01 -8.156353E-03 -3.954295E-01 -1.626070E-02 -3.609317E-01 -1.316825E-02 -4.028309E-01 -1.737150E-02 -3.598743E-01 -1.378511E-02 -2.960368E-01 -9.045648E-03 -1.916245E-01 -4.182938E-03 -1.400504E-01 -2.146240E-03 -7.940300E-02 -7.986853E-04 -1.200054E-01 -1.726710E-03 -2.148774E-01 -4.835765E-03 -2.268851E-01 -5.713301E-03 -3.111988E-01 -1.041879E-02 -2.623195E-01 -7.661642E-03 -2.331769E-01 -5.928043E-03 -2.156752E-01 -5.033537E-03 -1.882320E-01 -3.956427E-03 -9.864956E-02 -1.084355E-03 -6.087770E-02 -5.179666E-04 -1.086978E-01 -1.313619E-03 -1.344587E-01 -1.970449E-03 -1.740701E-01 -3.313694E-03 -1.804922E-01 -3.525957E-03 -1.724149E-01 -3.543590E-03 -1.399028E-01 -2.273390E-03 -1.456847E-01 -2.524033E-03 -1.194497E-01 -1.524909E-03 -6.585025E-02 -6.225934E-04 -8.228757E-02 -8.696950E-04 -9.653270E-02 -9.897964E-04 -1.628236E-01 -3.163363E-03 -2.294784E-01 -5.585206E-03 -2.013744E-01 -4.481916E-03 -1.904412E-01 -4.042826E-03 -1.614976E-01 -2.818448E-03 -1.577143E-01 -2.732044E-03 -1.102866E-01 -1.529048E-03 -7.446456E-02 -6.633761E-04 -1.435986E-01 -2.237722E-03 -1.897248E-01 -4.132042E-03 -2.294338E-01 -5.931694E-03 -3.421437E-01 -1.221982E-02 -3.839244E-01 -1.553491E-02 -3.266968E-01 -1.088442E-02 -3.198477E-01 -1.080985E-02 -2.628059E-01 -7.789175E-03 -1.734962E-01 -3.443215E-03 -1.286647E-01 -1.955856E-03 -1.691938E-01 -3.460989E-03 -2.825603E-01 -8.930867E-03 -3.393298E-01 -1.245987E-02 -4.719879E-01 -2.299342E-02 -5.453030E-01 -3.116166E-02 -5.283745E-01 -2.875357E-02 -4.717010E-01 -2.274570E-02 -3.543923E-01 -1.356917E-02 -2.286992E-01 -5.495781E-03 -1.503321E-01 -2.412737E-03 -1.914802E-01 -4.228512E-03 -2.663347E-01 -7.478291E-03 -4.945846E-01 -2.581416E-02 -7.132283E-01 -5.214747E-02 -8.772549E-01 -8.070787E-02 -9.215230E-01 -8.643514E-02 -7.136543E-01 -5.309880E-02 -4.683027E-01 -2.335474E-02 -2.848724E-01 -8.819567E-03 -1.962746E-01 -4.034279E-03 -1.963942E-01 -4.150202E-03 -3.081918E-01 -1.036112E-02 -5.313924E-01 -2.943772E-02 -8.980200E-01 -8.439371E-02 -1.404070E+00 -1.986543E-01 -1.242684E+00 -1.571634E-01 -8.663320E-01 -7.587086E-02 -5.654541E-01 -3.252262E-02 -3.281152E-01 -1.090032E-02 -2.044034E-01 -4.517108E-03 -2.006195E-01 -4.176414E-03 -3.100848E-01 -1.042288E-02 -5.422115E-01 -3.004711E-02 -9.330393E-01 -8.964243E-02 -1.277607E+00 -1.657398E-01 -1.173275E+00 -1.409364E-01 -8.049595E-01 -6.791702E-02 -4.739057E-01 -2.461174E-02 -3.052609E-01 -9.872506E-03 -2.088298E-01 -4.793522E-03 -2.133326E-01 -4.862481E-03 -2.680060E-01 -7.625628E-03 -4.610074E-01 -2.155754E-02 -6.717074E-01 -4.626196E-02 -8.563743E-01 -7.430382E-02 -8.419238E-01 -7.436332E-02 -6.475334E-01 -4.244410E-02 -4.496406E-01 -2.101233E-02 -3.081348E-01 -1.046704E-02 -1.619249E-01 -3.062437E-03 -1.415369E-01 -2.255371E-03 -2.064850E-01 -4.712501E-03 -3.464136E-01 -1.293262E-02 -4.719265E-01 -2.272450E-02 -6.461406E-01 -4.354686E-02 -5.185955E-01 -2.909923E-02 -4.946850E-01 -2.606769E-02 -3.812863E-01 -1.500761E-02 -2.715616E-01 -7.844887E-03 -1.440914E-01 -2.297969E-03 -1.220110E-01 -1.727820E-03 -1.988195E-01 -4.845577E-03 -2.623807E-01 -7.651539E-03 -3.140727E-01 -1.024276E-02 -3.576120E-01 -1.349203E-02 -3.350431E-01 -1.214172E-02 -3.623127E-01 -1.392899E-02 -2.727478E-01 -8.086348E-03 -2.149275E-01 -5.361115E-03 -1.314584E-01 -1.963133E-03 -9.162433E-02 -9.983184E-04 -1.361470E-01 -2.027658E-03 -1.761731E-01 -3.389541E-03 -1.989963E-01 -4.594834E-03 -1.950142E-01 -4.102131E-03 -2.134629E-01 -4.672913E-03 -1.986280E-01 -4.090736E-03 -1.587464E-01 -2.850886E-03 -1.139834E-01 -1.491308E-03 -9.993253E-02 -1.150993E-03 -7.801279E-02 -7.470217E-04 -1.374998E-01 -1.969932E-03 -1.804494E-01 -3.568829E-03 -2.466413E-01 -6.594134E-03 -2.341345E-01 -5.848688E-03 -1.995756E-01 -4.362592E-03 -1.602288E-01 -3.066421E-03 -1.562435E-01 -2.552603E-03 -1.104688E-01 -1.359308E-03 -1.007842E-01 -1.139355E-03 -1.261199E-01 -1.847741E-03 -1.775287E-01 -3.680466E-03 -2.767100E-01 -8.008082E-03 -3.400792E-01 -1.195930E-02 -3.935631E-01 -1.640831E-02 -3.523748E-01 -1.302259E-02 -2.906020E-01 -9.059548E-03 -2.537932E-01 -6.876862E-03 -1.861336E-01 -3.787655E-03 -1.313071E-01 -2.065327E-03 -1.591139E-01 -2.819971E-03 -2.386577E-01 -6.457612E-03 -3.911616E-01 -1.594274E-02 -5.394472E-01 -3.061236E-02 -6.866890E-01 -4.817139E-02 -6.283365E-01 -4.055448E-02 -5.748601E-01 -3.459526E-02 -4.435554E-01 -2.009979E-02 -3.296444E-01 -1.154923E-02 -1.967361E-01 -4.169679E-03 -1.739968E-01 -3.208983E-03 -3.082977E-01 -9.811520E-03 -5.382503E-01 -3.058501E-02 -8.367621E-01 -7.291096E-02 -1.211062E+00 -1.496807E-01 -1.258748E+00 -1.608596E-01 -9.427524E-01 -9.038319E-02 -6.071099E-01 -3.854873E-02 -3.709298E-01 -1.478349E-02 -2.098170E-01 -4.835442E-03 -2.119024E-01 -4.712157E-03 -3.552855E-01 -1.323431E-02 -6.321647E-01 -4.077718E-02 -1.246141E+00 -1.565725E-01 -4.380951E+00 -1.942648E+00 -4.247605E+00 -1.810085E+00 -1.281712E+00 -1.683930E-01 -6.221859E-01 -3.919458E-02 -3.675010E-01 -1.432994E-02 -1.841643E-01 -3.510340E-03 -2.146914E-01 -5.048810E-03 -3.256950E-01 -1.139212E-02 -6.810729E-01 -4.813808E-02 -1.247489E+00 -1.574970E-01 -4.442262E+00 -1.985510E+00 -4.257415E+00 -1.821021E+00 -1.235711E+00 -1.535743E-01 -6.900244E-01 -4.832224E-02 -3.697406E-01 -1.425051E-02 -2.012083E-01 -4.510582E-03 -1.912047E-01 -4.273539E-03 -3.451744E-01 -1.225531E-02 -5.600376E-01 -3.307491E-02 -8.544790E-01 -7.409781E-02 -1.325242E+00 -1.782579E-01 -1.346957E+00 -1.841487E-01 -9.214797E-01 -8.688521E-02 -4.797898E-01 -2.328018E-02 -3.426011E-01 -1.225085E-02 -1.774389E-01 -3.518562E-03 -1.554220E-01 -2.654272E-03 -2.668481E-01 -7.631552E-03 -4.104944E-01 -1.755636E-02 -5.095732E-01 -2.660987E-02 -6.919120E-01 -4.918083E-02 -7.159855E-01 -5.218821E-02 -6.006622E-01 -3.710972E-02 -4.366095E-01 -2.004334E-02 -2.694762E-01 -7.978724E-03 -1.656914E-01 -3.089952E-03 -1.756674E-01 -3.399731E-03 -2.115494E-01 -4.962007E-03 -2.931609E-01 -9.634091E-03 -3.427335E-01 -1.230723E-02 -3.926075E-01 -1.686560E-02 -4.266016E-01 -1.861013E-02 -3.380544E-01 -1.177601E-02 -3.203345E-01 -1.042122E-02 -2.107818E-01 -4.975737E-03 -1.190587E-01 -1.667581E-03 -1.043469E-01 -1.388459E-03 -1.409254E-01 -2.165664E-03 -1.158111E-01 -1.584653E-03 -2.204672E-01 -5.077689E-03 -2.548870E-01 -6.790565E-03 -2.560290E-01 -6.703128E-03 -2.273470E-01 -5.548064E-03 -1.544622E-01 -2.859247E-03 -1.514176E-01 -2.580868E-03 -9.401839E-02 -9.957536E-04 -8.183741E-02 -1.018095E-03 -1.494302E-01 -2.610469E-03 -1.724667E-01 -3.163766E-03 -1.906518E-01 -3.886725E-03 -2.093021E-01 -4.547285E-03 -2.192608E-01 -5.381555E-03 -2.142120E-01 -5.229554E-03 -1.818979E-01 -3.730168E-03 -1.593537E-01 -2.930097E-03 -1.006301E-01 -1.243388E-03 -1.363959E-01 -2.201651E-03 -1.921074E-01 -4.287698E-03 -2.807569E-01 -8.586780E-03 -3.032112E-01 -9.281779E-03 -3.488735E-01 -1.290376E-02 -3.912428E-01 -1.651860E-02 -4.032276E-01 -1.745809E-02 -2.909627E-01 -9.146241E-03 -1.775633E-01 -3.593723E-03 -1.331733E-01 -1.922430E-03 -1.524251E-01 -2.694091E-03 -2.697127E-01 -7.768392E-03 -4.166062E-01 -1.776536E-02 -5.663715E-01 -3.298425E-02 -6.244007E-01 -3.998959E-02 -6.599368E-01 -4.570158E-02 -5.685603E-01 -3.382373E-02 -3.800938E-01 -1.547625E-02 -2.603056E-01 -7.053095E-03 -1.706694E-01 -3.148614E-03 -1.731386E-01 -3.384991E-03 -3.109075E-01 -1.033479E-02 -5.771187E-01 -3.413152E-02 -8.606415E-01 -7.510241E-02 -1.294303E+00 -1.706906E-01 -1.313399E+00 -1.767631E-01 -7.817706E-01 -6.342406E-02 -5.927279E-01 -3.756882E-02 -3.708410E-01 -1.458571E-02 -1.723505E-01 -3.356435E-03 -2.304233E-01 -5.998040E-03 -3.750987E-01 -1.501277E-02 -6.734152E-01 -4.746505E-02 -1.310995E+00 -1.732589E-01 -4.421199E+00 -1.964531E+00 -4.214183E+00 -1.786748E+00 -1.223434E+00 -1.530503E-01 -5.926626E-01 -3.641847E-02 -3.153714E-01 -1.019858E-02 -2.037244E-01 -4.381188E-03 -1.863505E-01 -3.684332E-03 -3.648623E-01 -1.378365E-02 -6.164882E-01 -3.893164E-02 -1.178969E+00 -1.417606E-01 -4.221345E+00 -1.789744E+00 -4.317433E+00 -1.872379E+00 -1.243011E+00 -1.581634E-01 -6.866745E-01 -4.754022E-02 -3.586774E-01 -1.301597E-02 -2.322214E-01 -5.492154E-03 -1.791966E-01 -3.463117E-03 -3.076717E-01 -9.716616E-03 -4.906144E-01 -2.470769E-02 -8.471037E-01 -7.406279E-02 -1.363587E+00 -1.889087E-01 -1.335963E+00 -1.803764E-01 -8.600227E-01 -7.530944E-02 -5.437258E-01 -3.114706E-02 -3.713934E-01 -1.456554E-02 -1.995931E-01 -4.422520E-03 -1.343031E-01 -2.012284E-03 -2.572828E-01 -6.840867E-03 -4.435747E-01 -2.050887E-02 -5.766007E-01 -3.437038E-02 -7.346272E-01 -5.540755E-02 -7.053071E-01 -5.111709E-02 -6.063267E-01 -3.981091E-02 -4.094521E-01 -1.801684E-02 -2.832627E-01 -8.238241E-03 -1.618924E-01 -3.067045E-03 -1.257079E-01 -1.802188E-03 -2.209365E-01 -5.343615E-03 -2.538278E-01 -7.109201E-03 -3.620261E-01 -1.396948E-02 -4.303042E-01 -1.872503E-02 -4.036624E-01 -1.774648E-02 -3.185915E-01 -1.192555E-02 -2.959360E-01 -9.265211E-03 -2.254861E-01 -5.671747E-03 -1.339005E-01 -2.034506E-03 -1.251282E-01 -1.754100E-03 -1.155042E-01 -1.606166E-03 -1.603827E-01 -2.694604E-03 -2.425425E-01 -6.218648E-03 -2.827714E-01 -8.247692E-03 -2.354428E-01 -5.778596E-03 -1.964531E-01 -4.365869E-03 -1.620035E-01 -3.000138E-03 -1.402609E-01 -2.252442E-03 -7.770439E-02 -7.584947E-04 -8.904883E-02 -9.832411E-04 -1.364994E-01 -2.060968E-03 -1.556202E-01 -3.013917E-03 -1.794759E-01 -3.609302E-03 -2.027676E-01 -4.271217E-03 -1.910134E-01 -3.830997E-03 -2.102956E-01 -4.746179E-03 -2.069806E-01 -4.732181E-03 -1.280198E-01 -1.803469E-03 -8.851884E-02 -1.050264E-03 -1.411243E-01 -2.309051E-03 -2.058752E-01 -4.840657E-03 -2.589000E-01 -7.354104E-03 -2.346176E-01 -5.819008E-03 -3.064791E-01 -9.995356E-03 -3.537650E-01 -1.318436E-02 -3.442248E-01 -1.225618E-02 -2.856280E-01 -9.047308E-03 -1.556316E-01 -2.976492E-03 -9.305931E-02 -9.568946E-04 -1.918345E-01 -3.871787E-03 -3.083654E-01 -1.109476E-02 -4.076303E-01 -1.807424E-02 -4.595063E-01 -2.220396E-02 -5.684770E-01 -3.345901E-02 -5.734059E-01 -3.325457E-02 -4.719375E-01 -2.393976E-02 -3.033874E-01 -1.029056E-02 -2.394489E-01 -6.540160E-03 -1.431584E-01 -2.691530E-03 -1.857128E-01 -3.720812E-03 -3.401652E-01 -1.213267E-02 -4.998027E-01 -2.627877E-02 -6.660538E-01 -4.542647E-02 -8.594730E-01 -7.625343E-02 -8.531451E-01 -7.416582E-02 -6.787742E-01 -4.744554E-02 -4.724654E-01 -2.328201E-02 -3.030469E-01 -9.464288E-03 -1.840238E-01 -3.680486E-03 -2.172436E-01 -4.932506E-03 -3.724089E-01 -1.512940E-02 -5.834908E-01 -3.595138E-02 -8.787419E-01 -7.754496E-02 -1.235501E+00 -1.556040E-01 -1.186802E+00 -1.419219E-01 -8.626663E-01 -7.644446E-02 -5.366263E-01 -2.954661E-02 -3.177208E-01 -1.051791E-02 -1.844215E-01 -3.676916E-03 -1.932190E-01 -4.023337E-03 -3.693850E-01 -1.452218E-02 -5.443615E-01 -3.020527E-02 -8.889578E-01 -8.111822E-02 -1.273207E+00 -1.655818E-01 -1.247526E+00 -1.585006E-01 -8.324980E-01 -7.213823E-02 -4.899464E-01 -2.450485E-02 -3.370823E-01 -1.208260E-02 -1.809043E-01 -3.714864E-03 -1.615415E-01 -2.906239E-03 -2.937828E-01 -9.651929E-03 -4.913048E-01 -2.639344E-02 -6.850176E-01 -4.797579E-02 -8.755910E-01 -7.958162E-02 -8.703001E-01 -7.730840E-02 -6.973913E-01 -5.089360E-02 -4.203999E-01 -1.844697E-02 -3.140340E-01 -1.039993E-02 -1.441709E-01 -2.488125E-03 -1.350197E-01 -2.064659E-03 -2.543930E-01 -7.177543E-03 -3.348117E-01 -1.259149E-02 -4.679892E-01 -2.273369E-02 -6.434887E-01 -4.331187E-02 -5.381700E-01 -2.974074E-02 -4.555945E-01 -2.167655E-02 -3.401588E-01 -1.191694E-02 -2.681734E-01 -7.550804E-03 -1.704519E-01 -3.365024E-03 -9.745304E-02 -1.232312E-03 -1.678994E-01 -3.221936E-03 -2.605430E-01 -7.393204E-03 -3.128187E-01 -1.138967E-02 -3.712111E-01 -1.460808E-02 -3.609117E-01 -1.331179E-02 -3.321706E-01 -1.170549E-02 -2.480901E-01 -6.266952E-03 -2.002359E-01 -4.338795E-03 -1.162468E-01 -1.536532E-03 -7.239001E-02 -5.815144E-04 -1.163546E-01 -1.453456E-03 -1.636165E-01 -3.201377E-03 -1.973025E-01 -4.660155E-03 -2.100585E-01 -5.039148E-03 -2.171398E-01 -5.070524E-03 -1.995065E-01 -4.193481E-03 -1.813545E-01 -3.549108E-03 -1.365406E-01 -2.182883E-03 -8.101165E-02 -7.758114E-04 -7.133170E-02 -5.967128E-04 -1.319234E-01 -1.933536E-03 -1.445023E-01 -2.409485E-03 -1.495938E-01 -2.481635E-03 -1.801306E-01 -3.481001E-03 -1.733442E-01 -3.171024E-03 -1.725688E-01 -3.165238E-03 -1.518925E-01 -2.585745E-03 -1.077414E-01 -1.395636E-03 -7.934204E-02 -7.147327E-04 -1.062269E-01 -1.354440E-03 -1.751122E-01 -3.623982E-03 -2.203107E-01 -5.413498E-03 -2.341057E-01 -5.605200E-03 -2.669322E-01 -7.526239E-03 -2.746743E-01 -7.646941E-03 -2.389916E-01 -6.235257E-03 -1.587546E-01 -2.827472E-03 -1.498724E-01 -2.673613E-03 -1.051763E-01 -1.391507E-03 -1.424360E-01 -2.468775E-03 -2.608608E-01 -7.055429E-03 -3.154162E-01 -1.024928E-02 -3.674104E-01 -1.418521E-02 -3.976162E-01 -1.732640E-02 -4.746502E-01 -2.349709E-02 -3.662445E-01 -1.447515E-02 -2.506236E-01 -6.593606E-03 -2.161204E-01 -4.801367E-03 -1.306963E-01 -1.975560E-03 -1.770351E-01 -3.932818E-03 -2.635109E-01 -7.772472E-03 -4.024536E-01 -1.731960E-02 -4.701442E-01 -2.265515E-02 -5.561475E-01 -3.235124E-02 -5.523785E-01 -3.142962E-02 -5.071292E-01 -2.592728E-02 -3.746613E-01 -1.518899E-02 -2.620776E-01 -7.439402E-03 -1.561701E-01 -2.901626E-03 -1.722037E-01 -3.249117E-03 -2.729386E-01 -8.041848E-03 -4.157578E-01 -1.761081E-02 -5.608817E-01 -3.221445E-02 -7.027459E-01 -5.154772E-02 -6.902150E-01 -4.817212E-02 -5.174043E-01 -2.771951E-02 -4.297342E-01 -1.970980E-02 -2.927718E-01 -9.421566E-03 -1.860039E-01 -3.719139E-03 -1.510489E-01 -2.673423E-03 -2.992366E-01 -9.425407E-03 -4.569637E-01 -2.187717E-02 -5.810709E-01 -3.569290E-02 -6.664391E-01 -4.607395E-02 -6.898814E-01 -4.853841E-02 -5.306547E-01 -2.907467E-02 -4.138514E-01 -1.844067E-02 -2.836181E-01 -9.090950E-03 -1.827952E-01 -3.670505E-03 -1.339105E-01 -1.976730E-03 -2.247962E-01 -5.455936E-03 -3.775577E-01 -1.529613E-02 -4.605234E-01 -2.228303E-02 -5.731045E-01 -3.426291E-02 -5.698592E-01 -3.415653E-02 -4.700203E-01 -2.298571E-02 -3.419079E-01 -1.254302E-02 -2.594048E-01 -7.486049E-03 -1.403745E-01 -2.288996E-03 -1.307053E-01 -2.306039E-03 -2.305399E-01 -5.746901E-03 -2.866663E-01 -8.437990E-03 -3.547902E-01 -1.415343E-02 -3.903305E-01 -1.721878E-02 -3.995569E-01 -1.663856E-02 -3.597994E-01 -1.369907E-02 -3.084707E-01 -1.005451E-02 -1.929703E-01 -4.111212E-03 -1.226805E-01 -1.616264E-03 -9.707080E-02 -1.277801E-03 -1.349714E-01 -2.412097E-03 -1.706592E-01 -3.112630E-03 -2.431900E-01 -6.662780E-03 -2.719484E-01 -7.972869E-03 -2.782047E-01 -8.195264E-03 -2.198394E-01 -5.159833E-03 -1.847153E-01 -3.606258E-03 -1.655937E-01 -3.412468E-03 -1.132640E-01 -1.342051E-03 -6.977329E-02 -6.061071E-04 -8.063628E-02 -7.877860E-04 -1.369291E-01 -2.216310E-03 -1.527061E-01 -2.661389E-03 -1.808807E-01 -3.626051E-03 -1.723708E-01 -3.227953E-03 -1.570487E-01 -2.824199E-03 -1.402935E-01 -2.196525E-03 -1.046978E-01 -1.394771E-03 -7.765529E-02 -6.990073E-04 -5.309912E-02 -4.179704E-04 -8.113995E-02 -8.093210E-04 -1.004879E-01 -1.274755E-03 -1.474015E-01 -2.957775E-03 -1.227188E-01 -1.661445E-03 -1.367411E-01 -2.049836E-03 -1.257025E-01 -1.739859E-03 -9.595806E-02 -1.143520E-03 -5.932828E-02 -4.443026E-04 -6.214003E-02 -4.698384E-04 -1.047908E-01 -1.265030E-03 -1.389236E-01 -2.066555E-03 -1.441238E-01 -2.187643E-03 -1.954745E-01 -4.024829E-03 -2.018960E-01 -4.436820E-03 -2.304400E-01 -5.702269E-03 -1.889259E-01 -3.911134E-03 -1.651129E-01 -2.907211E-03 -1.266147E-01 -1.798632E-03 -9.726395E-02 -1.038410E-03 -1.239366E-01 -2.020884E-03 -1.692392E-01 -3.039249E-03 -2.262593E-01 -5.810761E-03 -2.371783E-01 -6.148422E-03 -2.724207E-01 -7.965467E-03 -2.754620E-01 -8.212118E-03 -2.616121E-01 -7.738784E-03 -2.416846E-01 -6.508644E-03 -1.823329E-01 -4.244589E-03 -1.153662E-01 -1.541320E-03 -1.498687E-01 -2.427094E-03 -2.294988E-01 -5.678440E-03 -2.337590E-01 -6.042902E-03 -3.165064E-01 -1.047831E-02 -3.372589E-01 -1.176332E-02 -3.369130E-01 -1.214308E-02 -3.077673E-01 -9.854791E-03 -2.727368E-01 -8.153505E-03 -2.291204E-01 -5.762201E-03 -1.449108E-01 -2.631818E-03 -1.222645E-01 -1.652033E-03 -2.342919E-01 -6.080976E-03 -2.867658E-01 -9.143890E-03 -3.284926E-01 -1.110468E-02 -3.721608E-01 -1.458209E-02 -3.943281E-01 -1.624417E-02 -3.127115E-01 -1.090060E-02 -2.181120E-01 -5.081861E-03 -2.038850E-01 -4.541180E-03 -1.471756E-01 -2.612669E-03 -1.356517E-01 -2.315498E-03 -2.039418E-01 -4.569034E-03 -2.379673E-01 -6.028728E-03 -2.912334E-01 -8.794159E-03 -3.675708E-01 -1.388797E-02 -3.830007E-01 -1.493415E-02 -3.497252E-01 -1.323190E-02 -2.129266E-01 -5.366850E-03 -2.051774E-01 -5.235913E-03 -1.495687E-01 -2.578269E-03 -1.007903E-01 -1.213029E-03 -1.942201E-01 -4.152027E-03 -2.691558E-01 -7.844599E-03 -2.833552E-01 -8.562033E-03 -3.539964E-01 -1.296456E-02 -3.313330E-01 -1.152405E-02 -2.882665E-01 -9.275609E-03 -2.606018E-01 -7.326373E-03 -2.170792E-01 -5.088581E-03 -1.175397E-01 -1.425662E-03 -9.291662E-02 -1.030694E-03 -1.502293E-01 -2.605564E-03 -1.683973E-01 -3.164858E-03 -2.300104E-01 -5.597737E-03 -2.921841E-01 -9.137452E-03 -3.105624E-01 -1.077940E-02 -2.457323E-01 -6.748662E-03 -1.935480E-01 -4.153509E-03 -1.781340E-01 -3.735545E-03 -8.549182E-02 -7.932774E-04 -7.995611E-02 -6.914994E-04 -1.120022E-01 -1.608931E-03 -1.666393E-01 -3.351392E-03 -1.763892E-01 -3.781795E-03 -2.215879E-01 -5.446848E-03 -1.973224E-01 -4.088057E-03 -1.807076E-01 -3.807788E-03 -1.497413E-01 -2.510679E-03 -1.258135E-01 -1.824079E-03 -7.256548E-02 -6.032346E-04 -5.802787E-02 -4.068274E-04 -8.087439E-02 -8.125859E-04 -9.445601E-02 -1.220157E-03 -1.278262E-01 -1.976480E-03 -1.447187E-01 -2.496284E-03 -1.492610E-01 -2.453885E-03 -1.294170E-01 -1.822523E-03 -8.046777E-02 -7.104920E-04 -8.863832E-02 -9.206404E-04 -4.044133E-02 -2.016136E-04 -3.647497E-02 -1.736207E-04 -7.726524E-02 -7.189629E-04 -6.850678E-02 -5.399094E-04 -7.120540E-02 -6.049792E-04 -9.914070E-02 -1.178916E-03 -9.212489E-02 -1.014142E-03 -8.081211E-02 -7.572737E-04 -6.454690E-02 -5.539457E-04 -4.993214E-02 -3.161361E-04 -3.464406E-02 -1.743401E-04 -5.195266E-02 -3.077352E-04 -1.032248E-01 -1.231336E-03 -1.140722E-01 -1.517037E-03 -9.270288E-02 -1.194042E-03 -1.199421E-01 -1.713870E-03 -1.129313E-01 -1.491867E-03 -1.104339E-01 -1.526039E-03 -1.080665E-01 -1.372021E-03 -8.160995E-02 -6.843931E-04 -6.342734E-02 -5.271807E-04 -9.331087E-02 -1.097048E-03 -1.185250E-01 -1.534560E-03 -1.349132E-01 -2.447610E-03 -1.304714E-01 -2.217664E-03 -1.581891E-01 -2.862519E-03 -1.584546E-01 -2.780212E-03 -1.538480E-01 -2.634437E-03 -1.637997E-01 -2.992391E-03 -1.181898E-01 -1.765232E-03 -8.541970E-02 -8.382310E-04 -9.823634E-02 -1.116285E-03 -1.486333E-01 -2.343453E-03 -1.631008E-01 -2.995222E-03 -1.755338E-01 -3.448102E-03 -1.754730E-01 -3.227041E-03 -1.842652E-01 -3.637768E-03 -1.577573E-01 -2.654428E-03 -1.401177E-01 -2.280343E-03 -1.341096E-01 -1.900302E-03 -8.035023E-02 -8.312873E-04 -1.063904E-01 -1.375093E-03 -1.216848E-01 -1.721657E-03 -2.004753E-01 -4.510521E-03 -1.889712E-01 -3.847826E-03 -2.081610E-01 -4.756630E-03 -2.301263E-01 -5.717347E-03 -2.048600E-01 -4.561616E-03 -1.542754E-01 -2.639748E-03 -1.321829E-01 -1.993402E-03 -9.014640E-02 -9.359911E-04 -7.974780E-02 -8.078227E-04 -1.252435E-01 -1.711334E-03 -1.570584E-01 -2.959866E-03 -2.039016E-01 -4.591866E-03 -2.189983E-01 -5.090456E-03 -2.191556E-01 -5.055427E-03 -2.006583E-01 -4.702936E-03 -1.427473E-01 -2.173216E-03 -1.024856E-01 -1.223983E-03 -8.494077E-02 -9.050889E-04 -1.043652E-01 -1.259550E-03 -1.135027E-01 -1.445575E-03 -1.600726E-01 -2.607556E-03 -1.831531E-01 -4.043413E-03 -2.007142E-01 -4.477475E-03 -1.767643E-01 -3.298936E-03 -1.522826E-01 -2.841107E-03 -1.288167E-01 -1.944141E-03 -1.129177E-01 -1.466746E-03 -9.166114E-02 -1.059245E-03 -7.278205E-02 -7.174163E-04 -1.368554E-01 -2.140442E-03 -1.576875E-01 -2.802493E-03 -1.490721E-01 -2.494952E-03 -2.062740E-01 -4.926381E-03 -1.707643E-01 -3.221954E-03 -1.793503E-01 -3.661578E-03 -1.255583E-01 -1.994441E-03 -1.011375E-01 -1.127338E-03 -5.944771E-02 -5.079367E-04 -6.143141E-02 -4.850205E-04 -8.747215E-02 -9.029610E-04 -1.135806E-01 -1.572457E-03 -1.258766E-01 -1.776739E-03 -1.460430E-01 -2.470050E-03 -1.449479E-01 -2.231440E-03 -1.295714E-01 -1.929423E-03 -1.137994E-01 -1.612784E-03 -8.730775E-02 -8.683726E-04 -6.186674E-02 -4.521535E-04 -4.404648E-02 -3.596329E-04 -6.609800E-02 -5.725272E-04 -8.204018E-02 -7.710094E-04 -9.063221E-02 -1.005713E-03 -9.594152E-02 -1.071929E-03 -8.648906E-02 -9.624176E-04 -6.818770E-02 -5.453348E-04 -5.887333E-02 -4.783382E-04 -6.201530E-02 -4.304358E-04 -4.838730E-02 -3.281581E-04 +2.084815E-02 +1.082750E-04 +6.381818E-02 +9.439513E-04 +1.155641E-01 +2.178751E-03 +6.865908E-02 +7.355866E-04 +6.720820E-02 +7.310529E-04 +9.537792E-02 +1.957273E-03 +1.007744E-01 +1.573169E-03 +9.409645E-02 +1.796197E-03 +7.113698E-02 +8.980335E-04 +2.405019E-02 +9.740436E-05 +6.040159E-02 +7.575405E-04 +1.050048E-01 +2.108780E-03 +1.307457E-01 +2.170448E-03 +9.988454E-02 +1.092936E-03 +1.547083E-01 +3.688477E-03 +8.157999E-02 +1.133034E-03 +1.368232E-01 +2.667957E-03 +1.444186E-01 +3.197937E-03 +1.049316E-01 +1.560309E-03 +7.358073E-02 +1.128410E-03 +4.923095E-02 +6.563588E-04 +9.650255E-02 +1.789194E-03 +1.467738E-01 +3.481509E-03 +1.687123E-01 +5.414669E-03 +1.873036E-01 +4.734353E-03 +1.130087E-01 +1.673004E-03 +1.695614E-01 +3.526426E-03 +2.591168E-01 +8.231726E-03 +1.260152E-01 +2.175978E-03 +6.288783E-02 +9.200482E-04 +8.362502E-02 +1.022521E-03 +1.456806E-01 +3.692821E-03 +1.468696E-01 +3.582954E-03 +1.848215E-01 +5.256814E-03 +2.212472E-01 +5.760540E-03 +2.169211E-01 +5.946348E-03 +1.919182E-01 +7.063068E-03 +1.588234E-01 +3.825511E-03 +1.149909E-01 +1.553531E-03 +8.539019E-02 +1.065672E-03 +1.458566E-01 +4.113559E-03 +2.049774E-01 +6.265197E-03 +2.166930E-01 +7.983860E-03 +1.757110E-01 +5.024516E-03 +2.353728E-01 +7.533032E-03 +1.280409E-01 +2.167446E-03 +1.648011E-01 +3.936025E-03 +1.599354E-01 +3.980976E-03 +1.679361E-01 +3.415565E-03 +6.849881E-02 +7.535621E-04 +8.785791E-02 +1.103156E-03 +1.709025E-01 +4.264016E-03 +1.929437E-01 +4.281538E-03 +1.711011E-01 +3.912611E-03 +1.562002E-01 +3.325900E-03 +2.153821E-01 +5.848786E-03 +1.610373E-01 +3.861192E-03 +2.389629E-01 +8.850896E-03 +1.539258E-01 +3.811869E-03 +7.844092E-02 +1.163579E-03 +2.298462E-02 +1.395953E-04 +1.570027E-01 +4.835079E-03 +1.123717E-01 +1.760314E-03 +1.821249E-01 +6.802302E-03 +2.461041E-01 +7.613043E-03 +1.904001E-01 +4.047242E-03 +2.024477E-01 +5.524067E-03 +1.167011E-01 +2.057180E-03 +8.780067E-02 +1.080238E-03 +5.397296E-02 +5.850746E-04 +5.037871E-02 +5.560040E-04 +8.289459E-02 +1.268000E-03 +1.469691E-01 +4.146173E-03 +1.075211E-01 +1.625602E-03 +2.187908E-01 +6.919967E-03 +1.278025E-01 +2.170886E-03 +9.950167E-02 +1.901085E-03 +1.104557E-01 +2.248074E-03 +1.262151E-01 +2.266348E-03 +5.580544E-02 +9.620095E-04 +5.104294E-02 +5.268938E-04 +9.139465E-02 +1.164619E-03 +7.378130E-02 +1.282188E-03 +8.021098E-02 +7.940912E-04 +1.290978E-01 +2.526036E-03 +9.365705E-02 +1.199392E-03 +6.078377E-02 +5.442247E-04 +7.556566E-02 +8.976997E-04 +6.453527E-02 +1.173497E-03 +4.302808E-02 +5.599709E-04 +3.878239E-02 +5.236943E-04 +6.099196E-02 +1.095513E-03 +9.150086E-02 +1.624380E-03 +5.728387E-02 +5.659010E-04 +9.405318E-02 +1.606034E-03 +8.619696E-02 +1.337493E-03 +1.055978E-01 +2.086153E-03 +8.890472E-02 +1.315673E-03 +6.441028E-02 +7.477974E-04 +6.069918E-02 +6.588335E-04 +1.095224E-01 +2.675022E-03 +1.096306E-01 +2.122353E-03 +1.342330E-01 +3.619967E-03 +1.114064E-01 +1.730639E-03 +1.074251E-01 +1.586218E-03 +1.408447E-01 +2.389426E-03 +1.301662E-01 +3.969782E-03 +7.949674E-02 +1.090923E-03 +1.074998E-01 +3.217694E-03 +3.528248E-02 +2.289672E-04 +9.882155E-02 +1.696404E-03 +1.354820E-01 +2.909227E-03 +1.599751E-01 +2.957031E-03 +2.280781E-01 +6.081628E-03 +2.100930E-01 +5.450110E-03 +2.732779E-01 +8.620164E-03 +1.993743E-01 +5.362856E-03 +2.198036E-01 +5.376103E-03 +1.502824E-01 +2.786908E-03 +4.996523E-02 +5.024077E-04 +1.680575E-01 +3.208887E-03 +1.422788E-01 +4.002215E-03 +1.762382E-01 +4.255455E-03 +2.502725E-01 +7.152209E-03 +3.414429E-01 +1.411003E-02 +2.636737E-01 +9.397976E-03 +2.247647E-01 +7.123896E-03 +3.224482E-01 +1.294508E-02 +1.622669E-01 +3.583977E-03 +1.248655E-01 +2.516158E-03 +6.877708E-02 +1.029829E-03 +1.976808E-01 +6.130857E-03 +3.144113E-01 +1.232063E-02 +3.018257E-01 +1.124658E-02 +2.619717E-01 +8.351589E-03 +3.672028E-01 +1.638863E-02 +3.059552E-01 +1.103037E-02 +2.486122E-01 +8.141595E-03 +1.750139E-01 +3.956566E-03 +1.436264E-01 +3.567607E-03 +1.239696E-01 +2.379611E-03 +2.163287E-01 +5.949023E-03 +2.072743E-01 +5.179000E-03 +3.646146E-01 +1.695667E-02 +3.486264E-01 +1.301568E-02 +3.563685E-01 +1.447225E-02 +2.970379E-01 +1.009480E-02 +2.762591E-01 +9.482575E-03 +2.499264E-01 +7.462884E-03 +6.344775E-02 +6.567949E-04 +1.086029E-01 +1.976496E-03 +2.603220E-01 +8.391117E-03 +2.841149E-01 +1.105366E-02 +3.965469E-01 +1.974149E-02 +3.901607E-01 +1.960621E-02 +3.509285E-01 +1.478774E-02 +2.714593E-01 +8.321432E-03 +2.293816E-01 +7.685918E-03 +1.265740E-01 +2.312172E-03 +1.103539E-01 +2.077575E-03 +1.262352E-01 +2.754572E-03 +2.213458E-01 +6.719185E-03 +3.023706E-01 +1.146381E-02 +3.282506E-01 +1.233694E-02 +2.853774E-01 +1.070129E-02 +2.848374E-01 +9.701790E-03 +3.176142E-01 +1.194832E-02 +2.880766E-01 +1.175767E-02 +1.572435E-01 +3.553858E-03 +1.501104E-01 +2.820093E-03 +1.273408E-01 +2.552547E-03 +1.499070E-01 +3.571856E-03 +2.199953E-01 +7.783541E-03 +2.453178E-01 +7.052370E-03 +2.643229E-01 +9.900690E-03 +2.574947E-01 +8.333501E-03 +2.455689E-01 +8.366273E-03 +1.782866E-01 +3.900659E-03 +1.384975E-01 +2.258716E-03 +8.944673E-02 +1.404954E-03 +5.659795E-02 +4.694852E-04 +9.581840E-02 +1.386427E-03 +2.009835E-01 +6.159157E-03 +1.897439E-01 +7.235399E-03 +1.830639E-01 +5.540521E-03 +1.520639E-01 +2.752778E-03 +2.084599E-01 +5.955188E-03 +1.319666E-01 +2.817088E-03 +1.693010E-01 +3.303866E-03 +7.800745E-02 +8.928402E-04 +4.749930E-02 +5.129237E-04 +6.919528E-02 +9.104379E-04 +1.119151E-01 +2.477462E-03 +1.102521E-01 +1.584592E-03 +1.564084E-01 +3.266574E-03 +1.198104E-01 +2.580046E-03 +1.828790E-01 +4.860390E-03 +7.542042E-02 +1.053718E-03 +1.099096E-01 +1.964225E-03 +6.193848E-02 +6.865448E-04 +5.105046E-02 +5.591936E-04 +5.609383E-02 +5.921134E-04 +9.705482E-02 +1.351531E-03 +1.601898E-01 +3.408525E-03 +1.711068E-01 +3.795257E-03 +2.205615E-01 +7.391402E-03 +1.668188E-01 +3.216331E-03 +1.359445E-01 +2.208925E-03 +9.194982E-02 +1.221828E-03 +3.090110E-02 +1.871704E-04 +1.137084E-01 +1.891251E-03 +1.350332E-01 +3.254232E-03 +1.906275E-01 +4.961645E-03 +2.657405E-01 +8.636878E-03 +3.845292E-01 +1.700936E-02 +2.839796E-01 +9.879629E-03 +2.593192E-01 +7.387676E-03 +1.606576E-01 +4.742954E-03 +1.870343E-01 +4.582302E-03 +8.524427E-02 +1.055424E-03 +1.918440E-01 +4.887813E-03 +2.109751E-01 +5.543123E-03 +2.472924E-01 +8.124732E-03 +4.210681E-01 +1.934743E-02 +3.735043E-01 +1.670088E-02 +4.705633E-01 +2.767424E-02 +4.105274E-01 +2.102523E-02 +4.139000E-01 +1.844845E-02 +2.302657E-01 +6.040845E-03 +1.013844E-01 +1.496233E-03 +1.060074E-01 +1.569679E-03 +3.421581E-01 +1.371034E-02 +4.542071E-01 +2.517473E-02 +5.784381E-01 +3.768770E-02 +4.172596E-01 +1.856012E-02 +5.299200E-01 +3.825470E-02 +5.178634E-01 +3.589903E-02 +4.185970E-01 +1.861497E-02 +2.546343E-01 +8.375242E-03 +1.304944E-01 +1.999316E-03 +1.290019E-01 +2.856345E-03 +2.844146E-01 +9.114045E-03 +4.560916E-01 +2.713184E-02 +7.260552E-01 +5.922762E-02 +7.310584E-01 +6.237152E-02 +6.478348E-01 +5.416126E-02 +4.846913E-01 +3.277993E-02 +4.849197E-01 +2.856176E-02 +2.465437E-01 +7.303148E-03 +1.744812E-01 +4.301498E-03 +1.796564E-01 +4.684076E-03 +2.812314E-01 +1.216852E-02 +4.240103E-01 +2.176819E-02 +5.209518E-01 +3.000472E-02 +6.504938E-01 +4.819256E-02 +5.990305E-01 +4.159076E-02 +5.121545E-01 +3.102991E-02 +3.470484E-01 +1.737934E-02 +2.216267E-01 +5.579967E-03 +1.708599E-01 +4.101306E-03 +1.374646E-01 +2.373831E-03 +2.399512E-01 +9.436021E-03 +4.641786E-01 +2.746647E-02 +4.258629E-01 +2.112979E-02 +6.864289E-01 +5.425243E-02 +6.579119E-01 +5.051533E-02 +4.223368E-01 +2.321407E-02 +4.058385E-01 +2.310793E-02 +2.072746E-01 +5.809548E-03 +2.339589E-01 +7.282388E-03 +9.714578E-02 +1.698684E-03 +1.688968E-01 +3.770170E-03 +2.795405E-01 +9.154147E-03 +3.109678E-01 +1.173563E-02 +3.911757E-01 +1.773775E-02 +4.374549E-01 +2.366240E-02 +4.611865E-01 +2.432741E-02 +2.516503E-01 +7.415388E-03 +1.292894E-01 +2.441647E-03 +2.226852E-01 +6.770128E-03 +8.639730E-02 +1.201841E-03 +1.449879E-01 +2.972972E-03 +1.801392E-01 +3.863618E-03 +1.936577E-01 +4.483865E-03 +2.453357E-01 +9.056291E-03 +2.480125E-01 +8.275523E-03 +2.448524E-01 +6.977697E-03 +2.436311E-01 +7.489666E-03 +2.248261E-01 +6.983599E-03 +6.717077E-02 +9.275956E-04 +4.731066E-02 +3.124630E-04 +8.581231E-02 +1.170765E-03 +2.015455E-01 +5.727404E-03 +1.747214E-01 +3.928453E-03 +1.459763E-01 +2.610376E-03 +1.928041E-01 +5.431526E-03 +1.326436E-01 +2.700926E-03 +1.950403E-01 +6.678626E-03 +1.195635E-01 +1.740482E-03 +8.319821E-02 +2.457105E-03 +5.199084E-02 +8.828006E-04 +9.589097E-02 +1.548067E-03 +1.287095E-01 +3.340920E-03 +2.500082E-01 +7.508730E-03 +1.935346E-01 +5.219674E-03 +1.617078E-01 +3.813457E-03 +1.854527E-01 +4.327935E-03 +1.469009E-01 +2.610026E-03 +1.461825E-01 +3.217211E-03 +6.828427E-02 +8.825134E-04 +1.130324E-01 +1.720356E-03 +2.114890E-01 +6.553709E-03 +1.990033E-01 +5.173772E-03 +3.695621E-01 +1.648852E-02 +3.985679E-01 +1.776400E-02 +4.317996E-01 +1.968661E-02 +4.168039E-01 +1.881861E-02 +3.168143E-01 +1.633856E-02 +1.765576E-01 +5.283407E-03 +1.593152E-01 +4.604144E-03 +1.293622E-01 +1.916729E-03 +2.979566E-01 +1.047393E-02 +3.451328E-01 +1.555073E-02 +4.833176E-01 +2.633603E-02 +5.627698E-01 +3.356380E-02 +6.205981E-01 +4.614253E-02 +5.667030E-01 +4.186377E-02 +3.633926E-01 +1.532926E-02 +1.863158E-01 +4.282436E-03 +1.141892E-01 +2.085004E-03 +1.558106E-01 +2.875549E-03 +2.977518E-01 +1.072036E-02 +6.281147E-01 +4.728417E-02 +6.712593E-01 +4.960413E-02 +1.056883E+00 +1.367649E-01 +9.587365E-01 +1.078758E-01 +7.458883E-01 +6.448193E-02 +5.376124E-01 +3.468394E-02 +3.326626E-01 +1.382728E-02 +1.715305E-01 +3.663437E-03 +1.682990E-01 +3.326460E-03 +2.809424E-01 +1.063357E-02 +3.850550E-01 +2.020363E-02 +8.686055E-01 +8.923119E-02 +1.305252E+00 +2.173314E-01 +1.246711E+00 +1.850981E-01 +8.484663E-01 +8.472718E-02 +6.548499E-01 +4.947625E-02 +2.303342E-01 +5.911752E-03 +2.386545E-01 +6.839411E-03 +1.627119E-01 +2.886284E-03 +3.438278E-01 +1.334226E-02 +4.891845E-01 +3.041285E-02 +8.909073E-01 +9.620969E-02 +1.255312E+00 +1.734311E-01 +1.169852E+00 +1.621969E-01 +9.218086E-01 +9.573599E-02 +5.068244E-01 +3.491193E-02 +3.003659E-01 +9.829990E-03 +1.957695E-01 +5.152593E-03 +1.886300E-01 +4.844638E-03 +2.305332E-01 +6.488165E-03 +4.823482E-01 +2.794296E-02 +7.462144E-01 +6.544856E-02 +9.896232E-01 +1.097631E-01 +9.014297E-01 +9.720847E-02 +6.453827E-01 +4.960136E-02 +4.680612E-01 +2.551940E-02 +2.958141E-01 +1.060228E-02 +1.573863E-01 +3.574829E-03 +1.346274E-01 +2.606991E-03 +2.151576E-01 +5.865290E-03 +3.725391E-01 +1.667519E-02 +4.869630E-01 +2.818017E-02 +6.480100E-01 +5.048920E-02 +6.074075E-01 +5.206769E-02 +4.501793E-01 +2.531848E-02 +3.790470E-01 +1.851680E-02 +2.452106E-01 +7.276116E-03 +1.402939E-01 +2.997945E-03 +1.577787E-01 +2.960256E-03 +1.659923E-01 +3.686020E-03 +2.064830E-01 +6.139283E-03 +3.154830E-01 +1.105998E-02 +4.082087E-01 +1.828447E-02 +3.712626E-01 +1.597510E-02 +3.971745E-01 +1.721238E-02 +3.019064E-01 +1.052699E-02 +1.828928E-01 +4.248902E-03 +1.233601E-01 +2.166273E-03 +8.357176E-02 +1.039130E-03 +1.492118E-01 +3.605953E-03 +1.685975E-01 +3.436440E-03 +1.741635E-01 +4.786790E-03 +1.890091E-01 +4.516094E-03 +2.283632E-01 +6.314480E-03 +2.656566E-01 +8.538973E-03 +1.402148E-01 +3.495565E-03 +8.649749E-02 +1.100158E-03 +8.813243E-02 +1.064695E-03 +4.555958E-02 +6.107386E-04 +1.309527E-01 +2.731943E-03 +1.264672E-01 +2.142006E-03 +3.000507E-01 +1.065688E-02 +3.237002E-01 +1.209173E-02 +2.307443E-01 +7.102755E-03 +1.661595E-01 +4.258378E-03 +1.386893E-01 +3.229314E-03 +8.165890E-02 +9.243538E-04 +9.523925E-02 +1.956679E-03 +1.141044E-01 +2.428038E-03 +1.740908E-01 +3.775648E-03 +1.944806E-01 +4.977204E-03 +2.742895E-01 +8.190026E-03 +4.026905E-01 +1.975388E-02 +4.110115E-01 +1.874949E-02 +2.531408E-01 +7.828810E-03 +2.295291E-01 +6.890997E-03 +2.221209E-01 +6.094039E-03 +1.321954E-01 +2.553334E-03 +1.666256E-01 +4.426400E-03 +2.171404E-01 +6.076897E-03 +3.633640E-01 +1.502241E-02 +5.792842E-01 +3.974284E-02 +6.573016E-01 +5.041895E-02 +5.370335E-01 +3.858979E-02 +6.553493E-01 +5.021005E-02 +4.574564E-01 +2.381874E-02 +3.948129E-01 +1.754777E-02 +1.514078E-01 +3.617861E-03 +1.672928E-01 +3.337911E-03 +2.716967E-01 +8.803461E-03 +5.682403E-01 +3.764689E-02 +8.144576E-01 +8.737915E-02 +1.222427E+00 +1.615304E-01 +1.406450E+00 +2.161620E-01 +9.190365E-01 +9.711802E-02 +5.724671E-01 +3.647197E-02 +3.613345E-01 +1.386290E-02 +1.868095E-01 +3.836399E-03 +2.244663E-01 +5.650733E-03 +3.340151E-01 +1.419108E-02 +5.201277E-01 +3.061828E-02 +1.212509E+00 +1.609699E-01 +4.267920E+00 +1.910806E+00 +4.227114E+00 +1.859722E+00 +1.233210E+00 +1.636276E-01 +6.793213E-01 +5.401213E-02 +3.156364E-01 +1.221711E-02 +1.862610E-01 +4.406388E-03 +2.147662E-01 +5.433421E-03 +3.138361E-01 +1.254893E-02 +6.467791E-01 +4.949991E-02 +1.292908E+00 +1.841406E-01 +4.571133E+00 +2.199170E+00 +4.304366E+00 +1.934972E+00 +1.361497E+00 +2.027947E-01 +6.505924E-01 +4.666856E-02 +3.615811E-01 +1.447718E-02 +2.447963E-01 +7.854969E-03 +1.654784E-01 +4.247475E-03 +2.649194E-01 +1.051513E-02 +6.278811E-01 +4.683999E-02 +8.592361E-01 +8.990276E-02 +1.382839E+00 +2.107838E-01 +1.135130E+00 +1.382627E-01 +9.661898E-01 +1.164265E-01 +5.142024E-01 +3.024987E-02 +2.975162E-01 +9.543763E-03 +1.876877E-01 +4.835176E-03 +1.730644E-01 +3.300158E-03 +2.265572E-01 +7.086879E-03 +4.539714E-01 +2.260730E-02 +4.526763E-01 +2.455356E-02 +8.380497E-01 +7.969257E-02 +6.097070E-01 +3.995479E-02 +6.978494E-01 +5.538934E-02 +4.583192E-01 +2.651122E-02 +2.487859E-01 +6.745574E-03 +2.135994E-01 +7.272300E-03 +2.313010E-01 +7.739556E-03 +2.374439E-01 +8.831961E-03 +2.928583E-01 +1.186840E-02 +2.940020E-01 +9.794156E-03 +4.513060E-01 +2.594396E-02 +3.408815E-01 +1.439810E-02 +3.106891E-01 +1.144803E-02 +3.403069E-01 +1.268580E-02 +1.465408E-01 +2.813252E-03 +1.367546E-01 +2.740789E-03 +1.174094E-01 +2.667947E-03 +1.443079E-01 +2.844402E-03 +9.912399E-02 +1.868517E-03 +2.216936E-01 +5.865658E-03 +2.574848E-01 +7.753799E-03 +2.423469E-01 +6.852465E-03 +2.550700E-01 +1.011995E-02 +1.640218E-01 +3.672006E-03 +1.871862E-01 +4.742433E-03 +1.058744E-01 +2.396856E-03 +7.436797E-02 +1.038777E-03 +1.410499E-01 +3.203643E-03 +9.735284E-02 +1.185189E-03 +1.816982E-01 +4.474357E-03 +2.007849E-01 +5.112077E-03 +1.416364E-01 +2.343860E-03 +2.097978E-01 +8.245740E-03 +2.159614E-01 +6.154601E-03 +2.038247E-01 +5.452430E-03 +9.120379E-02 +1.840216E-03 +1.349742E-01 +2.504188E-03 +1.795569E-01 +4.117727E-03 +2.675136E-01 +8.973198E-03 +3.044579E-01 +1.168982E-02 +3.003136E-01 +1.182153E-02 +4.441106E-01 +2.285936E-02 +3.907089E-01 +1.770627E-02 +3.345364E-01 +1.299223E-02 +1.614780E-01 +3.943314E-03 +1.518321E-01 +3.298050E-03 +1.476469E-01 +3.292917E-03 +2.898729E-01 +1.012881E-02 +3.831674E-01 +1.706626E-02 +5.444391E-01 +3.551092E-02 +5.883316E-01 +3.857351E-02 +8.055244E-01 +7.407530E-02 +5.029322E-01 +3.156083E-02 +4.112561E-01 +2.349214E-02 +2.865882E-01 +9.222808E-03 +1.315274E-01 +2.025984E-03 +1.692347E-01 +5.943449E-03 +2.561683E-01 +9.086015E-03 +6.853967E-01 +5.662300E-02 +7.696698E-01 +7.205977E-02 +1.205382E+00 +1.530951E-01 +1.516911E+00 +2.710712E-01 +6.441196E-01 +4.644860E-02 +5.631822E-01 +4.613548E-02 +4.366129E-01 +2.169977E-02 +1.360192E-01 +2.392896E-03 +2.663718E-01 +9.395499E-03 +3.537282E-01 +1.600143E-02 +7.998053E-01 +7.670496E-02 +1.124722E+00 +1.372134E-01 +4.114708E+00 +1.791984E+00 +3.713956E+00 +1.432033E+00 +1.553058E+00 +2.512378E-01 +6.135941E-01 +4.664131E-02 +2.960858E-01 +1.062685E-02 +2.126076E-01 +6.791986E-03 +1.776585E-01 +4.588826E-03 +4.009987E-01 +1.935283E-02 +6.974237E-01 +5.462807E-02 +1.172320E+00 +1.490257E-01 +4.632606E+00 +2.269726E+00 +4.302933E+00 +1.909275E+00 +1.441901E+00 +2.253633E-01 +6.946025E-01 +5.477741E-02 +3.028572E-01 +9.995543E-03 +2.664800E-01 +8.114532E-03 +1.790515E-01 +4.363179E-03 +3.219591E-01 +1.154933E-02 +4.766048E-01 +2.623379E-02 +6.590219E-01 +5.182644E-02 +1.344103E+00 +1.870469E-01 +1.520658E+00 +2.437423E-01 +8.249516E-01 +8.014323E-02 +4.799528E-01 +2.728872E-02 +3.338091E-01 +1.258397E-02 +1.726451E-01 +3.517931E-03 +1.903056E-01 +5.121011E-03 +2.235869E-01 +6.195184E-03 +4.092350E-01 +1.860896E-02 +6.443407E-01 +4.753054E-02 +7.434275E-01 +6.152443E-02 +6.963186E-01 +5.524192E-02 +7.270762E-01 +6.487099E-02 +4.104319E-01 +2.113108E-02 +2.610332E-01 +8.341277E-03 +2.276467E-01 +7.079821E-03 +1.199303E-01 +2.107276E-03 +2.344765E-01 +7.515146E-03 +2.451220E-01 +8.310971E-03 +3.329565E-01 +1.431369E-02 +4.870420E-01 +2.883252E-02 +4.388732E-01 +2.334318E-02 +2.729832E-01 +1.331202E-02 +2.744247E-01 +9.030846E-03 +1.839791E-01 +4.150617E-03 +1.213890E-01 +3.277981E-03 +1.343672E-01 +2.619580E-03 +1.130422E-01 +2.462443E-03 +1.459336E-01 +2.484655E-03 +2.470614E-01 +7.228380E-03 +3.720114E-01 +1.471500E-02 +1.858744E-01 +4.441917E-03 +1.994268E-01 +4.419502E-03 +1.569202E-01 +3.503970E-03 +1.060675E-01 +1.816154E-03 +7.163514E-02 +8.735272E-04 +1.348760E-01 +3.157312E-03 +1.387692E-01 +2.620702E-03 +1.253738E-01 +2.347752E-03 +1.537875E-01 +3.483744E-03 +2.131755E-01 +5.511261E-03 +1.743480E-01 +3.911447E-03 +2.494725E-01 +7.777487E-03 +2.239382E-01 +7.615366E-03 +1.303960E-01 +2.333665E-03 +5.381387E-02 +3.817146E-04 +1.241519E-01 +2.433480E-03 +2.044311E-01 +4.786937E-03 +2.139543E-01 +6.602658E-03 +1.648073E-01 +3.517309E-03 +2.594795E-01 +9.019644E-03 +3.528032E-01 +1.338298E-02 +3.380248E-01 +1.227721E-02 +2.624372E-01 +8.835121E-03 +1.442538E-01 +3.516238E-03 +8.640530E-02 +1.102412E-03 +2.318335E-01 +6.603252E-03 +3.742742E-01 +1.745484E-02 +5.122567E-01 +3.062512E-02 +4.337463E-01 +2.546284E-02 +5.554541E-01 +3.321204E-02 +5.067434E-01 +2.756649E-02 +4.865666E-01 +2.851594E-02 +3.170831E-01 +1.371214E-02 +2.129101E-01 +6.053342E-03 +2.128070E-01 +7.648402E-03 +1.255629E-01 +1.948581E-03 +3.102388E-01 +1.048609E-02 +5.023490E-01 +3.068085E-02 +7.297304E-01 +6.002099E-02 +7.643998E-01 +7.101610E-02 +8.513612E-01 +8.749837E-02 +6.346410E-01 +4.868689E-02 +3.918803E-01 +2.306037E-02 +3.228690E-01 +1.113733E-02 +1.888798E-01 +5.346454E-03 +2.238570E-01 +5.467591E-03 +2.966176E-01 +1.248345E-02 +5.167505E-01 +3.402812E-02 +8.408580E-01 +7.498379E-02 +1.177612E+00 +1.493796E-01 +1.213429E+00 +1.710532E-01 +7.914586E-01 +8.003283E-02 +6.569462E-01 +4.890438E-02 +4.014122E-01 +1.892526E-02 +1.741005E-01 +3.674254E-03 +1.958982E-01 +5.115746E-03 +3.647228E-01 +1.505221E-02 +5.296653E-01 +2.974185E-02 +8.741589E-01 +8.241692E-02 +1.160357E+00 +1.460044E-01 +1.242926E+00 +1.872176E-01 +7.404224E-01 +7.498948E-02 +4.157637E-01 +2.024853E-02 +3.331424E-01 +1.418197E-02 +1.662525E-01 +3.292552E-03 +1.756303E-01 +4.247818E-03 +3.095415E-01 +1.142281E-02 +4.457274E-01 +2.647548E-02 +8.198863E-01 +7.837270E-02 +8.282276E-01 +7.382650E-02 +9.034572E-01 +9.315387E-02 +6.713558E-01 +6.787067E-02 +4.095750E-01 +1.979096E-02 +4.342550E-01 +2.175150E-02 +1.322553E-01 +2.335662E-03 +7.877879E-02 +1.036092E-03 +2.712902E-01 +1.019092E-02 +3.167190E-01 +1.335793E-02 +5.158618E-01 +3.370797E-02 +5.676681E-01 +3.856145E-02 +4.544440E-01 +2.549015E-02 +4.432888E-01 +2.126301E-02 +3.161041E-01 +1.234645E-02 +2.562026E-01 +7.985736E-03 +1.563374E-01 +3.245008E-03 +8.863898E-02 +1.306731E-03 +1.548733E-01 +3.412279E-03 +3.079218E-01 +1.069274E-02 +3.174567E-01 +1.269551E-02 +3.884142E-01 +1.709017E-02 +3.349271E-01 +1.222785E-02 +3.044983E-01 +1.423699E-02 +2.903925E-01 +9.489097E-03 +1.487595E-01 +2.773453E-03 +1.494058E-01 +2.846313E-03 +4.625762E-02 +6.009114E-04 +8.974298E-02 +9.375211E-04 +1.601786E-01 +4.585595E-03 +1.785646E-01 +4.336702E-03 +2.477972E-01 +7.750073E-03 +2.297032E-01 +6.245973E-03 +1.883691E-01 +4.541820E-03 +1.590142E-01 +3.260631E-03 +1.554108E-01 +4.270743E-03 +7.224886E-02 +8.834373E-04 +9.019638E-02 +1.611295E-03 +1.303901E-01 +2.764679E-03 +1.222936E-01 +2.240408E-03 +1.581304E-01 +3.695801E-03 +1.808779E-01 +3.998170E-03 +1.889571E-01 +4.444562E-03 +1.943967E-01 +4.459891E-03 +1.426015E-01 +2.562593E-03 +9.883790E-02 +1.983226E-03 +7.007983E-02 +7.319313E-04 +1.280076E-01 +2.520103E-03 +2.289759E-01 +6.569922E-03 +2.383089E-01 +6.703841E-03 +2.643140E-01 +9.790031E-03 +2.811310E-01 +8.775540E-03 +2.387165E-01 +7.680438E-03 +2.082093E-01 +4.991376E-03 +1.666022E-01 +5.373828E-03 +1.149541E-01 +1.639607E-03 +1.220668E-01 +2.216590E-03 +1.340186E-01 +2.951310E-03 +2.402611E-01 +6.073468E-03 +2.713634E-01 +8.566663E-03 +3.660427E-01 +1.616450E-02 +3.595602E-01 +1.586479E-02 +4.709360E-01 +2.736173E-02 +3.929542E-01 +1.710164E-02 +2.484219E-01 +8.065603E-03 +1.636269E-01 +3.625941E-03 +1.083314E-01 +1.503478E-03 +1.510553E-01 +3.275953E-03 +2.604648E-01 +7.914689E-03 +4.659340E-01 +2.706966E-02 +4.604958E-01 +2.466857E-02 +6.423896E-01 +5.370929E-02 +4.993435E-01 +3.139490E-02 +4.512831E-01 +2.316067E-02 +3.742188E-01 +1.866260E-02 +2.498718E-01 +9.012857E-03 +1.514092E-01 +3.487353E-03 +1.216650E-01 +2.493133E-03 +3.141187E-01 +1.212145E-02 +3.573130E-01 +1.672769E-02 +4.548534E-01 +2.472124E-02 +6.482388E-01 +4.852353E-02 +7.058570E-01 +5.448241E-02 +6.148571E-01 +4.270398E-02 +4.455893E-01 +2.579049E-02 +3.074559E-01 +1.128795E-02 +1.589893E-01 +3.478790E-03 +1.619699E-01 +3.585731E-03 +3.432049E-01 +1.277974E-02 +3.770375E-01 +1.987838E-02 +4.941913E-01 +2.727393E-02 +7.067789E-01 +5.775428E-02 +6.507162E-01 +4.675889E-02 +4.514535E-01 +2.501083E-02 +4.060220E-01 +1.794153E-02 +2.870835E-01 +9.368435E-03 +2.032184E-01 +5.194567E-03 +1.500232E-01 +3.209360E-03 +2.247567E-01 +6.429339E-03 +4.176628E-01 +2.402640E-02 +4.329508E-01 +2.267303E-02 +6.043048E-01 +3.982372E-02 +5.849860E-01 +3.657295E-02 +3.903656E-01 +2.120434E-02 +3.543847E-01 +1.568913E-02 +2.824890E-01 +9.829374E-03 +1.446874E-01 +3.872867E-03 +9.609740E-02 +1.572744E-03 +3.043448E-01 +1.189455E-02 +3.284045E-01 +1.210523E-02 +3.703590E-01 +1.909858E-02 +3.991370E-01 +1.981940E-02 +3.532581E-01 +1.465522E-02 +3.160296E-01 +1.372436E-02 +3.333697E-01 +1.223435E-02 +2.249296E-01 +6.801086E-03 +1.628327E-01 +3.377881E-03 +7.079336E-02 +8.561171E-04 +1.105650E-01 +1.955407E-03 +1.589050E-01 +3.902915E-03 +2.414331E-01 +7.590068E-03 +2.176293E-01 +5.727003E-03 +2.726467E-01 +9.337718E-03 +1.818539E-01 +3.576974E-03 +2.180168E-01 +6.336070E-03 +1.903736E-01 +5.558784E-03 +1.433931E-01 +2.788824E-03 +8.437203E-02 +1.544760E-03 +1.159951E-01 +1.971890E-03 +1.542921E-01 +2.942637E-03 +1.798106E-01 +4.414091E-03 +2.351155E-01 +6.895402E-03 +1.878790E-01 +5.021441E-03 +1.615985E-01 +3.901096E-03 +1.133366E-01 +1.754982E-03 +8.959341E-02 +1.548148E-03 +4.455245E-02 +4.150367E-04 +9.594518E-02 +1.952932E-03 +6.555887E-02 +7.561836E-04 +1.323975E-01 +2.792090E-03 +1.823800E-01 +6.046172E-03 +1.840112E-01 +5.611376E-03 +1.405650E-01 +4.207768E-03 +9.692459E-02 +1.219361E-03 +6.977514E-02 +7.637517E-04 +5.313139E-02 +5.751260E-04 +4.631552E-02 +5.181770E-04 +9.495661E-02 +1.419966E-03 +1.200447E-01 +2.077537E-03 +1.952442E-01 +4.590395E-03 +1.471117E-01 +3.028305E-03 +1.514228E-01 +2.942798E-03 +3.062551E-01 +1.122418E-02 +1.534497E-01 +2.980148E-03 +1.773128E-01 +4.163631E-03 +1.581280E-01 +3.230054E-03 +1.026207E-01 +1.722791E-03 +9.727136E-02 +1.353541E-03 +1.833104E-01 +4.064796E-03 +1.726271E-01 +3.698889E-03 +2.777797E-01 +1.009800E-02 +2.297180E-01 +6.584276E-03 +3.227158E-01 +1.178834E-02 +2.630960E-01 +9.478703E-03 +2.057216E-01 +5.184325E-03 +1.381855E-01 +3.483987E-03 +1.207644E-01 +2.491839E-03 +1.020355E-01 +1.285191E-03 +2.413347E-01 +7.206284E-03 +1.830190E-01 +4.936379E-03 +2.466750E-01 +7.737265E-03 +3.667100E-01 +1.823639E-02 +3.886601E-01 +1.908900E-02 +3.063991E-01 +1.145076E-02 +3.179609E-01 +1.267020E-02 +2.640979E-01 +8.849372E-03 +1.324137E-01 +3.423783E-03 +1.674432E-01 +3.867189E-03 +2.387486E-01 +7.617983E-03 +2.702949E-01 +9.072068E-03 +3.509396E-01 +1.367373E-02 +4.669900E-01 +2.481995E-02 +4.539417E-01 +2.445131E-02 +2.804180E-01 +9.256761E-03 +2.204163E-01 +5.757785E-03 +1.688854E-01 +3.626841E-03 +1.799124E-01 +4.569449E-03 +1.357315E-01 +3.117868E-03 +1.939662E-01 +4.609676E-03 +1.811233E-01 +4.001677E-03 +3.023547E-01 +1.006813E-02 +3.852946E-01 +1.646521E-02 +3.947190E-01 +1.652818E-02 +3.308085E-01 +1.319117E-02 +2.203472E-01 +7.096957E-03 +2.084519E-01 +6.333576E-03 +1.446787E-01 +3.971664E-03 +8.614610E-02 +1.069819E-03 +2.193677E-01 +8.326726E-03 +2.076369E-01 +4.682464E-03 +1.696243E-01 +3.956462E-03 +3.992762E-01 +1.931929E-02 +3.307711E-01 +1.232965E-02 +2.639926E-01 +8.553712E-03 +2.907994E-01 +1.195800E-02 +2.069794E-01 +4.706478E-03 +9.533912E-02 +1.278173E-03 +1.053247E-01 +1.903155E-03 +1.837208E-01 +5.173191E-03 +1.636891E-01 +4.284691E-03 +2.284680E-01 +8.035892E-03 +2.300168E-01 +5.784482E-03 +2.519821E-01 +8.684849E-03 +2.271669E-01 +6.331342E-03 +2.491848E-01 +7.449392E-03 +2.027002E-01 +4.880471E-03 +9.012995E-02 +1.564717E-03 +9.958124E-02 +1.614296E-03 +1.735102E-01 +5.642665E-03 +1.785074E-01 +4.132173E-03 +1.933132E-01 +5.239277E-03 +2.139676E-01 +6.356521E-03 +2.015977E-01 +5.099277E-03 +2.039189E-01 +7.545412E-03 +2.075736E-01 +7.064068E-03 +1.061529E-01 +1.352122E-03 +3.214966E-02 +1.717861E-04 +3.339740E-02 +2.480850E-04 +1.110320E-01 +2.164188E-03 +9.636462E-02 +1.094431E-03 +1.497850E-01 +5.420438E-03 +1.496108E-01 +2.948765E-03 +1.408888E-01 +2.897433E-03 +1.338729E-01 +2.922319E-03 +5.711633E-02 +4.306501E-04 +7.981911E-02 +8.325283E-04 +5.180954E-02 +5.871992E-04 +3.142337E-02 +2.743459E-04 +7.558078E-02 +1.440107E-03 +6.749596E-02 +7.121686E-04 +4.742528E-02 +3.421264E-04 +1.152645E-01 +2.543824E-03 +1.034826E-01 +1.553063E-03 +7.780836E-02 +1.674226E-03 +2.486040E-02 +1.152553E-04 +5.118031E-02 +4.782731E-04 +6.164448E-02 +1.090465E-03 +5.579780E-02 +5.469202E-04 +9.835519E-02 +1.561650E-03 +1.590188E-01 +3.559315E-03 +9.123141E-02 +1.186111E-03 +9.257051E-02 +1.160366E-03 +1.595071E-01 +3.372622E-03 +8.648914E-02 +1.391423E-03 +9.915992E-02 +1.496092E-03 +6.159336E-02 +7.871872E-04 +7.703115E-02 +8.995936E-04 +8.644781E-02 +1.794389E-03 +8.281040E-02 +1.022772E-03 +1.198087E-01 +2.578187E-03 +1.046543E-01 +2.073804E-03 +1.485974E-01 +3.372341E-03 +1.899240E-01 +5.053348E-03 +1.495518E-01 +3.346868E-03 +1.523611E-01 +2.626194E-03 +1.483976E-01 +3.461823E-03 +1.189640E-01 +2.194057E-03 +7.910820E-02 +1.021972E-03 +1.408445E-01 +2.513931E-03 +1.785598E-01 +6.539443E-03 +1.627058E-01 +4.133768E-03 +1.417975E-01 +2.575062E-03 +1.453104E-01 +3.242010E-03 +1.545322E-01 +2.888223E-03 +2.238452E-01 +8.182427E-03 +1.208627E-01 +2.044210E-03 +8.317750E-02 +1.508722E-03 +9.945978E-02 +1.606528E-03 +1.100115E-01 +1.679926E-03 +1.682495E-01 +3.387004E-03 +2.038347E-01 +5.001616E-03 +1.661126E-01 +3.716273E-03 +1.719126E-01 +4.353756E-03 +2.127676E-01 +7.068298E-03 +1.596044E-01 +3.435511E-03 +9.171613E-02 +1.258097E-03 +7.909923E-02 +1.167334E-03 +8.070294E-02 +1.198068E-03 +9.480490E-02 +1.184376E-03 +1.091868E-01 +1.673174E-03 +1.686522E-01 +3.814685E-03 +2.045902E-01 +4.997184E-03 +2.218509E-01 +5.932778E-03 +2.568657E-01 +9.334526E-03 +1.632220E-01 +4.266101E-03 +8.403406E-02 +1.398023E-03 +8.197852E-02 +9.887532E-04 +7.879086E-02 +1.433937E-03 +1.228523E-01 +2.416939E-03 +1.862098E-01 +4.308366E-03 +2.142186E-01 +8.247066E-03 +2.268010E-01 +6.502538E-03 +1.402457E-01 +2.618558E-03 +1.260213E-01 +2.059778E-03 +1.505995E-01 +2.876582E-03 +5.116714E-02 +3.766772E-04 +1.268702E-01 +2.695645E-03 +5.638152E-02 +5.767254E-04 +1.619056E-01 +3.154405E-03 +2.354666E-01 +1.065017E-02 +1.278153E-01 +2.300850E-03 +1.582320E-01 +3.193514E-03 +1.851274E-01 +5.144918E-03 +1.462501E-01 +3.549186E-03 +1.385494E-01 +3.784085E-03 +6.277077E-02 +8.146319E-04 +7.619565E-02 +1.435724E-03 +1.261746E-01 +3.287745E-03 +5.858084E-02 +5.268907E-04 +1.326578E-01 +2.611109E-03 +1.378942E-01 +2.421025E-03 +1.281363E-01 +1.960588E-03 +1.071155E-01 +1.748974E-03 +1.014830E-01 +1.540688E-03 +1.167308E-01 +3.039772E-03 +8.499870E-02 +1.048605E-03 +5.967367E-02 +1.011919E-03 +6.384520E-02 +1.050476E-03 +5.379547E-02 +4.842685E-04 +9.714870E-02 +1.167567E-03 +1.193232E-01 +2.711280E-03 +6.956983E-02 +7.545215E-04 +1.085462E-01 +2.036623E-03 +6.352672E-02 +7.273361E-04 +3.554724E-02 +4.034308E-04 +1.147332E-01 +3.617311E-03 +8.657826E-02 +1.515787E-03 tally 2: -2.393627E-03 -2.636290E-06 -2.222156E-03 -1.516148E-06 -2.867439E-03 -2.178580E-06 -7.923009E-03 -1.131939E-05 -3.986634E-03 -4.120137E-06 -7.826419E-03 -1.381669E-05 -6.138176E-03 -7.147428E-06 -3.876880E-03 -2.697208E-06 -2.980562E-03 -3.407321E-06 -1.774473E-03 -8.936196E-07 -2.805366E-03 -2.770194E-06 -3.942385E-03 -3.541964E-06 -4.287920E-03 -3.508749E-06 -7.477034E-03 -1.023581E-05 -1.829256E-03 -9.746709E-07 -5.062973E-03 -5.540060E-06 -4.594275E-03 -5.704022E-06 -3.405515E-03 -3.312460E-06 -9.423220E-03 -1.189576E-05 -1.066888E-02 -2.047020E-05 -7.596120E-03 -1.097485E-05 -5.727684E-03 -9.708804E-06 -4.299383E-03 -3.708395E-06 -9.513211E-03 -1.464618E-05 -5.378401E-03 -5.129879E-06 -5.096252E-03 -3.430859E-06 -7.146855E-03 -1.124612E-05 -6.572738E-03 -7.596525E-06 -7.380131E-03 -9.633384E-06 -6.219137E-03 -8.163623E-06 -6.908868E-03 -8.615668E-06 -7.350963E-03 -1.116403E-05 -5.438361E-03 -6.022683E-06 -4.233493E-03 -5.102016E-06 -9.383252E-03 -1.536263E-05 -1.199002E-02 -2.034238E-05 -7.934135E-03 -8.959239E-06 -8.511914E-03 -1.022394E-05 -6.162682E-03 -4.504202E-06 -6.648149E-03 -5.723838E-06 -7.264317E-03 -8.981506E-06 -1.037779E-02 -1.703942E-05 -4.759363E-03 -3.403173E-06 -9.522407E-03 -1.428157E-05 -7.387030E-03 -1.550312E-05 -4.844392E-03 -8.366311E-06 -6.843631E-03 -8.685895E-06 -7.764489E-03 -8.325268E-06 -5.854513E-03 -5.702341E-06 -7.087671E-03 -1.025951E-05 -2.415844E-03 -2.739481E-06 -3.086207E-03 -1.914733E-06 -3.654957E-03 -3.442162E-06 -4.643653E-03 -7.197439E-06 -1.156734E-02 -1.759634E-05 -7.348653E-03 -9.450024E-06 -7.852217E-03 -9.889996E-06 -4.188787E-03 -2.746400E-06 -4.526053E-03 -3.421811E-06 -7.133876E-03 -5.514540E-06 -7.642743E-03 -1.296144E-05 -3.436567E-03 -5.211995E-06 -2.358938E-03 -1.100467E-06 -4.225043E-03 -3.484328E-06 -6.975938E-03 -1.402542E-05 -2.948552E-03 -2.413285E-06 -7.430097E-03 -9.911242E-06 -9.344383E-03 -1.730038E-05 -5.155130E-03 -4.067305E-06 -9.223392E-03 -1.460017E-05 -6.706254E-03 -1.105767E-05 -6.585388E-03 -9.369522E-06 -5.779745E-03 -9.335364E-06 -8.502853E-03 -1.535431E-05 -3.196086E-03 -2.721454E-06 -4.062636E-03 -4.530161E-06 -4.949408E-03 -4.754719E-06 -8.697214E-03 -1.269695E-05 -7.720575E-03 -1.111572E-05 -9.096811E-03 -1.174536E-05 -8.395332E-03 -1.344990E-05 -4.327467E-03 -4.178301E-06 -8.098133E-03 -2.129072E-05 -8.641159E-03 -1.993637E-05 -4.910339E-03 -4.798040E-06 -9.222729E-03 -1.731644E-05 -2.362293E-03 -1.920887E-06 -6.474215E-03 -7.989801E-06 -5.093903E-03 -4.638782E-06 -5.190870E-03 -4.064962E-06 -9.156062E-03 -1.062935E-05 -8.084833E-03 -1.278518E-05 -6.006837E-03 -5.037849E-06 -2.770574E-03 -1.880169E-06 -8.452309E-03 -1.160057E-05 -3.397900E-03 -2.727237E-06 -2.289237E-03 -1.800828E-06 -4.695731E-03 -3.765699E-06 -4.924545E-03 -5.339278E-06 -3.924491E-03 -3.534032E-06 -5.847744E-03 -5.832921E-06 -5.289218E-03 -4.574845E-06 -6.846305E-03 -7.758157E-06 -1.047199E-02 -2.215876E-05 -4.108674E-03 -4.661482E-06 -3.645438E-03 -3.482466E-06 -7.403892E-03 -9.076272E-06 -9.992980E-03 -1.850054E-05 -5.443023E-03 -6.695689E-06 -3.847833E-03 -4.206098E-06 -2.277807E-03 -2.917797E-06 -3.224646E-03 -2.590833E-06 -2.712146E-03 -1.564363E-06 -2.511703E-03 -2.073210E-06 -2.851624E-03 -2.406321E-06 -6.419364E-03 -8.208048E-06 -3.583974E-03 -2.129485E-06 -4.071264E-03 -3.984855E-06 -4.533579E-03 -3.713304E-06 -4.578848E-03 -5.079242E-06 -5.611098E-03 -6.817450E-06 -5.466353E-03 -4.988832E-06 -6.854470E-03 -7.459449E-06 -1.157268E-02 -2.134366E-05 -7.273077E-03 -9.732982E-06 -8.349702E-03 -1.250149E-05 -5.050822E-03 -6.018695E-06 -2.514025E-03 -1.130420E-06 -3.427587E-03 -3.225038E-06 -3.873162E-03 -2.996903E-06 -7.323374E-03 -8.254236E-06 -6.098103E-03 -7.253404E-06 -6.739636E-03 -8.349945E-06 -9.485072E-03 -1.713563E-05 -5.984992E-03 -9.163531E-06 -8.834991E-03 -1.335810E-05 -4.066934E-03 -3.579803E-06 -1.652658E-02 -4.834880E-05 -7.000637E-03 -1.069231E-05 -7.937972E-03 -1.290117E-05 -3.766475E-03 -2.867345E-06 -2.461271E-03 -1.788656E-06 -7.788544E-03 -1.121555E-05 -9.541095E-03 -2.231145E-05 -7.679962E-03 -9.840343E-06 -5.742139E-03 -4.940156E-06 -5.062263E-03 -4.779159E-06 -1.289208E-02 -2.955604E-05 -1.544740E-02 -3.866639E-05 -1.954402E-02 -4.721734E-05 -9.149250E-03 -1.133509E-05 -1.090073E-02 -2.153530E-05 -4.758115E-03 -3.459784E-06 -6.236554E-03 -7.454691E-06 -1.032788E-02 -1.596371E-05 -1.444275E-02 -3.574908E-05 -6.464816E-03 -6.384836E-06 -8.737589E-03 -1.139821E-05 -1.522241E-02 -3.688054E-05 -1.106278E-02 -2.001640E-05 -1.657751E-03 -7.896422E-07 -9.985083E-03 -2.005574E-05 -1.652296E-02 -4.365058E-05 -1.302377E-02 -2.178742E-05 -9.435666E-03 -1.687352E-05 -6.711506E-03 -6.885294E-06 -1.142166E-02 -1.609449E-05 -1.419856E-02 -2.849773E-05 -8.442366E-03 -1.011801E-05 -1.071637E-02 -1.610076E-05 -4.476911E-03 -3.961715E-06 -7.809454E-03 -1.419144E-05 -1.181657E-02 -2.104822E-05 -1.373873E-02 -2.251824E-05 -8.797909E-03 -9.748724E-06 -1.504789E-02 -4.195617E-05 -7.006137E-03 -6.669697E-06 -9.537389E-03 -1.849189E-05 -1.780900E-02 -4.302041E-05 -1.724591E-02 -3.993250E-05 -9.881865E-03 -1.435848E-05 -1.212976E-02 -2.281306E-05 -1.155598E-02 -2.437179E-05 -1.323280E-02 -2.884432E-05 -8.626223E-03 -1.632385E-05 -8.459408E-03 -1.577691E-05 -5.796477E-03 -8.302775E-06 -7.329870E-03 -9.181815E-06 -5.899442E-03 -9.585863E-06 -3.270135E-03 -2.283602E-06 -1.256169E-02 -2.107461E-05 -1.234423E-02 -1.770300E-05 -7.478528E-03 -9.995232E-06 -9.809248E-03 -1.705587E-05 -1.508701E-02 -4.933892E-05 -9.484511E-03 -1.383716E-05 -9.906783E-03 -1.637085E-05 -1.682365E-02 -3.925758E-05 -1.258622E-02 -2.571505E-05 -1.501752E-02 -3.834255E-05 -8.820664E-03 -1.146570E-05 -9.142316E-03 -1.367354E-05 -1.607994E-02 -3.440957E-05 -1.819921E-02 -4.213322E-05 -1.049376E-02 -1.508696E-05 -1.125487E-02 -1.829361E-05 -1.255946E-02 -2.400912E-05 -1.494753E-02 -2.880665E-05 -9.906163E-03 -1.714469E-05 -9.801065E-03 -1.600484E-05 -9.144471E-03 -1.267827E-05 -9.284445E-03 -1.370415E-05 -7.423687E-03 -7.432654E-06 -5.839529E-03 -7.346711E-06 -1.203215E-02 -1.827698E-05 -1.168395E-02 -2.279351E-05 -8.086186E-03 -1.615505E-05 -7.899387E-03 -1.190799E-05 -1.297481E-02 -2.625448E-05 -1.012733E-02 -1.604797E-05 -7.655395E-03 -8.264047E-06 -6.482761E-03 -7.546581E-06 -9.071892E-03 -1.344566E-05 -1.012199E-02 -1.652283E-05 -9.504897E-03 -1.476924E-05 -5.662581E-03 -5.323904E-06 -7.382282E-03 -1.000786E-05 -6.180783E-03 -7.844120E-06 -2.197420E-03 -1.391522E-06 -6.007425E-03 -7.959122E-06 -7.715644E-03 -1.608319E-05 -5.247749E-03 -7.416762E-06 -1.694277E-03 -6.578326E-07 -5.339576E-03 -5.097832E-06 -6.019786E-03 -5.618274E-06 -4.786336E-03 -7.186037E-06 -6.122950E-03 -5.610674E-06 -8.057029E-03 -1.204366E-05 -6.301473E-03 -6.965375E-06 -4.120695E-03 -3.695383E-06 -5.874479E-03 -6.599197E-06 -6.691277E-03 -7.819406E-06 -5.109849E-03 -6.563614E-06 -8.391296E-03 -9.940452E-06 -5.839507E-03 -5.521558E-06 -4.596793E-03 -4.130860E-06 -5.374245E-03 -1.030905E-05 -1.632711E-03 -8.301397E-07 -3.126223E-03 -2.656593E-06 -3.937711E-03 -3.000478E-06 -1.156184E-02 -2.627381E-05 -5.611109E-03 -6.000471E-06 -6.252306E-03 -8.525688E-06 -9.821256E-03 -2.080867E-05 -6.202478E-03 -9.705719E-06 -9.744072E-03 -1.419879E-05 -4.563774E-03 -5.256907E-06 -8.587477E-03 -1.097640E-05 -7.671018E-03 -1.047414E-05 -7.311535E-03 -8.520205E-06 -5.701036E-03 -7.538301E-06 -2.627195E-03 -1.584039E-06 -9.969461E-03 -1.489942E-05 -7.095469E-03 -8.576195E-06 -1.168498E-02 -2.716853E-05 -1.070319E-02 -2.148367E-05 -1.016441E-02 -1.786630E-05 -1.292596E-02 -2.389182E-05 -1.217737E-02 -2.769412E-05 -1.181009E-02 -2.340802E-05 -1.574105E-02 -3.124980E-05 -1.232805E-02 -2.754960E-05 -1.188839E-02 -2.281613E-05 -6.603428E-03 -7.994872E-06 -9.606012E-03 -1.590439E-05 -1.440947E-02 -3.393244E-05 -1.302185E-02 -2.781063E-05 -1.299900E-02 -2.077190E-05 -9.475720E-03 -1.345778E-05 -1.146355E-02 -2.243784E-05 -1.349840E-02 -2.573754E-05 -7.739444E-03 -8.409802E-06 -1.466716E-02 -2.433264E-05 -1.806287E-02 -4.053139E-05 -8.810509E-03 -1.132204E-05 -1.024195E-02 -1.779935E-05 -2.025420E-02 -5.383414E-05 -1.707065E-02 -3.895805E-05 -1.038874E-02 -1.447558E-05 -1.204454E-02 -2.594328E-05 -1.354337E-02 -2.168067E-05 -1.483635E-02 -2.755558E-05 -1.192445E-02 -3.329659E-05 -2.158708E-02 -6.668840E-05 -1.234119E-02 -2.669020E-05 -1.410581E-02 -3.302957E-05 -8.354805E-03 -9.152126E-06 -9.135582E-03 -1.272798E-05 -1.639890E-02 -3.260235E-05 -1.941356E-02 -4.768472E-05 -9.432927E-03 -1.518984E-05 -8.177517E-03 -1.165366E-05 -9.416129E-03 -1.296249E-05 -8.128386E-03 -8.608672E-06 -1.105831E-02 -1.814734E-05 -1.401062E-02 -3.340952E-05 -1.142672E-02 -2.129460E-05 -9.161476E-03 -1.306319E-05 -9.794446E-03 -1.416201E-05 -9.135097E-03 -1.706236E-05 -1.853399E-02 -3.920131E-05 -1.227701E-02 -2.106422E-05 -1.056602E-02 -2.102108E-05 -8.267866E-03 -1.184427E-05 -1.303652E-02 -3.007847E-05 -1.109107E-02 -1.508434E-05 -1.255273E-02 -3.715445E-05 -1.568071E-02 -3.587957E-05 -1.697298E-02 -4.299097E-05 -2.038316E-02 -6.095075E-05 -1.285306E-02 -2.307142E-05 -1.201762E-02 -3.129200E-05 -1.499546E-02 -3.208959E-05 -2.043263E-02 -5.689094E-05 -1.189038E-02 -2.042718E-05 -1.950482E-02 -5.269872E-05 -1.134487E-02 -2.521302E-05 -1.878263E-02 -4.929885E-05 -1.873654E-02 -5.934321E-05 -1.419859E-02 -2.646755E-05 -1.651980E-02 -4.148598E-05 -1.314908E-02 -2.182046E-05 -1.021903E-02 -1.717431E-05 -1.208532E-02 -2.496385E-05 -1.982124E-02 -4.519007E-05 -2.237475E-02 -7.384327E-05 -1.168783E-02 -2.197925E-05 -1.121917E-02 -1.848105E-05 -1.176886E-02 -1.989856E-05 -1.028612E-02 -2.002048E-05 -6.441121E-03 -1.208678E-05 -9.334858E-03 -1.685718E-05 -1.221526E-02 -2.734816E-05 -8.109247E-03 -1.518336E-05 -8.368313E-03 -1.063729E-05 -8.855930E-03 -1.170749E-05 -1.172890E-02 -1.956774E-05 -9.863812E-03 -1.315788E-05 -5.592525E-03 -6.344568E-06 -8.987555E-03 -2.234382E-05 -3.266822E-03 -2.479505E-06 -6.189326E-03 -8.824564E-06 -5.844977E-03 -5.169490E-06 -7.046630E-03 -1.052376E-05 -6.579857E-03 -8.415446E-06 -1.093757E-02 -1.570418E-05 -1.534199E-03 -4.843955E-07 -3.972367E-03 -3.930212E-06 -9.061215E-03 -1.261741E-05 -8.800538E-03 -1.921110E-05 -3.225443E-03 -3.493463E-06 -5.742921E-03 -7.524467E-06 -8.894549E-03 -9.527470E-06 -1.014672E-02 -2.120305E-05 -5.364672E-03 -6.378322E-06 -1.066153E-02 -1.712472E-05 -6.130226E-03 -6.243703E-06 -4.018022E-03 -2.930167E-06 -4.956188E-03 -4.356249E-06 -6.252583E-03 -6.885470E-06 -8.007253E-03 -8.821722E-06 -6.639119E-03 -8.933356E-06 -1.463344E-02 -3.442332E-05 -1.038024E-02 -1.880148E-05 -1.206043E-02 -2.558498E-05 -4.570005E-03 -3.726957E-06 -1.242332E-02 -2.230997E-05 -1.977578E-02 -4.435986E-05 -1.061292E-02 -2.445701E-05 -1.424423E-02 -3.432092E-05 -9.396166E-03 -1.401917E-05 -1.392713E-02 -2.180224E-05 -1.424206E-02 -2.481086E-05 -1.709208E-02 -4.686642E-05 -1.878028E-02 -4.097819E-05 -1.586170E-02 -3.899306E-05 -1.186469E-02 -2.666019E-05 -1.771802E-02 -4.244451E-05 -2.012793E-02 -4.893656E-05 -1.650347E-02 -3.934790E-05 -1.148512E-02 -1.454575E-05 -1.749383E-02 -5.245021E-05 -1.225617E-02 -3.059339E-05 -1.346221E-02 -2.189743E-05 -2.304004E-02 -5.757458E-05 -2.222990E-02 -5.924120E-05 -1.952055E-02 -4.455112E-05 -2.382543E-02 -8.732633E-05 -1.530886E-02 -4.091608E-05 -1.339459E-02 -2.841021E-05 -1.625542E-02 -3.786269E-05 -2.338447E-02 -6.870429E-05 -1.490538E-02 -3.792400E-05 -1.790848E-02 -4.535348E-05 -1.122685E-02 -2.253480E-05 -1.330235E-02 -2.292380E-05 -2.135308E-02 -5.586248E-05 -1.695542E-02 -3.629907E-05 -1.155426E-02 -1.914452E-05 -1.571691E-02 -3.489736E-05 -1.572803E-02 -4.611373E-05 -1.284552E-02 -2.456383E-05 -1.901269E-02 -4.808607E-05 -2.485036E-02 -8.880235E-05 -1.465112E-02 -3.185430E-05 -2.020800E-02 -4.881856E-05 -1.401589E-02 -2.430294E-05 -9.002706E-03 -1.229314E-05 -1.992235E-02 -4.240852E-05 -2.006701E-02 -4.842321E-05 -1.641971E-02 -4.817406E-05 -1.595751E-02 -4.338042E-05 -1.853727E-02 -4.393578E-05 -2.192942E-02 -6.739913E-05 -1.867919E-02 -5.139172E-05 -2.177355E-02 -5.751645E-05 -1.184805E-02 -2.240654E-05 -2.099274E-02 -5.999346E-05 -1.322643E-02 -2.131002E-05 -1.656305E-02 -4.169252E-05 -2.381731E-02 -9.074804E-05 -2.704019E-02 -1.044920E-04 -1.801171E-02 -4.035920E-05 -1.967092E-02 -5.363932E-05 -1.168953E-02 -1.754128E-05 -1.832249E-02 -3.962019E-05 -1.704595E-02 -3.468261E-05 -1.265896E-02 -2.389931E-05 -1.393723E-02 -3.209713E-05 -1.201908E-02 -2.196652E-05 -1.121588E-02 -1.970440E-05 -1.427491E-02 -2.765834E-05 -2.153384E-02 -5.860763E-05 -1.776842E-02 -3.609550E-05 -7.672472E-03 -1.269710E-05 -1.265904E-02 -2.534380E-05 -1.278354E-02 -2.508897E-05 -1.391779E-02 -4.666810E-05 -2.101476E-02 -6.314023E-05 -1.153450E-02 -1.634642E-05 -7.257174E-03 -7.518882E-06 -1.927707E-02 -5.477085E-05 -9.781524E-03 -2.152387E-05 -9.945925E-03 -2.025565E-05 -1.389600E-02 -2.298270E-05 -1.494296E-02 -3.352071E-05 -1.367151E-02 -2.896436E-05 -1.028864E-02 -1.588654E-05 -1.473101E-02 -2.707095E-05 -1.455944E-02 -2.781560E-05 -9.476864E-03 -1.561347E-05 -1.102794E-02 -1.772767E-05 -9.572498E-03 -1.064449E-05 -1.064989E-02 -1.750406E-05 -6.954816E-03 -6.367916E-06 -7.557762E-03 -9.032801E-06 -1.211805E-02 -1.920718E-05 -1.845178E-02 -5.873218E-05 -7.793790E-03 -1.112683E-05 -5.371627E-03 -5.960823E-06 -1.235046E-02 -2.103259E-05 -9.750089E-03 -1.543672E-05 -8.995748E-03 -1.080595E-05 -5.259436E-03 -1.260414E-05 -4.013446E-03 -6.247425E-06 -8.493091E-03 -1.154191E-05 -8.658736E-03 -1.173196E-05 -5.707568E-03 -4.449143E-06 -6.897118E-03 -1.114446E-05 -1.178625E-02 -1.974305E-05 -9.315402E-03 -1.290580E-05 -8.406166E-03 -1.025434E-05 -9.901055E-03 -1.667960E-05 -1.146925E-02 -2.215717E-05 -5.969641E-03 -6.447141E-06 -5.949865E-03 -8.960001E-06 -6.092588E-03 -5.866966E-06 -5.286804E-03 -4.484612E-06 -4.962451E-03 -8.039594E-06 -9.068920E-03 -1.020218E-05 -8.393955E-03 -1.320876E-05 -9.622928E-03 -1.423650E-05 -8.529527E-03 -9.768501E-06 -1.200903E-02 -2.384159E-05 -1.259390E-02 -2.566463E-05 -1.039659E-02 -1.406860E-05 -1.729423E-02 -3.541882E-05 -1.557253E-02 -3.014897E-05 -1.194539E-02 -2.560525E-05 -9.677750E-03 -1.383701E-05 -1.167374E-02 -1.893076E-05 -1.273338E-02 -2.292756E-05 -1.535190E-02 -3.729267E-05 -1.508233E-02 -2.812628E-05 -1.684483E-02 -3.431291E-05 -2.196642E-02 -6.517979E-05 -1.835655E-02 -4.270904E-05 -1.427403E-02 -2.810685E-05 -1.296891E-02 -3.425248E-05 -1.678523E-02 -5.402550E-05 -1.824967E-02 -5.634714E-05 -1.959838E-02 -4.878209E-05 -1.406357E-02 -2.175952E-05 -1.401524E-02 -2.275436E-05 -1.788740E-02 -3.919852E-05 -1.598923E-02 -2.974737E-05 -1.525101E-02 -3.383079E-05 -2.077298E-02 -5.733559E-05 -1.623945E-02 -5.546589E-05 -1.233338E-02 -2.483742E-05 -2.022717E-02 -5.714772E-05 -2.102155E-02 -5.635658E-05 -2.171802E-02 -5.725283E-05 -2.133014E-02 -5.962681E-05 -1.179614E-02 -2.066294E-05 -1.970629E-02 -4.561315E-05 -2.645275E-02 -9.399736E-05 -2.354050E-02 -6.803919E-05 -1.525552E-02 -2.858970E-05 -2.070256E-02 -5.101418E-05 -1.947053E-02 -4.695688E-05 -2.302697E-02 -7.365548E-05 -1.913354E-02 -4.496174E-05 -2.105937E-02 -5.760147E-05 -1.965231E-02 -4.417453E-05 -1.995841E-02 -5.444455E-05 -1.084572E-02 -1.610270E-05 -1.332954E-02 -2.257737E-05 -2.183162E-02 -5.722081E-05 -2.309396E-02 -6.057606E-05 -9.499018E-03 -1.386623E-05 -1.726231E-02 -3.538973E-05 -1.918548E-02 -5.089001E-05 -1.973649E-02 -5.391374E-05 -1.451999E-02 -3.154997E-05 -1.853969E-02 -4.789122E-05 -1.931149E-02 -4.543759E-05 -1.524463E-02 -3.367646E-05 -1.366351E-02 -2.193771E-05 -1.277601E-02 -2.556554E-05 -2.419813E-02 -6.652057E-05 -2.472332E-02 -7.514840E-05 -1.216343E-02 -1.994778E-05 -1.684175E-02 -4.956582E-05 -1.339179E-02 -2.283730E-05 -1.780869E-02 -4.714950E-05 -1.281070E-02 -3.243018E-05 -1.377308E-02 -3.117101E-05 -5.215885E-03 -4.980057E-06 -8.389167E-03 -9.063809E-06 -9.223056E-03 -1.174158E-05 -1.034179E-02 -1.248975E-05 -1.925913E-02 -6.207101E-05 -1.950035E-02 -4.864558E-05 -7.340878E-03 -8.419462E-06 -1.607559E-02 -3.378180E-05 -1.350363E-02 -2.299601E-05 -1.775362E-02 -4.047509E-05 -9.317817E-03 -1.104227E-05 -1.531705E-02 -4.269706E-05 -1.565342E-02 -3.305222E-05 -1.391485E-02 -2.938257E-05 -1.313236E-02 -2.426377E-05 -1.070285E-02 -1.778239E-05 -1.570769E-02 -2.778648E-05 -1.722250E-02 -3.454670E-05 -1.045335E-02 -1.595923E-05 -9.750797E-03 -1.489157E-05 -8.756572E-03 -1.522794E-05 -1.314662E-02 -2.457130E-05 -1.370416E-02 -3.418084E-05 -1.098248E-02 -2.064375E-05 -9.200090E-03 -1.182484E-05 -1.567874E-02 -3.315221E-05 -6.763240E-03 -8.877038E-06 -8.410342E-03 -8.599497E-06 -1.335894E-02 -2.549323E-05 -1.565848E-02 -3.152726E-05 -4.913273E-03 -5.986876E-06 -9.624242E-03 -1.314215E-05 -7.547191E-03 -9.843029E-06 -9.081341E-03 -1.527721E-05 -5.698591E-03 -6.688189E-06 -9.964477E-03 -1.260472E-05 -9.144787E-03 -1.380216E-05 -2.922066E-03 -3.175247E-06 -6.106620E-03 -6.365824E-06 -4.141014E-03 -5.277155E-06 -1.500883E-02 -2.794044E-05 -1.313811E-02 -2.817445E-05 -5.537395E-03 -6.121500E-06 -6.214355E-03 -7.107250E-06 -9.970886E-03 -1.328943E-05 -1.158117E-02 -2.364707E-05 -8.759169E-03 -1.211573E-05 -1.307338E-02 -2.576745E-05 -6.194517E-03 -9.257741E-06 -8.087970E-03 -1.366458E-05 -8.727779E-03 -1.125895E-05 -7.481614E-03 -9.784879E-06 -7.811272E-03 -1.168412E-05 -7.288542E-03 -8.415727E-06 -1.395237E-02 -3.211289E-05 -1.345304E-02 -2.404425E-05 -1.075854E-02 -1.527000E-05 -9.524531E-03 -1.516407E-05 -1.703097E-02 -3.823359E-05 -1.787871E-02 -5.611642E-05 -1.180236E-02 -1.719343E-05 -1.146997E-02 -2.095613E-05 -1.152446E-02 -1.653464E-05 -1.398187E-02 -2.396242E-05 -1.526339E-02 -3.893414E-05 -1.206190E-02 -2.128747E-05 -1.578188E-02 -3.704679E-05 -1.775426E-02 -3.663474E-05 -1.962916E-02 -5.493244E-05 -1.511991E-02 -3.404611E-05 -1.133202E-02 -2.452193E-05 -1.623663E-02 -3.459453E-05 -1.586922E-02 -3.841963E-05 -1.786175E-02 -4.289114E-05 -1.326353E-02 -2.595816E-05 -1.445145E-02 -2.990583E-05 -1.509105E-02 -2.887493E-05 -1.761108E-02 -3.799916E-05 -1.671644E-02 -3.638132E-05 -1.692226E-02 -3.667379E-05 -1.123264E-02 -2.662808E-05 -1.119900E-02 -1.598286E-05 -1.930512E-02 -4.893797E-05 -2.291023E-02 -7.500981E-05 -1.093046E-02 -2.227226E-05 -2.121672E-02 -7.861749E-05 -9.618950E-03 -1.801199E-05 -1.213716E-02 -2.201469E-05 -1.856853E-02 -4.365656E-05 -1.665627E-02 -3.787320E-05 -1.301603E-02 -3.128189E-05 -1.971201E-02 -6.183556E-05 -2.240750E-02 -7.011853E-05 -2.216291E-02 -6.809313E-05 -1.153008E-02 -2.676316E-05 -1.676451E-02 -4.351892E-05 -2.591571E-02 -8.037903E-05 -2.037389E-02 -4.959375E-05 -1.495140E-02 -2.829832E-05 -1.051363E-02 -2.065167E-05 -1.979307E-02 -5.604015E-05 -2.624329E-02 -8.019430E-05 -1.335982E-02 -2.844614E-05 -1.612983E-02 -6.010017E-05 -1.728825E-02 -4.711910E-05 -2.429057E-02 -7.415431E-05 -1.616100E-02 -3.084388E-05 -1.338558E-02 -3.228322E-05 -1.340928E-02 -3.387569E-05 -1.708924E-02 -4.087477E-05 -1.336049E-02 -2.477778E-05 -1.587999E-02 -3.626669E-05 -1.935273E-02 -4.723278E-05 -2.470520E-02 -7.859676E-05 -1.475079E-02 -3.640394E-05 -1.679996E-02 -3.695619E-05 -1.042709E-02 -1.967458E-05 -1.968690E-02 -5.949834E-05 -1.327946E-02 -2.828789E-05 -2.199912E-02 -6.466489E-05 -1.849493E-02 -3.808605E-05 -1.601814E-02 -3.868414E-05 -8.360208E-03 -8.722194E-06 -1.048244E-02 -1.553938E-05 -1.355191E-02 -3.191766E-05 -2.019710E-02 -5.689596E-05 -1.515848E-02 -3.149152E-05 -2.234350E-02 -6.679195E-05 -2.213825E-02 -7.381934E-05 -1.917888E-02 -4.731955E-05 -1.084756E-02 -1.986509E-05 -1.609220E-02 -3.078859E-05 -1.473280E-02 -3.933279E-05 -1.529880E-02 -3.127194E-05 -1.639564E-02 -4.529775E-05 -1.443123E-02 -3.075459E-05 -1.882187E-02 -5.273612E-05 -1.460498E-02 -3.301670E-05 -1.236974E-02 -2.302425E-05 -1.547979E-02 -5.040930E-05 -8.943072E-03 -1.146125E-05 -1.038577E-02 -2.359524E-05 -9.957494E-03 -1.246302E-05 -8.165810E-03 -1.286712E-05 -9.730475E-03 -1.696051E-05 -1.144342E-02 -1.696256E-05 -1.018757E-02 -1.502940E-05 -6.455273E-03 -6.892868E-06 -1.173241E-02 -1.925350E-05 -1.116334E-02 -1.482619E-05 -5.399877E-03 -4.405606E-06 -3.959202E-03 -4.471062E-06 -9.736729E-03 -1.616042E-05 -4.414460E-03 -5.308331E-06 -5.659090E-03 -4.225962E-06 -4.260578E-03 -3.519428E-06 -1.063057E-02 -2.671737E-05 -9.252412E-03 -1.335948E-05 -7.509662E-03 -1.033233E-05 -5.631650E-03 -4.603917E-06 -7.374915E-03 -9.613999E-06 -1.017301E-02 -1.890382E-05 -4.657208E-03 -4.110749E-06 -8.263045E-03 -9.144029E-06 -5.083557E-03 -3.617645E-06 -5.753770E-03 -6.399330E-06 -3.157208E-03 -2.023717E-06 -2.929392E-03 -1.415512E-06 -3.306531E-03 -3.326325E-06 -7.308585E-03 -7.051788E-06 -2.131441E-03 -3.159885E-06 -6.056253E-03 -6.146480E-06 -3.197345E-03 -1.906328E-06 -7.156591E-03 -8.158604E-06 -1.008394E-02 -1.612226E-05 -1.360120E-02 -3.007127E-05 -1.087460E-02 -1.978085E-05 -8.751267E-03 -1.202395E-05 -1.327913E-02 -2.254308E-05 -1.549315E-02 -3.493369E-05 -1.276663E-02 -2.254426E-05 -1.422943E-02 -3.266120E-05 -7.543284E-03 -8.425611E-06 -1.148895E-02 -2.316672E-05 -1.075957E-02 -1.733122E-05 -1.228568E-02 -2.274310E-05 -1.298949E-02 -3.103013E-05 -1.687551E-02 -3.373288E-05 -1.174671E-02 -1.478816E-05 -1.298113E-02 -2.280689E-05 -1.375075E-02 -3.564635E-05 -1.865407E-02 -4.650386E-05 -1.316565E-02 -3.034949E-05 -1.644195E-02 -3.039939E-05 -1.167304E-02 -1.910205E-05 -1.119646E-02 -2.041134E-05 -2.051982E-02 -5.295597E-05 -1.446398E-02 -2.483661E-05 -1.663221E-02 -4.310298E-05 -1.774865E-02 -3.613160E-05 -1.551828E-02 -3.922463E-05 -1.987068E-02 -5.088653E-05 -1.111420E-02 -2.006407E-05 -1.756540E-02 -4.468660E-05 -1.151848E-02 -1.953188E-05 -1.430522E-02 -3.322674E-05 -8.678157E-03 -1.516243E-05 -1.189921E-02 -1.954174E-05 -1.667314E-02 -5.548567E-05 -2.197194E-02 -6.943126E-05 -2.047457E-02 -4.730016E-05 -2.145796E-02 -5.503501E-05 -1.433861E-02 -3.407856E-05 -1.789249E-02 -4.132722E-05 -1.497597E-02 -3.790603E-05 -1.784518E-02 -5.989398E-05 -1.348223E-02 -2.451114E-05 -1.850761E-02 -4.354345E-05 -9.460668E-03 -1.235477E-05 -1.608153E-02 -3.627464E-05 -2.158938E-02 -7.192126E-05 -2.591114E-02 -7.881538E-05 -1.615323E-02 -3.735540E-05 -1.456875E-02 -2.959443E-05 -1.713879E-02 -3.971707E-05 -2.011125E-02 -5.426015E-05 -1.600843E-02 -3.860238E-05 -2.349989E-02 -6.721393E-05 -9.675390E-03 -1.720621E-05 -1.321534E-02 -2.201319E-05 -1.388877E-02 -3.752647E-05 -9.338560E-03 -1.222660E-05 -1.872993E-02 -4.179060E-05 -1.729197E-02 -4.763909E-05 -1.433923E-02 -3.648874E-05 -1.982945E-02 -5.208569E-05 -9.529878E-03 -1.355652E-05 -1.902053E-02 -4.097824E-05 -9.167842E-03 -1.041942E-05 -1.571952E-02 -4.188405E-05 -9.716564E-03 -2.414735E-05 -1.423573E-02 -3.524484E-05 -1.148788E-02 -2.604718E-05 -1.545038E-02 -3.289072E-05 -1.724229E-02 -4.091912E-05 -2.114484E-02 -5.448881E-05 -1.201008E-02 -1.761314E-05 -1.049205E-02 -1.851795E-05 -1.007470E-02 -1.508850E-05 -1.216162E-02 -1.779226E-05 -9.172443E-03 -1.542767E-05 -1.158129E-02 -2.700118E-05 -8.634939E-03 -1.235312E-05 -9.968731E-03 -1.636632E-05 -8.806160E-03 -1.312756E-05 -7.282738E-03 -7.675380E-06 -1.501313E-02 -3.403794E-05 -1.772683E-02 -3.946856E-05 -6.797082E-03 -6.826066E-06 -6.203754E-03 -6.576663E-06 -1.255269E-02 -2.273841E-05 -9.325891E-03 -1.968887E-05 -5.665941E-03 -7.672343E-06 -9.482040E-03 -1.321433E-05 -5.895438E-03 -7.290209E-06 -4.028986E-03 -3.562047E-06 -9.179212E-03 -1.479180E-05 -5.065510E-03 -7.876080E-06 -9.623638E-03 -1.331451E-05 -8.243023E-03 -1.155595E-05 -6.785547E-03 -8.869686E-06 -6.830346E-03 -6.869962E-06 -5.952624E-03 -7.591589E-06 -1.262730E-02 -2.795731E-05 -7.222793E-03 -7.969191E-06 -7.364474E-03 -9.912407E-06 -4.073203E-03 -3.221529E-06 -6.307497E-03 -8.387738E-06 -6.770719E-03 -9.965921E-06 -7.935928E-03 -9.247514E-06 -8.991810E-03 -1.001059E-05 -5.746536E-03 -5.204627E-06 -4.632325E-03 -3.055561E-06 -7.410656E-03 -9.676112E-06 -7.030579E-03 -9.078592E-06 -9.940893E-03 -2.033444E-05 -4.593423E-03 -3.918985E-06 -3.958315E-03 -2.344423E-06 -4.956734E-03 -6.309001E-06 -7.499601E-03 -8.403664E-06 -4.748645E-03 -4.199540E-06 -5.390021E-03 -5.915551E-06 -8.712210E-03 -1.738886E-05 -8.103852E-03 -9.180564E-06 -1.025459E-02 -1.310828E-05 -1.184291E-02 -1.833442E-05 -5.755536E-03 -5.404194E-06 -8.221201E-03 -9.335727E-06 -9.828395E-03 -1.545245E-05 -1.152575E-02 -1.759013E-05 -5.829495E-03 -7.232703E-06 -1.218356E-02 -2.664254E-05 -6.170466E-03 -7.308485E-06 -7.313197E-03 -7.829261E-06 -1.367693E-02 -3.155396E-05 -1.355349E-02 -2.093247E-05 -1.169703E-02 -1.533618E-05 -1.225998E-02 -3.530234E-05 -1.125463E-02 -1.795265E-05 -9.696736E-03 -1.412411E-05 -1.093214E-02 -1.673039E-05 -1.278387E-02 -2.130505E-05 -8.880561E-03 -1.364130E-05 -1.181523E-02 -1.870304E-05 -9.189492E-03 -1.453491E-05 -9.455271E-03 -1.423365E-05 -1.776658E-02 -4.257355E-05 -1.296514E-02 -2.121667E-05 -1.003865E-02 -1.487795E-05 -1.359312E-02 -2.765495E-05 -1.162264E-02 -2.140342E-05 -1.033131E-02 -1.304998E-05 -1.542205E-02 -3.650649E-05 -1.535565E-02 -3.683101E-05 -9.763595E-03 -1.309061E-05 -1.726548E-02 -4.632789E-05 -1.043992E-02 -1.651951E-05 -6.110039E-03 -6.694762E-06 -1.985635E-02 -6.510789E-05 -8.438493E-03 -9.248252E-06 -1.851818E-02 -4.904640E-05 -1.995254E-02 -5.020531E-05 -1.335907E-02 -2.466345E-05 -1.649899E-02 -3.318908E-05 -1.452837E-02 -3.635670E-05 -1.935287E-02 -5.575704E-05 -1.319131E-02 -2.791021E-05 -1.492064E-02 -3.073511E-05 -1.131605E-02 -2.493004E-05 -1.462680E-02 -2.849063E-05 -1.962759E-02 -5.083607E-05 -1.701425E-02 -4.167266E-05 -7.965972E-03 -1.229258E-05 -1.458100E-02 -2.718206E-05 -1.026138E-02 -2.113714E-05 -1.308429E-02 -2.003268E-05 -9.038340E-03 -9.340773E-06 -1.586616E-02 -3.218048E-05 -6.515114E-03 -9.139171E-06 -1.003265E-02 -1.250538E-05 -7.477346E-03 -9.170786E-06 -8.376990E-03 -1.161182E-05 -1.829624E-02 -3.702430E-05 -1.569831E-02 -2.881524E-05 -1.105450E-02 -2.103495E-05 -1.042629E-02 -1.723138E-05 -9.998085E-03 -1.227071E-05 -1.516738E-02 -3.324549E-05 -1.090125E-02 -1.985519E-05 -1.432278E-02 -3.386798E-05 -8.418229E-03 -1.050672E-05 -1.108353E-02 -1.739127E-05 -7.787352E-03 -1.084467E-05 -6.757477E-03 -8.314301E-06 -1.266965E-02 -2.014700E-05 -1.223368E-02 -1.816810E-05 -1.000405E-02 -2.132755E-05 -1.260170E-02 -2.392494E-05 -9.344763E-03 -1.208588E-05 -1.243003E-02 -2.215004E-05 -8.842577E-03 -1.468191E-05 -1.171609E-02 -2.634512E-05 -7.361574E-03 -1.005220E-05 -4.937175E-03 -3.421412E-06 -8.801345E-03 -1.258402E-05 -8.660082E-03 -1.317890E-05 -1.066110E-02 -2.285362E-05 -8.182265E-03 -1.352232E-05 -1.194368E-02 -2.542532E-05 -5.247990E-03 -7.113477E-06 -1.329855E-02 -2.805232E-05 -1.667204E-02 -4.715717E-05 -5.516192E-03 -4.861602E-06 -8.032885E-03 -9.526962E-06 -8.923177E-03 -1.221885E-05 -7.273785E-03 -7.646285E-06 -9.997748E-03 -1.389196E-05 -1.049460E-02 -1.325998E-05 -1.231591E-02 -1.779583E-05 -1.187687E-02 -1.777669E-05 -4.027367E-03 -5.095043E-06 -5.883273E-03 -1.010000E-05 -5.881059E-03 -5.701541E-06 -6.065490E-03 -8.604636E-06 -1.853273E-03 -1.189336E-06 -4.775189E-03 -6.494172E-06 -4.633358E-03 -4.183400E-06 -4.180683E-03 -5.129026E-06 -4.541541E-03 -5.646520E-06 -7.074233E-04 -2.834238E-07 -2.724695E-03 -2.217855E-06 -1.700068E-03 -8.357081E-07 -3.833078E-03 -2.656428E-06 -6.572586E-03 -8.866295E-06 -5.292952E-03 -3.867444E-06 -3.517788E-03 -2.530088E-06 -2.740599E-03 -2.004521E-06 -5.438345E-03 -8.165786E-06 -3.641025E-03 -3.113878E-06 -4.966383E-03 -7.623277E-06 -3.292270E-03 -2.722033E-06 -4.468651E-03 -5.017784E-06 -2.625164E-03 -1.543702E-06 -3.246447E-03 -2.141940E-06 -6.765655E-03 -9.017921E-06 -6.472797E-03 -5.971218E-06 -5.166553E-03 -3.916196E-06 -4.715011E-03 -4.421483E-06 -8.868545E-03 -1.033407E-05 -9.454655E-03 -1.287272E-05 -7.378309E-03 -9.793455E-06 -8.294983E-03 -1.242029E-05 -9.030433E-03 -1.660734E-05 -5.691832E-03 -4.629989E-06 -6.844709E-03 -1.039079E-05 -6.076908E-03 -6.364980E-06 -1.018307E-02 -1.478904E-05 -8.398207E-03 -1.353213E-05 -1.038657E-02 -1.650576E-05 -1.318384E-02 -2.408888E-05 -8.015055E-03 -1.126916E-05 -1.030145E-02 -1.582573E-05 -6.890267E-03 -8.319222E-06 -7.150937E-03 -7.850470E-06 -4.889144E-03 -3.720968E-06 -8.323465E-03 -1.115383E-05 -9.054557E-03 -1.439423E-05 -1.406749E-02 -2.792472E-05 -1.188336E-02 -2.280525E-05 -1.029778E-02 -1.535135E-05 -6.586615E-03 -8.689373E-06 -6.989279E-03 -6.602524E-06 -8.696264E-03 -1.699910E-05 -1.215054E-02 -1.809626E-05 -9.660496E-03 -1.576109E-05 -6.998390E-03 -6.984012E-06 -4.566410E-03 -4.700686E-06 -7.914312E-03 -8.046281E-06 -1.119024E-02 -1.682956E-05 -8.557711E-03 -1.169180E-05 -1.116108E-02 -2.002096E-05 -1.596243E-02 -3.319159E-05 -1.417800E-02 -2.698476E-05 -1.370714E-02 -3.345511E-05 -6.571905E-03 -1.170061E-05 -9.528663E-03 -1.906413E-05 -1.285473E-02 -1.987588E-05 -1.051645E-02 -2.095546E-05 -6.496841E-03 -6.085712E-06 -1.535496E-02 -3.318420E-05 -1.422914E-02 -2.578886E-05 -1.481483E-02 -2.681040E-05 -3.973095E-03 -3.122718E-06 -1.132021E-02 -1.735904E-05 -3.004322E-03 -4.387582E-06 -7.360833E-03 -1.310893E-05 -1.047617E-02 -1.750773E-05 -1.122781E-02 -2.131611E-05 -5.694910E-03 -7.234627E-06 -7.668968E-03 -8.067750E-06 -4.449311E-03 -4.768775E-06 -3.787286E-03 -2.624668E-06 -1.002060E-02 -1.749285E-05 -1.395365E-02 -2.967710E-05 -8.499007E-03 -1.449296E-05 -9.187712E-03 -1.502460E-05 -9.842313E-03 -1.218596E-05 -1.196667E-02 -1.597317E-05 -9.851299E-03 -1.503088E-05 -7.735045E-03 -9.286037E-06 -1.079491E-02 -1.766380E-05 -1.091930E-02 -1.648255E-05 -1.108268E-02 -1.578770E-05 -8.120340E-03 -1.291411E-05 -1.246096E-02 -2.528446E-05 -1.202701E-02 -1.816947E-05 -8.319659E-03 -1.340429E-05 -6.275166E-03 -6.982397E-06 -9.030250E-03 -1.174300E-05 -8.187094E-03 -1.235622E-05 -5.549210E-03 -5.420156E-06 -6.789734E-03 -7.904257E-06 -4.425697E-03 -3.919582E-06 -6.512926E-03 -7.118649E-06 -6.535547E-03 -1.403886E-05 -7.543231E-03 -1.205568E-05 -7.377749E-03 -1.142071E-05 -6.797258E-03 -7.523771E-06 -7.181352E-03 -8.290755E-06 -7.045510E-03 -1.013770E-05 -8.236912E-03 -1.265044E-05 -7.857392E-03 -1.143180E-05 -2.604005E-03 -2.317099E-06 -6.968220E-03 -1.347326E-05 -6.200344E-03 -7.619475E-06 -6.667622E-03 -1.088132E-05 -2.645846E-03 -1.854304E-06 -5.207931E-03 -4.574122E-06 -5.239891E-03 -5.012226E-06 -9.605662E-03 -1.784435E-05 -4.891233E-03 -6.117222E-06 -6.504651E-03 -1.229520E-05 -4.837232E-03 -6.126627E-06 -5.744494E-03 -9.825890E-06 -4.153989E-03 -5.541638E-06 -2.163062E-03 -2.727406E-06 -7.562241E-03 -1.683819E-05 -4.906111E-03 -7.696070E-06 -4.582205E-03 -7.559853E-06 -4.360889E-03 -6.753941E-06 -2.573412E-03 -2.074263E-06 -7.341817E-03 -1.510923E-05 -1.348516E-04 -1.818494E-08 -2.140265E-03 -2.186708E-06 -5.132621E-03 -6.802003E-06 -3.951538E-03 -5.966124E-06 -3.677707E-03 -4.225767E-06 -1.976184E-03 -9.056492E-07 -4.382040E-04 -1.920227E-07 -1.818577E-03 -1.643089E-06 -1.584983E-03 -1.096049E-06 -3.083453E-03 -3.167381E-06 -2.957748E-03 -3.417374E-06 -4.181554E-03 -3.122268E-06 -8.205844E-03 -1.339216E-05 -8.373927E-03 -1.673225E-05 -4.491527E-03 -6.082578E-06 -6.731608E-03 -1.117129E-05 -4.850830E-03 -4.259080E-06 -7.231407E-03 -8.438356E-06 -5.959383E-03 -1.199394E-05 -8.812537E-03 -1.137742E-05 -5.064971E-03 -5.265762E-06 -6.088263E-03 -5.366214E-06 -1.231967E-02 -2.529922E-05 -6.664708E-03 -6.756574E-06 -7.146824E-03 -6.992158E-06 -7.597362E-03 -8.315013E-06 -8.302133E-03 -1.025085E-05 -7.908279E-03 -8.283137E-06 -4.910695E-03 -4.757721E-06 -7.465751E-03 -1.337654E-05 -6.657558E-03 -7.888053E-06 -5.401779E-03 -5.483988E-06 -3.267001E-03 -2.915272E-06 -6.045569E-03 -6.294647E-06 -1.070370E-02 -1.951887E-05 -7.552609E-03 -7.432950E-06 -8.877234E-03 -1.068410E-05 -1.075436E-02 -1.493748E-05 -5.659998E-03 -5.370515E-06 -8.655450E-03 -1.139402E-05 -6.300286E-03 -8.630445E-06 -8.360752E-03 -1.357159E-05 -5.594374E-03 -5.201663E-06 -5.933381E-03 -5.223719E-06 -5.436755E-03 -5.337268E-06 -5.498344E-03 -4.605588E-06 -1.006944E-02 -1.688863E-05 -6.917860E-03 -8.432437E-06 -1.165526E-02 -1.802342E-05 -1.077532E-02 -2.444899E-05 -4.239569E-03 -2.886382E-06 -6.796744E-03 -5.792939E-06 -6.662910E-03 -5.729331E-06 -7.255977E-03 -1.065759E-05 -2.894086E-03 -1.903304E-06 -6.311066E-03 -4.912946E-06 -1.099018E-02 -2.054283E-05 -7.241143E-03 -7.442478E-06 -4.567091E-03 -3.071464E-06 -6.773593E-03 -5.905000E-06 -8.327525E-03 -9.451448E-06 -1.069359E-02 -1.514720E-05 -3.670959E-03 -3.304885E-06 -9.124065E-03 -1.471763E-05 -3.861446E-03 -3.151454E-06 -6.221877E-03 -1.027786E-05 -5.254419E-03 -6.135711E-06 -7.702917E-03 -1.051860E-05 -5.115541E-03 -6.357416E-06 -5.321924E-03 -4.501815E-06 -7.639895E-03 -1.792277E-05 -5.676732E-03 -4.933198E-06 -7.917058E-03 -1.103359E-05 -6.987672E-03 -8.124731E-06 -7.605775E-03 -1.154995E-05 -1.077244E-02 -2.439257E-05 -5.513601E-03 -7.937817E-06 -8.315505E-03 -9.181773E-06 -5.719492E-03 -6.912423E-06 -4.809607E-03 -6.393160E-06 -5.490138E-03 -6.557157E-06 -2.585724E-03 -1.337147E-06 -3.578006E-03 -2.074822E-06 -6.644166E-03 -9.849481E-06 -5.073345E-03 -6.101950E-06 -8.583604E-03 -1.928242E-05 -6.278182E-03 -8.352587E-06 -7.476949E-03 -1.201282E-05 -4.477112E-03 -4.894391E-06 -9.059255E-03 -1.429652E-05 -3.030949E-03 -1.590060E-06 -5.686827E-03 -5.262592E-06 -4.734421E-03 -6.896077E-06 -2.912353E-03 -1.875480E-06 -6.517175E-03 -6.330268E-06 -9.203829E-03 -1.181214E-05 -5.012765E-03 -5.129300E-06 -7.823830E-03 -1.330136E-05 -5.110174E-03 -4.376566E-06 -7.379964E-03 -8.333357E-06 -5.468869E-03 -6.083600E-06 -7.519458E-03 -1.048700E-05 -4.611391E-03 -3.814525E-06 -7.062996E-03 -1.181993E-05 -3.837864E-03 -3.789477E-06 -6.759816E-03 -8.026354E-06 -5.672758E-03 -4.924437E-06 -8.864970E-03 -1.097704E-05 -5.305515E-03 -6.789690E-06 -4.264513E-03 -5.260234E-06 -5.512145E-03 -8.119123E-06 -5.053780E-03 -5.404719E-06 -7.029594E-03 -9.741504E-06 -2.374002E-03 -1.449069E-06 -2.256464E-03 -1.391425E-06 -4.548643E-03 -7.978885E-06 -2.810872E-03 -2.456200E-06 -4.084882E-03 -6.257623E-06 -6.517591E-03 -9.674764E-06 -6.200630E-03 -9.438817E-06 -2.745907E-03 -1.809511E-06 -3.972065E-03 -3.245352E-06 -5.942817E-03 -7.352165E-06 -3.263414E-03 -3.353913E-06 -8.153438E-03 -1.079966E-05 -7.165596E-03 -1.017019E-05 -4.251216E-03 -2.817736E-06 -8.011851E-03 -1.068301E-05 -9.752890E-04 -7.589177E-07 -3.469946E-03 -2.493177E-06 -6.811986E-03 -8.722919E-06 -5.394586E-03 -6.424939E-06 -5.872081E-03 -8.499852E-06 -8.818832E-03 -1.189657E-05 -7.866284E-03 -8.632785E-06 -8.116334E-03 -1.347044E-05 -2.423674E-03 -2.219673E-06 -7.457717E-03 -9.186735E-06 -6.773921E-03 -1.764821E-05 -6.930098E-03 -1.011624E-05 -8.618704E-03 -1.022187E-05 -1.184609E-02 -2.438262E-05 -8.878289E-03 -1.326793E-05 -5.073855E-03 -4.038299E-06 -9.760737E-03 -1.548967E-05 -7.965991E-03 -1.151518E-05 -5.975862E-03 -1.006202E-05 -7.122347E-03 -8.079230E-06 -7.180618E-03 -7.951754E-06 -5.027224E-03 -6.787710E-06 -1.109603E-02 -1.848734E-05 -1.295024E-02 -3.036716E-05 -8.023705E-03 -8.286741E-06 -1.144577E-02 -2.665312E-05 -1.019084E-02 -1.881473E-05 -1.361484E-02 -2.576942E-05 -9.013737E-03 -1.466391E-05 -1.147532E-02 -2.462687E-05 -1.225257E-02 -2.181790E-05 -8.159645E-03 -1.259135E-05 -4.127139E-03 -2.557351E-06 -5.325669E-03 -6.365360E-06 -1.347774E-02 -2.661460E-05 -7.265261E-03 -1.252096E-05 -1.373140E-02 -2.385999E-05 -1.262611E-02 -2.245356E-05 -9.465554E-03 -2.262286E-05 -8.452943E-03 -1.155915E-05 -4.998547E-03 -7.068774E-06 -7.648621E-03 -9.105026E-06 -9.203837E-03 -1.311626E-05 -1.107019E-02 -1.950577E-05 -1.315936E-02 -2.410764E-05 -7.844275E-03 -9.659512E-06 -9.825100E-03 -1.724414E-05 -1.047811E-02 -1.262306E-05 -1.207238E-02 -2.752816E-05 -1.085843E-02 -1.470096E-05 -1.594894E-02 -4.046810E-05 -1.497569E-02 -2.863883E-05 -1.030144E-02 -2.348225E-05 -6.125370E-03 -7.226790E-06 -1.405421E-02 -4.764046E-05 -1.625035E-02 -3.353624E-05 -9.577818E-03 -1.794568E-05 -1.448263E-02 -2.770743E-05 -1.029916E-02 -1.861537E-05 -9.183850E-03 -1.591847E-05 -9.237708E-03 -1.576843E-05 -1.079813E-02 -1.581077E-05 -1.260676E-02 -3.554547E-05 -2.054039E-02 -5.879657E-05 -7.345172E-03 -8.644617E-06 -9.151035E-03 -1.651766E-05 -1.271524E-02 -2.302768E-05 -1.487615E-02 -3.960752E-05 -7.259983E-03 -1.107807E-05 -5.855371E-03 -4.857225E-06 -7.570428E-03 -9.406879E-06 -5.643592E-03 -7.265176E-06 -1.113252E-02 -1.652636E-05 -1.101056E-02 -1.732233E-05 -7.781992E-03 -7.475792E-06 -1.014997E-02 -1.698223E-05 -7.547933E-03 -1.219150E-05 -4.922153E-03 -4.916764E-06 -6.063790E-03 -7.031316E-06 -8.119766E-03 -1.484039E-05 -5.084706E-03 -4.983059E-06 -5.431730E-03 -5.048229E-06 -8.720640E-03 -1.061184E-05 -8.480299E-03 -1.325453E-05 -1.209019E-02 -2.053697E-05 -1.028370E-02 -2.394843E-05 -8.037695E-03 -1.000534E-05 -9.075446E-03 -1.720138E-05 -5.348851E-03 -5.241839E-06 -6.061215E-03 -7.799859E-06 -9.501216E-03 -1.498369E-05 -1.649742E-02 -3.974159E-05 -8.337027E-03 -1.677761E-05 -1.156020E-02 -1.673947E-05 -1.046774E-02 -2.653737E-05 -7.675581E-03 -8.456541E-06 -9.617224E-03 -1.794211E-05 -1.268842E-02 -2.897864E-05 -9.844835E-03 -1.818849E-05 -9.330947E-03 -1.549578E-05 -5.838065E-03 -7.948493E-06 -8.798788E-03 -1.342636E-05 -9.306629E-03 -1.318598E-05 -4.920602E-03 -4.823960E-06 -1.710686E-03 -7.729255E-07 -2.859179E-03 -1.745176E-06 -4.456373E-03 -4.366517E-06 -2.395798E-03 -1.736746E-06 -7.027745E-03 -1.682294E-05 -4.030298E-03 -4.530935E-06 -2.803361E-03 -2.792072E-06 -6.688412E-03 -1.091671E-05 -7.703157E-03 -8.772855E-06 -4.949493E-03 -3.982137E-06 -7.365244E-03 -1.073387E-05 -9.386372E-03 -1.134513E-05 -9.003757E-03 -1.332391E-05 -7.974051E-03 -1.354602E-05 -1.137434E-02 -1.857838E-05 -1.143520E-02 -2.117358E-05 -3.030499E-03 -2.165815E-06 -4.867784E-03 -3.911154E-06 -5.246175E-03 -6.161091E-06 -5.832426E-03 -5.525543E-06 -7.382520E-03 -9.067048E-06 -1.188676E-02 -1.778783E-05 -1.199313E-02 -2.082141E-05 -1.266957E-02 -1.962424E-05 -1.533876E-02 -3.337162E-05 -7.389726E-03 -1.341338E-05 -7.529503E-03 -1.564696E-05 -1.491955E-02 -2.945644E-05 -1.074068E-02 -1.373117E-05 -1.472706E-02 -3.572507E-05 -1.199986E-02 -3.422317E-05 -8.514133E-03 -1.135618E-05 -1.634996E-02 -4.087320E-05 -1.955740E-02 -5.492009E-05 -1.126909E-02 -1.541148E-05 -1.586435E-02 -3.446303E-05 -1.700178E-02 -4.898376E-05 -1.703540E-02 -3.720395E-05 -1.967755E-02 -4.525544E-05 -1.330271E-02 -2.702604E-05 -1.888903E-02 -4.979443E-05 -2.004837E-02 -5.083025E-05 -1.435878E-02 -3.285995E-05 -1.930301E-02 -5.509308E-05 -1.628120E-02 -3.580789E-05 -1.727344E-02 -4.342335E-05 -1.216615E-02 -1.983233E-05 -1.700189E-02 -4.670523E-05 -1.269439E-02 -2.172602E-05 -2.010215E-02 -5.553642E-05 -2.319103E-02 -6.565091E-05 -1.414047E-02 -3.346494E-05 -2.027618E-02 -5.626720E-05 -1.646954E-02 -3.312557E-05 -2.251086E-02 -5.995831E-05 -1.610985E-02 -3.156849E-05 -1.377020E-02 -2.853634E-05 -1.669701E-02 -3.307612E-05 -1.159986E-02 -1.816147E-05 -1.261975E-02 -1.769023E-05 -2.134097E-02 -5.752884E-05 -1.841902E-02 -4.295167E-05 -2.422207E-02 -7.083744E-05 -1.543392E-02 -4.221173E-05 -2.157215E-02 -6.548409E-05 -2.644384E-02 -8.410907E-05 -2.311629E-02 -6.681868E-05 -2.395484E-02 -6.437514E-05 -1.922089E-02 -4.174544E-05 -1.663494E-02 -3.328109E-05 -9.964643E-03 -1.255907E-05 -1.150794E-02 -1.961340E-05 -1.939308E-02 -4.712734E-05 -1.787616E-02 -4.675712E-05 -2.319516E-02 -6.969066E-05 -1.741640E-02 -5.935363E-05 -1.789596E-02 -4.474293E-05 -2.512717E-02 -7.989830E-05 -1.220933E-02 -1.607761E-05 -1.359674E-02 -2.403775E-05 -1.590621E-02 -4.874402E-05 -1.664365E-02 -3.902009E-05 -1.028716E-02 -1.812738E-05 -1.543365E-02 -3.451753E-05 -1.719718E-02 -5.881162E-05 -1.666983E-02 -4.833689E-05 -1.586040E-02 -3.290082E-05 -1.592280E-02 -2.852261E-05 -2.560930E-02 -8.694469E-05 -2.095050E-02 -5.412080E-05 -1.939382E-02 -4.569593E-05 -1.830391E-02 -4.667520E-05 -1.549161E-02 -4.356136E-05 -1.284248E-02 -2.163546E-05 -1.082843E-02 -1.936706E-05 -1.108300E-02 -2.032165E-05 -1.963227E-02 -5.789246E-05 -1.883825E-02 -5.273957E-05 -1.630332E-02 -3.434978E-05 -1.574688E-02 -3.564693E-05 -1.794394E-02 -3.918955E-05 -2.060232E-02 -5.819679E-05 -1.732204E-02 -4.346625E-05 -1.922985E-02 -4.636825E-05 -1.116057E-02 -1.992936E-05 -1.216817E-02 -1.947069E-05 -8.811885E-03 -1.441275E-05 -1.603072E-02 -3.965729E-05 -1.459394E-02 -2.864759E-05 -1.150127E-02 -2.431776E-05 -1.146459E-02 -2.593052E-05 -1.120930E-02 -2.027939E-05 -1.077685E-02 -1.909421E-05 -1.564605E-02 -5.177856E-05 -1.438847E-02 -2.596269E-05 -1.575101E-02 -2.945546E-05 -5.164090E-03 -4.380072E-06 -5.313984E-03 -4.984595E-06 -3.270078E-03 -3.714857E-06 -4.763025E-03 -5.471147E-06 -5.854797E-03 -4.013420E-06 -7.497916E-03 -9.530633E-06 -4.307122E-03 -4.511481E-06 -2.673595E-03 -1.496751E-06 -7.668976E-03 -1.208726E-05 -6.666645E-03 -9.107345E-06 -4.278473E-03 -3.613729E-06 -5.196607E-03 -6.165915E-06 -9.012663E-03 -1.072065E-05 -7.125950E-03 -1.021884E-05 -1.110525E-02 -1.609758E-05 -6.452393E-03 -6.522408E-06 -1.614916E-02 -2.933964E-05 -1.252957E-02 -2.095707E-05 -9.931672E-03 -1.358529E-05 -1.307449E-02 -2.442977E-05 -5.859693E-03 -6.187229E-06 -6.811267E-03 -6.011900E-06 -1.636036E-02 -4.227062E-05 -9.529154E-03 -1.673527E-05 -9.884570E-03 -1.607810E-05 -1.162560E-02 -2.293323E-05 -6.582499E-03 -8.254458E-06 -1.846807E-02 -3.840513E-05 -9.921319E-03 -1.528378E-05 -1.451278E-02 -3.842835E-05 -1.536970E-02 -4.453795E-05 -1.597714E-02 -3.763051E-05 -1.416499E-02 -2.488034E-05 -1.579940E-02 -3.618366E-05 -1.729494E-02 -4.587947E-05 -1.591255E-02 -3.608980E-05 -1.155321E-02 -2.053226E-05 -1.599423E-02 -3.545225E-05 -1.125966E-02 -2.267289E-05 -2.172447E-02 -5.857701E-05 -1.372075E-02 -3.321713E-05 -1.816373E-02 -4.485596E-05 -1.857039E-02 -4.872304E-05 -1.742011E-02 -3.730490E-05 -1.568977E-02 -3.029088E-05 -2.829373E-02 -1.168965E-04 -2.157357E-02 -7.579178E-05 -2.125484E-02 -6.473902E-05 -2.196378E-02 -7.339057E-05 -1.819373E-02 -4.494748E-05 -2.152003E-02 -5.928285E-05 -1.856070E-02 -4.410267E-05 -2.207371E-02 -6.449028E-05 -2.386394E-02 -6.969242E-05 -2.457216E-02 -1.102599E-04 -2.058268E-02 -5.017858E-05 -1.907854E-02 -4.286270E-05 -2.340706E-02 -8.278475E-05 -2.388190E-02 -6.533857E-05 -2.860789E-02 -9.992731E-05 -1.998933E-02 -5.361464E-05 -2.707938E-02 -9.662902E-05 -2.019340E-02 -5.415561E-05 -3.109482E-02 -1.022004E-04 -2.253924E-02 -7.055172E-05 -2.374030E-02 -6.831307E-05 -2.529035E-02 -8.295294E-05 -2.739289E-02 -8.546620E-05 -2.273185E-02 -6.442166E-05 -2.785353E-02 -8.812366E-05 -3.191849E-02 -1.234987E-04 -2.739246E-02 -9.446447E-05 -1.372157E-02 -2.877717E-05 -1.714263E-02 -4.531432E-05 -1.958677E-02 -4.920099E-05 -1.932218E-02 -4.756040E-05 -1.938252E-02 -5.565524E-05 -2.128472E-02 -6.581062E-05 -1.818983E-02 -4.440473E-05 -2.522476E-02 -9.504815E-05 -2.108060E-02 -6.460391E-05 -2.301325E-02 -6.325908E-05 -2.425505E-02 -7.889282E-05 -2.312674E-02 -8.098059E-05 -1.450662E-02 -3.120847E-05 -1.518342E-02 -2.854939E-05 -2.375891E-02 -6.170759E-05 -2.191567E-02 -5.656277E-05 -1.717224E-02 -4.219605E-05 -1.584923E-02 -2.801671E-05 -2.292044E-02 -6.761182E-05 -2.565035E-02 -9.677221E-05 -1.979804E-02 -4.912546E-05 -2.534051E-02 -8.007940E-05 -3.425993E-02 -1.487128E-04 -2.139063E-02 -5.051176E-05 -1.422774E-02 -2.343122E-05 -2.541660E-02 -8.204787E-05 -1.717071E-02 -3.842694E-05 -1.456931E-02 -2.599937E-05 -2.407397E-02 -7.826348E-05 -2.982739E-02 -1.099192E-04 -1.812330E-02 -4.520557E-05 -1.506065E-02 -3.120742E-05 -1.957887E-02 -5.130992E-05 -2.577824E-02 -8.648590E-05 -1.959134E-02 -6.907548E-05 -2.361937E-02 -6.849830E-05 -1.277061E-02 -2.340598E-05 -1.244142E-02 -2.267140E-05 -9.333247E-03 -1.041879E-05 -7.908182E-03 -9.293981E-06 -1.463279E-02 -3.362978E-05 -1.366375E-02 -2.733021E-05 -1.213165E-02 -1.941620E-05 -1.142127E-02 -1.911366E-05 -1.101989E-02 -1.602290E-05 -1.634784E-02 -3.444363E-05 -1.399007E-02 -2.474094E-05 -1.355244E-02 -2.255801E-05 -8.699738E-03 -1.229441E-05 -6.242338E-03 -7.967030E-06 -1.101667E-02 -2.565058E-05 -8.204914E-03 -1.826875E-05 -1.073981E-02 -1.693632E-05 -1.272259E-02 -2.077325E-05 -3.495009E-03 -2.520678E-06 -8.225887E-03 -1.254359E-05 -1.009530E-02 -1.562680E-05 -1.178865E-02 -2.042891E-05 -8.663517E-03 -1.609834E-05 -1.169582E-02 -2.164100E-05 -7.396443E-03 -1.192095E-05 -3.652278E-03 -3.129723E-06 -1.045202E-02 -2.112608E-05 -1.037936E-02 -1.718392E-05 -4.516079E-03 -3.575143E-06 -1.095270E-02 -1.774093E-05 -4.883767E-03 -5.927447E-06 -6.503683E-03 -7.716956E-06 -4.663924E-03 -5.713440E-06 -6.283619E-03 -4.627844E-06 -1.015268E-02 -1.309267E-05 -9.180971E-03 -1.527190E-05 -1.951120E-02 -4.198333E-05 -1.915689E-02 -5.707669E-05 -1.373893E-02 -2.451846E-05 -1.700799E-02 -4.037549E-05 -8.089066E-03 -1.170312E-05 -1.428411E-02 -2.720105E-05 -1.592720E-02 -3.708704E-05 -1.631763E-02 -3.412617E-05 -1.129445E-02 -1.941873E-05 -1.915612E-02 -4.735245E-05 -1.422466E-02 -3.019642E-05 -1.623769E-02 -4.050190E-05 -3.000266E-02 -1.011980E-04 -2.431859E-02 -7.075474E-05 -1.997843E-02 -5.249597E-05 -2.330404E-02 -6.963217E-05 -2.446833E-02 -7.157726E-05 -2.086381E-02 -6.071597E-05 -2.692405E-02 -8.142503E-05 -3.334489E-02 -1.331416E-04 -2.459016E-02 -7.539450E-05 -2.490317E-02 -6.829414E-05 -3.465734E-02 -1.336723E-04 -2.655747E-02 -8.402121E-05 -2.461979E-02 -7.593460E-05 -2.071273E-02 -5.109741E-05 -1.963799E-02 -4.721624E-05 -2.830417E-02 -1.108014E-04 -2.011415E-02 -4.210370E-05 -2.710260E-02 -9.007571E-05 -2.284700E-02 -6.898714E-05 -3.401467E-02 -1.508203E-04 -3.114460E-02 -1.181041E-04 -3.240556E-02 -1.301155E-04 -2.879980E-02 -1.090167E-04 -3.128129E-02 -1.046425E-04 -1.710639E-02 -3.063073E-05 -2.380055E-02 -6.611900E-05 -2.461530E-02 -6.805558E-05 -2.334066E-02 -6.791023E-05 -2.377977E-02 -7.167847E-05 -3.617503E-02 -1.573371E-04 -1.872815E-02 -5.621939E-05 -1.775203E-02 -4.642358E-05 -2.771547E-02 -8.299647E-05 -3.061731E-02 -1.020731E-04 -2.507147E-02 -7.334317E-05 -3.870082E-02 -1.721376E-04 -2.186224E-02 -6.325183E-05 -2.007397E-02 -5.062141E-05 -1.912434E-02 -4.450748E-05 -3.143924E-02 -1.217065E-04 -2.928610E-02 -1.369102E-04 -2.498862E-02 -9.234430E-05 -3.196385E-02 -1.380535E-04 -2.888275E-02 -9.066905E-05 -2.680537E-02 -9.933885E-05 -3.510043E-02 -1.418994E-04 -2.849205E-02 -9.541143E-05 -3.088469E-02 -1.124620E-04 -2.410541E-02 -7.456599E-05 -2.652028E-02 -7.737605E-05 -3.100674E-02 -1.204077E-04 -2.627656E-02 -7.414914E-05 -3.172017E-02 -1.179298E-04 -3.654420E-02 -1.501200E-04 -2.437387E-02 -8.465163E-05 -2.329587E-02 -8.609453E-05 -2.851454E-02 -9.764789E-05 -2.727184E-02 -1.020548E-04 -2.887669E-02 -9.379474E-05 -2.486065E-02 -6.980906E-05 -1.336139E-02 -3.237058E-05 -1.783830E-02 -4.308671E-05 -1.984536E-02 -4.793066E-05 -1.663979E-02 -3.245507E-05 -1.629628E-02 -3.780856E-05 -2.783691E-02 -9.185991E-05 -1.901340E-02 -4.331876E-05 -1.589227E-02 -3.023585E-05 -1.511908E-02 -3.924720E-05 -2.103836E-02 -5.685631E-05 -1.846361E-02 -5.596947E-05 -2.921881E-02 -1.027479E-04 -1.582650E-02 -2.965346E-05 -1.468540E-02 -2.895302E-05 -9.775043E-03 -1.581144E-05 -1.531973E-02 -3.646605E-05 -1.629584E-02 -4.077722E-05 -1.301406E-02 -2.211695E-05 -1.400095E-02 -2.464499E-05 -1.812501E-02 -5.136800E-05 -1.883997E-02 -4.846725E-05 -1.310098E-02 -2.076611E-05 -1.641887E-02 -3.214577E-05 -2.575947E-02 -7.664609E-05 -1.393085E-02 -2.533855E-05 -1.176890E-02 -1.965214E-05 -1.001319E-02 -1.752840E-05 -5.440474E-03 -5.776297E-06 -1.602659E-02 -3.187961E-05 -1.220713E-02 -2.605586E-05 -7.910828E-03 -1.235157E-05 -6.370403E-03 -7.314863E-06 -1.200010E-02 -2.093134E-05 -1.051384E-02 -2.114633E-05 -8.728632E-03 -1.217334E-05 -9.023232E-03 -1.429000E-05 -9.324890E-03 -1.238002E-05 -9.724819E-03 -1.340545E-05 -7.999095E-03 -1.507108E-05 -1.196325E-02 -2.492866E-05 -1.708992E-02 -4.187497E-05 -1.252870E-02 -2.576528E-05 -1.245286E-02 -2.205925E-05 -1.710226E-02 -4.820652E-05 -1.077670E-02 -2.779337E-05 -8.954749E-03 -1.459088E-05 -1.587508E-02 -5.891538E-05 -1.256231E-02 -3.626849E-05 -1.456161E-02 -2.677457E-05 -1.442492E-02 -2.873208E-05 -1.513933E-02 -2.781837E-05 -1.983944E-02 -4.742520E-05 -1.796161E-02 -5.099223E-05 -1.372378E-02 -2.143333E-05 -2.054995E-02 -5.149337E-05 -1.901284E-02 -4.203203E-05 -1.545044E-02 -3.240467E-05 -1.613542E-02 -3.093719E-05 -1.748080E-02 -3.676025E-05 -1.983930E-02 -5.826899E-05 -2.077484E-02 -5.311470E-05 -2.156771E-02 -7.349191E-05 -1.910656E-02 -5.646548E-05 -2.216856E-02 -5.896630E-05 -2.363877E-02 -6.273768E-05 -2.287745E-02 -6.142836E-05 -2.078760E-02 -5.965409E-05 -2.096805E-02 -6.106318E-05 -2.748905E-02 -8.547689E-05 -3.051782E-02 -1.062831E-04 -2.439885E-02 -6.963272E-05 -2.385521E-02 -7.024650E-05 -2.722803E-02 -8.442159E-05 -2.779212E-02 -9.251750E-05 -3.008247E-02 -1.087302E-04 -2.911535E-02 -9.162499E-05 -2.377217E-02 -6.480525E-05 -2.478405E-02 -8.301183E-05 -2.916643E-02 -1.151040E-04 -3.299041E-02 -1.251473E-04 -3.387553E-02 -1.275181E-04 -3.185326E-02 -1.151563E-04 -2.738559E-02 -8.510575E-05 -3.552781E-02 -1.467678E-04 -2.050637E-02 -4.879306E-05 -2.837699E-02 -8.517767E-05 -2.623559E-02 -7.322670E-05 -3.299486E-02 -1.475369E-04 -2.852314E-02 -1.058243E-04 -3.897511E-02 -1.782398E-04 -3.453237E-02 -1.467871E-04 -2.695630E-02 -9.399806E-05 -2.993587E-02 -1.069727E-04 -3.357367E-02 -1.220837E-04 -3.533685E-02 -1.307797E-04 -3.768880E-02 -1.706168E-04 -2.378269E-02 -8.193354E-05 -2.476389E-02 -6.667890E-05 -1.835306E-02 -3.678306E-05 -2.760875E-02 -1.044222E-04 -3.364777E-02 -1.294893E-04 -2.689602E-02 -8.234805E-05 -2.994600E-02 -1.038678E-04 -3.354397E-02 -1.250106E-04 -2.806016E-02 -1.032022E-04 -3.628839E-02 -1.512597E-04 -3.254567E-02 -1.229982E-04 -3.532092E-02 -1.401948E-04 -2.079706E-02 -5.214734E-05 -2.220721E-02 -6.771925E-05 -2.792774E-02 -9.954429E-05 -2.945320E-02 -1.043290E-04 -3.367757E-02 -1.278353E-04 -3.498071E-02 -1.439058E-04 -3.069969E-02 -1.094894E-04 -2.802931E-02 -9.732849E-05 -3.379486E-02 -1.251030E-04 -3.112018E-02 -1.419631E-04 -2.905240E-02 -9.457676E-05 -3.204785E-02 -1.232863E-04 -2.256002E-02 -6.449945E-05 -2.013216E-02 -4.579187E-05 -2.378756E-02 -7.502656E-05 -1.850227E-02 -4.559569E-05 -2.577098E-02 -8.077705E-05 -2.622626E-02 -8.900068E-05 -2.011102E-02 -5.119938E-05 -1.881459E-02 -5.303212E-05 -2.333357E-02 -8.135744E-05 -2.169922E-02 -5.260477E-05 -2.865567E-02 -1.072530E-04 -3.018313E-02 -1.180560E-04 -1.619341E-02 -3.631507E-05 -2.048742E-02 -6.014736E-05 -1.648517E-02 -3.461260E-05 -2.016257E-02 -5.377223E-05 -1.821956E-02 -4.021256E-05 -2.158168E-02 -6.922336E-05 -1.520759E-02 -3.087500E-05 -1.460640E-02 -2.484693E-05 -2.423578E-02 -9.468824E-05 -1.422992E-02 -2.626671E-05 -2.233711E-02 -6.453963E-05 -2.201935E-02 -6.607908E-05 -9.865297E-03 -1.253449E-05 -1.407603E-02 -2.374027E-05 -1.554488E-02 -3.357059E-05 -1.104207E-02 -1.800945E-05 -1.152633E-02 -1.752515E-05 -1.628689E-02 -3.825834E-05 -1.961306E-03 -1.509555E-06 -7.317970E-03 -1.170313E-05 -8.045927E-03 -1.128636E-05 -7.690351E-03 -9.455253E-06 -1.305182E-02 -2.924924E-05 -8.478606E-03 -1.183524E-05 -8.368030E-03 -9.397112E-06 -6.954808E-03 -5.988757E-06 -1.478825E-02 -2.903770E-05 -1.329221E-02 -2.352890E-05 -1.153738E-02 -2.279952E-05 -1.243207E-02 -2.027409E-05 -9.794691E-03 -2.519096E-05 -1.301443E-02 -2.673139E-05 -7.744527E-03 -8.512395E-06 -1.094360E-02 -1.898404E-05 -1.322530E-02 -2.416304E-05 -1.130737E-02 -2.067371E-05 -1.475002E-02 -2.641761E-05 -1.707041E-02 -4.061788E-05 -1.873188E-02 -3.858649E-05 -2.599435E-02 -7.840083E-05 -1.356899E-02 -3.303086E-05 -1.640959E-02 -4.231153E-05 -1.712330E-02 -4.025543E-05 -2.408636E-02 -6.859578E-05 -1.647314E-02 -3.975609E-05 -2.116131E-02 -5.516930E-05 -1.843826E-02 -4.250156E-05 -1.528596E-02 -3.432942E-05 -1.872595E-02 -4.482976E-05 -2.278412E-02 -7.039773E-05 -1.646460E-02 -3.454420E-05 -2.813905E-02 -1.098347E-04 -1.918135E-02 -4.628739E-05 -2.880134E-02 -1.294280E-04 -2.929725E-02 -1.035423E-04 -2.521557E-02 -8.873832E-05 -1.598874E-02 -3.488466E-05 -2.763380E-02 -9.554358E-05 -2.869939E-02 -9.202942E-05 -2.713151E-02 -8.978531E-05 -1.987710E-02 -4.592695E-05 -2.437199E-02 -8.143180E-05 -2.321959E-02 -6.492177E-05 -3.341995E-02 -1.498991E-04 -3.725498E-02 -1.896851E-04 -2.546980E-02 -7.669037E-05 -3.217017E-02 -1.220964E-04 -3.340259E-02 -1.408478E-04 -2.814856E-02 -9.960802E-05 -3.512673E-02 -1.528623E-04 -3.192684E-02 -1.177255E-04 -4.396846E-02 -2.179530E-04 -2.532908E-02 -9.266623E-05 -2.547875E-02 -7.493150E-05 -2.198311E-02 -5.696022E-05 -2.752789E-02 -8.630574E-05 -2.765173E-02 -8.761218E-05 -2.779760E-02 -1.213200E-04 -3.155525E-02 -1.104115E-04 -3.217963E-02 -1.396421E-04 -2.812793E-02 -1.067509E-04 -3.145703E-02 -1.323921E-04 -3.473095E-02 -1.271199E-04 -3.132386E-02 -1.050335E-04 -2.550248E-02 -7.173055E-05 -2.519509E-02 -8.292973E-05 -2.719586E-02 -9.875000E-05 -3.129909E-02 -1.364716E-04 -2.405862E-02 -6.392928E-05 -3.794317E-02 -1.796683E-04 -2.411060E-02 -7.563523E-05 -3.925533E-02 -1.941205E-04 -2.464678E-02 -8.141818E-05 -2.681802E-02 -8.985410E-05 -4.257422E-02 -2.011050E-04 -3.169616E-02 -1.228099E-04 -2.070267E-02 -8.295562E-05 -1.875182E-02 -4.519138E-05 -2.746689E-02 -8.527112E-05 -3.193689E-02 -1.260160E-04 -3.274412E-02 -1.277208E-04 -3.159605E-02 -1.244039E-04 -2.739115E-02 -9.148770E-05 -2.496372E-02 -7.319379E-05 -2.543741E-02 -8.751995E-05 -3.092377E-02 -1.322133E-04 -3.099099E-02 -1.159996E-04 -3.339925E-02 -1.244687E-04 -1.992237E-02 -5.132256E-05 -2.014907E-02 -4.750167E-05 -2.144112E-02 -6.724888E-05 -3.234934E-02 -1.819994E-04 -2.676069E-02 -9.670530E-05 -2.163370E-02 -5.007717E-05 -1.255610E-02 -2.744980E-05 -1.686689E-02 -4.406712E-05 -2.491027E-02 -8.641625E-05 -2.180394E-02 -5.962243E-05 -2.074450E-02 -7.196276E-05 -2.673557E-02 -9.943740E-05 -1.141559E-02 -2.064868E-05 -1.086445E-02 -1.772569E-05 -1.994739E-02 -6.095357E-05 -1.294529E-02 -2.949692E-05 -1.279449E-02 -2.013615E-05 -1.695923E-02 -5.267358E-05 -1.003362E-02 -1.892494E-05 -1.177407E-02 -3.074621E-05 -1.427717E-02 -3.062012E-05 -1.772566E-02 -4.566137E-05 -1.448022E-02 -2.786842E-05 -1.885150E-02 -4.869026E-05 -6.234737E-03 -6.766915E-06 -8.586280E-03 -1.484755E-05 -6.177392E-03 -1.214223E-05 -5.323791E-03 -4.680794E-06 -1.176080E-02 -2.484279E-05 -1.114881E-02 -1.645519E-05 -6.273419E-03 -6.143891E-06 -5.166701E-03 -3.867691E-06 -8.069436E-03 -1.040414E-05 -4.713136E-03 -5.175457E-06 -1.199780E-02 -1.859984E-05 -8.029148E-03 -8.699198E-06 -5.632949E-03 -5.837510E-06 -9.206218E-03 -1.575125E-05 -9.680753E-03 -1.846461E-05 -1.155184E-02 -2.188509E-05 -1.074904E-02 -1.891184E-05 -1.181458E-02 -2.456277E-05 -1.127047E-02 -2.593399E-05 -1.356860E-02 -2.814265E-05 -5.544832E-03 -6.946307E-06 -9.942970E-03 -1.675490E-05 -1.631004E-02 -3.536433E-05 -1.506925E-02 -2.482344E-05 -1.182795E-02 -1.897537E-05 -1.482385E-02 -3.899302E-05 -1.209032E-02 -1.754837E-05 -1.195251E-02 -2.049614E-05 -1.038664E-02 -1.424835E-05 -1.422392E-02 -2.932993E-05 -1.541884E-02 -3.247431E-05 -1.631665E-02 -4.604922E-05 -1.384486E-02 -3.663157E-05 -1.878261E-02 -4.189792E-05 -1.586209E-02 -3.733994E-05 -2.018001E-02 -5.531326E-05 -1.737200E-02 -4.051342E-05 -1.867979E-02 -4.835331E-05 -1.873274E-02 -7.026344E-05 -3.092919E-02 -1.440764E-04 -1.756290E-02 -4.330757E-05 -1.677922E-02 -3.960529E-05 -1.917939E-02 -5.218395E-05 -2.058760E-02 -5.104735E-05 -1.950686E-02 -4.503102E-05 -1.898111E-02 -5.123138E-05 -2.095898E-02 -6.978821E-05 -2.496761E-02 -7.344351E-05 -2.216966E-02 -6.981877E-05 -1.539258E-02 -3.355552E-05 -2.090036E-02 -5.893204E-05 -2.830594E-02 -9.908163E-05 -2.079711E-02 -5.700234E-05 -2.438388E-02 -7.315541E-05 -2.071811E-02 -5.920090E-05 -3.238056E-02 -1.338963E-04 -1.998547E-02 -4.982584E-05 -2.456523E-02 -7.090598E-05 -3.010218E-02 -9.569115E-05 -2.615311E-02 -8.034083E-05 -2.193093E-02 -6.501139E-05 -2.230235E-02 -6.810904E-05 -2.787441E-02 -9.364266E-05 -3.363819E-02 -1.294292E-04 -2.455137E-02 -7.174173E-05 -2.515678E-02 -6.839428E-05 -2.184998E-02 -5.948214E-05 -3.240910E-02 -1.297175E-04 -2.930001E-02 -9.691693E-05 -2.531952E-02 -7.468705E-05 -3.926456E-02 -1.746326E-04 -3.138940E-02 -1.141098E-04 -2.053774E-02 -4.616986E-05 -1.863850E-02 -5.063978E-05 -2.488227E-02 -8.135984E-05 -2.946035E-02 -9.621222E-05 -1.816353E-02 -4.227005E-05 -2.739033E-02 -9.425769E-05 -2.235176E-02 -7.322516E-05 -2.512226E-02 -7.712444E-05 -2.093974E-02 -5.655060E-05 -1.951079E-02 -4.907052E-05 -3.008712E-02 -9.648471E-05 -2.695713E-02 -8.322148E-05 -2.032086E-02 -4.478975E-05 -1.588968E-02 -3.284638E-05 -2.795370E-02 -9.478738E-05 -3.242775E-02 -1.467751E-04 -1.851414E-02 -5.030367E-05 -1.699040E-02 -4.048405E-05 -2.381562E-02 -8.005819E-05 -2.396088E-02 -7.106899E-05 -1.334683E-02 -2.033683E-05 -2.683684E-02 -9.730671E-05 -3.212945E-02 -1.268600E-04 -2.413721E-02 -7.785437E-05 -1.278877E-02 -2.285665E-05 -2.017408E-02 -5.101405E-05 -2.425974E-02 -8.238864E-05 -1.559733E-02 -4.134474E-05 -2.323747E-02 -5.912862E-05 -3.185441E-02 -1.214009E-04 -1.297541E-02 -3.542303E-05 -1.620965E-02 -3.785927E-05 -2.077217E-02 -5.048348E-05 -2.084714E-02 -5.308615E-05 -2.198650E-02 -6.677202E-05 -2.713339E-02 -7.996952E-05 -1.008900E-02 -1.493544E-05 -7.515252E-03 -6.938048E-06 -1.725580E-02 -4.511463E-05 -1.861578E-02 -4.706579E-05 -1.192562E-02 -1.706496E-05 -1.539067E-02 -3.704392E-05 -1.563574E-02 -3.149768E-05 -1.617709E-02 -3.434601E-05 -1.421795E-02 -2.693384E-05 -9.544761E-03 -1.420198E-05 -1.920816E-02 -4.315771E-05 -2.104112E-02 -6.953280E-05 -8.386327E-03 -1.191493E-05 -8.722802E-03 -1.610480E-05 -1.338316E-02 -2.795188E-05 -1.139681E-02 -2.426741E-05 -1.023902E-02 -1.793399E-05 -1.031055E-02 -1.727351E-05 -7.202274E-03 -8.248223E-06 -5.930048E-03 -5.651618E-06 -7.496873E-03 -1.049976E-05 -1.159952E-02 -1.637372E-05 -1.149358E-02 -2.129416E-05 -1.751957E-02 -3.876503E-05 -1.304134E-02 -2.268145E-05 -6.423719E-03 -1.030715E-05 -1.229584E-02 -1.921824E-05 -1.597047E-02 -2.887519E-05 -7.728575E-03 -8.694018E-06 -1.102992E-02 -1.663289E-05 -9.958745E-03 -1.518594E-05 -9.321102E-03 -1.260439E-05 -9.226395E-03 -1.473519E-05 -1.071198E-02 -1.716096E-05 -1.209027E-02 -2.012204E-05 -1.299345E-02 -2.535948E-05 -1.377877E-02 -2.712220E-05 -1.505661E-02 -3.492299E-05 -1.496534E-02 -3.555281E-05 -1.674256E-02 -3.935472E-05 -9.494973E-03 -1.562850E-05 -9.878116E-03 -1.686202E-05 -1.512689E-02 -2.756935E-05 -2.271723E-02 -7.190876E-05 -1.204699E-02 -2.702913E-05 -1.339825E-02 -2.817955E-05 -1.767135E-02 -4.942115E-05 -1.480386E-02 -6.975977E-05 -1.636386E-02 -3.439959E-05 -1.220265E-02 -2.153744E-05 -1.347844E-02 -2.910724E-05 -1.359228E-02 -3.101663E-05 -9.728835E-03 -1.507092E-05 -1.528103E-02 -3.443965E-05 -2.096063E-02 -6.754181E-05 -2.094364E-02 -6.023053E-05 -1.266226E-02 -2.412451E-05 -2.535680E-02 -7.344640E-05 -2.598994E-02 -9.953050E-05 -2.060213E-02 -7.034543E-05 -1.788607E-02 -3.674071E-05 -1.148154E-02 -1.909188E-05 -2.245671E-02 -6.003250E-05 -2.763268E-02 -9.551846E-05 -2.267967E-02 -6.032826E-05 -1.916473E-02 -4.604843E-05 -1.294451E-02 -1.970613E-05 -1.934618E-02 -4.918252E-05 -2.293529E-02 -7.197108E-05 -1.496065E-02 -2.444659E-05 -2.226558E-02 -5.644756E-05 -1.948569E-02 -4.450894E-05 -2.081785E-02 -5.246988E-05 -1.522522E-02 -3.455714E-05 -2.719218E-02 -8.650624E-05 -3.018717E-02 -1.279696E-04 -1.871704E-02 -6.935361E-05 -2.067645E-02 -5.026583E-05 -2.040699E-02 -4.591994E-05 -2.662203E-02 -8.511265E-05 -1.360877E-02 -2.453053E-05 -2.047026E-02 -5.992658E-05 -2.099358E-02 -6.877382E-05 -1.757234E-02 -4.380517E-05 -2.023155E-02 -5.570688E-05 -1.620245E-02 -3.127153E-05 -2.718760E-02 -1.061924E-04 -1.747980E-02 -4.190787E-05 -1.548489E-02 -3.376610E-05 -2.645660E-02 -9.074843E-05 -1.786629E-02 -4.215277E-05 -1.474131E-02 -2.581817E-05 -1.388717E-02 -2.989188E-05 -2.441704E-02 -7.084896E-05 -2.104368E-02 -5.681421E-05 -2.433800E-02 -7.895153E-05 -1.597437E-02 -3.483039E-05 -1.412656E-02 -2.566245E-05 -1.687717E-02 -3.771639E-05 -2.190482E-02 -8.253917E-05 -1.386107E-02 -3.378072E-05 -1.256494E-02 -2.033235E-05 -1.458675E-02 -2.616735E-05 -1.633493E-02 -3.166210E-05 -2.288089E-02 -6.714973E-05 -2.398060E-02 -7.693950E-05 -1.834264E-02 -4.444484E-05 -2.286357E-02 -5.661515E-05 -1.648013E-02 -4.331697E-05 -1.300614E-02 -2.342646E-05 -1.426626E-02 -2.966175E-05 -2.218616E-02 -7.311082E-05 -1.244578E-02 -2.216996E-05 -2.287835E-02 -6.924841E-05 -1.752439E-02 -4.165478E-05 -2.103286E-02 -5.842027E-05 -1.533084E-02 -3.870604E-05 -1.829172E-02 -5.193773E-05 -1.756896E-02 -4.997547E-05 -2.219401E-02 -5.804587E-05 -1.083994E-02 -1.562087E-05 -1.144466E-02 -2.086121E-05 -1.743653E-02 -3.615221E-05 -9.676259E-03 -1.226729E-05 -1.296315E-02 -2.293653E-05 -1.353945E-02 -3.069949E-05 -7.066700E-03 -7.777520E-06 -8.915397E-03 -1.286545E-05 -1.337770E-02 -2.968336E-05 -1.210357E-02 -2.373080E-05 -1.021357E-02 -1.742336E-05 -1.615799E-02 -4.003564E-05 -9.037428E-03 -1.958275E-05 -3.183370E-03 -2.393571E-06 -8.515537E-03 -1.434148E-05 -8.594763E-03 -1.144929E-05 -6.557583E-03 -6.809462E-06 -9.324712E-03 -1.284671E-05 -6.075741E-03 -8.217443E-06 -7.732948E-03 -1.254995E-05 -9.364155E-03 -1.391050E-05 -1.033625E-02 -1.710810E-05 -1.643522E-02 -5.092731E-05 -1.913240E-02 -5.188056E-05 -4.699889E-03 -4.253342E-06 -3.667145E-03 -3.051204E-06 -6.956946E-03 -7.413590E-06 -9.143993E-03 -1.510114E-05 -5.630486E-03 -7.481628E-06 -8.090881E-03 -1.407277E-05 -6.451248E-03 -9.019754E-06 -8.432893E-03 -1.236291E-05 -7.535742E-03 -9.713557E-06 -4.055813E-03 -2.764876E-06 -6.361136E-03 -7.935395E-06 -7.066013E-03 -9.687252E-06 -8.347614E-03 -1.322030E-05 -5.583607E-03 -6.318991E-06 -9.734817E-03 -1.915868E-05 -9.117770E-03 -1.299951E-05 -5.466583E-03 -5.814486E-06 -6.377661E-03 -5.982386E-06 -1.066356E-02 -1.915872E-05 -1.205945E-02 -1.894758E-05 -9.934821E-03 -1.678379E-05 -1.138156E-02 -2.321476E-05 -1.063324E-02 -1.739239E-05 -8.377153E-03 -1.072894E-05 -1.600249E-02 -3.173041E-05 -1.442818E-02 -3.650694E-05 -1.643458E-02 -2.935759E-05 -1.937762E-02 -5.539763E-05 -8.400592E-03 -1.059830E-05 -1.497133E-02 -3.316378E-05 -1.469275E-02 -3.001660E-05 -1.502203E-02 -2.852008E-05 -9.750216E-03 -1.395013E-05 -1.497859E-02 -2.421550E-05 -2.111839E-02 -6.023324E-05 -1.358782E-02 -2.820256E-05 -1.250078E-02 -2.294909E-05 -1.058650E-02 -1.688760E-05 -1.488385E-02 -2.666627E-05 -1.927781E-02 -5.429379E-05 -1.208022E-02 -2.250992E-05 -1.497153E-02 -2.676884E-05 -1.244590E-02 -2.756211E-05 -9.989045E-03 -1.303571E-05 -8.894574E-03 -1.174122E-05 -1.938283E-02 -4.239857E-05 -1.804394E-02 -3.515511E-05 -1.337739E-02 -2.482975E-05 -1.487943E-02 -3.347708E-05 -1.110033E-02 -2.136237E-05 -1.333452E-02 -2.308294E-05 -1.635319E-02 -3.229248E-05 -8.693802E-03 -1.542452E-05 -1.031414E-02 -2.112585E-05 -1.838966E-02 -4.539908E-05 -2.354073E-02 -7.698141E-05 -1.080321E-02 -1.831625E-05 -2.112481E-02 -6.253585E-05 -2.050287E-02 -5.388829E-05 -1.779381E-02 -3.937477E-05 -1.477468E-02 -2.411115E-05 -1.293051E-02 -2.250585E-05 -1.609738E-02 -3.396791E-05 -2.681377E-02 -8.749523E-05 -1.670204E-02 -4.359534E-05 -2.206205E-02 -6.377754E-05 -1.873639E-02 -5.703093E-05 -1.889950E-02 -5.052682E-05 -1.824219E-02 -6.072963E-05 -9.270805E-03 -9.959479E-06 -1.684688E-02 -3.370730E-05 -1.521705E-02 -2.961236E-05 -1.701708E-02 -4.241891E-05 -1.338529E-02 -2.440114E-05 -2.037312E-02 -5.462555E-05 -1.229143E-02 -1.878363E-05 -1.429618E-02 -3.043241E-05 -1.452304E-02 -3.335612E-05 -1.081202E-02 -1.892516E-05 -1.166461E-02 -2.163556E-05 -9.237578E-03 -1.212749E-05 -1.315603E-02 -2.637907E-05 -1.701531E-02 -4.938074E-05 -1.071566E-02 -1.400306E-05 -6.882737E-03 -1.095801E-05 -9.693556E-03 -1.516152E-05 -1.473076E-02 -4.380304E-05 -1.172802E-02 -2.661846E-05 -1.044100E-02 -1.616180E-05 -1.321485E-02 -2.517015E-05 -1.034434E-02 -2.118831E-05 -1.604723E-02 -3.547683E-05 -1.309313E-02 -2.716364E-05 -1.410482E-02 -2.701123E-05 -1.932682E-02 -4.094043E-05 -1.570824E-02 -3.228547E-05 -1.071500E-02 -2.525484E-05 -9.230951E-03 -1.398163E-05 -1.889558E-02 -4.381257E-05 -1.401925E-02 -2.692560E-05 -9.335801E-03 -1.384367E-05 -1.635939E-02 -3.876884E-05 -9.920998E-03 -1.367019E-05 -1.029500E-02 -1.637783E-05 -8.294680E-03 -1.093734E-05 -1.266183E-02 -2.587245E-05 -1.407777E-02 -2.856187E-05 -1.854542E-02 -4.825382E-05 -5.748894E-03 -8.790611E-06 -6.718806E-03 -1.183924E-05 -8.894787E-03 -1.306300E-05 -9.405707E-03 -1.288762E-05 -8.792692E-03 -1.122248E-05 -1.103181E-02 -1.580934E-05 -2.659005E-03 -1.548241E-06 -7.016434E-03 -7.516622E-06 -7.803753E-03 -1.013698E-05 -5.086094E-03 -7.063507E-06 -6.912737E-03 -6.574511E-06 -6.396947E-03 -6.066584E-06 -3.808735E-03 -2.749937E-06 -1.756683E-03 -8.375727E-07 -5.851836E-03 -1.028488E-05 -4.947448E-03 -5.127717E-06 -2.630989E-03 -1.428143E-06 -2.910935E-03 -1.681876E-06 -1.838842E-03 -8.992911E-07 -1.293684E-03 -6.685764E-07 -3.339457E-03 -3.028553E-06 -4.580626E-03 -4.624997E-06 -8.307235E-03 -1.674431E-05 -4.486573E-03 -3.705825E-06 -1.144529E-02 -2.352240E-05 -4.880878E-03 -3.852879E-06 -1.005985E-02 -1.391072E-05 -5.741160E-03 -7.136284E-06 -3.844734E-03 -3.016161E-06 -4.765015E-03 -4.225164E-06 -9.903891E-03 -1.243668E-05 -6.186072E-03 -7.288467E-06 -5.025861E-03 -4.672189E-06 -9.762213E-03 -1.357133E-05 -7.207433E-03 -1.732068E-05 -7.775127E-03 -1.904290E-05 -8.549835E-03 -9.367660E-06 -7.175698E-03 -7.187069E-06 -9.296385E-03 -1.322855E-05 -1.130874E-02 -1.956313E-05 -6.989995E-03 -7.487382E-06 -9.825026E-03 -1.567524E-05 -8.647918E-03 -1.652352E-05 -1.087355E-02 -1.533263E-05 -8.616514E-03 -1.142788E-05 -7.352790E-03 -1.365573E-05 -1.138586E-02 -2.265717E-05 -8.641472E-03 -1.322858E-05 -1.041352E-02 -1.315105E-05 -7.829927E-03 -1.004051E-05 -1.425328E-02 -2.580893E-05 -8.892806E-03 -1.300336E-05 -7.287566E-03 -1.259700E-05 -1.443032E-02 -3.334244E-05 -1.017849E-02 -1.483161E-05 -1.467996E-02 -3.045887E-05 -5.224154E-03 -5.244222E-06 -9.725108E-03 -1.589220E-05 -7.665836E-03 -1.588331E-05 -1.010342E-02 -1.784078E-05 -9.419018E-03 -1.369817E-05 -8.670373E-03 -1.032775E-05 -1.138937E-02 -1.811885E-05 -1.798735E-02 -4.793175E-05 -1.065784E-02 -1.799829E-05 -1.308082E-02 -2.484335E-05 -1.240918E-02 -2.570768E-05 -1.745339E-02 -5.770116E-05 -9.113925E-03 -1.349884E-05 -1.402932E-02 -2.482802E-05 -1.888352E-02 -4.563824E-05 -1.225796E-02 -2.638006E-05 -6.431220E-03 -8.855282E-06 -4.770081E-03 -4.250052E-06 -1.089652E-02 -1.611332E-05 -8.433574E-03 -1.309921E-05 -8.737584E-03 -1.411637E-05 -1.265065E-02 -2.849634E-05 -6.191713E-03 -9.561153E-06 -1.006364E-02 -1.497675E-05 -5.975885E-03 -7.218506E-06 -8.088755E-03 -1.058200E-05 -1.148407E-02 -1.800324E-05 -8.621138E-03 -1.060417E-05 -6.466931E-03 -5.559033E-06 -5.921299E-03 -7.337435E-06 -1.106199E-02 -1.985630E-05 -1.358816E-02 -2.266472E-05 -9.249095E-03 -1.326487E-05 -1.231097E-02 -2.413051E-05 -1.262777E-02 -2.135896E-05 -1.340058E-02 -2.838546E-05 -5.482441E-03 -5.699830E-06 -9.399780E-03 -1.217503E-05 -1.326355E-02 -3.084524E-05 -1.091665E-02 -1.571125E-05 -9.066945E-03 -1.253097E-05 -1.007715E-02 -1.495997E-05 -1.420187E-02 -3.247816E-05 -8.867918E-03 -1.783720E-05 -1.035797E-02 -1.618714E-05 -1.051439E-02 -1.905852E-05 -9.663711E-03 -1.733227E-05 -6.083326E-03 -8.227985E-06 -8.498983E-03 -1.203506E-05 -6.305066E-03 -7.288313E-06 -7.022938E-03 -1.842350E-05 -5.300040E-03 -6.674218E-06 -1.192288E-02 -2.251146E-05 -1.268268E-02 -2.376464E-05 -1.105252E-02 -1.907200E-05 -1.141409E-02 -2.122429E-05 -6.863367E-03 -9.680619E-06 -9.454583E-03 -1.410784E-05 -6.678539E-03 -7.419299E-06 -5.435679E-03 -5.223001E-06 -5.839983E-03 -7.472675E-06 -4.126792E-03 -4.743950E-06 -6.770400E-03 -9.680068E-06 -6.192936E-03 -7.071171E-06 -5.115501E-03 -7.222293E-06 -9.291347E-03 -2.204886E-05 -9.263101E-03 -2.093887E-05 -4.871234E-03 -4.945479E-06 -7.362790E-03 -1.225470E-05 -4.662289E-03 -6.432463E-06 -3.023591E-03 -2.882907E-06 -3.141104E-03 -2.308920E-06 -4.357737E-03 -7.258711E-06 -6.160322E-03 -8.985831E-06 -2.171491E-03 -1.749207E-06 -6.561643E-03 -8.803272E-06 -7.571781E-03 -1.203184E-05 -7.440169E-03 -1.110403E-05 -5.648646E-03 -5.494924E-06 -5.357281E-03 -6.204706E-06 -1.090071E-02 -2.058466E-05 -8.383241E-03 -1.206302E-05 -5.676127E-03 -7.724753E-06 -7.425364E-03 -1.054573E-05 -5.486371E-03 -8.048247E-06 -8.635014E-03 -1.394706E-05 -9.041685E-03 -1.478222E-05 -8.430211E-03 -1.309974E-05 -9.019663E-03 -1.451788E-05 -1.031929E-02 -1.746481E-05 -8.473885E-03 -1.174896E-05 -7.773439E-03 -1.036634E-05 -6.249343E-03 -6.064341E-06 -7.095661E-03 -1.120516E-05 -8.128270E-03 -7.992625E-06 -8.497285E-03 -1.303653E-05 -9.777637E-03 -1.235924E-05 -9.741495E-03 -1.557086E-05 -7.393292E-03 -1.285346E-05 -9.196281E-03 -1.458607E-05 -8.847877E-03 -1.117609E-05 -9.688267E-03 -1.592845E-05 -8.380207E-03 -9.989138E-06 -6.280642E-03 -9.051451E-06 -5.915732E-03 -6.877346E-06 -7.178298E-03 -7.637799E-06 -1.393362E-02 -3.213127E-05 -1.124851E-02 -1.946971E-05 -7.778231E-03 -8.216708E-06 -1.100977E-02 -1.616695E-05 -9.914677E-03 -1.920656E-05 -1.140639E-02 -1.803697E-05 -9.289048E-03 -2.453446E-05 -1.333524E-02 -2.981179E-05 -1.511863E-02 -3.813471E-05 -1.309031E-02 -3.606896E-05 -9.646063E-03 -1.776204E-05 -1.508239E-02 -3.051447E-05 -1.260645E-02 -2.587693E-05 -1.462482E-02 -3.353264E-05 -1.521268E-02 -3.209409E-05 -1.468435E-02 -2.541208E-05 -1.071159E-02 -1.974334E-05 -2.153100E-02 -5.966820E-05 -1.732644E-02 -4.011287E-05 -1.667843E-02 -3.822452E-05 -1.463217E-02 -3.010523E-05 -1.656645E-02 -5.475637E-05 -1.067989E-02 -1.830023E-05 -8.824628E-03 -1.045690E-05 -2.286417E-02 -6.960907E-05 -1.839696E-02 -4.509087E-05 -1.925060E-02 -3.941153E-05 -2.258451E-02 -6.336171E-05 -1.439116E-02 -3.414902E-05 -1.155750E-02 -1.864626E-05 -1.259396E-02 -2.399348E-05 -1.558812E-02 -4.045055E-05 -1.722120E-02 -4.143410E-05 -1.762002E-02 -3.632759E-05 -7.874101E-03 -8.254184E-06 -1.768575E-02 -3.461006E-05 -1.146683E-02 -1.794910E-05 -9.688500E-03 -1.346720E-05 -2.241492E-02 -6.339022E-05 -1.934312E-02 -4.482690E-05 -1.794148E-02 -3.870190E-05 -1.579372E-02 -3.004235E-05 -1.087259E-02 -1.529755E-05 -1.257568E-02 -2.258086E-05 -1.388017E-02 -3.225403E-05 -1.427934E-02 -2.832685E-05 -1.576751E-02 -4.828020E-05 -9.333555E-03 -1.323683E-05 -1.295220E-02 -2.221784E-05 -1.292944E-02 -2.650558E-05 -1.321910E-02 -2.608639E-05 -1.867794E-02 -5.342650E-05 -1.187778E-02 -2.004699E-05 -1.570348E-02 -3.839194E-05 -7.349983E-03 -1.280817E-05 -1.048335E-02 -1.591520E-05 -1.281254E-02 -2.311657E-05 -9.441415E-03 -1.884897E-05 -7.817420E-03 -1.075829E-05 -7.050894E-03 -8.992796E-06 -1.439696E-02 -2.646431E-05 -9.666048E-03 -1.691859E-05 -1.384058E-02 -2.171361E-05 -1.483968E-02 -2.360714E-05 -6.696329E-03 -8.201920E-06 -1.461109E-02 -3.484250E-05 -1.152968E-02 -2.487151E-05 -1.235571E-02 -1.863282E-05 -1.071843E-02 -2.007060E-05 -1.192423E-02 -2.405436E-05 -5.175335E-03 -5.686680E-06 -6.167308E-03 -6.085033E-06 -6.512706E-03 -7.423219E-06 -1.084502E-02 -2.042988E-05 -1.426237E-02 -3.199412E-05 -9.833550E-03 -1.401763E-05 -1.066371E-02 -2.034673E-05 -1.088205E-02 -1.432050E-05 -1.322884E-03 -6.133009E-07 -3.131323E-03 -2.085873E-06 -7.577039E-03 -1.169415E-05 -3.697020E-03 -2.265535E-06 -8.463691E-04 -7.163407E-07 -4.936343E-03 -4.470816E-06 -2.785210E-03 -2.057770E-06 -4.647148E-03 -1.334765E-05 -4.739139E-03 -4.910528E-06 -2.212737E-03 -9.823784E-07 -3.179311E-03 -2.106597E-06 -5.139877E-03 -6.883127E-06 -6.756613E-03 -1.192459E-05 -9.019603E-03 -1.454516E-05 -7.170921E-03 -1.179166E-05 -1.332204E-02 -2.272315E-05 -1.045555E-02 -1.579302E-05 -1.471762E-02 -2.957336E-05 -6.940743E-03 -6.167781E-06 -9.285093E-03 -1.234474E-05 -5.274768E-03 -9.733764E-06 -9.363326E-03 -1.064273E-05 -1.124025E-02 -1.812349E-05 -1.242897E-02 -2.335802E-05 -1.381362E-02 -3.426304E-05 -9.040314E-03 -1.768352E-05 -8.800291E-03 -1.233677E-05 -6.219799E-03 -6.238154E-06 -9.482593E-03 -1.409322E-05 -1.380779E-02 -2.529043E-05 -1.200427E-02 -2.953271E-05 -1.419132E-02 -3.098266E-05 -1.353906E-02 -2.607804E-05 -1.431241E-02 -2.799048E-05 -1.223915E-02 -2.748804E-05 -1.852083E-02 -5.311250E-05 -1.887810E-02 -5.774443E-05 -1.277722E-02 -2.643979E-05 -8.077414E-03 -1.128725E-05 -1.339142E-02 -2.294610E-05 -1.301300E-02 -2.073634E-05 -1.397830E-02 -3.029223E-05 -1.892762E-02 -4.920518E-05 -1.535394E-02 -4.149745E-05 -1.298011E-02 -2.187906E-05 -1.905806E-02 -4.036737E-05 -1.706919E-02 -3.990119E-05 -1.435454E-02 -2.543584E-05 -1.937779E-02 -5.201021E-05 -2.323117E-02 -6.155812E-05 -1.994685E-02 -5.377319E-05 -1.320573E-02 -2.175679E-05 -1.591133E-02 -3.535892E-05 -2.108852E-02 -6.407539E-05 -1.839423E-02 -4.410414E-05 -2.011863E-02 -4.580140E-05 -1.883453E-02 -4.495207E-05 -2.134485E-02 -5.276746E-05 -1.725640E-02 -4.465566E-05 -2.590341E-02 -8.438375E-05 -2.198626E-02 -5.942456E-05 -1.721832E-02 -3.710932E-05 -1.867389E-02 -4.165207E-05 -2.535786E-02 -8.231711E-05 -2.435788E-02 -7.524302E-05 -2.417986E-02 -7.690249E-05 -3.527942E-02 -1.503529E-04 -2.545610E-02 -7.903560E-05 -2.898461E-02 -1.038511E-04 -2.650130E-02 -7.765544E-05 -3.220034E-02 -1.339104E-04 -2.615617E-02 -8.054223E-05 -1.575566E-02 -3.464485E-05 -1.721242E-02 -3.933144E-05 -2.529147E-02 -7.224719E-05 -2.161550E-02 -5.729706E-05 -3.254276E-02 -1.237101E-04 -2.601524E-02 -7.880812E-05 -2.030934E-02 -5.449343E-05 -2.529817E-02 -7.746587E-05 -2.459558E-02 -7.049178E-05 -2.743013E-02 -1.051976E-04 -2.818835E-02 -9.687328E-05 -3.082240E-02 -1.199245E-04 -1.534318E-02 -3.153431E-05 -1.798131E-02 -4.183178E-05 -1.329898E-02 -2.483181E-05 -1.519124E-02 -3.090643E-05 -2.253493E-02 -6.110325E-05 -1.932903E-02 -5.403216E-05 -2.343651E-02 -6.986521E-05 -1.851194E-02 -4.830851E-05 -2.854734E-02 -1.149020E-04 -3.554508E-02 -1.594168E-04 -2.420896E-02 -8.063001E-05 -2.438815E-02 -6.949914E-05 -1.424242E-02 -3.042725E-05 -1.883095E-02 -4.453941E-05 -1.803807E-02 -5.353218E-05 -1.472433E-02 -2.708169E-05 -2.645673E-02 -1.277462E-04 -1.659156E-02 -4.460790E-05 -1.884914E-02 -5.255122E-05 -1.323181E-02 -3.012118E-05 -2.078655E-02 -7.250952E-05 -1.929529E-02 -4.896056E-05 -1.365072E-02 -2.296122E-05 -1.548320E-02 -3.361702E-05 -1.963984E-02 -5.182163E-05 -1.938728E-02 -4.745111E-05 -1.852813E-02 -4.964750E-05 -1.254203E-02 -2.416303E-05 -1.598636E-02 -3.867130E-05 -1.557994E-02 -3.560554E-05 -8.834017E-03 -1.069678E-05 -9.484032E-03 -1.565529E-05 -1.303143E-02 -2.234676E-05 -2.200867E-02 -5.927220E-05 -1.598709E-02 -2.961814E-05 -1.402800E-02 -2.779038E-05 -4.378255E-03 -4.055161E-06 -6.657558E-03 -8.689849E-06 -5.742424E-03 -6.994090E-06 -1.690917E-03 -9.618234E-07 -6.422205E-03 -6.220083E-06 -1.098008E-02 -1.552449E-05 -4.852648E-03 -6.005700E-06 -4.131316E-03 -2.940200E-06 -5.377384E-03 -9.958808E-06 -7.493944E-03 -1.136740E-05 -5.679683E-03 -5.334788E-06 -9.041948E-03 -1.233892E-05 -1.621598E-02 -3.896922E-05 -9.707536E-03 -1.580953E-05 -9.796285E-03 -1.170913E-05 -1.038632E-02 -1.400251E-05 -1.854616E-02 -3.938948E-05 -1.637195E-02 -3.459637E-05 -1.090541E-02 -1.920540E-05 -1.554833E-02 -3.590212E-05 -4.272073E-03 -3.682734E-06 -9.074265E-03 -9.996509E-06 -1.177873E-02 -2.562780E-05 -1.154733E-02 -1.708677E-05 -2.122244E-02 -5.095551E-05 -1.703089E-02 -4.517001E-05 -1.005035E-02 -1.266093E-05 -1.780384E-02 -3.747413E-05 -1.376515E-02 -3.253018E-05 -1.530894E-02 -2.892052E-05 -2.606504E-02 -7.859853E-05 -2.255541E-02 -6.286365E-05 -1.918774E-02 -4.676979E-05 -2.519231E-02 -7.640422E-05 -1.664088E-02 -4.401309E-05 -1.584636E-02 -3.452858E-05 -2.616309E-02 -8.630269E-05 -2.255699E-02 -5.940173E-05 -2.236967E-02 -6.994996E-05 -2.248979E-02 -5.377855E-05 -2.341480E-02 -6.489990E-05 -2.206893E-02 -5.500117E-05 -3.339387E-02 -1.332827E-04 -2.791990E-02 -9.540192E-05 -2.717893E-02 -9.827563E-05 -2.822648E-02 -9.247065E-05 -2.172258E-02 -6.122060E-05 -2.728508E-02 -9.267319E-05 -2.826253E-02 -1.031269E-04 -2.187117E-02 -5.283388E-05 -2.020422E-02 -6.258085E-05 -2.760119E-02 -8.854689E-05 -2.549801E-02 -7.868954E-05 -3.220341E-02 -1.492987E-04 -3.173533E-02 -1.221411E-04 -3.585220E-02 -1.462868E-04 -2.903224E-02 -9.451319E-05 -3.829574E-02 -1.873248E-04 -3.086935E-02 -1.256218E-04 -3.176725E-02 -1.374912E-04 -2.621060E-02 -7.855573E-05 -3.291329E-02 -1.248943E-04 -2.777869E-02 -9.696220E-05 -2.695184E-02 -8.169195E-05 -3.242055E-02 -1.203522E-04 -3.779282E-02 -1.712919E-04 -3.692252E-02 -1.722327E-04 -2.748845E-02 -9.639756E-05 -3.175151E-02 -1.162038E-04 -3.286221E-02 -1.232662E-04 -3.712727E-02 -1.594838E-04 -4.431598E-02 -2.588766E-04 -2.816960E-02 -9.502113E-05 -2.976286E-02 -1.142861E-04 -2.180841E-02 -6.585707E-05 -2.719208E-02 -8.542344E-05 -3.801560E-02 -1.668348E-04 -3.413937E-02 -1.429112E-04 -3.175514E-02 -1.235214E-04 -4.203652E-02 -2.192502E-04 -4.877746E-02 -2.744258E-04 -5.692679E-02 -3.692246E-04 -4.818489E-02 -2.687441E-04 -5.535578E-02 -3.290118E-04 -3.156612E-02 -1.123567E-04 -2.679829E-02 -7.787807E-05 -2.954264E-02 -1.270123E-04 -2.476226E-02 -8.030343E-05 -3.814973E-02 -1.578272E-04 -4.016143E-02 -2.884730E-04 -4.229195E-02 -2.061337E-04 -2.947005E-02 -1.041482E-04 -3.357567E-02 -1.360735E-04 -4.664871E-02 -2.552612E-04 -4.112621E-02 -2.176987E-04 -3.595856E-02 -1.956542E-04 -1.913431E-02 -5.063581E-05 -2.330523E-02 -6.230393E-05 -2.045993E-02 -5.592751E-05 -2.473756E-02 -7.625570E-05 -3.674309E-02 -1.672365E-04 -3.204595E-02 -1.157121E-04 -2.629494E-02 -8.519728E-05 -3.002442E-02 -1.205283E-04 -3.236353E-02 -1.309526E-04 -3.239381E-02 -1.479481E-04 -2.659107E-02 -1.086535E-04 -3.565570E-02 -1.622239E-04 -1.031682E-02 -1.492807E-05 -1.580618E-02 -2.893579E-05 -1.666675E-02 -4.393186E-05 -2.024456E-02 -4.734254E-05 -1.651767E-02 -4.977631E-05 -1.887559E-02 -4.409518E-05 -1.508773E-02 -4.644738E-05 -1.388725E-02 -2.554677E-05 -2.369485E-02 -7.387938E-05 -1.868167E-02 -4.664973E-05 -1.516685E-02 -3.321346E-05 -1.963316E-02 -4.662537E-05 -7.052241E-03 -1.080582E-05 -1.204334E-02 -2.356212E-05 -7.618798E-03 -1.308303E-05 -1.218334E-02 -2.230559E-05 -1.192185E-02 -2.127660E-05 -1.044557E-02 -1.520178E-05 -4.348002E-03 -4.867274E-06 -9.181379E-03 -1.456359E-05 -8.481267E-03 -1.556887E-05 -5.867984E-03 -5.323949E-06 -1.523208E-02 -3.002171E-05 -8.902081E-03 -1.728737E-05 -1.212351E-02 -2.267329E-05 -1.158769E-02 -1.826918E-05 -5.557893E-03 -6.873951E-06 -1.030077E-02 -1.814127E-05 -1.216476E-02 -2.168097E-05 -1.280341E-02 -2.462766E-05 -7.553244E-03 -7.549456E-06 -9.275611E-03 -9.489655E-06 -7.606773E-03 -8.958010E-06 -9.160622E-03 -1.424787E-05 -1.133109E-02 -1.611610E-05 -7.409008E-03 -1.208115E-05 -2.084102E-02 -5.449907E-05 -2.465743E-02 -1.037751E-04 -2.310657E-02 -6.292924E-05 -2.801769E-02 -8.512445E-05 -2.049117E-02 -6.630728E-05 -1.395829E-02 -3.118581E-05 -2.735901E-02 -9.218170E-05 -2.177632E-02 -5.817883E-05 -1.932991E-02 -6.388604E-05 -2.326591E-02 -8.330336E-05 -2.546379E-02 -9.605909E-05 -1.830716E-02 -5.090147E-05 -3.960142E-02 -1.859660E-04 -2.348343E-02 -6.600054E-05 -2.909393E-02 -1.040812E-04 -3.586926E-02 -1.451039E-04 -2.269127E-02 -6.430762E-05 -2.691696E-02 -8.449728E-05 -4.229624E-02 -2.362055E-04 -4.471419E-02 -2.231402E-04 -3.407449E-02 -1.370223E-04 -3.586700E-02 -1.483496E-04 -3.803403E-02 -1.652852E-04 -3.820565E-02 -1.619415E-04 -2.921534E-02 -1.128913E-04 -4.098638E-02 -1.981151E-04 -3.611801E-02 -1.596274E-04 -4.036543E-02 -1.787815E-04 -3.018584E-02 -1.080246E-04 -4.026732E-02 -1.932383E-04 -4.637639E-02 -3.369042E-04 -4.901208E-02 -2.912517E-04 -5.221514E-02 -2.936532E-04 -5.298382E-02 -3.167761E-04 -4.141488E-02 -1.913012E-04 -5.078383E-02 -2.957356E-04 -3.104830E-02 -1.114729E-04 -4.570836E-02 -2.306958E-04 -2.697314E-02 -8.551540E-05 -3.590745E-02 -1.369825E-04 -4.416767E-02 -2.348955E-04 -3.878026E-02 -1.683331E-04 -3.635274E-02 -1.469492E-04 -5.095760E-02 -3.033151E-04 -5.419363E-02 -3.231656E-04 -6.111133E-02 -4.092896E-04 -5.080100E-02 -2.813520E-04 -6.152776E-02 -4.073105E-04 -3.751766E-02 -1.468483E-04 -3.277827E-02 -1.186335E-04 -3.710633E-02 -1.751177E-04 -5.323020E-02 -3.420073E-04 -3.201431E-02 -1.550803E-04 -5.882138E-02 -4.307388E-04 -4.562728E-02 -2.741025E-04 -4.436946E-02 -2.582142E-04 -4.128151E-02 -1.889531E-04 -5.761773E-02 -4.256437E-04 -4.986009E-02 -2.652036E-04 -5.753376E-02 -3.668636E-04 -3.464308E-02 -1.308318E-04 -3.597366E-02 -1.880711E-04 -3.783475E-02 -1.677422E-04 -4.507477E-02 -2.257889E-04 -3.512550E-02 -1.623708E-04 -4.440361E-02 -2.237977E-04 -4.763862E-02 -2.507592E-04 -4.245582E-02 -2.037194E-04 -3.865696E-02 -1.809637E-04 -4.216341E-02 -1.962900E-04 -5.099828E-02 -2.952246E-04 -5.108812E-02 -2.920996E-04 -2.655713E-02 -8.104377E-05 -3.189652E-02 -1.226231E-04 -3.163248E-02 -1.587616E-04 -2.509589E-02 -9.570491E-05 -4.297892E-02 -2.277676E-04 -3.642828E-02 -1.647058E-04 -3.007066E-02 -1.231652E-04 -3.132243E-02 -1.486680E-04 -3.188231E-02 -1.196363E-04 -4.753178E-02 -2.731076E-04 -2.908004E-02 -1.035304E-04 -2.727262E-02 -9.600226E-05 -1.855747E-02 -5.837677E-05 -2.435306E-02 -7.097335E-05 -2.204917E-02 -6.488149E-05 -2.268670E-02 -6.926881E-05 -2.470896E-02 -8.507493E-05 -2.736268E-02 -9.366711E-05 -1.453619E-02 -2.821293E-05 -1.989468E-02 -5.291966E-05 -2.569258E-02 -8.578609E-05 -2.226465E-02 -6.565828E-05 -2.252517E-02 -7.081452E-05 -1.855256E-02 -4.738776E-05 -1.203698E-02 -2.579555E-05 -1.218962E-02 -2.270495E-05 -1.171765E-02 -2.354905E-05 -8.779187E-03 -1.212571E-05 -1.425888E-02 -2.553189E-05 -1.169957E-02 -2.644501E-05 -1.052860E-02 -1.949914E-05 -5.907471E-03 -5.068540E-06 -1.275403E-02 -2.624760E-05 -1.148436E-02 -1.794213E-05 -1.018673E-02 -1.501340E-05 -1.783660E-02 -4.785080E-05 -1.016197E-02 -2.293166E-05 -8.941927E-03 -1.192991E-05 -6.602581E-03 -1.272161E-05 -1.174062E-02 -2.147543E-05 -1.526300E-02 -3.260204E-05 -1.686817E-02 -4.102027E-05 -1.467939E-02 -2.968059E-05 -1.601430E-02 -4.562808E-05 -9.165391E-03 -2.688624E-05 -9.663957E-03 -1.372277E-05 -1.287992E-02 -2.365195E-05 -9.579531E-03 -1.375180E-05 -2.469585E-02 -8.049487E-05 -2.845287E-02 -1.112732E-04 -1.767051E-02 -4.658157E-05 -2.485448E-02 -9.432058E-05 -1.238872E-02 -2.846828E-05 -1.889711E-02 -4.468197E-05 -3.099403E-02 -1.059405E-04 -2.259916E-02 -7.077471E-05 -2.695314E-02 -9.575430E-05 -2.211342E-02 -5.413822E-05 -2.224612E-02 -7.249655E-05 -1.773084E-02 -4.592694E-05 -3.194210E-02 -1.064003E-04 -2.971760E-02 -9.736956E-05 -3.499652E-02 -1.826230E-04 -4.850239E-02 -2.738683E-04 -3.305773E-02 -1.168139E-04 -3.506155E-02 -1.587282E-04 -3.676758E-02 -1.484870E-04 -4.676291E-02 -2.525569E-04 -3.590431E-02 -1.478484E-04 -3.835973E-02 -1.689943E-04 -4.592471E-02 -2.353405E-04 -4.213441E-02 -2.024568E-04 -4.148586E-02 -1.780338E-04 -4.501161E-02 -2.189422E-04 -4.546973E-02 -2.294416E-04 -5.445339E-02 -3.211478E-04 -4.091696E-02 -1.919828E-04 -4.547941E-02 -2.523329E-04 -5.386399E-02 -3.097517E-04 -5.805028E-02 -3.886410E-04 -4.323647E-02 -2.210891E-04 -5.481511E-02 -3.380385E-04 -5.588950E-02 -3.728116E-04 -4.521068E-02 -2.655202E-04 -4.323965E-02 -1.976109E-04 -4.853174E-02 -2.734839E-04 -5.925107E-02 -4.092840E-04 -6.126965E-02 -3.889545E-04 -5.496039E-02 -3.536070E-04 -5.043703E-02 -3.116190E-04 -5.642187E-02 -3.765290E-04 -6.063856E-02 -4.379295E-04 -5.195487E-02 -3.214080E-04 -6.938655E-02 -5.412456E-04 -6.384563E-02 -4.345441E-04 -7.340916E-02 -5.829419E-04 -4.160832E-02 -1.915303E-04 -4.400244E-02 -2.364017E-04 -5.387088E-02 -3.278923E-04 -5.794972E-02 -3.768932E-04 -4.823866E-02 -2.869653E-04 -5.581812E-02 -3.628216E-04 -5.507172E-02 -3.230172E-04 -6.302356E-02 -4.527401E-04 -5.707918E-02 -3.888513E-04 -4.754358E-02 -2.594617E-04 -6.541199E-02 -4.781326E-04 -6.028104E-02 -4.146449E-04 -3.451579E-02 -1.431485E-04 -3.241942E-02 -1.223581E-04 -4.685494E-02 -2.525308E-04 -4.111890E-02 -2.121316E-04 -4.153961E-02 -1.996497E-04 -5.816750E-02 -3.609870E-04 -3.677652E-02 -1.668470E-04 -4.696518E-02 -2.600495E-04 -3.377120E-02 -1.501347E-04 -4.376838E-02 -2.325356E-04 -5.222808E-02 -3.054620E-04 -5.928320E-02 -4.267763E-04 -2.991812E-02 -1.056949E-04 -3.616946E-02 -1.524179E-04 -3.177703E-02 -1.168362E-04 -4.705585E-02 -2.646056E-04 -3.665252E-02 -1.695105E-04 -4.766781E-02 -2.674389E-04 -3.202832E-02 -1.073493E-04 -2.751650E-02 -9.309837E-05 -4.818224E-02 -2.392320E-04 -3.403290E-02 -1.418131E-04 -4.574016E-02 -2.354785E-04 -4.773050E-02 -2.476124E-04 -1.973857E-02 -5.421533E-05 -2.110340E-02 -6.009155E-05 -2.365572E-02 -6.648519E-05 -2.131581E-02 -5.365256E-05 -2.548189E-02 -8.296044E-05 -2.738380E-02 -8.103041E-05 -1.857273E-02 -4.206503E-05 -2.430428E-02 -7.766038E-05 -1.413939E-02 -2.821225E-05 -2.111430E-02 -5.198944E-05 -2.690085E-02 -9.577166E-05 -3.477173E-02 -1.518451E-04 -1.694126E-02 -4.610916E-05 -1.802237E-02 -4.677578E-05 -1.547843E-02 -3.071140E-05 -1.258621E-02 -2.676730E-05 -1.480772E-02 -2.870448E-05 -1.612853E-02 -3.275094E-05 -1.269558E-02 -2.294471E-05 -1.222544E-02 -1.845380E-05 -1.456829E-02 -3.311358E-05 -9.857513E-03 -1.669207E-05 -1.626604E-02 -4.458605E-05 -1.611973E-02 -3.998382E-05 -1.971005E-02 -6.046116E-05 -1.431380E-02 -2.594436E-05 -1.824132E-02 -5.495026E-05 -1.868711E-02 -5.257059E-05 -1.452558E-02 -2.646510E-05 -1.767521E-02 -4.157062E-05 -1.224286E-02 -2.048681E-05 -1.303634E-02 -2.950766E-05 -1.330541E-02 -2.767230E-05 -1.068270E-02 -1.441894E-05 -1.784826E-02 -4.556976E-05 -1.384211E-02 -2.825659E-05 -1.729138E-02 -3.675164E-05 -2.243899E-02 -6.004831E-05 -2.715655E-02 -9.746046E-05 -2.570504E-02 -8.920071E-05 -1.697516E-02 -3.974905E-05 -1.660121E-02 -3.254815E-05 -2.224450E-02 -5.768880E-05 -2.530951E-02 -9.164893E-05 -1.840321E-02 -4.291921E-05 -2.017760E-02 -6.034117E-05 -2.049468E-02 -4.717679E-05 -2.282381E-02 -6.631028E-05 -2.767431E-02 -8.578573E-05 -3.024946E-02 -1.035261E-04 -3.587885E-02 -1.385980E-04 -4.511890E-02 -2.188810E-04 -2.993143E-02 -1.172685E-04 -4.054681E-02 -1.947113E-04 -3.798858E-02 -1.756458E-04 -4.431323E-02 -2.215003E-04 -3.189602E-02 -1.184446E-04 -3.858052E-02 -1.789441E-04 -4.477428E-02 -2.243938E-04 -4.703586E-02 -2.423313E-04 -3.435009E-02 -1.302766E-04 -4.912269E-02 -2.876019E-04 -3.586050E-02 -1.601671E-04 -5.202288E-02 -2.962633E-04 -4.354503E-02 -2.302813E-04 -4.484413E-02 -2.193914E-04 -4.626090E-02 -2.295773E-04 -5.272085E-02 -3.140576E-04 -4.016476E-02 -1.851520E-04 -4.698312E-02 -2.700090E-04 -7.091623E-02 -6.301431E-04 -4.767851E-02 -2.507174E-04 -4.786618E-02 -2.609399E-04 -4.038170E-02 -1.767402E-04 -4.773992E-02 -2.552553E-04 -6.553326E-02 -4.533702E-04 -4.409668E-02 -2.246932E-04 -5.516788E-02 -3.459366E-04 -5.575453E-02 -3.327095E-04 -6.234876E-02 -4.350389E-04 -4.468174E-02 -2.279110E-04 -5.066531E-02 -2.919067E-04 -7.038547E-02 -5.211120E-04 -6.314941E-02 -4.264819E-04 -4.552569E-02 -2.253455E-04 -4.441783E-02 -2.383583E-04 -5.471130E-02 -3.515655E-04 -5.570461E-02 -3.610859E-04 -4.732130E-02 -2.515536E-04 -5.830395E-02 -4.045076E-04 -4.928927E-02 -2.534507E-04 -4.443354E-02 -2.155311E-04 -4.739067E-02 -2.296684E-04 -4.805589E-02 -2.422571E-04 -6.278404E-02 -4.449155E-04 -6.952048E-02 -5.145532E-04 -2.516418E-02 -7.500451E-05 -3.118980E-02 -1.112167E-04 -4.421923E-02 -2.460515E-04 -4.297090E-02 -2.413819E-04 -3.779702E-02 -1.857046E-04 -5.299210E-02 -3.257368E-04 -4.026655E-02 -1.807099E-04 -4.206085E-02 -2.256535E-04 -4.079656E-02 -1.987081E-04 -3.610266E-02 -1.649391E-04 -4.381846E-02 -2.263935E-04 -4.980200E-02 -2.864882E-04 -2.860174E-02 -1.712915E-04 -2.445643E-02 -1.020759E-04 -3.878477E-02 -2.026049E-04 -2.480236E-02 -6.838491E-05 -2.734325E-02 -9.461308E-05 -3.693833E-02 -1.822458E-04 -2.490103E-02 -7.329360E-05 -2.677818E-02 -8.305017E-05 -3.264724E-02 -1.437491E-04 -3.715999E-02 -2.239488E-04 -2.373224E-02 -6.329401E-05 -3.900048E-02 -1.863015E-04 -1.125664E-02 -2.181811E-05 -2.161924E-02 -7.195899E-05 -1.744174E-02 -4.273755E-05 -1.238666E-02 -2.145334E-05 -2.141496E-02 -5.796334E-05 -3.027096E-02 -9.721558E-05 -2.034339E-02 -5.581306E-05 -1.730093E-02 -4.542569E-05 -2.661993E-02 -8.452374E-05 -2.161864E-02 -5.465888E-05 -1.450249E-02 -2.452960E-05 -2.302180E-02 -6.121219E-05 -6.340596E-03 -5.499932E-06 -9.140384E-03 -1.585008E-05 -1.397492E-02 -2.598945E-05 -1.189682E-02 -2.167082E-05 -1.311861E-02 -2.016097E-05 -1.750898E-02 -4.671329E-05 -9.795781E-03 -1.975542E-05 -1.094278E-02 -1.976709E-05 -1.639501E-02 -3.446322E-05 -7.320291E-03 -7.206036E-06 -1.849111E-02 -4.335473E-05 -1.434342E-02 -2.991316E-05 -1.167361E-02 -1.759595E-05 -9.859610E-03 -1.289330E-05 -1.133762E-02 -1.561793E-05 -1.865540E-02 -4.343736E-05 -1.350518E-02 -2.129333E-05 -1.358916E-02 -2.271382E-05 -9.345990E-03 -1.288554E-05 -1.065558E-02 -1.661140E-05 -8.770677E-03 -1.373474E-05 -1.321675E-02 -2.139500E-05 -1.306520E-02 -2.539346E-05 -1.129556E-02 -2.247168E-05 -2.256971E-02 -6.489740E-05 -2.030940E-02 -5.625582E-05 -2.024779E-02 -5.494975E-05 -1.906346E-02 -4.047418E-05 -2.207434E-02 -6.757473E-05 -1.730595E-02 -3.788068E-05 -2.519625E-02 -9.116269E-05 -2.094102E-02 -5.386236E-05 -2.252706E-02 -7.123740E-05 -2.249589E-02 -6.348244E-05 -1.677894E-02 -4.502916E-05 -1.191569E-02 -2.092636E-05 -3.193092E-02 -1.066907E-04 -3.474315E-02 -1.354003E-04 -3.428457E-02 -1.357392E-04 -5.095478E-02 -3.135854E-04 -2.785938E-02 -1.094102E-04 -2.524070E-02 -7.421058E-05 -3.410453E-02 -1.325498E-04 -4.419349E-02 -2.287531E-04 -3.121966E-02 -1.145504E-04 -3.172565E-02 -1.576778E-04 -3.732684E-02 -1.794004E-04 -2.798822E-02 -9.904213E-05 -3.829890E-02 -1.745254E-04 -3.669187E-02 -1.481631E-04 -3.831832E-02 -1.640348E-04 -4.717292E-02 -2.431524E-04 -3.246900E-02 -1.090875E-04 -3.181397E-02 -1.110646E-04 -3.422430E-02 -1.455143E-04 -4.595899E-02 -2.593546E-04 -2.943781E-02 -1.144304E-04 -4.083225E-02 -2.153138E-04 -4.861114E-02 -2.668189E-04 -4.566953E-02 -2.275971E-04 -4.762605E-02 -2.702276E-04 -3.885235E-02 -1.678236E-04 -4.746492E-02 -2.732016E-04 -6.187919E-02 -3.977228E-04 -3.385168E-02 -1.655806E-04 -3.779606E-02 -1.742919E-04 -4.344441E-02 -2.144777E-04 -4.983722E-02 -2.780628E-04 -3.805659E-02 -1.869986E-04 -3.881150E-02 -1.693755E-04 -5.243613E-02 -3.131126E-04 -4.108551E-02 -1.935253E-04 -3.562260E-02 -1.423362E-04 -3.787549E-02 -1.654425E-04 -4.885818E-02 -2.578691E-04 -5.332653E-02 -3.213342E-04 -4.348495E-02 -2.331286E-04 -4.663540E-02 -2.474672E-04 -3.285731E-02 -1.375774E-04 -4.576846E-02 -2.311007E-04 -3.184404E-02 -1.192332E-04 -3.998156E-02 -1.844262E-04 -5.607513E-02 -3.422109E-04 -4.953587E-02 -2.676057E-04 -3.693477E-02 -1.700381E-04 -2.948894E-02 -1.003101E-04 -5.540578E-02 -3.851845E-04 -5.314370E-02 -3.109412E-04 -4.109329E-02 -1.998923E-04 -5.093669E-02 -3.059425E-04 -4.209028E-02 -2.361378E-04 -4.465662E-02 -2.120794E-04 -2.708725E-02 -9.631361E-05 -3.635562E-02 -1.595262E-04 -4.238804E-02 -1.947726E-04 -3.974596E-02 -1.806688E-04 -2.982744E-02 -1.207685E-04 -3.283297E-02 -1.354648E-04 -3.271957E-02 -1.397951E-04 -2.724542E-02 -1.015777E-04 -3.609538E-02 -1.698517E-04 -3.335710E-02 -1.624664E-04 -2.079895E-02 -5.610101E-05 -2.603309E-02 -9.493586E-05 -2.597898E-02 -9.783976E-05 -3.135251E-02 -1.402609E-04 -2.775791E-02 -9.666104E-05 -3.244893E-02 -1.414683E-04 -1.736161E-02 -4.120267E-05 -2.103660E-02 -6.662057E-05 -2.254942E-02 -6.127994E-05 -2.617237E-02 -9.655322E-05 -1.879302E-02 -4.046759E-05 -2.239207E-02 -7.270900E-05 -1.582884E-02 -3.421542E-05 -1.701627E-02 -3.287993E-05 -1.586730E-02 -3.071759E-05 -1.637662E-02 -4.285548E-05 -1.575516E-02 -2.967636E-05 -1.749637E-02 -4.429182E-05 -1.377991E-02 -2.869990E-05 -1.666042E-02 -3.900259E-05 -1.590173E-02 -4.041443E-05 -1.533466E-02 -3.740187E-05 -1.242820E-02 -2.230617E-05 -2.005763E-02 -5.559139E-05 -1.888435E-02 -5.293569E-05 -1.437606E-02 -2.992754E-05 -1.160735E-02 -2.488650E-05 -1.903862E-02 -4.929965E-05 -1.792944E-02 -4.623131E-05 -1.925927E-02 -4.967790E-05 -1.197483E-02 -1.865556E-05 -7.572584E-03 -1.282465E-05 -1.344056E-02 -2.673348E-05 -1.049282E-02 -1.487580E-05 -1.018581E-02 -1.491092E-05 -9.650534E-03 -1.458568E-05 -7.696745E-03 -8.956471E-06 -6.117465E-03 -6.145859E-06 -7.711888E-03 -1.379326E-05 -7.178538E-03 -8.529096E-06 -7.013352E-03 -9.358596E-06 -5.223833E-03 -4.743484E-06 -1.958755E-02 -5.840140E-05 -1.514889E-02 -3.048083E-05 -1.420009E-02 -3.392782E-05 -1.779423E-02 -4.000672E-05 -9.916829E-03 -1.600897E-05 -1.084516E-02 -1.883449E-05 -1.721403E-02 -3.892250E-05 -1.697631E-02 -5.336366E-05 -1.126561E-02 -1.779695E-05 -1.183784E-02 -2.042908E-05 -1.279900E-02 -2.278884E-05 -1.221352E-02 -2.185990E-05 -2.126137E-02 -5.259427E-05 -1.948422E-02 -7.413728E-05 -2.691940E-02 -7.987754E-05 -2.366460E-02 -7.849119E-05 -1.493129E-02 -3.458121E-05 -2.528845E-02 -7.805956E-05 -1.941301E-02 -4.532019E-05 -3.315469E-02 -1.407045E-04 -1.764622E-02 -4.338977E-05 -1.952377E-02 -5.147550E-05 -2.600704E-02 -9.058738E-05 -2.442799E-02 -7.377464E-05 -2.298511E-02 -6.212241E-05 -2.519641E-02 -9.638931E-05 -3.975880E-02 -1.694798E-04 -3.835063E-02 -1.723954E-04 -2.433477E-02 -7.177972E-05 -2.711003E-02 -1.279711E-04 -3.083661E-02 -1.018837E-04 -4.207502E-02 -2.089394E-04 -2.844391E-02 -9.560578E-05 -2.835547E-02 -8.648090E-05 -5.190679E-02 -2.829647E-04 -3.607591E-02 -1.406622E-04 -2.726024E-02 -9.295552E-05 -2.334992E-02 -7.837059E-05 -2.556006E-02 -8.066549E-05 -3.157571E-02 -1.018377E-04 -2.717890E-02 -9.754656E-05 -3.812328E-02 -1.529731E-04 -3.196833E-02 -1.246738E-04 -3.749985E-02 -1.546562E-04 -1.861417E-02 -4.193655E-05 -2.827800E-02 -8.681001E-05 -3.521111E-02 -1.537273E-04 -3.631214E-02 -1.510528E-04 -3.010902E-02 -1.101278E-04 -2.898513E-02 -1.002289E-04 -3.759216E-02 -1.686797E-04 -3.924809E-02 -1.926092E-04 -3.000742E-02 -1.032469E-04 -3.063104E-02 -1.058005E-04 -3.016836E-02 -1.406736E-04 -3.811226E-02 -2.142070E-04 -3.067660E-02 -1.137129E-04 -2.919174E-02 -9.744001E-05 -4.351818E-02 -2.481411E-04 -3.459089E-02 -1.418237E-04 -2.354519E-02 -7.125933E-05 -2.341512E-02 -7.530145E-05 -3.423411E-02 -1.362388E-04 -3.807351E-02 -1.835906E-04 -3.060066E-02 -1.306426E-04 -3.887634E-02 -1.767107E-04 -2.972630E-02 -1.452173E-04 -2.761804E-02 -8.313790E-05 -2.564981E-02 -1.041595E-04 -2.302814E-02 -5.748532E-05 -3.430159E-02 -1.266003E-04 -3.080546E-02 -1.097842E-04 -1.862840E-02 -4.692046E-05 -2.212362E-02 -5.769304E-05 -3.055531E-02 -1.529521E-04 -2.289574E-02 -8.233761E-05 -2.656172E-02 -8.446802E-05 -3.583300E-02 -1.541747E-04 -2.557682E-02 -7.916517E-05 -2.097606E-02 -5.055022E-05 -2.228757E-02 -5.988269E-05 -1.816051E-02 -3.901578E-05 -2.325555E-02 -7.127170E-05 -2.918248E-02 -1.039399E-04 -1.305527E-02 -2.604090E-05 -1.318002E-02 -2.893713E-05 -1.574393E-02 -3.521171E-05 -1.414192E-02 -3.552473E-05 -1.633140E-02 -3.849962E-05 -1.643542E-02 -4.093687E-05 -1.215108E-02 -2.596067E-05 -1.663208E-02 -4.623828E-05 -1.519499E-02 -2.784484E-05 -1.392851E-02 -2.190759E-05 -2.267580E-02 -6.466320E-05 -2.215409E-02 -7.872980E-05 -1.106097E-02 -1.935578E-05 -1.318957E-02 -2.458468E-05 -1.432387E-02 -2.771689E-05 -1.302310E-02 -2.533330E-05 -1.818189E-02 -4.776340E-05 -1.401528E-02 -2.698770E-05 -3.589051E-03 -3.157955E-06 -9.717553E-03 -1.921247E-05 -8.432737E-03 -1.168760E-05 -8.867899E-03 -2.125223E-05 -1.176987E-02 -2.796774E-05 -1.387858E-02 -2.900888E-05 -7.333775E-03 -9.493537E-06 -5.494780E-03 -7.270347E-06 -8.505259E-03 -1.106187E-05 -5.349113E-03 -6.272249E-06 -7.278213E-03 -7.362414E-06 -8.521400E-03 -1.020574E-05 -8.308309E-03 -1.075116E-05 -8.167064E-03 -1.109423E-05 -5.533013E-03 -6.466675E-06 -5.112442E-03 -8.851249E-06 -5.870076E-03 -6.648936E-06 -3.929558E-03 -2.494118E-06 -1.248728E-02 -2.662149E-05 -7.689572E-03 -1.632791E-05 -1.064286E-02 -1.731638E-05 -8.865827E-03 -2.182318E-05 -1.060594E-02 -1.974250E-05 -1.107000E-02 -1.741690E-05 -1.046576E-02 -1.304525E-05 -8.923758E-03 -1.382295E-05 -6.048588E-03 -6.515013E-06 -1.140457E-02 -1.772344E-05 -1.071605E-02 -2.320839E-05 -1.108521E-02 -2.146136E-05 -1.372658E-02 -3.150815E-05 -1.185879E-02 -2.592177E-05 -1.328057E-02 -2.007755E-05 -2.366818E-02 -6.240710E-05 -1.310524E-02 -2.483124E-05 -1.756288E-02 -3.846799E-05 -1.953925E-02 -4.224682E-05 -2.714173E-02 -9.200317E-05 -2.089836E-02 -5.417932E-05 -1.880252E-02 -4.633361E-05 -1.825440E-02 -4.676871E-05 -1.703893E-02 -3.290578E-05 -1.536560E-02 -2.501324E-05 -1.723409E-02 -4.375407E-05 -2.378506E-02 -6.856927E-05 -2.116439E-02 -5.565273E-05 -1.694042E-02 -5.241605E-05 -1.860566E-02 -4.783232E-05 -1.867229E-02 -4.443429E-05 -2.347238E-02 -6.225289E-05 -1.240017E-02 -2.472321E-05 -1.834566E-02 -5.076889E-05 -2.345212E-02 -6.899204E-05 -1.744726E-02 -4.012671E-05 -2.139472E-02 -5.719986E-05 -2.881782E-02 -1.041089E-04 -2.249258E-02 -6.622191E-05 -3.099210E-02 -1.124327E-04 -2.723683E-02 -1.077003E-04 -2.961326E-02 -1.107622E-04 -2.886855E-02 -1.209198E-04 -3.359957E-02 -1.450335E-04 -1.842677E-02 -4.144114E-05 -2.067987E-02 -5.241403E-05 -2.384292E-02 -8.392423E-05 -2.523377E-02 -7.399318E-05 -1.482060E-02 -2.934033E-05 -1.685267E-02 -4.268337E-05 -2.474266E-02 -6.858025E-05 -2.464842E-02 -7.502593E-05 -1.931712E-02 -6.623063E-05 -2.571146E-02 -8.499419E-05 -1.919509E-02 -5.019677E-05 -2.194688E-02 -6.974387E-05 -2.021151E-02 -5.705824E-05 -1.939673E-02 -5.393718E-05 -2.366200E-02 -7.358565E-05 -3.181441E-02 -1.136270E-04 -1.839678E-02 -3.699144E-05 -1.988625E-02 -6.005553E-05 -2.730155E-02 -9.038604E-05 -1.977072E-02 -5.242521E-05 -1.499223E-02 -2.966075E-05 -2.040274E-02 -6.508672E-05 -1.411627E-02 -2.586129E-05 -1.706927E-02 -3.713346E-05 -1.171754E-02 -1.971987E-05 -2.013780E-02 -5.939024E-05 -2.029685E-02 -6.146855E-05 -2.908889E-02 -1.037204E-04 -1.740582E-02 -3.597993E-05 -1.564902E-02 -6.335090E-05 -1.991302E-02 -4.746765E-05 -1.756837E-02 -4.867597E-05 -2.061727E-02 -6.000022E-05 -2.574876E-02 -8.243095E-05 -1.191200E-02 -1.934272E-05 -2.009666E-02 -4.813195E-05 -1.746764E-02 -5.388627E-05 -1.239022E-02 -2.424386E-05 -2.173442E-02 -4.983400E-05 -1.517203E-02 -3.068246E-05 -1.329712E-02 -2.150332E-05 -2.354363E-02 -8.627378E-05 -1.532883E-02 -3.270327E-05 -1.472157E-02 -3.319558E-05 -1.938773E-02 -4.827508E-05 -2.165397E-02 -6.469989E-05 -1.271540E-02 -1.967861E-05 -1.665138E-02 -4.718665E-05 -9.283413E-03 -1.143878E-05 -1.046201E-02 -2.072362E-05 -1.673621E-02 -3.707353E-05 -1.445073E-02 -2.924329E-05 -7.634313E-03 -1.179099E-05 -7.070615E-03 -8.043539E-06 -1.155338E-02 -1.871310E-05 -8.618350E-03 -1.431974E-05 -9.424572E-03 -1.207411E-05 -8.545662E-03 -1.247473E-05 -3.838707E-03 -4.805334E-06 -5.882837E-03 -4.922359E-06 -8.145896E-03 -1.250575E-05 -5.962503E-03 -5.532809E-06 -1.116529E-02 -3.223331E-05 -1.080742E-02 -1.791118E-05 -4.327838E-03 -3.722361E-06 -3.132066E-03 -2.831681E-06 -5.985652E-03 -5.243244E-06 -6.402910E-03 -9.755445E-06 -5.996163E-03 -1.017758E-05 -7.516797E-03 -1.133864E-05 -1.109701E-03 -5.874266E-07 -3.145346E-03 -2.131176E-06 -3.071793E-03 -3.203751E-06 -5.112008E-03 -6.623440E-06 -1.057799E-02 -2.219886E-05 -4.499437E-03 -4.252659E-06 -8.765798E-03 -1.784490E-05 -8.921959E-03 -1.351279E-05 -7.502480E-03 -1.202219E-05 -7.196379E-03 -9.204669E-06 -5.832796E-03 -1.016451E-05 -7.038191E-03 -6.254164E-06 -9.382421E-03 -1.566041E-05 -1.345656E-02 -3.028211E-05 -6.337258E-03 -7.407982E-06 -8.543843E-03 -1.265584E-05 -1.381261E-02 -2.802183E-05 -1.190749E-02 -1.793613E-05 -9.437321E-03 -1.194730E-05 -9.732419E-03 -1.651545E-05 -1.500610E-02 -3.340884E-05 -1.678411E-02 -3.491286E-05 -1.028094E-02 -1.374135E-05 -1.485088E-02 -3.057123E-05 -8.964661E-03 -1.485585E-05 -1.226822E-02 -2.015578E-05 -1.042577E-02 -1.589161E-05 -6.708855E-03 -9.646613E-06 -1.277453E-02 -2.203458E-05 -7.224932E-03 -8.275023E-06 -1.255069E-02 -2.759249E-05 -1.234545E-02 -2.557302E-05 -1.676381E-02 -3.443801E-05 -2.225843E-02 -7.382383E-05 -9.664194E-03 -1.388455E-05 -1.384208E-02 -2.485536E-05 -1.170741E-02 -2.722875E-05 -1.298519E-02 -2.278333E-05 -1.219523E-02 -2.170852E-05 -1.455145E-02 -2.652917E-05 -1.803860E-02 -4.551654E-05 -1.716760E-02 -3.418763E-05 -1.512094E-02 -3.308210E-05 -1.040105E-02 -1.595604E-05 -1.796769E-02 -3.949154E-05 -1.872289E-02 -4.103439E-05 -9.077191E-03 -1.199908E-05 -1.631540E-02 -3.369350E-05 -1.526935E-02 -3.456559E-05 -2.236068E-02 -7.214380E-05 -8.845141E-03 -2.279004E-05 -1.352347E-02 -2.540469E-05 -1.484395E-02 -3.807417E-05 -1.804445E-02 -4.342710E-05 -1.007944E-02 -1.452963E-05 -1.467548E-02 -4.429846E-05 -2.042873E-02 -5.671423E-05 -1.758792E-02 -5.925658E-05 -1.761311E-02 -4.685220E-05 -2.004514E-02 -5.536859E-05 -1.238507E-02 -2.340619E-05 -1.046525E-02 -1.737035E-05 -1.444879E-02 -3.355825E-05 -8.277840E-03 -1.437311E-05 -1.079506E-02 -1.848135E-05 -1.561308E-02 -4.224535E-05 -1.137179E-02 -2.608300E-05 -1.280633E-02 -2.210100E-05 -1.162328E-02 -2.231053E-05 -1.296251E-02 -2.730055E-05 -1.389949E-02 -3.026765E-05 -1.411889E-02 -3.201101E-05 -8.232902E-03 -1.404323E-05 -1.242929E-02 -2.465073E-05 -9.545643E-03 -1.867285E-05 -9.740853E-03 -1.452865E-05 -1.306805E-02 -2.407394E-05 -1.010373E-02 -1.920540E-05 -8.546938E-03 -1.818086E-05 -9.873382E-03 -2.146517E-05 -1.643827E-02 -5.513889E-05 -1.117018E-02 -2.390203E-05 -9.216643E-03 -1.323340E-05 -1.434946E-02 -2.862359E-05 -1.245343E-02 -2.322243E-05 -1.212911E-02 -2.285075E-05 -9.836707E-03 -1.645734E-05 -1.201364E-02 -2.024192E-05 -1.596859E-02 -3.442108E-05 -1.368837E-02 -2.688655E-05 -1.015380E-02 -1.592459E-05 -9.892082E-03 -1.321377E-05 -1.360812E-02 -3.262388E-05 -1.003913E-02 -1.400775E-05 -1.478387E-02 -3.871602E-05 -9.205053E-03 -1.179337E-05 -9.383339E-03 -1.300416E-05 -7.080640E-03 -8.203597E-06 -6.507205E-03 -7.055020E-06 -8.843528E-03 -1.233759E-05 -1.087757E-02 -1.436248E-05 -9.075363E-03 -1.538346E-05 -4.079253E-03 -4.032406E-06 -6.146524E-03 -1.072823E-05 -7.605892E-03 -2.021674E-05 -6.737771E-03 -8.340942E-06 -7.791360E-03 -1.322504E-05 -4.367729E-03 -5.871757E-06 -5.112041E-03 -7.704614E-06 -6.685377E-03 -8.598228E-06 -5.332365E-03 -6.964174E-06 -2.025949E-03 -1.106713E-06 -7.308916E-03 -1.083527E-05 -2.657078E-03 -2.018754E-06 -3.845964E-03 -3.282949E-06 -7.906876E-03 -1.309640E-05 -3.020084E-03 -2.116323E-06 -4.987032E-03 -5.707520E-06 -1.202747E-02 -3.060476E-05 -7.093728E-03 -7.508046E-06 -7.422432E-03 -8.656078E-06 -9.077236E-03 -2.478476E-05 -6.891522E-03 -1.220166E-05 -5.076941E-03 -4.237107E-06 -8.523515E-03 -1.390735E-05 -6.414767E-03 -9.365735E-06 -9.380022E-03 -1.462751E-05 -8.456230E-03 -1.199551E-05 -9.158278E-03 -1.192449E-05 -2.298967E-03 -1.013954E-06 -7.058890E-03 -6.383597E-06 -4.876567E-03 -3.760010E-06 -1.316587E-02 -2.644816E-05 -8.359774E-03 -1.081163E-05 -1.469243E-02 -3.486053E-05 -7.460324E-03 -7.746075E-06 -7.025833E-03 -7.150545E-06 -4.599519E-03 -5.621223E-06 -1.754686E-02 -5.599449E-05 -8.496819E-03 -1.519010E-05 -1.334303E-02 -2.243087E-05 -1.273838E-02 -2.372539E-05 -1.041534E-02 -2.066977E-05 -9.140508E-03 -1.075841E-05 -1.657971E-02 -4.469598E-05 -1.247039E-02 -2.906265E-05 -1.297140E-02 -2.473045E-05 -1.664008E-02 -4.158991E-05 -1.836946E-02 -4.883353E-05 -1.411162E-02 -4.313628E-05 -1.406170E-02 -2.454496E-05 -2.270767E-02 -6.143414E-05 -1.567617E-02 -3.204306E-05 -1.611804E-02 -3.752055E-05 -1.312188E-02 -2.232058E-05 -1.726062E-02 -4.888466E-05 -2.260453E-02 -5.912727E-05 -2.295104E-02 -7.305721E-05 -2.082979E-02 -5.212405E-05 -3.139636E-02 -1.124507E-04 -1.701985E-02 -5.917730E-05 -1.573079E-02 -3.833147E-05 -1.648501E-02 -4.521319E-05 -1.295769E-02 -2.000518E-05 -1.538561E-02 -3.581006E-05 -2.113104E-02 -5.954145E-05 -1.269260E-02 -1.914463E-05 -1.597644E-02 -2.898818E-05 -1.749472E-02 -4.995488E-05 -1.170597E-02 -2.494586E-05 -1.972148E-02 -5.486069E-05 -2.930071E-02 -1.089599E-04 -1.284182E-02 -2.296682E-05 -1.568134E-02 -3.876494E-05 -1.557912E-02 -3.819947E-05 -1.760851E-02 -3.904704E-05 -1.450774E-02 -4.086604E-05 -1.375807E-02 -3.319496E-05 -1.290194E-02 -2.142172E-05 -1.402767E-02 -2.932888E-05 -1.769773E-02 -4.995015E-05 -1.419402E-02 -3.040909E-05 -1.675459E-02 -3.235864E-05 -1.976178E-02 -5.009760E-05 -1.675838E-02 -3.910658E-05 -1.689170E-02 -3.464763E-05 -1.284022E-02 -2.649261E-05 -1.316325E-02 -2.377493E-05 -1.455084E-02 -2.510139E-05 -1.102459E-02 -1.885880E-05 -8.350866E-03 -8.396386E-06 -8.651131E-03 -1.124192E-05 -1.376705E-02 -2.764081E-05 -1.428569E-02 -3.790437E-05 -1.724679E-02 -3.366818E-05 -1.584053E-02 -3.651487E-05 -1.193033E-02 -2.181873E-05 -1.984626E-02 -5.592598E-05 -1.214395E-02 -1.945894E-05 -1.365596E-02 -2.557166E-05 -1.898643E-02 -5.157604E-05 -1.455388E-02 -2.799320E-05 -1.182403E-02 -2.115918E-05 -8.626630E-03 -1.007433E-05 -1.197781E-02 -1.983881E-05 -1.005772E-02 -1.640145E-05 -1.873799E-02 -4.930639E-05 -1.693176E-02 -3.650659E-05 -8.818286E-03 -1.286259E-05 -1.139988E-02 -1.621095E-05 -1.028933E-02 -1.453198E-05 -8.404568E-03 -9.460915E-06 -1.275744E-02 -2.774096E-05 -1.168183E-02 -1.973529E-05 -8.454758E-03 -1.146522E-05 -8.323601E-03 -8.829709E-06 -7.495546E-03 -8.715799E-06 -5.296323E-03 -6.046794E-06 -9.891852E-03 -1.398584E-05 -9.955102E-03 -1.943758E-05 -8.059482E-03 -1.695389E-05 -9.676780E-03 -1.658395E-05 -4.834433E-03 -5.897640E-06 -6.636064E-03 -7.609925E-06 -7.619866E-03 -1.212597E-05 -2.894660E-03 -1.856127E-06 -7.553124E-03 -1.223718E-05 -2.300404E-03 -1.121136E-06 -7.327033E-03 -9.105655E-06 -4.846398E-03 -4.166167E-06 -8.315901E-03 -1.319751E-05 -7.221182E-03 -7.485967E-06 -5.462020E-03 -3.502442E-06 -9.453474E-03 -1.071037E-05 -1.293719E-02 -2.483879E-05 -1.321412E-02 -2.574150E-05 -1.359066E-02 -2.348428E-05 -9.882529E-03 -1.691834E-05 -1.409150E-02 -3.523994E-05 -1.070054E-02 -1.906767E-05 -1.266239E-02 -1.972906E-05 -1.432889E-02 -3.545618E-05 -1.011895E-02 -1.360275E-05 -1.025183E-02 -1.608180E-05 -5.529921E-03 -7.911985E-06 -1.629012E-02 -3.223742E-05 -1.114479E-02 -2.101499E-05 -1.215717E-02 -1.846892E-05 -1.689915E-02 -4.620696E-05 -1.139613E-02 -1.742241E-05 -1.213431E-02 -2.199183E-05 -1.846118E-02 -5.474736E-05 -1.709853E-02 -3.678232E-05 -1.735796E-02 -4.553680E-05 -1.853277E-02 -4.646147E-05 -1.763467E-02 -4.466597E-05 -1.818218E-02 -4.824198E-05 -1.872596E-02 -6.942835E-05 -2.022757E-02 -5.512053E-05 -1.699277E-02 -3.870609E-05 -1.055491E-02 -1.687463E-05 -1.377011E-02 -2.394912E-05 -1.684636E-02 -3.614976E-05 -2.147831E-02 -6.616404E-05 -1.730285E-02 -3.913079E-05 -1.957720E-02 -5.565960E-05 -1.855637E-02 -4.612437E-05 -2.805186E-02 -1.029670E-04 -2.418902E-02 -6.781295E-05 -2.188652E-02 -6.579480E-05 -1.771569E-02 -4.195257E-05 -2.256760E-02 -6.456468E-05 -1.918774E-02 -5.286254E-05 -2.960608E-02 -1.004602E-04 -2.712839E-02 -8.980797E-05 -2.794452E-02 -1.254679E-04 -3.008968E-02 -1.089661E-04 -3.649934E-02 -1.734688E-04 -2.937679E-02 -1.082854E-04 -3.282797E-02 -1.345859E-04 -4.521759E-02 -2.543431E-04 -2.398232E-02 -7.384139E-05 -3.254161E-02 -1.265125E-04 -3.001705E-02 -1.111357E-04 -2.399317E-02 -6.646668E-05 -3.503715E-02 -1.480964E-04 -3.148980E-02 -1.398976E-04 -2.604556E-02 -9.628490E-05 -3.036652E-02 -1.264006E-04 -2.939357E-02 -1.170192E-04 -3.743087E-02 -1.775840E-04 -3.085132E-02 -1.134780E-04 -4.147944E-02 -1.996575E-04 -3.527838E-02 -1.521337E-04 -2.366172E-02 -6.804925E-05 -2.713514E-02 -1.027237E-04 -2.174215E-02 -5.749073E-05 -2.675659E-02 -8.382558E-05 -2.359986E-02 -7.430600E-05 -2.367000E-02 -7.298151E-05 -3.227569E-02 -1.232973E-04 -2.733957E-02 -1.003086E-04 -3.002721E-02 -9.578465E-05 -3.707352E-02 -1.507472E-04 -2.382487E-02 -6.891582E-05 -2.959048E-02 -1.054578E-04 -1.869568E-02 -4.658988E-05 -2.597326E-02 -8.064723E-05 -2.153451E-02 -5.840127E-05 -1.628961E-02 -4.271967E-05 -2.741092E-02 -8.522384E-05 -2.733756E-02 -9.324995E-05 -2.864715E-02 -1.013597E-04 -3.455306E-02 -1.448078E-04 -3.347393E-02 -1.327937E-04 -3.527874E-02 -1.637966E-04 -2.441550E-02 -8.480735E-05 -2.623780E-02 -8.256558E-05 -1.716091E-02 -5.253723E-05 -1.324941E-02 -2.243910E-05 -2.246659E-02 -6.057114E-05 -2.192475E-02 -5.668645E-05 -2.272490E-02 -7.122633E-05 -3.254641E-02 -1.485757E-04 -1.504227E-02 -2.731302E-05 -1.654008E-02 -4.044070E-05 -2.442456E-02 -8.014611E-05 -2.260914E-02 -6.419431E-05 -1.988931E-02 -6.266967E-05 -3.422754E-02 -1.464931E-04 -1.176286E-02 -1.819119E-05 -1.090258E-02 -1.835148E-05 -1.428818E-02 -2.432816E-05 -9.647717E-03 -2.418655E-05 -1.343547E-02 -2.294350E-05 -1.672666E-02 -4.724036E-05 -1.498173E-02 -2.999368E-05 -1.209667E-02 -2.648058E-05 -1.777083E-02 -3.928551E-05 -1.906246E-02 -4.800003E-05 -1.227253E-02 -2.454598E-05 -2.054852E-02 -5.627860E-05 -1.401620E-02 -3.395841E-05 -1.618774E-02 -3.315176E-05 -9.366645E-03 -1.322093E-05 -1.271711E-02 -2.946682E-05 -1.514436E-02 -3.698271E-05 -1.357568E-02 -2.661503E-05 -6.059837E-03 -6.072503E-06 -7.510121E-03 -8.006288E-06 -1.105528E-02 -2.101618E-05 -4.887318E-03 -5.427586E-06 -8.183502E-03 -1.217955E-05 -9.960866E-03 -1.427453E-05 -1.302537E-02 -2.752410E-05 -1.432159E-02 -3.046582E-05 -1.362132E-02 -3.362721E-05 -1.728813E-02 -4.356686E-05 -1.882553E-02 -4.115052E-05 -2.022059E-02 -5.094537E-05 -9.935622E-03 -1.476612E-05 -1.423961E-02 -2.791015E-05 -1.078457E-02 -3.254092E-05 -1.010483E-02 -1.743918E-05 -1.145080E-02 -2.471476E-05 -1.537588E-02 -3.948184E-05 -3.025085E-02 -1.211946E-04 -2.522059E-02 -8.250671E-05 -2.231553E-02 -6.323615E-05 -2.348918E-02 -6.900725E-05 -2.273346E-02 -5.949276E-05 -1.817883E-02 -4.693722E-05 -2.354895E-02 -7.506897E-05 -2.667415E-02 -1.051466E-04 -1.923174E-02 -4.215181E-05 -2.251124E-02 -6.197340E-05 -2.212823E-02 -7.382044E-05 -2.627751E-02 -1.262016E-04 -2.639401E-02 -8.435288E-05 -2.355251E-02 -6.467494E-05 -1.824258E-02 -4.508497E-05 -2.658510E-02 -7.928794E-05 -2.675987E-02 -1.019694E-04 -2.294475E-02 -7.019770E-05 -2.982020E-02 -1.172018E-04 -2.650631E-02 -7.994237E-05 -3.317163E-02 -1.365190E-04 -4.086398E-02 -2.004161E-04 -2.796562E-02 -1.066212E-04 -3.652322E-02 -1.878727E-04 -3.754838E-02 -1.647330E-04 -3.743316E-02 -1.789631E-04 -2.670365E-02 -8.773372E-05 -2.985106E-02 -9.743471E-05 -3.608668E-02 -1.610685E-04 -4.205670E-02 -1.842040E-04 -3.922858E-02 -1.953706E-04 -4.448502E-02 -2.469956E-04 -4.693316E-02 -2.454100E-04 -4.848290E-02 -2.671676E-04 -4.023569E-02 -1.713754E-04 -4.294287E-02 -2.063518E-04 -4.004042E-02 -1.923766E-04 -4.357533E-02 -2.186888E-04 -3.728630E-02 -1.990696E-04 -4.083902E-02 -1.919817E-04 -3.857997E-02 -1.821259E-04 -4.901557E-02 -2.767777E-04 -5.790464E-02 -3.872461E-04 -3.900935E-02 -1.730109E-04 -4.875435E-02 -2.872844E-04 -5.468952E-02 -3.456684E-04 -4.179342E-02 -2.001437E-04 -5.381510E-02 -3.724283E-04 -4.237622E-02 -1.941664E-04 -5.150719E-02 -2.908123E-04 -2.903885E-02 -1.031896E-04 -3.589197E-02 -1.392764E-04 -6.487280E-02 -5.024965E-04 -3.912537E-02 -1.856374E-04 -3.458921E-02 -1.576917E-04 -4.382484E-02 -2.169611E-04 -5.176404E-02 -2.803853E-04 -5.379322E-02 -3.067204E-04 -4.070213E-02 -1.816834E-04 -4.088864E-02 -1.878390E-04 -3.237349E-02 -1.191717E-04 -3.712382E-02 -1.504938E-04 -3.997504E-02 -1.782786E-04 -3.267526E-02 -1.297525E-04 -4.125020E-02 -1.924418E-04 -3.958215E-02 -1.901035E-04 -4.006168E-02 -1.832588E-04 -3.769986E-02 -1.717343E-04 -5.100625E-02 -2.898618E-04 -3.840461E-02 -1.682447E-04 -3.871359E-02 -1.824587E-04 -4.283505E-02 -2.070659E-04 -2.126415E-02 -4.973731E-05 -2.889038E-02 -1.088896E-04 -2.104568E-02 -6.548850E-05 -2.848041E-02 -1.298630E-04 -3.029276E-02 -1.138285E-04 -2.862761E-02 -9.675198E-05 -2.647642E-02 -8.418245E-05 -2.861468E-02 -1.081191E-04 -3.468627E-02 -1.277418E-04 -3.349950E-02 -1.317290E-04 -3.982514E-02 -1.794172E-04 -3.268932E-02 -1.255468E-04 -1.912998E-02 -4.577703E-05 -2.085203E-02 -6.226159E-05 -1.828176E-02 -4.944577E-05 -2.381226E-02 -8.891365E-05 -2.311077E-02 -6.656845E-05 -2.473067E-02 -7.334387E-05 -1.375348E-02 -2.283618E-05 -1.804582E-02 -4.143497E-05 -2.006609E-02 -4.873691E-05 -1.884382E-02 -4.819154E-05 -1.080497E-02 -1.376297E-05 -1.726756E-02 -3.375398E-05 -1.609526E-02 -3.821013E-05 -1.411969E-02 -2.227160E-05 -9.192959E-03 -1.631434E-05 -9.217380E-03 -1.968772E-05 -1.468647E-02 -2.623946E-05 -1.488244E-02 -3.525990E-05 -1.269069E-02 -2.294212E-05 -7.765318E-03 -1.103799E-05 -1.558612E-02 -3.323429E-05 -1.740029E-02 -5.933208E-05 -8.717198E-03 -1.192243E-05 -9.978251E-03 -1.485392E-05 -8.720289E-03 -1.149015E-05 -1.020781E-02 -2.305230E-05 -1.149654E-02 -1.940965E-05 -1.788016E-02 -4.220362E-05 -1.110418E-02 -1.718658E-05 -2.482931E-02 -1.001964E-04 -1.645044E-02 -4.054796E-05 -1.894652E-02 -4.678890E-05 -1.434380E-02 -3.165754E-05 -1.258510E-02 -2.725122E-05 -2.869257E-02 -1.023938E-04 -1.622348E-02 -4.537915E-05 -2.185647E-02 -5.507321E-05 -1.954237E-02 -4.309665E-05 -2.035261E-02 -6.714277E-05 -2.087253E-02 -4.818549E-05 -1.582401E-02 -3.291377E-05 -2.671073E-02 -9.777211E-05 -2.512135E-02 -7.547644E-05 -2.506727E-02 -7.485132E-05 -1.404823E-02 -2.446571E-05 -2.280451E-02 -6.346040E-05 -2.677285E-02 -8.686426E-05 -2.736182E-02 -1.019696E-04 -4.245358E-02 -2.031516E-04 -3.781676E-02 -1.657018E-04 -3.988823E-02 -1.948658E-04 -4.639548E-02 -2.606408E-04 -2.998045E-02 -1.078111E-04 -3.116186E-02 -1.123729E-04 -5.002484E-02 -3.007452E-04 -4.018989E-02 -2.134973E-04 -3.706873E-02 -1.705493E-04 -4.841352E-02 -3.006314E-04 -4.754905E-02 -2.640563E-04 -4.364220E-02 -2.190548E-04 -5.500865E-02 -3.565984E-04 -5.532256E-02 -3.576995E-04 -5.047039E-02 -2.937072E-04 -5.060213E-02 -3.044944E-04 -6.416214E-02 -4.414515E-04 -4.420142E-02 -2.374155E-04 -7.189342E-02 -5.468649E-04 -6.014136E-02 -3.940429E-04 -6.349933E-02 -4.207906E-04 -8.074317E-02 -7.419627E-04 -5.500576E-02 -3.305937E-04 -6.217792E-02 -4.170384E-04 -5.168117E-02 -2.909656E-04 -6.458066E-02 -4.333028E-04 -5.398600E-02 -3.328720E-04 -6.745198E-02 -5.123388E-04 -7.585366E-02 -6.172453E-04 -7.667038E-02 -6.845297E-04 -8.031109E-02 -7.564824E-04 -7.073034E-02 -5.458581E-04 -7.573691E-02 -6.181860E-04 -7.610572E-02 -6.320225E-04 -9.472534E-02 -1.007312E-03 -8.942164E-02 -8.735772E-04 -6.678710E-02 -5.406900E-04 -6.813491E-02 -4.871261E-04 -6.435084E-02 -4.334073E-04 -6.618817E-02 -4.692824E-04 -8.000303E-02 -7.136374E-04 -7.211464E-02 -6.123883E-04 -9.166818E-02 -8.952483E-04 -5.925322E-02 -4.492782E-04 -9.608215E-02 -9.616517E-04 -9.591584E-02 -9.489183E-04 -6.551541E-02 -4.745820E-04 -9.550949E-02 -9.531681E-04 -5.425472E-02 -3.720953E-04 -6.247517E-02 -4.393993E-04 -5.896488E-02 -4.002445E-04 -5.123472E-02 -2.943668E-04 -7.803224E-02 -6.809156E-04 -6.717709E-02 -5.320659E-04 -4.752627E-02 -2.528912E-04 -4.731481E-02 -2.339422E-04 -6.377650E-02 -5.060539E-04 -6.343027E-02 -4.521666E-04 -5.104223E-02 -3.253849E-04 -6.842536E-02 -5.197571E-04 -3.944396E-02 -2.024706E-04 -3.774197E-02 -1.745573E-04 -3.016158E-02 -1.057402E-04 -2.940171E-02 -1.161392E-04 -5.428473E-02 -3.726778E-04 -3.466389E-02 -1.374879E-04 -2.493688E-02 -9.144503E-05 -4.409357E-02 -2.282136E-04 -3.898092E-02 -1.692947E-04 -4.161525E-02 -2.078651E-04 -4.453363E-02 -2.219554E-04 -4.844461E-02 -2.561895E-04 -1.992414E-02 -5.397706E-05 -1.350002E-02 -2.916535E-05 -2.067487E-02 -4.903837E-05 -2.325603E-02 -8.788747E-05 -2.013029E-02 -5.389647E-05 -3.203793E-02 -1.247710E-04 -1.965175E-02 -5.312061E-05 -2.463239E-02 -8.315266E-05 -2.236927E-02 -6.414213E-05 -2.615164E-02 -7.702130E-05 -3.011875E-02 -1.090074E-04 -3.242536E-02 -1.289377E-04 -1.086798E-02 -1.760814E-05 -1.502391E-02 -3.139067E-05 -2.028244E-02 -5.583147E-05 -1.735464E-02 -4.295725E-05 -1.595857E-02 -2.787063E-05 -2.051018E-02 -5.355572E-05 -1.177619E-02 -1.717906E-05 -1.084749E-02 -1.707026E-05 -1.825630E-02 -5.376844E-05 -1.670967E-02 -3.402950E-05 -1.517723E-02 -3.554202E-05 -2.351000E-02 -7.935893E-05 -1.408337E-02 -2.327322E-05 -1.414777E-02 -2.697883E-05 -1.345682E-02 -2.740309E-05 -1.807340E-02 -5.667578E-05 -1.943061E-02 -4.787161E-05 -1.781260E-02 -6.060590E-05 -1.822299E-02 -4.962172E-05 -2.071085E-02 -5.813369E-05 -1.228031E-02 -2.872901E-05 -1.195238E-02 -1.942759E-05 -2.092949E-02 -5.642842E-05 -1.529365E-02 -3.149749E-05 -2.339941E-02 -7.277783E-05 -2.913166E-02 -1.578357E-04 -1.733543E-02 -4.484055E-05 -2.332788E-02 -5.763144E-05 -2.815285E-02 -1.152065E-04 -2.037972E-02 -4.949376E-05 -3.118074E-02 -1.103084E-04 -2.652943E-02 -7.950175E-05 -2.821700E-02 -9.085185E-05 -2.985586E-02 -1.075718E-04 -2.519195E-02 -7.329635E-05 -2.548988E-02 -7.800201E-05 -4.334204E-02 -2.354327E-04 -4.370525E-02 -2.090531E-04 -4.006925E-02 -2.178363E-04 -4.954585E-02 -2.700073E-04 -4.092841E-02 -2.238665E-04 -2.776415E-02 -8.914334E-05 -4.493102E-02 -2.333231E-04 -5.357023E-02 -3.291447E-04 -3.963439E-02 -1.816002E-04 -5.209753E-02 -3.068180E-04 -4.986170E-02 -2.874548E-04 -4.594257E-02 -2.466016E-04 -7.630622E-02 -6.261797E-04 -5.881534E-02 -3.747957E-04 -6.780811E-02 -4.976784E-04 -8.984762E-02 -8.898655E-04 -5.491164E-02 -3.345133E-04 -5.735501E-02 -3.771763E-04 -7.877228E-02 -6.794994E-04 -9.906424E-02 -1.046741E-03 -5.785970E-02 -4.133043E-04 -7.848689E-02 -6.870125E-04 -1.047444E-01 -1.223298E-03 -7.404855E-02 -5.854937E-04 -9.032228E-02 -8.427419E-04 -8.401933E-02 -7.146695E-04 -8.655196E-02 -8.118612E-04 -1.130946E-01 -1.398959E-03 -9.597180E-02 -1.024696E-03 -1.173027E-01 -1.427372E-03 -1.057440E-01 -1.169551E-03 -1.236176E-01 -1.570398E-03 -1.126957E-01 -1.332155E-03 -1.492376E-01 -2.275171E-03 -1.540101E-01 -2.443893E-03 -1.715020E-01 -3.018404E-03 -7.291542E-02 -5.897697E-04 -7.660305E-02 -6.300479E-04 -9.197170E-02 -8.994110E-04 -9.982203E-02 -1.045655E-03 -1.033399E-01 -1.152382E-03 -1.139526E-01 -1.408827E-03 -8.350520E-02 -7.494750E-04 -9.839459E-02 -1.011369E-03 -1.077860E-01 -1.279212E-03 -1.228340E-01 -1.621769E-03 -1.144053E-01 -1.334188E-03 -1.571539E-01 -2.565349E-03 -6.233439E-02 -4.263330E-04 -6.563411E-02 -5.048147E-04 -6.507814E-02 -4.812141E-04 -6.362658E-02 -4.417375E-04 -7.986988E-02 -7.190156E-04 -8.970255E-02 -8.714050E-04 -5.717855E-02 -3.416545E-04 -5.668804E-02 -3.415895E-04 -7.197316E-02 -5.676520E-04 -7.136224E-02 -5.599617E-04 -8.054458E-02 -7.445675E-04 -1.023397E-01 -1.107780E-03 -4.458142E-02 -2.130924E-04 -5.439535E-02 -3.275861E-04 -5.080989E-02 -2.798307E-04 -3.946665E-02 -1.879310E-04 -6.271593E-02 -4.257844E-04 -4.965993E-02 -2.741721E-04 -4.221851E-02 -1.992549E-04 -3.585135E-02 -1.543110E-04 -4.558668E-02 -2.566453E-04 -3.888908E-02 -1.783945E-04 -4.502379E-02 -2.492156E-04 -5.625550E-02 -3.626058E-04 -2.128686E-02 -5.310350E-05 -2.848081E-02 -1.032351E-04 -3.198369E-02 -1.191780E-04 -3.220035E-02 -1.276802E-04 -3.463447E-02 -1.270326E-04 -3.109004E-02 -1.168059E-04 -2.332999E-02 -6.452643E-05 -2.117480E-02 -5.228816E-05 -2.838827E-02 -1.161483E-04 -2.329241E-02 -6.809020E-05 -2.459549E-02 -7.138168E-05 -2.765800E-02 -9.045558E-05 -1.370243E-02 -3.338519E-05 -1.582736E-02 -3.857108E-05 -1.914636E-02 -4.789559E-05 -1.905516E-02 -4.419778E-05 -1.810520E-02 -3.877471E-05 -2.115307E-02 -7.229884E-05 -1.882956E-02 -4.805493E-05 -9.281049E-03 -1.409203E-05 -1.706945E-02 -3.299567E-05 -2.172381E-02 -5.595328E-05 -1.104074E-02 -1.584618E-05 -1.946919E-02 -4.863958E-05 -1.238685E-02 -2.066688E-05 -1.378714E-02 -2.843856E-05 -1.670520E-02 -3.555438E-05 -2.766185E-02 -9.046517E-05 -1.691132E-02 -3.290270E-05 -1.927098E-02 -5.061316E-05 -1.202893E-02 -1.958457E-05 -1.922540E-02 -4.323737E-05 -1.274015E-02 -2.175309E-05 -1.524415E-02 -3.024778E-05 -1.567541E-02 -4.050037E-05 -1.898211E-02 -6.605988E-05 -2.223387E-02 -5.741257E-05 -2.452031E-02 -8.066778E-05 -2.491977E-02 -8.109453E-05 -2.610295E-02 -7.731723E-05 -1.803031E-02 -3.613025E-05 -2.184838E-02 -6.008277E-05 -2.576522E-02 -7.561914E-05 -3.038022E-02 -1.150600E-04 -2.471237E-02 -7.123333E-05 -3.173089E-02 -1.261453E-04 -3.197437E-02 -1.411443E-04 -2.786611E-02 -8.928073E-05 -4.565549E-02 -2.352807E-04 -3.535175E-02 -1.583088E-04 -4.110758E-02 -2.035220E-04 -5.345474E-02 -3.515666E-04 -3.820824E-02 -1.563980E-04 -3.254512E-02 -1.163872E-04 -4.763741E-02 -2.544110E-04 -5.216626E-02 -2.867256E-04 -4.162668E-02 -2.258042E-04 -5.349959E-02 -3.167588E-04 -5.268155E-02 -3.037455E-04 -4.827712E-02 -2.530854E-04 -7.203623E-02 -5.807994E-04 -5.256504E-02 -2.870331E-04 -7.227033E-02 -5.557721E-04 -8.778648E-02 -8.961223E-04 -5.726539E-02 -3.647823E-04 -5.856701E-02 -3.711206E-04 -8.418818E-02 -8.420171E-04 -1.110902E-01 -1.311451E-03 -6.849413E-02 -4.990580E-04 -8.795189E-02 -8.053436E-04 -1.002509E-01 -1.136773E-03 -8.057346E-02 -7.326604E-04 -8.129820E-02 -6.905078E-04 -7.847809E-02 -7.619983E-04 -9.737274E-02 -1.035174E-03 -1.154716E-01 -1.385047E-03 -9.040089E-02 -8.570313E-04 -1.211664E-01 -1.547158E-03 -1.031330E-01 -1.146280E-03 -1.249586E-01 -1.649464E-03 -7.259655E-02 -5.736210E-04 -9.951286E-02 -1.046118E-03 -1.634971E-01 -2.756448E-03 -1.297207E-01 -1.735289E-03 -6.477036E-02 -5.010788E-04 -7.479236E-02 -6.145152E-04 -9.983365E-02 -1.091064E-03 -1.057264E-01 -1.249917E-03 -8.524281E-02 -7.807948E-04 -1.159165E-01 -1.434680E-03 -7.914697E-02 -6.791950E-04 -9.369015E-02 -9.476358E-04 -9.819988E-02 -1.022095E-03 -9.686028E-02 -1.016599E-03 -1.294766E-01 -1.810274E-03 -1.296189E-01 -1.785443E-03 -5.535491E-02 -4.100726E-04 -5.475647E-02 -3.309264E-04 -7.075605E-02 -6.187772E-04 -6.387417E-02 -4.196497E-04 -7.578685E-02 -6.019889E-04 -8.903112E-02 -9.119475E-04 -6.385945E-02 -4.650950E-04 -5.390120E-02 -3.165606E-04 -5.744329E-02 -3.580388E-04 -5.920600E-02 -3.893593E-04 -7.525234E-02 -6.092966E-04 -8.573764E-02 -7.942436E-04 -2.797792E-02 -8.517754E-05 -3.790894E-02 -1.764825E-04 -4.239936E-02 -2.094748E-04 -4.003024E-02 -1.918379E-04 -5.137956E-02 -3.003587E-04 -3.883708E-02 -2.005906E-04 -2.858632E-02 -9.126637E-05 -3.012004E-02 -9.617653E-05 -4.160100E-02 -1.981616E-04 -4.247458E-02 -1.951666E-04 -3.989011E-02 -1.920698E-04 -5.270057E-02 -4.088719E-04 -1.934929E-02 -4.412789E-05 -2.359082E-02 -7.371994E-05 -2.394998E-02 -6.675994E-05 -2.637339E-02 -8.517554E-05 -2.328326E-02 -6.212789E-05 -3.651578E-02 -1.464186E-04 -2.140441E-02 -5.613878E-05 -2.241671E-02 -6.918410E-05 -2.337122E-02 -6.432183E-05 -2.144477E-02 -6.203786E-05 -3.024192E-02 -1.083505E-04 -3.331930E-02 -1.347081E-04 -1.564695E-02 -3.553327E-05 -1.812645E-02 -3.940659E-05 -2.235798E-02 -6.269701E-05 -1.419345E-02 -3.096864E-05 -2.228629E-02 -7.578567E-05 -1.860794E-02 -4.332178E-05 -1.533239E-02 -3.896858E-05 -1.580257E-02 -3.874692E-05 -2.185955E-02 -7.842950E-05 -1.195136E-02 -1.715334E-05 -1.691111E-02 -5.345113E-05 -1.575376E-02 -3.654434E-05 -1.594875E-02 -2.957220E-05 -1.223541E-02 -2.476765E-05 -1.370590E-02 -2.764042E-05 -2.661246E-02 -1.016998E-04 -2.080371E-02 -4.813282E-05 -2.468736E-02 -6.974038E-05 -1.405638E-02 -2.572385E-05 -2.459760E-02 -7.159383E-05 -1.228308E-02 -1.773752E-05 -1.017949E-02 -1.885833E-05 -2.024611E-02 -5.718430E-05 -1.797631E-02 -4.281825E-05 -1.570780E-02 -3.056781E-05 -1.271841E-02 -2.456995E-05 -2.932023E-02 -9.261980E-05 -3.237241E-02 -1.211680E-04 -2.105195E-02 -5.549955E-05 -2.483667E-02 -7.162437E-05 -2.011907E-02 -5.130375E-05 -1.983609E-02 -4.987791E-05 -1.492495E-02 -3.087968E-05 -2.870495E-02 -9.962637E-05 -2.722358E-02 -8.845542E-05 -2.118986E-02 -5.204535E-05 -4.348038E-02 -2.209404E-04 -3.712818E-02 -1.689129E-04 -4.138693E-02 -1.981821E-04 -4.470777E-02 -2.289185E-04 -2.764424E-02 -9.090079E-05 -2.655560E-02 -9.474172E-05 -4.524862E-02 -2.292538E-04 -5.164196E-02 -2.774634E-04 -3.466551E-02 -1.631603E-04 -3.563208E-02 -1.379234E-04 -4.211986E-02 -1.930478E-04 -3.079625E-02 -1.135265E-04 -5.465211E-02 -3.301887E-04 -4.860409E-02 -2.888426E-04 -7.075978E-02 -5.108370E-04 -6.867881E-02 -5.424435E-04 -3.427613E-02 -1.426574E-04 -5.955830E-02 -3.940963E-04 -6.828982E-02 -4.738886E-04 -6.525289E-02 -4.898769E-04 -3.737982E-02 -1.638396E-04 -5.286730E-02 -3.082087E-04 -6.158083E-02 -4.216724E-04 -4.980750E-02 -2.726737E-04 -5.696575E-02 -3.692634E-04 -5.058820E-02 -2.744701E-04 -6.726109E-02 -4.926664E-04 -7.839336E-02 -6.590448E-04 -7.010209E-02 -5.719905E-04 -8.384171E-02 -7.652328E-04 -6.937383E-02 -5.168671E-04 -9.468263E-02 -9.868090E-04 -5.004326E-02 -2.785169E-04 -6.606152E-02 -4.541359E-04 -9.675798E-02 -1.063286E-03 -7.230289E-02 -5.573682E-04 -6.543974E-02 -5.078440E-04 -5.267920E-02 -3.176937E-04 -8.194553E-02 -6.982175E-04 -9.613453E-02 -1.079846E-03 -6.113228E-02 -4.004864E-04 -8.522953E-02 -7.810809E-04 -5.316859E-02 -3.091340E-04 -7.827195E-02 -6.540396E-04 -5.463776E-02 -3.503148E-04 -5.071284E-02 -3.191021E-04 -8.557140E-02 -7.639230E-04 -7.700044E-02 -6.547991E-04 -5.105846E-02 -2.888427E-04 -5.004859E-02 -2.887941E-04 -5.147919E-02 -3.256217E-04 -5.538533E-02 -3.360110E-04 -6.140039E-02 -4.129538E-04 -5.936836E-02 -4.315037E-04 -4.930384E-02 -2.889606E-04 -4.619680E-02 -2.419601E-04 -4.445739E-02 -2.331544E-04 -4.824154E-02 -2.469526E-04 -6.974394E-02 -5.056104E-04 -6.084953E-02 -3.932556E-04 -3.577286E-02 -1.452599E-04 -3.166228E-02 -1.303590E-04 -3.862777E-02 -1.632780E-04 -3.916934E-02 -1.779181E-04 -3.625045E-02 -1.745839E-04 -4.231134E-02 -2.225093E-04 -3.359703E-02 -1.419870E-04 -4.006089E-02 -1.707049E-04 -3.658866E-02 -1.730857E-04 -3.341254E-02 -1.297042E-04 -4.263417E-02 -2.215026E-04 -3.955323E-02 -1.921082E-04 -2.174079E-02 -5.222197E-05 -2.442434E-02 -8.243601E-05 -2.914443E-02 -1.214208E-04 -1.824800E-02 -4.893719E-05 -3.091152E-02 -1.051207E-04 -2.972565E-02 -1.063333E-04 -3.002196E-02 -1.026816E-04 -1.967353E-02 -5.819743E-05 -2.921034E-02 -1.035681E-04 -2.329404E-02 -7.915033E-05 -2.537416E-02 -9.811049E-05 -2.636605E-02 -8.177530E-05 -9.035064E-03 -1.555651E-05 -1.655675E-02 -4.002782E-05 -1.372662E-02 -3.244904E-05 -1.311878E-02 -2.619244E-05 -1.611214E-02 -3.084313E-05 -1.574836E-02 -3.450927E-05 -7.693366E-03 -1.606361E-05 -1.135596E-02 -1.801519E-05 -1.342059E-02 -2.516888E-05 -1.160985E-02 -2.390704E-05 -1.383386E-02 -2.800471E-05 -1.971360E-02 -8.842562E-05 -1.183879E-02 -1.932907E-05 -8.105380E-03 -1.234549E-05 -1.271210E-02 -2.405656E-05 -1.537131E-02 -3.137697E-05 -1.591997E-02 -3.769775E-05 -1.088552E-02 -1.713348E-05 -1.515322E-02 -3.039160E-05 -1.275379E-02 -2.585038E-05 -8.475047E-03 -1.032301E-05 -1.017506E-02 -2.019761E-05 -1.192565E-02 -2.149550E-05 -8.221048E-03 -8.986302E-06 -1.307738E-02 -2.107929E-05 -1.086073E-02 -1.558009E-05 -2.199295E-02 -5.739512E-05 -1.994568E-02 -5.494728E-05 -1.534082E-02 -3.625194E-05 -1.764761E-02 -4.067341E-05 -1.796742E-02 -4.680639E-05 -2.032190E-02 -5.017032E-05 -1.749541E-02 -4.866856E-05 -1.732369E-02 -4.955885E-05 -1.681732E-02 -3.837118E-05 -1.769405E-02 -5.487143E-05 -2.888259E-02 -1.026998E-04 -2.098585E-02 -6.932453E-05 -3.313341E-02 -1.351006E-04 -3.207197E-02 -1.295024E-04 -2.459220E-02 -8.336446E-05 -2.450985E-02 -6.648377E-05 -3.117162E-02 -1.195002E-04 -4.003079E-02 -2.123347E-04 -2.176609E-02 -6.269817E-05 -2.994428E-02 -1.235590E-04 -3.524085E-02 -1.599016E-04 -2.408409E-02 -6.486120E-05 -4.186261E-02 -1.804413E-04 -4.461985E-02 -2.229520E-04 -3.815900E-02 -1.674626E-04 -4.651996E-02 -2.353452E-04 -4.372936E-02 -2.126895E-04 -3.471725E-02 -1.536658E-04 -3.777496E-02 -1.682954E-04 -4.542053E-02 -2.887036E-04 -3.302349E-02 -1.252640E-04 -3.007472E-02 -1.103699E-04 -4.167073E-02 -1.843542E-04 -3.435406E-02 -1.576055E-04 -5.142055E-02 -2.840339E-04 -4.459791E-02 -2.437118E-04 -5.240798E-02 -3.061931E-04 -6.184982E-02 -3.987655E-04 -4.185540E-02 -2.035740E-04 -4.274424E-02 -1.929214E-04 -4.853301E-02 -2.820023E-04 -7.063952E-02 -5.492235E-04 -4.633212E-02 -2.687210E-04 -5.821695E-02 -3.976817E-04 -6.625094E-02 -4.940422E-04 -6.129214E-02 -4.099540E-04 -3.772075E-02 -1.660719E-04 -3.714570E-02 -1.541156E-04 -4.493005E-02 -2.310471E-04 -4.557412E-02 -2.432878E-04 -4.065422E-02 -1.871281E-04 -5.417420E-02 -3.505844E-04 -3.708658E-02 -1.717372E-04 -5.130291E-02 -3.077258E-04 -3.417926E-02 -1.492890E-04 -3.377463E-02 -1.256710E-04 -5.369283E-02 -3.432927E-04 -4.836021E-02 -2.588228E-04 -3.269371E-02 -1.286374E-04 -2.896989E-02 -1.123018E-04 -4.848291E-02 -2.612160E-04 -4.333314E-02 -2.292463E-04 -3.759979E-02 -1.680559E-04 -5.061237E-02 -2.724683E-04 -3.926039E-02 -1.797325E-04 -3.938137E-02 -1.851970E-04 -3.570566E-02 -1.506562E-04 -4.159909E-02 -2.157074E-04 -5.099360E-02 -2.844970E-04 -4.605309E-02 -2.508391E-04 -2.500341E-02 -7.363724E-05 -3.039879E-02 -1.123549E-04 -3.534598E-02 -1.698480E-04 -3.702744E-02 -1.486744E-04 -3.410129E-02 -1.365716E-04 -3.991621E-02 -1.846954E-04 -3.186334E-02 -1.158884E-04 -3.268754E-02 -1.178259E-04 -2.428429E-02 -7.876563E-05 -2.495449E-02 -7.906081E-05 -3.551756E-02 -1.519603E-04 -3.018593E-02 -9.724962E-05 -2.032098E-02 -4.781656E-05 -3.017998E-02 -1.313561E-04 -2.424929E-02 -6.480258E-05 -1.950042E-02 -4.417513E-05 -2.943418E-02 -9.948664E-05 -2.707621E-02 -1.035208E-04 -1.957350E-02 -4.711947E-05 -1.583335E-02 -2.891313E-05 -2.972335E-02 -1.047751E-04 -1.739423E-02 -4.376709E-05 -1.705633E-02 -3.892027E-05 -2.121975E-02 -5.891607E-05 -1.002146E-02 -2.339078E-05 -1.405706E-02 -3.175594E-05 -1.011207E-02 -1.585291E-05 -1.573069E-02 -3.554827E-05 -1.518567E-02 -3.047833E-05 -1.617187E-02 -3.397385E-05 -7.920296E-03 -1.026935E-05 -1.007121E-02 -1.858100E-05 -1.510615E-02 -3.313591E-05 -8.793659E-03 -1.446961E-05 -1.205856E-02 -2.648093E-05 -8.862721E-03 -1.309660E-05 -1.096965E-02 -1.673476E-05 -9.547722E-03 -1.233633E-05 -1.206088E-02 -1.968307E-05 -1.373042E-02 -2.332622E-05 -7.956349E-03 -9.952553E-06 -1.135126E-02 -2.254375E-05 -8.206639E-03 -1.278801E-05 -8.323868E-03 -9.465618E-06 -5.007925E-03 -3.901625E-06 -1.175607E-02 -2.482648E-05 -1.115574E-02 -1.628158E-05 -1.194446E-02 -2.092004E-05 -1.597054E-02 -4.823093E-05 -2.068463E-02 -6.502935E-05 -1.091363E-02 -1.741992E-05 -1.977283E-02 -6.091082E-05 -1.302782E-02 -3.043481E-05 -9.410139E-03 -1.600990E-05 -2.280622E-02 -8.006568E-05 -1.891920E-02 -4.976676E-05 -1.429805E-02 -3.039093E-05 -1.718931E-02 -4.113244E-05 -1.888654E-02 -4.574971E-05 -1.694065E-02 -4.597734E-05 -2.282444E-02 -7.094719E-05 -1.988920E-02 -4.882297E-05 -2.742750E-02 -8.906026E-05 -2.101679E-02 -5.924755E-05 -1.895054E-02 -4.827704E-05 -1.764949E-02 -3.979458E-05 -2.040100E-02 -5.014728E-05 -2.987304E-02 -1.026215E-04 -1.943000E-02 -5.159278E-05 -2.438024E-02 -8.804424E-05 -1.861542E-02 -5.122973E-05 -2.192303E-02 -7.333728E-05 -2.042748E-02 -5.322568E-05 -1.860799E-02 -4.480883E-05 -2.511896E-02 -8.995213E-05 -2.543363E-02 -7.306514E-05 -2.559384E-02 -7.149326E-05 -2.813173E-02 -8.655606E-05 -1.981717E-02 -5.094262E-05 -3.244910E-02 -1.169817E-04 -2.278981E-02 -6.510336E-05 -2.089376E-02 -5.410560E-05 -4.419213E-02 -2.403809E-04 -3.061708E-02 -1.062702E-04 -2.717980E-02 -8.418003E-05 -2.722963E-02 -1.052169E-04 -3.623076E-02 -1.607841E-04 -3.979211E-02 -1.939688E-04 -2.474544E-02 -8.590714E-05 -3.372593E-02 -1.249071E-04 -2.961528E-02 -1.048999E-04 -3.445466E-02 -1.406914E-04 -2.454390E-02 -6.874037E-05 -2.368906E-02 -7.545364E-05 -3.410678E-02 -1.304264E-04 -2.229870E-02 -5.686464E-05 -2.886351E-02 -1.132080E-04 -2.149789E-02 -5.426448E-05 -3.009295E-02 -1.146713E-04 -3.196558E-02 -1.284969E-04 -2.870373E-02 -1.154291E-04 -2.864913E-02 -1.010245E-04 -2.270198E-02 -5.519665E-05 -2.760090E-02 -9.328867E-05 -2.484231E-02 -7.506549E-05 -2.750137E-02 -8.791015E-05 -3.435235E-02 -1.548738E-04 -2.827137E-02 -9.747974E-05 -2.704164E-02 -8.477548E-05 -3.021819E-02 -1.103214E-04 -3.294793E-02 -1.535995E-04 -4.645100E-02 -2.665607E-04 -1.872361E-02 -5.132776E-05 -2.760454E-02 -9.345927E-05 -3.258565E-02 -1.242178E-04 -3.666600E-02 -1.621867E-04 -2.545558E-02 -7.466531E-05 -2.185810E-02 -5.238791E-05 -3.105333E-02 -1.301601E-04 -3.170709E-02 -1.068496E-04 -1.858402E-02 -4.089794E-05 -2.136675E-02 -8.120782E-05 -2.443102E-02 -6.744651E-05 -2.220457E-02 -6.176678E-05 -2.702281E-02 -8.511652E-05 -2.446488E-02 -7.312450E-05 -2.589652E-02 -8.029643E-05 -2.337286E-02 -6.920676E-05 -2.906370E-02 -9.769604E-05 -1.361898E-02 -2.599329E-05 -1.718829E-02 -4.532911E-05 -2.553342E-02 -8.882028E-05 -1.945946E-02 -5.218395E-05 -1.097230E-02 -2.337563E-05 -2.298715E-02 -7.077749E-05 -2.181520E-02 -7.357036E-05 -1.664629E-02 -3.440840E-05 -1.886608E-02 -6.788750E-05 -1.789466E-02 -3.954208E-05 -1.813733E-02 -4.477178E-05 -1.319469E-02 -3.100847E-05 -1.940763E-02 -6.158493E-05 -1.149667E-02 -1.737857E-05 -2.405005E-02 -9.854391E-05 -1.421017E-02 -2.890108E-05 -1.029738E-02 -1.683759E-05 -1.065410E-02 -1.640087E-05 -9.811218E-03 -1.720212E-05 -1.158507E-02 -1.760286E-05 -1.432482E-02 -2.834073E-05 -3.465902E-03 -3.161524E-06 -1.038868E-02 -2.168047E-05 -1.116866E-02 -1.793978E-05 -8.524850E-03 -9.322322E-06 -1.237537E-02 -3.617368E-05 -1.465218E-02 -3.350573E-05 -7.514724E-03 -9.368017E-06 -2.560189E-03 -1.617445E-06 -8.383240E-03 -1.252593E-05 -9.446758E-03 -1.648768E-05 -7.696663E-03 -8.060991E-06 -9.311783E-03 -1.189977E-05 -6.939672E-03 -8.850888E-06 -5.252459E-03 -4.564362E-06 -7.234899E-03 -1.328951E-05 -8.665099E-03 -1.300142E-05 -9.793568E-03 -2.082520E-05 -8.825280E-03 -1.579613E-05 -1.194803E-02 -1.908193E-05 -1.074524E-02 -2.172388E-05 -1.481905E-02 -2.964893E-05 -1.294498E-02 -3.011738E-05 -8.115330E-03 -1.173017E-05 -1.093458E-02 -1.599591E-05 -1.415025E-02 -2.928045E-05 -8.999567E-03 -1.238982E-05 -7.873894E-03 -9.521432E-06 -7.526246E-03 -7.594924E-06 -1.349525E-02 -3.958103E-05 -1.459461E-02 -3.194364E-05 -1.198421E-02 -2.138597E-05 -1.015128E-02 -1.539096E-05 -1.747797E-02 -3.561184E-05 -2.401867E-02 -7.148091E-05 -1.586654E-02 -3.323231E-05 -1.800611E-02 -4.401522E-05 -1.463450E-02 -2.989044E-05 -1.683853E-02 -3.902727E-05 -1.359168E-02 -2.739250E-05 -9.625117E-03 -1.469220E-05 -1.294386E-02 -2.799895E-05 -1.103469E-02 -2.133672E-05 -1.869882E-02 -4.772681E-05 -1.503975E-02 -2.896451E-05 -1.677894E-02 -4.314601E-05 -2.258467E-02 -1.041456E-04 -1.878411E-02 -4.558049E-05 -1.310146E-02 -2.541487E-05 -1.653039E-02 -3.204738E-05 -1.927088E-02 -5.304249E-05 -8.390867E-03 -1.408823E-05 -1.750394E-02 -4.947439E-05 -1.909888E-02 -5.305029E-05 -1.321359E-02 -3.195949E-05 -1.767250E-02 -4.284184E-05 -1.766010E-02 -4.445269E-05 -1.752133E-02 -3.470706E-05 -2.024733E-02 -5.360810E-05 -1.219423E-02 -1.890812E-05 -1.433551E-02 -2.552372E-05 -1.488366E-02 -3.633706E-05 -1.309982E-02 -2.303088E-05 -1.409845E-02 -2.964092E-05 -1.364964E-02 -2.674995E-05 -2.346093E-02 -7.742790E-05 -1.619070E-02 -3.640820E-05 -1.814514E-02 -4.174971E-05 -2.088143E-02 -7.915120E-05 -2.104482E-02 -4.999110E-05 -2.108577E-02 -5.080473E-05 -1.346978E-02 -2.428984E-05 -1.812802E-02 -3.900263E-05 -1.634894E-02 -3.058475E-05 -1.823343E-02 -4.657246E-05 -1.701022E-02 -3.432397E-05 -1.436832E-02 -2.643066E-05 -1.883466E-02 -4.651260E-05 -1.591237E-02 -3.845574E-05 -1.590406E-02 -3.248073E-05 -1.054631E-02 -1.655070E-05 -2.057489E-02 -5.055329E-05 -1.697824E-02 -3.893444E-05 -1.770103E-02 -4.383559E-05 -2.134851E-02 -6.780393E-05 -1.403120E-02 -2.708815E-05 -1.449734E-02 -2.419619E-05 -1.239576E-02 -2.043627E-05 -1.415699E-02 -2.224645E-05 -1.888682E-02 -4.935465E-05 -2.160682E-02 -6.329152E-05 -2.247940E-02 -7.810124E-05 -9.606213E-03 -1.667840E-05 -2.476229E-02 -8.144159E-05 -1.725175E-02 -3.611282E-05 -1.207190E-02 -1.626596E-05 -1.353421E-02 -2.329766E-05 -1.059055E-02 -1.677463E-05 -9.737491E-03 -1.431106E-05 -6.593375E-03 -7.399377E-06 -7.039159E-03 -1.176702E-05 -1.413677E-02 -3.138472E-05 -1.094329E-02 -2.263303E-05 -6.672931E-03 -6.045366E-06 -1.032380E-02 -2.352298E-05 -8.848889E-03 -1.498309E-05 -1.268157E-02 -2.766060E-05 -7.349115E-03 -1.091693E-05 -1.228088E-02 -2.189060E-05 -1.067250E-02 -1.715732E-05 -1.212246E-02 -2.269620E-05 -4.674814E-03 -3.219220E-06 -8.219501E-03 -1.509768E-05 -1.073016E-02 -2.022852E-05 -9.406782E-03 -1.697200E-05 -7.646611E-03 -1.456233E-05 -1.080915E-02 -2.357182E-05 -6.308610E-03 -8.327166E-06 -7.590107E-03 -8.423541E-06 -1.348669E-02 -2.807690E-05 -1.095856E-02 -2.888898E-05 -5.395294E-03 -5.989965E-06 -6.079841E-03 -7.580064E-06 -7.505564E-03 -8.646729E-06 -6.201233E-03 -6.428779E-06 -1.063698E-02 -1.939413E-05 -7.313889E-03 -9.141624E-06 -9.430810E-03 -1.648005E-05 -4.842603E-03 -4.844512E-06 -5.427814E-03 -4.345647E-06 -6.437292E-03 -1.207973E-05 -8.251158E-03 -1.318350E-05 -8.809423E-03 -1.058811E-05 -5.856619E-03 -4.969559E-06 -6.991101E-03 -6.849651E-06 -5.629621E-03 -5.550323E-06 -2.585500E-03 -1.553122E-06 -1.066559E-02 -1.715979E-05 -3.085260E-03 -6.253271E-06 -9.034984E-03 -1.521387E-05 -6.190606E-03 -9.176053E-06 -9.871403E-03 -1.358973E-05 -9.739545E-03 -1.286586E-05 -7.798343E-03 -9.886920E-06 -8.149958E-03 -1.041850E-05 -2.102030E-02 -6.158217E-05 -1.435765E-02 -3.237028E-05 -7.642569E-03 -7.907376E-06 -1.123406E-02 -1.955695E-05 -1.457081E-02 -3.914562E-05 -1.788958E-02 -5.996510E-05 -1.769436E-02 -4.502383E-05 -1.240825E-02 -2.303672E-05 -1.715444E-02 -4.328672E-05 -1.566180E-02 -3.978890E-05 -1.487883E-02 -3.400964E-05 -8.561200E-03 -1.036201E-05 -2.295904E-02 -5.920445E-05 -1.388508E-02 -3.937752E-05 -1.678190E-02 -4.497456E-05 -2.154484E-02 -5.386125E-05 -6.765444E-03 -7.415266E-06 -1.215420E-02 -2.091620E-05 -2.017061E-02 -7.287759E-05 -1.909053E-02 -5.506644E-05 -1.735888E-02 -3.831995E-05 -1.991557E-02 -4.972306E-05 -1.790749E-02 -4.112227E-05 -1.407457E-02 -3.094925E-05 -2.974572E-02 -1.118172E-04 -1.708785E-02 -4.386435E-05 -2.659193E-02 -9.219939E-05 -3.035144E-02 -1.010119E-04 -1.546737E-02 -3.391982E-05 -1.887938E-02 -4.714248E-05 -1.653679E-02 -4.949250E-05 -2.110944E-02 -5.597556E-05 -2.409526E-02 -6.448595E-05 -2.230819E-02 -5.707848E-05 -1.670895E-02 -3.363955E-05 -1.501463E-02 -2.702669E-05 -1.631677E-02 -3.749166E-05 -1.693626E-02 -4.121173E-05 -2.622206E-02 -7.529216E-05 -2.377917E-02 -7.407839E-05 -1.384279E-02 -2.857021E-05 -2.126418E-02 -7.856414E-05 -1.911630E-02 -4.652883E-05 -2.184179E-02 -5.852148E-05 -1.866708E-02 -6.033622E-05 -1.172279E-02 -3.314139E-05 -1.311652E-02 -2.727134E-05 -1.670812E-02 -4.624330E-05 -1.830609E-02 -5.348783E-05 -8.513210E-03 -1.188353E-05 -1.897475E-02 -4.496529E-05 -1.598385E-02 -3.154883E-05 -1.811274E-02 -4.681726E-05 -1.851236E-02 -4.861112E-05 -1.207908E-02 -2.020737E-05 -1.762593E-02 -4.600809E-05 -1.426171E-02 -3.389465E-05 -1.390938E-02 -4.304132E-05 -1.119665E-02 -2.002203E-05 -7.985862E-03 -1.299182E-05 -1.682922E-02 -3.705605E-05 -1.031217E-02 -1.306045E-05 -1.806448E-02 -4.605140E-05 -1.608612E-02 -3.278234E-05 -7.379583E-03 -7.040180E-06 -1.449866E-02 -3.734314E-05 -1.126405E-02 -1.862160E-05 -1.434466E-02 -3.067276E-05 -1.321482E-02 -2.270946E-05 -1.175946E-02 -2.009819E-05 -8.940307E-03 -1.544249E-05 -1.025576E-02 -1.330247E-05 -1.007614E-02 -1.877197E-05 -8.436802E-03 -1.196625E-05 -2.085623E-02 -4.953759E-05 -1.670794E-02 -3.716863E-05 -1.187761E-02 -1.890192E-05 -1.850976E-02 -4.429493E-05 -4.944517E-03 -5.165715E-06 -8.128340E-03 -1.296218E-05 -1.004447E-02 -2.214422E-05 -9.963052E-03 -1.184842E-05 -7.100471E-03 -8.005623E-06 -8.470273E-03 -9.214382E-06 -1.033575E-02 -1.452750E-05 -9.624022E-03 -1.558452E-05 -8.869432E-03 -1.517840E-05 -1.644470E-02 -3.397196E-05 -7.598019E-03 -8.133919E-06 -8.945737E-03 -9.377464E-06 -5.254834E-03 -4.575273E-06 -7.542267E-03 -7.505652E-06 -9.629827E-03 -1.342434E-05 -1.060266E-02 -1.838055E-05 -3.984507E-03 -2.782462E-06 -6.823286E-03 -7.715504E-06 -8.192618E-03 -1.009785E-05 -6.740618E-03 -6.753208E-06 -1.002813E-02 -1.566585E-05 -1.402360E-02 -2.627061E-05 -9.551680E-03 -1.549743E-05 -8.410173E-03 -1.532161E-05 -9.576682E-03 -1.926642E-05 -1.644285E-02 -3.894395E-05 -9.352112E-03 -1.947845E-05 -9.522578E-03 -1.480589E-05 -1.000109E-02 -1.623473E-05 -1.271924E-02 -2.496798E-05 -1.245375E-02 -2.043780E-05 -1.519888E-02 -3.853835E-05 -6.618627E-03 -6.345424E-06 -7.617580E-03 -8.381516E-06 -7.713051E-03 -1.245806E-05 -8.903456E-03 -2.254781E-05 -1.402208E-02 -2.721848E-05 -1.177140E-02 -1.953130E-05 -1.553072E-02 -2.893580E-05 -1.482066E-02 -3.081970E-05 -9.853191E-03 -1.543282E-05 -1.186384E-02 -2.281665E-05 -1.908232E-02 -6.119132E-05 -1.778254E-02 -3.849134E-05 -1.611496E-02 -4.189813E-05 -1.421950E-02 -3.103442E-05 -2.000883E-02 -5.088716E-05 -1.245870E-02 -2.904861E-05 -2.474667E-02 -7.684411E-05 -1.941450E-02 -4.850566E-05 -1.968721E-02 -4.734318E-05 -2.432138E-02 -7.957731E-05 -1.944046E-02 -4.206030E-05 -2.088512E-02 -5.312412E-05 -2.457361E-02 -7.162438E-05 -2.803303E-02 -9.243404E-05 -2.233188E-02 -6.441041E-05 -2.574667E-02 -7.744780E-05 -2.097121E-02 -5.650314E-05 -2.655826E-02 -8.660847E-05 -3.014326E-02 -9.991619E-05 -2.918919E-02 -9.452555E-05 -2.056057E-02 -5.184372E-05 -2.990570E-02 -1.037648E-04 -2.737932E-02 -8.833139E-05 -2.356419E-02 -7.644776E-05 -3.458839E-02 -1.364027E-04 -3.248751E-02 -1.186240E-04 -3.228724E-02 -1.162923E-04 -2.982979E-02 -1.051045E-04 -2.749198E-02 -9.013699E-05 -2.265201E-02 -7.821751E-05 -2.861490E-02 -8.974738E-05 -3.877353E-02 -1.862085E-04 -2.264214E-02 -6.419386E-05 -2.565522E-02 -8.379023E-05 -3.327436E-02 -1.251213E-04 -3.365022E-02 -1.304927E-04 -3.331544E-02 -1.267184E-04 -3.940664E-02 -2.082874E-04 -3.417164E-02 -1.331489E-04 -3.695924E-02 -1.695935E-04 -3.660181E-02 -1.980269E-04 -3.049799E-02 -1.104243E-04 -3.359904E-02 -1.326383E-04 -2.972450E-02 -9.587313E-05 -2.323160E-02 -6.471218E-05 -1.839074E-02 -4.208719E-05 -2.714264E-02 -9.372657E-05 -2.872170E-02 -1.078922E-04 -3.679226E-02 -1.459261E-04 -2.377295E-02 -6.705585E-05 -3.481909E-02 -1.319533E-04 -3.638325E-02 -1.510511E-04 -2.047379E-02 -4.974814E-05 -3.932322E-02 -1.843858E-04 -1.516217E-02 -3.326445E-05 -2.722332E-02 -9.017263E-05 -1.892837E-02 -4.765562E-05 -1.649353E-02 -4.048523E-05 -2.604495E-02 -7.686911E-05 -2.994865E-02 -1.202039E-04 -1.882216E-02 -4.312602E-05 -1.766775E-02 -4.354878E-05 -2.897250E-02 -9.600078E-05 -2.918339E-02 -9.787984E-05 -2.599062E-02 -8.583368E-05 -3.616458E-02 -1.785317E-04 -1.716456E-02 -4.424230E-05 -2.976397E-02 -1.196639E-04 -2.137198E-02 -5.435882E-05 -1.498606E-02 -2.867869E-05 -2.026381E-02 -6.453877E-05 -2.108149E-02 -4.938367E-05 -1.505838E-02 -2.707808E-05 -1.913971E-02 -5.184273E-05 -2.583671E-02 -9.189443E-05 -2.089460E-02 -5.910541E-05 -2.539127E-02 -8.107037E-05 -2.284066E-02 -6.852612E-05 -9.835860E-03 -1.246182E-05 -1.766679E-02 -4.158408E-05 -1.105611E-02 -1.647013E-05 -1.530049E-02 -3.919500E-05 -1.429716E-02 -3.352166E-05 -1.357586E-02 -3.091775E-05 -1.403296E-02 -3.179172E-05 -1.978070E-02 -4.850759E-05 -2.453097E-02 -8.428665E-05 -1.939330E-02 -4.556576E-05 -1.086518E-02 -1.408645E-05 -1.579821E-02 -2.749151E-05 -6.361591E-03 -6.898179E-06 -7.702358E-03 -9.157872E-06 -1.066424E-02 -1.306101E-05 -9.634515E-03 -1.294132E-05 -1.081282E-02 -2.088218E-05 -1.644232E-02 -3.681578E-05 -9.494639E-03 -1.279154E-05 -5.636874E-03 -4.703193E-06 -1.434790E-02 -2.701384E-05 -1.369675E-02 -2.567531E-05 -1.234911E-02 -2.590620E-05 -1.416398E-02 -2.960800E-05 -1.122603E-02 -2.610403E-05 -1.184891E-02 -2.685267E-05 -1.469060E-02 -3.133618E-05 -2.298108E-02 -7.360049E-05 -1.696881E-02 -4.073271E-05 -1.829044E-02 -4.488597E-05 -8.021195E-03 -1.042375E-05 -7.483229E-03 -7.662752E-06 -9.938980E-03 -1.473587E-05 -6.186154E-03 -7.146893E-06 -1.873257E-02 -5.084856E-05 -1.274591E-02 -1.901691E-05 -1.717315E-02 -4.508495E-05 -2.587324E-02 -7.720386E-05 -1.352804E-02 -2.480610E-05 -1.759894E-02 -3.784552E-05 -1.498671E-02 -2.624849E-05 -2.471517E-02 -8.403653E-05 -2.938643E-02 -1.151484E-04 -2.091784E-02 -5.415805E-05 -1.642239E-02 -3.265718E-05 -2.253062E-02 -7.550922E-05 -1.773827E-02 -4.843752E-05 -1.778692E-02 -4.982541E-05 -3.337468E-02 -1.392002E-04 -3.682265E-02 -1.607062E-04 -2.911908E-02 -1.003985E-04 -2.664232E-02 -8.588222E-05 -2.953127E-02 -1.183748E-04 -2.406807E-02 -7.188877E-05 -3.628487E-02 -1.515959E-04 -3.071907E-02 -1.118121E-04 -3.755060E-02 -1.884817E-04 -3.845138E-02 -2.043330E-04 -4.208968E-02 -1.887229E-04 -2.650790E-02 -1.045695E-04 -4.879444E-02 -2.746335E-04 -3.995698E-02 -1.935956E-04 -3.437302E-02 -1.339692E-04 -4.424777E-02 -2.155808E-04 -4.000509E-02 -1.787367E-04 -3.942601E-02 -1.823141E-04 -5.484106E-02 -3.357163E-04 -5.027689E-02 -2.971747E-04 -5.028897E-02 -2.941870E-04 -5.290232E-02 -3.200207E-04 -3.871560E-02 -1.936856E-04 -4.561909E-02 -2.445140E-04 -5.329116E-02 -3.392022E-04 -6.411682E-02 -4.525641E-04 -4.491390E-02 -2.298662E-04 -4.543173E-02 -2.388585E-04 -4.973450E-02 -2.830273E-04 -4.837326E-02 -2.678945E-04 -5.988650E-02 -4.209610E-04 -5.451978E-02 -3.358217E-04 -7.335314E-02 -6.137308E-04 -7.801463E-02 -6.544817E-04 -5.589338E-02 -3.522166E-04 -5.916022E-02 -3.858273E-04 -4.698963E-02 -3.027433E-04 -5.895924E-02 -3.790017E-04 -4.172371E-02 -2.119338E-04 -3.894831E-02 -1.648204E-04 -5.343858E-02 -3.103206E-04 -4.977655E-02 -3.012635E-04 -6.585931E-02 -4.493935E-04 -5.729670E-02 -3.590518E-04 -5.609196E-02 -3.629946E-04 -6.500048E-02 -4.440662E-04 -4.327539E-02 -2.067690E-04 -5.097662E-02 -2.815490E-04 -4.628356E-02 -2.348648E-04 -4.666148E-02 -2.514991E-04 -3.669329E-02 -1.552102E-04 -4.034392E-02 -1.825094E-04 -5.718186E-02 -3.730299E-04 -3.997528E-02 -2.286198E-04 -5.850080E-02 -4.179988E-04 -3.979728E-02 -1.855473E-04 -6.121586E-02 -4.774824E-04 -5.116923E-02 -2.889253E-04 -4.642274E-02 -2.436217E-04 -5.061482E-02 -2.853049E-04 -3.070349E-02 -1.198974E-04 -4.050110E-02 -1.836951E-04 -2.876275E-02 -1.060796E-04 -3.061263E-02 -1.137168E-04 -4.146381E-02 -1.869894E-04 -4.129877E-02 -1.932088E-04 -3.448209E-02 -1.434523E-04 -3.610442E-02 -1.605801E-04 -4.093512E-02 -1.814782E-04 -4.568118E-02 -2.299954E-04 -3.364878E-02 -1.376802E-04 -3.936126E-02 -1.675197E-04 -1.952985E-02 -4.623048E-05 -2.129951E-02 -6.166111E-05 -2.459526E-02 -8.426675E-05 -1.884092E-02 -4.164051E-05 -3.428763E-02 -1.417068E-04 -3.407514E-02 -1.241486E-04 -3.064802E-02 -1.103630E-04 -2.019877E-02 -7.059498E-05 -3.794436E-02 -1.883194E-04 -3.266721E-02 -1.280477E-04 -2.490808E-02 -7.281690E-05 -3.064961E-02 -1.125362E-04 -1.514239E-02 -2.910925E-05 -1.569321E-02 -3.950962E-05 -1.817240E-02 -4.154077E-05 -1.593815E-02 -3.459272E-05 -2.573968E-02 -8.029098E-05 -2.193871E-02 -6.210741E-05 -1.234720E-02 -1.843394E-05 -1.130766E-02 -2.245547E-05 -1.418762E-02 -3.357410E-05 -1.391485E-02 -2.559415E-05 -1.331696E-02 -2.115069E-05 -1.903725E-02 -4.411480E-05 -2.293870E-02 -6.557987E-05 -2.241944E-02 -7.768129E-05 -8.399478E-03 -1.343754E-05 -1.217880E-02 -2.018185E-05 -1.416256E-02 -2.227003E-05 -1.520064E-02 -2.978679E-05 -1.664846E-02 -4.183492E-05 -1.339491E-02 -2.674827E-05 -9.628607E-03 -1.279454E-05 -1.158026E-02 -1.554728E-05 -1.367791E-02 -2.379966E-05 -1.376699E-02 -2.264472E-05 -1.833088E-02 -4.495911E-05 -2.473484E-02 -1.122059E-04 -1.980130E-02 -4.468138E-05 -2.937836E-02 -1.114018E-04 -2.021222E-02 -4.559590E-05 -2.115889E-02 -5.272398E-05 -2.751444E-02 -8.716393E-05 -3.118255E-02 -1.201980E-04 -3.295258E-02 -1.221249E-04 -3.264934E-02 -1.357065E-04 -2.388443E-02 -6.703731E-05 -2.649789E-02 -7.940354E-05 -4.696656E-02 -2.514244E-04 -4.553686E-02 -2.438972E-04 -3.908818E-02 -1.840355E-04 -4.402566E-02 -2.377775E-04 -3.875910E-02 -1.778735E-04 -3.543152E-02 -1.527725E-04 -6.193982E-02 -4.578553E-04 -4.402817E-02 -2.274373E-04 -3.677275E-02 -1.884320E-04 -5.902021E-02 -3.951715E-04 -4.943375E-02 -2.711632E-04 -3.724773E-02 -1.641879E-04 -4.993443E-02 -2.771281E-04 -7.563062E-02 -6.734531E-04 -4.553601E-02 -2.283737E-04 -5.336189E-02 -3.085766E-04 -6.930581E-02 -5.723133E-04 -4.674295E-02 -2.785390E-04 -8.412725E-02 -7.467027E-04 -6.681883E-02 -4.824696E-04 -8.430398E-02 -7.823907E-04 -9.943266E-02 -1.106796E-03 -8.916803E-02 -8.767378E-04 -7.239961E-02 -6.787255E-04 -8.722424E-02 -9.332353E-04 -1.031401E-01 -1.218166E-03 -7.299280E-02 -5.585065E-04 -8.196460E-02 -7.464830E-04 -7.514349E-02 -6.162898E-04 -7.409781E-02 -6.092201E-04 -1.155025E-01 -1.496467E-03 -1.069759E-01 -1.259983E-03 -1.226295E-01 -1.569654E-03 -1.503421E-01 -2.355624E-03 -1.080703E-01 -1.309087E-03 -1.129782E-01 -1.371142E-03 -8.048452E-02 -7.348043E-04 -1.058381E-01 -1.164709E-03 -6.615819E-02 -4.794240E-04 -7.980754E-02 -6.987820E-04 -1.120426E-01 -1.285452E-03 -1.016962E-01 -1.116490E-03 -1.045603E-01 -1.203503E-03 -9.692551E-02 -1.029307E-03 -1.510121E-01 -2.326069E-03 -1.459994E-01 -2.277384E-03 -8.473854E-02 -7.832629E-04 -1.294853E-01 -1.741522E-03 -6.032354E-02 -3.886121E-04 -6.987142E-02 -5.446194E-04 -7.739481E-02 -6.779391E-04 -6.202592E-02 -4.288928E-04 -1.105924E-01 -1.283621E-03 -9.239492E-02 -9.223732E-04 -6.604268E-02 -4.595692E-04 -7.012590E-02 -5.276378E-04 -9.125615E-02 -8.968665E-04 -8.440076E-02 -7.298457E-04 -6.290364E-02 -4.350725E-04 -9.542023E-02 -1.023159E-03 -3.785503E-02 -1.773114E-04 -5.510138E-02 -3.186315E-04 -4.425845E-02 -2.296502E-04 -5.216949E-02 -3.102279E-04 -5.711604E-02 -3.708531E-04 -6.348926E-02 -4.437737E-04 -3.531423E-02 -1.381941E-04 -4.676905E-02 -2.710798E-04 -5.132004E-02 -2.836163E-04 -4.379959E-02 -2.484735E-04 -5.314318E-02 -3.059228E-04 -6.677411E-02 -5.104497E-04 -2.953361E-02 -1.221048E-04 -3.348688E-02 -1.218024E-04 -3.189405E-02 -1.283561E-04 -3.066128E-02 -1.074943E-04 -2.627008E-02 -7.434735E-05 -4.099188E-02 -1.844425E-04 -2.657946E-02 -8.006763E-05 -2.677024E-02 -9.837536E-05 -2.297001E-02 -6.348807E-05 -2.847736E-02 -1.016726E-04 -3.650898E-02 -1.905274E-04 -3.678596E-02 -1.737202E-04 -9.741068E-03 -1.427221E-05 -2.112559E-02 -7.299641E-05 -1.626433E-02 -3.325133E-05 -1.556047E-02 -3.623423E-05 -2.005845E-02 -4.817075E-05 -2.235018E-02 -6.309213E-05 -1.555635E-02 -3.399168E-05 -8.473936E-03 -1.206918E-05 -2.003025E-02 -5.771667E-05 -1.619274E-02 -3.694213E-05 -2.398087E-02 -8.309002E-05 -2.048279E-02 -5.775057E-05 -1.959187E-02 -4.755352E-05 -1.817346E-02 -4.751135E-05 -1.533477E-02 -4.769982E-05 -1.889382E-02 -4.706002E-05 -1.855621E-02 -4.644130E-05 -3.121451E-02 -1.173056E-04 -1.135235E-02 -2.022523E-05 -1.457214E-02 -3.250403E-05 -1.330384E-02 -2.287686E-05 -1.426049E-02 -2.827899E-05 -2.255732E-02 -6.597520E-05 -1.409157E-02 -2.947510E-05 -2.387117E-02 -7.502115E-05 -3.498075E-02 -1.588586E-04 -2.661630E-02 -9.051962E-05 -3.141346E-02 -1.130104E-04 -2.363639E-02 -7.247261E-05 -2.949581E-02 -1.015620E-04 -3.405344E-02 -1.368730E-04 -3.067699E-02 -1.186942E-04 -2.860325E-02 -1.027432E-04 -3.136948E-02 -1.261067E-04 -2.884168E-02 -9.121556E-05 -3.172681E-02 -1.271781E-04 -6.082138E-02 -3.967354E-04 -4.665628E-02 -2.447254E-04 -3.873489E-02 -1.666752E-04 -5.112906E-02 -2.817112E-04 -3.867668E-02 -1.713578E-04 -4.211970E-02 -1.934977E-04 -6.886477E-02 -4.937257E-04 -7.019363E-02 -5.620739E-04 -5.569741E-02 -3.372249E-04 -5.856502E-02 -3.766765E-04 -5.390171E-02 -3.381837E-04 -4.680414E-02 -2.500022E-04 -1.026456E-01 -1.147075E-03 -8.535063E-02 -7.808065E-04 -8.630449E-02 -8.031445E-04 -1.052149E-01 -1.184292E-03 -7.701701E-02 -6.253512E-04 -7.834187E-02 -6.672354E-04 -1.359360E-01 -1.907855E-03 -1.460384E-01 -2.190423E-03 -1.080390E-01 -1.234268E-03 -1.317673E-01 -1.856930E-03 -9.690172E-02 -1.006627E-03 -9.258404E-02 -9.457422E-04 -1.832246E-01 -3.427961E-03 -2.054091E-01 -4.398902E-03 -1.593682E-01 -2.662133E-03 -1.880778E-01 -3.629787E-03 -2.013148E-01 -4.265877E-03 -1.990549E-01 -4.200017E-03 -5.469090E-01 -3.082757E-02 -5.552625E-01 -3.233826E-02 -2.571401E-01 -6.723483E-03 -8.548854E-01 -7.413280E-02 -5.209393E-01 -2.787584E-02 -5.093657E-01 -2.715480E-02 -1.566145E-01 -2.600405E-03 -1.993120E-01 -4.010479E-03 -1.707332E-01 -2.996975E-03 -1.840203E-01 -3.525950E-03 -5.686602E-01 -3.269532E-02 -5.046470E-01 -2.580015E-02 -1.740098E-01 -3.137069E-03 -1.748447E-01 -3.287313E-03 -5.281969E-01 -2.835860E-02 -5.218758E-01 -2.764449E-02 -2.811590E-01 -8.077168E-03 -7.835313E-01 -6.174409E-02 -8.916676E-02 -8.704144E-04 -1.147415E-01 -1.428848E-03 -1.059630E-01 -1.142821E-03 -9.640793E-02 -9.919169E-04 -1.380046E-01 -2.013093E-03 -1.453872E-01 -2.230703E-03 -8.067716E-02 -7.607075E-04 -7.414787E-02 -5.831873E-04 -1.108173E-01 -1.334816E-03 -9.716310E-02 -1.050788E-03 -1.058275E-01 -1.176253E-03 -1.234077E-01 -1.611857E-03 -4.645374E-02 -2.489769E-04 -5.612855E-02 -3.674944E-04 -5.305509E-02 -3.127379E-04 -4.929601E-02 -2.809620E-04 -6.549144E-02 -4.537754E-04 -6.303494E-02 -4.236715E-04 -3.880272E-02 -1.704460E-04 -3.861758E-02 -1.663017E-04 -5.862395E-02 -3.858310E-04 -4.737923E-02 -2.823280E-04 -5.280787E-02 -3.043443E-04 -5.249474E-02 -3.019614E-04 -2.485904E-02 -6.701075E-05 -2.926990E-02 -9.417758E-05 -3.125676E-02 -1.037311E-04 -3.289406E-02 -1.368340E-04 -4.071134E-02 -1.830700E-04 -4.109741E-02 -2.038834E-04 -2.347652E-02 -7.157581E-05 -2.072441E-02 -5.807283E-05 -4.102695E-02 -2.107954E-04 -2.166639E-02 -5.788402E-05 -3.219359E-02 -1.250457E-04 -2.832465E-02 -9.610853E-05 -1.624643E-02 -3.730962E-05 -1.725120E-02 -4.481115E-05 -1.578099E-02 -3.024585E-05 -1.571746E-02 -3.035996E-05 -1.731202E-02 -3.502473E-05 -1.643420E-02 -3.632173E-05 -1.040551E-02 -1.294862E-05 -1.127727E-02 -2.039819E-05 -1.438022E-02 -2.857038E-05 -1.260556E-02 -2.928756E-05 -2.034502E-02 -6.038560E-05 -1.640843E-02 -3.872409E-05 -2.122181E-02 -6.703870E-05 -1.545958E-02 -2.933443E-05 -1.550763E-02 -3.859489E-05 -1.928201E-02 -4.243101E-05 -2.196809E-02 -5.810938E-05 -2.193973E-02 -5.702613E-05 -1.517387E-02 -3.300117E-05 -1.732347E-02 -3.857976E-05 -1.415891E-02 -2.906573E-05 -1.407775E-02 -3.402531E-05 -2.277203E-02 -7.764043E-05 -1.580648E-02 -4.707367E-05 -2.763176E-02 -9.424628E-05 -2.372205E-02 -6.537717E-05 -2.585656E-02 -7.555138E-05 -3.438842E-02 -1.498651E-04 -1.953849E-02 -4.797528E-05 -2.039273E-02 -6.513710E-05 -3.691903E-02 -1.454538E-04 -3.217932E-02 -1.398798E-04 -2.774657E-02 -8.279249E-05 -2.820457E-02 -9.228219E-05 -3.106567E-02 -1.239322E-04 -1.804981E-02 -4.099893E-05 -5.969428E-02 -3.940876E-04 -5.835174E-02 -4.018253E-04 -5.448605E-02 -3.344901E-04 -6.458561E-02 -4.749467E-04 -4.505232E-02 -2.290467E-04 -4.529186E-02 -2.210661E-04 -6.923883E-02 -5.074459E-04 -6.905166E-02 -5.269603E-04 -4.247615E-02 -2.080915E-04 -5.430061E-02 -3.320737E-04 -6.603377E-02 -5.144612E-04 -5.251003E-02 -3.190205E-04 -1.030147E-01 -1.109176E-03 -8.155464E-02 -7.067482E-04 -8.922744E-02 -8.197146E-04 -1.284288E-01 -1.811686E-03 -9.277212E-02 -8.820708E-04 -7.960421E-02 -7.018415E-04 -1.101447E-01 -1.238620E-03 -1.594606E-01 -2.631417E-03 -7.676797E-02 -6.249548E-04 -9.678537E-02 -1.039683E-03 -1.315012E-01 -1.823501E-03 -9.822710E-02 -1.049106E-03 -2.200833E-01 -4.944909E-03 -1.814148E-01 -3.455606E-03 -2.808713E-01 -7.998623E-03 -8.607047E-01 -7.471518E-02 -1.510873E-01 -2.350444E-03 -1.952158E-01 -3.987281E-03 -2.563955E-01 -6.736419E-03 -8.288790E-01 -6.935905E-02 -1.663306E-01 -2.909230E-03 -2.069533E-01 -4.392557E-03 -8.171538E-01 -6.926168E-02 -2.771724E-01 -7.947364E-03 -1.718421E-01 -3.078316E-03 -1.912710E-01 -3.901809E-03 -4.978656E-01 -2.591511E-02 -4.943901E-01 -2.504533E-02 -2.519316E-01 -6.571958E-03 -7.930433E-01 -6.483055E-02 -1.486665E-01 -2.270454E-03 -2.161805E-01 -4.796812E-03 -1.737906E-01 -3.149960E-03 -1.909929E-01 -3.837468E-03 -5.280144E-01 -2.824797E-02 -5.994269E-01 -3.679537E-02 -8.367283E-02 -8.246835E-04 -9.345285E-02 -9.180702E-04 -1.084220E-01 -1.234841E-03 -1.132694E-01 -1.417334E-03 -1.213506E-01 -1.536611E-03 -1.485290E-01 -2.261244E-03 -7.557519E-02 -6.112603E-04 -7.935833E-02 -6.583374E-04 -1.009825E-01 -1.083491E-03 -7.954123E-02 -7.044944E-04 -1.118116E-01 -1.371403E-03 -1.197452E-01 -1.570554E-03 -5.190598E-02 -3.551665E-04 -5.730111E-02 -3.980792E-04 -6.248836E-02 -4.466985E-04 -6.019178E-02 -4.124940E-04 -7.202094E-02 -5.415764E-04 -7.189177E-02 -5.472909E-04 -3.981535E-02 -1.797809E-04 -4.820928E-02 -2.773872E-04 -5.050408E-02 -2.801362E-04 -5.149907E-02 -3.058260E-04 -6.167709E-02 -3.980579E-04 -6.251960E-02 -4.234132E-04 -2.843012E-02 -8.808063E-05 -2.337612E-02 -6.606638E-05 -2.936391E-02 -9.914901E-05 -3.131118E-02 -1.224255E-04 -3.590121E-02 -1.554613E-04 -3.734616E-02 -1.611929E-04 -2.718818E-02 -8.275683E-05 -2.355063E-02 -6.269602E-05 -3.417456E-02 -1.470468E-04 -2.761636E-02 -8.857401E-05 -2.817665E-02 -9.358473E-05 -4.330547E-02 -2.125793E-04 -1.281131E-02 -2.508003E-05 -1.558497E-02 -4.131225E-05 -1.604825E-02 -3.789735E-05 -1.198312E-02 -2.201855E-05 -1.841476E-02 -4.406610E-05 -2.191664E-02 -5.706023E-05 -1.037877E-02 -1.403046E-05 -1.142906E-02 -1.784198E-05 -2.165180E-02 -7.328897E-05 -1.781165E-02 -3.964227E-05 -1.706685E-02 -3.626318E-05 -2.611118E-02 -8.937284E-05 -1.889982E-02 -5.096931E-05 -1.354993E-02 -3.469204E-05 -1.092599E-02 -1.697195E-05 -1.380052E-02 -2.909184E-05 -2.326409E-02 -7.737047E-05 -2.386034E-02 -7.722570E-05 -1.642655E-02 -4.387424E-05 -1.696224E-02 -3.657599E-05 -1.094347E-02 -1.803801E-05 -1.156552E-02 -2.421906E-05 -1.583036E-02 -3.257752E-05 -1.517584E-02 -3.200691E-05 -3.827074E-02 -1.889669E-04 -2.449951E-02 -7.459613E-05 -2.623209E-02 -8.154118E-05 -2.849776E-02 -9.089323E-05 -2.334185E-02 -6.201992E-05 -2.654520E-02 -9.694536E-05 -3.237617E-02 -1.167467E-04 -3.675105E-02 -1.763620E-04 -2.004612E-02 -5.066812E-05 -2.903446E-02 -9.486419E-05 -3.334691E-02 -1.228445E-04 -2.623258E-02 -7.799037E-05 -4.888525E-02 -2.729676E-04 -3.600959E-02 -1.553932E-04 -5.438364E-02 -3.353294E-04 -5.232566E-02 -2.992982E-04 -3.034775E-02 -1.324830E-04 -4.164626E-02 -2.036943E-04 -5.059600E-02 -2.935825E-04 -5.879411E-02 -3.888487E-04 -3.938426E-02 -2.093554E-04 -4.838794E-02 -2.715001E-04 -4.972503E-02 -2.740094E-04 -4.955213E-02 -2.667621E-04 -6.113745E-02 -4.048275E-04 -5.341164E-02 -3.153602E-04 -5.975662E-02 -3.838000E-04 -8.595500E-02 -8.321615E-04 -6.107919E-02 -3.898803E-04 -5.530668E-02 -3.235594E-04 -7.580790E-02 -6.272237E-04 -9.941256E-02 -1.054222E-03 -6.091493E-02 -3.907622E-04 -6.317933E-02 -4.235462E-04 -1.014991E-01 -1.038642E-03 -7.701856E-02 -6.147885E-04 -1.112163E-01 -1.265790E-03 -7.536078E-02 -5.769678E-04 -1.302318E-01 -1.742411E-03 -1.635988E-01 -2.867432E-03 -7.255186E-02 -6.284552E-04 -1.087261E-01 -1.292949E-03 -1.071717E-01 -1.182413E-03 -1.275727E-01 -1.701949E-03 -7.308862E-02 -5.588046E-04 -8.677475E-02 -7.923200E-04 -1.598968E-01 -2.752916E-03 -1.090514E-01 -1.267867E-03 -9.373573E-02 -9.468462E-04 -8.656897E-02 -7.993780E-04 -1.556811E-01 -2.570483E-03 -1.563481E-01 -2.547541E-03 -1.019280E-01 -1.066946E-03 -1.407263E-01 -2.139026E-03 -9.439261E-02 -9.727226E-04 -1.162727E-01 -1.469225E-03 -8.572873E-02 -7.472360E-04 -8.412598E-02 -7.378763E-04 -1.184615E-01 -1.447843E-03 -1.129877E-01 -1.387240E-03 -7.089346E-02 -5.210102E-04 -7.106181E-02 -5.601420E-04 -9.767580E-02 -1.010123E-03 -8.639404E-02 -7.865066E-04 -8.288207E-02 -7.425178E-04 -8.992435E-02 -9.501100E-04 -6.866676E-02 -5.516503E-04 -6.325590E-02 -4.342044E-04 -7.431495E-02 -6.348268E-04 -7.599335E-02 -5.991771E-04 -7.274975E-02 -5.571106E-04 -6.766739E-02 -5.249260E-04 -3.181945E-02 -1.159273E-04 -4.099202E-02 -1.863511E-04 -4.739506E-02 -2.375175E-04 -4.566762E-02 -2.462349E-04 -4.309564E-02 -2.169367E-04 -4.968602E-02 -2.836430E-04 -2.554238E-02 -7.130377E-05 -3.399568E-02 -1.313338E-04 -4.489588E-02 -2.608490E-04 -3.609823E-02 -1.664739E-04 -3.688252E-02 -1.524824E-04 -4.371937E-02 -2.194516E-04 -2.432742E-02 -6.816206E-05 -2.481126E-02 -7.715594E-05 -3.225220E-02 -1.297648E-04 -2.820482E-02 -8.756926E-05 -2.911932E-02 -9.466605E-05 -3.374238E-02 -1.328376E-04 -2.602288E-02 -8.674133E-05 -2.044276E-02 -4.796182E-05 -2.621162E-02 -8.521865E-05 -3.451732E-02 -1.272449E-04 -2.497288E-02 -7.862985E-05 -3.797623E-02 -1.934870E-04 -1.693158E-02 -3.957575E-05 -2.516921E-02 -7.540607E-05 -1.916047E-02 -5.115510E-05 -1.903519E-02 -5.491559E-05 -1.655257E-02 -2.970206E-05 -1.806193E-02 -4.421369E-05 -1.074232E-02 -1.704622E-05 -9.240900E-03 -1.255060E-05 -1.183407E-02 -1.748671E-05 -9.219696E-03 -1.609190E-05 -1.034386E-02 -1.462148E-05 -1.114705E-02 -1.850428E-05 -1.297960E-02 -2.423078E-05 -1.184491E-02 -2.140225E-05 -1.658431E-02 -4.388936E-05 -1.318219E-02 -2.389643E-05 -1.560221E-02 -3.262330E-05 -1.536994E-02 -2.967325E-05 -1.474070E-02 -2.850636E-05 -1.423540E-02 -2.724881E-05 -1.128414E-02 -1.691587E-05 -7.509669E-03 -1.138736E-05 -1.063708E-02 -1.760414E-05 -1.145186E-02 -2.083540E-05 -1.762181E-02 -4.474974E-05 -2.084088E-02 -6.507170E-05 -2.057308E-02 -5.516523E-05 -2.241191E-02 -7.120840E-05 -1.269523E-02 -2.005337E-05 -1.660064E-02 -3.697642E-05 -3.182773E-02 -1.204858E-04 -3.242190E-02 -1.182654E-04 -2.434893E-02 -7.105045E-05 -2.652135E-02 -7.481704E-05 -1.907560E-02 -5.087922E-05 -2.190903E-02 -6.429867E-05 -3.105119E-02 -1.183209E-04 -2.464967E-02 -7.797261E-05 -2.817912E-02 -9.460889E-05 -4.586402E-02 -2.494422E-04 -3.145613E-02 -1.306566E-04 -3.581523E-02 -1.371038E-04 -3.824846E-02 -1.899412E-04 -4.263531E-02 -1.873636E-04 -3.042311E-02 -1.167731E-04 -2.732643E-02 -7.846176E-05 -4.050189E-02 -1.908935E-04 -3.434384E-02 -1.361814E-04 -4.495849E-02 -2.646832E-04 -4.092138E-02 -2.017353E-04 -5.344413E-02 -3.250472E-04 -4.697795E-02 -2.453442E-04 -3.679979E-02 -1.575515E-04 -3.908452E-02 -1.742990E-04 -4.284114E-02 -2.154331E-04 -4.380058E-02 -2.263026E-04 -3.985455E-02 -1.829559E-04 -3.394862E-02 -1.228745E-04 -4.744764E-02 -2.814058E-04 -3.949446E-02 -1.946576E-04 -6.109758E-02 -4.065478E-04 -5.344244E-02 -3.173404E-04 -5.996641E-02 -3.831573E-04 -7.955351E-02 -6.865984E-04 -4.384271E-02 -1.999570E-04 -6.435559E-02 -4.377030E-04 -4.969051E-02 -2.811028E-04 -5.599815E-02 -3.868544E-04 -4.163040E-02 -2.191546E-04 -4.845338E-02 -2.687605E-04 -7.016148E-02 -5.682673E-04 -6.371981E-02 -4.441518E-04 -6.553775E-02 -4.702345E-04 -5.818627E-02 -3.716053E-04 -7.301288E-02 -5.661570E-04 -6.855403E-02 -4.925246E-04 -4.751877E-02 -3.119215E-04 -6.178405E-02 -4.942348E-04 -5.778084E-02 -3.682642E-04 -6.794905E-02 -4.813721E-04 -4.580484E-02 -2.283874E-04 -4.833285E-02 -2.496503E-04 -6.283852E-02 -4.289179E-04 -5.868559E-02 -3.829967E-04 -4.942181E-02 -2.770674E-04 -4.633288E-02 -2.530825E-04 -6.521627E-02 -4.531563E-04 -6.926577E-02 -4.930307E-04 -4.947134E-02 -2.743687E-04 -5.599354E-02 -3.625867E-04 -4.586533E-02 -2.169603E-04 -6.057563E-02 -3.949284E-04 -3.269565E-02 -1.324708E-04 -3.688715E-02 -1.561195E-04 -4.607386E-02 -2.561957E-04 -4.286297E-02 -2.186313E-04 -3.835517E-02 -1.807457E-04 -3.101308E-02 -1.258603E-04 -4.256564E-02 -2.156265E-04 -3.995257E-02 -1.962160E-04 -3.999004E-02 -1.700193E-04 -4.593940E-02 -2.325862E-04 -2.746637E-02 -1.056011E-04 -2.945679E-02 -1.039840E-04 -4.237269E-02 -1.976737E-04 -3.339233E-02 -1.438661E-04 -3.371702E-02 -1.468814E-04 -3.238843E-02 -1.164792E-04 -2.064297E-02 -5.618891E-05 -2.155723E-02 -6.462578E-05 -2.273621E-02 -5.819206E-05 -1.964446E-02 -5.147180E-05 -2.401285E-02 -7.795637E-05 -2.729940E-02 -9.076729E-05 -2.213041E-02 -6.949614E-05 -1.338392E-02 -2.465408E-05 -2.431872E-02 -7.724266E-05 -2.524967E-02 -1.026115E-04 -2.737266E-02 -9.841098E-05 -2.112771E-02 -5.889604E-05 -1.496282E-02 -4.007026E-05 -1.889629E-02 -5.468925E-05 -1.783224E-02 -4.566541E-05 -8.331789E-03 -9.954892E-06 -1.796677E-02 -3.918970E-05 -1.970964E-02 -4.450042E-05 -1.137654E-02 -1.965594E-05 -8.407972E-03 -1.166241E-05 -1.447552E-02 -2.605420E-05 -8.376429E-03 -1.246530E-05 -1.335436E-02 -3.392789E-05 -1.200101E-02 -2.280708E-05 -1.602954E-02 -3.739523E-05 -9.669299E-03 -1.679999E-05 -1.566345E-02 -3.502619E-05 -1.588366E-02 -3.186835E-05 -1.901368E-02 -4.343637E-05 -2.267083E-02 -7.178904E-05 -9.004042E-03 -1.176762E-05 -1.804933E-02 -4.338938E-05 -1.071906E-02 -1.634166E-05 -9.615294E-03 -1.267674E-05 -1.558814E-02 -2.851576E-05 -1.376105E-02 -2.761523E-05 -1.902761E-02 -6.150446E-05 -1.854745E-02 -5.066723E-05 -1.702864E-02 -4.027369E-05 -2.099003E-02 -6.424422E-05 -2.011904E-02 -5.529868E-05 -1.661724E-02 -3.837653E-05 -1.373297E-02 -2.945958E-05 -1.569666E-02 -3.146459E-05 -1.202400E-02 -1.784017E-05 -1.532156E-02 -4.083467E-05 -1.855533E-02 -4.148169E-05 -2.388887E-02 -7.104659E-05 -3.029475E-02 -1.112701E-04 -3.479830E-02 -1.457081E-04 -2.993443E-02 -1.034283E-04 -2.618538E-02 -8.150737E-05 -1.973658E-02 -5.388325E-05 -1.908984E-02 -4.925317E-05 -2.558471E-02 -7.645976E-05 -3.057900E-02 -1.526871E-04 -2.038898E-02 -6.028856E-05 -1.936824E-02 -5.652676E-05 -1.860724E-02 -4.433157E-05 -1.859342E-02 -6.046452E-05 -3.104650E-02 -1.107731E-04 -2.791826E-02 -8.517252E-05 -2.550906E-02 -7.911190E-05 -3.228374E-02 -1.235126E-04 -2.983461E-02 -1.169772E-04 -2.340715E-02 -7.962272E-05 -2.472431E-02 -7.854176E-05 -3.116101E-02 -1.113261E-04 -2.726866E-02 -8.448946E-05 -2.872167E-02 -1.004750E-04 -3.032428E-02 -1.229901E-04 -3.053428E-02 -1.122910E-04 -3.083822E-02 -1.483669E-04 -2.064536E-02 -5.782771E-05 -3.181149E-02 -1.187295E-04 -4.583432E-02 -2.558159E-04 -2.666121E-02 -9.350519E-05 -3.358219E-02 -1.192091E-04 -2.369325E-02 -8.059778E-05 -3.102351E-02 -1.289691E-04 -2.820355E-02 -1.068875E-04 -3.480350E-02 -1.443944E-04 -3.560608E-02 -1.469841E-04 -4.990478E-02 -3.032798E-04 -3.784020E-02 -1.765328E-04 -3.316256E-02 -1.290263E-04 -4.033997E-02 -1.799350E-04 -3.929687E-02 -1.626134E-04 -3.235240E-02 -1.382862E-04 -3.388379E-02 -1.425521E-04 -3.879634E-02 -1.814360E-04 -3.990331E-02 -1.937058E-04 -2.486877E-02 -7.060573E-05 -2.847067E-02 -8.714105E-05 -4.490738E-02 -2.182380E-04 -3.277939E-02 -1.222614E-04 -2.300113E-02 -6.725020E-05 -3.241132E-02 -1.183039E-04 -3.117719E-02 -1.083016E-04 -2.675135E-02 -8.558799E-05 -3.944468E-02 -1.742389E-04 -4.399132E-02 -2.295328E-04 -2.087405E-02 -4.684764E-05 -1.956671E-02 -4.488034E-05 -3.135372E-02 -1.064232E-04 -1.852589E-02 -4.046644E-05 -2.367532E-02 -7.100616E-05 -2.728169E-02 -9.976058E-05 -2.896959E-02 -9.844663E-05 -2.865198E-02 -1.092590E-04 -3.163730E-02 -1.082131E-04 -3.268958E-02 -1.309514E-04 -2.046897E-02 -4.893795E-05 -2.472680E-02 -7.874493E-05 -2.926292E-02 -1.081766E-04 -3.002458E-02 -1.013573E-04 -1.360951E-02 -2.635847E-05 -2.311727E-02 -6.168251E-05 -3.020182E-02 -1.206713E-04 -2.697417E-02 -8.378246E-05 -1.334960E-02 -2.306197E-05 -1.590087E-02 -4.689125E-05 -2.011479E-02 -6.965285E-05 -1.633667E-02 -3.972970E-05 -2.002848E-02 -4.881276E-05 -2.201774E-02 -5.990084E-05 -1.590141E-02 -4.489842E-05 -1.287558E-02 -2.913250E-05 -1.902193E-02 -5.067435E-05 -1.740647E-02 -4.536926E-05 -2.127020E-02 -6.939263E-05 -1.655808E-02 -3.850014E-05 -1.186084E-02 -2.566137E-05 -1.183085E-02 -2.088219E-05 -1.691039E-02 -4.357920E-05 -6.413071E-03 -5.791752E-06 -1.069744E-02 -1.593929E-05 -9.843254E-03 -1.483187E-05 -6.822909E-03 -6.785866E-06 -4.540728E-03 -3.073065E-06 -1.381635E-02 -3.287951E-05 -9.881421E-03 -1.765396E-05 -5.794819E-03 -6.579960E-06 -1.064665E-02 -1.825529E-05 -9.708618E-03 -2.420624E-05 -3.867809E-03 -3.463878E-06 -1.036922E-02 -1.880088E-05 -1.209814E-02 -2.247120E-05 -6.289728E-03 -9.053460E-06 -1.121820E-02 -2.376217E-05 -6.107387E-03 -9.842112E-06 -6.679042E-03 -7.917785E-06 -4.610676E-03 -3.822313E-06 -8.094200E-03 -1.556770E-05 -1.289830E-02 -2.263732E-05 -1.240554E-02 -2.182216E-05 -1.709643E-02 -4.443205E-05 -1.240518E-02 -1.925823E-05 -1.427630E-02 -3.038114E-05 -1.316587E-02 -2.528125E-05 -1.051316E-02 -1.998843E-05 -1.171370E-02 -1.977243E-05 -1.035585E-02 -1.603691E-05 -7.844703E-03 -1.578836E-05 -1.090930E-02 -1.495715E-05 -8.811473E-03 -9.095511E-06 -1.164754E-02 -2.113385E-05 -1.218588E-02 -2.577136E-05 -9.989257E-03 -1.768442E-05 -1.346846E-02 -3.232091E-05 -1.442996E-02 -2.734716E-05 -9.319830E-03 -1.357660E-05 -8.976517E-03 -1.130996E-05 -1.111410E-02 -1.774598E-05 -7.097237E-03 -9.606334E-06 -7.668810E-03 -9.333553E-06 -7.744641E-03 -1.065587E-05 -7.076161E-03 -1.063617E-05 -9.841337E-03 -1.147612E-05 -9.084818E-03 -1.406836E-05 -2.026892E-02 -5.186751E-05 -2.132295E-02 -5.072988E-05 -2.033996E-02 -4.765789E-05 -2.446954E-02 -7.232017E-05 -1.029334E-02 -1.244212E-05 -1.235238E-02 -2.298965E-05 -1.681496E-02 -3.708751E-05 -2.101172E-02 -5.242154E-05 -1.722265E-02 -4.432357E-05 -1.352905E-02 -2.104447E-05 -2.195095E-02 -5.623046E-05 -2.089078E-02 -5.825067E-05 -2.311666E-02 -7.574537E-05 -1.562461E-02 -4.452838E-05 -3.307359E-02 -1.363268E-04 -2.572970E-02 -8.059205E-05 -2.345159E-02 -6.488182E-05 -2.554049E-02 -8.362508E-05 -2.006928E-02 -5.496633E-05 -2.259482E-02 -7.740649E-05 -1.761243E-02 -4.766457E-05 -1.125462E-02 -1.662484E-05 -1.806884E-02 -4.002727E-05 -1.875035E-02 -3.963856E-05 -2.507230E-02 -7.918744E-05 -1.948387E-02 -4.675980E-05 -2.102608E-02 -5.253998E-05 -2.725383E-02 -8.911499E-05 -1.527724E-02 -2.634360E-05 -2.318415E-02 -6.853391E-05 -1.953638E-02 -4.357651E-05 -2.681123E-02 -9.518790E-05 -1.619023E-02 -3.280100E-05 -2.160140E-02 -5.673289E-05 -2.207700E-02 -6.204249E-05 -1.851529E-02 -4.084658E-05 -2.064003E-02 -5.523222E-05 -1.936444E-02 -5.709920E-05 -2.135402E-02 -6.226947E-05 -1.913624E-02 -5.176876E-05 -1.979246E-02 -4.760307E-05 -2.697598E-02 -1.023961E-04 -1.163038E-02 -1.840715E-05 -1.922611E-02 -4.751185E-05 -1.370913E-02 -2.686855E-05 -1.541222E-02 -3.013601E-05 -2.247424E-02 -5.214783E-05 -1.763181E-02 -3.495488E-05 -9.375723E-03 -1.593258E-05 -1.436433E-02 -3.431677E-05 -1.300122E-02 -2.534320E-05 -1.428291E-02 -3.109112E-05 -1.320134E-02 -2.937454E-05 -1.496684E-02 -2.934259E-05 -1.257843E-02 -3.153056E-05 -1.573087E-02 -3.089207E-05 -1.074581E-02 -1.656493E-05 -8.983048E-03 -1.169670E-05 -1.588106E-02 -3.644142E-05 -1.135062E-02 -1.548990E-05 -1.342453E-02 -4.068693E-05 -7.143669E-03 -1.309838E-05 -1.911833E-02 -5.539347E-05 -1.578655E-02 -3.784881E-05 -1.010592E-02 -2.000143E-05 -2.107750E-02 -5.152671E-05 -1.352516E-02 -2.742309E-05 -1.298482E-02 -2.958789E-05 -8.061759E-03 -1.027922E-05 -1.145755E-02 -1.975699E-05 -7.630008E-03 -9.001956E-06 -1.110176E-02 -1.756811E-05 -7.622179E-03 -1.192472E-05 -1.157431E-02 -3.153358E-05 -1.329349E-02 -2.758940E-05 -7.723627E-03 -1.213940E-05 -6.430868E-03 -5.865444E-06 -6.666510E-03 -6.225385E-06 -3.314737E-03 -2.247442E-06 -5.145333E-03 -3.979329E-06 -6.496136E-03 -9.042875E-06 -3.832205E-03 -4.079904E-06 -1.091525E-02 -2.123166E-05 -1.100375E-02 -2.753282E-05 -6.452706E-03 -9.971091E-06 -5.931053E-03 -8.601691E-06 -9.574695E-03 -1.435980E-05 -6.378307E-03 -9.114546E-06 -1.035293E-02 -2.113676E-05 -5.515936E-03 -4.201853E-06 -5.579006E-03 -4.124072E-06 -9.045101E-03 -2.746668E-05 -7.146555E-03 -1.150230E-05 -6.281008E-03 -5.825971E-06 -5.295060E-03 -6.107698E-06 -4.285052E-03 -3.897963E-06 -1.261316E-02 -3.054847E-05 -1.248209E-02 -3.143433E-05 -1.216297E-02 -1.827405E-05 -1.257515E-02 -2.571939E-05 -8.877488E-03 -1.136667E-05 -1.224337E-02 -2.556328E-05 -1.610471E-02 -3.359843E-05 -1.376758E-02 -2.898825E-05 -1.066381E-02 -1.891264E-05 -1.370280E-02 -3.200949E-05 -1.218455E-02 -2.842079E-05 -1.205249E-02 -2.816694E-05 -1.292481E-02 -2.311574E-05 -1.500071E-02 -5.524516E-05 -1.629889E-02 -3.414163E-05 -1.715035E-02 -4.138447E-05 -7.880253E-03 -8.429037E-06 -1.066213E-02 -2.491824E-05 -1.071709E-02 -1.648251E-05 -1.278476E-02 -2.151462E-05 -2.029414E-02 -5.704631E-05 -1.835961E-02 -3.756414E-05 -1.086076E-02 -1.970149E-05 -1.953320E-02 -6.822321E-05 -1.727515E-02 -4.272841E-05 -2.113792E-02 -5.363596E-05 -1.255464E-02 -2.618423E-05 -1.849104E-02 -3.910212E-05 -1.080830E-02 -1.627578E-05 -1.065175E-02 -1.245618E-05 -1.729833E-02 -4.769086E-05 -1.229654E-02 -2.017586E-05 -2.000316E-02 -5.539455E-05 -1.490083E-02 -2.662412E-05 -1.257552E-02 -2.450638E-05 -2.265863E-02 -5.948942E-05 -1.592510E-02 -3.967897E-05 -1.671764E-02 -3.518609E-05 -2.134651E-02 -6.970473E-05 -1.145479E-02 -2.341492E-05 -1.110701E-02 -1.473716E-05 -1.365215E-02 -2.532562E-05 -1.569347E-02 -3.022408E-05 -1.740868E-02 -4.263025E-05 -2.046954E-02 -5.236013E-05 -2.088018E-02 -4.754884E-05 -2.143648E-02 -5.630377E-05 -2.321051E-02 -7.417245E-05 -1.393331E-02 -2.372413E-05 -1.272764E-02 -2.686784E-05 -1.996763E-02 -6.034803E-05 -1.543709E-02 -3.597724E-05 -1.374704E-02 -2.238864E-05 -1.485050E-02 -3.200278E-05 -1.630595E-02 -3.026169E-05 -1.885152E-02 -5.848418E-05 -1.903463E-02 -4.081588E-05 -2.873487E-02 -1.002249E-04 -2.191651E-02 -7.843435E-05 -2.375413E-02 -7.774516E-05 -1.237198E-02 -2.127422E-05 -1.942702E-02 -4.732051E-05 -2.103354E-02 -6.483331E-05 -1.285994E-02 -2.290156E-05 -1.249524E-02 -2.455002E-05 -1.236581E-02 -2.393541E-05 -1.379145E-02 -2.529751E-05 -1.562825E-02 -4.587015E-05 -2.641863E-02 -9.120767E-05 -2.733140E-02 -1.071137E-04 -1.919060E-02 -5.181037E-05 -2.129817E-02 -5.796235E-05 -1.260439E-02 -1.817703E-05 -1.848829E-02 -4.798194E-05 -1.216642E-02 -2.707330E-05 -1.410959E-02 -2.525781E-05 -9.453654E-03 -1.551579E-05 -9.766342E-03 -1.477317E-05 -1.836540E-02 -5.242882E-05 -1.804249E-02 -4.602986E-05 -1.853466E-02 -4.366676E-05 -1.525913E-02 -3.246161E-05 -1.673660E-02 -3.399297E-05 -1.837090E-02 -4.346348E-05 -1.396823E-02 -3.367275E-05 -9.246854E-03 -1.212445E-05 -1.410130E-02 -3.106294E-05 -1.307073E-02 -2.149583E-05 -9.704033E-03 -1.660514E-05 -1.044410E-02 -1.303462E-05 -1.166356E-02 -2.043704E-05 -1.318169E-02 -2.754937E-05 -1.812814E-02 -4.404582E-05 -1.552606E-02 -3.211975E-05 -1.585862E-02 -3.414359E-05 -1.446034E-02 -2.967784E-05 -7.649239E-03 -1.381600E-05 -6.893844E-03 -7.460924E-06 -1.354488E-02 -2.777125E-05 -1.007415E-02 -1.536552E-05 -8.075475E-03 -1.134760E-05 -1.130634E-02 -1.578798E-05 -6.590888E-03 -9.273749E-06 -7.448105E-03 -8.982164E-06 -5.823642E-03 -5.865562E-06 -9.093169E-03 -9.535064E-06 -4.848224E-03 -3.763431E-06 -9.282171E-03 -1.433250E-05 -1.127548E-02 -2.124250E-05 -9.878278E-03 -2.325491E-05 -1.039485E-02 -2.066791E-05 -1.155396E-02 -2.135511E-05 -1.450572E-02 -3.456258E-05 -1.246739E-02 -2.299204E-05 -1.290333E-02 -2.343647E-05 -1.121371E-02 -1.743282E-05 -5.468489E-03 -5.451707E-06 -1.180352E-02 -2.521651E-05 -1.416461E-02 -3.062871E-05 -1.076659E-02 -2.220002E-05 -2.448020E-02 -1.177322E-04 -1.517807E-02 -2.911032E-05 -1.031229E-02 -1.643057E-05 -1.200918E-02 -2.501705E-05 -1.613952E-02 -3.362754E-05 -1.378304E-02 -2.726242E-05 -1.857986E-02 -5.056092E-05 -1.576878E-02 -3.540682E-05 -1.910927E-02 -4.403442E-05 -1.829771E-02 -4.616084E-05 -1.164328E-02 -2.237054E-05 -1.680617E-02 -5.383688E-05 -2.087579E-02 -7.699421E-05 -2.381231E-02 -8.579600E-05 -1.885763E-02 -4.911360E-05 -2.649401E-02 -7.833957E-05 -1.350269E-02 -2.364349E-05 -1.757223E-02 -4.850663E-05 -2.411131E-02 -7.298399E-05 -2.774250E-02 -9.193073E-05 -2.282427E-02 -5.981367E-05 -2.721816E-02 -9.146779E-05 -2.832490E-02 -1.002337E-04 -2.942107E-02 -1.083982E-04 -2.629534E-02 -7.761525E-05 -2.690294E-02 -9.295211E-05 -2.031569E-02 -5.738480E-05 -2.590631E-02 -8.501230E-05 -3.031225E-02 -1.054523E-04 -2.423433E-02 -6.759709E-05 -3.382137E-02 -1.369015E-04 -2.496378E-02 -7.510237E-05 -2.672791E-02 -9.783698E-05 -2.507828E-02 -7.618011E-05 -1.769181E-02 -3.552782E-05 -2.096115E-02 -5.131019E-05 -3.063827E-02 -1.178430E-04 -3.120124E-02 -1.130478E-04 -2.031644E-02 -7.092047E-05 -2.760866E-02 -8.532139E-05 -2.786328E-02 -8.451452E-05 -2.700290E-02 -9.059845E-05 -3.660807E-02 -1.468682E-04 -3.105005E-02 -1.103431E-04 -3.734607E-02 -1.551359E-04 -3.447674E-02 -1.455364E-04 -2.264216E-02 -5.558419E-05 -2.211961E-02 -5.818600E-05 -3.130555E-02 -1.297184E-04 -3.457400E-02 -1.544678E-04 -2.687511E-02 -9.290746E-05 -3.047806E-02 -1.034500E-04 -3.560765E-02 -1.552412E-04 -3.095201E-02 -1.306105E-04 -3.230749E-02 -1.340962E-04 -2.928305E-02 -1.168468E-04 -4.265647E-02 -2.076643E-04 -3.298446E-02 -1.507110E-04 -2.986290E-02 -1.139639E-04 -3.435605E-02 -1.436737E-04 -3.052232E-02 -1.060392E-04 -3.396111E-02 -1.269448E-04 -3.167642E-02 -1.425279E-04 -2.821678E-02 -9.529119E-05 -4.113237E-02 -1.985887E-04 -3.525258E-02 -1.581696E-04 -3.297968E-02 -1.288343E-04 -2.799503E-02 -1.215560E-04 -4.104348E-02 -2.019357E-04 -3.825115E-02 -1.695340E-04 -2.776267E-02 -8.959306E-05 -3.443399E-02 -1.543941E-04 -2.347389E-02 -6.957205E-05 -2.325934E-02 -7.017456E-05 -2.441186E-02 -8.613195E-05 -1.983392E-02 -5.161177E-05 -2.710281E-02 -8.919133E-05 -2.744420E-02 -8.533228E-05 -2.193886E-02 -6.175359E-05 -1.830518E-02 -5.544200E-05 -2.341425E-02 -7.903797E-05 -2.450511E-02 -8.157422E-05 -2.452935E-02 -7.643569E-05 -3.274389E-02 -1.348587E-04 -9.730875E-03 -1.447356E-05 -1.623715E-02 -3.017421E-05 -1.516567E-02 -3.422832E-05 -1.065832E-02 -1.723340E-05 -1.938164E-02 -4.958486E-05 -1.489311E-02 -2.833615E-05 -1.617585E-02 -3.768666E-05 -1.471840E-02 -3.108380E-05 -1.804409E-02 -4.531066E-05 -2.150485E-02 -6.386092E-05 -1.088027E-02 -2.181372E-05 -1.017312E-02 -2.124217E-05 -1.432834E-02 -2.609903E-05 -1.583698E-02 -3.341095E-05 -9.743784E-03 -1.280783E-05 -7.846675E-03 -7.302042E-06 -9.804358E-03 -1.279367E-05 -1.297038E-02 -2.247676E-05 -1.204029E-02 -2.186972E-05 -8.944589E-03 -1.610694E-05 -1.437621E-02 -2.903841E-05 -1.162625E-02 -1.600570E-05 -5.705942E-03 -6.026539E-06 -9.949459E-03 -1.121060E-05 -1.355078E-02 -3.639982E-05 -1.253062E-02 -2.184327E-05 -1.128093E-02 -2.186156E-05 -1.351097E-02 -3.128150E-05 -1.302602E-02 -2.954976E-05 -1.581710E-02 -2.880115E-05 -8.299998E-03 -1.148143E-05 -1.419270E-02 -3.823010E-05 -8.195314E-03 -1.206128E-05 -1.089466E-02 -1.659227E-05 -1.434916E-02 -2.871463E-05 -1.677690E-02 -5.753038E-05 -2.577031E-02 -8.627098E-05 -2.327382E-02 -8.071762E-05 -2.476661E-02 -7.787162E-05 -2.107385E-02 -5.721321E-05 -1.990587E-02 -5.438566E-05 -1.715009E-02 -3.760846E-05 -2.840951E-02 -9.042931E-05 -2.308683E-02 -6.425853E-05 -2.068224E-02 -5.497174E-05 -2.518837E-02 -7.159468E-05 -1.844753E-02 -5.256599E-05 -2.195768E-02 -5.682427E-05 -4.576470E-02 -2.500482E-04 -3.107728E-02 -1.163017E-04 -3.132822E-02 -1.179930E-04 -3.352262E-02 -1.295829E-04 -2.943942E-02 -9.539846E-05 -3.672963E-02 -1.518887E-04 -3.639000E-02 -1.578688E-04 -3.932185E-02 -1.696900E-04 -3.126478E-02 -1.158570E-04 -3.784245E-02 -1.552955E-04 -3.346893E-02 -1.329769E-04 -3.045629E-02 -1.110202E-04 -4.501003E-02 -2.328334E-04 -5.330472E-02 -3.651809E-04 -4.289711E-02 -2.197266E-04 -3.259040E-02 -1.193252E-04 -4.449895E-02 -2.225829E-04 -4.124007E-02 -1.878125E-04 -4.737006E-02 -2.432331E-04 -4.433616E-02 -2.209854E-04 -5.530206E-02 -3.206482E-04 -6.256960E-02 -4.281638E-04 -5.285253E-02 -3.112894E-04 -4.439981E-02 -2.141823E-04 -5.016707E-02 -2.707515E-04 -6.882017E-02 -4.979869E-04 -4.465718E-02 -2.306648E-04 -3.888039E-02 -1.657354E-04 -5.385073E-02 -3.147914E-04 -4.640933E-02 -2.345368E-04 -7.051618E-02 -6.268651E-04 -4.375120E-02 -2.369745E-04 -6.068695E-02 -4.021878E-04 -6.068536E-02 -3.839552E-04 -3.602602E-02 -1.670809E-04 -4.995017E-02 -2.763744E-04 -4.392495E-02 -2.564028E-04 -5.093161E-02 -3.505664E-04 -4.432335E-02 -2.193425E-04 -4.855910E-02 -2.650606E-04 -5.176805E-02 -3.189213E-04 -4.890781E-02 -2.548831E-04 -6.554400E-02 -5.204569E-04 -6.588153E-02 -4.746561E-04 -6.675922E-02 -5.163608E-04 -7.271786E-02 -5.798664E-04 -4.837626E-02 -2.803260E-04 -5.224310E-02 -3.238220E-04 -4.580609E-02 -2.616101E-04 -5.119315E-02 -2.907515E-04 -4.372268E-02 -2.158620E-04 -4.124410E-02 -2.181852E-04 -4.882021E-02 -2.584581E-04 -5.914423E-02 -3.994010E-04 -4.163873E-02 -1.967708E-04 -3.798723E-02 -1.675576E-04 -6.178751E-02 -4.293350E-04 -5.052828E-02 -2.945947E-04 -3.889945E-02 -1.723031E-04 -4.778867E-02 -2.787658E-04 -2.556412E-02 -7.318557E-05 -3.450636E-02 -1.552235E-04 -2.997657E-02 -1.090031E-04 -2.250800E-02 -7.954622E-05 -3.846568E-02 -1.836107E-04 -3.701622E-02 -1.828496E-04 -3.972718E-02 -1.850244E-04 -2.403274E-02 -8.024833E-05 -3.407142E-02 -1.362787E-04 -3.563489E-02 -1.418007E-04 -2.285168E-02 -6.135475E-05 -3.573895E-02 -1.429096E-04 -1.944631E-02 -4.643790E-05 -2.223553E-02 -6.647009E-05 -2.178313E-02 -5.702943E-05 -1.885794E-02 -4.219512E-05 -2.626415E-02 -7.357902E-05 -2.590102E-02 -7.754226E-05 -1.790062E-02 -4.192871E-05 -1.566226E-02 -3.285418E-05 -2.611458E-02 -8.677724E-05 -2.644054E-02 -7.951101E-05 -1.688067E-02 -3.275169E-05 -2.281883E-02 -7.048130E-05 -1.383028E-02 -2.557495E-05 -1.750718E-02 -3.486088E-05 -1.458508E-02 -2.726606E-05 -1.229121E-02 -2.297397E-05 -1.858922E-02 -4.177321E-05 -1.787571E-02 -4.327284E-05 -6.566818E-03 -9.185537E-06 -1.448563E-02 -2.622240E-05 -1.621707E-02 -3.406357E-05 -1.085556E-02 -1.536032E-05 -1.333272E-02 -2.646991E-05 -1.453289E-02 -2.893412E-05 -1.518348E-02 -4.580967E-05 -1.404090E-02 -2.660292E-05 -1.349000E-02 -3.442831E-05 -1.633780E-02 -4.356999E-05 -1.600602E-02 -3.943089E-05 -1.590141E-02 -3.641474E-05 -1.086814E-02 -1.688254E-05 -1.698352E-02 -4.714162E-05 -1.318224E-02 -2.638496E-05 -1.119975E-02 -1.718066E-05 -1.575614E-02 -3.441783E-05 -1.418915E-02 -2.794370E-05 -1.971441E-02 -5.386951E-05 -2.749934E-02 -9.685175E-05 -2.450793E-02 -8.361790E-05 -3.096368E-02 -1.517345E-04 -1.966521E-02 -5.193037E-05 -1.488285E-02 -2.767080E-05 -2.628867E-02 -8.549789E-05 -3.222975E-02 -1.197226E-04 -3.578145E-02 -1.651405E-04 -2.717256E-02 -9.455312E-05 -2.846483E-02 -1.022437E-04 -2.373681E-02 -7.165349E-05 -4.893242E-02 -2.730109E-04 -3.477536E-02 -1.404582E-04 -4.928227E-02 -2.924560E-04 -4.544606E-02 -2.179936E-04 -3.160536E-02 -1.247483E-04 -4.089837E-02 -1.816429E-04 -6.363669E-02 -4.595645E-04 -5.951940E-02 -3.700880E-04 -3.810687E-02 -1.688583E-04 -5.679150E-02 -3.460302E-04 -5.729570E-02 -3.719866E-04 -5.082871E-02 -2.938785E-04 -7.469781E-02 -6.673208E-04 -6.652451E-02 -4.877821E-04 -6.401348E-02 -4.744885E-04 -5.622051E-02 -3.395523E-04 -6.073961E-02 -3.833605E-04 -6.232929E-02 -4.148823E-04 -7.969677E-02 -6.803601E-04 -8.037601E-02 -7.230061E-04 -7.865258E-02 -6.933305E-04 -9.845581E-02 -1.080566E-03 -6.878501E-02 -5.274776E-04 -7.015010E-02 -5.143444E-04 -1.156668E-01 -1.410105E-03 -1.192152E-01 -1.498896E-03 -7.577104E-02 -6.219937E-04 -8.184079E-02 -7.335058E-04 -1.139638E-01 -1.401155E-03 -8.075065E-02 -6.916698E-04 -1.437821E-01 -2.126013E-03 -8.850980E-02 -8.276893E-04 -1.464407E-01 -2.249915E-03 -1.357666E-01 -1.907685E-03 -8.903971E-02 -8.785322E-04 -1.035557E-01 -1.229512E-03 -9.987363E-02 -1.066492E-03 -1.408315E-01 -2.126682E-03 -7.775073E-02 -6.482580E-04 -9.217616E-02 -9.279523E-04 -1.346724E-01 -1.896751E-03 -8.733262E-02 -8.612501E-04 -9.983468E-02 -1.028984E-03 -9.096031E-02 -9.623493E-04 -1.646266E-01 -2.794929E-03 -1.304703E-01 -1.750382E-03 -8.811642E-02 -8.019013E-04 -1.067542E-01 -1.239326E-03 -4.255870E-02 -2.117948E-04 -6.657200E-02 -4.734337E-04 -6.716890E-02 -5.510834E-04 -4.697673E-02 -2.522950E-04 -9.074058E-02 -9.095881E-04 -7.248365E-02 -5.562525E-04 -5.894139E-02 -3.919992E-04 -4.322527E-02 -2.007041E-04 -8.846643E-02 -8.126375E-04 -8.094023E-02 -7.286166E-04 -5.884744E-02 -3.735579E-04 -6.484926E-02 -4.588123E-04 -4.890138E-02 -2.886686E-04 -5.972248E-02 -4.039813E-04 -4.560235E-02 -2.196157E-04 -4.488985E-02 -2.203187E-04 -6.734006E-02 -5.380869E-04 -5.510066E-02 -3.247707E-04 -4.520538E-02 -2.496589E-04 -4.217127E-02 -2.278109E-04 -5.551062E-02 -3.500669E-04 -4.092402E-02 -1.766989E-04 -4.298954E-02 -2.252953E-04 -4.437029E-02 -2.305532E-04 -3.704655E-02 -2.009774E-04 -3.598121E-02 -1.524807E-04 -3.045852E-02 -1.197202E-04 -2.601757E-02 -8.242731E-05 -3.357946E-02 -1.363746E-04 -3.932253E-02 -1.907001E-04 -2.390507E-02 -6.834171E-05 -2.346501E-02 -7.056602E-05 -3.597630E-02 -1.581562E-04 -3.090953E-02 -1.047491E-04 -2.070578E-02 -5.748122E-05 -3.347346E-02 -1.259074E-04 -1.513003E-02 -3.897988E-05 -1.367854E-02 -2.775960E-05 -1.645455E-02 -3.040738E-05 -1.324152E-02 -2.645298E-05 -1.588183E-02 -3.062863E-05 -1.734153E-02 -4.637284E-05 -1.634443E-02 -5.133843E-05 -1.119328E-02 -1.753195E-05 -1.323203E-02 -3.022286E-05 -1.135797E-02 -1.802055E-05 -1.090441E-02 -1.701011E-05 -1.759035E-02 -4.033287E-05 -2.242877E-02 -6.151790E-05 -1.946253E-02 -5.767287E-05 -1.450600E-02 -3.658456E-05 -2.053561E-02 -7.347202E-05 -2.172703E-02 -6.439721E-05 -1.970458E-02 -4.600512E-05 -1.750068E-02 -4.248050E-05 -2.615060E-02 -8.063501E-05 -1.471555E-02 -3.115498E-05 -1.390462E-02 -3.029928E-05 -2.277300E-02 -6.669696E-05 -1.701430E-02 -3.723197E-05 -3.366433E-02 -1.230840E-04 -2.650631E-02 -9.335504E-05 -2.977659E-02 -1.071113E-04 -3.153286E-02 -1.137530E-04 -2.593564E-02 -7.559506E-05 -2.027223E-02 -6.394080E-05 -3.666363E-02 -1.619679E-04 -4.008059E-02 -1.775008E-04 -2.019835E-02 -5.995987E-05 -3.269994E-02 -1.328649E-04 -4.298198E-02 -2.261101E-04 -3.478624E-02 -1.430238E-04 -5.024091E-02 -3.090307E-04 -5.399488E-02 -3.370022E-04 -4.802423E-02 -2.449581E-04 -4.962540E-02 -2.661791E-04 -4.714200E-02 -2.609694E-04 -5.413235E-02 -3.323523E-04 -7.865185E-02 -6.448405E-04 -6.245568E-02 -4.162905E-04 -4.774685E-02 -2.886302E-04 -6.062406E-02 -4.267779E-04 -6.732377E-02 -5.175823E-04 -5.345323E-02 -3.251415E-04 -1.081562E-01 -1.271390E-03 -1.021968E-01 -1.089652E-03 -9.531149E-02 -1.008862E-03 -1.099951E-01 -1.318432E-03 -8.728617E-02 -7.926236E-04 -6.759692E-02 -4.951495E-04 -1.622908E-01 -2.679920E-03 -1.297048E-01 -1.704599E-03 -1.105751E-01 -1.365137E-03 -1.338049E-01 -1.961877E-03 -1.135987E-01 -1.340952E-03 -9.047766E-02 -8.460145E-04 -5.706400E-01 -3.358746E-02 -5.767616E-01 -3.370236E-02 -1.875657E-01 -3.661666E-03 -1.871296E-01 -3.729992E-03 -2.210728E-01 -4.924615E-03 -1.665143E-01 -2.811366E-03 -8.372362E-01 -7.140730E-02 -2.631175E-01 -6.985957E-03 -5.750239E-01 -3.400521E-02 -4.828940E-01 -2.485485E-02 -1.859770E-01 -3.523984E-03 -1.672669E-01 -2.904958E-03 -2.375331E-01 -5.780405E-03 -7.840038E-01 -6.231709E-02 -2.132004E-01 -4.651951E-03 -1.326778E-01 -1.947761E-03 -8.211106E-01 -6.821312E-02 -2.477970E-01 -6.338987E-03 -2.133989E-01 -4.688136E-03 -1.689238E-01 -2.975501E-03 -7.799516E-01 -6.145987E-02 -2.571652E-01 -6.720137E-03 -1.616850E-01 -2.755887E-03 -1.967353E-01 -3.935902E-03 -8.257842E-02 -7.608737E-04 -1.275267E-01 -1.697194E-03 -9.926640E-02 -1.068598E-03 -8.218999E-02 -7.531509E-04 -1.532040E-01 -2.576896E-03 -1.294690E-01 -1.713096E-03 -7.154094E-02 -5.360062E-04 -7.586730E-02 -7.229435E-04 -1.259416E-01 -1.689821E-03 -9.056538E-02 -9.471446E-04 -8.469906E-02 -7.604134E-04 -1.005850E-01 -1.057108E-03 -4.463277E-02 -2.328840E-04 -5.523748E-02 -3.372196E-04 -5.232544E-02 -2.999576E-04 -4.417355E-02 -2.638798E-04 -5.782793E-02 -3.530500E-04 -5.944743E-02 -4.220391E-04 -3.657199E-02 -1.400109E-04 -3.808082E-02 -1.658520E-04 -6.410370E-02 -4.501663E-04 -4.310905E-02 -2.075429E-04 -4.755667E-02 -2.801406E-04 -4.959581E-02 -2.962253E-04 -2.252513E-02 -6.049713E-05 -2.991518E-02 -9.529790E-05 -2.664048E-02 -8.582855E-05 -2.475820E-02 -1.017459E-04 -3.488574E-02 -1.383218E-04 -2.890941E-02 -9.208222E-05 -2.098791E-02 -5.427914E-05 -1.943877E-02 -4.588171E-05 -3.481570E-02 -1.557210E-04 -2.398110E-02 -7.150967E-05 -2.011861E-02 -5.252956E-05 -2.839521E-02 -9.935802E-05 -1.502686E-02 -3.105045E-05 -1.609461E-02 -3.412102E-05 -2.098494E-02 -4.964297E-05 -1.885164E-02 -4.396914E-05 -1.991326E-02 -6.264911E-05 -1.856961E-02 -5.669686E-05 -1.440755E-02 -2.776990E-05 -1.370375E-02 -2.537463E-05 -1.757189E-02 -4.061709E-05 -1.902797E-02 -4.188635E-05 -1.135542E-02 -1.840125E-05 -1.821693E-02 -5.706852E-05 -1.966443E-02 -6.182591E-05 -1.098595E-02 -1.890446E-05 -1.880596E-02 -4.985208E-05 -2.224492E-02 -6.056638E-05 -1.938365E-02 -5.095134E-05 -2.004141E-02 -4.931528E-05 -1.584800E-02 -3.117640E-05 -8.716172E-03 -1.000356E-05 -1.306598E-02 -2.437620E-05 -1.303208E-02 -2.038909E-05 -1.496313E-02 -2.545249E-05 -9.598787E-03 -1.772891E-05 -3.131961E-02 -1.312684E-04 -2.918177E-02 -1.061777E-04 -3.088357E-02 -1.333663E-04 -3.322098E-02 -1.522259E-04 -1.912743E-02 -4.246859E-05 -2.493296E-02 -7.677374E-05 -3.831962E-02 -1.658539E-04 -3.935899E-02 -1.741789E-04 -2.392516E-02 -6.888699E-05 -3.042757E-02 -1.017878E-04 -3.071050E-02 -1.067951E-04 -3.345411E-02 -1.329032E-04 -5.446194E-02 -3.217845E-04 -4.790665E-02 -2.591914E-04 -4.370165E-02 -2.303527E-04 -4.427824E-02 -2.343428E-04 -4.182303E-02 -1.991080E-04 -4.098398E-02 -1.789986E-04 -6.431595E-02 -4.788578E-04 -6.788255E-02 -4.777967E-04 -4.412014E-02 -2.235134E-04 -5.533021E-02 -3.194019E-04 -5.464587E-02 -3.422291E-04 -5.703799E-02 -3.461325E-04 -1.119858E-01 -1.361306E-03 -9.089503E-02 -9.100663E-04 -9.511706E-02 -1.044926E-03 -1.074655E-01 -1.234547E-03 -7.705184E-02 -6.240812E-04 -6.897178E-02 -4.976520E-04 -1.412576E-01 -2.058554E-03 -1.216520E-01 -1.524026E-03 -8.791442E-02 -8.344056E-04 -1.037643E-01 -1.183835E-03 -8.708765E-02 -7.895562E-04 -8.580552E-02 -7.861920E-04 -7.918410E-01 -6.387826E-02 -2.447419E-01 -6.181230E-03 -4.587452E-01 -2.121897E-02 -5.203331E-01 -2.787312E-02 -1.850399E-01 -3.508673E-03 -1.651942E-01 -2.817305E-03 -5.838903E-01 -3.492429E-02 -5.155122E-01 -2.720158E-02 -1.904412E-01 -3.741626E-03 -1.981500E-01 -4.136229E-03 -2.022324E-01 -4.246984E-03 -1.652234E-01 -2.873591E-03 -5.115500E-01 -2.708582E-02 -5.791183E-01 -3.432760E-02 -8.107545E-01 -6.659574E-02 -2.634253E-01 -6.999531E-03 -4.915877E-01 -2.533318E-02 -5.693871E-01 -3.325807E-02 -1.791869E-01 -3.312861E-03 -1.858183E-01 -3.543802E-03 -2.123169E-01 -4.557530E-03 -1.672616E-01 -2.835857E-03 -1.711699E-01 -3.060667E-03 -1.758571E-01 -3.190864E-03 -9.235761E-02 -9.669475E-04 -1.140668E-01 -1.438348E-03 -1.377681E-01 -1.929906E-03 -1.011292E-01 -1.113302E-03 -1.364692E-01 -1.951502E-03 -1.414788E-01 -2.087246E-03 -7.454906E-02 -6.183963E-04 -7.314067E-02 -5.725364E-04 -1.053516E-01 -1.161166E-03 -8.265045E-02 -7.800060E-04 -9.317212E-02 -9.511500E-04 -9.087762E-02 -9.141004E-04 -5.226230E-02 -3.109563E-04 -5.578744E-02 -3.618499E-04 -6.973131E-02 -5.043558E-04 -6.157852E-02 -4.070680E-04 -6.811553E-02 -5.258915E-04 -7.611557E-02 -6.131989E-04 -5.088876E-02 -3.182936E-04 -5.436219E-02 -3.078199E-04 -5.597453E-02 -3.396588E-04 -4.107053E-02 -1.911728E-04 -4.290228E-02 -2.123049E-04 -5.788555E-02 -4.117326E-04 -2.353071E-02 -6.995800E-05 -3.463664E-02 -1.422097E-04 -2.918840E-02 -1.004566E-04 -2.736799E-02 -9.048433E-05 -3.463497E-02 -1.286836E-04 -4.726762E-02 -2.541389E-04 -2.411585E-02 -6.917613E-05 -2.704813E-02 -8.764995E-05 -2.810800E-02 -8.757217E-05 -2.291436E-02 -6.377954E-05 -3.013851E-02 -1.161125E-04 -2.972621E-02 -9.625050E-05 -1.751438E-02 -6.055922E-05 -2.205862E-02 -7.232896E-05 -1.960773E-02 -4.550316E-05 -1.937614E-02 -4.905471E-05 -2.518721E-02 -8.112827E-05 -2.590049E-02 -7.419054E-05 -1.339646E-02 -2.029891E-05 -2.067244E-02 -4.823190E-05 -2.295710E-02 -6.620610E-05 -8.933646E-03 -1.197590E-05 -2.088372E-02 -5.448793E-05 -1.573345E-02 -2.834414E-05 -1.618549E-02 -3.394500E-05 -1.562728E-02 -4.232429E-05 -1.762718E-02 -4.646038E-05 -1.691115E-02 -4.088904E-05 -1.778865E-02 -4.585630E-05 -1.699861E-02 -3.633558E-05 -1.474531E-02 -2.687795E-05 -1.191135E-02 -1.966547E-05 -1.368911E-02 -2.475254E-05 -8.726049E-03 -1.080420E-05 -1.855900E-02 -4.086770E-05 -1.042736E-02 -1.532968E-05 -2.750891E-02 -9.887827E-05 -2.557586E-02 -8.191188E-05 -2.651219E-02 -9.860563E-05 -2.544872E-02 -7.883150E-05 -2.096053E-02 -5.337477E-05 -1.819029E-02 -3.850870E-05 -3.202501E-02 -1.153271E-04 -2.876516E-02 -9.848331E-05 -2.271111E-02 -7.379330E-05 -2.854025E-02 -9.337598E-05 -2.824372E-02 -1.030571E-04 -2.318994E-02 -6.966557E-05 -4.138096E-02 -1.938864E-04 -3.680662E-02 -1.462240E-04 -3.808984E-02 -1.773752E-04 -4.968859E-02 -2.697606E-04 -3.120957E-02 -1.068433E-04 -3.625725E-02 -1.561439E-04 -4.266936E-02 -2.044742E-04 -5.527178E-02 -3.492180E-04 -3.492336E-02 -1.434781E-04 -3.345516E-02 -1.260850E-04 -5.316011E-02 -3.146473E-04 -3.770174E-02 -1.639797E-04 -7.987130E-02 -6.938936E-04 -5.700087E-02 -3.483872E-04 -7.902435E-02 -7.070267E-04 -8.115977E-02 -7.037262E-04 -5.028735E-02 -2.816840E-04 -5.862112E-02 -3.890181E-04 -8.026709E-02 -6.991067E-04 -8.844060E-02 -8.768540E-04 -6.027542E-02 -3.820896E-04 -5.955846E-02 -4.114052E-04 -7.223606E-02 -5.860849E-04 -8.036129E-02 -7.080829E-04 -1.251201E-01 -1.753212E-03 -9.518009E-02 -1.007169E-03 -1.499658E-01 -2.357452E-03 -1.582289E-01 -2.673309E-03 -9.723433E-02 -1.085206E-03 -9.223640E-02 -9.320231E-04 -1.244253E-01 -1.604811E-03 -1.389205E-01 -2.073518E-03 -8.898557E-02 -8.481843E-04 -8.699525E-02 -8.194442E-04 -1.194952E-01 -1.512778E-03 -8.679982E-02 -8.002571E-04 -1.529795E-01 -2.441631E-03 -1.087018E-01 -1.206359E-03 -1.572820E-01 -2.488454E-03 -1.378974E-01 -1.949060E-03 -1.016220E-01 -1.073888E-03 -1.189492E-01 -1.535660E-03 -9.307965E-02 -9.698515E-04 -9.538400E-02 -9.813891E-04 -9.106730E-02 -8.805352E-04 -8.371498E-02 -7.560974E-04 -1.021881E-01 -1.077841E-03 -9.309692E-02 -9.810570E-04 -6.954893E-02 -5.308895E-04 -7.248184E-02 -6.039844E-04 -8.357871E-02 -7.377145E-04 -7.117434E-02 -5.362599E-04 -9.546800E-02 -9.918303E-04 -8.154604E-02 -6.899246E-04 -5.541527E-02 -3.261092E-04 -5.781147E-02 -3.640210E-04 -7.071250E-02 -5.530093E-04 -7.012881E-02 -5.436620E-04 -5.986681E-02 -4.315165E-04 -7.228996E-02 -5.573189E-04 -4.764962E-02 -2.567629E-04 -4.978411E-02 -3.039433E-04 -5.251712E-02 -3.236802E-04 -3.942522E-02 -1.927267E-04 -5.510943E-02 -3.217347E-04 -5.118639E-02 -3.171944E-04 -4.252043E-02 -1.916953E-04 -4.412672E-02 -2.246415E-04 -4.088117E-02 -1.787513E-04 -3.610456E-02 -1.564509E-04 -3.814757E-02 -1.686026E-04 -4.627344E-02 -2.494575E-04 -1.994893E-02 -5.126553E-05 -3.216228E-02 -1.182156E-04 -2.950065E-02 -1.138201E-04 -2.866289E-02 -1.160231E-04 -3.983095E-02 -1.721863E-04 -4.012198E-02 -1.784164E-04 -2.106311E-02 -4.994977E-05 -2.781446E-02 -1.039157E-04 -3.488260E-02 -1.405115E-04 -2.875112E-02 -9.762388E-05 -3.224104E-02 -1.323284E-04 -3.641337E-02 -1.501812E-04 -1.480062E-02 -3.027272E-05 -1.408753E-02 -3.690601E-05 -1.944937E-02 -4.432175E-05 -1.283324E-02 -2.250887E-05 -2.073256E-02 -5.466671E-05 -2.186071E-02 -5.661539E-05 -1.133978E-02 -1.956348E-05 -1.049553E-02 -1.718390E-05 -1.539596E-02 -3.369585E-05 -2.039324E-02 -5.820403E-05 -1.043006E-02 -1.903901E-05 -2.777446E-02 -1.204671E-04 -1.484365E-02 -2.996962E-05 -1.109804E-02 -1.818652E-05 -9.835588E-03 -1.388426E-05 -1.478128E-02 -3.969614E-05 -1.020395E-02 -1.717436E-05 -1.487209E-02 -3.915846E-05 -9.230116E-03 -1.588076E-05 -8.372399E-03 -1.186179E-05 -8.663998E-03 -1.212384E-05 -1.164683E-02 -2.389782E-05 -1.148782E-02 -1.884731E-05 -9.267384E-03 -2.342255E-05 -2.492427E-02 -7.177126E-05 -1.937892E-02 -5.238888E-05 -1.533925E-02 -3.007374E-05 -2.897108E-02 -9.563790E-05 -1.504253E-02 -4.162972E-05 -1.506486E-02 -3.027445E-05 -2.421349E-02 -6.937729E-05 -1.981713E-02 -4.308765E-05 -2.688788E-02 -8.996617E-05 -2.298292E-02 -6.356151E-05 -2.521588E-02 -9.500495E-05 -1.944459E-02 -4.357545E-05 -4.894435E-02 -2.638450E-04 -3.864018E-02 -1.798269E-04 -3.849780E-02 -1.779556E-04 -4.806157E-02 -2.545276E-04 -2.419299E-02 -8.084015E-05 -2.835677E-02 -9.629003E-05 -3.964564E-02 -1.838380E-04 -4.177908E-02 -1.949235E-04 -3.068221E-02 -1.216833E-04 -3.203560E-02 -1.147717E-04 -3.493031E-02 -1.439593E-04 -3.780820E-02 -1.626400E-04 -5.390584E-02 -3.457131E-04 -3.911344E-02 -1.787461E-04 -5.600310E-02 -3.942394E-04 -5.721857E-02 -3.841430E-04 -3.425794E-02 -1.301099E-04 -4.896944E-02 -2.649497E-04 -5.468018E-02 -3.296430E-04 -5.960549E-02 -4.028002E-04 -4.289904E-02 -2.047984E-04 -3.417711E-02 -1.286477E-04 -5.147540E-02 -3.225127E-04 -4.429517E-02 -2.370511E-04 -5.333104E-02 -3.409602E-04 -6.102677E-02 -4.290957E-04 -7.075039E-02 -5.312660E-04 -7.760160E-02 -6.260977E-04 -5.110208E-02 -2.931608E-04 -6.284669E-02 -4.546881E-04 -6.386212E-02 -5.062176E-04 -7.791663E-02 -6.553468E-04 -4.847427E-02 -2.698567E-04 -5.036036E-02 -2.562333E-04 -6.628275E-02 -4.863329E-04 -5.107250E-02 -3.360646E-04 -5.438547E-02 -3.250878E-04 -5.955142E-02 -3.888695E-04 -6.613363E-02 -4.562672E-04 -7.873757E-02 -6.608787E-04 -4.633363E-02 -2.332785E-04 -6.000714E-02 -4.102538E-04 -5.607310E-02 -3.721702E-04 -7.224050E-02 -5.754880E-04 -5.604428E-02 -3.636927E-04 -4.542882E-02 -2.350087E-04 -6.010895E-02 -3.888132E-04 -5.026253E-02 -3.056826E-04 -5.083017E-02 -2.951657E-04 -4.774445E-02 -2.553998E-04 -6.166209E-02 -4.248389E-04 -5.750738E-02 -3.545368E-04 -5.475371E-02 -3.742657E-04 -5.136434E-02 -3.013480E-04 -4.625465E-02 -2.735615E-04 -5.057347E-02 -3.133161E-04 -4.695282E-02 -2.640479E-04 -3.979050E-02 -1.911432E-04 -5.106567E-02 -2.846885E-04 -4.782744E-02 -3.086692E-04 -2.945927E-02 -1.037190E-04 -3.548884E-02 -1.667740E-04 -4.339365E-02 -2.324267E-04 -3.578638E-02 -1.439546E-04 -4.531719E-02 -2.379087E-04 -4.291461E-02 -2.163748E-04 -2.831504E-02 -9.351629E-05 -2.425588E-02 -6.929284E-05 -3.519439E-02 -1.401196E-04 -3.174238E-02 -1.187918E-04 -2.505587E-02 -7.333276E-05 -3.252855E-02 -1.518816E-04 -2.315654E-02 -6.200895E-05 -2.574270E-02 -7.613474E-05 -2.520902E-02 -7.303619E-05 -2.985551E-02 -9.745575E-05 -2.508447E-02 -9.702485E-05 -2.448965E-02 -6.790622E-05 -1.765762E-02 -3.709919E-05 -1.979233E-02 -4.686113E-05 -2.477181E-02 -7.217121E-05 -2.046923E-02 -5.529696E-05 -1.619249E-02 -3.536888E-05 -3.084138E-02 -1.038251E-04 -1.430547E-02 -2.813880E-05 -1.024198E-02 -1.564502E-05 -1.440933E-02 -2.677391E-05 -1.139030E-02 -1.562766E-05 -1.706815E-02 -3.602648E-05 -1.960477E-02 -5.223127E-05 -1.075038E-02 -1.946902E-05 -8.176023E-03 -9.795109E-06 -1.400712E-02 -2.798724E-05 -9.098651E-03 -2.320760E-05 -1.621999E-02 -5.890457E-05 -1.662025E-02 -5.381012E-05 -1.501846E-02 -3.187427E-05 -1.115569E-02 -2.112610E-05 -8.934007E-03 -1.127244E-05 -1.053736E-02 -2.738972E-05 -1.687632E-02 -3.758437E-05 -1.176928E-02 -1.998369E-05 -1.090722E-02 -2.070033E-05 -1.922176E-02 -4.611119E-05 -6.410110E-03 -7.146719E-06 -3.860269E-03 -5.922652E-06 -6.045740E-03 -5.074973E-06 -4.971635E-03 -3.431959E-06 -2.426203E-02 -7.370761E-05 -2.680359E-02 -8.998719E-05 -1.630553E-02 -3.567524E-05 -1.914533E-02 -4.240964E-05 -1.508665E-02 -2.912142E-05 -1.672855E-02 -3.656656E-05 -1.451039E-02 -2.817950E-05 -1.687413E-02 -4.142926E-05 -1.597006E-02 -4.478288E-05 -1.688899E-02 -3.586099E-05 -1.833640E-02 -5.132894E-05 -2.002488E-02 -5.326859E-05 -1.914416E-02 -5.599172E-05 -2.207570E-02 -7.740090E-05 -2.366938E-02 -6.568915E-05 -2.649512E-02 -1.020488E-04 -1.483135E-02 -2.984413E-05 -1.887848E-02 -4.268175E-05 -3.001817E-02 -1.047979E-04 -2.212608E-02 -6.788700E-05 -2.058642E-02 -5.920693E-05 -2.072658E-02 -5.071607E-05 -1.860802E-02 -4.555855E-05 -1.666833E-02 -3.918400E-05 -2.410251E-02 -7.518781E-05 -2.431099E-02 -9.040361E-05 -3.409049E-02 -1.428531E-04 -3.176194E-02 -1.054320E-04 -3.008617E-02 -1.140028E-04 -3.827724E-02 -1.656866E-04 -3.578801E-02 -1.469705E-04 -3.205988E-02 -1.211102E-04 -2.718611E-02 -8.166121E-05 -3.164768E-02 -1.161478E-04 -2.324305E-02 -6.697244E-05 -2.947200E-02 -1.259054E-04 -2.746439E-02 -9.282287E-05 -2.653377E-02 -8.108059E-05 -4.445537E-02 -2.152169E-04 -4.052651E-02 -1.733821E-04 -3.053999E-02 -1.118515E-04 -4.177700E-02 -2.106180E-04 -3.721658E-02 -1.614887E-04 -4.250554E-02 -2.125286E-04 -3.259794E-02 -1.259532E-04 -3.279076E-02 -1.281014E-04 -3.769459E-02 -1.592958E-04 -3.620173E-02 -1.496207E-04 -3.630649E-02 -1.531507E-04 -3.419905E-02 -1.389163E-04 -3.811683E-02 -1.632070E-04 -3.778477E-02 -1.788000E-04 -3.255090E-02 -1.292645E-04 -4.054674E-02 -2.009707E-04 -3.396471E-02 -1.380670E-04 -2.970522E-02 -1.194017E-04 -2.926855E-02 -1.209863E-04 -2.414836E-02 -7.131380E-05 -2.902285E-02 -9.925626E-05 -3.804797E-02 -1.754536E-04 -2.561987E-02 -7.861985E-05 -2.621638E-02 -8.635601E-05 -3.392178E-02 -1.612402E-04 -2.949056E-02 -1.075244E-04 -2.861194E-02 -9.347554E-05 -3.281854E-02 -1.750223E-04 -2.528376E-02 -8.170461E-05 -2.855965E-02 -1.276904E-04 -2.210588E-02 -6.285379E-05 -1.501664E-02 -3.174414E-05 -2.485082E-02 -8.044179E-05 -2.609565E-02 -9.700928E-05 -3.800572E-02 -1.865757E-04 -1.880640E-02 -4.090279E-05 -2.909814E-02 -1.043206E-04 -3.180763E-02 -1.216425E-04 -1.518998E-02 -2.699690E-05 -2.630226E-02 -9.511365E-05 -2.282938E-02 -6.428433E-05 -2.493692E-02 -7.780311E-05 -1.137087E-02 -2.156846E-05 -1.680608E-02 -3.976947E-05 -2.724734E-02 -8.526080E-05 -3.353531E-02 -1.249343E-04 -1.997488E-02 -5.686628E-05 -1.952335E-02 -5.168354E-05 -2.332315E-02 -6.296001E-05 -1.903421E-02 -4.970639E-05 -1.988764E-02 -4.758272E-05 -2.237483E-02 -6.308654E-05 -2.024263E-02 -6.708430E-05 -1.794493E-02 -3.980589E-05 -1.605168E-02 -3.661129E-05 -1.264028E-02 -2.003973E-05 -1.316289E-02 -3.041847E-05 -2.132558E-02 -7.506854E-05 -1.515922E-02 -4.400695E-05 -1.165029E-02 -3.144519E-05 -1.431392E-02 -3.510266E-05 -9.378262E-03 -1.745913E-05 -1.348722E-02 -2.279535E-05 -1.219541E-02 -2.124436E-05 -9.186874E-03 -1.308201E-05 -5.510134E-03 -6.127474E-06 -1.018457E-02 -2.037011E-05 -7.480002E-03 -8.821059E-06 -1.284192E-02 -2.896216E-05 -1.251268E-02 -2.241281E-05 -1.134027E-02 -1.937376E-05 -9.348782E-03 -1.387252E-05 -1.595911E-02 -3.477329E-05 -1.611731E-02 -4.121294E-05 -5.771625E-03 -5.262561E-06 -1.339971E-02 -2.328961E-05 -4.724286E-03 -7.486861E-06 -7.887185E-03 -1.309912E-05 -1.017668E-02 -1.329563E-05 -9.929419E-03 -2.048058E-05 -1.172543E-02 -2.164855E-05 -8.748399E-03 -1.455014E-05 -7.388493E-03 -1.213908E-05 -9.357160E-03 -1.459184E-05 -1.182596E-02 -2.754657E-05 -1.376694E-02 -2.808688E-05 -8.736677E-03 -1.261523E-05 -1.058599E-02 -2.132582E-05 -8.904592E-03 -1.412855E-05 -8.871956E-03 -1.042407E-05 -4.818722E-03 -5.533432E-06 -7.132170E-03 -1.066330E-05 -1.265366E-02 -2.062988E-05 -1.146186E-02 -1.978609E-05 -1.727631E-02 -6.317086E-05 -9.722001E-03 -1.628574E-05 -1.808415E-02 -4.814964E-05 -2.313210E-02 -7.257429E-05 -6.096746E-03 -8.507143E-06 -1.095433E-02 -2.574564E-05 -1.144512E-02 -2.130606E-05 -1.709946E-02 -3.435958E-05 -5.794154E-03 -4.298264E-06 -1.345102E-02 -2.470605E-05 -1.674615E-02 -3.806453E-05 -1.058112E-02 -1.675643E-05 -1.487609E-02 -2.876672E-05 -1.727197E-02 -4.888253E-05 -2.720121E-02 -8.232238E-05 -3.268443E-02 -1.194042E-04 -1.427634E-02 -2.639442E-05 -2.055060E-02 -5.261649E-05 -1.637582E-02 -3.886105E-05 -2.416272E-02 -6.712570E-05 -1.431266E-02 -2.383080E-05 -1.632066E-02 -3.444426E-05 -2.435113E-02 -8.254028E-05 -2.015885E-02 -5.481740E-05 -1.973867E-02 -5.116489E-05 -1.865655E-02 -4.752313E-05 -3.165189E-02 -1.474543E-04 -3.338700E-02 -1.226611E-04 -1.856968E-02 -4.098217E-05 -2.747306E-02 -8.290244E-05 -3.019952E-02 -1.096277E-04 -2.941793E-02 -9.471376E-05 -1.359209E-02 -2.775872E-05 -1.604302E-02 -3.176242E-05 -2.130560E-02 -6.015704E-05 -2.273639E-02 -7.032069E-05 -2.128699E-02 -6.074255E-05 -1.492456E-02 -3.510276E-05 -2.424866E-02 -6.867482E-05 -2.858266E-02 -9.553376E-05 -1.423686E-02 -2.731632E-05 -2.183114E-02 -5.075377E-05 -1.790750E-02 -4.419157E-05 -2.189439E-02 -5.678221E-05 -1.528824E-02 -2.994220E-05 -1.591232E-02 -3.345909E-05 -2.006375E-02 -5.328672E-05 -1.926568E-02 -5.794406E-05 -1.995889E-02 -5.771200E-05 -2.190352E-02 -6.226272E-05 -2.344085E-02 -7.170778E-05 -1.490160E-02 -3.189456E-05 -1.964283E-02 -4.674552E-05 -1.729274E-02 -5.276904E-05 -2.041435E-02 -6.736760E-05 -1.278262E-02 -2.244619E-05 -1.454136E-02 -3.039925E-05 -9.619956E-03 -1.773332E-05 -1.228153E-02 -2.003326E-05 -9.672849E-03 -1.662330E-05 -1.711969E-02 -5.651042E-05 -1.584751E-02 -3.641664E-05 -1.935632E-02 -5.597824E-05 -1.126109E-02 -1.753857E-05 -1.782849E-02 -4.695997E-05 -1.381158E-02 -2.666475E-05 -1.219375E-02 -1.818815E-05 -1.066559E-02 -2.272800E-05 -1.442020E-02 -2.898674E-05 -1.020932E-02 -1.446241E-05 -1.118415E-02 -1.992502E-05 -8.105784E-03 -1.344204E-05 -1.498438E-02 -4.583095E-05 -1.019191E-02 -1.878658E-05 -1.933752E-02 -5.597403E-05 -1.355162E-02 -2.693353E-05 -1.009187E-02 -1.416651E-05 -1.762231E-02 -4.342948E-05 -8.265997E-03 -1.115148E-05 -7.740105E-03 -9.350881E-06 -6.132761E-03 -5.990846E-06 -8.311803E-03 -1.337310E-05 -1.148410E-02 -2.801843E-05 -1.254654E-02 -2.859306E-05 -5.729723E-03 -7.417371E-06 -3.329556E-03 -2.852362E-06 -8.995510E-03 -1.519541E-05 -9.885451E-03 -1.504316E-05 -8.000781E-03 -1.318972E-05 -8.116139E-03 -1.599393E-05 -5.483106E-03 -5.909268E-06 -7.119776E-03 -7.398166E-06 -5.696562E-03 -8.267139E-06 -3.253311E-03 -3.490487E-06 -7.617341E-03 -1.591870E-05 -4.477136E-03 -4.507128E-06 -4.186692E-03 -4.522007E-06 -9.913744E-03 -1.537264E-05 -5.097688E-03 -5.151058E-06 -3.958711E-03 -4.681053E-06 -8.278901E-03 -1.024219E-05 -8.835906E-03 -1.016849E-05 -8.456874E-03 -1.177568E-05 -1.261330E-02 -3.084433E-05 -4.949744E-03 -4.615766E-06 -3.553617E-03 -2.732540E-06 -9.121684E-03 -1.577246E-05 -1.008197E-02 -2.084343E-05 -1.384668E-02 -3.110319E-05 -6.699315E-03 -6.544515E-06 -9.247650E-03 -1.217430E-05 -1.382529E-02 -2.309065E-05 -1.239699E-02 -2.979052E-05 -7.678409E-03 -9.823153E-06 -1.313584E-02 -2.664709E-05 -1.402449E-02 -3.295040E-05 -1.404510E-02 -2.328440E-05 -1.395545E-02 -3.064026E-05 -6.468889E-03 -1.142683E-05 -1.117536E-02 -2.247013E-05 -7.150789E-03 -7.587094E-06 -1.607791E-02 -4.401441E-05 -1.397191E-02 -2.767660E-05 -1.377649E-02 -3.853853E-05 -9.740469E-03 -1.610242E-05 -1.439220E-02 -3.310057E-05 -1.312482E-02 -2.812275E-05 -9.319391E-03 -1.598131E-05 -1.513017E-02 -3.596580E-05 -1.246425E-02 -2.621144E-05 -1.701677E-02 -4.718452E-05 -1.345504E-02 -2.750081E-05 -1.915828E-02 -6.206762E-05 -1.487706E-02 -3.498164E-05 -1.808302E-02 -5.043185E-05 -1.413342E-02 -3.559061E-05 -1.138146E-02 -1.786839E-05 -1.140044E-02 -1.941117E-05 -1.554299E-02 -2.899451E-05 -1.350147E-02 -2.424308E-05 -2.075976E-02 -7.307325E-05 -1.356231E-02 -2.080054E-05 -1.518370E-02 -3.316853E-05 -1.189204E-02 -1.901003E-05 -2.058005E-02 -5.143687E-05 -2.045751E-02 -5.497205E-05 -1.513733E-02 -2.666165E-05 -1.753330E-02 -3.936189E-05 -1.683976E-02 -3.581825E-05 -1.511066E-02 -2.645123E-05 -1.175520E-02 -1.609321E-05 -1.932866E-02 -4.358405E-05 -2.152647E-02 -5.525043E-05 -1.359163E-02 -2.720874E-05 -1.591814E-02 -3.441323E-05 -1.498891E-02 -3.242215E-05 -1.394632E-02 -2.541758E-05 -1.898119E-02 -4.729644E-05 -1.689587E-02 -3.933248E-05 -1.435155E-02 -2.582993E-05 -1.316763E-02 -2.353008E-05 -1.157136E-02 -1.833702E-05 -1.655168E-02 -3.162804E-05 -1.516917E-02 -4.365366E-05 -2.271626E-02 -6.252949E-05 -2.415893E-02 -6.451266E-05 -1.132077E-02 -1.979205E-05 -1.218269E-02 -1.887580E-05 -1.457860E-02 -2.603959E-05 -1.799378E-02 -3.831940E-05 -1.973304E-02 -5.131280E-05 -1.650072E-02 -4.421326E-05 -1.309761E-02 -2.093703E-05 -9.968119E-03 -1.734048E-05 -2.388636E-02 -8.126332E-05 -1.459477E-02 -3.488715E-05 -2.918991E-02 -9.400845E-05 -2.039305E-02 -4.974054E-05 -1.348400E-02 -3.490462E-05 -1.687564E-02 -4.279173E-05 -1.513373E-02 -2.823507E-05 -1.994888E-02 -5.071283E-05 -1.764059E-02 -4.346435E-05 -1.859116E-02 -5.299840E-05 -1.380401E-02 -2.348130E-05 -1.635474E-02 -3.937702E-05 -2.064198E-02 -5.607997E-05 -1.842824E-02 -4.282589E-05 -2.078636E-02 -5.236688E-05 -1.710805E-02 -3.985969E-05 -1.543166E-02 -3.277155E-05 -1.311119E-02 -2.103436E-05 -1.223030E-02 -1.772840E-05 -1.428400E-02 -2.879115E-05 -1.711044E-02 -3.871812E-05 -1.431954E-02 -2.831455E-05 -7.837091E-03 -1.187250E-05 -7.756280E-03 -8.554725E-06 -7.995791E-03 -1.095905E-05 -8.605179E-03 -1.177231E-05 -8.958756E-03 -1.332678E-05 -1.034574E-02 -2.171120E-05 -6.001176E-03 -7.941410E-06 -1.257551E-02 -2.312537E-05 -4.129076E-03 -2.677243E-06 -8.501326E-03 -1.658402E-05 -5.816010E-03 -5.905913E-06 -7.839173E-03 -8.421697E-06 -5.918322E-03 -9.025041E-06 -5.736561E-03 -7.633742E-06 -9.243956E-03 -1.198288E-05 -8.562607E-03 -9.900387E-06 -8.517736E-03 -1.400152E-05 -8.058111E-03 -8.346635E-06 -6.429181E-03 -8.483646E-06 -9.766782E-03 -1.860263E-05 -8.854052E-03 -1.734509E-05 -8.929637E-03 -1.491512E-05 -5.233001E-03 -5.925028E-06 -9.295152E-03 -1.768126E-05 -1.257918E-02 -2.632079E-05 -1.127993E-02 -1.815069E-05 -1.522302E-02 -3.459869E-05 -2.039110E-02 -6.104303E-05 -7.018288E-03 -8.011469E-06 -1.296372E-02 -2.439899E-05 -1.344461E-02 -3.144942E-05 -1.591259E-02 -3.662184E-05 -1.592134E-02 -3.534978E-05 -1.397292E-02 -2.673400E-05 -1.387726E-02 -2.413584E-05 -1.403292E-02 -2.450220E-05 -1.623686E-02 -3.934040E-05 -1.455326E-02 -3.956697E-05 -1.848869E-02 -4.594096E-05 -1.562335E-02 -2.895160E-05 -1.934214E-02 -6.527205E-05 -2.762082E-02 -1.002001E-04 -1.646443E-02 -4.757237E-05 -1.974118E-02 -5.871473E-05 -1.812863E-02 -4.571190E-05 -2.841456E-02 -1.256913E-04 -1.572056E-02 -3.604561E-05 -1.479375E-02 -4.114818E-05 -2.139729E-02 -5.158299E-05 -1.827112E-02 -4.755220E-05 -2.918330E-02 -9.121760E-05 -1.800084E-02 -4.226384E-05 -2.357640E-02 -6.593693E-05 -2.849119E-02 -1.014082E-04 -2.107159E-02 -6.738763E-05 -2.185077E-02 -6.120235E-05 -1.870103E-02 -5.126759E-05 -2.228030E-02 -5.885366E-05 -1.218959E-02 -1.923700E-05 -1.518833E-02 -2.980819E-05 -2.131881E-02 -6.164198E-05 -1.857691E-02 -5.149996E-05 -1.967993E-02 -4.929073E-05 -2.037752E-02 -5.254462E-05 -2.428694E-02 -7.415972E-05 -2.311199E-02 -5.830300E-05 -1.781340E-02 -5.016711E-05 -2.109282E-02 -5.439384E-05 -2.646402E-02 -7.981598E-05 -2.872928E-02 -1.157883E-04 -2.296882E-02 -5.600052E-05 -2.145069E-02 -6.153603E-05 -3.194172E-02 -1.130937E-04 -2.556185E-02 -8.976008E-05 -2.450563E-02 -7.657853E-05 -2.632135E-02 -8.318821E-05 -2.937358E-02 -9.572656E-05 -2.779408E-02 -9.729157E-05 -2.029619E-02 -5.815728E-05 -2.107188E-02 -5.405801E-05 -2.864120E-02 -9.187238E-05 -3.189900E-02 -1.158697E-04 -2.174543E-02 -6.126120E-05 -1.866666E-02 -3.831554E-05 -4.074514E-02 -2.019874E-04 -3.077997E-02 -1.155565E-04 -2.845511E-02 -9.760556E-05 -2.358164E-02 -7.014622E-05 -3.662127E-02 -1.520968E-04 -3.309700E-02 -1.256130E-04 -2.775361E-02 -1.078304E-04 -3.177889E-02 -1.327385E-04 -2.523394E-02 -8.921547E-05 -3.189185E-02 -1.647022E-04 -2.967954E-02 -1.071890E-04 -2.119897E-02 -5.752892E-05 -3.434445E-02 -1.342008E-04 -2.714518E-02 -8.681886E-05 -2.897958E-02 -9.065153E-05 -2.696222E-02 -8.540024E-05 -2.987888E-02 -9.648932E-05 -2.811456E-02 -9.230152E-05 -2.638667E-02 -8.721739E-05 -3.440902E-02 -1.421180E-04 -2.352488E-02 -7.481613E-05 -3.172354E-02 -1.853144E-04 -2.170608E-02 -6.022568E-05 -1.913037E-02 -5.905188E-05 -3.295652E-02 -1.433947E-04 -2.543187E-02 -9.035364E-05 -1.729217E-02 -3.824473E-05 -1.983528E-02 -6.034582E-05 -3.265521E-02 -1.315037E-04 -2.437483E-02 -7.364625E-05 -1.554696E-02 -3.206723E-05 -2.145024E-02 -5.715848E-05 -1.057830E-02 -1.743678E-05 -1.046397E-02 -1.560587E-05 -9.479417E-03 -1.712347E-05 -1.254587E-02 -3.235855E-05 -1.579355E-02 -4.509260E-05 -1.484926E-02 -2.799512E-05 -1.228686E-02 -2.031169E-05 -1.212962E-02 -2.512835E-05 -1.657642E-02 -4.655608E-05 -1.385236E-02 -2.324629E-05 -1.422372E-02 -4.206039E-05 -1.285229E-02 -2.234088E-05 -1.063684E-02 -2.048991E-05 -1.054286E-02 -1.650301E-05 -7.250865E-03 -8.349919E-06 -4.846842E-03 -5.611575E-06 -6.655706E-03 -8.978424E-06 -1.009164E-02 -1.254527E-05 -8.369823E-03 -8.564886E-06 -7.078759E-03 -7.850385E-06 -6.511893E-03 -7.778046E-06 -9.070684E-03 -1.106525E-05 -6.662311E-03 -5.901628E-06 -5.341082E-03 -4.512027E-06 -2.019250E-02 -5.835499E-05 -1.804537E-02 -4.752474E-05 -2.143023E-02 -6.883510E-05 -1.472836E-02 -3.235428E-05 -2.050065E-02 -5.392162E-05 -1.244535E-02 -2.314093E-05 -1.512563E-02 -2.709722E-05 -1.844357E-02 -4.096498E-05 -1.230849E-02 -2.204180E-05 -1.094959E-02 -1.878473E-05 -1.443675E-02 -2.665387E-05 -1.322804E-02 -2.121836E-05 -2.663562E-02 -9.639039E-05 -3.653391E-02 -1.705389E-04 -2.009980E-02 -5.226492E-05 -2.269292E-02 -7.235254E-05 -2.630232E-02 -8.600830E-05 -2.058472E-02 -6.670991E-05 -2.641568E-02 -9.197032E-05 -2.754053E-02 -1.038311E-04 -3.121142E-02 -1.199600E-04 -2.717065E-02 -9.654646E-05 -2.242629E-02 -1.009563E-04 -2.075151E-02 -5.816770E-05 -3.942214E-02 -1.987805E-04 -3.882076E-02 -1.939596E-04 -2.920978E-02 -1.084721E-04 -2.600676E-02 -8.334881E-05 -2.923234E-02 -1.017212E-04 -3.586528E-02 -1.334235E-04 -3.797598E-02 -1.702103E-04 -3.232846E-02 -1.218180E-04 -3.377761E-02 -1.378231E-04 -4.192066E-02 -2.072314E-04 -2.738955E-02 -8.865239E-05 -3.568104E-02 -1.804686E-04 -3.548082E-02 -1.615200E-04 -5.031302E-02 -3.122101E-04 -3.009267E-02 -1.144558E-04 -3.199905E-02 -1.145847E-04 -3.777360E-02 -1.663536E-04 -3.384202E-02 -1.350575E-04 -4.560705E-02 -2.708256E-04 -3.136124E-02 -1.138594E-04 -4.666445E-02 -2.341642E-04 -4.832203E-02 -2.735704E-04 -2.846160E-02 -9.724755E-05 -3.958876E-02 -1.723911E-04 -3.564894E-02 -1.460291E-04 -5.846112E-02 -3.948391E-04 -3.546238E-02 -1.608118E-04 -3.537206E-02 -1.460004E-04 -5.554597E-02 -3.566908E-04 -5.109455E-02 -3.208060E-04 -5.520597E-02 -3.527162E-04 -4.201987E-02 -1.917230E-04 -6.660358E-02 -4.711986E-04 -5.432898E-02 -3.242512E-04 -4.089084E-02 -1.879065E-04 -3.784277E-02 -1.557193E-04 -5.046288E-02 -2.834904E-04 -5.513093E-02 -3.595041E-04 -3.711842E-02 -1.494648E-04 -4.392972E-02 -2.015209E-04 -4.988699E-02 -2.634722E-04 -3.989393E-02 -1.816607E-04 -5.144002E-02 -2.769398E-04 -4.565016E-02 -2.355239E-04 -6.482286E-02 -4.539075E-04 -4.470289E-02 -2.139336E-04 -4.617957E-02 -2.463023E-04 -4.418753E-02 -2.283032E-04 -4.649993E-02 -2.511721E-04 -4.930410E-02 -2.838380E-04 -3.882151E-02 -1.837693E-04 -2.680799E-02 -8.238578E-05 -5.755520E-02 -4.130996E-04 -4.496883E-02 -2.557734E-04 -3.602591E-02 -1.512327E-04 -2.530643E-02 -9.160435E-05 -4.057178E-02 -1.911452E-04 -3.912871E-02 -1.943839E-04 -2.823744E-02 -1.084509E-04 -3.870972E-02 -1.741549E-04 -2.669650E-02 -9.821873E-05 -3.580275E-02 -1.589657E-04 -2.195198E-02 -5.837423E-05 -2.079687E-02 -6.448549E-05 -3.002400E-02 -1.160249E-04 -2.957314E-02 -1.189151E-04 -2.377935E-02 -6.808549E-05 -1.839041E-02 -4.555435E-05 -3.430294E-02 -1.387042E-04 -2.592718E-02 -9.050017E-05 -1.535960E-02 -3.794370E-05 -2.078265E-02 -7.317160E-05 -1.576237E-02 -2.996656E-05 -2.216535E-02 -6.517900E-05 -1.811146E-02 -4.238302E-05 -1.455371E-02 -3.667385E-05 -2.634667E-02 -8.364438E-05 -1.996539E-02 -4.953189E-05 -1.816175E-02 -3.710475E-05 -1.218979E-02 -2.484826E-05 -2.442424E-02 -8.794676E-05 -2.372381E-02 -7.702420E-05 -2.231590E-02 -9.784571E-05 -2.172844E-02 -5.916333E-05 -1.145998E-02 -1.962910E-05 -1.702504E-02 -5.111810E-05 -6.914654E-03 -8.875412E-06 -1.075152E-02 -2.522276E-05 -1.773996E-02 -4.090619E-05 -9.269666E-03 -1.495738E-05 -1.266630E-02 -2.461812E-05 -1.423043E-02 -3.464040E-05 -1.459824E-02 -3.078483E-05 -9.387052E-03 -1.202926E-05 -9.667799E-03 -1.454321E-05 -9.447707E-03 -1.271935E-05 -1.549107E-02 -2.931692E-05 -1.961989E-02 -5.758509E-05 -1.679927E-02 -4.376812E-05 -1.729049E-02 -4.546154E-05 -2.214419E-02 -5.744861E-05 -1.574631E-02 -3.404805E-05 -1.512389E-02 -2.852541E-05 -1.564070E-02 -2.961719E-05 -1.156911E-02 -1.664384E-05 -1.199574E-02 -1.963095E-05 -1.575890E-02 -3.865614E-05 -8.533212E-03 -1.165342E-05 -2.974207E-02 -1.029138E-04 -3.078702E-02 -1.267340E-04 -2.895029E-02 -9.417641E-05 -2.705881E-02 -1.080454E-04 -2.385421E-02 -7.531760E-05 -2.083704E-02 -6.502784E-05 -3.429066E-02 -1.504413E-04 -3.503625E-02 -1.408918E-04 -2.706075E-02 -8.947448E-05 -3.189758E-02 -1.230472E-04 -2.544089E-02 -8.519294E-05 -2.520959E-02 -8.797041E-05 -5.070461E-02 -3.189504E-04 -4.884044E-02 -2.572701E-04 -3.547633E-02 -1.862450E-04 -4.388084E-02 -2.567378E-04 -3.492269E-02 -1.420917E-04 -2.806485E-02 -1.009649E-04 -5.059445E-02 -2.907485E-04 -4.808491E-02 -2.424314E-04 -4.942392E-02 -3.097207E-04 -3.897127E-02 -1.994484E-04 -3.839420E-02 -1.746523E-04 -3.244417E-02 -1.184480E-04 -5.623036E-02 -3.492166E-04 -6.425888E-02 -4.935669E-04 -4.877756E-02 -2.579133E-04 -4.955342E-02 -2.926551E-04 -5.396104E-02 -3.055339E-04 -5.871614E-02 -3.961828E-04 -6.708244E-02 -4.826510E-04 -5.278021E-02 -2.835069E-04 -6.918022E-02 -5.087677E-04 -5.576575E-02 -3.607685E-04 -4.871576E-02 -2.820267E-04 -4.103199E-02 -1.970300E-04 -7.773659E-02 -6.470582E-04 -8.599878E-02 -8.479845E-04 -6.886056E-02 -5.267028E-04 -5.721217E-02 -3.681350E-04 -7.713996E-02 -6.425519E-04 -5.865857E-02 -4.103676E-04 -9.128533E-02 -9.001212E-04 -6.876681E-02 -4.977191E-04 -8.130881E-02 -7.186877E-04 -7.550488E-02 -6.383683E-04 -6.074888E-02 -4.148348E-04 -5.625163E-02 -3.768206E-04 -7.967025E-02 -7.546239E-04 -1.062008E-01 -1.178026E-03 -7.335119E-02 -5.749705E-04 -4.820386E-02 -2.843684E-04 -8.285561E-02 -7.331262E-04 -6.377785E-02 -4.639306E-04 -6.793437E-02 -5.094372E-04 -5.119790E-02 -2.807423E-04 -9.613221E-02 -9.824061E-04 -7.536222E-02 -5.822997E-04 -4.761788E-02 -2.477789E-04 -6.084099E-02 -4.333532E-04 -4.906915E-02 -3.040989E-04 -7.222981E-02 -6.031356E-04 -4.171024E-02 -1.905756E-04 -4.528343E-02 -2.268220E-04 -6.279446E-02 -4.327452E-04 -5.128421E-02 -2.753808E-04 -6.231043E-02 -4.457498E-04 -4.764799E-02 -2.670171E-04 -6.361492E-02 -4.379323E-04 -5.965053E-02 -3.939821E-04 -5.490029E-02 -3.380966E-04 -6.827868E-02 -4.968827E-04 -3.309475E-02 -1.331187E-04 -4.603502E-02 -2.672301E-04 -3.793331E-02 -1.804286E-04 -2.266265E-02 -5.756031E-05 -5.949869E-02 -3.999807E-04 -3.963197E-02 -1.762880E-04 -3.899893E-02 -1.642926E-04 -3.082622E-02 -1.074710E-04 -5.463795E-02 -3.382616E-04 -4.577997E-02 -2.244114E-04 -2.946043E-02 -1.104054E-04 -3.390553E-02 -1.311928E-04 -2.012911E-02 -4.877248E-05 -3.010504E-02 -1.111957E-04 -2.530155E-02 -8.217373E-05 -2.188500E-02 -5.370079E-05 -3.794688E-02 -1.630376E-04 -3.361882E-02 -1.162902E-04 -2.106804E-02 -5.229501E-05 -2.245974E-02 -5.982159E-05 -2.505198E-02 -8.478230E-05 -2.287601E-02 -6.940045E-05 -2.246447E-02 -6.064445E-05 -2.014030E-02 -4.596852E-05 -1.547790E-02 -2.802405E-05 -1.827409E-02 -3.706838E-05 -1.250681E-02 -2.504890E-05 -1.523959E-02 -3.397988E-05 -1.959572E-02 -4.638773E-05 -2.192689E-02 -6.243400E-05 -1.209982E-02 -1.817250E-05 -1.262662E-02 -2.516249E-05 -1.684816E-02 -3.966147E-05 -6.158783E-03 -6.145844E-06 -1.336232E-02 -2.474390E-05 -1.990714E-02 -5.523583E-05 -2.459172E-02 -7.004859E-05 -1.772252E-02 -4.853898E-05 -1.485696E-02 -2.873818E-05 -1.413071E-02 -3.178019E-05 -3.091676E-02 -1.063557E-04 -2.309515E-02 -6.359073E-05 -1.550213E-02 -4.421294E-05 -2.192641E-02 -6.676847E-05 -1.438379E-02 -2.502494E-05 -9.323835E-03 -1.058149E-05 -1.950987E-02 -5.777120E-05 -1.128375E-02 -1.672801E-05 -2.835693E-02 -1.026638E-04 -3.616127E-02 -1.505209E-04 -2.584643E-02 -7.628678E-05 -3.372488E-02 -1.431161E-04 -2.972258E-02 -1.013165E-04 -2.718135E-02 -9.239632E-05 -4.046046E-02 -2.091323E-04 -3.184363E-02 -1.406831E-04 -2.906162E-02 -9.931921E-05 -3.473938E-02 -1.672263E-04 -3.247790E-02 -1.200800E-04 -2.283247E-02 -6.591169E-05 -5.157721E-02 -2.857973E-04 -5.318589E-02 -3.355446E-04 -5.396648E-02 -3.222881E-04 -3.455908E-02 -1.577620E-04 -4.000627E-02 -1.811544E-04 -3.827765E-02 -1.701640E-04 -6.111711E-02 -4.195077E-04 -4.813123E-02 -2.551093E-04 -5.248302E-02 -3.053078E-04 -6.395395E-02 -4.882393E-04 -4.085525E-02 -2.131190E-04 -4.537763E-02 -2.817462E-04 -9.621518E-02 -9.753697E-04 -8.338063E-02 -7.366007E-04 -9.141446E-02 -9.402148E-04 -6.429772E-02 -4.457199E-04 -6.537278E-02 -4.627356E-04 -6.465671E-02 -4.504472E-04 -8.801279E-02 -8.983416E-04 -7.192007E-02 -5.371364E-04 -6.236850E-02 -5.079591E-04 -7.006768E-02 -5.856072E-04 -6.331101E-02 -4.271617E-04 -5.772433E-02 -3.721594E-04 -1.415443E-01 -2.106304E-03 -1.333977E-01 -1.819393E-03 -9.668520E-02 -1.012563E-03 -7.876408E-02 -7.180366E-04 -1.082944E-01 -1.226100E-03 -7.858017E-02 -6.820487E-04 -1.233753E-01 -1.710493E-03 -8.940326E-02 -8.711409E-04 -1.097575E-01 -1.284214E-03 -1.079765E-01 -1.255092E-03 -8.764292E-02 -8.394106E-04 -8.007939E-02 -7.022808E-04 -1.214238E-01 -1.596170E-03 -1.421555E-01 -2.105744E-03 -9.333869E-02 -9.022978E-04 -7.506639E-02 -6.221271E-04 -1.304706E-01 -1.799634E-03 -7.986544E-02 -7.526969E-04 -9.702135E-02 -9.836576E-04 -7.294081E-02 -5.906372E-04 -1.297603E-01 -1.782812E-03 -9.082392E-02 -8.669323E-04 -6.578070E-02 -5.122022E-04 -8.815494E-02 -8.142597E-04 -8.155167E-02 -7.217382E-04 -1.018109E-01 -1.086157E-03 -7.197825E-02 -5.331106E-04 -5.627838E-02 -3.449520E-04 -9.010939E-02 -8.605735E-04 -7.405764E-02 -5.833698E-04 -6.370311E-02 -4.307727E-04 -5.655449E-02 -4.002735E-04 -7.828799E-02 -6.754020E-04 -6.189231E-02 -4.227420E-04 -6.662691E-02 -5.039861E-04 -5.981533E-02 -4.042598E-04 -4.616563E-02 -2.512572E-04 -5.126904E-02 -2.954937E-04 -4.940896E-02 -3.013823E-04 -3.651484E-02 -1.509448E-04 -6.169343E-02 -4.343928E-04 -5.276526E-02 -3.035402E-04 -3.757296E-02 -1.669063E-04 -3.701904E-02 -1.472772E-04 -5.041077E-02 -2.708039E-04 -3.789204E-02 -1.599636E-04 -3.750354E-02 -1.758214E-04 -3.841079E-02 -1.623123E-04 -2.067644E-02 -6.321573E-05 -2.854616E-02 -9.473813E-05 -2.444174E-02 -7.627675E-05 -1.711406E-02 -4.015948E-05 -3.249873E-02 -1.518375E-04 -3.257016E-02 -1.207336E-04 -2.196857E-02 -6.460695E-05 -2.336435E-02 -6.693447E-05 -3.087108E-02 -1.244672E-04 -2.930263E-02 -1.042844E-04 -2.973494E-02 -9.755987E-05 -2.663199E-02 -7.916063E-05 -8.110891E-03 -9.147184E-06 -1.596974E-02 -3.945176E-05 -1.126941E-02 -1.972987E-05 -1.498580E-02 -2.597248E-05 -2.296704E-02 -6.870338E-05 -1.864901E-02 -4.568849E-05 -9.655003E-03 -1.218230E-05 -8.917615E-03 -1.497980E-05 -1.991649E-02 -4.425777E-05 -1.938334E-02 -4.450084E-05 -1.468869E-02 -2.783700E-05 -1.990846E-02 -4.552853E-05 -1.774831E-02 -4.009193E-05 -1.266322E-02 -2.320002E-05 -1.658764E-02 -3.986878E-05 -1.698328E-02 -4.091919E-05 -2.128494E-02 -6.048618E-05 -2.030808E-02 -5.574087E-05 -1.270134E-02 -2.233463E-05 -1.683769E-02 -3.536069E-05 -9.809511E-03 -1.445622E-05 -8.599393E-03 -1.081146E-05 -1.931983E-02 -6.640579E-05 -2.037581E-02 -5.286217E-05 -3.532151E-02 -1.703716E-04 -2.959688E-02 -1.000744E-04 -2.794173E-02 -9.833908E-05 -2.721311E-02 -8.705508E-05 -2.259018E-02 -6.498840E-05 -2.999787E-02 -1.185856E-04 -4.036794E-02 -2.072046E-04 -3.144378E-02 -1.169125E-04 -2.933694E-02 -1.105938E-04 -3.942738E-02 -1.729860E-04 -3.260874E-02 -1.481232E-04 -2.353895E-02 -7.836100E-05 -5.876129E-02 -3.975363E-04 -4.766425E-02 -2.519722E-04 -4.033714E-02 -1.807849E-04 -4.729862E-02 -2.401753E-04 -4.304677E-02 -2.096845E-04 -3.822586E-02 -1.740610E-04 -5.685525E-02 -3.389362E-04 -5.053276E-02 -3.049584E-04 -4.125673E-02 -1.768692E-04 -4.228077E-02 -2.108012E-04 -4.501666E-02 -2.298865E-04 -3.308537E-02 -1.337489E-04 -9.085434E-02 -8.630952E-04 -8.043671E-02 -6.998250E-04 -6.790115E-02 -5.151102E-04 -9.822017E-02 -1.054933E-03 -6.615956E-02 -4.705198E-04 -5.651598E-02 -3.870178E-04 -9.749998E-02 -1.051885E-03 -8.349892E-02 -7.963070E-04 -6.591239E-02 -4.655083E-04 -6.485664E-02 -4.646649E-04 -5.727855E-02 -3.614456E-04 -5.982342E-02 -3.951869E-04 -1.437862E-01 -2.121299E-03 -1.381644E-01 -1.981530E-03 -1.258886E-01 -1.695067E-03 -1.148436E-01 -1.441218E-03 -9.597117E-02 -1.101364E-03 -8.065670E-02 -7.548241E-04 -1.190394E-01 -1.472809E-03 -1.202733E-01 -1.590349E-03 -9.488301E-02 -9.917086E-04 -8.590582E-02 -8.395527E-04 -8.538615E-02 -7.662543E-04 -6.840866E-02 -5.508149E-04 -1.309341E-01 -1.788800E-03 -1.431432E-01 -2.124925E-03 -1.253592E-01 -1.673315E-03 -1.027124E-01 -1.115422E-03 -1.257192E-01 -1.618975E-03 -1.009903E-01 -1.140739E-03 -8.317957E-02 -7.328749E-04 -8.230977E-02 -7.081126E-04 -1.122030E-01 -1.312445E-03 -9.156529E-02 -9.645560E-04 -7.593394E-02 -6.433631E-04 -7.347627E-02 -5.887314E-04 -9.176044E-02 -8.793675E-04 -9.196817E-02 -9.288935E-04 -8.602817E-02 -7.934807E-04 -6.540851E-02 -5.134819E-04 -7.784855E-02 -7.374549E-04 -7.145641E-02 -5.431170E-04 -6.586554E-02 -4.742469E-04 -6.889110E-02 -5.369623E-04 -5.852275E-02 -3.823255E-04 -5.130633E-02 -2.938484E-04 -5.009392E-02 -2.807458E-04 -5.334814E-02 -3.079752E-04 -4.264743E-02 -1.994080E-04 -4.606571E-02 -2.446337E-04 -4.932925E-02 -2.518310E-04 -3.172175E-02 -1.173609E-04 -4.799012E-02 -2.513615E-04 -5.034796E-02 -2.882966E-04 -3.398215E-02 -1.394103E-04 -3.801944E-02 -1.702277E-04 -3.688050E-02 -1.492715E-04 -2.945875E-02 -1.064246E-04 -3.293199E-02 -1.292973E-04 -5.057135E-02 -2.972879E-04 -2.902424E-02 -1.009778E-04 -2.994301E-02 -1.055013E-04 -3.820998E-02 -1.811607E-04 -2.790027E-02 -1.186505E-04 -3.074064E-02 -1.078519E-04 -3.248893E-02 -1.169499E-04 -2.353194E-02 -8.076603E-05 -1.809505E-02 -4.072324E-05 -3.396351E-02 -1.453516E-04 -2.286807E-02 -5.496448E-05 -1.987060E-02 -5.376353E-05 -3.044601E-02 -1.115521E-04 -1.248945E-02 -2.198679E-05 -1.803171E-02 -4.771632E-05 -1.378131E-02 -4.134383E-05 -1.555134E-02 -4.721156E-05 -2.534113E-02 -8.351023E-05 -1.500299E-02 -2.635770E-05 -1.071802E-02 -2.136252E-05 -1.137076E-02 -1.975771E-05 -1.456502E-02 -2.501472E-05 -9.727505E-03 -1.483236E-05 -1.454436E-02 -2.710978E-05 -1.978067E-02 -5.285365E-05 -1.360981E-02 -2.336372E-05 -9.847294E-03 -1.509563E-05 -1.524613E-02 -3.552566E-05 -1.773316E-02 -4.971550E-05 -1.867569E-02 -4.914571E-05 -1.751220E-02 -3.467782E-05 -1.304981E-02 -3.349123E-05 -1.082428E-02 -1.865766E-05 -9.584944E-03 -1.325745E-05 -9.180830E-03 -1.262337E-05 -1.640308E-02 -3.160798E-05 -9.874242E-03 -1.450077E-05 -2.800307E-02 -9.021643E-05 -2.465166E-02 -8.472087E-05 -2.134009E-02 -5.841535E-05 -2.840708E-02 -9.453242E-05 -1.817238E-02 -4.004063E-05 -2.108886E-02 -5.388334E-05 -3.062270E-02 -1.286139E-04 -2.538387E-02 -8.871389E-05 -1.989607E-02 -5.232630E-05 -3.196356E-02 -1.567584E-04 -2.768337E-02 -8.817683E-05 -1.657009E-02 -3.128845E-05 -6.221175E-02 -5.006436E-04 -4.068999E-02 -2.287368E-04 -3.891057E-02 -1.725015E-04 -3.661313E-02 -1.700136E-04 -4.325252E-02 -2.377359E-04 -3.132785E-02 -1.053139E-04 -4.447018E-02 -2.340749E-04 -4.887097E-02 -2.828548E-04 -3.659403E-02 -1.932574E-04 -3.839512E-02 -1.702624E-04 -3.434064E-02 -1.413220E-04 -3.562809E-02 -1.569627E-04 -6.182234E-02 -4.171544E-04 -6.100628E-02 -4.051419E-04 -6.647923E-02 -4.900740E-04 -7.287500E-02 -5.551039E-04 -4.730174E-02 -2.512478E-04 -5.228155E-02 -3.234257E-04 -6.367674E-02 -4.355277E-04 -6.127620E-02 -5.160754E-04 -4.996635E-02 -2.866391E-04 -4.386223E-02 -2.253152E-04 -5.319524E-02 -3.262631E-04 -5.127473E-02 -2.891196E-04 -1.048530E-01 -1.182483E-03 -8.170362E-02 -7.286542E-04 -7.965260E-02 -6.956308E-04 -8.522862E-02 -7.597262E-04 -6.792526E-02 -5.514875E-04 -5.653238E-02 -4.231108E-04 -8.040674E-02 -7.324397E-04 -6.538609E-02 -5.208188E-04 -6.236588E-02 -4.356839E-04 -6.164613E-02 -4.180417E-04 -7.331991E-02 -6.180767E-04 -5.657072E-02 -3.533489E-04 -7.827811E-02 -6.870284E-04 -7.791072E-02 -6.465127E-04 -1.083139E-01 -1.260161E-03 -8.407475E-02 -7.634468E-04 -6.669029E-02 -4.841099E-04 -7.629250E-02 -6.708847E-04 -6.145772E-02 -4.524294E-04 -6.227290E-02 -4.295289E-04 -6.532027E-02 -4.771341E-04 -5.543686E-02 -3.242450E-04 -6.507036E-02 -4.562060E-04 -6.918175E-02 -5.208846E-04 -5.915840E-02 -4.026369E-04 -7.574284E-02 -6.257363E-04 -6.443876E-02 -4.697084E-04 -4.704047E-02 -2.420667E-04 -6.871095E-02 -5.703679E-04 -7.652879E-02 -6.996775E-04 -4.488343E-02 -2.199039E-04 -4.340162E-02 -2.117909E-04 -5.505629E-02 -3.299335E-04 -5.395493E-02 -3.792417E-04 -4.982738E-02 -2.664394E-04 -5.864743E-02 -4.020406E-04 -3.700812E-02 -1.675101E-04 -3.590296E-02 -1.636877E-04 -3.701403E-02 -2.028641E-04 -3.559772E-02 -1.412606E-04 -4.420940E-02 -2.126895E-04 -3.967986E-02 -1.668324E-04 -2.751914E-02 -1.031787E-04 -3.350726E-02 -1.282541E-04 -3.400056E-02 -1.396521E-04 -2.928242E-02 -1.253649E-04 -3.696302E-02 -1.675271E-04 -2.971538E-02 -1.050504E-04 -2.147157E-02 -6.672784E-05 -2.068698E-02 -5.314224E-05 -3.024410E-02 -1.161314E-04 -2.564259E-02 -8.893011E-05 -2.244324E-02 -6.402041E-05 -3.352393E-02 -1.269472E-04 -2.503002E-02 -1.001149E-04 -2.271412E-02 -6.142137E-05 -2.662779E-02 -8.519648E-05 -2.760352E-02 -9.770118E-05 -3.168086E-02 -1.170083E-04 -2.636525E-02 -8.041298E-05 -1.168923E-02 -2.309996E-05 -1.341095E-02 -2.785722E-05 -9.527042E-03 -1.301984E-05 -8.579383E-03 -1.158986E-05 -1.770829E-02 -3.709440E-05 -1.285206E-02 -2.277856E-05 -5.715674E-03 -5.170007E-06 -7.751126E-03 -1.014219E-05 -1.566218E-02 -2.874454E-05 -1.550600E-02 -4.482121E-05 -1.310088E-02 -2.996692E-05 -1.266810E-02 -2.452354E-05 -1.328220E-02 -2.441758E-05 -9.553257E-03 -1.316655E-05 -1.072874E-02 -2.962475E-05 -1.419443E-02 -2.691293E-05 -1.389066E-02 -2.460204E-05 -1.520080E-02 -2.942326E-05 -9.725298E-03 -1.180312E-05 -9.645833E-03 -1.760954E-05 -8.964384E-03 -1.441525E-05 -7.797734E-03 -7.875870E-06 -1.222531E-02 -2.143962E-05 -9.811025E-03 -1.223418E-05 -2.347719E-02 -7.632207E-05 -2.624065E-02 -8.577440E-05 -1.872843E-02 -5.642768E-05 -2.884633E-02 -1.120462E-04 -1.331677E-02 -2.169139E-05 -2.073785E-02 -6.410937E-05 -2.069105E-02 -5.558996E-05 -2.409694E-02 -8.187520E-05 -1.689558E-02 -4.223843E-05 -1.624061E-02 -3.418316E-05 -2.151976E-02 -5.877173E-05 -2.360183E-02 -9.731432E-05 -3.349038E-02 -1.331399E-04 -3.071585E-02 -1.134216E-04 -3.064437E-02 -1.380256E-04 -3.411658E-02 -1.385980E-04 -1.902680E-02 -4.966952E-05 -2.548619E-02 -8.563915E-05 -2.627494E-02 -8.806514E-05 -3.156158E-02 -1.348057E-04 -2.555848E-02 -8.827726E-05 -2.109045E-02 -5.840881E-05 -3.141908E-02 -1.092575E-04 -2.542704E-02 -7.869948E-05 -4.409974E-02 -2.370516E-04 -4.511455E-02 -2.385642E-04 -3.493033E-02 -1.329289E-04 -3.573369E-02 -1.645671E-04 -3.658071E-02 -1.701779E-04 -2.875736E-02 -1.063832E-04 -4.612939E-02 -2.341592E-04 -4.488569E-02 -2.371072E-04 -3.283008E-02 -1.266329E-04 -4.421310E-02 -2.144763E-04 -3.688239E-02 -1.597994E-04 -3.783217E-02 -1.715032E-04 -7.381035E-02 -5.788223E-04 -5.920057E-02 -3.764365E-04 -5.566865E-02 -3.245756E-04 -5.294945E-02 -3.171578E-04 -5.308993E-02 -3.020899E-04 -4.015025E-02 -1.763785E-04 -5.449993E-02 -4.477957E-04 -6.098529E-02 -4.698598E-04 -4.562321E-02 -2.217931E-04 -4.372709E-02 -2.205027E-04 -5.027493E-02 -3.024221E-04 -5.350904E-02 -3.184156E-04 -4.989979E-02 -2.950952E-04 -5.166796E-02 -2.972852E-04 -5.157410E-02 -3.015135E-04 -4.679395E-02 -2.264100E-04 -4.534145E-02 -2.596978E-04 -4.610982E-02 -2.659116E-04 -4.420313E-02 -2.280910E-04 -4.382650E-02 -2.133009E-04 -4.090414E-02 -1.993174E-04 -3.320114E-02 -1.287562E-04 -4.502626E-02 -2.259113E-04 -3.962180E-02 -1.762251E-04 -4.967895E-02 -3.145518E-04 -4.494669E-02 -2.411637E-04 -4.339354E-02 -2.011700E-04 -4.176613E-02 -2.014202E-04 -4.442877E-02 -2.331921E-04 -3.398932E-02 -1.379211E-04 -3.482327E-02 -1.541052E-04 -3.556969E-02 -1.558964E-04 -3.691095E-02 -1.643955E-04 -2.226522E-02 -6.975395E-05 -3.915757E-02 -1.657456E-04 -2.866444E-02 -9.309362E-05 -2.855915E-02 -1.131346E-04 -2.537276E-02 -7.948738E-05 -3.789334E-02 -1.685996E-04 -2.751514E-02 -9.186058E-05 -3.178599E-02 -1.355963E-04 -3.907421E-02 -2.055557E-04 -2.791323E-02 -1.069896E-04 -3.339152E-02 -1.362152E-04 -2.050184E-02 -4.863200E-05 -2.291794E-02 -8.183025E-05 -2.124223E-02 -7.063324E-05 -2.399149E-02 -7.407918E-05 -1.796496E-02 -3.936797E-05 -2.078322E-02 -6.098637E-05 -3.024688E-02 -1.288165E-04 -2.239542E-02 -6.306787E-05 -2.616525E-02 -8.655425E-05 -2.919821E-02 -1.113037E-04 -1.673318E-02 -3.601539E-05 -1.608480E-02 -3.314965E-05 -2.821455E-02 -8.921863E-05 -1.974153E-02 -4.431146E-05 -2.003418E-02 -5.758763E-05 -2.061128E-02 -6.512772E-05 -1.559522E-02 -3.594737E-05 -1.934663E-02 -5.001512E-05 -1.075360E-02 -1.792213E-05 -8.194926E-03 -1.028496E-05 -2.034805E-02 -5.444881E-05 -1.609037E-02 -3.970183E-05 -1.347309E-02 -2.123107E-05 -1.407160E-02 -3.569412E-05 -1.624142E-02 -3.714221E-05 -1.299629E-02 -2.459818E-05 -1.122458E-02 -2.237869E-05 -1.211612E-02 -2.219160E-05 -1.408358E-02 -4.218855E-05 -6.735065E-03 -8.482615E-06 -6.793305E-03 -7.845095E-06 -8.478782E-03 -1.709477E-05 -1.133766E-02 -1.980469E-05 -9.653050E-03 -1.415133E-05 -5.831329E-03 -8.381192E-06 -6.218892E-03 -7.102476E-06 -7.592811E-03 -9.310767E-06 -6.506941E-03 -1.095631E-05 -9.452991E-03 -1.264596E-05 -4.768636E-03 -3.507810E-06 -2.077918E-02 -5.890772E-05 -1.762060E-02 -3.525407E-05 -1.205428E-02 -2.724892E-05 -1.469350E-02 -2.710234E-05 -8.551477E-03 -8.546946E-06 -1.223789E-02 -2.595121E-05 -1.076533E-02 -2.013472E-05 -1.864688E-02 -4.804170E-05 -1.271229E-02 -2.770046E-05 -1.016698E-02 -1.439334E-05 -1.713823E-02 -4.788386E-05 -1.253277E-02 -2.231383E-05 -3.154747E-02 -1.214804E-04 -1.749980E-02 -3.647612E-05 -1.830338E-02 -4.569688E-05 -2.308843E-02 -6.321283E-05 -1.594268E-02 -4.383360E-05 -2.466928E-02 -8.077902E-05 -2.901767E-02 -1.088029E-04 -2.554390E-02 -8.895350E-05 -2.146121E-02 -5.921450E-05 -1.943347E-02 -4.952984E-05 -1.991855E-02 -5.703083E-05 -1.411715E-02 -3.539989E-05 -2.706714E-02 -1.408378E-04 -2.476826E-02 -8.960297E-05 -3.280672E-02 -1.342648E-04 -2.769569E-02 -8.949765E-05 -2.254343E-02 -7.118925E-05 -2.821645E-02 -1.008088E-04 -2.332049E-02 -7.198089E-05 -3.472802E-02 -1.359900E-04 -2.098228E-02 -6.775921E-05 -2.011754E-02 -4.899916E-05 -2.887549E-02 -1.210569E-04 -2.169717E-02 -5.971602E-05 -4.083980E-02 -2.063696E-04 -2.682109E-02 -9.162241E-05 -4.087409E-02 -1.874734E-04 -3.397314E-02 -1.355352E-04 -2.503682E-02 -7.832902E-05 -3.341902E-02 -1.279805E-04 -3.470031E-02 -1.457506E-04 -3.434771E-02 -1.308149E-04 -1.924341E-02 -5.117189E-05 -2.610217E-02 -8.124782E-05 -2.672020E-02 -8.422537E-05 -2.913338E-02 -1.020506E-04 -3.799748E-02 -1.583935E-04 -2.396284E-02 -7.323177E-05 -4.085381E-02 -1.817575E-04 -3.429492E-02 -1.389255E-04 -2.955640E-02 -9.833007E-05 -3.550154E-02 -1.507005E-04 -3.041263E-02 -1.000878E-04 -3.068456E-02 -1.089623E-04 -2.480886E-02 -6.953343E-05 -2.214997E-02 -5.427501E-05 -2.822289E-02 -1.091821E-04 -2.246583E-02 -6.845501E-05 -3.548869E-02 -1.564383E-04 -3.342714E-02 -1.555114E-04 -3.584609E-02 -1.533905E-04 -2.543087E-02 -6.947810E-05 -3.395479E-02 -1.360453E-04 -3.067172E-02 -1.109996E-04 -2.290343E-02 -6.048129E-05 -1.985458E-02 -4.438216E-05 -3.051514E-02 -1.050122E-04 -2.086630E-02 -6.348306E-05 -2.009163E-02 -5.579571E-05 -2.312023E-02 -7.424842E-05 -2.349909E-02 -7.517591E-05 -2.465382E-02 -7.402420E-05 -2.149996E-02 -6.067745E-05 -2.388756E-02 -6.487269E-05 -1.918145E-02 -4.328933E-05 -1.951810E-02 -4.931597E-05 -1.743909E-02 -3.923120E-05 -1.959452E-02 -4.325142E-05 -1.836248E-02 -3.960818E-05 -1.633324E-02 -3.551742E-05 -1.863545E-02 -4.322646E-05 -2.548530E-02 -8.566650E-05 -1.370389E-02 -3.068862E-05 -1.702755E-02 -3.470486E-05 -2.110298E-02 -5.769891E-05 -1.950441E-02 -4.624026E-05 -1.773108E-02 -3.976096E-05 -2.121981E-02 -6.568857E-05 -1.052851E-02 -1.559210E-05 -1.304079E-02 -2.231298E-05 -1.944748E-02 -4.683893E-05 -1.445243E-02 -2.703435E-05 -1.597053E-02 -3.429994E-05 -1.650649E-02 -6.011419E-05 -8.568107E-03 -1.035370E-05 -5.963022E-03 -7.941116E-06 -1.005055E-02 -1.089546E-05 -9.025557E-03 -1.235125E-05 -1.058696E-02 -1.548458E-05 -1.428111E-02 -3.101021E-05 -6.332158E-03 -7.284553E-06 -1.107873E-02 -1.880555E-05 -9.074481E-03 -1.488548E-05 -8.633788E-03 -1.494006E-05 -9.852689E-03 -2.277679E-05 -1.279962E-02 -3.267960E-05 -1.096915E-02 -1.703897E-05 -6.543158E-03 -6.896083E-06 -7.823512E-03 -1.199583E-05 -6.285302E-03 -8.223945E-06 -7.196837E-03 -8.695066E-06 -6.939525E-03 -8.067024E-06 -4.593174E-03 -3.678022E-06 -4.766649E-03 -6.980855E-06 -4.492564E-03 -4.106885E-06 -5.836560E-03 -5.166762E-06 -4.091860E-03 -3.202729E-06 -2.851717E-03 -1.441790E-06 -1.131813E-02 -1.990562E-05 -8.044232E-03 -9.338147E-06 -9.601976E-03 -1.551372E-05 -1.271494E-02 -2.673243E-05 -6.142371E-03 -6.616946E-06 -7.543735E-03 -1.129556E-05 -1.054461E-02 -1.314345E-05 -1.244849E-02 -1.966250E-05 -9.734137E-03 -1.778830E-05 -1.360778E-02 -2.168963E-05 -8.980518E-03 -9.981098E-06 -5.673726E-03 -6.390047E-06 -1.495065E-02 -3.570344E-05 -1.139512E-02 -2.213315E-05 -1.578970E-02 -3.505969E-05 -1.629500E-02 -3.158196E-05 -1.481063E-02 -3.260955E-05 -1.632506E-02 -3.683693E-05 -1.058030E-02 -1.860245E-05 -1.014653E-02 -1.703372E-05 -1.053471E-02 -1.946614E-05 -1.087794E-02 -1.741794E-05 -1.749138E-02 -4.059625E-05 -1.441949E-02 -4.081297E-05 -2.238698E-02 -8.411387E-05 -1.355243E-02 -2.880517E-05 -2.176689E-02 -7.043906E-05 -1.938423E-02 -5.171647E-05 -1.365868E-02 -3.105929E-05 -1.615560E-02 -3.821091E-05 -1.688664E-02 -4.289252E-05 -1.314826E-02 -2.645963E-05 -1.505920E-02 -3.910868E-05 -1.696322E-02 -4.410507E-05 -1.531505E-02 -2.627391E-05 -1.302530E-02 -2.447578E-05 -2.215989E-02 -5.624695E-05 -1.558271E-02 -3.591163E-05 -1.660587E-02 -4.451639E-05 -2.152716E-02 -6.525487E-05 -1.897151E-02 -5.231568E-05 -1.728826E-02 -5.214345E-05 -1.902678E-02 -5.314163E-05 -2.333937E-02 -8.182246E-05 -9.443854E-03 -1.172248E-05 -1.198026E-02 -2.003714E-05 -2.138685E-02 -6.175227E-05 -1.274599E-02 -2.433959E-05 -1.947534E-02 -5.207291E-05 -1.815170E-02 -4.398794E-05 -3.169585E-02 -1.333543E-04 -1.905286E-02 -4.657423E-05 -1.494275E-02 -3.505332E-05 -1.763876E-02 -4.461835E-05 -1.182033E-02 -2.214931E-05 -1.968821E-02 -5.319218E-05 -1.722391E-02 -3.689380E-05 -1.164039E-02 -2.017520E-05 -1.987702E-02 -4.962563E-05 -1.593272E-02 -4.198443E-05 -1.295575E-02 -3.292363E-05 -1.574293E-02 -3.434465E-05 -2.730586E-02 -8.253402E-05 -2.116215E-02 -5.127586E-05 -1.343828E-02 -2.408890E-05 -1.857254E-02 -4.513774E-05 -1.500919E-02 -3.231350E-05 -1.678659E-02 -3.962936E-05 -1.488856E-02 -2.386764E-05 -1.230601E-02 -2.575268E-05 -2.037392E-02 -5.965465E-05 -1.096474E-02 -1.759636E-05 -2.187484E-02 -6.525702E-05 -1.374639E-02 -2.555749E-05 -1.511590E-02 -3.826384E-05 -1.563929E-02 -3.222315E-05 -1.684288E-02 -4.027516E-05 -1.773599E-02 -6.209617E-05 -1.720006E-02 -3.431594E-05 -1.841885E-02 -4.086225E-05 -1.218119E-02 -2.095533E-05 -1.065430E-02 -1.713440E-05 -1.058773E-02 -1.668419E-05 -1.135705E-02 -1.500764E-05 -1.158632E-02 -2.852635E-05 -8.247777E-03 -1.228385E-05 -1.907771E-02 -4.597570E-05 -1.777609E-02 -4.816332E-05 -1.285738E-02 -2.710713E-05 -1.336306E-02 -2.768885E-05 -7.498631E-03 -1.438567E-05 -1.168505E-02 -2.200300E-05 -8.575921E-03 -8.903420E-06 -6.935145E-03 -9.218014E-06 -9.998062E-03 -1.881829E-05 -8.939471E-03 -1.098615E-05 -7.860596E-03 -1.449285E-05 -1.082459E-02 -1.896980E-05 -5.782585E-03 -5.702033E-06 -1.004504E-02 -2.149248E-05 -7.503097E-03 -1.089878E-05 -6.843525E-03 -9.834532E-06 -1.381318E-03 -8.252352E-07 -5.676320E-03 -7.883845E-06 -5.874523E-03 -3.759183E-06 -4.793821E-03 -2.805686E-06 -6.125800E-03 -6.903423E-06 -8.300434E-03 -1.293197E-05 -8.058716E-03 -1.160479E-05 -6.964643E-03 -9.276538E-06 -3.462172E-03 -2.364550E-06 -4.968406E-03 -4.433251E-06 -6.306240E-03 -6.070974E-06 -6.018210E-03 -7.366216E-06 -8.837800E-03 -9.688936E-06 -5.096909E-03 -4.382163E-06 -3.815130E-03 -6.161058E-06 -4.515200E-03 -4.595497E-06 -6.864810E-03 -1.010895E-05 -6.423468E-03 -9.143165E-06 -9.538660E-03 -1.560977E-05 -1.261072E-02 -2.250707E-05 -1.026530E-02 -1.637414E-05 -9.557506E-03 -1.527890E-05 -8.827930E-03 -1.066139E-05 -5.478962E-03 -5.569868E-06 -9.080187E-03 -1.204024E-05 -1.528742E-02 -3.325338E-05 -1.337087E-02 -1.956015E-05 -1.675398E-02 -4.575869E-05 -1.281954E-02 -3.179463E-05 -8.332353E-03 -1.484699E-05 -1.617850E-02 -3.768574E-05 -1.581638E-02 -5.060008E-05 -1.558998E-02 -3.489775E-05 -1.170539E-02 -1.670388E-05 -9.403406E-03 -1.210849E-05 -6.538447E-03 -7.590433E-06 -1.533222E-02 -3.995585E-05 -9.660974E-03 -1.337453E-05 -1.612761E-02 -3.190924E-05 -1.123730E-02 -1.881522E-05 -6.517842E-03 -9.004602E-06 -1.039422E-02 -1.944508E-05 -1.196688E-02 -2.077099E-05 -1.825266E-02 -5.884867E-05 -1.114412E-02 -1.635734E-05 -6.855502E-03 -9.696697E-06 -7.937283E-03 -1.011203E-05 -1.305061E-02 -2.491232E-05 -2.084992E-02 -5.566232E-05 -9.019271E-03 -1.005494E-05 -1.029368E-02 -1.905328E-05 -1.763980E-02 -4.024339E-05 -9.329184E-03 -1.252705E-05 -1.325489E-02 -2.563636E-05 -1.556775E-02 -3.949834E-05 -2.061223E-02 -6.392049E-05 -1.758113E-02 -3.625999E-05 -1.157256E-02 -2.047838E-05 -8.563192E-03 -1.228712E-05 -1.031763E-02 -1.411955E-05 -1.512631E-02 -4.654173E-05 -1.486827E-02 -2.864290E-05 -2.251974E-02 -5.878585E-05 -1.538325E-02 -2.676876E-05 -1.352613E-02 -3.627305E-05 -1.449237E-02 -3.612781E-05 -1.192626E-02 -2.019597E-05 -1.304918E-02 -2.426503E-05 -1.605822E-02 -3.012824E-05 -1.727927E-02 -3.755550E-05 -9.669506E-03 -1.630871E-05 -1.276773E-02 -2.526258E-05 -1.428968E-02 -3.134862E-05 -1.703682E-02 -4.403612E-05 -1.839993E-02 -4.005997E-05 -1.709877E-02 -3.494229E-05 -1.020568E-02 -2.306756E-05 -1.556313E-02 -2.961997E-05 -1.367798E-02 -2.209767E-05 -1.479845E-02 -2.697536E-05 -1.064351E-02 -1.544937E-05 -1.457069E-02 -3.339049E-05 -1.022585E-02 -1.440893E-05 -1.072359E-02 -1.406891E-05 -2.091105E-02 -5.324749E-05 -1.381809E-02 -3.338254E-05 -1.600746E-02 -3.282400E-05 -1.918686E-02 -4.509327E-05 -1.087716E-02 -1.741352E-05 -1.712809E-02 -3.956314E-05 -1.312095E-02 -1.981242E-05 -1.874899E-02 -4.287445E-05 -1.113725E-02 -2.004136E-05 -7.103716E-03 -7.213595E-06 -1.369370E-02 -3.063256E-05 -9.195487E-03 -1.412638E-05 -1.141322E-02 -1.860950E-05 -1.114463E-02 -1.989362E-05 -1.766608E-02 -3.977019E-05 -1.831950E-02 -5.100972E-05 -9.842311E-03 -1.641174E-05 -1.050669E-02 -1.611304E-05 -9.275886E-03 -1.425314E-05 -1.489107E-02 -2.846318E-05 -1.024738E-02 -1.638704E-05 -1.238766E-02 -2.905937E-05 -8.220882E-03 -1.610701E-05 -7.911660E-03 -1.204791E-05 -6.724074E-03 -8.382502E-06 -7.246664E-03 -1.223989E-05 -9.981199E-03 -1.983647E-05 -7.195641E-03 -1.261848E-05 -5.805501E-03 -6.427362E-06 -7.853739E-03 -1.109259E-05 -5.029358E-03 -4.590158E-06 -7.362545E-03 -9.705721E-06 -6.742269E-03 -5.672589E-06 -8.306759E-03 -1.150294E-05 -2.269532E-03 -1.413152E-06 -5.728846E-03 -6.054291E-06 -6.497853E-03 -7.598936E-06 -5.211040E-03 -7.706367E-06 -1.091775E-02 -2.620541E-05 -7.186930E-03 -7.840316E-06 -5.773406E-03 -6.737773E-06 -8.315747E-03 -1.614189E-05 -1.045710E-02 -1.408567E-05 -1.373927E-02 -2.417114E-05 -4.474588E-03 -2.860895E-06 -7.106756E-03 -8.922176E-06 -1.703428E-02 -3.411039E-05 -7.032210E-03 -5.972986E-06 -7.519022E-03 -9.923714E-06 -1.019763E-02 -1.870985E-05 -1.003939E-02 -1.665677E-05 -5.257180E-03 -7.163497E-06 -6.709259E-03 -1.080672E-05 -6.660210E-03 -8.371462E-06 -1.339388E-02 -2.963406E-05 -2.041319E-02 -6.283530E-05 -1.277136E-02 -2.113278E-05 -1.095487E-02 -1.788661E-05 -1.210895E-02 -2.269317E-05 -9.526669E-03 -1.459758E-05 -1.595135E-02 -4.590455E-05 -1.583142E-02 -3.433698E-05 -1.814067E-02 -5.361094E-05 -2.020117E-02 -5.966829E-05 -1.078165E-02 -2.464395E-05 -1.503699E-02 -3.786272E-05 -1.636813E-02 -3.872799E-05 -2.272579E-02 -7.702949E-05 -1.895617E-02 -5.205980E-05 -1.364788E-02 -2.639491E-05 -1.991314E-02 -7.408716E-05 -1.011963E-02 -1.544567E-05 -1.853803E-02 -4.673643E-05 -1.601464E-02 -3.647742E-05 -2.688432E-02 -8.994718E-05 -1.910229E-02 -4.828596E-05 -1.310107E-02 -2.599395E-05 -2.493961E-02 -8.021464E-05 -2.136141E-02 -5.184829E-05 -2.544806E-02 -7.994724E-05 -1.143679E-02 -1.661591E-05 -1.709579E-02 -4.337367E-05 -2.083317E-02 -5.556329E-05 -1.866022E-02 -4.397347E-05 -3.145206E-02 -1.280431E-04 -2.210382E-02 -5.769121E-05 -1.823923E-02 -4.074602E-05 -1.528594E-02 -3.104999E-05 -1.711154E-02 -4.112452E-05 -1.507762E-02 -2.770618E-05 -2.206514E-02 -6.022082E-05 -2.319277E-02 -5.836530E-05 -1.896072E-02 -4.024144E-05 -1.655441E-02 -4.163720E-05 -1.804406E-02 -4.084019E-05 -2.452803E-02 -7.291599E-05 -2.802970E-02 -1.259325E-04 -2.453139E-02 -7.079239E-05 -2.489486E-02 -6.688553E-05 -2.178711E-02 -7.105053E-05 -1.906738E-02 -4.476745E-05 -2.527667E-02 -8.182112E-05 -2.331217E-02 -6.232971E-05 -2.781953E-02 -9.708263E-05 -1.997547E-02 -4.443113E-05 -2.088515E-02 -5.171598E-05 -2.303205E-02 -8.024769E-05 -1.915503E-02 -4.593806E-05 -2.571317E-02 -8.223527E-05 -1.506654E-02 -3.035107E-05 -2.999022E-02 -1.183624E-04 -2.875220E-02 -1.019916E-04 -1.859536E-02 -4.941826E-05 -2.237740E-02 -6.098459E-05 -1.818345E-02 -4.548133E-05 -2.387148E-02 -8.542723E-05 -1.893980E-02 -4.021031E-05 -2.098013E-02 -5.353962E-05 -2.652625E-02 -8.621445E-05 -1.979268E-02 -5.173051E-05 -2.005599E-02 -5.014567E-05 -1.869207E-02 -4.863434E-05 -2.062895E-02 -5.960259E-05 -2.035386E-02 -4.757091E-05 -1.380341E-02 -2.450580E-05 -1.716354E-02 -4.220694E-05 -1.514915E-02 -2.661478E-05 -9.617277E-03 -1.245420E-05 -1.625088E-02 -3.575586E-05 -1.556949E-02 -3.732096E-05 -1.713751E-02 -3.918991E-05 -1.288808E-02 -2.331234E-05 -1.411636E-02 -2.581158E-05 -8.295504E-03 -1.118839E-05 -1.490088E-02 -3.193897E-05 -1.120118E-02 -1.562213E-05 -1.159281E-02 -1.980721E-05 -1.203548E-02 -2.711369E-05 -1.339573E-02 -2.158602E-05 -1.280581E-02 -2.079765E-05 -1.083998E-02 -1.727408E-05 -1.315255E-02 -2.519274E-05 -1.207379E-02 -2.152665E-05 -1.232904E-02 -2.825538E-05 -1.209938E-02 -2.379986E-05 -7.347293E-03 -8.920021E-06 -1.420050E-02 -2.556068E-05 -1.406290E-02 -2.882913E-05 -1.226796E-02 -2.904134E-05 -1.529742E-02 -3.412784E-05 -9.361135E-03 -1.953641E-05 -7.653780E-03 -9.090398E-06 -1.172034E-02 -1.741493E-05 -6.481510E-03 -6.366134E-06 -1.483462E-02 -3.419849E-05 -7.287071E-03 -9.994231E-06 -7.014536E-03 -8.683589E-06 -3.914638E-03 -3.851978E-06 -1.039507E-02 -1.247058E-05 -1.449371E-02 -3.268737E-05 -6.107315E-03 -1.275657E-05 -5.912533E-03 -5.291900E-06 -1.241975E-02 -2.776459E-05 -1.652474E-02 -3.478228E-05 -9.924557E-03 -2.111611E-05 -1.112655E-02 -2.134337E-05 -1.490879E-02 -4.120682E-05 -1.214873E-02 -1.828276E-05 -1.878471E-02 -4.595384E-05 -1.068338E-02 -2.052816E-05 -9.957982E-03 -1.661273E-05 -8.679245E-03 -1.539340E-05 -7.944462E-03 -1.238828E-05 -9.333064E-03 -1.407498E-05 -2.180639E-02 -5.625519E-05 -2.409216E-02 -8.351837E-05 -2.095008E-02 -5.330117E-05 -2.458431E-02 -7.696318E-05 -1.741223E-02 -4.634669E-05 -2.052947E-02 -5.641630E-05 -2.507271E-02 -7.084493E-05 -2.192019E-02 -5.996923E-05 -1.687601E-02 -3.734411E-05 -2.188351E-02 -5.331644E-05 -2.625531E-02 -8.987505E-05 -1.947839E-02 -5.362737E-05 -2.561506E-02 -8.555702E-05 -3.072429E-02 -1.057779E-04 -2.548154E-02 -8.649311E-05 -2.215408E-02 -5.389914E-05 -2.857258E-02 -9.992187E-05 -2.271191E-02 -6.458178E-05 -3.417289E-02 -1.353676E-04 -2.406069E-02 -7.233156E-05 -2.858289E-02 -1.096000E-04 -3.086685E-02 -1.088635E-04 -1.806766E-02 -4.316705E-05 -2.440571E-02 -6.395626E-05 -3.255341E-02 -1.376111E-04 -4.078794E-02 -1.950454E-04 -2.169319E-02 -5.623674E-05 -2.222088E-02 -7.931181E-05 -3.507566E-02 -1.330312E-04 -3.153876E-02 -1.223922E-04 -3.739825E-02 -1.655348E-04 -3.186914E-02 -1.164407E-04 -3.186332E-02 -1.211760E-04 -3.046668E-02 -1.045865E-04 -2.468913E-02 -7.595312E-05 -2.725403E-02 -9.530282E-05 -3.669370E-02 -1.633028E-04 -4.142607E-02 -2.202378E-04 -2.274887E-02 -6.024427E-05 -2.852673E-02 -1.084379E-04 -3.552692E-02 -1.550998E-04 -1.953889E-02 -4.742931E-05 -4.288258E-02 -2.326284E-04 -3.527647E-02 -1.532875E-04 -3.831735E-02 -1.712470E-04 -3.740668E-02 -1.804477E-04 -3.067443E-02 -1.226235E-04 -2.859755E-02 -9.502065E-05 -3.656012E-02 -1.473474E-04 -4.428469E-02 -2.135422E-04 -3.876237E-02 -1.826793E-04 -3.168779E-02 -1.136526E-04 -4.132746E-02 -1.944335E-04 -3.080999E-02 -1.075137E-04 -3.809598E-02 -1.579372E-04 -3.950419E-02 -1.784657E-04 -5.023062E-02 -3.049706E-04 -4.789752E-02 -2.554387E-04 -3.458880E-02 -1.324150E-04 -4.090067E-02 -1.965130E-04 -3.045883E-02 -1.164732E-04 -3.897593E-02 -1.862204E-04 -1.900547E-02 -4.239429E-05 -2.523518E-02 -8.151515E-05 -3.480501E-02 -1.535823E-04 -2.911328E-02 -1.131135E-04 -3.135787E-02 -1.158315E-04 -2.364659E-02 -7.666160E-05 -3.489798E-02 -1.613478E-04 -3.305825E-02 -1.226465E-04 -3.424037E-02 -1.511504E-04 -3.144976E-02 -1.315971E-04 -2.386686E-02 -9.966283E-05 -2.343488E-02 -7.865295E-05 -1.809482E-02 -3.639503E-05 -1.592339E-02 -3.078924E-05 -3.395399E-02 -1.387775E-04 -2.173542E-02 -6.688037E-05 -1.139408E-02 -1.661367E-05 -1.191973E-02 -1.884978E-05 -2.149843E-02 -5.543388E-05 -2.139730E-02 -5.948238E-05 -1.878719E-02 -3.863865E-05 -2.861748E-02 -9.903233E-05 -1.663769E-02 -3.586183E-05 -2.392378E-02 -7.633777E-05 -1.826846E-02 -4.768962E-05 -1.258024E-02 -2.584217E-05 -1.836655E-02 -4.161069E-05 -1.896044E-02 -4.007711E-05 -1.782079E-02 -3.615894E-05 -1.682346E-02 -3.435373E-05 -1.864611E-02 -4.004514E-05 -2.027124E-02 -4.802356E-05 -1.572197E-02 -4.060890E-05 -1.809973E-02 -5.222844E-05 -8.922954E-03 -1.541312E-05 -1.042804E-02 -1.919810E-05 -1.663952E-02 -3.230801E-05 -1.416041E-02 -3.240599E-05 -1.364911E-02 -2.047968E-05 -1.466030E-02 -2.789488E-05 -7.525078E-03 -8.889694E-06 -6.730764E-03 -9.941085E-06 -1.007468E-02 -1.767697E-05 -1.050555E-02 -1.620042E-05 -8.346548E-03 -1.182646E-05 -9.053361E-03 -1.420984E-05 -1.665200E-02 -5.444887E-05 -1.527178E-02 -2.919176E-05 -1.380005E-02 -2.920152E-05 -9.043029E-03 -1.785555E-05 -1.950145E-02 -4.990311E-05 -1.401098E-02 -2.753310E-05 -1.823652E-02 -4.520948E-05 -1.710659E-02 -4.707810E-05 -1.381860E-02 -3.468506E-05 -1.372395E-02 -3.175759E-05 -1.525561E-02 -3.615913E-05 -1.061450E-02 -1.832455E-05 -2.040145E-02 -5.544400E-05 -2.550363E-02 -8.291428E-05 -1.927840E-02 -6.340108E-05 -1.775966E-02 -3.592996E-05 -1.876698E-02 -5.056466E-05 -1.520416E-02 -3.176693E-05 -2.911719E-02 -1.110393E-04 -2.789335E-02 -1.015992E-04 -2.154244E-02 -6.800841E-05 -2.176042E-02 -6.210896E-05 -2.465235E-02 -8.769146E-05 -2.163089E-02 -6.884278E-05 -4.263944E-02 -2.012458E-04 -3.780523E-02 -1.771907E-04 -3.718152E-02 -1.480234E-04 -3.477776E-02 -1.409494E-04 -3.400758E-02 -1.358091E-04 -2.463564E-02 -6.885284E-05 -3.580510E-02 -1.389221E-04 -2.581734E-02 -7.795599E-05 -4.453340E-02 -2.222774E-04 -3.924298E-02 -2.048002E-04 -2.186414E-02 -7.503195E-05 -2.414346E-02 -6.884988E-05 -4.920381E-02 -2.986041E-04 -4.271226E-02 -2.407998E-04 -3.511456E-02 -1.659456E-04 -3.959546E-02 -1.811704E-04 -4.332790E-02 -2.327770E-04 -3.005794E-02 -1.236765E-04 -4.201285E-02 -1.831068E-04 -3.539806E-02 -1.349359E-04 -4.860033E-02 -2.640914E-04 -3.738028E-02 -1.608258E-04 -3.344288E-02 -1.192143E-04 -3.329781E-02 -1.262633E-04 -5.050402E-02 -3.082255E-04 -6.167912E-02 -4.537041E-04 -4.061325E-02 -2.373203E-04 -4.113180E-02 -2.244264E-04 -4.273661E-02 -2.061457E-04 -3.909923E-02 -1.794019E-04 -4.467948E-02 -2.422984E-04 -3.644554E-02 -1.488516E-04 -6.208616E-02 -4.066650E-04 -5.622731E-02 -3.479864E-04 -3.604649E-02 -1.527817E-04 -4.489847E-02 -2.244948E-04 -4.852333E-02 -2.452380E-04 -5.916579E-02 -3.675786E-04 -5.027889E-02 -3.063063E-04 -5.223329E-02 -3.266355E-04 -5.303921E-02 -3.002831E-04 -4.084190E-02 -2.089059E-04 -4.269058E-02 -1.927344E-04 -4.181196E-02 -1.890866E-04 -4.239920E-02 -2.054052E-04 -4.178606E-02 -2.121443E-04 -3.962721E-02 -1.900681E-04 -3.998106E-02 -1.671101E-04 -4.097110E-02 -1.864628E-04 -5.252376E-02 -2.919653E-04 -4.986589E-02 -2.923184E-04 -4.281919E-02 -2.017141E-04 -5.707825E-02 -3.443945E-04 -4.193701E-02 -1.801946E-04 -3.890873E-02 -1.604416E-04 -2.771300E-02 -8.201460E-05 -4.516255E-02 -2.288159E-04 -3.504308E-02 -1.480297E-04 -3.354671E-02 -1.345202E-04 -4.155997E-02 -1.900709E-04 -2.311887E-02 -6.056166E-05 -4.403743E-02 -2.374715E-04 -1.996468E-02 -5.260666E-05 -3.196737E-02 -1.421833E-04 -4.035771E-02 -1.965928E-04 -3.317174E-02 -1.529423E-04 -2.357781E-02 -6.449390E-05 -2.467934E-02 -6.935734E-05 -4.424222E-02 -2.197069E-04 -3.398377E-02 -1.404692E-04 -2.969392E-02 -9.932175E-05 -2.586642E-02 -8.639774E-05 -2.018938E-02 -4.704545E-05 -2.460053E-02 -8.337921E-05 -2.140944E-02 -5.566819E-05 -1.750162E-02 -4.330128E-05 -1.823667E-02 -3.807392E-05 -2.182322E-02 -5.835666E-05 -1.996510E-02 -4.925786E-05 -2.054306E-02 -5.967285E-05 -2.448060E-02 -6.724552E-05 -2.420255E-02 -7.171101E-05 -2.224533E-02 -7.074407E-05 -2.688010E-02 -1.048025E-04 -1.252593E-02 -1.992438E-05 -1.627058E-02 -3.557197E-05 -1.458375E-02 -2.939085E-05 -6.673846E-03 -7.665690E-06 -1.782098E-02 -4.530371E-05 -1.873366E-02 -5.530746E-05 -1.014089E-02 -1.628821E-05 -9.132953E-03 -1.379610E-05 -1.363905E-02 -2.661815E-05 -1.338513E-02 -2.253429E-05 -8.423240E-03 -1.911938E-05 -1.484012E-02 -4.135636E-05 -1.418073E-02 -3.323365E-05 -1.543051E-02 -2.985655E-05 -1.632770E-02 -3.517623E-05 -2.008031E-02 -5.274018E-05 -1.602450E-02 -3.958879E-05 -1.750372E-02 -3.314152E-05 -1.219742E-02 -2.258004E-05 -1.433533E-02 -3.618336E-05 -9.075804E-03 -1.317139E-05 -7.380199E-03 -7.236358E-06 -1.782556E-02 -3.957064E-05 -1.184192E-02 -2.021154E-05 -2.859581E-02 -1.054928E-04 -2.697349E-02 -9.676496E-05 -2.792217E-02 -1.147611E-04 -1.382301E-02 -2.417383E-05 -2.411827E-02 -7.056685E-05 -1.982700E-02 -4.766108E-05 -2.818071E-02 -9.359800E-05 -2.219449E-02 -6.075282E-05 -2.314416E-02 -6.478789E-05 -2.443285E-02 -8.381567E-05 -2.019536E-02 -5.428133E-05 -1.353132E-02 -2.740754E-05 -4.406952E-02 -2.190081E-04 -3.446584E-02 -1.346151E-04 -3.753184E-02 -1.527576E-04 -3.033111E-02 -1.034049E-04 -2.855894E-02 -9.711291E-05 -2.771557E-02 -8.771393E-05 -3.898957E-02 -1.908877E-04 -4.305288E-02 -1.970134E-04 -3.486097E-02 -1.545961E-04 -3.499273E-02 -1.436152E-04 -3.110132E-02 -1.127757E-04 -3.008751E-02 -1.139676E-04 -6.319815E-02 -4.327893E-04 -5.504272E-02 -3.344552E-04 -4.591545E-02 -2.365710E-04 -3.617316E-02 -1.560924E-04 -5.218885E-02 -3.077972E-04 -4.686114E-02 -2.529342E-04 -5.728060E-02 -4.031273E-04 -3.978176E-02 -1.860198E-04 -5.004767E-02 -3.136544E-04 -4.523333E-02 -2.208929E-04 -3.194586E-02 -1.141458E-04 -3.721301E-02 -1.553134E-04 -7.477681E-02 -6.639195E-04 -6.780397E-02 -4.776195E-04 -6.358469E-02 -4.696106E-04 -6.032980E-02 -4.286567E-04 -5.153943E-02 -2.983568E-04 -5.818770E-02 -4.058262E-04 -6.750249E-02 -5.176461E-04 -5.373447E-02 -3.160363E-04 -6.782408E-02 -5.197564E-04 -5.101341E-02 -3.150794E-04 -3.969145E-02 -1.890305E-04 -4.675755E-02 -2.829176E-04 -4.899174E-02 -2.593746E-04 -7.529462E-02 -5.829369E-04 -5.523513E-02 -3.275402E-04 -3.691494E-02 -1.532620E-04 -6.863824E-02 -5.261979E-04 -5.665568E-02 -3.399426E-04 -5.021140E-02 -2.920406E-04 -5.159035E-02 -3.147743E-04 -8.420431E-02 -7.633948E-04 -6.502238E-02 -5.063282E-04 -4.930238E-02 -2.812855E-04 -4.815381E-02 -2.482742E-04 -4.967200E-02 -2.680540E-04 -5.523567E-02 -3.370328E-04 -4.300524E-02 -2.081672E-04 -3.836521E-02 -1.711214E-04 -5.253824E-02 -3.333353E-04 -4.027059E-02 -1.822925E-04 -3.645004E-02 -1.495178E-04 -3.990377E-02 -1.790132E-04 -4.399597E-02 -2.136921E-04 -4.313937E-02 -2.093007E-04 -3.431599E-02 -1.398795E-04 -4.051219E-02 -1.961233E-04 -4.595652E-02 -2.564444E-04 -3.332030E-02 -1.206481E-04 -4.197497E-02 -2.029057E-04 -3.566567E-02 -1.599693E-04 -3.563813E-02 -1.390992E-04 -3.428900E-02 -1.439048E-04 -3.548443E-02 -1.582734E-04 -3.147837E-02 -1.431168E-04 -3.473859E-02 -1.320531E-04 -3.340003E-02 -1.534631E-04 -2.995214E-02 -1.115961E-04 -3.783601E-02 -1.612451E-04 -2.593349E-02 -7.511302E-05 -2.220229E-02 -5.650585E-05 -2.396506E-02 -6.330344E-05 -2.415591E-02 -7.979178E-05 -3.230518E-02 -1.226469E-04 -3.148292E-02 -1.291525E-04 -2.555369E-02 -7.214626E-05 -2.008785E-02 -5.277321E-05 -2.623915E-02 -1.052699E-04 -1.687230E-02 -3.802212E-05 -1.828669E-02 -5.222647E-05 -2.568728E-02 -1.046345E-04 -1.666034E-02 -3.189735E-05 -1.441649E-02 -2.909234E-05 -1.961081E-02 -5.252583E-05 -1.446604E-02 -2.906063E-05 -2.499966E-02 -7.290861E-05 -2.036936E-02 -5.610925E-05 -9.247556E-03 -1.678837E-05 -1.093088E-02 -2.167681E-05 -1.260502E-02 -2.987668E-05 -9.613002E-03 -1.269981E-05 -1.504319E-02 -4.123453E-05 -1.804155E-02 -4.790967E-05 -1.950375E-02 -5.823817E-05 -1.292954E-02 -2.425508E-05 -9.979565E-03 -1.879915E-05 -1.627001E-02 -4.007960E-05 -1.727217E-02 -3.779588E-05 -1.821599E-02 -4.516560E-05 -1.246029E-02 -2.877178E-05 -7.419932E-03 -1.075442E-05 -1.027139E-02 -1.750906E-05 -6.011548E-03 -5.357981E-06 -1.284150E-02 -2.684216E-05 -7.873217E-03 -1.261811E-05 -3.056254E-02 -1.119101E-04 -2.367459E-02 -7.012832E-05 -3.125473E-02 -1.349511E-04 -2.032722E-02 -6.005633E-05 -1.966372E-02 -4.807430E-05 -1.888280E-02 -4.353141E-05 -3.148229E-02 -1.087028E-04 -2.569052E-02 -8.345601E-05 -1.988235E-02 -5.083043E-05 -3.033509E-02 -1.353984E-04 -2.455111E-02 -8.578087E-05 -2.292969E-02 -6.706042E-05 -3.506638E-02 -1.418820E-04 -2.811805E-02 -8.950254E-05 -3.758364E-02 -1.763474E-04 -4.852969E-02 -3.045767E-04 -3.345491E-02 -1.265446E-04 -3.311976E-02 -1.271997E-04 -4.406586E-02 -2.049053E-04 -3.977663E-02 -1.944792E-04 -3.568273E-02 -1.393831E-04 -4.714003E-02 -2.666571E-04 -3.938142E-02 -1.784684E-04 -3.504464E-02 -1.619498E-04 -6.038764E-02 -4.057914E-04 -5.523867E-02 -3.480079E-04 -5.012020E-02 -2.738532E-04 -5.300843E-02 -3.225930E-04 -4.819845E-02 -2.912996E-04 -4.192723E-02 -2.042929E-04 -5.437230E-02 -3.831173E-04 -4.855340E-02 -2.801897E-04 -5.632430E-02 -3.684549E-04 -3.908351E-02 -1.754220E-04 -3.723203E-02 -1.565670E-04 -3.662475E-02 -1.409549E-04 -7.828360E-02 -6.808841E-04 -6.139852E-02 -4.032303E-04 -6.455776E-02 -4.632098E-04 -4.996191E-02 -2.795507E-04 -5.586957E-02 -3.475409E-04 -4.296598E-02 -2.317524E-04 -6.386330E-02 -4.717762E-04 -5.291090E-02 -3.247736E-04 -5.483498E-02 -3.421555E-04 -4.502506E-02 -2.409819E-04 -5.510776E-02 -3.436300E-04 -4.165980E-02 -1.924264E-04 -5.979906E-02 -3.843900E-04 -5.815532E-02 -3.901796E-04 -6.144432E-02 -4.159903E-04 -5.918684E-02 -3.926095E-04 -7.241076E-02 -5.527725E-04 -5.729097E-02 -3.531500E-04 -5.051843E-02 -2.810907E-04 -5.618582E-02 -3.776148E-04 -5.589932E-02 -3.335647E-04 -6.161520E-02 -4.831295E-04 -5.389348E-02 -3.065669E-04 -4.348189E-02 -2.135964E-04 -4.695822E-02 -2.384098E-04 -6.006602E-02 -3.844395E-04 -4.864361E-02 -2.423012E-04 -4.186798E-02 -1.902022E-04 -4.797983E-02 -2.448734E-04 -4.768596E-02 -2.637688E-04 -4.383760E-02 -2.023880E-04 -3.729270E-02 -2.011170E-04 -4.671060E-02 -2.774443E-04 -4.261256E-02 -2.074667E-04 -3.057615E-02 -1.013174E-04 -3.642349E-02 -1.538488E-04 -2.640419E-02 -8.839937E-05 -5.298488E-02 -3.147305E-04 -2.462926E-02 -7.609382E-05 -3.274348E-02 -1.347060E-04 -4.085845E-02 -2.061636E-04 -3.613681E-02 -1.608827E-04 -3.188424E-02 -1.170448E-04 -3.090210E-02 -1.209556E-04 -4.916591E-02 -2.638816E-04 -3.463680E-02 -1.731202E-04 -2.473796E-02 -8.278777E-05 -2.876733E-02 -1.050578E-04 -2.818020E-02 -9.186488E-05 -2.922451E-02 -9.710630E-05 -2.867494E-02 -1.008386E-04 -2.048136E-02 -5.645393E-05 -2.709023E-02 -9.906565E-05 -2.060958E-02 -6.002022E-05 -2.400813E-02 -7.048793E-05 -2.041445E-02 -5.660380E-05 -3.022382E-02 -1.232007E-04 -2.428404E-02 -7.261848E-05 -1.317267E-02 -4.498520E-05 -1.725417E-02 -4.131436E-05 -1.439809E-02 -2.877223E-05 -1.849952E-02 -3.964099E-05 -1.298598E-02 -2.510194E-05 -1.158199E-02 -1.753824E-05 -2.399736E-02 -7.914398E-05 -1.618716E-02 -3.923219E-05 -1.582299E-02 -3.446241E-05 -1.281460E-02 -2.948723E-05 -1.687823E-02 -3.916635E-05 -1.992356E-02 -5.363759E-05 -9.964687E-03 -2.281351E-05 -9.741073E-03 -1.461704E-05 -1.016266E-02 -1.578045E-05 -1.165241E-02 -1.448412E-05 -1.645559E-02 -3.314741E-05 -1.019874E-02 -1.584348E-05 -1.400560E-02 -2.950132E-05 -1.339261E-02 -2.462337E-05 -9.864617E-03 -2.007031E-05 -1.033312E-02 -1.570664E-05 -1.150186E-02 -1.612123E-05 -8.165735E-03 -9.980334E-06 -1.039922E-02 -2.137334E-05 -7.778314E-03 -1.402972E-05 -2.352819E-02 -7.324745E-05 -1.832670E-02 -5.260061E-05 -1.958916E-02 -4.738463E-05 -2.752632E-02 -1.321234E-04 -1.290240E-02 -2.435598E-05 -1.180814E-02 -1.989960E-05 -1.968230E-02 -4.672576E-05 -2.074128E-02 -5.154692E-05 -1.506303E-02 -2.974396E-05 -2.158432E-02 -6.994225E-05 -2.106432E-02 -6.601892E-05 -1.297999E-02 -2.683746E-05 -4.398209E-02 -2.260240E-04 -3.493420E-02 -1.634600E-04 -3.877993E-02 -1.929775E-04 -2.663088E-02 -8.262555E-05 -2.385591E-02 -7.188146E-05 -2.756789E-02 -8.724472E-05 -4.223824E-02 -2.331366E-04 -3.372408E-02 -1.376633E-04 -2.877054E-02 -1.172152E-04 -2.505284E-02 -6.877934E-05 -2.710121E-02 -9.089126E-05 -2.491989E-02 -7.126133E-05 -4.605415E-02 -2.550818E-04 -3.674502E-02 -1.551214E-04 -3.682502E-02 -1.637234E-04 -4.294065E-02 -2.131753E-04 -3.770825E-02 -1.835164E-04 -3.445084E-02 -1.375944E-04 -3.954845E-02 -1.848016E-04 -4.320951E-02 -2.332661E-04 -2.976462E-02 -1.143727E-04 -3.263580E-02 -1.287108E-04 -4.185045E-02 -1.965114E-04 -3.879064E-02 -1.631517E-04 -6.117745E-02 -4.170051E-04 -5.208900E-02 -2.961117E-04 -5.034441E-02 -2.985461E-04 -4.763203E-02 -2.520770E-04 -4.424593E-02 -2.210065E-04 -4.633482E-02 -2.857246E-04 -6.172917E-02 -4.365884E-04 -4.667374E-02 -2.416468E-04 -4.615839E-02 -2.447158E-04 -4.202865E-02 -1.984881E-04 -3.687271E-02 -1.549029E-04 -3.781817E-02 -1.658791E-04 -5.350156E-02 -3.106556E-04 -5.738403E-02 -3.535711E-04 -5.581047E-02 -3.600168E-04 -5.548481E-02 -3.477589E-04 -5.976117E-02 -4.066921E-04 -3.679728E-02 -1.797632E-04 -4.181607E-02 -2.319380E-04 -4.475783E-02 -2.471295E-04 -5.073065E-02 -2.731166E-04 -4.282973E-02 -2.376864E-04 -3.923270E-02 -1.868782E-04 -3.175293E-02 -1.204289E-04 -3.821514E-02 -1.563696E-04 -4.698886E-02 -2.394623E-04 -4.501447E-02 -2.402396E-04 -3.789686E-02 -1.636683E-04 -4.356985E-02 -2.501184E-04 -3.738072E-02 -1.625968E-04 -3.207025E-02 -1.387594E-04 -3.204040E-02 -1.219128E-04 -4.516239E-02 -2.412503E-04 -4.133319E-02 -1.807484E-04 -2.760180E-02 -8.957336E-05 -4.274635E-02 -2.203768E-04 -3.183938E-02 -1.177784E-04 -3.431517E-02 -1.538918E-04 -3.335945E-02 -1.452163E-04 -3.036081E-02 -1.173248E-04 -3.231608E-02 -1.473817E-04 -3.026666E-02 -1.062646E-04 -2.381248E-02 -6.812346E-05 -2.438669E-02 -7.616674E-05 -2.657091E-02 -8.997086E-05 -2.155185E-02 -7.092421E-05 -2.241945E-02 -5.990905E-05 -3.070897E-02 -1.109960E-04 -2.580881E-02 -7.863309E-05 -2.134721E-02 -6.345767E-05 -3.007460E-02 -1.199346E-04 -2.158487E-02 -5.631137E-05 -2.267038E-02 -6.523479E-05 -2.199756E-02 -6.744627E-05 -1.920160E-02 -4.676740E-05 -1.927293E-02 -5.882526E-05 -1.309800E-02 -2.176798E-05 -1.864318E-02 -4.222760E-05 -2.427004E-02 -7.787837E-05 -2.143559E-02 -5.842615E-05 -1.187245E-02 -3.400806E-05 -1.386855E-02 -2.215090E-05 -1.089761E-02 -1.742663E-05 -1.054008E-02 -1.719743E-05 -1.573092E-02 -2.947697E-05 -1.260841E-02 -2.538616E-05 -9.335769E-03 -1.220699E-05 -9.218607E-03 -1.346226E-05 -1.232919E-02 -2.739036E-05 -1.540769E-02 -3.545632E-05 -1.047417E-02 -1.403218E-05 -8.091074E-03 -9.942405E-06 -9.757397E-03 -1.839030E-05 -1.147311E-02 -2.272680E-05 -6.625367E-03 -9.542469E-06 -1.132951E-02 -2.290402E-05 -1.276799E-02 -2.736073E-05 -1.641171E-02 -4.522620E-05 -1.038484E-02 -2.444781E-05 -1.059856E-02 -2.086366E-05 -1.070727E-02 -3.120073E-05 -9.434079E-03 -2.288235E-05 -1.260589E-02 -2.115523E-05 -8.609571E-03 -1.014235E-05 -1.906718E-02 -4.342750E-05 -1.697807E-02 -3.746587E-05 -1.655549E-02 -3.279717E-05 -2.335945E-02 -8.680066E-05 -1.947075E-02 -4.582833E-05 -2.334564E-02 -6.827484E-05 -1.970475E-02 -5.161446E-05 -2.176597E-02 -8.091171E-05 -1.794831E-02 -4.826888E-05 -1.453865E-02 -2.543285E-05 -2.285340E-02 -7.733631E-05 -1.495227E-02 -3.812970E-05 -2.993202E-02 -1.105328E-04 -2.591986E-02 -7.889731E-05 -2.891690E-02 -1.170195E-04 -2.591958E-02 -8.245187E-05 -2.472591E-02 -6.792489E-05 -1.984583E-02 -4.399055E-05 -2.723781E-02 -1.063286E-04 -2.214049E-02 -6.647832E-05 -1.976025E-02 -4.630788E-05 -2.362519E-02 -9.840049E-05 -2.147637E-02 -5.680267E-05 -1.716604E-02 -3.707514E-05 -3.853916E-02 -1.905886E-04 -3.220009E-02 -1.166545E-04 -3.072451E-02 -1.105417E-04 -3.416322E-02 -1.445852E-04 -3.081335E-02 -1.205464E-04 -2.381824E-02 -7.421006E-05 -2.919176E-02 -1.443329E-04 -3.165320E-02 -1.643449E-04 -2.399334E-02 -7.031311E-05 -2.931290E-02 -1.089751E-04 -2.541529E-02 -9.960904E-05 -2.496511E-02 -9.522684E-05 -4.191717E-02 -2.319644E-04 -4.194175E-02 -2.515421E-04 -4.029489E-02 -2.034800E-04 -2.949880E-02 -1.001309E-04 -3.311240E-02 -2.069653E-04 -3.311074E-02 -1.645850E-04 -2.609443E-02 -7.829184E-05 -2.523310E-02 -7.753633E-05 -3.376196E-02 -1.542562E-04 -3.370657E-02 -1.584460E-04 -2.316126E-02 -6.322560E-05 -2.849745E-02 -1.006036E-04 -4.156928E-02 -1.941410E-04 -3.356649E-02 -1.323048E-04 -3.504110E-02 -1.432793E-04 -4.188246E-02 -2.087133E-04 -2.686062E-02 -1.008920E-04 -3.264472E-02 -1.519956E-04 -3.182824E-02 -1.190821E-04 -3.230472E-02 -1.432567E-04 -3.014385E-02 -1.104329E-04 -3.127630E-02 -1.124605E-04 -3.215046E-02 -1.161615E-04 -3.028866E-02 -1.020886E-04 -3.771125E-02 -1.568073E-04 -3.370873E-02 -1.337798E-04 -4.025498E-02 -1.918052E-04 -2.635483E-02 -7.350768E-05 -2.361243E-02 -7.420144E-05 -3.747673E-02 -2.016310E-04 -2.747199E-02 -8.499093E-05 -3.168249E-02 -1.354519E-04 -2.123972E-02 -5.349966E-05 -2.029422E-02 -4.819609E-05 -2.757353E-02 -9.520625E-05 -3.241854E-02 -1.263115E-04 -2.339411E-02 -8.048390E-05 -2.881367E-02 -9.755501E-05 -2.959500E-02 -1.180648E-04 -2.255464E-02 -6.753101E-05 -4.047075E-02 -1.783640E-04 -3.116618E-02 -1.271595E-04 -2.360487E-02 -7.555159E-05 -2.020519E-02 -5.400702E-05 -2.646647E-02 -7.518930E-05 -2.547209E-02 -9.058727E-05 -1.278101E-02 -2.432873E-05 -2.394671E-02 -7.236070E-05 -1.399890E-02 -2.909745E-05 -1.693268E-02 -4.013852E-05 -1.661474E-02 -3.646989E-05 -1.683699E-02 -3.576439E-05 -1.878683E-02 -4.752490E-05 -1.779186E-02 -5.032257E-05 -1.615460E-02 -3.517429E-05 -1.467092E-02 -2.974604E-05 -1.693919E-02 -3.956534E-05 -1.570365E-02 -3.373372E-05 -1.503755E-02 -3.242993E-05 -1.350241E-02 -2.471502E-05 -1.132128E-02 -2.210554E-05 -1.394835E-02 -2.288474E-05 -7.707010E-03 -1.408651E-05 -1.105673E-02 -1.950348E-05 -1.597153E-02 -2.996363E-05 -1.072279E-02 -1.642956E-05 -9.931403E-03 -1.596209E-05 -3.110131E-03 -1.979116E-06 -1.465778E-02 -2.665954E-05 -8.711776E-03 -1.658595E-05 -3.336279E-03 -3.121041E-06 -1.220546E-02 -2.078425E-05 -1.225808E-02 -2.498648E-05 -5.941201E-03 -5.858248E-06 -8.017505E-03 -9.987361E-06 -1.032012E-02 -1.689346E-05 -1.122116E-02 -2.547015E-05 -7.303253E-03 -1.021165E-05 -1.018508E-02 -1.390217E-05 -6.537846E-03 -1.231905E-05 -3.757225E-03 -2.146236E-06 -6.253529E-03 -8.259456E-06 -8.429652E-03 -1.132331E-05 -6.846152E-03 -1.089548E-05 -1.540905E-02 -4.707146E-05 -1.380105E-02 -2.885252E-05 -1.506988E-02 -3.657193E-05 -1.379370E-02 -2.325176E-05 -9.540645E-03 -2.912938E-05 -1.053361E-02 -1.745746E-05 -8.796644E-03 -1.302715E-05 -9.798877E-03 -1.776907E-05 -1.287457E-02 -2.307421E-05 -1.194402E-02 -2.276268E-05 -7.875525E-03 -1.292927E-05 -5.533880E-03 -9.384723E-06 -1.864321E-02 -4.177596E-05 -1.252461E-02 -2.176958E-05 -1.644030E-02 -4.131255E-05 -1.697179E-02 -3.953043E-05 -9.140492E-03 -1.319242E-05 -9.958402E-03 -1.459665E-05 -1.425287E-02 -3.897232E-05 -1.522358E-02 -3.028879E-05 -1.361118E-02 -2.815573E-05 -1.173677E-02 -3.088583E-05 -1.617474E-02 -3.012921E-05 -1.598127E-02 -3.641752E-05 -1.724536E-02 -3.982285E-05 -2.253691E-02 -6.632574E-05 -2.268227E-02 -5.893945E-05 -2.582333E-02 -9.202078E-05 -1.982485E-02 -6.093449E-05 -1.544437E-02 -3.045457E-05 -1.968776E-02 -5.933245E-05 -2.092753E-02 -6.834686E-05 -1.664629E-02 -4.979724E-05 -1.855281E-02 -6.404621E-05 -2.195650E-02 -6.222690E-05 -2.186198E-02 -5.700014E-05 -2.078639E-02 -4.826480E-05 -2.147531E-02 -5.352146E-05 -2.309193E-02 -6.508444E-05 -2.306719E-02 -7.442212E-05 -2.181171E-02 -6.065432E-05 -2.787754E-02 -1.071646E-04 -2.038266E-02 -6.322425E-05 -2.066861E-02 -6.321760E-05 -2.341755E-02 -6.599464E-05 -1.940287E-02 -5.285084E-05 -2.311451E-02 -6.931733E-05 -2.685211E-02 -9.869681E-05 -2.577665E-02 -9.741583E-05 -2.127713E-02 -7.233352E-05 -3.534780E-02 -1.462501E-04 -2.985988E-02 -1.001501E-04 -2.157060E-02 -5.933210E-05 -2.112991E-02 -6.091345E-05 -1.791858E-02 -4.849939E-05 -2.317059E-02 -5.941629E-05 -1.585209E-02 -3.680922E-05 -1.761272E-02 -4.005327E-05 -2.673873E-02 -8.415236E-05 -2.195005E-02 -7.869690E-05 -2.169063E-02 -6.115181E-05 -1.902034E-02 -4.602942E-05 -2.149684E-02 -6.272837E-05 -2.152317E-02 -5.647475E-05 -1.267811E-02 -2.551472E-05 -1.902212E-02 -4.501454E-05 -1.468929E-02 -2.854665E-05 -2.098348E-02 -5.162857E-05 -1.448437E-02 -3.165154E-05 -1.385842E-02 -2.946322E-05 -2.214565E-02 -6.004180E-05 -1.824698E-02 -3.872549E-05 -1.212354E-02 -2.133339E-05 -2.018308E-02 -5.701150E-05 -2.166624E-02 -5.196544E-05 -2.142212E-02 -5.674884E-05 -1.267848E-02 -2.171626E-05 -1.758911E-02 -4.711902E-05 -1.111921E-02 -2.058872E-05 -1.517506E-02 -2.980149E-05 -1.147226E-02 -1.573079E-05 -1.249264E-02 -2.217903E-05 -1.604063E-02 -3.750625E-05 -1.275295E-02 -2.494568E-05 -1.612605E-02 -3.577658E-05 -1.249864E-02 -3.018969E-05 -1.188510E-02 -2.704321E-05 -1.571000E-02 -3.615816E-05 -1.235323E-02 -2.593348E-05 -1.676586E-02 -4.472755E-05 -1.093806E-02 -1.930162E-05 -1.176929E-02 -2.511180E-05 -1.397747E-02 -2.813515E-05 -9.701315E-03 -1.930872E-05 -1.399983E-02 -3.413054E-05 -1.986885E-02 -5.082098E-05 -8.243555E-03 -1.200852E-05 -1.024429E-02 -1.296572E-05 -1.258003E-02 -1.952799E-05 -1.610829E-02 -3.961341E-05 -1.010586E-02 -1.549208E-05 -1.252095E-02 -2.770018E-05 -8.230588E-03 -1.450505E-05 -8.380929E-03 -1.203824E-05 -8.828715E-03 -1.191588E-05 -6.588527E-03 -7.910780E-06 -6.380189E-03 -6.533479E-06 -5.052056E-03 -5.336338E-06 -3.648351E-03 -2.706990E-06 -2.149471E-03 -1.225876E-06 -9.270100E-03 -1.169691E-05 -1.117400E-02 -2.249063E-05 -5.230590E-03 -4.655893E-06 -7.224676E-03 -1.008003E-05 -3.887357E-03 -3.670860E-06 -3.183273E-03 -1.847498E-06 -3.708170E-03 -2.623818E-06 -5.854425E-03 -1.020941E-05 -5.406569E-03 -5.391988E-06 -9.036302E-03 -1.748353E-05 -8.903194E-03 -1.445005E-05 -9.987482E-03 -2.075751E-05 -8.426663E-03 -1.155563E-05 -8.912136E-03 -1.175066E-05 -4.122838E-03 -3.170046E-06 -4.845177E-03 -4.237971E-06 -6.822194E-03 -1.051328E-05 -4.425000E-03 -4.417976E-06 -7.424172E-03 -9.891741E-06 -4.992950E-03 -5.945799E-06 -7.149030E-03 -1.123994E-05 -4.625444E-03 -5.049047E-06 -1.123851E-02 -2.017630E-05 -1.074541E-02 -1.709195E-05 -1.430110E-02 -3.117294E-05 -9.806637E-03 -1.530391E-05 -1.043812E-02 -1.609521E-05 -1.012866E-02 -1.391247E-05 -1.428192E-02 -2.902409E-05 -1.605416E-02 -3.562493E-05 -9.063095E-03 -1.372032E-05 -9.587205E-03 -1.473939E-05 -9.634515E-03 -1.858518E-05 -1.164975E-02 -2.656325E-05 -1.361864E-02 -2.518422E-05 -1.167329E-02 -2.323748E-05 -1.622385E-02 -3.856234E-05 -1.214097E-02 -2.153842E-05 -1.381854E-02 -2.815505E-05 -1.415211E-02 -4.135908E-05 -1.568971E-02 -3.813496E-05 -1.198123E-02 -2.333564E-05 -8.499425E-03 -1.126897E-05 -1.312625E-02 -3.325212E-05 -1.172860E-02 -2.042689E-05 -1.005348E-02 -1.782865E-05 -1.548579E-02 -3.103766E-05 -1.744521E-02 -3.960003E-05 -1.654740E-02 -3.986988E-05 -1.620467E-02 -3.009003E-05 -1.948116E-02 -5.036150E-05 -1.418148E-02 -2.971887E-05 -1.337833E-02 -2.666872E-05 -1.314218E-02 -2.648418E-05 -1.436798E-02 -2.490823E-05 -9.444986E-03 -1.101269E-05 -1.962001E-02 -8.135189E-05 -1.158154E-02 -1.952295E-05 -1.471099E-02 -3.133120E-05 -1.541812E-02 -3.170497E-05 -1.674531E-02 -4.322938E-05 -1.669392E-02 -3.544709E-05 -1.333115E-02 -3.211381E-05 -1.738951E-02 -4.841020E-05 -1.007222E-02 -1.774930E-05 -1.295078E-02 -2.638113E-05 -1.271717E-02 -2.298976E-05 -1.404483E-02 -2.889248E-05 -1.576832E-02 -3.529377E-05 -1.252846E-02 -2.718789E-05 -2.519173E-02 -8.963887E-05 -1.493179E-02 -3.748831E-05 -1.259822E-02 -2.429153E-05 -1.224327E-02 -1.829117E-05 -1.391862E-02 -2.860704E-05 -8.357253E-03 -1.029121E-05 -1.570825E-02 -3.413707E-05 -1.359733E-02 -2.641606E-05 -1.091443E-02 -1.715332E-05 -8.155749E-03 -1.261821E-05 -1.313846E-02 -2.597075E-05 -8.293564E-03 -1.056976E-05 -1.638901E-02 -3.229628E-05 -1.331850E-02 -3.096114E-05 -1.103350E-02 -1.929035E-05 -1.727217E-02 -4.051979E-05 -9.518809E-03 -1.410510E-05 -1.300800E-02 -2.937228E-05 -1.046353E-02 -1.575334E-05 -1.036019E-02 -1.658144E-05 -8.892217E-03 -1.726775E-05 -9.649910E-03 -1.409080E-05 -1.146930E-02 -2.018867E-05 -8.918398E-03 -1.307570E-05 -1.525733E-02 -3.596673E-05 -1.004009E-02 -1.246514E-05 -1.066698E-02 -2.185894E-05 -7.770912E-03 -1.480934E-05 -7.264717E-03 -8.442828E-06 -6.706343E-03 -6.852573E-06 -5.559456E-03 -4.744752E-06 -5.773360E-03 -7.781275E-06 -1.331078E-02 -3.353599E-05 -8.788678E-03 -1.329146E-05 -4.884040E-03 -4.077409E-06 -8.675118E-03 -1.319086E-05 -4.761159E-03 -3.796641E-06 -5.277064E-03 -5.807731E-06 -1.108365E-02 -1.916299E-05 -5.331867E-03 -3.733672E-06 -7.054526E-03 -6.862094E-06 -5.863290E-03 -8.388015E-06 -7.544134E-03 -1.042553E-05 -5.750484E-03 -5.095339E-06 -5.249358E-03 -3.213161E-06 -7.899479E-03 -9.484436E-06 -4.160278E-03 -4.806702E-06 -7.679996E-03 -2.071836E-05 -6.241972E-03 -1.620756E-05 -5.913948E-03 -7.527048E-06 -4.733716E-03 -5.631878E-06 -2.903451E-03 -2.658722E-06 -3.127420E-03 -2.299870E-06 -2.273717E-03 -1.344135E-06 -6.534306E-03 -1.124316E-05 -7.835003E-03 -1.715904E-05 -4.882363E-03 -4.758963E-06 -3.720325E-03 -3.452423E-06 -1.428452E-03 -1.333526E-06 -3.504443E-03 -2.552735E-06 -8.268492E-03 -1.053438E-05 -9.457152E-03 -1.477101E-05 -4.409644E-03 -4.661365E-06 -5.391744E-03 -4.980226E-06 -7.357835E-03 -8.692158E-06 -4.819563E-03 -3.684180E-06 -7.257471E-03 -8.300854E-06 -8.234387E-03 -1.648552E-05 -7.005187E-03 -8.215133E-06 -8.218179E-03 -1.271584E-05 -4.248638E-03 -4.615897E-06 -6.471659E-03 -7.110986E-06 -8.889291E-03 -1.460347E-05 -8.616060E-03 -1.124291E-05 -8.973876E-03 -1.442105E-05 -6.214996E-03 -1.237961E-05 -6.199460E-03 -8.437599E-06 -2.474487E-03 -1.269623E-06 -1.303002E-02 -3.064014E-05 -1.148543E-02 -2.273454E-05 -1.266333E-02 -2.372659E-05 -1.058814E-02 -2.391393E-05 -5.834966E-03 -9.147127E-06 -5.517822E-03 -5.264691E-06 -1.270359E-02 -2.820747E-05 -1.820335E-02 -4.287032E-05 -1.202094E-02 -2.800408E-05 -7.736254E-03 -1.836141E-05 -6.145051E-03 -6.272679E-06 -7.726439E-03 -1.228446E-05 -1.411190E-02 -2.865658E-05 -6.550872E-03 -6.014982E-06 -2.088300E-02 -7.573466E-05 -1.388048E-02 -3.669556E-05 -1.132008E-02 -1.910843E-05 -1.611954E-02 -3.536212E-05 -1.481933E-02 -3.146401E-05 -1.247993E-02 -2.294126E-05 -1.394123E-02 -2.867543E-05 -1.072461E-02 -1.866919E-05 -8.610956E-03 -1.120688E-05 -8.083860E-03 -8.161992E-06 -1.162751E-02 -1.795366E-05 -9.128039E-03 -1.252646E-05 -9.364221E-03 -1.603445E-05 -8.294106E-03 -1.019170E-05 -5.833363E-03 -4.941650E-06 -9.811611E-03 -1.274458E-05 -1.603475E-02 -3.880395E-05 -1.271422E-02 -2.182851E-05 -1.519349E-02 -3.269445E-05 -9.595042E-03 -1.801667E-05 -7.059973E-03 -7.819618E-06 -5.876271E-03 -1.068936E-05 -1.340147E-02 -3.113903E-05 -4.145261E-03 -3.270808E-06 -1.596720E-02 -3.465819E-05 -1.433346E-02 -2.905578E-05 -8.468040E-03 -1.341062E-05 -1.395194E-02 -2.559614E-05 -1.200470E-02 -1.982352E-05 -1.665933E-02 -3.793148E-05 -1.726359E-02 -3.968046E-05 -6.540447E-03 -5.939253E-06 -8.142400E-03 -1.045929E-05 -6.566817E-03 -8.688594E-06 -1.015592E-02 -1.244647E-05 -1.077665E-02 -1.554617E-05 -1.360651E-02 -3.317478E-05 -1.060123E-02 -1.533418E-05 -3.815593E-03 -2.480255E-06 -9.569339E-03 -1.129499E-05 -9.012545E-03 -1.643164E-05 -1.246360E-02 -3.026280E-05 -8.297915E-03 -9.462041E-06 -5.099837E-03 -5.488747E-06 -8.276566E-03 -1.499072E-05 -3.692279E-03 -3.276555E-06 -8.083217E-03 -1.216780E-05 -9.547609E-03 -1.541880E-05 -1.043999E-02 -1.447586E-05 -9.984558E-03 -1.393147E-05 -6.036500E-03 -1.256268E-05 -5.023445E-03 -4.154969E-06 -7.024538E-03 -1.085504E-05 -7.537608E-03 -1.160621E-05 -5.017595E-03 -4.922120E-06 -5.050436E-03 -4.024516E-06 -3.123518E-03 -1.695608E-06 -3.831129E-03 -3.485286E-06 -5.964101E-03 -9.872984E-06 -3.809889E-03 -3.837033E-06 -4.120333E-03 -3.567476E-06 -3.925178E-03 -5.899336E-06 -3.890602E-03 -8.542757E-06 -6.033356E-03 -7.736141E-06 -4.271392E-03 -3.643602E-06 -2.282046E-03 -1.281394E-06 -6.262911E-03 -1.134696E-05 -4.313813E-03 -4.443331E-06 -1.308832E-03 -4.103970E-07 -2.590108E-03 -2.620429E-06 -5.831777E-03 -4.892875E-06 -5.376268E-03 -5.205758E-06 -9.496856E-03 -1.606537E-05 -7.245952E-03 -7.095242E-06 -7.623819E-03 -1.187689E-05 -5.536252E-03 -5.148443E-06 -1.245396E-02 -2.199505E-05 -7.641760E-03 -1.306388E-05 -1.005116E-02 -1.904677E-05 -1.159156E-02 -2.899326E-05 -1.114868E-02 -2.094752E-05 -1.010147E-02 -1.978005E-05 -8.874213E-03 -1.298622E-05 -1.283785E-02 -2.632677E-05 -5.598145E-03 -4.564302E-06 -4.874451E-03 -6.380741E-06 -4.166868E-03 -4.546806E-06 -5.450652E-03 -4.552973E-06 -9.123569E-03 -1.521157E-05 -1.341420E-02 -2.773663E-05 -9.949075E-03 -1.548877E-05 -1.128600E-02 -1.714535E-05 -9.944157E-03 -1.206624E-05 -9.339838E-03 -1.587210E-05 -1.407135E-02 -3.845557E-05 -1.079969E-02 -1.419090E-05 -1.806763E-02 -5.775082E-05 -1.538811E-02 -3.591506E-05 -9.283522E-03 -1.519392E-05 -8.256501E-03 -1.262631E-05 -1.236476E-02 -1.963613E-05 -2.020990E-02 -5.409171E-05 -1.152596E-02 -2.039197E-05 -1.050303E-02 -2.499041E-05 -1.326414E-02 -2.783213E-05 -7.696971E-03 -9.711977E-06 -1.473705E-02 -2.646008E-05 -1.062292E-02 -1.576562E-05 -1.707377E-02 -4.212601E-05 -8.778679E-03 -1.128995E-05 -9.710118E-03 -1.623481E-05 -7.636475E-03 -1.094355E-05 -1.387905E-02 -2.941626E-05 -1.776651E-02 -4.396460E-05 -1.818565E-02 -4.350858E-05 -1.761749E-02 -4.630235E-05 -2.043671E-02 -6.064648E-05 -1.635160E-02 -4.147100E-05 -1.364022E-02 -2.386011E-05 -1.724650E-02 -5.086651E-05 -1.457393E-02 -3.218203E-05 -1.625704E-02 -4.109869E-05 -1.536770E-02 -3.150971E-05 -1.415214E-02 -2.531338E-05 -1.764117E-02 -3.839917E-05 -1.856292E-02 -4.105079E-05 -1.122011E-02 -2.240362E-05 -1.237537E-02 -1.904481E-05 -1.725511E-02 -3.218693E-05 -1.246019E-02 -2.168729E-05 -2.268477E-02 -6.638152E-05 -1.772582E-02 -4.134691E-05 -1.846727E-02 -4.453692E-05 -2.211594E-02 -6.148331E-05 -1.337994E-02 -2.272968E-05 -1.800735E-02 -4.594283E-05 -1.767634E-02 -3.572802E-05 -2.109287E-02 -7.624418E-05 -2.116135E-02 -5.023945E-05 -1.511244E-02 -3.916543E-05 -2.555283E-02 -8.270634E-05 -2.320248E-02 -6.856995E-05 -1.490210E-02 -3.025554E-05 -1.650536E-02 -3.349063E-05 -2.005340E-02 -6.329046E-05 -1.876604E-02 -4.632276E-05 -2.017935E-02 -5.608622E-05 -1.623543E-02 -3.183867E-05 -1.059288E-02 -1.746867E-05 -1.923413E-02 -5.626395E-05 -1.874482E-02 -5.158196E-05 -1.436557E-02 -3.262805E-05 -1.736130E-02 -4.360560E-05 -2.044766E-02 -5.055246E-05 -1.508312E-02 -3.245600E-05 -1.328001E-02 -2.673879E-05 -1.466660E-02 -2.878429E-05 -1.289951E-02 -2.132152E-05 -1.410955E-02 -2.671457E-05 -1.814074E-02 -4.435357E-05 -2.012953E-02 -5.472686E-05 -1.186784E-02 -2.108638E-05 -1.158902E-02 -2.017687E-05 -9.605924E-03 -1.492077E-05 -1.409567E-02 -2.579784E-05 -1.311103E-02 -2.570267E-05 -1.707665E-02 -4.130920E-05 -1.248159E-02 -2.515719E-05 -2.097524E-02 -5.151201E-05 -1.444457E-02 -2.981175E-05 -1.072187E-02 -1.803695E-05 -9.014009E-03 -1.215827E-05 -9.559055E-03 -1.537581E-05 -1.354384E-02 -2.184405E-05 -4.828517E-03 -6.482158E-06 -6.253387E-03 -5.785292E-06 -1.379191E-02 -2.710641E-05 -1.011815E-02 -1.374848E-05 -1.342278E-02 -3.152030E-05 -8.883639E-03 -1.651249E-05 -1.847885E-02 -6.016422E-05 -8.586243E-03 -1.066056E-05 -6.968205E-03 -8.792141E-06 -1.218017E-02 -2.375039E-05 -4.288567E-03 -2.617468E-06 -6.568856E-03 -6.417620E-06 -9.364388E-03 -1.515485E-05 -7.810927E-03 -9.503941E-06 -1.316444E-02 -2.494672E-05 -8.772821E-03 -1.075467E-05 -9.114583E-03 -1.293064E-05 -5.120610E-03 -5.597666E-06 -1.156077E-02 -2.090644E-05 -1.044752E-02 -1.460984E-05 -4.306774E-03 -7.024156E-06 -6.743680E-03 -9.397053E-06 -1.132063E-02 -2.916783E-05 -9.875394E-03 -1.234227E-05 -8.066518E-03 -1.631648E-05 -1.197445E-02 -2.795662E-05 -1.196930E-02 -2.592654E-05 -1.424965E-02 -2.937215E-05 -9.362177E-03 -1.637802E-05 -1.115631E-02 -2.100489E-05 -6.612368E-03 -1.091592E-05 -1.030811E-02 -2.480048E-05 -1.024176E-02 -1.540918E-05 -8.799976E-03 -1.413045E-05 -1.817266E-02 -5.223457E-05 -1.320418E-02 -2.287606E-05 -1.190482E-02 -2.042598E-05 -1.296875E-02 -2.780267E-05 -1.250433E-02 -2.092242E-05 -1.114237E-02 -1.800945E-05 -1.312112E-02 -2.394975E-05 -1.206217E-02 -2.206129E-05 -1.913237E-02 -5.391475E-05 -2.015987E-02 -4.368668E-05 -1.126423E-02 -1.875823E-05 -1.360231E-02 -2.402648E-05 -1.853506E-02 -4.518491E-05 -1.582011E-02 -3.202477E-05 -1.750058E-02 -4.932715E-05 -1.849790E-02 -5.325631E-05 -2.129000E-02 -5.323882E-05 -1.294333E-02 -2.153410E-05 -2.386151E-02 -7.053393E-05 -2.237759E-02 -6.198345E-05 -1.402168E-02 -3.040550E-05 -2.166707E-02 -7.200843E-05 -1.815377E-02 -4.704586E-05 -2.159074E-02 -9.800484E-05 -2.096789E-02 -5.417603E-05 -2.036776E-02 -5.114163E-05 -1.950805E-02 -5.196224E-05 -1.203115E-02 -2.466652E-05 -2.375017E-02 -7.101139E-05 -2.078435E-02 -4.980028E-05 -1.967736E-02 -5.349609E-05 -1.492202E-02 -3.151061E-05 -2.448505E-02 -7.345642E-05 -2.875745E-02 -9.624049E-05 -1.308936E-02 -2.260928E-05 -1.883770E-02 -5.294121E-05 -2.132133E-02 -6.019067E-05 -2.681408E-02 -8.810170E-05 -1.857403E-02 -3.926673E-05 -1.774032E-02 -4.025585E-05 -2.588771E-02 -8.059759E-05 -2.050194E-02 -4.648784E-05 -2.612192E-02 -8.558295E-05 -1.686319E-02 -3.786866E-05 -2.745753E-02 -9.703052E-05 -2.602614E-02 -7.340705E-05 -2.099702E-02 -6.252305E-05 -2.411550E-02 -6.674417E-05 -2.570206E-02 -6.917677E-05 -2.753425E-02 -1.088979E-04 -2.289782E-02 -6.832742E-05 -1.728790E-02 -4.390010E-05 -2.345865E-02 -7.335296E-05 -1.670224E-02 -4.918814E-05 -2.958698E-02 -1.008389E-04 -2.262155E-02 -8.019776E-05 -2.171260E-02 -5.857256E-05 -2.739550E-02 -9.699654E-05 -1.898108E-02 -5.073772E-05 -2.158139E-02 -5.640212E-05 -2.653056E-02 -9.005949E-05 -2.557757E-02 -8.651930E-05 -1.719263E-02 -3.746877E-05 -1.270461E-02 -2.702019E-05 -2.371990E-02 -6.567867E-05 -2.133774E-02 -5.624387E-05 -2.412439E-02 -8.327847E-05 -2.144516E-02 -5.810134E-05 -2.096771E-02 -5.764847E-05 -2.010218E-02 -6.106688E-05 -2.662466E-02 -1.031716E-04 -2.128503E-02 -6.330504E-05 -2.077576E-02 -5.659759E-05 -1.910625E-02 -4.810183E-05 -1.994507E-02 -5.522830E-05 -1.318359E-02 -2.202071E-05 -1.847673E-02 -3.890771E-05 -1.525363E-02 -3.383373E-05 -2.323360E-02 -7.009641E-05 -2.160465E-02 -6.270896E-05 -2.815837E-02 -9.926554E-05 -2.825700E-02 -1.156243E-04 -1.661438E-02 -3.352935E-05 -1.707558E-02 -4.079662E-05 -1.663970E-02 -5.171770E-05 -1.537161E-02 -3.951696E-05 -1.515887E-02 -2.815234E-05 -1.262479E-02 -2.666049E-05 -2.270831E-02 -7.402779E-05 -1.637425E-02 -3.359896E-05 -1.433044E-02 -3.016015E-05 -1.086052E-02 -2.105095E-05 -1.827948E-02 -5.404440E-05 -1.512356E-02 -4.090325E-05 -1.341869E-02 -3.777277E-05 -1.144273E-02 -2.320403E-05 -1.032338E-02 -2.111004E-05 -1.324432E-02 -2.369582E-05 -1.323267E-02 -2.312589E-05 -7.378365E-03 -1.207116E-05 -1.198900E-02 -2.410816E-05 -1.143776E-02 -1.697429E-05 -5.960596E-03 -5.491388E-06 -8.671020E-03 -1.423578E-05 -1.046649E-02 -1.660152E-05 -1.015412E-02 -1.356611E-05 -4.437919E-03 -4.449282E-06 -8.070532E-03 -1.158768E-05 -1.339134E-02 -2.307637E-05 -1.588497E-02 -3.768975E-05 -9.869781E-03 -2.027492E-05 -1.346984E-02 -2.839713E-05 -1.481565E-02 -2.641963E-05 -1.622974E-02 -3.155688E-05 -1.228654E-02 -2.276535E-05 -9.854382E-03 -2.229720E-05 -8.655941E-03 -1.144096E-05 -8.579998E-03 -1.286624E-05 -1.701319E-02 -3.924030E-05 -9.817319E-03 -1.540490E-05 -2.169451E-02 -7.317248E-05 -2.105716E-02 -5.189702E-05 -1.963335E-02 -5.619116E-05 -2.183187E-02 -6.185293E-05 -1.721212E-02 -3.966296E-05 -1.657518E-02 -3.547912E-05 -1.888518E-02 -5.599282E-05 -1.856419E-02 -5.261571E-05 -2.022215E-02 -6.235701E-05 -1.750049E-02 -3.437263E-05 -2.144519E-02 -5.816976E-05 -1.487741E-02 -2.693460E-05 -1.556861E-02 -3.808581E-05 -2.287702E-02 -6.471426E-05 -1.502995E-02 -3.547384E-05 -2.333943E-02 -7.259310E-05 -1.682037E-02 -3.512266E-05 -1.559563E-02 -3.813310E-05 -2.534274E-02 -7.364335E-05 -2.480122E-02 -7.936460E-05 -1.877264E-02 -4.302495E-05 -2.255108E-02 -6.304951E-05 -1.327871E-02 -2.341276E-05 -1.978158E-02 -5.064958E-05 -2.719711E-02 -8.697999E-05 -3.450441E-02 -1.360084E-04 -2.418992E-02 -8.130715E-05 -2.755861E-02 -9.435699E-05 -2.906789E-02 -1.164895E-04 -2.492886E-02 -9.051357E-05 -2.149004E-02 -5.322652E-05 -1.882200E-02 -4.828092E-05 -3.559788E-02 -1.520518E-04 -2.750436E-02 -8.574229E-05 -2.225856E-02 -5.803244E-05 -2.338675E-02 -7.020780E-05 -3.715161E-02 -1.672352E-04 -2.832183E-02 -9.613959E-05 -3.620891E-02 -1.820751E-04 -1.842315E-02 -4.292893E-05 -3.073714E-02 -1.167359E-04 -2.239778E-02 -6.910113E-05 -3.816869E-02 -1.838537E-04 -3.039700E-02 -1.010395E-04 -2.746450E-02 -9.520787E-05 -2.678376E-02 -8.958685E-05 -1.959265E-02 -4.827447E-05 -2.161190E-02 -5.224194E-05 -2.866820E-02 -9.300929E-05 -3.051657E-02 -1.108463E-04 -2.779434E-02 -9.578374E-05 -2.381065E-02 -7.364073E-05 -3.580671E-02 -1.702522E-04 -3.245610E-02 -1.420184E-04 -3.074561E-02 -1.162297E-04 -2.368174E-02 -7.463994E-05 -3.053229E-02 -1.165041E-04 -2.791292E-02 -9.751321E-05 -1.851477E-02 -4.170606E-05 -2.647316E-02 -8.255669E-05 -2.688714E-02 -9.392494E-05 -3.140666E-02 -1.096021E-04 -2.467545E-02 -7.718465E-05 -1.941157E-02 -5.524811E-05 -3.374306E-02 -1.292663E-04 -2.025089E-02 -5.179623E-05 -2.535741E-02 -7.702579E-05 -2.469316E-02 -7.765177E-05 -2.952585E-02 -9.607704E-05 -2.637948E-02 -7.897857E-05 -2.244297E-02 -6.198303E-05 -2.299365E-02 -6.928750E-05 -2.384571E-02 -7.218845E-05 -3.265249E-02 -1.473318E-04 -2.949982E-02 -1.044208E-04 -2.330464E-02 -7.007243E-05 -1.937666E-02 -4.990461E-05 -1.836576E-02 -3.977508E-05 -2.200706E-02 -5.431158E-05 -1.760216E-02 -3.954597E-05 -2.161653E-02 -5.051231E-05 -2.685593E-02 -8.262522E-05 -2.031027E-02 -5.469024E-05 -1.729977E-02 -3.470083E-05 -2.245610E-02 -6.463192E-05 -2.480332E-02 -6.706820E-05 -1.636383E-02 -3.512895E-05 -1.629117E-02 -3.227987E-05 -1.777456E-02 -3.877314E-05 -1.523888E-02 -2.794713E-05 -1.933720E-02 -5.130630E-05 -2.073569E-02 -5.667785E-05 -2.159324E-02 -5.953356E-05 -2.252773E-02 -7.064923E-05 -1.497171E-02 -3.139235E-05 -1.702700E-02 -3.702921E-05 -1.197831E-02 -2.110040E-05 -1.326288E-02 -2.668205E-05 -9.877691E-03 -1.417188E-05 -9.222468E-03 -1.493126E-05 -1.916119E-02 -5.100381E-05 -1.618530E-02 -3.741295E-05 -9.744935E-03 -1.312151E-05 -4.205073E-03 -5.238984E-06 -1.606532E-02 -3.801359E-05 -1.115862E-02 -2.015015E-05 -1.312318E-02 -3.970688E-05 -1.092582E-02 -1.677629E-05 -8.988789E-03 -1.272128E-05 -1.116462E-02 -1.435361E-05 -1.177363E-02 -2.013606E-05 -1.392896E-02 -3.825189E-05 -7.595272E-03 -1.080161E-05 -1.243058E-02 -1.937258E-05 -8.823743E-03 -1.585993E-05 -1.072892E-02 -2.225554E-05 -9.610737E-03 -1.152464E-05 -7.143175E-03 -1.112162E-05 -9.471167E-03 -1.466213E-05 -1.060489E-02 -1.784667E-05 -2.767925E-02 -9.174943E-05 -1.613735E-02 -3.391468E-05 -1.980520E-02 -6.099070E-05 -2.710790E-02 -1.005842E-04 -1.498945E-02 -3.548209E-05 -2.090399E-02 -6.229284E-05 -1.867828E-02 -5.023418E-05 -2.101525E-02 -5.304849E-05 -1.495603E-02 -3.564927E-05 -2.206499E-02 -8.477764E-05 -1.774373E-02 -4.204463E-05 -1.321048E-02 -2.339091E-05 -3.032303E-02 -1.133561E-04 -2.906158E-02 -1.116010E-04 -1.416547E-02 -3.074243E-05 -2.396880E-02 -6.563656E-05 -2.277934E-02 -6.079700E-05 -1.978949E-02 -5.275993E-05 -2.518782E-02 -7.984951E-05 -2.706826E-02 -9.202956E-05 -2.708490E-02 -9.059865E-05 -1.986295E-02 -4.689709E-05 -2.616568E-02 -8.883803E-05 -2.130847E-02 -6.518411E-05 -2.806912E-02 -8.769554E-05 -3.084102E-02 -1.172123E-04 -2.897371E-02 -1.021030E-04 -2.903836E-02 -1.108727E-04 -2.605433E-02 -8.468280E-05 -2.332233E-02 -6.130579E-05 -3.234471E-02 -1.225845E-04 -3.300429E-02 -1.500123E-04 -2.311117E-02 -6.190932E-05 -2.436504E-02 -7.178823E-05 -3.008481E-02 -1.005979E-04 -1.928369E-02 -4.312116E-05 -3.011679E-02 -1.179304E-04 -4.008683E-02 -1.751489E-04 -3.496459E-02 -1.796935E-04 -3.097461E-02 -1.095044E-04 -2.638565E-02 -8.181552E-05 -2.620917E-02 -8.987429E-05 -3.998881E-02 -1.948994E-04 -3.258728E-02 -1.341640E-04 -2.561706E-02 -9.239575E-05 -2.588589E-02 -8.721515E-05 -2.944746E-02 -1.052164E-04 -2.989662E-02 -1.085775E-04 -4.206933E-02 -1.998885E-04 -4.066845E-02 -1.897463E-04 -3.508215E-02 -1.528988E-04 -3.120069E-02 -1.132167E-04 -3.286119E-02 -1.352262E-04 -2.909519E-02 -9.371026E-05 -3.840859E-02 -1.674324E-04 -2.454802E-02 -8.382699E-05 -3.347874E-02 -1.411597E-04 -3.060526E-02 -1.367041E-04 -3.069666E-02 -1.180094E-04 -2.561383E-02 -8.330685E-05 -2.628522E-02 -7.556832E-05 -3.582384E-02 -1.465406E-04 -2.376316E-02 -6.457049E-05 -2.495648E-02 -7.422669E-05 -3.093179E-02 -1.305765E-04 -2.264932E-02 -6.586890E-05 -2.047598E-02 -6.261296E-05 -1.933007E-02 -4.833006E-05 -3.257759E-02 -1.237865E-04 -2.571050E-02 -9.464525E-05 -2.463103E-02 -7.258362E-05 -2.557654E-02 -9.353236E-05 -2.284662E-02 -6.268018E-05 -2.491527E-02 -7.859483E-05 -1.681318E-02 -3.501371E-05 -1.365219E-02 -2.989006E-05 -2.210617E-02 -7.141867E-05 -1.271132E-02 -2.094510E-05 -1.683888E-02 -3.625752E-05 -2.058113E-02 -5.450372E-05 -1.739717E-02 -3.555630E-05 -1.829530E-02 -4.644023E-05 -1.776594E-02 -4.124796E-05 -1.418883E-02 -2.672278E-05 -1.760442E-02 -4.591128E-05 -1.891750E-02 -4.822430E-05 -2.178972E-02 -6.432900E-05 -1.443029E-02 -3.016588E-05 -2.256303E-02 -6.869229E-05 -2.251806E-02 -6.650662E-05 -1.323995E-02 -2.512378E-05 -1.335985E-02 -2.654692E-05 -1.740401E-02 -4.340090E-05 -1.330095E-02 -2.489342E-05 -1.207888E-02 -2.391548E-05 -1.667832E-02 -4.429778E-05 -1.489741E-02 -3.841273E-05 -1.143220E-02 -2.495364E-05 -1.240317E-02 -2.477660E-05 -1.342275E-02 -2.581056E-05 -1.621941E-02 -4.158232E-05 -1.159374E-02 -2.088416E-05 -9.404397E-03 -1.695010E-05 -1.056534E-02 -1.863945E-05 -1.162004E-02 -2.136658E-05 -1.095144E-02 -1.546737E-05 -1.144118E-02 -2.034439E-05 -1.322456E-02 -2.558634E-05 -1.172292E-02 -1.883806E-05 -8.086459E-03 -8.879405E-06 -9.613483E-03 -1.997653E-05 -9.179038E-03 -1.284128E-05 -1.897153E-02 -6.588307E-05 -1.524499E-02 -3.816344E-05 -1.007550E-02 -2.293895E-05 -1.297928E-02 -3.448976E-05 -6.475985E-03 -7.421175E-06 -7.302236E-03 -9.360854E-06 -1.268448E-02 -2.201962E-05 -1.331579E-02 -2.325496E-05 -1.816213E-02 -4.264316E-05 -1.951988E-02 -5.119100E-05 -1.565522E-02 -3.615086E-05 -2.309450E-02 -9.333193E-05 -1.557690E-02 -3.930051E-05 -9.451777E-03 -1.526280E-05 -2.041329E-02 -5.032056E-05 -2.673356E-02 -9.468703E-05 -1.094269E-02 -1.894088E-05 -1.679176E-02 -3.840079E-05 -1.732446E-02 -4.238174E-05 -1.027564E-02 -2.013019E-05 -1.861457E-02 -4.141552E-05 -2.507166E-02 -6.889370E-05 -2.041729E-02 -4.876339E-05 -2.283941E-02 -6.377266E-05 -1.892643E-02 -4.163099E-05 -2.187765E-02 -5.763946E-05 -2.028538E-02 -6.131503E-05 -2.103645E-02 -5.318838E-05 -1.715798E-02 -3.499249E-05 -1.485800E-02 -3.358359E-05 -1.984948E-02 -5.445579E-05 -1.703301E-02 -4.679668E-05 -3.309820E-02 -1.234499E-04 -2.275776E-02 -6.157529E-05 -3.261448E-02 -1.319771E-04 -2.554946E-02 -8.196680E-05 -2.004888E-02 -4.990133E-05 -1.939965E-02 -6.076153E-05 -2.548646E-02 -8.064466E-05 -2.855104E-02 -1.012305E-04 -2.762007E-02 -1.037910E-04 -1.839340E-02 -4.279463E-05 -1.686751E-02 -4.608015E-05 -2.084644E-02 -5.002926E-05 -4.132950E-02 -1.846233E-04 -3.460120E-02 -1.298466E-04 -3.552467E-02 -1.570092E-04 -2.933106E-02 -9.609808E-05 -2.684190E-02 -7.922498E-05 -2.487139E-02 -6.891792E-05 -3.728495E-02 -1.689194E-04 -2.818457E-02 -8.676068E-05 -3.441368E-02 -1.333471E-04 -2.818973E-02 -1.038355E-04 -2.356477E-02 -6.812284E-05 -2.343339E-02 -6.179023E-05 -4.344270E-02 -2.389724E-04 -4.294905E-02 -2.093287E-04 -3.836620E-02 -1.778263E-04 -2.841149E-02 -8.871119E-05 -4.014563E-02 -1.768024E-04 -2.920772E-02 -1.000217E-04 -2.615172E-02 -8.720279E-05 -2.000501E-02 -4.816703E-05 -4.057421E-02 -1.875221E-04 -2.445887E-02 -8.924764E-05 -2.817821E-02 -8.605351E-05 -2.110986E-02 -5.069715E-05 -2.927821E-02 -9.308711E-05 -3.362175E-02 -1.332596E-04 -3.475808E-02 -1.323338E-04 -3.289085E-02 -1.244729E-04 -3.022584E-02 -1.318809E-04 -3.196364E-02 -1.297968E-04 -1.687072E-02 -3.179809E-05 -1.801683E-02 -4.078604E-05 -2.960756E-02 -1.160952E-04 -3.466058E-02 -1.382880E-04 -2.412524E-02 -9.376449E-05 -3.370586E-02 -1.749860E-04 -1.744924E-02 -4.569761E-05 -2.327075E-02 -7.176336E-05 -2.067060E-02 -5.038568E-05 -2.065122E-02 -5.674893E-05 -1.185396E-02 -1.904589E-05 -1.187338E-02 -1.832962E-05 -1.361451E-02 -2.819447E-05 -1.785195E-02 -4.401066E-05 -2.526233E-02 -8.640741E-05 -1.793604E-02 -5.730915E-05 -1.571041E-02 -3.175367E-05 -1.678219E-02 -3.936420E-05 -1.486918E-02 -3.526965E-05 -2.794130E-02 -1.195339E-04 -1.996768E-02 -7.226779E-05 -1.162384E-02 -2.197081E-05 -2.096325E-02 -5.793563E-05 -1.837867E-02 -4.515139E-05 -1.703731E-02 -3.926907E-05 -1.268651E-02 -2.343106E-05 -1.879725E-02 -4.716744E-05 -1.709910E-02 -3.710250E-05 -1.228622E-02 -3.339394E-05 -1.352711E-02 -2.975058E-05 -1.155424E-02 -1.880536E-05 -1.121092E-02 -2.205103E-05 -1.476077E-02 -3.330714E-05 -1.255099E-02 -2.385469E-05 -1.347481E-02 -2.408221E-05 -1.470344E-02 -2.583766E-05 -9.187814E-03 -1.701394E-05 -1.028524E-02 -2.190585E-05 -1.204921E-02 -2.386486E-05 -1.214004E-02 -1.925520E-05 -1.294814E-02 -2.325545E-05 -1.470310E-02 -3.633457E-05 -7.703457E-03 -8.319661E-06 -9.053019E-03 -1.860099E-05 -3.939164E-03 -3.269741E-06 -9.533908E-03 -1.325293E-05 -1.227483E-02 -2.491268E-05 -1.259791E-02 -2.146362E-05 -4.323047E-03 -3.283543E-06 -9.255709E-03 -2.197638E-05 -4.603184E-03 -3.514783E-06 -4.229364E-03 -6.002727E-06 -1.275699E-02 -2.227133E-05 -1.051975E-02 -1.875691E-05 -1.939046E-02 -4.923847E-05 -1.621043E-02 -4.902401E-05 -1.162276E-02 -2.501804E-05 -1.178308E-02 -2.464996E-05 -1.264103E-02 -2.350170E-05 -1.829675E-02 -4.158987E-05 -1.935990E-02 -4.658558E-05 -2.050484E-02 -5.542682E-05 -1.261518E-02 -2.496199E-05 -2.338316E-02 -6.665179E-05 -1.422276E-02 -2.677276E-05 -1.418978E-02 -3.508840E-05 -3.161101E-02 -1.103014E-04 -2.806809E-02 -9.416094E-05 -1.970337E-02 -5.207680E-05 -2.017517E-02 -5.029958E-05 -2.476977E-02 -9.671590E-05 -1.993423E-02 -5.639950E-05 -2.220619E-02 -5.949033E-05 -2.663071E-02 -8.742719E-05 -1.716007E-02 -3.560277E-05 -1.620846E-02 -3.298124E-05 -2.027814E-02 -5.137992E-05 -2.241055E-02 -6.475298E-05 -3.149111E-02 -1.240574E-04 -3.301990E-02 -1.297806E-04 -2.289529E-02 -7.022820E-05 -2.770187E-02 -1.305531E-04 -2.647167E-02 -8.125885E-05 -2.470047E-02 -6.618469E-05 -1.972532E-02 -5.720249E-05 -2.301743E-02 -6.802664E-05 -1.851738E-02 -4.051694E-05 -1.781820E-02 -3.908008E-05 -2.011234E-02 -4.945371E-05 -1.788427E-02 -4.535953E-05 -3.355984E-02 -1.399308E-04 -3.141513E-02 -1.324421E-04 -3.123214E-02 -1.131961E-04 -2.990237E-02 -1.043368E-04 -2.483001E-02 -7.814014E-05 -2.780841E-02 -9.315514E-05 -2.944866E-02 -1.125594E-04 -3.115948E-02 -1.382235E-04 -3.135984E-02 -1.125014E-04 -2.632324E-02 -9.453811E-05 -3.001476E-02 -1.041868E-04 -2.694256E-02 -8.321200E-05 -2.693560E-02 -7.578608E-05 -3.360780E-02 -1.359544E-04 -3.373802E-02 -1.372586E-04 -2.236018E-02 -6.411192E-05 -2.962695E-02 -1.020105E-04 -2.783038E-02 -9.884369E-05 -2.407145E-02 -7.259162E-05 -2.611296E-02 -9.023141E-05 -3.127878E-02 -1.135229E-04 -2.950226E-02 -9.691197E-05 -2.305590E-02 -6.460450E-05 -2.321268E-02 -7.274626E-05 -2.804961E-02 -9.491270E-05 -2.841803E-02 -1.054470E-04 -2.423205E-02 -7.810874E-05 -2.714164E-02 -9.975157E-05 -2.873229E-02 -1.122814E-04 -2.098758E-02 -5.056677E-05 -2.557067E-02 -8.748635E-05 -2.267297E-02 -8.906984E-05 -2.139317E-02 -5.463244E-05 -2.294894E-02 -7.412557E-05 -1.571457E-02 -3.620884E-05 -2.240494E-02 -5.721050E-05 -2.805329E-02 -9.134972E-05 -3.310961E-02 -1.309241E-04 -1.731055E-02 -3.757453E-05 -1.519094E-02 -3.101001E-05 -3.089642E-02 -1.273235E-04 -2.655794E-02 -1.020322E-04 -1.930391E-02 -4.470231E-05 -1.322122E-02 -2.280479E-05 -2.267352E-02 -6.781380E-05 -2.377301E-02 -7.062640E-05 -1.061766E-02 -1.383149E-05 -1.989374E-02 -6.361786E-05 -2.625067E-02 -9.026084E-05 -2.498518E-02 -8.804371E-05 -2.106620E-02 -5.099756E-05 -1.201370E-02 -2.098230E-05 -2.562363E-02 -8.111943E-05 -1.462361E-02 -2.865648E-05 -2.187381E-02 -5.860668E-05 -1.613482E-02 -4.384305E-05 -1.621606E-02 -3.449398E-05 -1.444365E-02 -3.579161E-05 -1.323646E-02 -2.542031E-05 -1.061139E-02 -1.881978E-05 -8.801940E-03 -1.018150E-05 -1.139983E-02 -2.019736E-05 -1.681598E-02 -3.690065E-05 -1.399493E-02 -3.175563E-05 -1.420691E-02 -2.466458E-05 -1.368415E-02 -2.617814E-05 -4.389391E-03 -3.790342E-06 -8.841774E-03 -1.306452E-05 -6.705949E-03 -6.428293E-06 -3.807333E-03 -3.521598E-06 -8.526487E-03 -1.179686E-05 -6.365036E-03 -6.849920E-06 -9.633887E-03 -1.541102E-05 -1.123781E-02 -1.889506E-05 -6.073970E-03 -7.042592E-06 -5.473005E-03 -4.622656E-06 -9.289202E-03 -1.795737E-05 -1.030725E-02 -2.040465E-05 -6.753476E-03 -7.775016E-06 -5.874996E-03 -7.699447E-06 -4.803223E-03 -5.048987E-06 -9.387232E-03 -2.256112E-05 -6.779777E-03 -7.696560E-06 -7.302784E-03 -1.204717E-05 -1.858153E-02 -4.240154E-05 -1.133429E-02 -1.757188E-05 -1.090884E-02 -1.956959E-05 -1.761310E-02 -4.472462E-05 -1.208597E-02 -2.241660E-05 -8.447260E-03 -1.837826E-05 -2.154735E-02 -7.183466E-05 -1.059584E-02 -1.725144E-05 -1.078223E-02 -1.741743E-05 -1.142825E-02 -1.725056E-05 -8.052096E-03 -1.288141E-05 -8.852506E-03 -1.479325E-05 -1.503791E-02 -2.827810E-05 -1.427595E-02 -2.627358E-05 -1.151486E-02 -1.821048E-05 -1.479919E-02 -3.026089E-05 -1.396424E-02 -2.976716E-05 -1.102878E-02 -1.569768E-05 -1.486600E-02 -4.640833E-05 -2.329305E-02 -6.388242E-05 -1.077778E-02 -2.630229E-05 -1.187595E-02 -2.158652E-05 -1.706939E-02 -3.589833E-05 -9.894219E-03 -1.748099E-05 -2.294330E-02 -6.429613E-05 -2.112393E-02 -5.525797E-05 -1.888943E-02 -4.229674E-05 -1.872573E-02 -5.200290E-05 -2.190997E-02 -6.830515E-05 -1.857860E-02 -5.271689E-05 -1.824118E-02 -4.252719E-05 -1.695109E-02 -4.377846E-05 -1.942043E-02 -4.638640E-05 -2.430706E-02 -8.617790E-05 -1.728181E-02 -4.311630E-05 -1.163790E-02 -2.136880E-05 -2.488767E-02 -7.230908E-05 -2.919997E-02 -9.955761E-05 -2.584993E-02 -1.031623E-04 -2.268255E-02 -6.949158E-05 -3.146416E-02 -1.268057E-04 -2.236165E-02 -6.966628E-05 -2.724737E-02 -9.874601E-05 -2.224496E-02 -7.784128E-05 -2.189895E-02 -6.090239E-05 -1.839473E-02 -4.209614E-05 -2.542360E-02 -8.396121E-05 -2.052856E-02 -4.913619E-05 -3.120344E-02 -1.291172E-04 -2.944557E-02 -1.038017E-04 -3.259220E-02 -1.571837E-04 -2.454004E-02 -8.331616E-05 -2.553435E-02 -9.440752E-05 -2.541943E-02 -9.586937E-05 -2.061350E-02 -7.364042E-05 -2.329153E-02 -9.064116E-05 -2.078416E-02 -4.749189E-05 -2.761182E-02 -8.657370E-05 -2.266317E-02 -6.326775E-05 -2.686321E-02 -1.043542E-04 -2.182754E-02 -7.805811E-05 -2.766205E-02 -9.723951E-05 -1.892390E-02 -5.005671E-05 -2.382207E-02 -6.769044E-05 -2.015930E-02 -6.032256E-05 -1.427037E-02 -3.798052E-05 -1.767507E-02 -6.512871E-05 -2.123882E-02 -4.907487E-05 -2.157816E-02 -6.678135E-05 -1.919870E-02 -5.942855E-05 -2.192776E-02 -5.912113E-05 -1.744859E-02 -5.000179E-05 -1.577374E-02 -3.368332E-05 -2.305821E-02 -6.854360E-05 -2.058939E-02 -5.959718E-05 -1.350163E-02 -3.072943E-05 -1.774684E-02 -4.504160E-05 -1.929554E-02 -5.149838E-05 -1.225057E-02 -1.846451E-05 -1.522995E-02 -3.345735E-05 -1.488842E-02 -2.657892E-05 -1.308637E-02 -2.575083E-05 -1.550443E-02 -4.365385E-05 -1.262294E-02 -2.496948E-05 -2.022153E-02 -5.150955E-05 -2.016439E-02 -5.276144E-05 -1.850133E-02 -4.648369E-05 -9.903588E-03 -1.610212E-05 -1.242472E-02 -2.311415E-05 -1.448322E-02 -3.103193E-05 -1.821292E-02 -6.275309E-05 -1.275608E-02 -5.475363E-05 -1.800193E-02 -4.234061E-05 -8.782455E-03 -1.649077E-05 -1.220656E-02 -2.499398E-05 -1.247528E-02 -3.099809E-05 -4.915298E-03 -5.476965E-06 -9.391788E-03 -1.606380E-05 -6.771266E-03 -8.450336E-06 -5.095855E-03 -3.842657E-06 -1.019612E-02 -1.603701E-05 -1.266368E-02 -2.593740E-05 -1.437121E-03 -9.237680E-07 -7.738730E-03 -1.337549E-05 -1.101810E-02 -1.737730E-05 -3.189798E-03 -4.831494E-06 -8.313307E-03 -1.236384E-05 -4.760766E-03 -2.835247E-06 -8.211101E-03 -1.004626E-05 -4.023937E-03 -3.045420E-06 -3.795398E-03 -3.753905E-06 -6.439348E-03 -6.445882E-06 -8.789930E-03 -9.641461E-06 -1.003210E-02 -1.871561E-05 -7.188383E-03 -7.745644E-06 -8.884373E-03 -1.210321E-05 -4.201731E-03 -3.267512E-06 -6.156152E-03 -6.439386E-06 -6.368503E-03 -6.063000E-06 -5.865149E-03 -6.343581E-06 -8.242843E-03 -1.255409E-05 -6.079907E-03 -8.904171E-06 -1.068165E-02 -1.977482E-05 -9.934550E-03 -1.529904E-05 -9.391801E-03 -1.672164E-05 -9.638027E-03 -1.793124E-05 -1.056323E-02 -2.728241E-05 -7.672750E-03 -1.245311E-05 -5.340667E-03 -9.209395E-06 -1.355760E-02 -6.094725E-05 -8.047003E-03 -9.586050E-06 -1.285221E-02 -3.064011E-05 -1.569140E-02 -3.403460E-05 -1.271345E-02 -2.195068E-05 -1.226525E-02 -2.591890E-05 -1.571067E-02 -3.670153E-05 -1.000122E-02 -2.251836E-05 -1.263608E-02 -2.857491E-05 -1.467989E-02 -3.065952E-05 -1.992801E-02 -5.197568E-05 -1.634631E-02 -3.854791E-05 -9.765387E-03 -1.929348E-05 -1.567478E-02 -4.572326E-05 -1.122681E-02 -1.875141E-05 -1.438219E-02 -2.962331E-05 -2.198487E-02 -5.569638E-05 -1.350017E-02 -2.505385E-05 -1.864402E-02 -5.207299E-05 -1.588104E-02 -4.725574E-05 -1.091009E-02 -1.886410E-05 -2.047245E-02 -6.638244E-05 -1.595713E-02 -4.444025E-05 -1.240157E-02 -1.827292E-05 -8.920440E-03 -1.437145E-05 -1.325339E-02 -2.805692E-05 -1.008187E-02 -1.747750E-05 -1.944508E-02 -6.365499E-05 -2.320316E-02 -7.205046E-05 -2.067013E-02 -4.788913E-05 -1.843860E-02 -4.912723E-05 -2.314076E-02 -7.987697E-05 -2.082200E-02 -6.799905E-05 -1.477196E-02 -2.747397E-05 -1.645001E-02 -3.474675E-05 -2.251395E-02 -7.952533E-05 -1.283424E-02 -2.565340E-05 -1.302741E-02 -2.183293E-05 -1.627063E-02 -3.188570E-05 -1.694690E-02 -4.854666E-05 -1.768424E-02 -4.519650E-05 -1.688309E-02 -3.658427E-05 -2.081183E-02 -4.936469E-05 -1.521899E-02 -3.630188E-05 -1.538105E-02 -4.012152E-05 -1.852161E-02 -4.542222E-05 -2.027891E-02 -7.078559E-05 -1.530632E-02 -4.004295E-05 -1.251099E-02 -2.014674E-05 -1.766586E-02 -3.643771E-05 -1.011259E-02 -1.798254E-05 -1.785577E-02 -4.209205E-05 -1.591733E-02 -2.948407E-05 -1.973149E-02 -5.858390E-05 -2.318672E-02 -6.821666E-05 -1.606927E-02 -3.208169E-05 -1.561903E-02 -3.274947E-05 -8.671178E-03 -1.320312E-05 -1.321121E-02 -2.770105E-05 -1.276830E-02 -2.392358E-05 -8.675945E-03 -1.600673E-05 -1.631955E-02 -3.628609E-05 -1.268176E-02 -2.698295E-05 -1.305170E-02 -3.392622E-05 -1.151833E-02 -2.146481E-05 -1.382454E-02 -2.543511E-05 -1.268190E-02 -2.770093E-05 -1.670138E-02 -4.515019E-05 -1.411501E-02 -2.397072E-05 -1.054121E-02 -1.734424E-05 -1.038572E-02 -1.525222E-05 -1.239423E-02 -1.885637E-05 -8.231991E-03 -1.095003E-05 -1.346736E-02 -2.994113E-05 -1.282791E-02 -2.684630E-05 -1.377004E-02 -3.238869E-05 -1.142596E-02 -1.735764E-05 -1.062508E-02 -1.743282E-05 -1.257942E-02 -2.057274E-05 -1.169000E-02 -2.474569E-05 -6.423798E-03 -8.173196E-06 -7.740555E-03 -1.569990E-05 -8.666292E-03 -1.364526E-05 -1.430519E-02 -3.144468E-05 -1.034424E-02 -1.702524E-05 -1.041966E-02 -1.828082E-05 -7.823260E-03 -1.110455E-05 -7.252199E-03 -9.925677E-06 -2.994718E-03 -1.593375E-06 -1.048984E-02 -2.573976E-05 -5.641360E-03 -5.936595E-06 -5.229774E-03 -7.041393E-06 -9.930813E-03 -1.689201E-05 -4.386542E-03 -4.754619E-06 -5.133633E-03 -4.043150E-06 -3.269722E-03 -1.970563E-06 -4.951504E-03 -6.193676E-06 -4.410157E-03 -4.926957E-06 -8.875217E-03 -1.522029E-05 -6.496616E-03 -8.828653E-06 -5.733530E-03 -7.478095E-06 -4.584225E-03 -3.801824E-06 -5.014833E-03 -4.595598E-06 -4.918988E-03 -9.258105E-06 -5.483056E-03 -9.195257E-06 -5.228430E-03 -7.940306E-06 -5.117645E-03 -7.631754E-06 -5.072391E-03 -5.531082E-06 -3.632197E-03 -2.983079E-06 -4.693965E-03 -5.099544E-06 -2.051996E-03 -1.135888E-06 -7.304764E-03 -1.039220E-05 -3.647755E-03 -4.449912E-06 -3.476959E-03 -2.187942E-06 -9.489533E-03 -2.316279E-05 -5.751162E-03 -8.659685E-06 -4.963073E-03 -5.706592E-06 -6.138111E-03 -1.068804E-05 -9.307217E-03 -1.519475E-05 -4.545925E-03 -6.535861E-06 -8.294344E-03 -1.556852E-05 -7.173393E-03 -9.233319E-06 -1.078215E-02 -1.572789E-05 -9.705333E-03 -3.544244E-05 -7.945812E-03 -1.276101E-05 -1.168294E-02 -2.467022E-05 -6.645644E-03 -7.587545E-06 -5.760001E-03 -9.365634E-06 -8.601051E-03 -1.363162E-05 -8.005982E-03 -1.328267E-05 -1.261419E-02 -3.207736E-05 -5.901262E-03 -6.935112E-06 -6.430185E-03 -9.087951E-06 -6.884844E-03 -8.313889E-06 -4.278770E-03 -3.441959E-06 -1.137804E-02 -2.133967E-05 -1.214381E-02 -2.232652E-05 -1.740437E-02 -3.543180E-05 -1.246386E-02 -2.766736E-05 -1.214083E-02 -1.935442E-05 -1.166031E-02 -2.273794E-05 -1.042912E-02 -2.534376E-05 -1.253440E-02 -2.906078E-05 -3.580466E-03 -2.034018E-06 -9.607729E-03 -1.395640E-05 -9.100903E-03 -1.455039E-05 -5.382398E-03 -1.056575E-05 -1.720209E-02 -4.611390E-05 -1.189486E-02 -2.081478E-05 -2.098921E-02 -5.268336E-05 -1.295792E-02 -2.491469E-05 -1.359035E-02 -2.476233E-05 -1.320672E-02 -2.504384E-05 -1.004322E-02 -1.517085E-05 -6.328234E-03 -7.222517E-06 -7.696931E-03 -8.736384E-06 -9.062335E-03 -1.635044E-05 -1.220397E-02 -2.109811E-05 -9.542900E-03 -1.414586E-05 -2.001020E-02 -5.728709E-05 -1.200225E-02 -1.611148E-05 -1.851644E-02 -5.098601E-05 -1.159430E-02 -2.048997E-05 -1.198809E-02 -2.688531E-05 -1.067777E-02 -1.707832E-05 -1.686877E-02 -4.601130E-05 -1.514223E-02 -3.020548E-05 -9.412452E-03 -1.296937E-05 -8.734687E-03 -1.791696E-05 -7.182753E-03 -7.961564E-06 -7.131070E-03 -8.835775E-06 -1.176780E-02 -2.003672E-05 -1.238591E-02 -1.851917E-05 -1.482210E-02 -4.681620E-05 -8.008500E-03 -8.162099E-06 -1.099128E-02 -1.643104E-05 -1.234719E-02 -2.252478E-05 -9.121398E-03 -1.338217E-05 -9.649799E-03 -1.957300E-05 -1.239326E-02 -2.066867E-05 -7.925470E-03 -9.921111E-06 -6.952410E-03 -1.209167E-05 -1.305189E-02 -2.993481E-05 -1.011683E-02 -1.814412E-05 -9.138673E-03 -1.288657E-05 -9.613647E-03 -1.454996E-05 -9.587432E-03 -1.425997E-05 -4.100970E-03 -3.581979E-06 -6.384398E-03 -9.449653E-06 -5.332770E-03 -4.810910E-06 -8.205597E-03 -1.367429E-05 -4.458035E-03 -3.530187E-06 -3.214674E-03 -1.992488E-06 -6.119990E-03 -6.950277E-06 -4.194752E-03 -3.822292E-06 -7.270772E-03 -8.358483E-06 -7.963665E-03 -1.211727E-05 -1.139690E-02 -2.688370E-05 -1.072253E-02 -1.923075E-05 -9.310029E-03 -2.222401E-05 -6.635931E-03 -6.447355E-06 -6.067077E-03 -9.323989E-06 -6.686810E-03 -6.491688E-06 -7.266522E-03 -7.228635E-06 -2.677445E-03 -2.282809E-06 -7.272519E-03 -9.053976E-06 -5.368115E-03 -6.336538E-06 -3.059467E-03 -2.284551E-06 -3.148000E-03 -2.437724E-06 -3.588594E-03 -3.284908E-06 -4.456313E-03 -7.520958E-06 -2.798347E-03 -2.236317E-06 -6.840217E-03 -9.048482E-06 -1.575769E-03 -9.897286E-07 -2.611268E-03 -1.755955E-06 -1.750700E-03 -1.182162E-06 -2.239940E-03 -2.450046E-06 -1.507196E-03 -1.074090E-06 -6.865521E-03 -7.835832E-06 -2.312288E-03 -2.250952E-06 -4.625802E-03 -5.487129E-06 -2.141186E-03 -9.777142E-07 -1.364855E-03 -9.688473E-07 -3.118005E-03 -3.532909E-06 -2.850409E-03 -1.719105E-06 -3.414722E-03 -2.946427E-06 -5.867545E-03 -6.300551E-06 -3.511602E-03 -3.730751E-06 -2.231751E-03 -2.052805E-06 -2.099977E-03 -1.555011E-06 -2.936833E-03 -2.400849E-06 -5.147373E-03 -6.410685E-06 -9.334636E-03 -1.426974E-05 -5.355177E-03 -5.994759E-06 -5.939796E-03 -1.063177E-05 -5.190027E-03 -5.190207E-06 -5.258137E-03 -4.118191E-06 -6.041649E-03 -6.155598E-06 -5.622082E-03 -4.644624E-06 -1.149290E-02 -2.616444E-05 -7.309708E-03 -8.042562E-06 -3.694461E-03 -3.564990E-06 -6.879292E-03 -1.011779E-05 -9.522458E-03 -1.559720E-05 -5.391999E-03 -4.832231E-06 -5.698037E-03 -5.073533E-06 -1.893957E-03 -1.407429E-06 -7.904603E-03 -1.129256E-05 -5.420913E-03 -6.627464E-06 -6.982381E-03 -6.809893E-06 -6.325870E-03 -7.532835E-06 -4.682244E-03 -3.460830E-06 -6.920599E-03 -8.574244E-06 -3.733359E-03 -3.700527E-06 -4.030359E-03 -3.986131E-06 -5.047907E-03 -4.426148E-06 -9.528005E-03 -1.550618E-05 -7.877900E-03 -1.006685E-05 -9.780723E-03 -1.657015E-05 -4.812077E-03 -4.098229E-06 -7.016687E-03 -7.149177E-06 -4.037284E-03 -3.400182E-06 -3.277155E-03 -2.337977E-06 -6.137543E-03 -6.092367E-06 -6.278125E-03 -9.707219E-06 -2.576720E-03 -3.914988E-06 -4.835272E-03 -7.752895E-06 -6.736014E-03 -7.302508E-06 -6.970854E-03 -6.682760E-06 -6.313642E-03 -5.551521E-06 -7.635449E-03 -8.984939E-06 -8.683849E-03 -1.560378E-05 -7.530787E-03 -9.173765E-06 -1.569516E-02 -3.949851E-05 -1.097068E-02 -2.119987E-05 -7.309184E-03 -7.015811E-06 -8.665715E-03 -1.546974E-05 -7.723895E-03 -1.518562E-05 -4.905466E-03 -4.093288E-06 -1.077564E-02 -2.805109E-05 -8.569399E-03 -1.273736E-05 -1.038612E-02 -1.719585E-05 -7.354212E-03 -8.198097E-06 -9.350739E-03 -1.720908E-05 -4.787259E-03 -6.741535E-06 -7.220875E-03 -8.792305E-06 -5.379919E-03 -5.042148E-06 -8.788109E-03 -1.266781E-05 -7.402327E-03 -7.894813E-06 -4.207623E-03 -3.460121E-06 -7.902663E-03 -9.560483E-06 -5.174573E-03 -4.082169E-06 -1.104658E-02 -2.127916E-05 -5.782523E-03 -5.112492E-06 -3.632634E-03 -2.502751E-06 -5.337278E-03 -4.486802E-06 -4.249421E-03 -4.213447E-06 -7.491058E-03 -9.439118E-06 -5.243136E-03 -5.575342E-06 -1.237618E-02 -2.148757E-05 -8.041605E-03 -1.026055E-05 -6.349704E-03 -1.417430E-05 -6.087425E-03 -8.075635E-06 -4.602367E-03 -3.651645E-06 -4.154919E-03 -5.935728E-06 -1.040123E-02 -1.813267E-05 -8.425233E-03 -1.322959E-05 -5.094732E-03 -6.066657E-06 -3.282128E-03 -2.438795E-06 -4.478721E-03 -5.352957E-06 -4.621930E-03 -3.979448E-06 -3.591134E-03 -3.542812E-06 -3.931582E-03 -3.195193E-06 -7.517289E-03 -1.202563E-05 -4.445629E-03 -3.532948E-06 -5.122199E-03 -4.733178E-06 -6.079088E-03 -5.645343E-06 -5.005001E-03 -5.722868E-06 -4.017636E-03 -3.624033E-06 -3.326000E-03 -2.420695E-06 -3.011641E-03 -3.505638E-06 -2.136977E-03 -8.951049E-07 -1.175447E-03 -4.124064E-07 -7.823514E-03 -1.228293E-05 -4.920698E-03 -4.693144E-06 -3.285795E-03 -2.440402E-06 -4.028141E-03 -3.884837E-06 -2.781317E-03 -1.300197E-06 -3.926044E-03 -3.109193E-06 -4.628411E-03 -5.325271E-06 -4.051196E-03 -3.567334E-06 -3.272251E-03 -4.622968E-06 -3.143217E-03 -2.173404E-06 -2.374311E-03 -1.308003E-06 -1.326934E-03 -9.031223E-07 -3.522915E-03 -4.391282E-06 -5.770000E-04 -1.329958E-07 -2.830130E-03 -3.011060E-06 -2.210339E-03 -1.635883E-06 -3.721215E-03 -3.080210E-06 -6.120484E-03 -5.355595E-06 -3.678377E-03 -3.709180E-06 -2.413835E-03 -1.404139E-06 -5.860060E-03 -6.753555E-06 -6.142222E-03 -6.895111E-06 -4.689827E-03 -4.987858E-06 -3.810291E-03 -3.578451E-06 -4.720787E-03 -7.371870E-06 -1.759885E-03 -1.135197E-06 -4.523542E-03 -5.744713E-06 -4.512130E-03 -5.150402E-06 -8.505535E-03 -9.989819E-06 -8.615921E-03 -1.014660E-05 -6.886961E-03 -6.750505E-06 -6.626919E-03 -8.244527E-06 -9.376957E-03 -1.235456E-05 -9.638288E-03 -1.489772E-05 -1.001130E-02 -1.552242E-05 -1.028076E-02 -1.757757E-05 -3.716261E-03 -3.414503E-06 -1.351126E-02 -2.981345E-05 -7.730660E-03 -1.296080E-05 -8.324008E-03 -1.413367E-05 -9.824794E-03 -1.737391E-05 -8.406562E-03 -1.011462E-05 -6.244264E-03 -9.615840E-06 -5.753008E-03 -5.938129E-06 -1.161932E-02 -1.759635E-05 -7.019897E-03 -6.911798E-06 -1.124973E-02 -2.227076E-05 -9.974498E-03 -1.531239E-05 -1.750036E-02 -3.960636E-05 -1.123801E-02 -2.603078E-05 -6.620195E-03 -8.846067E-06 -8.621539E-03 -1.476285E-05 -1.144148E-02 -2.816625E-05 -9.236578E-03 -2.087006E-05 -1.022756E-02 -2.015506E-05 -8.313712E-03 -1.245193E-05 -8.472316E-03 -1.040768E-05 -1.100682E-02 -1.897584E-05 -7.072576E-03 -7.806879E-06 -8.257296E-03 -1.365708E-05 -8.677246E-03 -1.251818E-05 -1.847630E-03 -1.221029E-06 -3.514354E-03 -2.801550E-06 -4.635307E-03 -4.312440E-06 -1.719934E-02 -3.993958E-05 -1.168750E-02 -1.940685E-05 -1.392387E-02 -2.505551E-05 -9.162097E-03 -2.003276E-05 -1.068024E-02 -1.620043E-05 -6.143827E-03 -6.330015E-06 -9.757303E-03 -1.665448E-05 -1.205259E-02 -2.076304E-05 -1.099561E-02 -1.990285E-05 -8.729352E-03 -1.425139E-05 -5.036499E-03 -3.597216E-06 -4.573901E-03 -4.390016E-06 -1.098170E-02 -1.803805E-05 -1.450456E-02 -2.780429E-05 -6.373863E-03 -6.571288E-06 -9.888037E-03 -1.449978E-05 -1.253128E-02 -2.292463E-05 -1.075201E-02 -1.610392E-05 -8.884084E-03 -1.322461E-05 -5.357264E-03 -5.936993E-06 -1.493177E-02 -2.673706E-05 -5.699430E-03 -5.340117E-06 -8.188668E-03 -1.253943E-05 -4.838650E-03 -3.385865E-06 -1.000094E-02 -1.476818E-05 -1.063068E-02 -1.693667E-05 -9.830500E-03 -1.503630E-05 -1.025245E-02 -1.763545E-05 -1.028864E-02 -1.849793E-05 -5.900779E-03 -6.170864E-06 -1.177015E-02 -2.226737E-05 -7.509689E-03 -8.719533E-06 -1.206431E-02 -2.678780E-05 -9.200857E-03 -1.643527E-05 -5.468133E-03 -4.453812E-06 -7.516784E-03 -9.212924E-06 -1.111732E-02 -1.394083E-05 -1.179677E-02 -1.966452E-05 -4.112066E-03 -2.360474E-06 -4.867401E-03 -6.026552E-06 -8.104035E-03 -1.092048E-05 -1.016367E-02 -1.245298E-05 -8.572029E-03 -1.314727E-05 -5.230427E-03 -4.291571E-06 -1.462827E-02 -3.660743E-05 -1.133693E-02 -1.987800E-05 -8.632273E-03 -1.741700E-05 -9.505339E-03 -1.209742E-05 -3.350003E-03 -1.830051E-06 -1.189483E-02 -1.823139E-05 -6.269531E-03 -9.062971E-06 -5.745106E-03 -7.814173E-06 -5.494288E-03 -5.220575E-06 -8.224322E-03 -1.417410E-05 -7.485116E-03 -7.578271E-06 -4.217646E-03 -3.209044E-06 -9.597899E-03 -1.579356E-05 -9.222350E-03 -1.143785E-05 -5.917673E-03 -5.975846E-06 -4.191188E-03 -2.824383E-06 -5.746277E-03 -5.928494E-06 -5.146451E-03 -4.826427E-06 -3.536845E-03 -2.903999E-06 -2.348669E-03 -2.151234E-06 -7.673915E-03 -1.147821E-05 -4.006830E-03 -3.592361E-06 -4.896990E-03 -5.179793E-06 -5.024089E-03 -5.234216E-06 -6.039638E-03 -6.322254E-06 -8.201689E-03 -1.116771E-05 -6.614252E-03 -1.021009E-05 -4.191696E-03 -4.388316E-06 -1.128526E-02 -1.976083E-05 -1.067513E-02 -1.823942E-05 -3.764982E-03 -3.222515E-06 -3.948813E-03 -4.451513E-06 -1.000152E-02 -2.107330E-05 -6.164282E-03 -1.724834E-05 -1.006014E-02 -2.134032E-05 -1.286695E-02 -3.067989E-05 -8.978723E-03 -1.251581E-05 -5.346415E-03 -5.350269E-06 -3.635013E-03 -4.204044E-06 -6.583641E-03 -8.886395E-06 -6.112499E-03 -7.100313E-06 -9.075416E-03 -1.361298E-05 -9.360748E-03 -1.479673E-05 -1.287873E-02 -2.436676E-05 -1.196275E-02 -1.944035E-05 -9.130004E-03 -1.555860E-05 -9.992520E-03 -1.245497E-05 -1.115802E-02 -1.670908E-05 -1.081540E-02 -1.882462E-05 -1.372827E-02 -2.757409E-05 -8.020036E-03 -1.222038E-05 -6.290610E-03 -4.837074E-06 -1.576319E-02 -3.661568E-05 -1.430139E-02 -3.954353E-05 -1.550808E-02 -5.413485E-05 -9.529567E-03 -2.562847E-05 -1.252063E-02 -2.284038E-05 -8.998915E-03 -1.107600E-05 -1.128710E-02 -3.131513E-05 -8.894334E-03 -1.612799E-05 -9.936476E-03 -1.499512E-05 -1.085220E-02 -1.879083E-05 -7.842398E-03 -1.147755E-05 -9.478975E-03 -1.366773E-05 -8.870185E-03 -1.264668E-05 -1.265677E-02 -3.003173E-05 -7.082798E-03 -9.455651E-06 -6.207587E-03 -1.035866E-05 -9.389246E-03 -1.904336E-05 -6.809780E-03 -1.110927E-05 -1.415613E-02 -3.324858E-05 -1.411282E-02 -2.597041E-05 -1.427512E-02 -3.295595E-05 -1.943942E-02 -5.877560E-05 -8.220965E-03 -9.356934E-06 -9.250583E-03 -1.365956E-05 -1.656914E-02 -3.475091E-05 -1.843152E-02 -4.655130E-05 -1.153837E-02 -1.618003E-05 -1.196430E-02 -2.260049E-05 -1.575201E-02 -2.932265E-05 -1.575583E-02 -3.216253E-05 -1.342670E-02 -3.092689E-05 -1.018784E-02 -1.786160E-05 -1.303515E-02 -2.169915E-05 -1.219880E-02 -3.353411E-05 -7.032946E-03 -7.709601E-06 -1.229650E-02 -2.705058E-05 -1.615409E-02 -3.472477E-05 -1.821028E-02 -3.933712E-05 -1.470364E-02 -2.795706E-05 -1.050280E-02 -2.133231E-05 -1.154231E-02 -1.968046E-05 -7.645500E-03 -1.039514E-05 -1.741509E-02 -3.584004E-05 -8.821919E-03 -1.428153E-05 -1.857457E-02 -4.195598E-05 -1.552507E-02 -2.892265E-05 -7.183282E-03 -9.228195E-06 -1.217604E-02 -1.939061E-05 -1.541421E-02 -3.334972E-05 -2.052820E-02 -5.660936E-05 -9.353019E-03 -1.426621E-05 -1.251082E-02 -2.228447E-05 -1.368721E-02 -2.531714E-05 -1.226667E-02 -2.368414E-05 -1.371101E-02 -2.448795E-05 -1.201033E-02 -2.393841E-05 -1.280636E-02 -2.115640E-05 -1.264839E-02 -2.387771E-05 -9.055229E-03 -1.568024E-05 -9.856570E-03 -1.373965E-05 -1.373503E-02 -2.764304E-05 -1.700784E-02 -3.483410E-05 -1.212809E-02 -2.883883E-05 -1.598449E-02 -4.084533E-05 -1.457711E-02 -2.808561E-05 -1.586485E-02 -3.242222E-05 -1.605131E-02 -4.105521E-05 -1.119495E-02 -1.615746E-05 -1.324399E-02 -2.727755E-05 -9.867968E-03 -1.269902E-05 -1.261254E-02 -2.302293E-05 -1.153152E-02 -1.778319E-05 -9.627863E-03 -1.562429E-05 -9.050432E-03 -2.011089E-05 -1.012233E-02 -1.405672E-05 -8.911922E-03 -1.231699E-05 -1.264744E-02 -3.182267E-05 -1.122935E-02 -1.396398E-05 -1.004271E-02 -2.482202E-05 -7.894125E-03 -1.026568E-05 -8.738637E-03 -1.294773E-05 -1.219349E-02 -2.177467E-05 -9.967898E-03 -1.619041E-05 -7.763622E-03 -1.314523E-05 -7.889504E-03 -1.517342E-05 -7.877888E-03 -9.676691E-06 -7.292674E-03 -8.328724E-06 -9.035083E-03 -1.302638E-05 -9.363679E-03 -1.575034E-05 -9.640810E-03 -1.648917E-05 -6.094059E-03 -5.041308E-06 -4.386721E-03 -4.583987E-06 -8.186442E-03 -1.162059E-05 -6.547204E-03 -5.040030E-06 -4.382851E-03 -3.779716E-06 -4.722787E-03 -2.981327E-06 -1.235870E-02 -2.314605E-05 -1.222127E-02 -2.292500E-05 -7.743975E-03 -1.242313E-05 -5.687154E-03 -5.021930E-06 -7.628599E-03 -1.334325E-05 -8.144837E-03 -9.544871E-06 -8.964376E-03 -1.242765E-05 -9.619105E-03 -1.533853E-05 -1.084215E-02 -2.414197E-05 -6.098310E-03 -6.403053E-06 -3.971375E-03 -2.559046E-06 -4.956486E-03 -4.314077E-06 -1.650323E-02 -3.308582E-05 -1.785233E-02 -4.022948E-05 -1.226233E-02 -2.222264E-05 -1.324548E-02 -2.290739E-05 -1.170726E-02 -2.043035E-05 -1.128481E-02 -1.783746E-05 -1.446854E-02 -2.465804E-05 -1.308709E-02 -2.086517E-05 -1.532165E-02 -3.175587E-05 -1.176741E-02 -2.528693E-05 -6.104662E-03 -5.418027E-06 -5.028482E-03 -7.038340E-06 -1.452720E-02 -2.907362E-05 -2.155983E-02 -5.793543E-05 -8.953378E-03 -1.144318E-05 -1.193284E-02 -1.941045E-05 -1.898089E-02 -4.676936E-05 -8.078140E-03 -1.008669E-05 -1.345743E-02 -3.010294E-05 -1.166065E-02 -2.971259E-05 -2.140319E-02 -6.942386E-05 -1.156518E-02 -2.123401E-05 -1.063148E-02 -1.679318E-05 -1.035058E-02 -1.786819E-05 -1.141576E-02 -1.488341E-05 -2.132304E-02 -6.407400E-05 -1.417013E-02 -2.428688E-05 -1.578758E-02 -4.383560E-05 -1.510669E-02 -4.330783E-05 -1.061421E-02 -2.120867E-05 -9.836246E-03 -1.836620E-05 -1.170301E-02 -2.304010E-05 -2.297562E-02 -7.378766E-05 -2.077496E-02 -6.096800E-05 -8.479570E-03 -1.315595E-05 -1.334700E-02 -2.778150E-05 -1.518804E-02 -2.768676E-05 -1.665283E-02 -3.264844E-05 -1.337650E-02 -2.908404E-05 -1.642169E-02 -3.787016E-05 -1.532468E-02 -3.092775E-05 -1.264533E-02 -1.889367E-05 -1.570062E-02 -2.982615E-05 -1.201853E-02 -1.991814E-05 -1.956945E-02 -4.268136E-05 -1.749406E-02 -3.890385E-05 -9.761579E-03 -1.266596E-05 -1.131974E-02 -1.669105E-05 -1.583139E-02 -3.408051E-05 -1.813736E-02 -4.024179E-05 -1.749162E-02 -4.075339E-05 -1.806084E-02 -4.998400E-05 -1.798603E-02 -3.527089E-05 -1.363365E-02 -2.545698E-05 -1.735765E-02 -3.680633E-05 -1.313196E-02 -2.758452E-05 -1.257866E-02 -2.792705E-05 -1.371026E-02 -2.875442E-05 -1.449637E-02 -2.956474E-05 -1.184945E-02 -2.021992E-05 -1.160263E-02 -1.677863E-05 -1.486874E-02 -2.727812E-05 -1.334215E-02 -2.696922E-05 -8.375076E-03 -1.127780E-05 -1.398722E-02 -2.987500E-05 -1.431399E-02 -2.337988E-05 -1.685216E-02 -4.010946E-05 -1.220900E-02 -2.279807E-05 -1.359371E-02 -3.406479E-05 -1.497337E-02 -3.514338E-05 -1.077240E-02 -1.570437E-05 -1.286688E-02 -2.067034E-05 -1.804016E-02 -3.897670E-05 -1.720304E-02 -3.923736E-05 -1.248667E-02 -2.229239E-05 -9.872479E-03 -1.547272E-05 -1.404898E-02 -3.940008E-05 -1.102828E-02 -2.118933E-05 -9.527731E-03 -1.232685E-05 -1.183452E-02 -2.230399E-05 -1.235818E-02 -2.095622E-05 -9.045793E-03 -1.310065E-05 -7.573693E-03 -7.912407E-06 -7.098140E-03 -1.002223E-05 -1.087704E-02 -1.644644E-05 -1.403508E-02 -2.293868E-05 -1.102953E-02 -2.108622E-05 -1.278029E-02 -2.765609E-05 -1.000153E-02 -1.489998E-05 -1.023204E-02 -1.425642E-05 -1.077781E-02 -1.616312E-05 -1.504135E-02 -3.226364E-05 -8.290904E-03 -1.302393E-05 -1.081631E-02 -1.596914E-05 -1.061779E-02 -1.936956E-05 -9.609920E-03 -1.233187E-05 -7.536017E-03 -8.104937E-06 -1.064514E-02 -1.960743E-05 -4.303700E-03 -3.157059E-06 -4.544730E-03 -3.063284E-06 -9.403522E-03 -1.530342E-05 -6.146303E-03 -5.481247E-06 -5.504300E-03 -4.029062E-06 -2.514628E-03 -2.046696E-06 -1.150234E-02 -3.434888E-05 -6.476274E-03 -8.282595E-06 -5.180114E-03 -8.533421E-06 -6.593161E-03 -7.470575E-06 -1.087271E-02 -2.875725E-05 -1.114108E-02 -1.774790E-05 -9.707234E-03 -2.320447E-05 -7.474544E-03 -7.620487E-06 -1.189904E-02 -1.770896E-05 -8.306981E-03 -1.023805E-05 -1.044243E-02 -2.358835E-05 -7.956950E-03 -1.442236E-05 -6.383279E-03 -9.306381E-06 -6.540012E-03 -7.870617E-06 -7.547221E-03 -8.818582E-06 -8.118902E-03 -1.018402E-05 -1.219458E-02 -2.121863E-05 -9.183066E-03 -1.021558E-05 -8.537042E-03 -2.163043E-05 -9.801780E-03 -1.896248E-05 -7.436543E-03 -6.348631E-06 -8.783038E-03 -1.450508E-05 -1.198218E-02 -2.299991E-05 -1.176673E-02 -1.772108E-05 -7.610905E-03 -1.295193E-05 -1.236441E-02 -2.279242E-05 -1.374811E-02 -2.984764E-05 -8.276450E-03 -9.063020E-06 -2.838721E-02 -8.556398E-05 -1.876318E-02 -4.502643E-05 -1.545136E-02 -3.024495E-05 -1.307062E-02 -3.391324E-05 -1.321284E-02 -2.975134E-05 -1.195812E-02 -2.014099E-05 -2.398471E-02 -7.682355E-05 -1.699635E-02 -4.513757E-05 -1.109010E-02 -1.505508E-05 -1.463044E-02 -3.130849E-05 -1.445299E-02 -3.424691E-05 -1.847738E-02 -4.339745E-05 -2.269521E-02 -6.754400E-05 -1.622681E-02 -3.412820E-05 -1.867140E-02 -4.737811E-05 -1.704633E-02 -5.070683E-05 -2.137995E-02 -5.989756E-05 -1.262222E-02 -2.579396E-05 -1.649755E-02 -3.278397E-05 -1.021540E-02 -1.333464E-05 -1.399361E-02 -4.091195E-05 -1.481283E-02 -2.778259E-05 -1.110529E-02 -1.543650E-05 -1.370454E-02 -2.585161E-05 -2.187939E-02 -5.698664E-05 -2.156023E-02 -5.655243E-05 -1.819754E-02 -4.650955E-05 -1.667214E-02 -4.523740E-05 -1.212974E-02 -1.755527E-05 -1.664077E-02 -4.676917E-05 -1.598420E-02 -3.367421E-05 -2.197091E-02 -6.311844E-05 -1.554809E-02 -4.350026E-05 -1.662573E-02 -3.639737E-05 -1.377054E-02 -2.979629E-05 -1.718171E-02 -6.738915E-05 -2.224715E-02 -5.208199E-05 -2.028701E-02 -5.025768E-05 -2.346558E-02 -7.283542E-05 -2.047816E-02 -5.352208E-05 -2.103499E-02 -5.936660E-05 -1.795967E-02 -4.651152E-05 -2.451667E-02 -7.714718E-05 -2.018245E-02 -4.706972E-05 -1.870240E-02 -5.089247E-05 -1.414303E-02 -2.510243E-05 -1.249731E-02 -1.910688E-05 -1.461191E-02 -2.931018E-05 -1.772779E-02 -3.502831E-05 -2.405954E-02 -7.243269E-05 -1.698120E-02 -5.235943E-05 -1.363172E-02 -2.557442E-05 -2.085610E-02 -5.559729E-05 -1.434576E-02 -2.498955E-05 -2.151921E-02 -5.863979E-05 -1.804978E-02 -3.738678E-05 -1.626456E-02 -3.204521E-05 -1.416110E-02 -2.454304E-05 -1.349966E-02 -2.225683E-05 -1.376360E-02 -2.288533E-05 -1.304562E-02 -2.360964E-05 -1.204823E-02 -2.235548E-05 -1.581808E-02 -3.833344E-05 -1.458683E-02 -2.424983E-05 -1.532417E-02 -3.313140E-05 -1.674514E-02 -3.698941E-05 -8.820684E-03 -1.237269E-05 -1.325954E-02 -2.839297E-05 -1.346247E-02 -2.329594E-05 -1.218804E-02 -2.010088E-05 -7.816904E-03 -8.061895E-06 -1.115974E-02 -1.481199E-05 -1.126424E-02 -1.437812E-05 -1.155465E-02 -2.043504E-05 -1.330918E-02 -2.482809E-05 -1.359646E-02 -2.349457E-05 -6.879034E-03 -6.482253E-06 -1.025078E-02 -1.436298E-05 -1.124296E-02 -1.766927E-05 -9.157794E-03 -1.732026E-05 -1.080917E-02 -1.759748E-05 -1.224046E-02 -1.895136E-05 -1.132499E-02 -1.940702E-05 -1.055316E-02 -1.421109E-05 -6.950077E-03 -8.886009E-06 -1.146153E-02 -2.328053E-05 -6.534133E-03 -9.046637E-06 -5.113551E-03 -7.352574E-06 -1.096783E-02 -1.762871E-05 -8.670928E-03 -1.642712E-05 -6.666016E-03 -7.936419E-06 -4.024813E-03 -3.317441E-06 -6.604655E-03 -6.471414E-06 -7.218922E-03 -7.914816E-06 -7.543650E-03 -1.006296E-05 -8.390292E-03 -1.280688E-05 -6.833212E-03 -9.885211E-06 -8.859184E-03 -1.491876E-05 -4.271802E-03 -4.619779E-06 -8.415017E-03 -1.758541E-05 -7.880304E-03 -1.207340E-05 -6.190265E-03 -5.244062E-06 -1.255358E-02 -3.409848E-05 -4.588111E-03 -6.615112E-06 -7.290138E-03 -8.053715E-06 -2.708550E-03 -1.222054E-06 -7.971324E-03 -1.019545E-05 -2.186309E-03 -3.012755E-06 -1.730168E-02 -4.007549E-05 -9.437870E-03 -1.374155E-05 -8.710815E-03 -1.058748E-05 -6.876864E-03 -1.161077E-05 -1.183718E-02 -2.088043E-05 -1.317392E-02 -2.144719E-05 -1.202134E-02 -2.244800E-05 -1.219063E-02 -1.871706E-05 -9.457262E-03 -1.576600E-05 -8.456836E-03 -1.009365E-05 -6.722846E-03 -7.231603E-06 -9.056257E-03 -1.228372E-05 -1.680554E-02 -5.472386E-05 -1.583876E-02 -4.084512E-05 -1.451889E-02 -2.656784E-05 -1.154750E-02 -2.200804E-05 -8.960773E-03 -1.608168E-05 -1.021117E-02 -2.175200E-05 -1.537603E-02 -3.295291E-05 -1.346321E-02 -3.199823E-05 -1.020297E-02 -2.083570E-05 -1.574785E-02 -3.797866E-05 -1.224712E-02 -2.543224E-05 -1.213857E-02 -2.596422E-05 -1.978514E-02 -5.572712E-05 -1.721724E-02 -3.343383E-05 -1.917708E-02 -6.017423E-05 -1.746870E-02 -4.670195E-05 -1.601664E-02 -3.757776E-05 -1.391434E-02 -2.787908E-05 -2.112923E-02 -6.179734E-05 -1.494974E-02 -3.147270E-05 -2.027112E-02 -5.409774E-05 -1.762825E-02 -3.716705E-05 -1.490183E-02 -2.636325E-05 -1.144233E-02 -1.895260E-05 -2.252480E-02 -6.008716E-05 -2.061068E-02 -4.967689E-05 -1.978565E-02 -5.823807E-05 -1.627207E-02 -3.508510E-05 -2.308648E-02 -7.339685E-05 -9.920567E-03 -1.588060E-05 -1.582116E-02 -3.710173E-05 -1.359849E-02 -3.693990E-05 -2.449553E-02 -7.939873E-05 -1.712995E-02 -3.401990E-05 -1.578519E-02 -2.835653E-05 -1.996773E-02 -5.153308E-05 -1.784633E-02 -3.372557E-05 -2.328886E-02 -7.016669E-05 -1.908795E-02 -5.601183E-05 -2.149293E-02 -6.345938E-05 -2.432779E-02 -7.634443E-05 -2.394049E-02 -6.577991E-05 -1.506740E-02 -3.094281E-05 -1.388336E-02 -2.886613E-05 -1.614618E-02 -3.561899E-05 -1.595134E-02 -4.065708E-05 -1.340027E-02 -2.204671E-05 -1.472267E-02 -2.861240E-05 -1.790210E-02 -5.856300E-05 -2.646480E-02 -1.056654E-04 -1.880864E-02 -4.142515E-05 -1.426154E-02 -2.963840E-05 -1.165132E-02 -2.176252E-05 -1.428324E-02 -2.725319E-05 -1.588976E-02 -3.970327E-05 -1.833160E-02 -4.559784E-05 -1.772585E-02 -4.748240E-05 -1.848953E-02 -5.090661E-05 -1.272374E-02 -2.030829E-05 -1.412613E-02 -3.146328E-05 -1.649479E-02 -4.133012E-05 -1.209661E-02 -4.450673E-05 -1.369084E-02 -2.392580E-05 -1.531641E-02 -3.089017E-05 -1.580566E-02 -3.194323E-05 -1.132108E-02 -1.399526E-05 -8.190342E-03 -9.145143E-06 -7.902353E-03 -1.504796E-05 -1.258132E-02 -2.292738E-05 -6.958024E-03 -9.709387E-06 -1.037667E-02 -1.407859E-05 -1.201319E-02 -2.053522E-05 -9.379406E-03 -1.510952E-05 -1.279685E-02 -2.736611E-05 -1.191802E-02 -2.186093E-05 -6.155316E-03 -6.209415E-06 -8.817944E-03 -1.322568E-05 -7.497837E-03 -1.365620E-05 -9.976490E-03 -1.734874E-05 -7.558291E-03 -1.424385E-05 -8.801002E-03 -1.425950E-05 -9.075301E-03 -1.401503E-05 -5.681746E-03 -5.798447E-06 -4.827386E-03 -3.466370E-06 -5.884691E-03 -5.754861E-06 -1.211858E-02 -2.621006E-05 -5.629512E-03 -6.112612E-06 -5.768978E-03 -5.711093E-06 -1.075576E-02 -1.954724E-05 -5.977668E-03 -7.957209E-06 -6.775985E-03 -8.582096E-06 -3.503043E-03 -2.684132E-06 -8.113430E-03 -1.099167E-05 -8.263729E-03 -1.412028E-05 -3.781179E-03 -3.287824E-06 -8.368219E-03 -9.803361E-06 -1.068347E-02 -1.390398E-05 -1.118234E-02 -1.591023E-05 -1.016006E-02 -2.761365E-05 -6.634695E-03 -7.415821E-06 -1.042368E-02 -1.700083E-05 -1.024339E-02 -1.630692E-05 -5.465831E-03 -6.271754E-06 -1.117655E-02 -1.998616E-05 -8.708982E-03 -1.145629E-05 -3.321055E-03 -3.386533E-06 -8.951176E-03 -1.175568E-05 -7.413974E-03 -1.358203E-05 -1.289235E-02 -2.359140E-05 -9.817553E-03 -1.518261E-05 -9.879433E-03 -1.602972E-05 -1.177378E-02 -2.259438E-05 -5.796294E-03 -6.245744E-06 -1.138092E-02 -2.136416E-05 -8.927027E-03 -9.348267E-06 -9.673957E-03 -1.246216E-05 -1.280715E-02 -4.429778E-05 -8.808327E-03 -1.178528E-05 -7.125501E-03 -7.483806E-06 -4.620428E-03 -9.310180E-06 -1.680437E-02 -3.451199E-05 -2.026938E-02 -4.346902E-05 -1.635252E-02 -5.026111E-05 -1.278583E-02 -2.192134E-05 -1.301566E-02 -2.384432E-05 -9.286694E-03 -1.400657E-05 -1.107901E-02 -1.953576E-05 -1.150656E-02 -2.102378E-05 -1.772830E-02 -3.480088E-05 -1.063150E-02 -1.401509E-05 -1.374475E-02 -2.299888E-05 -6.867995E-03 -1.027748E-05 -1.580376E-02 -3.847030E-05 -1.668637E-02 -3.953893E-05 -1.442844E-02 -3.008408E-05 -1.827058E-02 -4.753438E-05 -1.440759E-02 -3.206648E-05 -1.592968E-02 -4.677348E-05 -1.718273E-02 -3.488836E-05 -1.688712E-02 -4.196255E-05 -2.047044E-02 -4.959256E-05 -1.306218E-02 -3.057713E-05 -8.848692E-03 -1.833823E-05 -1.117548E-02 -2.553563E-05 -2.169142E-02 -6.306137E-05 -2.218276E-02 -5.572871E-05 -1.802302E-02 -4.705313E-05 -1.782656E-02 -4.017437E-05 -1.925947E-02 -4.703183E-05 -1.641263E-02 -3.693267E-05 -1.516396E-02 -3.126646E-05 -1.512145E-02 -3.336386E-05 -1.579023E-02 -3.449473E-05 -1.368503E-02 -3.144328E-05 -1.108096E-02 -1.983330E-05 -1.447670E-02 -3.832266E-05 -1.831886E-02 -3.928136E-05 -1.893457E-02 -5.869250E-05 -1.764892E-02 -5.005397E-05 -1.637340E-02 -3.702753E-05 -9.686698E-03 -1.449037E-05 -1.006947E-02 -1.933484E-05 -1.884484E-02 -4.561680E-05 -1.468883E-02 -2.792875E-05 -1.670400E-02 -3.477624E-05 -1.632153E-02 -3.402425E-05 -9.187335E-03 -1.053828E-05 -9.985824E-03 -1.585776E-05 -1.303759E-02 -3.027649E-05 -1.872005E-02 -5.130980E-05 -1.633753E-02 -4.260466E-05 -1.020425E-02 -1.707335E-05 -1.320758E-02 -2.695180E-05 -1.208449E-02 -3.007055E-05 -1.286574E-02 -2.373357E-05 -1.095090E-02 -2.877553E-05 -1.692473E-02 -4.961965E-05 -1.190920E-02 -2.375507E-05 -5.682089E-03 -4.636856E-06 -1.035844E-02 -1.997872E-05 -9.666688E-03 -1.483243E-05 -1.613905E-02 -3.984840E-05 -1.572095E-02 -3.368762E-05 -1.108904E-02 -1.539438E-05 -1.486260E-02 -4.070529E-05 -1.042750E-02 -1.813263E-05 -1.042360E-02 -1.689881E-05 -8.718623E-03 -1.199955E-05 -1.039440E-02 -1.674301E-05 -5.162509E-03 -6.408708E-06 -9.563193E-03 -1.362142E-05 -6.648598E-03 -1.021485E-05 -1.122742E-02 -1.540873E-05 -7.837929E-03 -1.128828E-05 -1.114590E-02 -2.553030E-05 -1.141215E-02 -2.510840E-05 -1.152836E-02 -2.344713E-05 -7.971937E-03 -1.506387E-05 -1.248527E-02 -2.125446E-05 -6.066628E-03 -9.574143E-06 -1.087280E-02 -1.688717E-05 -9.550524E-03 -1.250483E-05 -5.306519E-03 -4.846453E-06 -7.512202E-03 -8.651766E-06 -7.508820E-03 -8.634705E-06 -5.185887E-03 -4.163304E-06 -1.379038E-02 -3.492367E-05 -9.235196E-03 -1.206055E-05 -1.392051E-02 -3.803496E-05 -7.049846E-03 -9.147756E-06 -5.323140E-03 -4.281730E-06 -8.229124E-03 -1.548991E-05 -7.235167E-03 -1.441034E-05 -2.366009E-03 -3.874657E-06 -5.945679E-03 -1.067197E-05 -5.871383E-03 -5.656813E-06 -9.732147E-03 -2.269675E-05 -6.582049E-03 -7.833573E-06 -3.066363E-03 -3.098185E-06 -5.796032E-03 -6.625438E-06 -8.122368E-03 -9.655803E-06 -1.121766E-02 -1.750086E-05 -1.036527E-02 -1.842391E-05 -5.944076E-03 -6.439480E-06 -2.283818E-03 -1.352210E-06 -1.446587E-03 -7.807258E-07 -4.944507E-03 -3.694344E-06 -3.281169E-03 -2.925608E-06 -9.286754E-03 -1.260048E-05 -1.272772E-02 -2.464058E-05 -1.270753E-02 -3.173555E-05 -1.419952E-02 -2.835999E-05 -9.671107E-03 -1.686465E-05 -9.583433E-03 -1.323773E-05 -1.186931E-02 -2.163029E-05 -1.267789E-02 -2.021594E-05 -8.275560E-03 -9.163723E-06 -1.062420E-02 -1.977462E-05 -1.198470E-02 -1.979838E-05 -1.324773E-02 -2.853129E-05 -1.727253E-02 -3.432691E-05 -1.381997E-02 -2.842333E-05 -1.578301E-02 -3.356518E-05 -1.555696E-02 -3.183947E-05 -8.166265E-03 -8.629223E-06 -1.747785E-02 -4.250397E-05 -9.541135E-03 -1.246077E-05 -1.393808E-02 -3.012112E-05 -1.209324E-02 -2.429593E-05 -1.079402E-02 -2.325836E-05 -1.374417E-02 -2.491779E-05 -9.500289E-03 -1.572888E-05 -1.222769E-02 -2.456217E-05 -1.097825E-02 -1.938425E-05 -1.410107E-02 -2.407486E-05 -2.024375E-02 -6.980050E-05 -1.220648E-02 -3.245536E-05 -1.137633E-02 -1.667373E-05 -1.038617E-02 -1.405080E-05 -1.243797E-02 -2.413125E-05 -9.998308E-03 -1.605906E-05 -8.805567E-03 -1.128015E-05 -1.388695E-02 -3.039013E-05 -1.242352E-02 -2.040627E-05 -2.645008E-02 -8.679965E-05 -2.076456E-02 -5.640973E-05 -1.805209E-02 -4.120924E-05 -1.246120E-02 -3.006639E-05 -1.810150E-02 -4.756486E-05 -1.472448E-02 -3.309142E-05 -2.571400E-02 -8.648041E-05 -1.341319E-02 -3.280431E-05 -1.535941E-02 -4.819536E-05 -2.373309E-02 -7.918529E-05 -5.757795E-03 -4.733061E-06 -1.174264E-02 -2.108284E-05 -1.884131E-02 -4.721518E-05 -1.750610E-02 -4.223243E-05 -1.716739E-02 -3.617002E-05 -1.252851E-02 -2.099071E-05 -1.388277E-02 -3.109337E-05 -1.350362E-02 -3.082057E-05 -1.238489E-02 -3.728424E-05 -9.966253E-03 -2.035860E-05 -2.285240E-02 -8.446864E-05 -1.327084E-02 -3.045931E-05 -1.193699E-02 -2.204142E-05 -6.923219E-03 -9.602029E-06 -1.838247E-02 -4.807008E-05 -1.863076E-02 -4.604209E-05 -1.334000E-02 -2.761396E-05 -1.141315E-02 -2.474696E-05 -2.286809E-02 -1.083380E-04 -1.645875E-02 -3.520343E-05 -1.229791E-02 -2.380600E-05 -1.284486E-02 -2.254139E-05 -1.854605E-02 -4.752272E-05 -1.049692E-02 -1.983824E-05 -7.207727E-03 -7.286730E-06 -1.686364E-02 -3.977916E-05 -1.314115E-02 -2.189974E-05 -1.520236E-02 -3.635654E-05 -1.096706E-02 -2.475645E-05 -7.932651E-03 -1.085523E-05 -1.515150E-02 -4.556316E-05 -1.171402E-02 -3.284784E-05 -1.087897E-02 -1.567310E-05 -8.199381E-03 -9.564718E-06 -9.456870E-03 -1.207744E-05 -8.827517E-03 -1.658191E-05 -5.512807E-03 -6.038391E-06 -8.573999E-03 -1.207656E-05 -1.047145E-02 -1.674083E-05 -9.666379E-03 -1.231732E-05 -1.046000E-02 -1.782331E-05 -6.009504E-03 -6.261797E-06 -1.111917E-02 -1.768100E-05 -1.105060E-02 -1.934982E-05 -5.280218E-03 -7.191057E-06 -7.637218E-03 -9.728555E-06 -1.009144E-02 -1.219856E-05 -4.974619E-03 -4.499916E-06 -6.589686E-03 -1.040697E-05 -7.787208E-03 -1.023212E-05 -6.068811E-03 -5.842725E-06 -3.416649E-03 -3.146550E-06 -9.213350E-03 -2.154615E-05 -6.752158E-03 -9.801770E-06 -4.758057E-03 -6.649209E-06 -6.129868E-03 -8.342508E-06 -2.783932E-03 -2.140712E-06 -6.308493E-03 -1.039901E-05 -2.249137E-03 -1.153739E-06 -2.514780E-03 -1.593412E-06 -6.018183E-03 -8.965827E-06 -3.234291E-03 -2.042484E-06 -7.860270E-03 -1.035245E-05 -3.414591E-03 -2.249770E-06 -7.941000E-03 -1.449758E-05 -3.591791E-03 -2.245391E-06 -7.807797E-03 -1.011270E-05 -7.726893E-03 -1.478217E-05 -2.506930E-03 -2.954554E-06 -5.955023E-03 -7.260418E-06 -5.294809E-03 -8.225926E-06 -2.802166E-03 -1.996795E-06 -2.404798E-03 -1.266950E-06 -4.125341E-03 -2.979146E-06 -7.417991E-03 -8.566910E-06 -8.158248E-03 -1.230927E-05 -7.976311E-03 -1.332178E-05 -8.873852E-03 -1.480843E-05 -9.373684E-03 -1.259336E-05 -8.214068E-03 -1.186084E-05 -6.962685E-03 -7.715598E-06 -8.834013E-03 -1.972166E-05 -5.435947E-03 -4.590835E-06 -5.487949E-03 -5.939754E-06 -6.678491E-03 -8.355182E-06 -4.058912E-03 -5.880001E-06 -1.360573E-02 -2.671641E-05 -1.143610E-02 -2.018223E-05 -7.702740E-03 -1.433952E-05 -5.873725E-03 -6.789166E-06 -1.088086E-02 -3.437425E-05 -7.089361E-03 -1.461407E-05 -8.765624E-03 -1.242854E-05 -9.453645E-03 -1.575322E-05 -1.001462E-02 -1.448625E-05 -1.282490E-02 -2.290074E-05 -8.545890E-03 -1.273760E-05 -7.387390E-03 -9.140356E-06 -1.399357E-02 -2.449459E-05 -1.337581E-02 -3.113825E-05 -1.423915E-02 -2.729711E-05 -6.580885E-03 -8.347839E-06 -7.779718E-03 -1.007558E-05 -7.480792E-03 -1.083253E-05 -1.275448E-02 -2.722719E-05 -1.292106E-02 -2.421066E-05 -9.755948E-03 -1.426055E-05 -9.117272E-03 -1.368142E-05 -7.455531E-03 -8.688003E-06 -1.042236E-02 -1.801425E-05 -1.296287E-02 -2.809397E-05 -1.390180E-02 -2.674920E-05 -1.265490E-02 -3.041327E-05 -1.269961E-02 -2.824134E-05 -1.133938E-02 -1.625519E-05 -9.821144E-03 -2.178670E-05 -1.530578E-02 -3.585772E-05 -1.299672E-02 -2.588612E-05 -1.544212E-02 -3.143850E-05 -8.347818E-03 -1.132876E-05 -1.393101E-02 -2.890996E-05 -6.639867E-03 -7.587375E-06 -1.839132E-02 -4.637735E-05 -1.188258E-02 -1.953879E-05 -1.588672E-02 -3.134987E-05 -1.425154E-02 -2.751603E-05 -4.920276E-03 -4.432356E-06 -1.374206E-02 -2.842285E-05 -1.673110E-02 -4.601232E-05 -1.254973E-02 -2.188833E-05 -6.444727E-03 -5.222041E-06 -1.023529E-02 -1.572480E-05 -1.087382E-02 -1.692895E-05 -9.038702E-03 -1.572012E-05 -1.398299E-02 -2.818260E-05 -8.766186E-03 -1.494609E-05 -1.321841E-02 -2.007819E-05 -1.562133E-02 -3.892744E-05 -8.289134E-03 -1.177987E-05 -8.947084E-03 -1.094585E-05 -1.594810E-02 -3.949297E-05 -1.285384E-02 -2.278617E-05 -5.689452E-03 -7.280228E-06 -9.766401E-03 -2.148390E-05 -8.496573E-03 -8.437729E-06 -7.991945E-03 -9.550933E-06 -9.608813E-03 -1.425597E-05 -1.052303E-02 -1.935336E-05 -8.548009E-03 -1.333735E-05 -7.337588E-03 -9.975447E-06 -1.423505E-02 -3.258201E-05 -1.136654E-02 -2.510870E-05 -7.860115E-03 -8.206414E-06 -8.309608E-03 -1.504702E-05 -1.110051E-02 -2.051470E-05 -6.172688E-03 -9.409184E-06 -9.740436E-03 -1.437599E-05 -8.997021E-03 -1.150131E-05 -1.279849E-02 -3.206319E-05 -1.028663E-02 -1.505898E-05 -1.122879E-02 -1.673337E-05 -8.223903E-03 -9.720008E-06 -8.464761E-03 -1.103940E-05 -6.670166E-03 -6.071848E-06 -4.620811E-03 -6.527856E-06 -3.824735E-03 -3.340845E-06 -5.634323E-03 -5.012909E-06 -3.166012E-03 -3.619323E-06 -9.167802E-03 -1.056621E-05 -3.221327E-03 -1.773076E-06 -5.412502E-03 -5.413007E-06 -6.702745E-03 -8.187361E-06 -4.863392E-03 -3.807791E-06 -4.405641E-03 -4.058186E-06 -6.131083E-03 -7.250341E-06 -4.913764E-03 -5.744987E-06 -4.588314E-03 -3.202328E-06 -6.804591E-03 -8.479426E-06 -7.252910E-03 -8.758909E-06 -4.312950E-03 -3.434388E-06 -1.807777E-03 -1.380521E-06 -4.671070E-03 -5.538033E-06 -7.067950E-03 -1.174764E-05 -2.930719E-03 -1.441738E-06 -1.279222E-03 -1.078804E-06 -3.507572E-03 -5.821750E-06 -9.678721E-03 -2.476852E-05 -2.874671E-03 -2.470595E-06 -2.182691E-03 -1.629987E-06 -3.621537E-03 -9.191521E-06 -1.740159E-03 -6.544183E-07 -3.203873E-03 -3.602845E-06 -2.890800E-03 -2.526106E-06 -3.068561E-03 -4.213711E-06 -6.078860E-03 -7.760574E-06 -7.287103E-03 -7.524310E-06 -7.509754E-03 -2.547783E-05 -2.646412E-03 -2.157075E-06 -6.255289E-03 -6.947406E-06 -4.941751E-03 -7.943248E-06 -9.224779E-03 -1.410566E-05 -4.906800E-03 -4.350073E-06 -7.923221E-03 -1.421559E-05 -2.900094E-03 -1.652857E-06 -3.445014E-03 -1.996755E-06 -2.978919E-03 -3.704572E-06 -8.310828E-03 -1.128557E-05 -8.914816E-03 -1.105293E-05 -6.453823E-03 -7.530365E-06 -8.529848E-03 -1.250596E-05 -1.241639E-02 -1.968019E-05 -3.654989E-03 -2.852818E-06 -6.194753E-03 -4.637962E-06 -7.168410E-03 -9.747482E-06 -7.074135E-03 -8.723001E-06 -3.088414E-03 -2.165114E-06 -4.736900E-03 -4.690360E-06 -5.496866E-03 -6.084993E-06 -9.992636E-03 -2.331975E-05 -5.785665E-03 -9.290287E-06 -9.268775E-03 -1.727651E-05 -1.110749E-02 -2.320101E-05 -6.035119E-03 -6.006884E-06 -6.097186E-03 -8.477525E-06 -9.286855E-03 -1.325325E-05 -5.725710E-03 -5.595748E-06 -5.225326E-03 -5.682741E-06 -8.374162E-03 -1.358989E-05 -8.070266E-03 -8.525794E-06 -5.663014E-03 -8.326352E-06 -1.077577E-02 -1.774824E-05 -6.823384E-03 -7.461723E-06 -1.309151E-02 -2.293933E-05 -9.734117E-03 -1.567869E-05 -1.064840E-02 -1.998801E-05 -6.598548E-03 -1.247960E-05 -8.533419E-03 -1.698271E-05 -1.187770E-02 -2.246194E-05 -3.905374E-03 -2.559130E-06 -2.608870E-03 -1.558560E-06 -6.052893E-03 -5.374399E-06 -5.291540E-03 -8.103686E-06 -7.976421E-03 -1.021030E-05 -9.757093E-03 -1.668583E-05 -7.385489E-03 -1.285403E-05 -7.929263E-03 -7.987788E-06 -9.704986E-03 -2.962975E-05 -7.525077E-03 -1.306302E-05 -6.991034E-03 -1.064873E-05 -5.005358E-03 -9.835012E-06 -8.092808E-03 -1.147394E-05 -4.474087E-03 -3.834905E-06 -6.834524E-03 -6.982199E-06 -4.812916E-03 -4.467796E-06 -5.990512E-03 -7.842268E-06 -4.574709E-03 -3.970763E-06 -4.788106E-03 -3.924811E-06 -8.916249E-03 -1.850608E-05 -5.259665E-03 -8.293438E-06 -9.696546E-03 -1.517672E-05 -4.590212E-03 -5.096431E-06 -7.314462E-03 -1.714769E-05 -3.860185E-03 -3.127895E-06 -1.784310E-03 -9.235975E-07 -5.547235E-03 -5.112055E-06 -5.865507E-03 -6.708947E-06 -4.328438E-03 -4.229047E-06 -5.092655E-03 -5.828910E-06 -6.709671E-03 -7.080990E-06 -4.327802E-03 -3.188523E-06 -4.937391E-03 -4.569445E-06 -8.293491E-03 -1.319561E-05 -3.930138E-03 -6.730814E-06 -4.416256E-03 -4.105889E-06 -3.467315E-03 -2.354469E-06 -5.332491E-03 -9.029639E-06 -2.694692E-03 -1.279641E-06 -5.342987E-03 -6.713119E-06 -7.519588E-03 -1.092346E-05 -5.285743E-03 -5.723628E-06 -6.665656E-03 -8.544653E-06 -3.846760E-03 -2.666108E-06 -6.284377E-03 -9.724369E-06 -6.196868E-03 -8.329996E-06 -5.286331E-03 -6.920429E-06 -7.052727E-03 -1.143953E-05 -5.029353E-03 -3.735294E-06 -2.407489E-03 -2.444788E-06 -4.133935E-04 -9.497986E-08 -6.027018E-03 -1.025712E-05 -3.598018E-03 -3.018229E-06 -4.613658E-03 -4.076030E-06 -3.342670E-03 -3.029962E-06 -3.733008E-03 -2.515848E-06 -5.141865E-03 -9.007182E-06 -7.728541E-03 -1.349554E-05 -1.579734E-03 -1.531714E-06 -3.519217E-03 -3.673203E-06 -5.032814E-03 -4.394432E-06 -1.399643E-03 -6.119406E-07 -3.930826E-03 -4.507517E-06 -4.767309E-03 -5.014044E-06 +3.142337E-02 +2.743459E-04 +9.594518E-02 +1.952932E-03 +9.019638E-02 +1.611295E-03 +1.348760E-01 +3.157312E-03 +7.436797E-02 +1.038777E-03 +4.555958E-02 +6.107386E-04 +5.199084E-02 +8.828006E-04 +5.105046E-02 +5.591936E-04 +1.095224E-01 +2.675022E-03 +2.084815E-02 +1.082750E-04 +5.579780E-02 +5.469202E-04 +9.495661E-02 +1.419966E-03 +1.280076E-01 +2.520103E-03 +1.241519E-01 +2.433480E-03 +1.349742E-01 +2.504188E-03 +1.141044E-01 +2.428038E-03 +1.130324E-01 +1.720356E-03 +1.137084E-01 +1.891251E-03 +9.882155E-02 +1.696404E-03 +6.040159E-02 +7.575405E-04 +8.644781E-02 +1.794389E-03 +9.727136E-02 +1.353541E-03 +1.340186E-01 +2.951310E-03 +2.318335E-01 +6.603252E-03 +1.476469E-01 +3.292917E-03 +1.666256E-01 +4.426400E-03 +1.293622E-01 +1.916729E-03 +1.918440E-01 +4.887813E-03 +1.680575E-01 +3.208887E-03 +4.923095E-02 +6.563588E-04 +7.910820E-02 +1.021972E-03 +1.020355E-01 +1.285191E-03 +1.510553E-01 +3.275953E-03 +1.255629E-01 +1.948581E-03 +1.692347E-01 +5.943449E-03 +1.672928E-01 +3.337911E-03 +1.558106E-01 +2.875549E-03 +1.060074E-01 +1.569679E-03 +6.877708E-02 +1.029829E-03 +8.362502E-02 +1.022521E-03 +9.945978E-02 +1.606528E-03 +1.674432E-01 +3.867189E-03 +1.216650E-01 +2.493133E-03 +2.238570E-01 +5.467591E-03 +2.663718E-01 +9.395499E-03 +2.244663E-01 +5.650733E-03 +1.682990E-01 +3.326460E-03 +1.290019E-01 +2.856345E-03 +1.239696E-01 +2.379611E-03 +1.458566E-01 +4.113559E-03 +8.070294E-02 +1.198068E-03 +1.357315E-01 +3.117868E-03 +1.619699E-01 +3.585731E-03 +1.958982E-01 +5.115746E-03 +1.776585E-01 +4.588826E-03 +2.147662E-01 +5.433421E-03 +1.627119E-01 +2.886284E-03 +1.796564E-01 +4.684076E-03 +1.086029E-01 +1.976496E-03 +8.785791E-02 +1.103156E-03 +7.879086E-02 +1.433937E-03 +8.614610E-02 +1.069819E-03 +1.500232E-01 +3.209360E-03 +1.756303E-01 +4.247818E-03 +1.790515E-01 +4.363179E-03 +1.654784E-01 +4.247475E-03 +1.886300E-01 +4.844638E-03 +1.374646E-01 +2.373831E-03 +1.262352E-01 +2.754572E-03 +2.298462E-02 +1.395953E-04 +5.638152E-02 +5.767254E-04 +1.053247E-01 +1.903155E-03 +9.609740E-02 +1.572744E-03 +7.877879E-02 +1.036092E-03 +1.903056E-01 +5.121011E-03 +1.730644E-01 +3.300158E-03 +1.346274E-01 +2.606991E-03 +9.714578E-02 +1.698684E-03 +1.273408E-01 +2.552547E-03 +5.037871E-02 +5.560040E-04 +1.261746E-01 +3.287745E-03 +9.958124E-02 +1.614296E-03 +7.079336E-02 +8.561171E-04 +8.863898E-02 +1.306731E-03 +1.199303E-01 +2.107276E-03 +2.313010E-01 +7.739556E-03 +1.577787E-01 +2.960256E-03 +8.639730E-02 +1.201841E-03 +5.659795E-02 +4.694852E-04 +5.104294E-02 +5.268938E-04 +6.384520E-02 +1.050476E-03 +3.339740E-02 +2.480850E-04 +8.437203E-02 +1.544760E-03 +4.625762E-02 +6.009114E-04 +1.343672E-01 +2.619580E-03 +1.174094E-01 +2.667947E-03 +8.357176E-02 +1.039130E-03 +4.731066E-02 +3.124630E-04 +4.749930E-02 +5.129237E-04 +3.878239E-02 +5.236943E-04 +7.558078E-02 +1.440107E-03 +6.555887E-02 +7.561836E-04 +1.303901E-01 +2.764679E-03 +1.387692E-01 +2.620702E-03 +1.410499E-01 +3.203643E-03 +1.309527E-01 +2.731943E-03 +9.589097E-02 +1.548067E-03 +5.609383E-02 +5.921134E-04 +1.096306E-01 +2.122353E-03 +6.381818E-02 +9.439513E-04 +9.835519E-02 +1.561650E-03 +1.200447E-01 +2.077537E-03 +2.289759E-01 +6.569922E-03 +2.044311E-01 +4.786937E-03 +1.795569E-01 +4.117727E-03 +1.740908E-01 +3.775648E-03 +2.114890E-01 +6.553709E-03 +1.350332E-01 +3.254232E-03 +1.354820E-01 +2.909227E-03 +1.050048E-01 +2.108780E-03 +8.281040E-02 +1.022772E-03 +1.833104E-01 +4.064796E-03 +2.402611E-01 +6.073468E-03 +3.742742E-01 +1.745484E-02 +2.898729E-01 +1.012881E-02 +2.171404E-01 +6.076897E-03 +2.979566E-01 +1.047393E-02 +2.109751E-01 +5.543123E-03 +1.422788E-01 +4.002215E-03 +9.650255E-02 +1.789194E-03 +1.408445E-01 +2.513931E-03 +2.413347E-01 +7.206284E-03 +2.604648E-01 +7.914689E-03 +3.102388E-01 +1.048609E-02 +2.561683E-01 +9.086015E-03 +2.716967E-01 +8.803461E-03 +2.977518E-01 +1.072036E-02 +3.421581E-01 +1.371034E-02 +1.976808E-01 +6.130857E-03 +1.456806E-01 +3.692821E-03 +1.100115E-01 +1.679926E-03 +2.387486E-01 +7.617983E-03 +3.141187E-01 +1.212145E-02 +2.966176E-01 +1.248345E-02 +3.537282E-01 +1.600143E-02 +3.340151E-01 +1.419108E-02 +2.809424E-01 +1.063357E-02 +2.844146E-01 +9.114045E-03 +2.163287E-01 +5.949023E-03 +2.049774E-01 +6.265197E-03 +9.480490E-02 +1.184376E-03 +1.939662E-01 +4.609676E-03 +3.432049E-01 +1.277974E-02 +3.647228E-01 +1.505221E-02 +4.009987E-01 +1.935283E-02 +3.138361E-01 +1.254893E-02 +3.438278E-01 +1.334226E-02 +2.812314E-01 +1.216852E-02 +2.603220E-01 +8.391117E-03 +1.709025E-01 +4.264016E-03 +1.228523E-01 +2.416939E-03 +2.193677E-01 +8.326726E-03 +2.247567E-01 +6.429339E-03 +3.095415E-01 +1.142281E-02 +3.219591E-01 +1.154933E-02 +2.649194E-01 +1.051513E-02 +2.305332E-01 +6.488165E-03 +2.399512E-01 +9.436021E-03 +2.213458E-01 +6.719185E-03 +1.570027E-01 +4.835079E-03 +1.619056E-01 +3.154405E-03 +1.837208E-01 +5.173191E-03 +3.043448E-01 +1.189455E-02 +2.712902E-01 +1.019092E-02 +2.235869E-01 +6.195184E-03 +2.265572E-01 +7.086879E-03 +2.151576E-01 +5.865290E-03 +1.688968E-01 +3.770170E-03 +1.499070E-01 +3.571856E-03 +8.289459E-02 +1.268000E-03 +5.858084E-02 +5.268907E-04 +1.735102E-01 +5.642665E-03 +1.105650E-01 +1.955407E-03 +1.548733E-01 +3.412279E-03 +2.344765E-01 +7.515146E-03 +2.374439E-01 +8.831961E-03 +1.659923E-01 +3.686020E-03 +1.449879E-01 +2.972972E-03 +9.581840E-02 +1.386427E-03 +9.139465E-02 +1.164619E-03 +5.379547E-02 +4.842685E-04 +1.110320E-01 +2.164188E-03 +1.159951E-01 +1.971890E-03 +8.974298E-02 +9.375211E-04 +1.130422E-01 +2.462443E-03 +1.443079E-01 +2.844402E-03 +1.492118E-01 +3.605953E-03 +8.581231E-02 +1.170765E-03 +6.919528E-02 +9.104379E-04 +6.099196E-02 +1.095513E-03 +6.749596E-02 +7.121686E-04 +1.323975E-01 +2.792090E-03 +1.222936E-01 +2.240408E-03 +1.253738E-01 +2.347752E-03 +9.735284E-02 +1.185189E-03 +1.264672E-01 +2.142006E-03 +1.287095E-01 +3.340920E-03 +9.705482E-02 +1.351531E-03 +1.342330E-01 +3.619967E-03 +1.155641E-01 +2.178751E-03 +1.590188E-01 +3.559315E-03 +1.952442E-01 +4.590395E-03 +2.383089E-01 +6.703841E-03 +2.139543E-01 +6.602658E-03 +2.675136E-01 +8.973198E-03 +1.944806E-01 +4.977204E-03 +1.990033E-01 +5.173772E-03 +1.906275E-01 +4.961645E-03 +1.599751E-01 +2.957031E-03 +1.307457E-01 +2.170448E-03 +1.198087E-01 +2.578187E-03 +1.726271E-01 +3.698889E-03 +2.713634E-01 +8.566663E-03 +5.122567E-01 +3.062512E-02 +3.831674E-01 +1.706626E-02 +3.633640E-01 +1.502241E-02 +3.451328E-01 +1.555073E-02 +2.472924E-01 +8.124732E-03 +1.762382E-01 +4.255455E-03 +1.467738E-01 +3.481509E-03 +1.785598E-01 +6.539443E-03 +1.830190E-01 +4.936379E-03 +4.659340E-01 +2.706966E-02 +5.023490E-01 +3.068085E-02 +6.853967E-01 +5.662300E-02 +5.682403E-01 +3.764689E-02 +6.281147E-01 +4.728417E-02 +4.542071E-01 +2.517473E-02 +3.144113E-01 +1.232063E-02 +1.468696E-01 +3.582954E-03 +1.682495E-01 +3.387004E-03 +2.702949E-01 +9.072068E-03 +3.573130E-01 +1.672769E-02 +5.167505E-01 +3.402812E-02 +7.998053E-01 +7.670496E-02 +5.201277E-01 +3.061828E-02 +3.850550E-01 +2.020363E-02 +4.560916E-01 +2.713184E-02 +2.072743E-01 +5.179000E-03 +2.166930E-01 +7.983860E-03 +1.091868E-01 +1.673174E-03 +1.811233E-01 +4.001677E-03 +3.770375E-01 +1.987838E-02 +5.296653E-01 +2.974185E-02 +6.974237E-01 +5.462807E-02 +6.467791E-01 +4.949991E-02 +4.891845E-01 +3.041285E-02 +4.240103E-01 +2.176819E-02 +2.841149E-01 +1.105366E-02 +1.929437E-01 +4.281538E-03 +1.862098E-01 +4.308366E-03 +2.076369E-01 +4.682464E-03 +4.176628E-01 +2.402640E-02 +4.457274E-01 +2.647548E-02 +4.766048E-01 +2.623379E-02 +6.278811E-01 +4.683999E-02 +4.823482E-01 +2.794296E-02 +4.641786E-01 +2.746647E-02 +3.023706E-01 +1.146381E-02 +1.123717E-01 +1.760314E-03 +2.354666E-01 +1.065017E-02 +1.636891E-01 +4.284691E-03 +3.284045E-01 +1.210523E-02 +3.167190E-01 +1.335793E-02 +4.092350E-01 +1.860896E-02 +4.539714E-01 +2.260730E-02 +3.725391E-01 +1.667519E-02 +2.795405E-01 +9.154147E-03 +2.199953E-01 +7.783541E-03 +1.469691E-01 +4.146173E-03 +1.326578E-01 +2.611109E-03 +1.785074E-01 +4.132173E-03 +1.589050E-01 +3.902915E-03 +3.079218E-01 +1.069274E-02 +2.451220E-01 +8.310971E-03 +2.928583E-01 +1.186840E-02 +2.064830E-01 +6.139283E-03 +1.801392E-01 +3.863618E-03 +2.009835E-01 +6.159157E-03 +7.378130E-02 +1.282188E-03 +9.714870E-02 +1.167567E-03 +9.636462E-02 +1.094431E-03 +1.542921E-01 +2.942637E-03 +1.601786E-01 +4.585595E-03 +1.459336E-01 +2.484655E-03 +9.912399E-02 +1.868517E-03 +1.685975E-01 +3.436440E-03 +2.015455E-01 +5.727404E-03 +1.119151E-01 +2.477462E-03 +9.150086E-02 +1.624380E-03 +4.742528E-02 +3.421264E-04 +1.823800E-01 +6.046172E-03 +1.581304E-01 +3.695801E-03 +1.537875E-01 +3.483744E-03 +1.816982E-01 +4.474357E-03 +3.000507E-01 +1.065688E-02 +2.500082E-01 +7.508730E-03 +1.601898E-01 +3.408525E-03 +1.114064E-01 +1.730639E-03 +6.865908E-02 +7.355866E-04 +9.123141E-02 +1.186111E-03 +1.471117E-01 +3.028305E-03 +2.643140E-01 +9.790031E-03 +1.648073E-01 +3.517309E-03 +3.044579E-01 +1.168982E-02 +2.742895E-01 +8.190026E-03 +3.695621E-01 +1.648852E-02 +2.657405E-01 +8.636878E-03 +2.280781E-01 +6.081628E-03 +9.988454E-02 +1.092936E-03 +1.046543E-01 +2.073804E-03 +2.777797E-01 +1.009800E-02 +3.660427E-01 +1.616450E-02 +4.337463E-01 +2.546284E-02 +5.444391E-01 +3.551092E-02 +5.792842E-01 +3.974284E-02 +4.833176E-01 +2.633603E-02 +4.210681E-01 +1.934743E-02 +2.502725E-01 +7.152209E-03 +1.687123E-01 +5.414669E-03 +1.627058E-01 +4.133768E-03 +2.466750E-01 +7.737265E-03 +4.604958E-01 +2.466857E-02 +7.297304E-01 +6.002099E-02 +7.696698E-01 +7.205977E-02 +8.144576E-01 +8.737915E-02 +6.712593E-01 +4.960413E-02 +5.784381E-01 +3.768770E-02 +3.018257E-01 +1.124658E-02 +1.848215E-01 +5.256814E-03 +2.038347E-01 +5.001616E-03 +3.509396E-01 +1.367373E-02 +4.548534E-01 +2.472124E-02 +8.408580E-01 +7.498379E-02 +1.124722E+00 +1.372134E-01 +1.212509E+00 +1.609699E-01 +8.686055E-01 +8.923119E-02 +7.260552E-01 +5.922762E-02 +3.646146E-01 +1.695667E-02 +1.757110E-01 +5.024516E-03 +1.686522E-01 +3.814685E-03 +3.023547E-01 +1.006813E-02 +4.941913E-01 +2.727393E-02 +8.741589E-01 +8.241692E-02 +1.172320E+00 +1.490257E-01 +1.292908E+00 +1.841406E-01 +8.909073E-01 +9.620969E-02 +5.209518E-01 +3.000472E-02 +3.965469E-01 +1.974149E-02 +1.711011E-01 +3.912611E-03 +2.142186E-01 +8.247066E-03 +1.696243E-01 +3.956462E-03 +4.329508E-01 +2.267303E-02 +8.198863E-01 +7.837270E-02 +6.590219E-01 +5.182644E-02 +8.592361E-01 +8.990276E-02 +7.462144E-01 +6.544856E-02 +4.258629E-01 +2.112979E-02 +3.282506E-01 +1.233694E-02 +1.821249E-01 +6.802302E-03 +1.278153E-01 +2.300850E-03 +2.284680E-01 +8.035892E-03 +3.703590E-01 +1.909858E-02 +5.158618E-01 +3.370797E-02 +6.443407E-01 +4.753054E-02 +4.526763E-01 +2.455356E-02 +4.869630E-01 +2.818017E-02 +3.109678E-01 +1.173563E-02 +2.453178E-01 +7.052370E-03 +1.075211E-01 +1.625602E-03 +1.378942E-01 +2.421025E-03 +1.933132E-01 +5.239277E-03 +2.414331E-01 +7.590068E-03 +3.174567E-01 +1.269551E-02 +3.329565E-01 +1.431369E-02 +2.940020E-01 +9.794156E-03 +3.154830E-01 +1.105998E-02 +1.936577E-01 +4.483865E-03 +1.897439E-01 +7.235399E-03 +8.021098E-02 +7.940912E-04 +1.193232E-01 +2.711280E-03 +1.497850E-01 +5.420438E-03 +1.798106E-01 +4.414091E-03 +1.785646E-01 +4.336702E-03 +2.470614E-01 +7.228380E-03 +2.216936E-01 +5.865658E-03 +1.741635E-01 +4.786790E-03 +1.747214E-01 +3.928453E-03 +1.102521E-01 +1.584592E-03 +5.728387E-02 +5.659010E-04 +1.152645E-01 +2.543824E-03 +1.840112E-01 +5.611376E-03 +1.808779E-01 +3.998170E-03 +2.131755E-01 +5.511261E-03 +2.007849E-01 +5.112077E-03 +3.237002E-01 +1.209173E-02 +1.935346E-01 +5.219674E-03 +1.711068E-01 +3.795257E-03 +1.074251E-01 +1.586218E-03 +6.720820E-02 +7.310529E-04 +9.257051E-02 +1.160366E-03 +1.514228E-01 +2.942798E-03 +2.811310E-01 +8.775540E-03 +2.594795E-01 +9.019644E-03 +3.003136E-01 +1.182153E-02 +4.026905E-01 +1.975388E-02 +3.985679E-01 +1.776400E-02 +3.845292E-01 +1.700936E-02 +2.100930E-01 +5.450110E-03 +1.547083E-01 +3.688477E-03 +1.485974E-01 +3.372341E-03 +2.297180E-01 +6.584276E-03 +3.595602E-01 +1.586479E-02 +5.554541E-01 +3.321204E-02 +5.883316E-01 +3.857351E-02 +6.573016E-01 +5.041895E-02 +5.627698E-01 +3.356380E-02 +3.735043E-01 +1.670088E-02 +3.414429E-01 +1.411003E-02 +1.873036E-01 +4.734353E-03 +1.417975E-01 +2.575062E-03 +3.667100E-01 +1.823639E-02 +6.423896E-01 +5.370929E-02 +7.643998E-01 +7.101610E-02 +1.205382E+00 +1.530951E-01 +1.222427E+00 +1.615304E-01 +1.056883E+00 +1.367649E-01 +4.172596E-01 +1.856012E-02 +2.619717E-01 +8.351589E-03 +2.212472E-01 +5.760540E-03 +1.661126E-01 +3.716273E-03 +4.669900E-01 +2.481995E-02 +6.482388E-01 +4.852353E-02 +1.177612E+00 +1.493796E-01 +4.114708E+00 +1.791984E+00 +4.267920E+00 +1.910806E+00 +1.305252E+00 +2.173314E-01 +7.310584E-01 +6.237152E-02 +3.486264E-01 +1.301568E-02 +2.353728E-01 +7.533032E-03 +2.045902E-01 +4.997184E-03 +3.852946E-01 +1.646521E-02 +7.067789E-01 +5.775428E-02 +1.160357E+00 +1.460044E-01 +4.632606E+00 +2.269726E+00 +4.571133E+00 +2.199170E+00 +1.255312E+00 +1.734311E-01 +6.504938E-01 +4.819256E-02 +3.901607E-01 +1.960621E-02 +1.562002E-01 +3.325900E-03 +2.268010E-01 +6.502538E-03 +3.992762E-01 +1.931929E-02 +6.043048E-01 +3.982372E-02 +8.282276E-01 +7.382650E-02 +1.344103E+00 +1.870469E-01 +1.382839E+00 +2.107838E-01 +9.896232E-01 +1.097631E-01 +6.864289E-01 +5.425243E-02 +2.853774E-01 +1.070129E-02 +2.461041E-01 +7.613043E-03 +1.582320E-01 +3.193514E-03 +2.300168E-01 +5.784482E-03 +3.991370E-01 +1.981940E-02 +5.676681E-01 +3.856145E-02 +7.434275E-01 +6.152443E-02 +8.380497E-01 +7.969257E-02 +6.480100E-01 +5.048920E-02 +3.911757E-01 +1.773775E-02 +2.643229E-01 +9.900690E-03 +2.187908E-01 +6.919967E-03 +1.281363E-01 +1.960588E-03 +2.139676E-01 +6.356521E-03 +2.176293E-01 +5.727003E-03 +3.884142E-01 +1.709017E-02 +4.870420E-01 +2.883252E-02 +4.513060E-01 +2.594396E-02 +4.082087E-01 +1.828447E-02 +2.453357E-01 +9.056291E-03 +1.830639E-01 +5.540521E-03 +1.290978E-01 +2.526036E-03 +6.956983E-02 +7.545215E-04 +1.496108E-01 +2.948765E-03 +2.351155E-01 +6.895402E-03 +2.477972E-01 +7.750073E-03 +3.720114E-01 +1.471500E-02 +2.574848E-01 +7.753799E-03 +1.890091E-01 +4.516094E-03 +1.459763E-01 +2.610376E-03 +1.564084E-01 +3.266574E-03 +9.405318E-02 +1.606034E-03 +1.034826E-01 +1.553063E-03 +1.405650E-01 +4.207768E-03 +1.889571E-01 +4.444562E-03 +1.743480E-01 +3.911447E-03 +1.416364E-01 +2.343860E-03 +2.307443E-01 +7.102755E-03 +1.617078E-01 +3.813457E-03 +2.205615E-01 +7.391402E-03 +1.408447E-01 +2.389426E-03 +9.537792E-02 +1.957273E-03 +1.595071E-01 +3.372622E-03 +3.062551E-01 +1.122418E-02 +2.387165E-01 +7.680438E-03 +3.528032E-01 +1.338298E-02 +4.441106E-01 +2.285936E-02 +4.110115E-01 +1.874949E-02 +4.317996E-01 +1.968661E-02 +2.839796E-01 +9.879629E-03 +2.732779E-01 +8.620164E-03 +8.157999E-02 +1.133034E-03 +1.899240E-01 +5.053348E-03 +3.227158E-01 +1.178834E-02 +4.709360E-01 +2.736173E-02 +5.067434E-01 +2.756649E-02 +8.055244E-01 +7.407530E-02 +5.370335E-01 +3.858979E-02 +6.205981E-01 +4.614253E-02 +4.705633E-01 +2.767424E-02 +2.636737E-01 +9.397976E-03 +1.130087E-01 +1.673004E-03 +1.453104E-01 +3.242010E-03 +3.886601E-01 +1.908900E-02 +4.993435E-01 +3.139490E-02 +8.513612E-01 +8.749837E-02 +1.516911E+00 +2.710712E-01 +1.406450E+00 +2.161620E-01 +9.587365E-01 +1.078758E-01 +5.299200E-01 +3.825470E-02 +3.672028E-01 +1.638863E-02 +2.169211E-01 +5.946348E-03 +1.719126E-01 +4.353756E-03 +4.539417E-01 +2.445131E-02 +7.058570E-01 +5.448241E-02 +1.213429E+00 +1.710532E-01 +3.713956E+00 +1.432033E+00 +4.227114E+00 +1.859722E+00 +1.246711E+00 +1.850981E-01 +6.478348E-01 +5.416126E-02 +3.563685E-01 +1.447225E-02 +1.280409E-01 +2.167446E-03 +2.218509E-01 +5.932778E-03 +3.947190E-01 +1.652818E-02 +6.507162E-01 +4.675889E-02 +1.242926E+00 +1.872176E-01 +4.302933E+00 +1.909275E+00 +4.304366E+00 +1.934972E+00 +1.169852E+00 +1.621969E-01 +5.990305E-01 +4.159076E-02 +3.509285E-01 +1.478774E-02 +2.153821E-01 +5.848786E-03 +1.402457E-01 +2.618558E-03 +3.307711E-01 +1.232965E-02 +5.849860E-01 +3.657295E-02 +9.034572E-01 +9.315387E-02 +1.520658E+00 +2.437423E-01 +1.135130E+00 +1.382627E-01 +9.014297E-01 +9.720847E-02 +6.579119E-01 +5.051533E-02 +2.848374E-01 +9.701790E-03 +1.904001E-01 +4.047242E-03 +1.851274E-01 +5.144918E-03 +2.519821E-01 +8.684849E-03 +3.532581E-01 +1.465522E-02 +4.544440E-01 +2.549015E-02 +6.963186E-01 +5.524192E-02 +6.097070E-01 +3.995479E-02 +6.074075E-01 +5.206769E-02 +4.374549E-01 +2.366240E-02 +2.574947E-01 +8.333501E-03 +1.278025E-01 +2.170886E-03 +1.071155E-01 +1.748974E-03 +2.015977E-01 +5.099277E-03 +2.726467E-01 +9.337718E-03 +3.349271E-01 +1.222785E-02 +4.388732E-01 +2.334318E-02 +3.408815E-01 +1.439810E-02 +3.712626E-01 +1.597510E-02 +2.480125E-01 +8.275523E-03 +1.520639E-01 +2.752778E-03 +9.365705E-02 +1.199392E-03 +1.085462E-01 +2.036623E-03 +1.408888E-01 +2.897433E-03 +1.878790E-01 +5.021441E-03 +2.297032E-01 +6.245973E-03 +1.858744E-01 +4.441917E-03 +2.423469E-01 +6.852465E-03 +2.283632E-01 +6.314480E-03 +1.928041E-01 +5.431526E-03 +1.198104E-01 +2.580046E-03 +8.619696E-02 +1.337493E-03 +7.780836E-02 +1.674226E-03 +9.692459E-02 +1.219361E-03 +1.943967E-01 +4.459891E-03 +2.494725E-01 +7.777487E-03 +2.097978E-01 +8.245740E-03 +1.661595E-01 +4.258378E-03 +1.854527E-01 +4.327935E-03 +1.668188E-01 +3.216331E-03 +1.301662E-01 +3.969782E-03 +1.007744E-01 +1.573169E-03 +8.648914E-02 +1.391423E-03 +1.534497E-01 +2.980148E-03 +2.082093E-01 +4.991376E-03 +3.380248E-01 +1.227721E-02 +3.907089E-01 +1.770627E-02 +2.531408E-01 +7.828810E-03 +4.168039E-01 +1.881861E-02 +2.593192E-01 +7.387676E-03 +1.993743E-01 +5.362856E-03 +1.368232E-01 +2.667957E-03 +1.495518E-01 +3.346868E-03 +2.630960E-01 +9.478703E-03 +3.929542E-01 +1.710164E-02 +4.865666E-01 +2.851594E-02 +5.029322E-01 +3.156083E-02 +6.553493E-01 +5.021005E-02 +5.667030E-01 +4.186377E-02 +4.105274E-01 +2.102523E-02 +2.247647E-01 +7.123896E-03 +1.695614E-01 +3.526426E-03 +1.545322E-01 +2.888223E-03 +3.063991E-01 +1.145076E-02 +4.512831E-01 +2.316067E-02 +6.346410E-01 +4.868689E-02 +6.441196E-01 +4.644860E-02 +9.190365E-01 +9.711802E-02 +7.458883E-01 +6.448193E-02 +5.178634E-01 +3.589903E-02 +3.059552E-01 +1.103037E-02 +1.919182E-01 +7.063068E-03 +2.127676E-01 +7.068298E-03 +2.804180E-01 +9.256761E-03 +6.148571E-01 +4.270398E-02 +7.914586E-01 +8.003283E-02 +1.553058E+00 +2.512378E-01 +1.233210E+00 +1.636276E-01 +8.484663E-01 +8.472718E-02 +4.846913E-01 +3.277993E-02 +2.970379E-01 +1.009480E-02 +1.648011E-01 +3.936025E-03 +2.568657E-01 +9.334526E-03 +3.308085E-01 +1.319117E-02 +4.514535E-01 +2.501083E-02 +7.404224E-01 +7.498948E-02 +1.441901E+00 +2.253633E-01 +1.361497E+00 +2.027947E-01 +9.218086E-01 +9.573599E-02 +5.121545E-01 +3.102991E-02 +2.714593E-01 +8.321432E-03 +1.610373E-01 +3.861192E-03 +1.260213E-01 +2.059778E-03 +2.639926E-01 +8.553712E-03 +3.903656E-01 +2.120434E-02 +6.713558E-01 +6.787067E-02 +8.249516E-01 +8.014323E-02 +9.661898E-01 +1.164265E-01 +6.453827E-01 +4.960136E-02 +4.223368E-01 +2.321407E-02 +3.176142E-01 +1.194832E-02 +2.024477E-01 +5.524067E-03 +1.462501E-01 +3.549186E-03 +2.271669E-01 +6.331342E-03 +3.160296E-01 +1.372436E-02 +4.432888E-01 +2.126301E-02 +7.270762E-01 +6.487099E-02 +6.978494E-01 +5.538934E-02 +4.501793E-01 +2.531848E-02 +4.611865E-01 +2.432741E-02 +2.455689E-01 +8.366273E-03 +9.950167E-02 +1.901085E-03 +1.014830E-01 +1.540688E-03 +2.039189E-01 +7.545412E-03 +1.818539E-01 +3.576974E-03 +3.044983E-01 +1.423699E-02 +2.729832E-01 +1.331202E-02 +3.106891E-01 +1.144803E-02 +3.971745E-01 +1.721238E-02 +2.448524E-01 +6.977697E-03 +2.084599E-01 +5.955188E-03 +6.078377E-02 +5.442247E-04 +6.352672E-02 +7.273361E-04 +1.338729E-01 +2.922319E-03 +1.615985E-01 +3.901096E-03 +1.883691E-01 +4.541820E-03 +1.994268E-01 +4.419502E-03 +2.550700E-01 +1.011995E-02 +2.656566E-01 +8.538973E-03 +1.326436E-01 +2.700926E-03 +1.828790E-01 +4.860390E-03 +1.055978E-01 +2.086153E-03 +2.486040E-02 +1.152553E-04 +6.977514E-02 +7.637517E-04 +1.426015E-01 +2.562593E-03 +2.239382E-01 +7.615366E-03 +2.159614E-01 +6.154601E-03 +1.386893E-01 +3.229314E-03 +1.469009E-01 +2.610026E-03 +1.359445E-01 +2.208925E-03 +7.949674E-02 +1.090923E-03 +9.409645E-02 +1.796197E-03 +9.915992E-02 +1.496092E-03 +1.773128E-01 +4.163631E-03 +1.666022E-01 +5.373828E-03 +2.624372E-01 +8.835121E-03 +3.345364E-01 +1.299223E-02 +2.295291E-01 +6.890997E-03 +3.168143E-01 +1.633856E-02 +1.606576E-01 +4.742954E-03 +2.198036E-01 +5.376103E-03 +1.444186E-01 +3.197937E-03 +1.523611E-01 +2.626194E-03 +2.057216E-01 +5.184325E-03 +2.484219E-01 +8.065603E-03 +3.170831E-01 +1.371214E-02 +4.112561E-01 +2.349214E-02 +4.574564E-01 +2.381874E-02 +3.633926E-01 +1.532926E-02 +4.139000E-01 +1.844845E-02 +3.224482E-01 +1.294508E-02 +2.591168E-01 +8.231726E-03 +2.238452E-01 +8.182427E-03 +3.179609E-01 +1.267020E-02 +3.742188E-01 +1.866260E-02 +3.918803E-01 +2.306037E-02 +5.631822E-01 +4.613548E-02 +5.724671E-01 +3.647197E-02 +5.376124E-01 +3.468394E-02 +4.185970E-01 +1.861497E-02 +2.486122E-01 +8.141595E-03 +1.588234E-01 +3.825511E-03 +1.596044E-01 +3.435511E-03 +2.204163E-01 +5.757785E-03 +4.455893E-01 +2.579049E-02 +6.569462E-01 +4.890438E-02 +6.135941E-01 +4.664131E-02 +6.793213E-01 +5.401213E-02 +6.548499E-01 +4.947625E-02 +4.849197E-01 +2.856176E-02 +2.762591E-01 +9.482575E-03 +1.599354E-01 +3.980976E-03 +1.632220E-01 +4.266101E-03 +2.203472E-01 +7.096957E-03 +4.060220E-01 +1.794153E-02 +4.157637E-01 +2.024853E-02 +6.946025E-01 +5.477741E-02 +6.505924E-01 +4.666856E-02 +5.068244E-01 +3.491193E-02 +3.470484E-01 +1.737934E-02 +2.293816E-01 +7.685918E-03 +2.389629E-01 +8.850896E-03 +1.505995E-01 +2.876582E-03 +2.907994E-01 +1.195800E-02 +3.543847E-01 +1.568913E-02 +4.095750E-01 +1.979096E-02 +4.799528E-01 +2.728872E-02 +5.142024E-01 +3.024987E-02 +4.680612E-01 +2.551940E-02 +4.058385E-01 +2.310793E-02 +2.880766E-01 +1.175767E-02 +1.167011E-01 +2.057180E-03 +1.385494E-01 +3.784085E-03 +2.491848E-01 +7.449392E-03 +3.333697E-01 +1.223435E-02 +3.161041E-01 +1.234645E-02 +4.104319E-01 +2.113108E-02 +4.583192E-01 +2.651122E-02 +3.790470E-01 +1.851680E-02 +2.516503E-01 +7.415388E-03 +1.782866E-01 +3.900659E-03 +1.104557E-01 +2.248074E-03 +1.167308E-01 +3.039772E-03 +2.075736E-01 +7.064068E-03 +2.180168E-01 +6.336070E-03 +2.903925E-01 +9.489097E-03 +2.744247E-01 +9.030846E-03 +3.403069E-01 +1.268580E-02 +3.019064E-01 +1.052699E-02 +2.436311E-01 +7.489666E-03 +1.319666E-01 +2.817088E-03 +7.556566E-02 +8.976997E-04 +3.554724E-02 +4.034308E-04 +5.711633E-02 +4.306501E-04 +1.133366E-01 +1.754982E-03 +1.590142E-01 +3.260631E-03 +1.569202E-01 +3.503970E-03 +1.640218E-01 +3.672006E-03 +1.402148E-01 +3.495565E-03 +1.950403E-01 +6.678626E-03 +7.542042E-02 +1.053718E-03 +8.890472E-02 +1.315673E-03 +5.118031E-02 +4.782731E-04 +5.313139E-02 +5.751260E-04 +9.883790E-02 +1.983226E-03 +1.303960E-01 +2.333665E-03 +2.038247E-01 +5.452430E-03 +8.165890E-02 +9.243538E-04 +1.461825E-01 +3.217211E-03 +9.194982E-02 +1.221828E-03 +1.074998E-01 +3.217694E-03 +7.113698E-02 +8.980335E-04 +6.159336E-02 +7.871872E-04 +1.581280E-01 +3.230054E-03 +1.149541E-01 +1.639607E-03 +1.442538E-01 +3.516238E-03 +1.614780E-01 +3.943314E-03 +2.221209E-01 +6.094039E-03 +1.765576E-01 +5.283407E-03 +1.870343E-01 +4.582302E-03 +1.502824E-01 +2.786908E-03 +1.049316E-01 +1.560309E-03 +1.483976E-01 +3.461823E-03 +1.381855E-01 +3.483987E-03 +1.636269E-01 +3.625941E-03 +2.129101E-01 +6.053342E-03 +2.865882E-01 +9.222808E-03 +3.948129E-01 +1.754777E-02 +1.863158E-01 +4.282436E-03 +2.302657E-01 +6.040845E-03 +1.622669E-01 +3.583977E-03 +1.260152E-01 +2.175978E-03 +1.208627E-01 +2.044210E-03 +2.640979E-01 +8.849372E-03 +2.498718E-01 +9.012857E-03 +3.228690E-01 +1.113733E-02 +4.366129E-01 +2.169977E-02 +3.613345E-01 +1.386290E-02 +3.326626E-01 +1.382728E-02 +2.546343E-01 +8.375242E-03 +1.750139E-01 +3.956566E-03 +1.149909E-01 +1.553531E-03 +9.171613E-02 +1.258097E-03 +1.688854E-01 +3.626841E-03 +3.074559E-01 +1.128795E-02 +4.014122E-01 +1.892526E-02 +2.960858E-01 +1.062685E-02 +3.156364E-01 +1.221711E-02 +2.303342E-01 +5.911752E-03 +2.465437E-01 +7.303148E-03 +2.499264E-01 +7.462884E-03 +1.679361E-01 +3.415565E-03 +8.403406E-02 +1.398023E-03 +2.084519E-01 +6.333576E-03 +2.870835E-01 +9.368435E-03 +3.331424E-01 +1.418197E-02 +3.028572E-01 +9.995543E-03 +3.615811E-01 +1.447718E-02 +3.003659E-01 +9.829990E-03 +2.216267E-01 +5.579967E-03 +1.265740E-01 +2.312172E-03 +1.539258E-01 +3.811869E-03 +5.116714E-02 +3.766772E-04 +2.069794E-01 +4.706478E-03 +2.824890E-01 +9.829374E-03 +4.342550E-01 +2.175150E-02 +3.338091E-01 +1.258397E-02 +2.975162E-01 +9.543763E-03 +2.958141E-01 +1.060228E-02 +2.072746E-01 +5.809548E-03 +1.572435E-01 +3.553858E-03 +8.780067E-02 +1.080238E-03 +6.277077E-02 +8.146319E-04 +2.027002E-01 +4.880471E-03 +2.249296E-01 +6.801086E-03 +2.562026E-01 +7.985736E-03 +2.610332E-01 +8.341277E-03 +2.487859E-01 +6.745574E-03 +2.452106E-01 +7.276116E-03 +1.292894E-01 +2.441647E-03 +1.384975E-01 +2.258716E-03 +1.262151E-01 +2.266348E-03 +8.499870E-02 +1.048605E-03 +1.061529E-01 +1.352122E-03 +1.903736E-01 +5.558784E-03 +1.487595E-01 +2.773453E-03 +1.839791E-01 +4.150617E-03 +1.465408E-01 +2.813252E-03 +1.828928E-01 +4.248902E-03 +2.248261E-01 +6.983599E-03 +1.693010E-01 +3.303866E-03 +6.453527E-02 +1.173497E-03 +1.147332E-01 +3.617311E-03 +7.981911E-02 +8.325283E-04 +8.959341E-02 +1.548148E-03 +1.554108E-01 +4.270743E-03 +1.060675E-01 +1.816154E-03 +1.871862E-01 +4.742433E-03 +8.649749E-02 +1.100158E-03 +1.195635E-01 +1.740482E-03 +1.099096E-01 +1.964225E-03 +6.441028E-02 +7.477974E-04 +6.164448E-02 +1.090465E-03 +4.631552E-02 +5.181770E-04 +7.007983E-02 +7.319313E-04 +5.381387E-02 +3.817146E-04 +9.120379E-02 +1.840216E-03 +9.523925E-02 +1.956679E-03 +6.828427E-02 +8.825134E-04 +3.090110E-02 +1.871704E-04 +3.528248E-02 +2.289672E-04 +2.405019E-02 +9.740436E-05 +7.703115E-02 +8.995936E-04 +1.026207E-01 +1.722791E-03 +1.220668E-01 +2.216590E-03 +8.640530E-02 +1.102412E-03 +1.518321E-01 +3.298050E-03 +1.321954E-01 +2.553334E-03 +1.593152E-01 +4.604144E-03 +8.524427E-02 +1.055424E-03 +4.996523E-02 +5.024077E-04 +7.358073E-02 +1.128410E-03 +1.189640E-01 +2.194057E-03 +1.207644E-01 +2.491839E-03 +1.083314E-01 +1.503478E-03 +2.128070E-01 +7.648402E-03 +1.315274E-01 +2.025984E-03 +1.514078E-01 +3.617861E-03 +1.141892E-01 +2.085004E-03 +1.013844E-01 +1.496233E-03 +1.248655E-01 +2.516158E-03 +6.288783E-02 +9.200482E-04 +8.317750E-02 +1.508722E-03 +1.324137E-01 +3.423783E-03 +1.514092E-01 +3.487353E-03 +1.888798E-01 +5.346454E-03 +1.360192E-01 +2.392896E-03 +1.868095E-01 +3.836399E-03 +1.715305E-01 +3.663437E-03 +1.304944E-01 +1.999316E-03 +1.436264E-01 +3.567607E-03 +8.539019E-02 +1.065672E-03 +7.909923E-02 +1.167334E-03 +1.799124E-01 +4.569449E-03 +1.589893E-01 +3.478790E-03 +1.741005E-01 +3.674254E-03 +2.126076E-01 +6.791986E-03 +1.862610E-01 +4.406388E-03 +2.386545E-01 +6.839411E-03 +1.744812E-01 +4.301498E-03 +6.344775E-02 +6.567949E-04 +6.849881E-02 +7.535621E-04 +8.197852E-02 +9.887532E-04 +1.446787E-01 +3.971664E-03 +2.032184E-01 +5.194567E-03 +1.662525E-01 +3.292552E-03 +2.664800E-01 +8.114532E-03 +2.447963E-01 +7.854969E-03 +1.957695E-01 +5.152593E-03 +1.708599E-01 +4.101306E-03 +1.103539E-01 +2.077575E-03 +7.844092E-02 +1.163579E-03 +1.268702E-01 +2.695645E-03 +9.533912E-02 +1.278173E-03 +1.446874E-01 +3.872867E-03 +1.322553E-01 +2.335662E-03 +1.726451E-01 +3.517931E-03 +1.876877E-01 +4.835176E-03 +1.573863E-01 +3.574829E-03 +2.339589E-01 +7.282388E-03 +1.501104E-01 +2.820093E-03 +5.397296E-02 +5.850746E-04 +7.619565E-02 +1.435724E-03 +9.012995E-02 +1.564717E-03 +1.628327E-01 +3.377881E-03 +1.563374E-01 +3.245008E-03 +2.276467E-01 +7.079821E-03 +2.135994E-01 +7.272300E-03 +1.402939E-01 +2.997945E-03 +2.226852E-01 +6.770128E-03 +8.944673E-02 +1.404954E-03 +5.580544E-02 +9.620095E-04 +5.967367E-02 +1.011919E-03 +3.214966E-02 +1.717861E-04 +1.433931E-01 +2.788824E-03 +1.494058E-01 +2.846313E-03 +1.213890E-01 +3.277981E-03 +1.367546E-01 +2.740789E-03 +1.233601E-01 +2.166273E-03 +6.717077E-02 +9.275956E-04 +7.800745E-02 +8.928402E-04 +4.302808E-02 +5.599709E-04 +8.657826E-02 +1.515787E-03 +5.180954E-02 +5.871992E-04 +4.455245E-02 +4.150367E-04 +7.224886E-02 +8.834373E-04 +7.163514E-02 +8.735272E-04 +1.058744E-01 +2.396856E-03 +8.813243E-02 +1.064695E-03 +8.319821E-02 +2.457105E-03 +6.193848E-02 +6.865448E-04 +6.069918E-02 +6.588335E-04 diff --git a/tests/regression_tests/white_plane/results_true.dat b/tests/regression_tests/white_plane/results_true.dat index dea369205..6f1d064eb 100644 --- a/tests/regression_tests/white_plane/results_true.dat +++ b/tests/regression_tests/white_plane/results_true.dat @@ -1,2 +1,2 @@ k-combined: -2.279902E+00 3.262078E-03 +2.279719E+00 5.380792E-03 diff --git a/tests/unit_tests/test_deplete_resultslist.py b/tests/unit_tests/test_deplete_resultslist.py index e13944e03..3c6d77a75 100644 --- a/tests/unit_tests/test_deplete_resultslist.py +++ b/tests/unit_tests/test_deplete_resultslist.py @@ -22,7 +22,7 @@ def test_get_atoms(res): t_ref = np.array([0.0, 1296000.0, 2592000.0, 3888000.0]) n_ref = np.array( - [6.67473282e+08, 3.72442707e+14, 3.61129692e+14, 4.01920099e+14]) + [6.67473282e+08, 3.88942731e+14, 3.73091215e+14, 3.26987387e+14]) np.testing.assert_allclose(t, t_ref) np.testing.assert_allclose(n, n_ref) @@ -48,8 +48,8 @@ def test_get_reaction_rate(res): t, r = res.get_reaction_rate("1", "Xe135", "(n,gamma)") t_ref = [0.0, 1296000.0, 2592000.0, 3888000.0] - n_ref = [6.67473282e+08, 3.72442707e+14, 3.61129692e+14, 4.01920099e+14] - xs_ref = [5.10301159e-05, 3.19379638e-05, 4.50543806e-05, 4.71004301e-05] + n_ref = [6.67473282e+08, 3.88942731e+14, 3.73091215e+14, 3.26987387e+14] + xs_ref = [2.53336104e-05, 4.21747011e-05, 3.48616127e-05, 3.61775563e-05] np.testing.assert_allclose(t, t_ref) np.testing.assert_allclose(r, np.array(n_ref) * xs_ref) @@ -61,8 +61,8 @@ def test_get_keff(res): t_min, k = res.get_keff(time_units='min') t_ref = [0.0, 1296000.0, 2592000.0, 3888000.0] - k_ref = [1.21409662, 1.16518654, 1.25357797, 1.22611968] - u_ref = [0.0278795195, 0.0233141097, 0.0167899218, 0.0246734716] + k_ref = [1.1596402556, 1.1914183335, 1.2292570871, 1.1797030302] + u_ref = [0.0270680649, 0.0219163444, 0.024268508 , 0.0221401194] np.testing.assert_allclose(t, t_ref) np.testing.assert_allclose(t_min * 60, t_ref) From ba074c5a5a2053ab8ac375c96eb17fec26fb303e Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Fri, 10 Feb 2023 14:59:57 -0600 Subject: [PATCH 080/120] Fix several thermal scattering nuclide assignments --- openmc/data/njoy.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/openmc/data/njoy.py b/openmc/data/njoy.py index d8ecaae18..9c2055cc4 100644 --- a/openmc/data/njoy.py +++ b/openmc/data/njoy.py @@ -51,7 +51,7 @@ _THERMAL_DATA = { 'c_Li_in_FLiBe': ThermalTuple('liflib', [3006, 3007], 1), 'c_Mg24': ThermalTuple('mg24', [12024], 1), 'c_N_in_UN': ThermalTuple('n-un', [7014, 7015], 1), - 'c_O_in_Al2O3': ThermalTuple('osap00', [92238], 1), + 'c_O_in_Al2O3': ThermalTuple('osap00', [8016, 8017, 8018], 1), 'c_O_in_BeO': ThermalTuple('obeo', [8016, 8017, 8018], 1), 'c_O_in_D2O': ThermalTuple('od2o', [8016, 8017, 8018], 1), 'c_O_in_H2O_solid': ThermalTuple('oice', [8016, 8017, 8018], 1), @@ -64,8 +64,8 @@ _THERMAL_DATA = { 'c_Si_in_SiC': ThermalTuple('sisic', [14028, 14029, 14030], 1), 'c_SiO2_alpha': ThermalTuple('sio2-a', [8016, 8017, 8018, 14028, 14029, 14030], 3), 'c_SiO2_beta': ThermalTuple('sio2-b', [8016, 8017, 8018, 14028, 14029, 14030], 3), - 'c_U_in_UN': ThermalTuple('u-un', [92238], 1), - 'c_U_in_UO2': ThermalTuple('uuo2', [8016, 8017, 8018], 1), + 'c_U_in_UN': ThermalTuple('u-un', [92233, 92234, 92235, 92236, 92238], 1), + 'c_U_in_UO2': ThermalTuple('uuo2', [92233, 92234, 92235, 92236, 92238], 1), 'c_Y_in_YH2': ThermalTuple('yyh2', [39089], 1), 'c_Zr_in_ZrH': ThermalTuple('zrzrh', [40000, 40090, 40091, 40092, 40094, 40096], 1), 'c_Zr_in_ZrH2': ThermalTuple('zrzrh2', [40000, 40090, 40091, 40092, 40094, 40096], 1), From fc619f8352589f795f4eaf0d73c37fca9f753af7 Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Sun, 12 Feb 2023 19:27:11 -0600 Subject: [PATCH 081/120] Fix documentation for MeshFilter and MeshSurfaceFilter --- openmc/filter.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/openmc/filter.py b/openmc/filter.py index 4d40117fe..c52d3f135 100644 --- a/openmc/filter.py +++ b/openmc/filter.py @@ -762,7 +762,7 @@ class ParticleFilter(Filter): class MeshFilter(Filter): - """Bins tally event locations onto a regular, rectangular mesh. + """Bins tally event locations by mesh elements. Parameters ---------- @@ -959,7 +959,7 @@ class MeshFilter(Filter): class MeshSurfaceFilter(MeshFilter): - """Filter events by surface crossings on a regular, rectangular mesh. + """Filter events by surface crossings on a mesh. Parameters ---------- From 4783b34fe2aa6a744f38f474f44dcd58e0dddf27 Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Mon, 13 Feb 2023 07:16:10 -0600 Subject: [PATCH 082/120] Fix several failing tests --- .../cpp_driver/results_true.dat | 22 +++++++++---------- .../particle_restart_eigval/results_true.dat | 8 +++---- .../particle_restart_eigval/test.py | 2 +- tests/regression_tests/periodic_6fold/test.py | 18 +++++++-------- tests/testing_harness.py | 7 ++++++ 5 files changed, 31 insertions(+), 26 deletions(-) diff --git a/tests/regression_tests/cpp_driver/results_true.dat b/tests/regression_tests/cpp_driver/results_true.dat index e44b45054..c2b0b8d6f 100644 --- a/tests/regression_tests/cpp_driver/results_true.dat +++ b/tests/regression_tests/cpp_driver/results_true.dat @@ -1,13 +1,13 @@ k-combined: -1.902610E+00 1.901530E-02 +1.933305E+00 1.300360E-02 tally 1: -9.580351E+01 -1.031580E+03 -2.745984E+01 -8.430494E+01 -9.422158E+01 -9.919885E+02 -2.174849E+02 -5.292948E+03 -2.174849E+02 -5.292948E+03 +9.552846E+01 +1.019358E+03 +2.887973E+01 +9.308509E+01 +9.732441E+01 +1.059022E+03 +2.217326E+02 +5.486892E+03 +2.217326E+02 +5.486892E+03 diff --git a/tests/regression_tests/particle_restart_eigval/results_true.dat b/tests/regression_tests/particle_restart_eigval/results_true.dat index 64101d770..bd81920ca 100644 --- a/tests/regression_tests/particle_restart_eigval/results_true.dat +++ b/tests/regression_tests/particle_restart_eigval/results_true.dat @@ -3,14 +3,14 @@ current batch: current generation: 1.000000E+00 particle id: -9.020000E+02 +2.540000E+02 run mode: eigenvalue particle weight: 1.000000E+00 particle energy: -3.691964E+06 +2.220048E+06 particle xyz: --5.047439E+01 2.730535E+01 -2.619863E+01 +-4.820850E+01 2.432936E+01 4.397668E+01 particle uvw: --6.278670E-01 1.419818E-01 -7.652609E-01 +-3.148565E-01 9.184190E-01 2.395245E-01 diff --git a/tests/regression_tests/particle_restart_eigval/test.py b/tests/regression_tests/particle_restart_eigval/test.py index e526e5003..f9d22edb8 100644 --- a/tests/regression_tests/particle_restart_eigval/test.py +++ b/tests/regression_tests/particle_restart_eigval/test.py @@ -2,5 +2,5 @@ from tests.testing_harness import ParticleRestartTestHarness def test_particle_restart_eigval(): - harness = ParticleRestartTestHarness('particle_11_902.h5') + harness = ParticleRestartTestHarness('particle_11_254.h5') harness.main() diff --git a/tests/regression_tests/periodic_6fold/test.py b/tests/regression_tests/periodic_6fold/test.py index 555ab24f9..69712eb5a 100644 --- a/tests/regression_tests/periodic_6fold/test.py +++ b/tests/regression_tests/periodic_6fold/test.py @@ -1,5 +1,6 @@ +from math import sin, cos, pi + import openmc -import numpy as np import pytest from tests.testing_harness import PyAPITestHarness @@ -24,17 +25,14 @@ def model(): # (it essentially defines a circle of half-cylinders), but it is # designed so that periodic and reflective BCs will give different # answers. - theta1 = (-1/6 + 1/2) * np.pi - theta2 = (1/6 - 1/2) * np.pi - plane1 = openmc.Plane(a=np.cos(theta1), b=np.sin(theta1), - boundary_type='periodic') - plane2 = openmc.Plane(a=np.cos(theta2), b=np.sin(theta2), - boundary_type='periodic') + theta1 = (-1/6 + 1/2) * pi + theta2 = (1/6 - 1/2) * pi + plane1 = openmc.Plane(a=cos(theta1), b=sin(theta1), boundary_type='periodic') + plane2 = openmc.Plane(a=cos(theta2), b=sin(theta2), boundary_type='periodic') - x_max = openmc.XPlane(x0=5., boundary_type='reflective') + x_max = openmc.XPlane(5., boundary_type='reflective') - z_cyl = openmc.ZCylinder(x0=3*np.cos(np.pi/6), y0=3*np.sin(np.pi/6), - r=2.0) + z_cyl = openmc.ZCylinder(x0=3*cos(pi/6), y0=3*sin(pi/6), r=2.0) outside_cyl = openmc.Cell(1, fill=water, region=( +plane1 & +plane2 & -x_max & +z_cyl)) diff --git a/tests/testing_harness.py b/tests/testing_harness.py index 9a6db2a2e..0525dd476 100644 --- a/tests/testing_harness.py +++ b/tests/testing_harness.py @@ -276,6 +276,13 @@ class ParticleRestartTestHarness(TestHarness): return outstr + def _cleanup(self): + """Delete particle restart files.""" + super()._cleanup() + output = glob.glob('particle*.h5') + for f in output: + os.remove(f) + class PyAPITestHarness(TestHarness): def __init__(self, statepoint_name, model=None, inputs_true=None): From 893c4d06488f39216eb26fadd659c05322eccb2a Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Mon, 13 Feb 2023 09:00:33 -0600 Subject: [PATCH 083/120] Try using 10**x instead of logspace in source test --- tests/regression_tests/source/test.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/tests/regression_tests/source/test.py b/tests/regression_tests/source/test.py index e6a5bcf70..a1175c48f 100644 --- a/tests/regression_tests/source/test.py +++ b/tests/regression_tests/source/test.py @@ -39,15 +39,15 @@ class SourceTestHarness(PyAPITestHarness): spatial2 = openmc.stats.Box([-4., -4., -4.], [4., 4., 4.]) spatial3 = openmc.stats.Point([1.2, -2.3, 0.781]) spatial4 = openmc.stats.SphericalIndependent(r_dist, cos_theta_dist, - phi_dist, + phi_dist, origin=(1., 1., 0.)) - spatial5 = openmc.stats.CylindricalIndependent(r_dist, phi_dist, + spatial5 = openmc.stats.CylindricalIndependent(r_dist, phi_dist, z_dist, origin=(1., 1., 0.)) spatial6 = openmc.stats.SphericalIndependent(r_dist2, cos_theta_dist, - phi_dist, + phi_dist, origin=(1., 1., 0.)) - spatial7 = openmc.stats.CylindricalIndependent(r_dist1, phi_dist, + spatial7 = openmc.stats.CylindricalIndependent(r_dist1, phi_dist, z_dist, origin=(1., 1., 0.)) @@ -57,7 +57,10 @@ class SourceTestHarness(PyAPITestHarness): angle2 = openmc.stats.Monodirectional(reference_uvw=[0., 1., 0.]) angle3 = openmc.stats.Isotropic() - E = np.logspace(0, 7) + # Note that the definition for E is equivalent to logspace(0, 7) but we + # manually take powers because of last-digit differences that may cause + # test failures with different versions of numpy + E = np.array([10**x for x in np.linspace(0, 7)]) p = np.sin(np.linspace(0., pi)) p /= sum(np.diff(E)*p[:-1]) energy1 = openmc.stats.Maxwell(1.2895e6) From 75fe7f00a9668c7f86ce1ccb6943964fc2064055 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Mon, 13 Feb 2023 09:40:21 -0600 Subject: [PATCH 084/120] Apply code suggestions from @paulromano Co-authored-by: Paul Romano --- openmc/mesh.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openmc/mesh.py b/openmc/mesh.py index b2114525f..734d04da4 100644 --- a/openmc/mesh.py +++ b/openmc/mesh.py @@ -1941,7 +1941,7 @@ class UnstructuredMesh(MeshBase): def read_meshes(elem): - """Reads all mesh nodes under a a given XML node + """Generate dictionary of meshes from a given XML node Parameters ---------- From 3d548c882feac44867a1a4b888fad168ddce79fe Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Mon, 13 Feb 2023 09:52:17 -0600 Subject: [PATCH 085/120] Addressing latest comments from @paulromano --- openmc/mesh.py | 8 ++++---- openmc/settings.py | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/openmc/mesh.py b/openmc/mesh.py index 734d04da4..196d7f6c0 100644 --- a/openmc/mesh.py +++ b/openmc/mesh.py @@ -1940,7 +1940,7 @@ class UnstructuredMesh(MeshBase): return cls(filename, library, mesh_id, '', length_multiplier) -def read_meshes(elem): +def _read_meshes(elem): """Generate dictionary of meshes from a given XML node Parameters @@ -1950,11 +1950,11 @@ def read_meshes(elem): Returns ------- - OrderedDict - An ordered dictionary with mesh IDs as keys and openmc.MeshBase + dict + A dictionary with mesh IDs as keys and openmc.MeshBase instanaces as values """ - out = OrderedDict() + out = dict() for mesh_elem in elem.findall('mesh'): mesh = MeshBase.from_xml_element(mesh_elem) out[mesh.id] = mesh diff --git a/openmc/settings.py b/openmc/settings.py index ff35a90cf..39329a69e 100644 --- a/openmc/settings.py +++ b/openmc/settings.py @@ -16,7 +16,7 @@ from openmc.stats.multivariate import MeshSpatial from . import RegularMesh, Source, VolumeCalculation, WeightWindows from ._xml import clean_indentation, get_text, reorder_attributes from openmc.checkvalue import PathLike -from .mesh import MeshBase, read_meshes +from .mesh import _read_meshes class RunMode(Enum): @@ -1762,5 +1762,5 @@ class Settings: """ tree = ET.parse(path) root = tree.getroot() - meshes = read_meshes(root) + meshes = _read_meshes(root) return cls.from_xml_element(root, meshes) From 68a0ec793614ec5ef30d6ec582bfba98524c133a Mon Sep 17 00:00:00 2001 From: Baptiste Mouginot <15145274+bam241@users.noreply.github.com> Date: Tue, 14 Feb 2023 15:05:37 +0100 Subject: [PATCH 086/120] fix return _materiaLs_by_id --- openmc/model/model.py | 37 +++++++++++++++++++++++++------------ 1 file changed, 25 insertions(+), 12 deletions(-) diff --git a/openmc/model/model.py b/openmc/model/model.py index 2f4489084..4fb8cd9e5 100644 --- a/openmc/model/model.py +++ b/openmc/model/model.py @@ -124,10 +124,11 @@ class Model: @lru_cache(maxsize=None) def _materials_by_id(self): """Dictionary mapping material ID --> material""" - if self.materials is None: - mats = self.geometry.get_all_materials().values() - else: + if self.materials: mats = self.materials + else: + mats = self.geometry.get_all_materials().values() + return {mat.id: mat for mat in mats} @property @@ -236,7 +237,8 @@ class Model: materials = openmc.Materials.from_xml(materials) geometry = openmc.Geometry.from_xml(geometry, materials) settings = openmc.Settings.from_xml(settings) - tallies = openmc.Tallies.from_xml(tallies) if Path(tallies).exists() else None + tallies = openmc.Tallies.from_xml( + tallies) if Path(tallies).exists() else None plots = openmc.Plots.from_xml(plots) if Path(plots).exists() else None return cls(geometry, materials, settings, tallies, plots) @@ -257,12 +259,16 @@ class Model: model = cls() meshes = {} - model.settings = openmc.Settings.from_xml_element(root.find('settings'), meshes) - model.materials = openmc.Materials.from_xml_element(root.find('materials')) - model.geometry = openmc.Geometry.from_xml_element(root.find('geometry'), model.materials) + model.settings = openmc.Settings.from_xml_element( + root.find('settings'), meshes) + model.materials = openmc.Materials.from_xml_element( + root.find('materials')) + model.geometry = openmc.Geometry.from_xml_element( + root.find('geometry'), model.materials) if root.find('tallies'): - model.tallies = openmc.Tallies.from_xml_element(root.find('tallies'), meshes) + model.tallies = openmc.Tallies.from_xml_element( + root.find('tallies'), meshes) if root.find('plots'): model.plots = openmc.Plots.from_xml_element(root.find('plots')) @@ -530,11 +536,13 @@ class Model: if self.tallies: tallies_element = self.tallies.to_xml_element(mesh_memo) - xml.clean_indentation(tallies_element, level=1, trailing_indent=self.plots) + xml.clean_indentation( + tallies_element, level=1, trailing_indent=self.plots) ET.ElementTree(tallies_element).write(fh, encoding='unicode') if self.plots: plots_element = self.plots.to_xml_element() - xml.clean_indentation(plots_element, level=1, trailing_indent=False) + xml.clean_indentation( + plots_element, level=1, trailing_indent=False) ET.ElementTree(plots_element).write(fh, encoding='unicode') fh.write("\n") @@ -765,7 +773,8 @@ class Model: # Now we apply the volumes if apply_volumes: # Load the results and add them to the model - for i, vol_calc in enumerate(self.settings.volume_calculations): + for i, vol_calc in enumerate( + self.settings.volume_calculations): vol_calc.load_results(f"volume_{i + 1}.h5") # First add them to the Python side self.geometry.add_volume_information(vol_calc) @@ -933,7 +942,11 @@ class Model: self._change_py_lib_attribs(names_or_ids, vector, 'cell', 'translation') - def update_densities(self, names_or_ids, density, density_units='atom/b-cm'): + def update_densities( + self, + names_or_ids, + density, + density_units='atom/b-cm'): """Update the density of a given set of materials to a new value .. note:: If applying this change to a name that is not unique, then From 760ff7e34cfcb0d0c57fbd3ed90f8cf77d967be7 Mon Sep 17 00:00:00 2001 From: Baptiste Mouginot <15145274+bam241@users.noreply.github.com> Date: Tue, 14 Feb 2023 15:12:04 +0100 Subject: [PATCH 087/120] fix return _materiaLs_by_id --- openmc/model/model.py | 31 +++++++++---------------------- 1 file changed, 9 insertions(+), 22 deletions(-) diff --git a/openmc/model/model.py b/openmc/model/model.py index 4fb8cd9e5..6ce6ef33a 100644 --- a/openmc/model/model.py +++ b/openmc/model/model.py @@ -128,7 +128,6 @@ class Model: mats = self.materials else: mats = self.geometry.get_all_materials().values() - return {mat.id: mat for mat in mats} @property @@ -237,8 +236,7 @@ class Model: materials = openmc.Materials.from_xml(materials) geometry = openmc.Geometry.from_xml(geometry, materials) settings = openmc.Settings.from_xml(settings) - tallies = openmc.Tallies.from_xml( - tallies) if Path(tallies).exists() else None + tallies = openmc.Tallies.from_xml(tallies) if Path(tallies).exists() else None plots = openmc.Plots.from_xml(plots) if Path(plots).exists() else None return cls(geometry, materials, settings, tallies, plots) @@ -259,16 +257,12 @@ class Model: model = cls() meshes = {} - model.settings = openmc.Settings.from_xml_element( - root.find('settings'), meshes) - model.materials = openmc.Materials.from_xml_element( - root.find('materials')) - model.geometry = openmc.Geometry.from_xml_element( - root.find('geometry'), model.materials) + model.settings = openmc.Settings.from_xml_element(root.find('settings'), meshes) + model.materials = openmc.Materials.from_xml_element(root.find('materials')) + model.geometry = openmc.Geometry.from_xml_element(root.find('geometry'), model.materials) if root.find('tallies'): - model.tallies = openmc.Tallies.from_xml_element( - root.find('tallies'), meshes) + model.tallies = openmc.Tallies.from_xml_element(root.find('tallies'), meshes) if root.find('plots'): model.plots = openmc.Plots.from_xml_element(root.find('plots')) @@ -536,13 +530,11 @@ class Model: if self.tallies: tallies_element = self.tallies.to_xml_element(mesh_memo) - xml.clean_indentation( - tallies_element, level=1, trailing_indent=self.plots) + xml.clean_indentation(tallies_element, level=1, trailing_indent=self.plots) ET.ElementTree(tallies_element).write(fh, encoding='unicode') if self.plots: plots_element = self.plots.to_xml_element() - xml.clean_indentation( - plots_element, level=1, trailing_indent=False) + xml.clean_indentation(plots_element, level=1, trailing_indent=False) ET.ElementTree(plots_element).write(fh, encoding='unicode') fh.write("\n") @@ -773,8 +765,7 @@ class Model: # Now we apply the volumes if apply_volumes: # Load the results and add them to the model - for i, vol_calc in enumerate( - self.settings.volume_calculations): + for i, vol_calc in enumerate(self.settings.volume_calculations): vol_calc.load_results(f"volume_{i + 1}.h5") # First add them to the Python side self.geometry.add_volume_information(vol_calc) @@ -942,11 +933,7 @@ class Model: self._change_py_lib_attribs(names_or_ids, vector, 'cell', 'translation') - def update_densities( - self, - names_or_ids, - density, - density_units='atom/b-cm'): + def update_densities(self, names_or_ids, density, density_units='atom/b-cm'): """Update the density of a given set of materials to a new value .. note:: If applying this change to a name that is not unique, then From 070e5b93e1e8056465b2abf60a0152bf6efc5bf9 Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Tue, 14 Feb 2023 16:42:24 -0600 Subject: [PATCH 088/120] Try running CI on ubuntu-22.04 --- .github/workflows/ci.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 20bf47bbb..b1846c9a0 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -22,10 +22,10 @@ env: jobs: main: - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 strategy: matrix: - python-version: ['3.10'] + python-version: ["3.10"] mpi: [n, y] omp: [n, y] dagmc: [n] @@ -45,27 +45,27 @@ jobs: omp: n mpi: n - dagmc: y - python-version: '3.10' + python-version: "3.10" mpi: y omp: y - ncrystal: y - python-version: '3.10' + python-version: "3.10" mpi: n omp: n - libmesh: y - python-version: '3.10' + python-version: "3.10" mpi: y omp: y - libmesh: y - python-version: '3.10' + python-version: "3.10" mpi: n omp: y - event: y - python-version: '3.10' + python-version: "3.10" omp: y mpi: n - vectfit: y - python-version: '3.10' + python-version: "3.10" omp: n mpi: y name: "Python ${{ matrix.python-version }} (omp=${{ matrix.omp }}, From 0435e64fd0d271c0910ee9d19e5b0a84c337ac1d Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Tue, 14 Feb 2023 23:09:54 -0600 Subject: [PATCH 089/120] Disable AVX512 in numpy runtime SIMD dispatch --- .github/workflows/ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b1846c9a0..0a47d5775 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -82,6 +82,7 @@ jobs: EVENT: ${{ matrix.event }} VECTFIT: ${{ matrix.vectfit }} LIBMESH: ${{ matrix.libmesh }} + NPY_DISABLE_CPU_FEATURES: "AVX512F AVX512_SKX" steps: - uses: actions/checkout@v3 From 5f5c0ed7a7e4d23dc0ed87562770301bf5dc5e3e Mon Sep 17 00:00:00 2001 From: Baptiste Mouginot <15145274+bam241@users.noreply.github.com> Date: Wed, 15 Feb 2023 11:07:29 +0100 Subject: [PATCH 090/120] map_no_kargs --- openmc/deplete/pool.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/openmc/deplete/pool.py b/openmc/deplete/pool.py index 13acb8bf5..d1eab413f 100644 --- a/openmc/deplete/pool.py +++ b/openmc/deplete/pool.py @@ -15,7 +15,7 @@ USE_MULTIPROCESSING = True NUM_PROCESSES = None -def deplete(func, chain, x, rates, dt, matrix_func=None, **func_args): +def deplete(func, chain, x, rates, dt, matrix_func=None, *func_args): """Deplete materials using given reaction rates for a specified time Parameters @@ -60,7 +60,7 @@ def deplete(func, chain, x, rates, dt, matrix_func=None, **func_args): matrices = map(chain.form_matrix, rates, fission_yields) else: matrices = map(matrix_func, repeat(chain), rates, fission_yields, - **func_args) + *func_args) inputs = zip(matrices, x, repeat(dt)) From a2b828af52d5a93200693a3ed02411516916c7dd Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Wed, 15 Feb 2023 07:09:38 -0600 Subject: [PATCH 091/120] Use 1 thread for OpenBLAS calls from numpy --- .github/workflows/ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0a47d5775..fd516b7f9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -83,6 +83,7 @@ jobs: VECTFIT: ${{ matrix.vectfit }} LIBMESH: ${{ matrix.libmesh }} NPY_DISABLE_CPU_FEATURES: "AVX512F AVX512_SKX" + OPENBLAS_NUM_THREADS: 1 steps: - uses: actions/checkout@v3 From a25bbc250f2bdfefea6541b8dc8f2cc121a3266c Mon Sep 17 00:00:00 2001 From: Baptiste Mouginot <15145274+bam241@users.noreply.github.com> Date: Thu, 16 Feb 2023 14:50:23 +0100 Subject: [PATCH 092/120] renaming func_args into matrix_args, fixing docstring accordingly --- openmc/deplete/pool.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/openmc/deplete/pool.py b/openmc/deplete/pool.py index d1eab413f..aba60b558 100644 --- a/openmc/deplete/pool.py +++ b/openmc/deplete/pool.py @@ -15,7 +15,7 @@ USE_MULTIPROCESSING = True NUM_PROCESSES = None -def deplete(func, chain, x, rates, dt, matrix_func=None, *func_args): +def deplete(func, chain, x, rates, dt, matrix_func=None, *matrix_args): """Deplete materials using given reaction rates for a specified time Parameters @@ -37,8 +37,8 @@ def deplete(func, chain, x, rates, dt, matrix_func=None, *func_args): ``fission_yields = {parent: {product: yield_frac}}`` Expected to return the depletion matrix required by ``func`` - func_args : dict - Remaining keyword arguments passed to matrix_func when used + matrix_args : Any, optional + Additional arguments passed to matrix_func Returns ------- @@ -60,7 +60,7 @@ def deplete(func, chain, x, rates, dt, matrix_func=None, *func_args): matrices = map(chain.form_matrix, rates, fission_yields) else: matrices = map(matrix_func, repeat(chain), rates, fission_yields, - *func_args) + *matrix_args) inputs = zip(matrices, x, repeat(dt)) From 9e88e706fe92860ce973630a4a288b15a4a8b66c Mon Sep 17 00:00:00 2001 From: Jonathan Shimwell Date: Thu, 16 Feb 2023 16:20:44 +0000 Subject: [PATCH 093/120] testing get_all_universes is in DAGMCUniverse --- tests/unit_tests/test_universe.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/tests/unit_tests/test_universe.py b/tests/unit_tests/test_universe.py index 26b7779a7..a70bd4667 100644 --- a/tests/unit_tests/test_universe.py +++ b/tests/unit_tests/test_universe.py @@ -93,10 +93,12 @@ def test_get_all_universes(): u2 = openmc.Universe(cells=[c2]) c3 = openmc.Cell(fill=u1) c4 = openmc.Cell(fill=u2) - u3 = openmc.Universe(cells=[c3, c4]) + u3 = openmc.DAGMCUniverse(filename="") + c5 = openmc.Cell(fill=u3) + u4 = openmc.Universe(cells=[c3, c4, c5]) - univs = set(u3.get_all_universes().values()) - assert not (univs ^ {u1, u2}) + univs = set(u4.get_all_universes().values()) + assert not (univs ^ {u1, u2, u3}) def test_clone(): From 04d9e27866dad92dc1a6fbc7676e76750c96cb63 Mon Sep 17 00:00:00 2001 From: Jonathan Shimwell Date: Thu, 16 Feb 2023 16:24:24 +0000 Subject: [PATCH 094/120] moving get_all_universes method --- openmc/universe.py | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/openmc/universe.py b/openmc/universe.py index c56cce7ca..2ed96f4bc 100644 --- a/openmc/universe.py +++ b/openmc/universe.py @@ -91,6 +91,23 @@ class UniverseBase(ABC, IDManagerMixin): else: raise ValueError('No volume information found for this universe.') + def get_all_universes(self): + """Return all universes that are contained within this one. + + Returns + ------- + universes : collections.OrderedDict + Dictionary whose keys are universe IDs and values are + :class:`Universe` instances + + """ + # Append all Universes within each Cell to the dictionary + universes = OrderedDict() + for cell in self.get_all_cells().values(): + universes.update(cell.get_all_universes()) + + return universes + @abstractmethod def create_xml_subelement(self, xml_element, memo=None): """Add the universe xml representation to an incoming xml element @@ -538,23 +555,6 @@ class Universe(UniverseBase): return materials - def get_all_universes(self): - """Return all universes that are contained within this one. - - Returns - ------- - universes : collections.OrderedDict - Dictionary whose keys are universe IDs and values are - :class:`Universe` instances - - """ - # Append all Universes within each Cell to the dictionary - universes = OrderedDict() - for cell in self.get_all_cells().values(): - universes.update(cell.get_all_universes()) - - return universes - def create_xml_subelement(self, xml_element, memo=None): # Iterate over all Cells for cell in self._cells.values(): From 1891ff7c2420e91701e41c9f9556e2938170649e Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Thu, 16 Feb 2023 13:47:42 -0600 Subject: [PATCH 095/120] Updating batch number checks for simulation and sp load --- src/simulation.cpp | 2 +- src/state_point.cpp | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/simulation.cpp b/src/simulation.cpp index 2f07f8124..7740c81d8 100644 --- a/src/simulation.cpp +++ b/src/simulation.cpp @@ -236,7 +236,7 @@ int openmc_next_batch(int* status) // Check simulation ending criteria if (status) { - if (simulation::current_batch == settings::n_max_batches) { + if (simulation::current_batch >= settings::n_max_batches) { *status = STATUS_EXIT_MAX_BATCH; } else if (simulation::satisfy_triggers) { *status = STATUS_EXIT_ON_TRIGGER; diff --git a/src/state_point.cpp b/src/state_point.cpp index 4170421be..8ca0166c6 100644 --- a/src/state_point.cpp +++ b/src/state_point.cpp @@ -403,9 +403,10 @@ void load_state_point() // Read batch number to restart at read_dataset(file_id, "current_batch", simulation::restart_batch); - if (simulation::restart_batch > settings::n_batches) { - fatal_error("The number batches specified in settings.xml is fewer " - " than the number of batches in the given statepoint file."); + if (simulation::restart_batch >= settings::n_batches) { + fatal_error(fmt::format("The number of batches specified for simiulation ({}) is smaller" + " than the number of batches in the restart statepoint file ({})", + settings::n_batches, simulation::restart_batch)); } // Logical flag for source present in statepoint file From 0e10a7da47ddbea8fd43236db59f3d414124c33b Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Thu, 16 Feb 2023 13:48:11 -0600 Subject: [PATCH 096/120] Allowing openmc.Pathlike for restart file argument --- openmc/executor.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/openmc/executor.py b/openmc/executor.py index accffd06a..e779fdde4 100644 --- a/openmc/executor.py +++ b/openmc/executor.py @@ -3,6 +3,7 @@ from numbers import Integral import subprocess import openmc +from openmc.checkvalue import PathLike from .plots import _get_plot_image @@ -73,8 +74,8 @@ def _process_CLI_arguments(volume=False, geometry_debug=False, particles=None, if event_based: args.append('-e') - if isinstance(restart_file, str): - args += ['-r', restart_file] + if isinstance(restart_file, PathLike.__args__): + args += ['-r', str(restart_file)] if tracks: args.append('-t') From ee2f0f2c53048bb7dafed8f270cad2668ea5da14 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Thu, 16 Feb 2023 13:48:28 -0600 Subject: [PATCH 097/120] Adding a test for restart runs --- tests/unit_tests/test_restart.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 tests/unit_tests/test_restart.py diff --git a/tests/unit_tests/test_restart.py b/tests/unit_tests/test_restart.py new file mode 100644 index 000000000..f2d99e082 --- /dev/null +++ b/tests/unit_tests/test_restart.py @@ -0,0 +1,23 @@ +import openmc + +import pytest + +def test_restart(run_in_tmpdir): + + pincell = openmc.examples.pwr_pin_cell() + + # run the pincell + sp_file = pincell.run() + + # run a restart with the resulting statepoint + # and the settings unchanged + + with pytest.raises(RuntimeError, match='is smaller than the number of batches'): + pincell.run(restart_file=sp_file) + + # update the number of batches and run again + pincell.settings.batches = 15 + sp_file = pincell.run(restart_file=sp_file) + + sp = openmc.StatePoint(sp_file) + assert sp.n_batches == 15 \ No newline at end of file From 461fd54f11a74ce7713b8717661566905db76483 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Thu, 16 Feb 2023 13:53:57 -0600 Subject: [PATCH 098/120] Updating doc strings --- openmc/executor.py | 10 +++++----- openmc/geometry.py | 2 +- openmc/model/model.py | 6 +++--- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/openmc/executor.py b/openmc/executor.py index e779fdde4..758604c91 100644 --- a/openmc/executor.py +++ b/openmc/executor.py @@ -24,7 +24,7 @@ def _process_CLI_arguments(volume=False, geometry_debug=False, particles=None, Number of particles to simulate per generation. plot : bool, optional Run in plotting mode. Defaults to False. - restart_file : str, optional + restart_file : str or PathLike Path to restart file to use threads : int, optional Number of OpenMP threads. If OpenMC is compiled with OpenMP threading @@ -43,7 +43,7 @@ def _process_CLI_arguments(volume=False, geometry_debug=False, particles=None, mpi_args : list of str, optional MPI execute command and any additional MPI arguments to pass, e.g., ['mpiexec', '-n', '8']. - path_input : str or Pathlike + path_input : str or PathLike Path to a single XML file or a directory containing XML files for the OpenMC executable to read. @@ -231,7 +231,7 @@ def calculate_volumes(threads=None, output=True, cwd='.', cwd : str, optional Path to working directory to run in. Defaults to the current working directory. - path_input : str or Pathlike + path_input : str or PathLike Path to a single XML file or a directory containing XML files for the OpenMC executable to read. @@ -271,7 +271,7 @@ def run(particles=None, threads=None, geometry_debug=False, :envvar:`OMP_NUM_THREADS` environment variable). geometry_debug : bool, optional Turn on geometry debugging during simulation. Defaults to False. - restart_file : str, optional + restart_file : str or PathLike Path to restart file to use tracks : bool, optional Enables the writing of particles tracks. The number of particle tracks @@ -292,7 +292,7 @@ def run(particles=None, threads=None, geometry_debug=False, .. versionadded:: 0.12 - path_input : str or Pathlike + path_input : str or PathLike Path to a single XML file or a directory containing XML files for the OpenMC executable to read. diff --git a/openmc/geometry.py b/openmc/geometry.py index 511a3da40..d01826a4d 100644 --- a/openmc/geometry.py +++ b/openmc/geometry.py @@ -278,7 +278,7 @@ class Geometry: """ - # Using str and os.Pathlike here to avoid error when using just the imported PathLike + # Using str and os.PathLike here to avoid error when using just the imported PathLike # TypeError: Subscripted generics cannot be used with class and instance checks check_type('materials', materials, (str, os.PathLike, openmc.Materials)) diff --git a/openmc/model/model.py b/openmc/model/model.py index 6ce6ef33a..79708d62b 100644 --- a/openmc/model/model.py +++ b/openmc/model/model.py @@ -248,7 +248,7 @@ class Model: Parameters ---------- - path : str or Pathlike + path : str or PathLike Path to model.xml file """ tree = ET.parse(path) @@ -473,7 +473,7 @@ class Model: Parameters ---------- - path : str or Pathlike + path : str or PathLike Location of the XML file to write (default is 'model.xml'). Can be a directory or file path. remove_surfs : bool @@ -620,7 +620,7 @@ class Model: value set by the :envvar:`OMP_NUM_THREADS` environment variable). geometry_debug : bool, optional Turn on geometry debugging during simulation. Defaults to False. - restart_file : str, optional + restart_file : str or PathLike Path to restart file to use tracks : bool, optional Enables the writing of particles tracks. The number of particle From ce62bbd9c5822881b9bb35631f023967e2a75e83 Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Thu, 16 Feb 2023 14:06:59 -0600 Subject: [PATCH 099/120] Add missing override specifiers --- include/openmc/distribution.h | 18 ++-- include/openmc/distribution_energy.h | 12 +-- include/openmc/distribution_multi.h | 6 +- include/openmc/distribution_spatial.h | 12 +-- include/openmc/lattice.h | 50 +++++----- include/openmc/mesh.h | 2 - include/openmc/scattdata.h | 45 +++++---- include/openmc/surface.h | 137 +++++++++++++------------- 8 files changed, 142 insertions(+), 140 deletions(-) diff --git a/include/openmc/distribution.h b/include/openmc/distribution.h index 4fc0db2e0..815ffa21a 100644 --- a/include/openmc/distribution.h +++ b/include/openmc/distribution.h @@ -43,7 +43,7 @@ public: //! Sample a value from the distribution //! \param seed Pseudorandom number seed pointer //! \return Sampled value - double sample(uint64_t* seed) const; + double sample(uint64_t* seed) const override; // Properties const vector& x() const { return x_; } @@ -75,7 +75,7 @@ public: //! Sample a value from the distribution //! \param seed Pseudorandom number seed pointer //! \return Sampled value - double sample(uint64_t* seed) const; + double sample(uint64_t* seed) const override; double a() const { return a_; } double b() const { return b_; } @@ -99,7 +99,7 @@ public: //! Sample a value from the distribution //! \param seed Pseudorandom number seed pointer //! \return Sampled value - double sample(uint64_t* seed) const; + double sample(uint64_t* seed) const override; double a() const { return std::pow(offset_, ninv_); } double b() const { return std::pow(offset_ + span_, ninv_); } @@ -124,7 +124,7 @@ public: //! Sample a value from the distribution //! \param seed Pseudorandom number seed pointer //! \return Sampled value - double sample(uint64_t* seed) const; + double sample(uint64_t* seed) const override; double theta() const { return theta_; } @@ -144,7 +144,7 @@ public: //! Sample a value from the distribution //! \param seed Pseudorandom number seed pointer //! \return Sampled value - double sample(uint64_t* seed) const; + double sample(uint64_t* seed) const override; double a() const { return a_; } double b() const { return b_; } @@ -168,7 +168,7 @@ public: //! Sample a value from the distribution //! \param seed Pseudorandom number seed pointer //! \return Sampled value - double sample(uint64_t* seed) const; + double sample(uint64_t* seed) const override; double mean_value() const { return mean_value_; } double std_dev() const { return std_dev_; } @@ -191,7 +191,7 @@ public: //! Sample a value from the distribution //! \param seed Pseudorandom number seed pointer //! \return Sampled value - double sample(uint64_t* seed) const; + double sample(uint64_t* seed) const override; // x property vector& x() { return x_; } @@ -225,7 +225,7 @@ public: //! Sample a value from the distribution //! \param seed Pseudorandom number seed pointer //! \return Sampled value - double sample(uint64_t* seed) const; + double sample(uint64_t* seed) const override; const vector& x() const { return x_; } @@ -244,7 +244,7 @@ public: //! Sample a value from the distribution //! \param seed Pseudorandom number seed pointer //! \return Sampled value - double sample(uint64_t* seed) const; + double sample(uint64_t* seed) const override; private: // Storrage for probability + distribution diff --git a/include/openmc/distribution_energy.h b/include/openmc/distribution_energy.h index d8512aa45..9b08ed039 100644 --- a/include/openmc/distribution_energy.h +++ b/include/openmc/distribution_energy.h @@ -37,7 +37,7 @@ public: //! \param[in] E Incident particle energy in [eV] //! \param[inout] seed Pseudorandom number seed pointer //! \return Sampled energy in [eV] - double sample(double E, uint64_t* seed) const; + double sample(double E, uint64_t* seed) const override; private: int primary_flag_; //!< Indicator of whether the photon is a primary or @@ -58,7 +58,7 @@ public: //! \param[in] E Incident particle energy in [eV] //! \param[inout] seed Pseudorandom number seed pointer //! \return Sampled energy in [eV] - double sample(double E, uint64_t* seed) const; + double sample(double E, uint64_t* seed) const override; private: double threshold_; //!< Energy threshold in lab, (A + 1)/A * |Q| @@ -79,7 +79,7 @@ public: //! \param[in] E Incident particle energy in [eV] //! \param[inout] seed Pseudorandom number seed pointer //! \return Sampled energy in [eV] - double sample(double E, uint64_t* seed) const; + double sample(double E, uint64_t* seed) const override; private: //! Outgoing energy for a single incoming energy @@ -110,7 +110,7 @@ public: //! \param[in] E Incident particle energy in [eV] //! \param[inout] seed Pseudorandom number seed pointer //! \return Sampled energy in [eV] - double sample(double E, uint64_t* seed) const; + double sample(double E, uint64_t* seed) const override; private: Tabulated1D theta_; //!< Incoming energy dependent parameter @@ -130,7 +130,7 @@ public: //! \param[in] E Incident particle energy in [eV] //! \param[inout] seed Pseudorandom number seed pointer //! \return Sampled energy in [eV] - double sample(double E, uint64_t* seed) const; + double sample(double E, uint64_t* seed) const override; private: Tabulated1D theta_; //!< Incoming energy dependent parameter @@ -150,7 +150,7 @@ public: //! \param[in] E Incident particle energy in [eV] //! \param[inout] seed Pseudorandom number seed pointer //! \return Sampled energy in [eV] - double sample(double E, uint64_t* seed) const; + double sample(double E, uint64_t* seed) const override; private: Tabulated1D a_; //!< Energy-dependent 'a' parameter diff --git a/include/openmc/distribution_multi.h b/include/openmc/distribution_multi.h index 991294f79..e171d58ab 100644 --- a/include/openmc/distribution_multi.h +++ b/include/openmc/distribution_multi.h @@ -42,7 +42,7 @@ public: //! Sample a direction from the distribution //! \param seed Pseudorandom number seed pointer //! \return Direction sampled - Direction sample(uint64_t* seed) const; + Direction sample(uint64_t* seed) const override; // Observing pointers Distribution* mu() const { return mu_.get(); } @@ -66,7 +66,7 @@ public: //! Sample a direction from the distribution //! \param seed Pseudorandom number seed pointer //! \return Sampled direction - Direction sample(uint64_t* seed) const; + Direction sample(uint64_t* seed) const override; }; //============================================================================== @@ -82,7 +82,7 @@ public: //! Sample a direction from the distribution //! \param seed Pseudorandom number seed pointer //! \return Sampled direction - Direction sample(uint64_t* seed) const; + Direction sample(uint64_t* seed) const override; }; using UPtrAngle = unique_ptr; diff --git a/include/openmc/distribution_spatial.h b/include/openmc/distribution_spatial.h index dda23927e..a8cc7c58e 100644 --- a/include/openmc/distribution_spatial.h +++ b/include/openmc/distribution_spatial.h @@ -32,7 +32,7 @@ public: //! Sample a position from the distribution //! \param seed Pseudorandom number seed pointer //! \return Sampled position - Position sample(uint64_t* seed) const; + Position sample(uint64_t* seed) const override; // Observer pointers Distribution* x() const { return x_.get(); } @@ -56,7 +56,7 @@ public: //! Sample a position from the distribution //! \param seed Pseudorandom number seed pointer //! \return Sampled position - Position sample(uint64_t* seed) const; + Position sample(uint64_t* seed) const override; Distribution* r() const { return r_.get(); } Distribution* phi() const { return phi_.get(); } @@ -81,7 +81,7 @@ public: //! Sample a position from the distribution //! \param seed Pseudorandom number seed pointer //! \return Sampled position - Position sample(uint64_t* seed) const; + Position sample(uint64_t* seed) const override; Distribution* r() const { return r_.get(); } Distribution* cos_theta() const { return cos_theta_.get(); } @@ -106,7 +106,7 @@ public: //! Sample a position from the distribution //! \param seed Pseudorandom number seed pointer //! \return Sampled position - Position sample(uint64_t* seed) const; + Position sample(uint64_t* seed) const override; const Mesh* mesh() const { return model::meshes.at(mesh_idx_).get(); } @@ -132,7 +132,7 @@ public: //! Sample a position from the distribution //! \param seed Pseudorandom number seed pointer //! \return Sampled position - Position sample(uint64_t* seed) const; + Position sample(uint64_t* seed) const override; // Properties bool only_fissionable() const { return only_fissionable_; } @@ -158,7 +158,7 @@ public: //! Sample a position from the distribution //! \param seed Pseudorandom number seed pointer //! \return Sampled position - Position sample(uint64_t* seed) const; + Position sample(uint64_t* seed) const override; Position r() const { return r_; } diff --git a/include/openmc/lattice.h b/include/openmc/lattice.h index a2411467d..11dda4a6b 100644 --- a/include/openmc/lattice.h +++ b/include/openmc/lattice.h @@ -206,26 +206,28 @@ class RectLattice : public Lattice { public: explicit RectLattice(pugi::xml_node lat_node); - int32_t const& operator[](array const& i_xyz); + int32_t const& operator[](array const& i_xyz) override; - bool are_valid_indices(array const& i_xyz) const; + bool are_valid_indices(array const& i_xyz) const override; std::pair> distance( - Position r, Direction u, const array& i_xyz) const; + Position r, Direction u, const array& i_xyz) const override; - void get_indices(Position r, Direction u, array& result) const; + void get_indices( + Position r, Direction u, array& result) const override; - int get_flat_index(const array& i_xyz) const; + int get_flat_index(const array& i_xyz) const override; - Position get_local_position(Position r, const array& i_xyz) const; + Position get_local_position( + Position r, const array& i_xyz) const override; - int32_t& offset(int map, array const& i_xyz); + int32_t& offset(int map, array const& i_xyz) override; - int32_t offset(int map, int indx) const; + int32_t offset(int map, int indx) const override; - std::string index_to_string(int indx) const; + std::string index_to_string(int indx) const override; - void to_hdf5_inner(hid_t group_id) const; + void to_hdf5_inner(hid_t group_id) const override; private: array n_cells_; //!< Number of cells along each axis @@ -239,32 +241,34 @@ class HexLattice : public Lattice { public: explicit HexLattice(pugi::xml_node lat_node); - int32_t const& operator[](array const& i_xyz); + int32_t const& operator[](array const& i_xyz) override; - LatticeIter begin(); + LatticeIter begin() override; - ReverseLatticeIter rbegin(); + ReverseLatticeIter rbegin() override; - bool are_valid_indices(array const& i_xyz) const; + bool are_valid_indices(array const& i_xyz) const override; std::pair> distance( - Position r, Direction u, const array& i_xyz) const; + Position r, Direction u, const array& i_xyz) const override; - void get_indices(Position r, Direction u, array& result) const; + void get_indices( + Position r, Direction u, array& result) const override; - int get_flat_index(const array& i_xyz) const; + int get_flat_index(const array& i_xyz) const override; - Position get_local_position(Position r, const array& i_xyz) const; + Position get_local_position( + Position r, const array& i_xyz) const override; - bool is_valid_index(int indx) const; + bool is_valid_index(int indx) const override; - int32_t& offset(int map, array const& i_xyz); + int32_t& offset(int map, array const& i_xyz) override; - int32_t offset(int map, int indx) const; + int32_t offset(int map, int indx) const override; - std::string index_to_string(int indx) const; + std::string index_to_string(int indx) const override; - void to_hdf5_inner(hid_t group_id) const; + void to_hdf5_inner(hid_t group_id) const override; private: enum class Orientation { diff --git a/include/openmc/mesh.h b/include/openmc/mesh.h index 7abc8a832..93d08f597 100644 --- a/include/openmc/mesh.h +++ b/include/openmc/mesh.h @@ -527,8 +527,6 @@ public: //! \return element connectivity as IDs of the vertices virtual std::vector connectivity(int id) const = 0; - virtual double volume(int bin) const = 0; - //! Get the library used for this unstructured mesh virtual std::string library() const = 0; diff --git a/include/openmc/scattdata.h b/include/openmc/scattdata.h index 9f911d7db..a75ef09d9 100644 --- a/include/openmc/scattdata.h +++ b/include/openmc/scattdata.h @@ -137,22 +137,23 @@ protected: public: void init(const xt::xtensor& in_gmin, const xt::xtensor& in_gmax, const double_2dvec& in_mult, - const double_3dvec& coeffs); + const double_3dvec& coeffs) override; - void combine( - const vector& those_scatts, const vector& scalars); + void combine(const vector& those_scatts, + const vector& scalars) override; //! \brief Find the maximal value of the angular distribution to use as a // bounding box with rejection sampling. void update_max_val(); - double calc_f(int gin, int gout, double mu); + double calc_f(int gin, int gout, double mu) override; - void sample(int gin, int& gout, double& mu, double& wgt, uint64_t* seed); + void sample( + int gin, int& gout, double& mu, double& wgt, uint64_t* seed) override; - size_t get_order() { return dist[0][0].size() - 1; }; + size_t get_order() override { return dist[0][0].size() - 1; }; - xt::xtensor get_matrix(size_t max_order); + xt::xtensor get_matrix(size_t max_order) override; }; //============================================================================== @@ -170,18 +171,19 @@ protected: public: void init(const xt::xtensor& in_gmin, const xt::xtensor& in_gmax, const double_2dvec& in_mult, - const double_3dvec& coeffs); + const double_3dvec& coeffs) override; - void combine( - const vector& those_scatts, const vector& scalars); + void combine(const vector& those_scatts, + const vector& scalars) override; - double calc_f(int gin, int gout, double mu); + double calc_f(int gin, int gout, double mu) override; - void sample(int gin, int& gout, double& mu, double& wgt, uint64_t* seed); + void sample( + int gin, int& gout, double& mu, double& wgt, uint64_t* seed) override; - size_t get_order() { return dist[0][0].size(); }; + size_t get_order() override { return dist[0][0].size(); }; - xt::xtensor get_matrix(size_t max_order); + xt::xtensor get_matrix(size_t max_order) override; }; //============================================================================== @@ -204,18 +206,19 @@ protected: public: void init(const xt::xtensor& in_gmin, const xt::xtensor& in_gmax, const double_2dvec& in_mult, - const double_3dvec& coeffs); + const double_3dvec& coeffs) override; - void combine( - const vector& those_scatts, const vector& scalars); + void combine(const vector& those_scatts, + const vector& scalars) override; - double calc_f(int gin, int gout, double mu); + double calc_f(int gin, int gout, double mu) override; - void sample(int gin, int& gout, double& mu, double& wgt, uint64_t* seed); + void sample( + int gin, int& gout, double& mu, double& wgt, uint64_t* seed) override; - size_t get_order() { return dist[0][0].size(); }; + size_t get_order() override { return dist[0][0].size(); }; - xt::xtensor get_matrix(size_t max_order); + xt::xtensor get_matrix(size_t max_order) override; }; //============================================================================== diff --git a/include/openmc/surface.h b/include/openmc/surface.h index 84a2ed113..4c97a0514 100644 --- a/include/openmc/surface.h +++ b/include/openmc/surface.h @@ -146,9 +146,6 @@ class CSGSurface : public Surface { public: explicit CSGSurface(pugi::xml_node surf_node); CSGSurface(); - -protected: - virtual void to_hdf5_inner(hid_t group_id) const = 0; }; //============================================================================== @@ -160,11 +157,11 @@ protected: class SurfaceXPlane : public CSGSurface { public: explicit SurfaceXPlane(pugi::xml_node surf_node); - double evaluate(Position r) const; - double distance(Position r, Direction u, bool coincident) const; - Direction normal(Position r) const; - void to_hdf5_inner(hid_t group_id) const; - BoundingBox bounding_box(bool pos_side) const; + double evaluate(Position r) const override; + double distance(Position r, Direction u, bool coincident) const override; + Direction normal(Position r) const override; + void to_hdf5_inner(hid_t group_id) const override; + BoundingBox bounding_box(bool pos_side) const override; double x0_; }; @@ -178,11 +175,11 @@ public: class SurfaceYPlane : public CSGSurface { public: explicit SurfaceYPlane(pugi::xml_node surf_node); - double evaluate(Position r) const; - double distance(Position r, Direction u, bool coincident) const; - Direction normal(Position r) const; - void to_hdf5_inner(hid_t group_id) const; - BoundingBox bounding_box(bool pos_side) const; + double evaluate(Position r) const override; + double distance(Position r, Direction u, bool coincident) const override; + Direction normal(Position r) const override; + void to_hdf5_inner(hid_t group_id) const override; + BoundingBox bounding_box(bool pos_side) const override; double y0_; }; @@ -196,11 +193,11 @@ public: class SurfaceZPlane : public CSGSurface { public: explicit SurfaceZPlane(pugi::xml_node surf_node); - double evaluate(Position r) const; - double distance(Position r, Direction u, bool coincident) const; - Direction normal(Position r) const; - void to_hdf5_inner(hid_t group_id) const; - BoundingBox bounding_box(bool pos_side) const; + double evaluate(Position r) const override; + double distance(Position r, Direction u, bool coincident) const override; + Direction normal(Position r) const override; + void to_hdf5_inner(hid_t group_id) const override; + BoundingBox bounding_box(bool pos_side) const override; double z0_; }; @@ -214,10 +211,10 @@ public: class SurfacePlane : public CSGSurface { public: explicit SurfacePlane(pugi::xml_node surf_node); - double evaluate(Position r) const; - double distance(Position r, Direction u, bool coincident) const; - Direction normal(Position r) const; - void to_hdf5_inner(hid_t group_id) const; + double evaluate(Position r) const override; + double distance(Position r, Direction u, bool coincident) const override; + Direction normal(Position r) const override; + void to_hdf5_inner(hid_t group_id) const override; double A_, B_, C_, D_; }; @@ -232,11 +229,11 @@ public: class SurfaceXCylinder : public CSGSurface { public: explicit SurfaceXCylinder(pugi::xml_node surf_node); - double evaluate(Position r) const; - double distance(Position r, Direction u, bool coincident) const; - Direction normal(Position r) const; - void to_hdf5_inner(hid_t group_id) const; - BoundingBox bounding_box(bool pos_side) const; + double evaluate(Position r) const override; + double distance(Position r, Direction u, bool coincident) const override; + Direction normal(Position r) const override; + void to_hdf5_inner(hid_t group_id) const override; + BoundingBox bounding_box(bool pos_side) const override; double y0_, z0_, radius_; }; @@ -251,11 +248,11 @@ public: class SurfaceYCylinder : public CSGSurface { public: explicit SurfaceYCylinder(pugi::xml_node surf_node); - double evaluate(Position r) const; - double distance(Position r, Direction u, bool coincident) const; - Direction normal(Position r) const; - void to_hdf5_inner(hid_t group_id) const; - BoundingBox bounding_box(bool pos_side) const; + double evaluate(Position r) const override; + double distance(Position r, Direction u, bool coincident) const override; + Direction normal(Position r) const override; + void to_hdf5_inner(hid_t group_id) const override; + BoundingBox bounding_box(bool pos_side) const override; double x0_, z0_, radius_; }; @@ -270,11 +267,11 @@ public: class SurfaceZCylinder : public CSGSurface { public: explicit SurfaceZCylinder(pugi::xml_node surf_node); - double evaluate(Position r) const; - double distance(Position r, Direction u, bool coincident) const; - Direction normal(Position r) const; - void to_hdf5_inner(hid_t group_id) const; - BoundingBox bounding_box(bool pos_side) const; + double evaluate(Position r) const override; + double distance(Position r, Direction u, bool coincident) const override; + Direction normal(Position r) const override; + void to_hdf5_inner(hid_t group_id) const override; + BoundingBox bounding_box(bool pos_side) const override; double x0_, y0_, radius_; }; @@ -289,11 +286,11 @@ public: class SurfaceSphere : public CSGSurface { public: explicit SurfaceSphere(pugi::xml_node surf_node); - double evaluate(Position r) const; - double distance(Position r, Direction u, bool coincident) const; - Direction normal(Position r) const; - void to_hdf5_inner(hid_t group_id) const; - BoundingBox bounding_box(bool pos_side) const; + double evaluate(Position r) const override; + double distance(Position r, Direction u, bool coincident) const override; + Direction normal(Position r) const override; + void to_hdf5_inner(hid_t group_id) const override; + BoundingBox bounding_box(bool pos_side) const override; double x0_, y0_, z0_, radius_; }; @@ -308,10 +305,10 @@ public: class SurfaceXCone : public CSGSurface { public: explicit SurfaceXCone(pugi::xml_node surf_node); - double evaluate(Position r) const; - double distance(Position r, Direction u, bool coincident) const; - Direction normal(Position r) const; - void to_hdf5_inner(hid_t group_id) const; + double evaluate(Position r) const override; + double distance(Position r, Direction u, bool coincident) const override; + Direction normal(Position r) const override; + void to_hdf5_inner(hid_t group_id) const override; double x0_, y0_, z0_, radius_sq_; }; @@ -326,10 +323,10 @@ public: class SurfaceYCone : public CSGSurface { public: explicit SurfaceYCone(pugi::xml_node surf_node); - double evaluate(Position r) const; - double distance(Position r, Direction u, bool coincident) const; - Direction normal(Position r) const; - void to_hdf5_inner(hid_t group_id) const; + double evaluate(Position r) const override; + double distance(Position r, Direction u, bool coincident) const override; + Direction normal(Position r) const override; + void to_hdf5_inner(hid_t group_id) const override; double x0_, y0_, z0_, radius_sq_; }; @@ -344,10 +341,10 @@ public: class SurfaceZCone : public CSGSurface { public: explicit SurfaceZCone(pugi::xml_node surf_node); - double evaluate(Position r) const; - double distance(Position r, Direction u, bool coincident) const; - Direction normal(Position r) const; - void to_hdf5_inner(hid_t group_id) const; + double evaluate(Position r) const override; + double distance(Position r, Direction u, bool coincident) const override; + Direction normal(Position r) const override; + void to_hdf5_inner(hid_t group_id) const override; double x0_, y0_, z0_, radius_sq_; }; @@ -362,10 +359,10 @@ public: class SurfaceQuadric : public CSGSurface { public: explicit SurfaceQuadric(pugi::xml_node surf_node); - double evaluate(Position r) const; - double distance(Position r, Direction u, bool coincident) const; - Direction normal(Position r) const; - void to_hdf5_inner(hid_t group_id) const; + double evaluate(Position r) const override; + double distance(Position r, Direction u, bool coincident) const override; + Direction normal(Position r) const override; + void to_hdf5_inner(hid_t group_id) const override; // Ax^2 + By^2 + Cz^2 + Dxy + Eyz + Fxz + Gx + Hy + Jz + K = 0 double A_, B_, C_, D_, E_, F_, G_, H_, J_, K_; @@ -380,10 +377,10 @@ public: class SurfaceXTorus : public CSGSurface { public: explicit SurfaceXTorus(pugi::xml_node surf_node); - double evaluate(Position r) const; - double distance(Position r, Direction u, bool coincident) const; - Direction normal(Position r) const; - void to_hdf5_inner(hid_t group_id) const; + double evaluate(Position r) const override; + double distance(Position r, Direction u, bool coincident) const override; + Direction normal(Position r) const override; + void to_hdf5_inner(hid_t group_id) const override; double x0_, y0_, z0_, A_, B_, C_; }; @@ -397,10 +394,10 @@ public: class SurfaceYTorus : public CSGSurface { public: explicit SurfaceYTorus(pugi::xml_node surf_node); - double evaluate(Position r) const; - double distance(Position r, Direction u, bool coincident) const; - Direction normal(Position r) const; - void to_hdf5_inner(hid_t group_id) const; + double evaluate(Position r) const override; + double distance(Position r, Direction u, bool coincident) const override; + Direction normal(Position r) const override; + void to_hdf5_inner(hid_t group_id) const override; double x0_, y0_, z0_, A_, B_, C_; }; @@ -414,10 +411,10 @@ public: class SurfaceZTorus : public CSGSurface { public: explicit SurfaceZTorus(pugi::xml_node surf_node); - double evaluate(Position r) const; - double distance(Position r, Direction u, bool coincident) const; - Direction normal(Position r) const; - void to_hdf5_inner(hid_t group_id) const; + double evaluate(Position r) const override; + double distance(Position r, Direction u, bool coincident) const override; + Direction normal(Position r) const override; + void to_hdf5_inner(hid_t group_id) const override; double x0_, y0_, z0_, A_, B_, C_; }; From 9803c2611196bb9d9e89ef46e24ab8c2d4b7e17d Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Thu, 16 Feb 2023 16:18:41 -0600 Subject: [PATCH 100/120] bwd compatibility fix for reading filter elements --- openmc/filter.py | 2 ++ tests/unit_tests/test_restart.py | 23 ----------------------- 2 files changed, 2 insertions(+), 23 deletions(-) delete mode 100644 tests/unit_tests/test_restart.py diff --git a/openmc/filter.py b/openmc/filter.py index c52d3f135..1f2f9816c 100644 --- a/openmc/filter.py +++ b/openmc/filter.py @@ -258,6 +258,8 @@ class Filter(IDManagerMixin, metaclass=FilterMeta): """ filter_type = elem.get('type') + if filter_type is None: + filter_type = elem.find('type').text # If the filter type matches this class's short_name, then # there is no overridden from_xml_element method diff --git a/tests/unit_tests/test_restart.py b/tests/unit_tests/test_restart.py deleted file mode 100644 index f2d99e082..000000000 --- a/tests/unit_tests/test_restart.py +++ /dev/null @@ -1,23 +0,0 @@ -import openmc - -import pytest - -def test_restart(run_in_tmpdir): - - pincell = openmc.examples.pwr_pin_cell() - - # run the pincell - sp_file = pincell.run() - - # run a restart with the resulting statepoint - # and the settings unchanged - - with pytest.raises(RuntimeError, match='is smaller than the number of batches'): - pincell.run(restart_file=sp_file) - - # update the number of batches and run again - pincell.settings.batches = 15 - sp_file = pincell.run(restart_file=sp_file) - - sp = openmc.StatePoint(sp_file) - assert sp.n_batches == 15 \ No newline at end of file From 648313fab16719d526adb69444bf18303e94ec0d Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Thu, 16 Feb 2023 16:28:05 -0600 Subject: [PATCH 101/120] Adding to regression test instead of making new unit test --- .../statepoint_restart/test.py | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/tests/regression_tests/statepoint_restart/test.py b/tests/regression_tests/statepoint_restart/test.py index 4575607f7..9ab528e61 100644 --- a/tests/regression_tests/statepoint_restart/test.py +++ b/tests/regression_tests/statepoint_restart/test.py @@ -1,11 +1,14 @@ import glob import os +from pathlib import Path import openmc from tests.testing_harness import TestHarness from tests.regression_tests import config +from tests import cdtemp +import pytest class StatepointRestartTestHarness(TestHarness): def __init__(self, final_sp, restart_sp): @@ -59,3 +62,27 @@ def test_statepoint_restart(): harness = StatepointRestartTestHarness('statepoint.10.h5', 'statepoint.07.h5') harness.main() + + +def test_batch_check(request): + xmls = glob.glob('*.xml') + xmls = [request.fspath.dirpath() / Path(f) for f in xmls] + + with cdtemp(xmls): + model = openmc.Model.from_xml() + model.settings.particles = 100 + # run the model + sp_file = model.run() + + # run a restart with the resulting statepoint + # and the settings unchanged + with pytest.raises(RuntimeError, match='is smaller than the number of batches'): + model.run(restart_file=sp_file) + + # update the number of batches and run again + model.settings.batches = 15 + model.settings.statepoint = {} + sp_file = model.run(restart_file=sp_file) + + sp = openmc.StatePoint(sp_file) + assert sp.n_batches == 15 \ No newline at end of file From 65852f4fbc8e2cbe702af558733aff0bae83d1a3 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Thu, 16 Feb 2023 17:52:23 -0600 Subject: [PATCH 102/120] Update batch comparison in statepoint load --- src/state_point.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/state_point.cpp b/src/state_point.cpp index 8ca0166c6..23538da59 100644 --- a/src/state_point.cpp +++ b/src/state_point.cpp @@ -403,10 +403,11 @@ void load_state_point() // Read batch number to restart at read_dataset(file_id, "current_batch", simulation::restart_batch); - if (simulation::restart_batch >= settings::n_batches) { - fatal_error(fmt::format("The number of batches specified for simiulation ({}) is smaller" - " than the number of batches in the restart statepoint file ({})", - settings::n_batches, simulation::restart_batch)); + if (simulation::restart_batch >= settings::n_max_batches) { + fatal_error(fmt::format( + "The number of batches specified for simiulation ({}) is smaller" + " than the number of batches in the restart statepoint file ({})", + settings::n_max_batches, simulation::restart_batch)); } // Logical flag for source present in statepoint file From 0aba858f95d4350c91228bdfe9962c4bc64582d8 Mon Sep 17 00:00:00 2001 From: josh Date: Fri, 17 Feb 2023 02:15:50 +0000 Subject: [PATCH 103/120] sort nuclides when adding by element --- openmc/element.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openmc/element.py b/openmc/element.py index 49aeaf464..729266cc2 100644 --- a/openmc/element.py +++ b/openmc/element.py @@ -195,7 +195,7 @@ class Element(str): # If a cross_section library is not present, expand the element into # its natural nuclides else: - for nuclide in natural_nuclides: + for nuclide in sorted(list(natural_nuclides)): abundances[nuclide] = NATURAL_ABUNDANCE[nuclide] # Modify mole fractions if enrichment provided From d5ce4af68a77d95605df461fa850a300c1804c2c Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Thu, 16 Feb 2023 07:45:47 -0600 Subject: [PATCH 104/120] Add RDMAV_FORK_SAFE=1 to avoid fork error with libfabric --- .github/workflows/ci.yml | 4 ++++ tools/ci/gha-script.sh | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index fd516b7f9..999dea312 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -84,6 +84,10 @@ jobs: LIBMESH: ${{ matrix.libmesh }} NPY_DISABLE_CPU_FEATURES: "AVX512F AVX512_SKX" OPENBLAS_NUM_THREADS: 1 + # libfabric complains about fork() as a result of using Python multiprocessing. + # We can work around it with RDMAV_FORK_SAFE=1 in libfabric < 1.13 and with + # FI_EFA_FORK_SAFE=1 in more recent versions. + RDMAV_FORK_SAFE: 1 steps: - uses: actions/checkout@v3 diff --git a/tools/ci/gha-script.sh b/tools/ci/gha-script.sh index 1f1c3a1eb..9de84f3e5 100755 --- a/tools/ci/gha-script.sh +++ b/tools/ci/gha-script.sh @@ -8,7 +8,7 @@ args=" " if [[ $MPI == 'y' ]]; then args="${args} --mpi " fi - + # Check for event-based if [[ $EVENT == 'y' ]]; then args="${args} --event " From eb0c8e497c7161d078854f82150b896c57b564dc Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Thu, 16 Feb 2023 17:04:49 -0600 Subject: [PATCH 105/120] Move Filter::create implementation to filter.h --- include/openmc/tallies/filter.h | 19 +++++++++++++++++++ src/tallies/filter.cpp | 15 --------------- 2 files changed, 19 insertions(+), 15 deletions(-) diff --git a/include/openmc/tallies/filter.h b/include/openmc/tallies/filter.h index 47b4c8a94..8a17ee7ea 100644 --- a/include/openmc/tallies/filter.h +++ b/include/openmc/tallies/filter.h @@ -157,5 +157,24 @@ extern vector> tally_filters; //! Make sure index corresponds to a valid filter int verify_filter(int32_t index); +//============================================================================== +// Filter implementation +//============================================================================== + +template +T* Filter::create(int32_t id) +{ + static_assert(std::is_base_of::value, + "Type specified is not derived from openmc::Filter"); + // Create filter and add to filters vector + auto filter = make_unique(); + auto ptr_out = filter.get(); + model::tally_filters.emplace_back(std::move(filter)); + // Assign ID + model::tally_filters.back()->set_id(id); + + return ptr_out; +} + } // namespace openmc #endif // OPENMC_TALLIES_FILTER_H diff --git a/src/tallies/filter.cpp b/src/tallies/filter.cpp index c00d4fd43..5e8204b2a 100644 --- a/src/tallies/filter.cpp +++ b/src/tallies/filter.cpp @@ -71,21 +71,6 @@ Filter::~Filter() model::filter_map.erase(id_); } -template -T* Filter::create(int32_t id) -{ - static_assert(std::is_base_of::value, - "Type specified is not derived from openmc::Filter"); - // Create filter and add to filters vector - auto filter = make_unique(); - auto ptr_out = filter.get(); - model::tally_filters.emplace_back(std::move(filter)); - // Assign ID - model::tally_filters.back()->set_id(id); - - return ptr_out; -} - Filter* Filter::create(pugi::xml_node node) { // Copy filter id From 14af9de1e2b56b2192bd295072ef54d2ff020e02 Mon Sep 17 00:00:00 2001 From: aprilnovak Date: Fri, 17 Feb 2023 19:16:15 -0600 Subject: [PATCH 106/120] Use more generalized error message. Refs #2394 --- src/dagmc.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/dagmc.cpp b/src/dagmc.cpp index f21d5d0a9..154200f3f 100644 --- a/src/dagmc.cpp +++ b/src/dagmc.cpp @@ -182,11 +182,11 @@ void DAGUniverse::init_geometry() model::cell_map[c->id_] = model::cells.size(); } else { warning(fmt::format("DAGMC Cell IDs: {}", dagmc_ids_for_dim(3))); - fatal_error(fmt::format("Cell ID {} exists in both DAGMC Universe {} " - "and the CSG geometry. Setting auto_geom_ids " + fatal_error(fmt::format("DAGMC Universe {} contains cell ID {}, which " + "already exists in the geometry. Setting auto_geom_ids " "to True when initiating the DAGMC Universe may " "resolve this issue", - c->id_, this->id_)); + this->id_, c->id_)); } // --- Materials --- From 5a6162754948b0fc2065c76869c04eb26989177d Mon Sep 17 00:00:00 2001 From: April Novak Date: Sat, 18 Feb 2023 17:18:53 -0800 Subject: [PATCH 107/120] Apply suggestions from code review Co-authored-by: Patrick Shriwise --- src/dagmc.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/dagmc.cpp b/src/dagmc.cpp index 154200f3f..01ce8ef11 100644 --- a/src/dagmc.cpp +++ b/src/dagmc.cpp @@ -182,8 +182,8 @@ void DAGUniverse::init_geometry() model::cell_map[c->id_] = model::cells.size(); } else { warning(fmt::format("DAGMC Cell IDs: {}", dagmc_ids_for_dim(3))); - fatal_error(fmt::format("DAGMC Universe {} contains cell ID {}, which " - "already exists in the geometry. Setting auto_geom_ids " + fatal_error(fmt::format("DAGMC Universe {} contains a cell with ID {}, which " + "already exists elsewhere in the geometry. Setting auto_geom_ids " "to True when initiating the DAGMC Universe may " "resolve this issue", this->id_, c->id_)); From b8c7c7644422a7bd8b83cb096c3b50c4ef97ce00 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Tue, 21 Feb 2023 00:42:27 -0600 Subject: [PATCH 108/120] Apply suggestions from @paulromano Co-authored-by: Paul Romano --- src/state_point.cpp | 2 +- tests/regression_tests/statepoint_restart/test.py | 6 ++---- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/state_point.cpp b/src/state_point.cpp index 23538da59..dfd3d381b 100644 --- a/src/state_point.cpp +++ b/src/state_point.cpp @@ -405,7 +405,7 @@ void load_state_point() if (simulation::restart_batch >= settings::n_max_batches) { fatal_error(fmt::format( - "The number of batches specified for simiulation ({}) is smaller" + "The number of batches specified for simulation ({}) is smaller" " than the number of batches in the restart statepoint file ({})", settings::n_max_batches, simulation::restart_batch)); } diff --git a/tests/regression_tests/statepoint_restart/test.py b/tests/regression_tests/statepoint_restart/test.py index 9ab528e61..35df4f07d 100644 --- a/tests/regression_tests/statepoint_restart/test.py +++ b/tests/regression_tests/statepoint_restart/test.py @@ -3,13 +3,12 @@ import os from pathlib import Path import openmc +import pytest from tests.testing_harness import TestHarness from tests.regression_tests import config from tests import cdtemp -import pytest - class StatepointRestartTestHarness(TestHarness): def __init__(self, final_sp, restart_sp): super().__init__(final_sp) @@ -65,8 +64,7 @@ def test_statepoint_restart(): def test_batch_check(request): - xmls = glob.glob('*.xml') - xmls = [request.fspath.dirpath() / Path(f) for f in xmls] + xmls = list(request.path.parent.glob('*.xml')) with cdtemp(xmls): model = openmc.Model.from_xml() From 1b68e61a3edd3290d587c2dcb9d752523599c452 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Tue, 21 Feb 2023 00:47:47 -0600 Subject: [PATCH 109/120] explicit instance check --- openmc/executor.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/openmc/executor.py b/openmc/executor.py index 758604c91..aacc48b3f 100644 --- a/openmc/executor.py +++ b/openmc/executor.py @@ -1,9 +1,9 @@ from collections.abc import Iterable from numbers import Integral +import os import subprocess import openmc -from openmc.checkvalue import PathLike from .plots import _get_plot_image @@ -74,7 +74,7 @@ def _process_CLI_arguments(volume=False, geometry_debug=False, particles=None, if event_based: args.append('-e') - if isinstance(restart_file, PathLike.__args__): + if isinstance(restart_file, (str, os.PathLike)): args += ['-r', str(restart_file)] if tracks: From 0aa36836b3a73818fb9d29b4a8ac13150dd6df5b Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Tue, 21 Feb 2023 00:48:23 -0600 Subject: [PATCH 110/120] Updating globs --- tests/regression_tests/statepoint_restart/test.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/tests/regression_tests/statepoint_restart/test.py b/tests/regression_tests/statepoint_restart/test.py index 35df4f07d..2f3a6ce88 100644 --- a/tests/regression_tests/statepoint_restart/test.py +++ b/tests/regression_tests/statepoint_restart/test.py @@ -1,4 +1,3 @@ -import glob import os from pathlib import Path @@ -44,7 +43,7 @@ class StatepointRestartTestHarness(TestHarness): def _run_openmc_restart(self): # Get the name of the statepoint file. - statepoint = glob.glob(os.path.join(os.getcwd(), self._restart_sp)) + statepoint = list(Path(os.getcwd()).glob(self._restart_sp)) assert len(statepoint) == 1 statepoint = statepoint[0] @@ -83,4 +82,4 @@ def test_batch_check(request): sp_file = model.run(restart_file=sp_file) sp = openmc.StatePoint(sp_file) - assert sp.n_batches == 15 \ No newline at end of file + assert sp.n_batches == 15 From 0419367815a3f552ccb1b994f7da2d8ecffc15d3 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Tue, 21 Feb 2023 07:28:32 -0600 Subject: [PATCH 111/120] Update tests/regression_tests/statepoint_restart/test.py Co-authored-by: Paul Romano --- tests/regression_tests/statepoint_restart/test.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/regression_tests/statepoint_restart/test.py b/tests/regression_tests/statepoint_restart/test.py index 2f3a6ce88..8acd0e88b 100644 --- a/tests/regression_tests/statepoint_restart/test.py +++ b/tests/regression_tests/statepoint_restart/test.py @@ -43,7 +43,7 @@ class StatepointRestartTestHarness(TestHarness): def _run_openmc_restart(self): # Get the name of the statepoint file. - statepoint = list(Path(os.getcwd()).glob(self._restart_sp)) + statepoint = list(Path.cwd().glob(self._restart_sp)) assert len(statepoint) == 1 statepoint = statepoint[0] From 55179b5a46accdf8b8dfcd8ce1ed3c0f454a92f4 Mon Sep 17 00:00:00 2001 From: Patrick Shriwise Date: Tue, 21 Feb 2023 07:31:53 -0600 Subject: [PATCH 112/120] Removing os module from restart test --- tests/regression_tests/statepoint_restart/test.py | 1 - 1 file changed, 1 deletion(-) diff --git a/tests/regression_tests/statepoint_restart/test.py b/tests/regression_tests/statepoint_restart/test.py index 8acd0e88b..1e98bc480 100644 --- a/tests/regression_tests/statepoint_restart/test.py +++ b/tests/regression_tests/statepoint_restart/test.py @@ -1,4 +1,3 @@ -import os from pathlib import Path import openmc From 5556b0cedc0210ebc4913c6f6866cbf57ca4b4f4 Mon Sep 17 00:00:00 2001 From: josh Date: Wed, 22 Feb 2023 18:24:50 +0000 Subject: [PATCH 113/120] order nuclides by increasing mass number --- openmc/data/data.py | 2 +- openmc/element.py | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/openmc/data/data.py b/openmc/data/data.py index 55bfb4f09..7d82a3c1f 100644 --- a/openmc/data/data.py +++ b/openmc/data/data.py @@ -489,7 +489,7 @@ def isotopes(element): # Get the nuclides present in nature result = [] - for kv in sorted(NATURAL_ABUNDANCE.items()): + for kv in NATURAL_ABUNDANCE.items(): if re.match(r'{}\d+'.format(element), kv[0]): result.append(kv) diff --git a/openmc/element.py b/openmc/element.py index 729266cc2..f1a5d31d3 100644 --- a/openmc/element.py +++ b/openmc/element.py @@ -4,7 +4,7 @@ from xml.etree import ElementTree as ET import openmc.checkvalue as cv import openmc -from openmc.data import NATURAL_ABUNDANCE, atomic_mass, \ +from openmc.data import NATURAL_ABUNDANCE, atomic_mass, zam, \ isotopes as natural_isotopes @@ -147,8 +147,8 @@ class Element(str): # and sort to avoid different ordering between Python 2 and 3. mutual_nuclides = natural_nuclides.intersection(library_nuclides) absent_nuclides = natural_nuclides.difference(mutual_nuclides) - mutual_nuclides = sorted(list(mutual_nuclides)) - absent_nuclides = sorted(list(absent_nuclides)) + mutual_nuclides = sorted(mutual_nuclides, key=zam) + absent_nuclides = sorted(absent_nuclides, key=zam) # If all naturally occurring isotopes are present in the library, # add them based on their abundance @@ -195,7 +195,7 @@ class Element(str): # If a cross_section library is not present, expand the element into # its natural nuclides else: - for nuclide in sorted(list(natural_nuclides)): + for nuclide in sorted(natural_nuclides, key=zam): abundances[nuclide] = NATURAL_ABUNDANCE[nuclide] # Modify mole fractions if enrichment provided From 7becabcde4b2900ed134d1051a362411aca03dd2 Mon Sep 17 00:00:00 2001 From: Jonathan Shimwell Date: Thu, 23 Feb 2023 21:16:52 +0000 Subject: [PATCH 114/120] cm^3 instead of cm3 --- openmc/material.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openmc/material.py b/openmc/material.py index 28d38cb90..bdc25b280 100644 --- a/openmc/material.py +++ b/openmc/material.py @@ -144,7 +144,7 @@ class Material(IDManagerMixin): string += f' [{self._density_units}]\n' string += '{: <16}=\t{}'.format('\tVolume', self._volume) - string += ' [cm3]\n' + string += ' [cm^3]\n' string += '{: <16}\n'.format('\tS(a,b) Tables') From f0aa0ab3f248d26a3bb921e1ba6f84c3e9a6e4b9 Mon Sep 17 00:00:00 2001 From: aprilnovak Date: Fri, 24 Feb 2023 12:10:52 -0600 Subject: [PATCH 115/120] Add default constructor for VolumeCalculation. Refs #2398 --- include/openmc/volume_calc.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/openmc/volume_calc.h b/include/openmc/volume_calc.h index 2efd955f0..ff75b2b8b 100644 --- a/include/openmc/volume_calc.h +++ b/include/openmc/volume_calc.h @@ -35,6 +35,8 @@ public: // Constructors VolumeCalculation(pugi::xml_node node); + VolumeCalculation() {} + // Methods //! \brief Stochastically determine the volume of a set of domains along with From 9858114ed71aed8e49c8f4395e5e2e37ab957e84 Mon Sep 17 00:00:00 2001 From: April Novak Date: Fri, 24 Feb 2023 11:53:40 -0800 Subject: [PATCH 116/120] Apply suggestions from code review Co-authored-by: Paul Romano --- include/openmc/volume_calc.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/openmc/volume_calc.h b/include/openmc/volume_calc.h index ff75b2b8b..2773a39fa 100644 --- a/include/openmc/volume_calc.h +++ b/include/openmc/volume_calc.h @@ -35,7 +35,7 @@ public: // Constructors VolumeCalculation(pugi::xml_node node); - VolumeCalculation() {} + VolumeCalculation() = default; // Methods From 0d84c538181022f607ddceb898c132faac2568b8 Mon Sep 17 00:00:00 2001 From: Jonathan Shimwell Date: Fri, 24 Feb 2023 22:05:00 +0000 Subject: [PATCH 117/120] review improvment, refactor to single line Co-authored-by: Paul Romano --- openmc/material.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/openmc/material.py b/openmc/material.py index bdc25b280..a1b3367a9 100644 --- a/openmc/material.py +++ b/openmc/material.py @@ -143,8 +143,7 @@ class Material(IDManagerMixin): string += '{: <16}=\t{}'.format('\tDensity', self._density) string += f' [{self._density_units}]\n' - string += '{: <16}=\t{}'.format('\tVolume', self._volume) - string += ' [cm^3]\n' + string += '{: <16}=\t{} [cm^3]\n'.format('\tVolume', self._volume) string += '{: <16}\n'.format('\tS(a,b) Tables') From f34b37bb4f6aa702107b63029b69ee5a0bed9fbd Mon Sep 17 00:00:00 2001 From: shimwell Date: Thu, 2 Mar 2023 22:07:49 +0000 Subject: [PATCH 118/120] added test for element and nuclide plot --- tests/unit_tests/test_plotter.py | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/tests/unit_tests/test_plotter.py b/tests/unit_tests/test_plotter.py index a3f1ff666..15526351a 100644 --- a/tests/unit_tests/test_plotter.py +++ b/tests/unit_tests/test_plotter.py @@ -1,5 +1,6 @@ -import openmc import numpy as np +import openmc +import pytest def test_calculate_cexs_elem_mat_sab(): @@ -25,3 +26,18 @@ def test_calculate_cexs_elem_mat_sab(): assert len(energy_grid) > 1 assert len(data) == 1 assert len(data[0]) == len(energy_grid) + + +@pytest.mark.parametrize("this, data_type", [("Li", "element"), ("Li6", "nuclide")]) +def test_calculate_cexs_with_element(this, data_type): + + # single type (reaction) + energy_grid, data = openmc.plotter.calculate_cexs( + this=this, data_type=data_type, types=[205] + ) + + assert isinstance(energy_grid, np.ndarray) + assert isinstance(data, np.ndarray) + assert len(energy_grid) > 1 + assert len(data) == 1 + assert len(data[0]) == len(energy_grid) From 33f9ab708384d9ee20afb1f9572a2d6941cc76df Mon Sep 17 00:00:00 2001 From: shimwell Date: Thu, 2 Mar 2023 22:14:14 +0000 Subject: [PATCH 119/120] testing muliple reactions for elements+nuclides --- tests/unit_tests/test_plotter.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/tests/unit_tests/test_plotter.py b/tests/unit_tests/test_plotter.py index 15526351a..be420c3e8 100644 --- a/tests/unit_tests/test_plotter.py +++ b/tests/unit_tests/test_plotter.py @@ -41,3 +41,17 @@ def test_calculate_cexs_with_element(this, data_type): assert len(energy_grid) > 1 assert len(data) == 1 assert len(data[0]) == len(energy_grid) + + # two types (reaction) + energy_grid, data = openmc.plotter.calculate_cexs( + this=this, data_type=data_type, types=[2, "elastic"] + ) + + assert isinstance(energy_grid, np.ndarray) + assert isinstance(data, np.ndarray) + assert len(energy_grid) > 1 + assert len(data) == 2 + assert len(data[0]) == len(energy_grid) + assert len(data[0]) == len(energy_grid) + # reactions are both the same MT number 2 is elastic + assert np.array_equal(data[0], data[1]) From 7f16f46beddff4d6090a154dc5270e35d31ce5a3 Mon Sep 17 00:00:00 2001 From: shimwell Date: Thu, 2 Mar 2023 23:52:00 +0000 Subject: [PATCH 120/120] material and plot_xs tests for plotter.py --- tests/unit_tests/test_plotter.py | 46 ++++++++++++++++++++++++++------ 1 file changed, 38 insertions(+), 8 deletions(-) diff --git a/tests/unit_tests/test_plotter.py b/tests/unit_tests/test_plotter.py index be420c3e8..081fb520d 100644 --- a/tests/unit_tests/test_plotter.py +++ b/tests/unit_tests/test_plotter.py @@ -1,22 +1,27 @@ import numpy as np import openmc import pytest +from matplotlib.figure import Figure -def test_calculate_cexs_elem_mat_sab(): - """Checks that sab cross sections are included in the - _calculate_cexs_elem_mat method and have the correct shape""" - +@pytest.fixture(scope="module") +def test_mat(): mat_1 = openmc.Material() mat_1.add_element("H", 4.0, "ao") mat_1.add_element("O", 4.0, "ao") mat_1.add_element("C", 4.0, "ao") + return mat_1 - mat_1.add_s_alpha_beta("c_C6H6") - mat_1.set_density("g/cm3", 0.865) + +def test_calculate_cexs_elem_mat_sab(test_mat): + """Checks that sab cross sections are included in the + _calculate_cexs_elem_mat method and have the correct shape""" + + test_mat.add_s_alpha_beta("c_C6H6") + test_mat.set_density("g/cm3", 0.865) energy_grid, data = openmc.plotter._calculate_cexs_elem_mat( - mat_1, + test_mat, ["inelastic"], sab_name="c_C6H6", ) @@ -28,7 +33,7 @@ def test_calculate_cexs_elem_mat_sab(): assert len(data[0]) == len(energy_grid) -@pytest.mark.parametrize("this, data_type", [("Li", "element"), ("Li6", "nuclide")]) +@pytest.mark.parametrize("this,data_type", [("Li", "element"), ("Li6", "nuclide")]) def test_calculate_cexs_with_element(this, data_type): # single type (reaction) @@ -55,3 +60,28 @@ def test_calculate_cexs_with_element(this, data_type): assert len(data[0]) == len(energy_grid) # reactions are both the same MT number 2 is elastic assert np.array_equal(data[0], data[1]) + + +def test_calculate_cexs_with_materials(test_mat): + energy_grid, data = openmc.plotter.calculate_cexs( + this=test_mat, types=[205], data_type="material" + ) + + assert isinstance(energy_grid, np.ndarray) + assert isinstance(data, np.ndarray) + assert len(energy_grid) > 1 + assert len(data) == 1 + assert len(data[0]) == len(energy_grid) + + +@pytest.mark.parametrize(("this,data_type"), [("Be", "element"), ("Be9", "nuclide")]) +def test_plot_xs(this, data_type): + assert isinstance( + openmc.plotter.plot_xs(this, data_type=data_type, types=["total"]), Figure + ) + + +def test_plot_xs_mat(test_mat): + assert isinstance( + openmc.plotter.plot_xs(test_mat, data_type="material", types=["total"]), Figure + )